TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

3fa32ee3-f6ed-4978-87cd-d4efcb7979e3

complete
Chain ID
1
Address
Block Number
Created
Sun, Jan 4, 2026 3:42 AM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Unprotected initialize enables attacker-controlled messenger and bridge takeover
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31546 report.consolidate complete 1 / 1 3 months ago
77903 artifact.fetch complete 1 / 3 1 week ago
77904 tool.cast_disasm complete 1 / 3 1 week ago
77905 analysis.bundle complete 1 / 3 1 week ago
77906 capability.graph complete 1 / 3 1 week ago
77907 detector.run complete 1 / 3 1 week ago
77908 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
1
No findings?
no
Summary
Unprotected initializer lets an attacker take over cross-domain auth and drain all ETH/ERC20 escrow if the proxy is deployed uninitialized.
View stderr
[codex:1103791] OpenAI Codex v0.77.0 (research preview)
[codex:1103791] --------
[codex:1103791] workdir: /tmp/codex-multi-2uxn2v7r
[codex:1103791] model: gpt-5.2-codex
[codex:1103791] provider: openai
[codex:1103791] approval: never
[codex:1103791] sandbox: read-only
[codex:1103791] reasoning effort: xhigh
[codex:1103791] reasoning summaries: auto
[codex:1103791] session id: 019b8717-ccc5-7702-afe0-412ba6779775
[codex:1103791] --------
[codex:1103791] user
[codex:1103791] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1103791] 
[codex:1103791] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1103791] 
[codex:1103791] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1103791] - Gas inefficiency, code quality, naming, or best practices
[codex:1103791] - Theoretical vulnerabilities without a clear extraction path
[codex:1103791] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1103791] - Front-running unless it enables theft beyond MEV
[codex:1103791] - DoS, griefing, or issues that don't result in attacker profit
[codex:1103791] - Missing events, view function issues, or informational findings
[codex:1103791] 
[codex:1103791] HIGH-VALUE PATTERNS TO HUNT:
[codex:1103791] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1103791] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1103791] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1103791] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1103791] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1103791] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1103791] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1103791] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1103791] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1103791] 
[codex:1103791] For each finding, you MUST provide:
[codex:1103791] 1. Exact file and line numbers of vulnerable code
[codex:1103791] 2. Step-by-step exploit transaction sequence
[codex:1103791] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1103791] 
[codex:1103791] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1103791] 
[codex:1103791] Output MUST be valid JSON matching the provided schema.
[codex:1103791] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1103791] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1103791] mcp startup: no servers
[codex:1103791] 
[codex:1103791] thinking
[codex:1103791] **Auditing AUDIT_BUNDLE.txt file**
[codex:1103791] exec
[codex:1103791] /bin/bash -lc ls in /tmp/codex-multi-2uxn2v7r succeeded in 5ms:
[codex:1103791] AUDIT_BUNDLE.txt
[codex:1103791] codex-output-schema.json
[codex:1103791] contracts
[codex:1103791] 
[codex:1103791] thinking
[codex:1103791] **Reading file**
[codex:1103791] exec
[codex:1103791] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-2uxn2v7r succeeded in 5ms:
[codex:1103791] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1103791] 
[codex:1103791] ================================================================================
[codex:1103791] FILE: contracts/contracts/BL/messaging/BLStandardBridge.sol
[codex:1103791] ================================================================================
[codex:1103791] // SPDX-License-Identifier: MIT
[codex:1103791] pragma solidity ^0.8.9;
[codex:1103791] 
[codex:1103791] /* Interface Imports */
[codex:1103791] import { IBLStandardBridge } from "./IBLStandardBridge.sol";
[codex:1103791] import { IBLERC20Bridge } from "./IBLERC20Bridge.sol";
[codex:1103791] import { ISLERC20Bridge } from "../../SL/messaging/ISLERC20Bridge.sol";
[codex:1103791] import { INahmiiSyntheticERC20 } from "../../standards/INahmiiSyntheticERC20.sol";
[codex:1103791] import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1103791] 
[codex:1103791] /* Library Imports */
[codex:1103791] import { CrossDomainEnabled } from "../../libraries/bridge/CrossDomainEnabled.sol";
[codex:1103791] import { Lib_PredeployAddresses } from "../../libraries/constants/Lib_PredeployAddresses.sol";
[codex:1103791] import { Address } from "@openzeppelin/contracts/utils/Address.sol";
[codex:1103791] import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1103791] 
[codex:1103791] thinking
[codex:1103791] **Analyzing bridge contract initialization vulnerability**
[codex:1103791] exec
[codex:1103791] /bin/bash -lc "nl -ba contracts/contracts/BL/messaging/BLStandardBridge.sol | sed -n '1,200p'" in /tmp/codex-multi-2uxn2v7r succeeded in 7ms:
[codex:1103791]      1	// SPDX-License-Identifier: MIT
[codex:1103791]      2	pragma solidity ^0.8.9;
[codex:1103791]      3	
[codex:1103791]      4	/* Interface Imports */
[codex:1103791]      5	import { IBLStandardBridge } from "./IBLStandardBridge.sol";
[codex:1103791]      6	import { IBLERC20Bridge } from "./IBLERC20Bridge.sol";
[codex:1103791]      7	import { ISLERC20Bridge } from "../../SL/messaging/ISLERC20Bridge.sol";
[codex:1103791]      8	import { INahmiiSyntheticERC20 } from "../../standards/INahmiiSyntheticERC20.sol";
[codex:1103791]      9	import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
[codex:1103791]     10	
[codex:1103791]     11	/* Library Imports */
[codex:1103791]     12	import { CrossDomainEnabled } from "../../libraries/bridge/CrossDomainEnabled.sol";
[codex:1103791]     13	import { Lib_PredeployAddresses } from "../../libraries/constants/Lib_PredeployAddresses.sol";
[codex:1103791]     14	import { Address } from "@openzeppelin/contracts/utils/Address.sol";
[codex:1103791]     15	import { SafeERC20 } from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
[codex:1103791]     16	import { ERC165Checker } from "@openzeppelin/contracts/utils/introspection/ERC165Checker.sol";
[codex:1103791]     17	
[codex:1103791]     18	/**
[codex:1103791]     19	 * @title BLStandardBridge
[codex:1103791]     20	 * @dev The BL ETH and ERC20 bridge is a contract which works together with a corresponding SL
[codex:1103791] 
[codex:1103791] thinking
[codex:1103791] **Locating finalize function lines**
[codex:1103791] exec
[codex:1103791] /bin/bash -lc "nl -ba contracts/contracts/BL/messaging/BLStandardBridge.sol | sed -n '200,360p'" in /tmp/codex-multi-2uxn2v7r succeeded in 5ms:
[codex:1103791]    200	     *        length, these contracts provide no guarantees about its content.
[codex:1103791]    201	     */
[codex:1103791]    202	    function _initiateERC20Bridge(
[codex:1103791]    203	        address _localToken,
[codex:1103791]    204	        address _remoteToken,
[codex:1103791]    205	        address _from,
[codex:1103791]    206	        address _to,
[codex:1103791]    207	        uint256 _amount,
[codex:1103791]    208	        uint256 _feeAmount,
[codex:1103791]    209	        uint32 _remoteGasLimit,
[codex:1103791]    210	        bytes calldata _data
[codex:1103791]    211	    ) internal {
[codex:1103791]    212	        if (
[codex:1103791]    213	            ERC165Checker.supportsInterface(_localToken, type(INahmiiSyntheticERC20).interfaceId) &&
[codex:1103791]    214	            INahmiiSyntheticERC20(_localToken).localBridge() == address(this) &&
[codex:1103791]    215	            INahmiiSyntheticERC20(_localToken).remoteToken() == _remoteToken
[codex:1103791]    216	        ) {
[codex:1103791]    217	            // When a bridge operation is initiated with a synthetic, we burn
[codex:1103791]    218	            // the sender's local funds.
[codex:1103791]    219	            // slither-disable-next-line reentrancy-events
[codex:1103791] exec
[codex:1103791] /bin/bash -lc "nl -ba contracts/contracts/BL/messaging/BLStandardBridge.sol | sed -n '360,520p'" in /tmp/codex-multi-2uxn2v7r succeeded in 6ms:
[codex:1103791]    360	            // In either case, we stop the process here and construct a message to
[codex:1103791]    361	            // bridge to the remote domain so that users can get their funds out in some cases.
[codex:1103791]    362	            // There is no way to prevent malicious token contracts altogether, but this does limit
[codex:1103791]    363	            // user error and mitigate some forms of malicious contract behavior.
[codex:1103791]    364	
[codex:1103791]    365	            // Construct calldata for slERC20Bridge.finalizeBridge(...)
[codex:1103791]    366	            bytes memory message = abi.encodeWithSelector(
[codex:1103791]    367	                ISLERC20Bridge.finalizeBridge.selector,
[codex:1103791]    368	                _localToken,
[codex:1103791]    369	                _remoteToken,
[codex:1103791]    370	                _to,
[codex:1103791]    371	                _from,
[codex:1103791]    372	                _amount,
[codex:1103791]    373	                _feeAmount,
[codex:1103791]    374	                _remoteGasLimit,
[codex:1103791]    375	                _data
[codex:1103791]    376	            );
[codex:1103791]    377	
[codex:1103791]    378	            // Send message to SL bridge
[codex:1103791]    379	            // slither-disable-next-line reentrancy-events, reentrancy-benign
[codex:1103791] 
[codex:1103791] thinking
[codex:1103791] **Preparing detailed vulnerability report**
[codex:1103791] codex
[codex:1103791] {"no_findings":false,"summary":"Unprotected initializer lets an attacker take over cross-domain auth and drain all ETH/ERC20 escrow if the proxy is deployed uninitialized.","findings":[{"severity":"critical","category":"upgradeability","title":"Unprotected initialize enables attacker-controlled messenger and bridge takeover","exploit_scenario":"1) After the proxy is deployed but before the legitimate initializer runs, attacker calls initialize() to set messenger to an attacker-controlled contract and remoteTokenBridge to an attacker-controlled address. 2) Attacker’s messenger contract calls finalizeETHBridge(...) with _to=attacker and _amount=bridge ETH balance; the onlyFromCrossDomainAccount check passes because msg.sender is the attacker’s messenger and xDomainMessageSender() returns the attacker-set remoteTokenBridge. 3) Repeat via finalizeERC20Bridge(...) for each locked token pair, draining up to locks[_localToken][_remoteToken] to the attacker. Profit is the entire ETH balance plus all escrowed ERC20 balances held by the bridge.","recommendation":"Restrict initialize to a trusted deployer (e.g., onlyOwner/onlyProxyAdmin) or use an initializer pattern that is invoked atomically during proxy deployment; consider disabling initialize on the implementation contract.","evidence":"initialize() is public and only checks messenger == address(0), allowing anyone to set messenger/remoteTokenBridge (lines 53-62). finalizeETHBridge and finalizeERC20Bridge transfer ETH/ERC20 based solely on onlyFromCrossDomainAccount, which becomes attacker-controlled once initialize is hijacked (lines 270-345).","locations":["contracts/contracts/BL/messaging/BLStandardBridge.sol:53","contracts/contracts/BL/messaging/BLStandardBridge.sol:270","contracts/contracts/BL/messaging/BLStandardBridge.sol:308"]}]}
[codex:1103791] tokens used
[codex:1103791] 19,054
[codex:1103791] {"no_findings":false,"summary":"Unprotected initializer lets an attacker take over cross-domain auth and drain all ETH/ERC20 escrow if the proxy is deployed uninitialized.","findings":[{"severity":"critical","category":"upgradeability","title":"Unprotected initialize enables attacker-controlled messenger and bridge takeover","exploit_scenario":"1) After the proxy is deployed but before the legitimate initializer runs, attacker calls initialize() to set messenger to an attacker-controlled contract and remoteTokenBridge to an attacker-controlled address. 2) Attacker’s messenger contract calls finalizeETHBridge(...) with _to=attacker and _amount=bridge ETH balance; the onlyFromCrossDomainAccount check passes because msg.sender is the attacker’s messenger and xDomainMessageSender() returns the attacker-set remoteTokenBridge. 3) Repeat via finalizeERC20Bridge(...) for each locked token pair, draining up to locks[_localToken][_remoteToken] to the attacker. Profit is the entire ETH balance plus all escrowed ERC20 balances held by the bridge.","recommendation":"Restrict initialize to a trusted deployer (e.g., onlyOwner/onlyProxyAdmin) or use an initializer pattern that is invoked atomically during proxy deployment; consider disabling initialize on the implementation contract.","evidence":"initialize() is public and only checks messenger == address(0), allowing anyone to set messenger/remoteTokenBridge (lines 53-62). finalizeETHBridge and finalizeERC20Bridge transfer ETH/ERC20 based solely on onlyFromCrossDomainAccount, which becomes attacker-controlled once initialize is hijacked (lines 270-345).","locations":["contracts/contracts/BL/messaging/BLStandardBridge.sol:53","contracts/contracts/BL/messaging/BLStandardBridge.sol:270","contracts/contracts/BL/messaging/BLStandardBridge.sol:308"]}]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-04T03:42:12.113612+00:00",
        "returncode": 0
    },
    "summary": "Unprotected initializer lets an attacker take over cross-domain auth and drain all ETH/ERC20 escrow if the proxy is deployed uninitialized.",
    "raw_final": {
        "summary": "Unprotected initializer lets an attacker take over cross-domain auth and drain all ETH/ERC20 escrow if the proxy is deployed uninitialized.",
        "findings": [
            {
                "title": "Unprotected initialize enables attacker-controlled messenger and bridge takeover",
                "category": "upgradeability",
                "evidence": "initialize() is public and only checks messenger == address(0), allowing anyone to set messenger/remoteTokenBridge (lines 53-62). finalizeETHBridge and finalizeERC20Bridge transfer ETH/ERC20 based solely on onlyFromCrossDomainAccount, which becomes attacker-controlled once initialize is hijacked (lines 270-345).",
                "severity": "critical",
                "locations": [
                    "contracts/contracts/BL/messaging/BLStandardBridge.sol:53",
                    "contracts/contracts/BL/messaging/BLStandardBridge.sol:270",
                    "contracts/contracts/BL/messaging/BLStandardBridge.sol:308"
                ],
                "recommendation": "Restrict initialize to a trusted deployer (e.g., onlyOwner/onlyProxyAdmin) or use an initializer pattern that is invoked atomically during proxy deployment; consider disabling initialize on the implementation contract.",
                "exploit_scenario": "1) After the proxy is deployed but before the legitimate initializer runs, attacker calls initialize() to set messenger to an attacker-controlled contract and remoteTokenBridge to an attacker-controlled address. 2) Attacker\u2019s messenger contract calls finalizeETHBridge(...) with _to=attacker and _amount=bridge ETH balance; the onlyFromCrossDomainAccount check passes because msg.sender is the attacker\u2019s messenger and xDomainMessageSender() returns the attacker-set remoteTokenBridge. 3) Repeat via finalizeERC20Bridge(...) for each locked token pair, draining up to locks[_localToken][_remoteToken] to the attacker. Profit is the entire ETH balance plus all escrowed ERC20 balances held by the bridge."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
14
EXT*/BALANCE
7
Total opcodes
4510
Flags
heavy_ext_balance_usage call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x00cb
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x8b4c40b0
00000019: GT
0000001a: PUSH2 0x0074
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xd191bcf9
00000024: GT
00000025: PUSH2 0x004e
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd191bcf9
0000002f: EQ
00000030: PUSH2 0x0265
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xe11013dd
0000003a: EQ
0000003b: PUSH2 0x0285
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xe9518196
00000045: EQ
00000046: PUSH2 0x0298
00000049: JUMPI
0000004a: PUSH1 0x00
0000004c: DUP1
0000004d: REVERT
0000004e: JUMPDEST
0000004f: DUP1
00000050: PUSH4 0x8b4c40b0
00000055: EQ
00000056: PUSH2 0x0142
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x8d265f10
00000060: EQ
00000061: PUSH2 0x01ff
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0xc05f6155
0000006b: EQ
0000006c: PUSH2 0x021f
0000006f: JUMPI
00000070: PUSH1 0x00
00000072: DUP1
00000073: REVERT
00000074: JUMPDEST
00000075: DUP1
00000076: PUSH4 0x540abf73
0000007b: GT
0000007c: PUSH2 0x00a5
0000007f: JUMPI
00000080: DUP1
00000081: PUSH4 0x540abf73
00000086: EQ
00000087: PUSH2 0x01b9
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0x87087623
00000091: EQ
00000092: PUSH2 0x01cc
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x898c5271
0000009c: EQ
0000009d: PUSH2 0x01df
000000a0: JUMPI
000000a1: PUSH1 0x00
000000a3: DUP1
000000a4: REVERT
000000a5: JUMPDEST
000000a6: DUP1
000000a7: PUSH4 0x09fc8843
000000ac: EQ
000000ad: PUSH2 0x0149
000000b0: JUMPI
000000b1: DUP1
000000b2: PUSH4 0x1794bb3c
000000b7: EQ
000000b8: PUSH2 0x015c
000000bb: JUMPI
000000bc: DUP1
000000bd: PUSH4 0x3cb747bf
000000c2: EQ
000000c3: PUSH2 0x017c
000000c6: JUMPI
000000c7: PUSH1 0x00
000000c9: DUP1
000000ca: REVERT
000000cb: JUMPDEST
000000cc: CALLDATASIZE
000000cd: PUSH2 0x0144
000000d0: JUMPI
000000d1: CALLER
000000d2: EXTCODESIZE
000000d3: ISZERO
000000d4: PUSH2 0x0124
000000d7: JUMPI
000000d8: PUSH1 0x40
000000da: MLOAD
000000db: PUSH3 0x461bcd
000000df: PUSH1 0xe5
000000e1: SHL
000000e2: DUP2
000000e3: MSTORE
000000e4: PUSH1 0x20
000000e6: PUSH1 0x04
000000e8: DUP3
000000e9: ADD
000000ea: MSTORE
000000eb: PUSH1 0x0f
000000ed: PUSH1 0x24
000000ef: DUP3
000000f0: ADD
000000f1: MSTORE
000000f2: PUSH32 0x4163636f756e74206e6f7420454f410000000000000000000000000000000000
00000113: PUSH1 0x44
00000115: DUP3
00000116: ADD
00000117: MSTORE
00000118: PUSH1 0x64
0000011a: ADD
0000011b: JUMPDEST
0000011c: PUSH1 0x40
0000011e: MLOAD
0000011f: DUP1
00000120: SWAP2
00000121: SUB
00000122: SWAP1
00000123: REVERT
00000124: JUMPDEST
00000125: PUSH2 0x0142
00000128: CALLER
00000129: CALLER
0000012a: PUSH3 0x030d40
0000012e: PUSH1 0x40
00000130: MLOAD
00000131: DUP1
00000132: PUSH1 0x20
00000134: ADD
00000135: PUSH1 0x40
00000137: MSTORE
00000138: DUP1
00000139: PUSH1 0x00
0000013b: DUP2
0000013c: MSTORE
0000013d: POP
0000013e: PUSH2 0x02ae
00000141: JUMP
00000142: JUMPDEST
00000143: STOP
00000144: JUMPDEST
00000145: PUSH1 0x00
00000147: DUP1
00000148: REVERT
00000149: JUMPDEST
0000014a: PUSH2 0x0142
0000014d: PUSH2 0x0157
00000150: CALLDATASIZE
00000151: PUSH1 0x04
00000153: PUSH2 0x17e3
00000156: JUMP
00000157: JUMPDEST
00000158: PUSH2 0x03bc
0000015b: JUMP
0000015c: JUMPDEST
0000015d: CALLVALUE
0000015e: DUP1
0000015f: ISZERO
00000160: PUSH2 0x0168
00000163: JUMPI
00000164: PUSH1 0x00
00000166: DUP1
00000167: REVERT
00000168: JUMPDEST
00000169: POP
0000016a: PUSH2 0x0142
0000016d: PUSH2 0x0177
00000170: CALLDATASIZE
00000171: PUSH1 0x04
00000173: PUSH2 0x184e
00000176: JUMP
00000177: JUMPDEST
00000178: PUSH2 0x0452
0000017b: JUMP
0000017c: JUMPDEST
0000017d: CALLVALUE
0000017e: DUP1
0000017f: ISZERO
00000180: PUSH2 0x0188
00000183: JUMPI
00000184: PUSH1 0x00
00000186: DUP1
00000187: REVERT
00000188: JUMPDEST
00000189: POP
0000018a: PUSH1 0x00
0000018c: SLOAD
0000018d: PUSH2 0x019c
00000190: SWAP1
00000191: PUSH1 0x01
00000193: PUSH1 0x01
00000195: PUSH1 0xa0
00000197: SHL
00000198: SUB
00000199: AND
0000019a: DUP2
0000019b: JUMP
0000019c: JUMPDEST
0000019d: PUSH1 0x40
0000019f: MLOAD
000001a0: PUSH1 0x01
000001a2: PUSH1 0x01
000001a4: PUSH1 0xa0
000001a6: SHL
000001a7: SUB
000001a8: SWAP1
000001a9: SWAP2
000001aa: AND
000001ab: DUP2
000001ac: MSTORE
000001ad: PUSH1 0x20
000001af: ADD
000001b0: JUMPDEST
000001b1: PUSH1 0x40
000001b3: MLOAD
000001b4: DUP1
000001b5: SWAP2
000001b6: SUB
000001b7: SWAP1
000001b8: RETURN
000001b9: JUMPDEST
000001ba: PUSH2 0x0142
000001bd: PUSH2 0x01c7
000001c0: CALLDATASIZE
000001c1: PUSH1 0x04
000001c3: PUSH2 0x188f
000001c6: JUMP
000001c7: JUMPDEST
000001c8: PUSH2 0x051e
000001cb: JUMP
000001cc: JUMPDEST
000001cd: PUSH2 0x0142
000001d0: PUSH2 0x01da
000001d3: CALLDATASIZE
000001d4: PUSH1 0x04
000001d6: PUSH2 0x1925
000001d9: JUMP
000001da: JUMPDEST
000001db: PUSH2 0x0538
000001de: JUMP
000001df: JUMPDEST
000001e0: CALLVALUE
000001e1: DUP1
000001e2: ISZERO
000001e3: PUSH2 0x01eb
000001e6: JUMPI
000001e7: PUSH1 0x00
000001e9: DUP1
000001ea: REVERT
000001eb: JUMPDEST
000001ec: POP
000001ed: PUSH2 0x0142
000001f0: PUSH2 0x01fa
000001f3: CALLDATASIZE
000001f4: PUSH1 0x04
000001f6: PUSH2 0x1925
000001f9: JUMP
000001fa: JUMPDEST
000001fb: PUSH2 0x05a0
000001fe: JUMP
000001ff: JUMPDEST
00000200: CALLVALUE
00000201: DUP1
00000202: ISZERO
00000203: PUSH2 0x020b
00000206: JUMPI
00000207: PUSH1 0x00
00000209: DUP1
0000020a: REVERT
0000020b: JUMPDEST
0000020c: POP
0000020d: PUSH2 0x0142
00000210: PUSH2 0x021a
00000213: CALLDATASIZE
00000214: PUSH1 0x04
00000216: PUSH2 0x19a8
00000219: JUMP
0000021a: JUMPDEST
0000021b: PUSH2 0x0920
0000021e: JUMP
0000021f: JUMPDEST
00000220: CALLVALUE
00000221: DUP1
00000222: ISZERO
00000223: PUSH2 0x022b
00000226: JUMPI
00000227: PUSH1 0x00
00000229: DUP1
0000022a: REVERT
0000022b: JUMPDEST
0000022c: POP
0000022d: PUSH2 0x0257
00000230: PUSH2 0x023a
00000233: CALLDATASIZE
00000234: PUSH1 0x04
00000236: PUSH2 0x1a5d
00000239: JUMP
0000023a: JUMPDEST
0000023b: PUSH1 0x03
0000023d: PUSH1 0x20
0000023f: SWAP1
00000240: DUP2
00000241: MSTORE
00000242: PUSH1 0x00
00000244: SWAP3
00000245: DUP4
00000246: MSTORE
00000247: PUSH1 0x40
00000249: DUP1
0000024a: DUP5
0000024b: KECCAK256
0000024c: SWAP1
0000024d: SWAP2
0000024e: MSTORE
0000024f: SWAP1
00000250: DUP3
00000251: MSTORE
00000252: SWAP1
00000253: KECCAK256
00000254: SLOAD
00000255: DUP2
00000256: JUMP
00000257: JUMPDEST
00000258: PUSH1 0x40
0000025a: MLOAD
0000025b: SWAP1
0000025c: DUP2
0000025d: MSTORE
0000025e: PUSH1 0x20
00000260: ADD
00000261: PUSH2 0x01b0
00000264: JUMP
00000265: JUMPDEST
00000266: CALLVALUE
00000267: DUP1
00000268: ISZERO
00000269: PUSH2 0x0271
0000026c: JUMPI
0000026d: PUSH1 0x00
0000026f: DUP1
00000270: REVERT
00000271: JUMPDEST
00000272: POP
00000273: PUSH1 0x01
00000275: SLOAD
00000276: PUSH2 0x019c
00000279: SWAP1
0000027a: PUSH1 0x01
0000027c: PUSH1 0x01
0000027e: PUSH1 0xa0
00000280: SHL
00000281: SUB
00000282: AND
00000283: DUP2
00000284: JUMP
00000285: JUMPDEST
00000286: PUSH2 0x0142
00000289: PUSH2 0x0293
0000028c: CALLDATASIZE
0000028d: PUSH1 0x04
0000028f: PUSH2 0x1a96
00000292: JUMP
00000293: JUMPDEST
00000294: PUSH2 0x0ec6
00000297: JUMP
00000298: JUMPDEST
00000299: CALLVALUE
0000029a: DUP1
0000029b: ISZERO
0000029c: PUSH2 0x02a4
0000029f: JUMPI
000002a0: PUSH1 0x00
000002a2: DUP1
000002a3: REVERT
000002a4: JUMPDEST
000002a5: POP
000002a6: PUSH2 0x0257
000002a9: PUSH1 0x02
000002ab: SLOAD
000002ac: DUP2
000002ad: JUMP
000002ae: JUMPDEST
000002af: PUSH1 0x00
000002b1: PUSH4 0x083261e7
000002b6: PUSH1 0xe0
000002b8: SHL
000002b9: PUSH1 0x00
000002bb: PUSH20 0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000
000002d0: DUP8
000002d1: DUP8
000002d2: CALLVALUE
000002d3: PUSH1 0x00
000002d5: DUP10
000002d6: DUP10
000002d7: PUSH1 0x40
000002d9: MLOAD
000002da: PUSH1 0x24
000002dc: ADD
000002dd: PUSH2 0x02ed
000002e0: SWAP9
000002e1: SWAP8
000002e2: SWAP7
000002e3: SWAP6
000002e4: SWAP5
000002e5: SWAP4
000002e6: SWAP3
000002e7: SWAP2
000002e8: SWAP1
000002e9: PUSH2 0x1b49
000002ec: JUMP
000002ed: JUMPDEST
000002ee: PUSH1 0x40
000002f0: DUP1
000002f1: MLOAD
000002f2: PUSH1 0x1f
000002f4: NOT
000002f5: DUP2
000002f6: DUP5
000002f7: SUB
000002f8: ADD
000002f9: DUP2
000002fa: MSTORE
000002fb: SWAP2
000002fc: SWAP1
000002fd: MSTORE
000002fe: PUSH1 0x20
00000300: DUP2
00000301: ADD
00000302: DUP1
00000303: MLOAD
00000304: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000321: AND
00000322: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000343: SWAP1
00000344: SWAP4
00000345: AND
00000346: SWAP3
00000347: SWAP1
00000348: SWAP3
00000349: OR
0000034a: SWAP1
0000034b: SWAP2
0000034c: MSTORE
0000034d: PUSH1 0x01
0000034f: SLOAD
00000350: SWAP1
00000351: SWAP2
00000352: POP
00000353: PUSH2 0x0366
00000356: SWAP1
00000357: PUSH1 0x01
00000359: PUSH1 0x01
0000035b: PUSH1 0xa0
0000035d: SHL
0000035e: SUB
0000035f: AND
00000360: DUP5
00000361: DUP4
00000362: PUSH2 0x0f0e
00000365: JUMP
00000366: JUMPDEST
00000367: DUP4
00000368: PUSH1 0x01
0000036a: PUSH1 0x01
0000036c: PUSH1 0xa0
0000036e: SHL
0000036f: SUB
00000370: AND
00000371: DUP6
00000372: PUSH1 0x01
00000374: PUSH1 0x01
00000376: PUSH1 0xa0
00000378: SHL
00000379: SUB
0000037a: AND
0000037b: PUSH32 0xde5464507fd3818686c59ae705aabcb9225fdd7b8f39f2afe70b05c5ba461966
0000039c: CALLVALUE
0000039d: DUP7
0000039e: DUP7
0000039f: PUSH1 0x40
000003a1: MLOAD
000003a2: PUSH2 0x03ad
000003a5: SWAP4
000003a6: SWAP3
000003a7: SWAP2
000003a8: SWAP1
000003a9: PUSH2 0x1bb0
000003ac: JUMP
000003ad: JUMPDEST
000003ae: PUSH1 0x40
000003b0: MLOAD
000003b1: DUP1
000003b2: SWAP2
000003b3: SUB
000003b4: SWAP1
000003b5: LOG3
000003b6: POP
000003b7: POP
000003b8: POP
000003b9: POP
000003ba: POP
000003bb: JUMP
000003bc: JUMPDEST
000003bd: CALLER
000003be: EXTCODESIZE
000003bf: ISZERO
000003c0: PUSH2 0x040b
000003c3: JUMPI
000003c4: PUSH1 0x40
000003c6: MLOAD
000003c7: PUSH3 0x461bcd
000003cb: PUSH1 0xe5
000003cd: SHL
000003ce: DUP2
000003cf: MSTORE
000003d0: PUSH1 0x20
000003d2: PUSH1 0x04
000003d4: DUP3
000003d5: ADD
000003d6: MSTORE
000003d7: PUSH1 0x0f
000003d9: PUSH1 0x24
000003db: DUP3
000003dc: ADD
000003dd: MSTORE
000003de: PUSH32 0x4163636f756e74206e6f7420454f410000000000000000000000000000000000
000003ff: PUSH1 0x44
00000401: DUP3
00000402: ADD
00000403: MSTORE
00000404: PUSH1 0x64
00000406: ADD
00000407: PUSH2 0x011b
0000040a: JUMP
0000040b: JUMPDEST
0000040c: PUSH2 0x044d
0000040f: CALLER
00000410: CALLER
00000411: DUP6
00000412: DUP6
00000413: DUP6
00000414: DUP1
00000415: DUP1
00000416: PUSH1 0x1f
00000418: ADD
00000419: PUSH1 0x20
0000041b: DUP1
0000041c: SWAP2
0000041d: DIV
0000041e: MUL
0000041f: PUSH1 0x20
00000421: ADD
00000422: PUSH1 0x40
00000424: MLOAD
00000425: SWAP1
00000426: DUP2
00000427: ADD
00000428: PUSH1 0x40
0000042a: MSTORE
0000042b: DUP1
0000042c: SWAP4
0000042d: SWAP3
0000042e: SWAP2
0000042f: SWAP1
00000430: DUP2
00000431: DUP2
00000432: MSTORE
00000433: PUSH1 0x20
00000435: ADD
00000436: DUP4
00000437: DUP4
00000438: DUP1
00000439: DUP3
0000043a: DUP5
0000043b: CALLDATACOPY
0000043c: PUSH1 0x00
0000043e: SWAP3
0000043f: ADD
00000440: SWAP2
00000441: SWAP1
00000442: SWAP2
00000443: MSTORE
00000444: POP
00000445: PUSH2 0x02ae
00000448: SWAP3
00000449: POP
0000044a: POP
0000044b: POP
0000044c: JUMP
0000044d: JUMPDEST
0000044e: POP
0000044f: POP
00000450: POP
00000451: JUMP
00000452: JUMPDEST
00000453: PUSH1 0x00
00000455: SLOAD
00000456: PUSH1 0x01
00000458: PUSH1 0x01
0000045a: PUSH1 0xa0
0000045c: SHL
0000045d: SUB
0000045e: AND
0000045f: ISZERO
00000460: PUSH2 0x04d1
00000463: JUMPI
00000464: PUSH1 0x40
00000466: MLOAD
00000467: PUSH3 0x461bcd
0000046b: PUSH1 0xe5
0000046d: SHL
0000046e: DUP2
0000046f: MSTORE
00000470: PUSH1 0x20
00000472: PUSH1 0x04
00000474: DUP3
00000475: ADD
00000476: MSTORE
00000477: PUSH1 0x26
00000479: PUSH1 0x24
0000047b: DUP3
0000047c: ADD
0000047d: MSTORE
0000047e: PUSH32 0x436f6e74726163742068617320616c7265616479206265656e20696e69746961
0000049f: PUSH1 0x44
000004a1: DUP3
000004a2: ADD
000004a3: MSTORE
000004a4: PUSH32 0x6c697a65642e0000000000000000000000000000000000000000000000000000
000004c5: PUSH1 0x64
000004c7: DUP3
000004c8: ADD
000004c9: MSTORE
000004ca: PUSH1 0x84
000004cc: ADD
000004cd: PUSH2 0x011b
000004d0: JUMP
000004d1: JUMPDEST
000004d2: PUSH1 0x00
000004d4: DUP1
000004d5: SLOAD
000004d6: PUSH1 0x01
000004d8: PUSH1 0x01
000004da: PUSH1 0xa0
000004dc: SHL
000004dd: SUB
000004de: SWAP5
000004df: DUP6
000004e0: AND
000004e1: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00000502: SWAP2
00000503: DUP3
00000504: AND
00000505: OR
00000506: SWAP1
00000507: SWAP2
00000508: SSTORE
00000509: PUSH1 0x01
0000050b: DUP1
0000050c: SLOAD
0000050d: SWAP4
0000050e: SWAP1
0000050f: SWAP5
00000510: AND
00000511: SWAP3
00000512: AND
00000513: SWAP2
00000514: SWAP1
00000515: SWAP2
00000516: OR
00000517: SWAP1
00000518: SWAP2
00000519: SSTORE
0000051a: PUSH1 0x02
0000051c: SSTORE
0000051d: JUMP
0000051e: JUMPDEST
0000051f: PUSH2 0x052f
00000522: DUP8
00000523: DUP8
00000524: CALLER
00000525: DUP9
00000526: DUP9
00000527: CALLVALUE
00000528: DUP10
00000529: DUP10
0000052a: DUP10
0000052b: PUSH2 0x0f89
0000052e: JUMP
0000052f: JUMPDEST
00000530: POP
00000531: POP
00000532: POP
00000533: POP
00000534: POP
00000535: POP
00000536: POP
00000537: JUMP
00000538: JUMPDEST
00000539: CALLER
0000053a: EXTCODESIZE
0000053b: ISZERO
0000053c: PUSH2 0x0587
0000053f: JUMPI
00000540: PUSH1 0x40
00000542: MLOAD
00000543: PUSH3 0x461bcd
00000547: PUSH1 0xe5
00000549: SHL
0000054a: DUP2
0000054b: MSTORE
0000054c: PUSH1 0x20
0000054e: PUSH1 0x04
00000550: DUP3
00000551: ADD
00000552: MSTORE
00000553: PUSH1 0x0f
00000555: PUSH1 0x24
00000557: DUP3
00000558: ADD
00000559: MSTORE
0000055a: PUSH32 0x4163636f756e74206e6f7420454f410000000000000000000000000000000000
0000057b: PUSH1 0x44
0000057d: DUP3
0000057e: ADD
0000057f: MSTORE
00000580: PUSH1 0x64
00000582: ADD
00000583: PUSH2 0x011b
00000586: JUMP
00000587: JUMPDEST
00000588: PUSH2 0x0598
0000058b: DUP7
0000058c: DUP7
0000058d: CALLER
0000058e: CALLER
0000058f: DUP9
00000590: CALLVALUE
00000591: DUP10
00000592: DUP10
00000593: DUP10
00000594: PUSH2 0x0f89
00000597: JUMP
00000598: JUMPDEST
00000599: POP
0000059a: POP
0000059b: POP
0000059c: POP
0000059d: POP
0000059e: POP
0000059f: JUMP
000005a0: JUMPDEST
000005a1: PUSH1 0x01
000005a3: SLOAD
000005a4: PUSH1 0x01
000005a6: PUSH1 0x01
000005a8: PUSH1 0xa0
000005aa: SHL
000005ab: SUB
000005ac: AND
000005ad: PUSH2 0x05be
000005b0: PUSH1 0x00
000005b2: SLOAD
000005b3: PUSH1 0x01
000005b5: PUSH1 0x01
000005b7: PUSH1 0xa0
000005b9: SHL
000005ba: SUB
000005bb: AND
000005bc: SWAP1
000005bd: JUMP
000005be: JUMPDEST
000005bf: PUSH1 0x01
000005c1: PUSH1 0x01
000005c3: PUSH1 0xa0
000005c5: SHL
000005c6: SUB
000005c7: AND
000005c8: CALLER
000005c9: PUSH1 0x01
000005cb: PUSH1 0x01
000005cd: PUSH1 0xa0
000005cf: SHL
000005d0: SUB
000005d1: AND
000005d2: EQ
000005d3: PUSH2 0x0644
000005d6: JUMPI
000005d7: PUSH1 0x40
000005d9: MLOAD
000005da: PUSH3 0x461bcd
000005de: PUSH1 0xe5
000005e0: SHL
000005e1: DUP2
000005e2: MSTORE
000005e3: PUSH1 0x20
000005e5: PUSH1 0x04
000005e7: DUP3
000005e8: ADD
000005e9: MSTORE
000005ea: PUSH1 0x2e
000005ec: PUSH1 0x24
000005ee: DUP3
000005ef: ADD
000005f0: MSTORE
000005f1: PUSH32 0x4e564d5f58434841494e3a206d657373656e67657220636f6e74726163742075
00000612: PUSH1 0x44
00000614: DUP3
00000615: ADD
00000616: MSTORE
00000617: PUSH32 0x6e61757468656e74696361746564000000000000000000000000000000000000
00000638: PUSH1 0x64
0000063a: DUP3
0000063b: ADD
0000063c: MSTORE
0000063d: PUSH1 0x84
0000063f: ADD
00000640: PUSH2 0x011b
00000643: JUMP
00000644: JUMPDEST
00000645: DUP1
00000646: PUSH1 0x01
00000648: PUSH1 0x01
0000064a: PUSH1 0xa0
0000064c: SHL
0000064d: SUB
0000064e: AND
0000064f: PUSH2 0x0660
00000652: PUSH1 0x00
00000654: SLOAD
00000655: PUSH1 0x01
00000657: PUSH1 0x01
00000659: PUSH1 0xa0
0000065b: SHL
0000065c: SUB
0000065d: AND
0000065e: SWAP1
0000065f: JUMP
00000660: JUMPDEST
00000661: PUSH1 0x01
00000663: PUSH1 0x01
00000665: PUSH1 0xa0
00000667: SHL
00000668: SUB
00000669: AND
0000066a: PUSH4 0x6e296e45
0000066f: PUSH1 0x40
00000671: MLOAD
00000672: DUP2
00000673: PUSH4 0xffffffff
00000678: AND
00000679: PUSH1 0xe0
0000067b: SHL
0000067c: DUP2
0000067d: MSTORE
0000067e: PUSH1 0x04
00000680: ADD
00000681: PUSH1 0x20
00000683: PUSH1 0x40
00000685: MLOAD
00000686: DUP1
00000687: DUP4
00000688: SUB
00000689: DUP2
0000068a: DUP7
0000068b: GAS
0000068c: STATICCALL
0000068d: ISZERO
0000068e: DUP1
0000068f: ISZERO
00000690: PUSH2 0x069d
00000693: JUMPI
00000694: RETURNDATASIZE
00000695: PUSH1 0x00
00000697: DUP1
00000698: RETURNDATACOPY
00000699: RETURNDATASIZE
0000069a: PUSH1 0x00
0000069c: REVERT
0000069d: JUMPDEST
0000069e: POP
0000069f: POP
000006a0: POP
000006a1: POP
000006a2: PUSH1 0x40
000006a4: MLOAD
000006a5: RETURNDATASIZE
000006a6: PUSH1 0x1f
000006a8: NOT
000006a9: PUSH1 0x1f
000006ab: DUP3
000006ac: ADD
000006ad: AND
000006ae: DUP3
000006af: ADD
000006b0: DUP1
000006b1: PUSH1 0x40
000006b3: MSTORE
000006b4: POP
000006b5: DUP2
000006b6: ADD
000006b7: SWAP1
000006b8: PUSH2 0x06c1
000006bb: SWAP2
000006bc: SWAP1
000006bd: PUSH2 0x1bde
000006c0: JUMP
000006c1: JUMPDEST
000006c2: PUSH1 0x01
000006c4: PUSH1 0x01
000006c6: PUSH1 0xa0
000006c8: SHL
000006c9: SUB
000006ca: AND
000006cb: EQ
000006cc: PUSH2 0x073d
000006cf: JUMPI
000006d0: PUSH1 0x40
000006d2: MLOAD
000006d3: PUSH3 0x461bcd
000006d7: PUSH1 0xe5
000006d9: SHL
000006da: DUP2
000006db: MSTORE
000006dc: PUSH1 0x20
000006de: PUSH1 0x04
000006e0: DUP3
000006e1: ADD
000006e2: MSTORE
000006e3: PUSH1 0x30
000006e5: PUSH1 0x24
000006e7: DUP3
000006e8: ADD
000006e9: MSTORE
000006ea: PUSH32 0x4e564d5f58434841494e3a2077726f6e672073656e646572206f662063726f73
0000070b: PUSH1 0x44
0000070d: DUP3
0000070e: ADD
0000070f: MSTORE
00000710: PUSH32 0x732d646f6d61696e206d65737361676500000000000000000000000000000000
00000731: PUSH1 0x64
00000733: DUP3
00000734: ADD
00000735: MSTORE
00000736: PUSH1 0x84
00000738: ADD
00000739: PUSH2 0x011b
0000073c: JUMP
0000073d: JUMPDEST
0000073e: PUSH1 0x40
00000740: DUP1
00000741: MLOAD
00000742: PUSH1 0x00
00000744: DUP1
00000745: DUP3
00000746: MSTORE
00000747: PUSH1 0x20
00000749: DUP3
0000074a: ADD
0000074b: SWAP1
0000074c: SWAP3
0000074d: MSTORE
0000074e: PUSH1 0x01
00000750: PUSH1 0x01
00000752: PUSH1 0xa0
00000754: SHL
00000755: SUB
00000756: DUP9
00000757: AND
00000758: SWAP1
00000759: DUP8
0000075a: SWAP1
0000075b: PUSH1 0x40
0000075d: MLOAD
0000075e: PUSH2 0x0767
00000761: SWAP2
00000762: SWAP1
00000763: PUSH2 0x1c02
00000766: JUMP
00000767: JUMPDEST
00000768: PUSH1 0x00
0000076a: PUSH1 0x40
0000076c: MLOAD
0000076d: DUP1
0000076e: DUP4
0000076f: SUB
00000770: DUP2
00000771: DUP6
00000772: DUP8
00000773: GAS
00000774: CALL
00000775: SWAP3
00000776: POP
00000777: POP
00000778: POP
00000779: RETURNDATASIZE
0000077a: DUP1
0000077b: PUSH1 0x00
0000077d: DUP2
0000077e: EQ
0000077f: PUSH2 0x07a4
00000782: JUMPI
00000783: PUSH1 0x40
00000785: MLOAD
00000786: SWAP2
00000787: POP
00000788: PUSH1 0x1f
0000078a: NOT
0000078b: PUSH1 0x3f
0000078d: RETURNDATASIZE
0000078e: ADD
0000078f: AND
00000790: DUP3
00000791: ADD
00000792: PUSH1 0x40
00000794: MSTORE
00000795: RETURNDATASIZE
00000796: DUP3
00000797: MSTORE
00000798: RETURNDATASIZE
00000799: PUSH1 0x00
0000079b: PUSH1 0x20
0000079d: DUP5
0000079e: ADD
0000079f: RETURNDATACOPY
000007a0: PUSH2 0x07a9
000007a3: JUMP
000007a4: JUMPDEST
000007a5: PUSH1 0x60
000007a7: SWAP2
000007a8: POP
000007a9: JUMPDEST
000007aa: POP
000007ab: POP
000007ac: SWAP1
000007ad: POP
000007ae: DUP1
000007af: ISZERO
000007b0: PUSH2 0x0809
000007b3: JUMPI
000007b4: DUP7
000007b5: PUSH1 0x01
000007b7: PUSH1 0x01
000007b9: PUSH1 0xa0
000007bb: SHL
000007bc: SUB
000007bd: AND
000007be: DUP9
000007bf: PUSH1 0x01
000007c1: PUSH1 0x01
000007c3: PUSH1 0xa0
000007c5: SHL
000007c6: SUB
000007c7: AND
000007c8: PUSH32 0x8cde5c76ce721a33a3a112e87c46498b02502d140e36537b71e85e6dc5c02cdf
000007e9: DUP9
000007ea: DUP9
000007eb: DUP9
000007ec: DUP9
000007ed: PUSH1 0x40
000007ef: MLOAD
000007f0: PUSH2 0x07fc
000007f3: SWAP5
000007f4: SWAP4
000007f5: SWAP3
000007f6: SWAP2
000007f7: SWAP1
000007f8: PUSH2 0x1c49
000007fb: JUMP
000007fc: JUMPDEST
000007fd: PUSH1 0x40
000007ff: MLOAD
00000800: DUP1
00000801: SWAP2
00000802: SUB
00000803: SWAP1
00000804: LOG3
00000805: PUSH2 0x0916
00000808: JUMP
00000809: JUMPDEST
0000080a: PUSH1 0x00
0000080c: PUSH4 0x083261e7
00000811: PUSH1 0xe0
00000813: SHL
00000814: PUSH1 0x00
00000816: PUSH20 0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000
0000082b: DUP11
0000082c: DUP13
0000082d: DUP12
0000082e: PUSH1 0x00
00000830: DUP13
00000831: DUP13
00000832: DUP13
00000833: PUSH1 0x40
00000835: MLOAD
00000836: PUSH1 0x24
00000838: ADD
00000839: PUSH2 0x084a
0000083c: SWAP10
0000083d: SWAP9
0000083e: SWAP8
0000083f: SWAP7
00000840: SWAP6
00000841: SWAP5
00000842: SWAP4
00000843: SWAP3
00000844: SWAP2
00000845: SWAP1
00000846: PUSH2 0x1c79
00000849: JUMP
0000084a: JUMPDEST
0000084b: PUSH1 0x40
0000084d: DUP1
0000084e: MLOAD
0000084f: PUSH1 0x1f
00000851: NOT
00000852: DUP2
00000853: DUP5
00000854: SUB
00000855: ADD
00000856: DUP2
00000857: MSTORE
00000858: SWAP2
00000859: SWAP1
0000085a: MSTORE
0000085b: PUSH1 0x20
0000085d: DUP2
0000085e: ADD
0000085f: DUP1
00000860: MLOAD
00000861: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000087e: AND
0000087f: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
000008a0: SWAP1
000008a1: SWAP4
000008a2: AND
000008a3: SWAP3
000008a4: SWAP1
000008a5: SWAP3
000008a6: OR
000008a7: SWAP1
000008a8: SWAP2
000008a9: MSTORE
000008aa: PUSH1 0x01
000008ac: SLOAD
000008ad: SWAP1
000008ae: SWAP2
000008af: POP
000008b0: PUSH2 0x08c3
000008b3: SWAP1
000008b4: PUSH1 0x01
000008b6: PUSH1 0x01
000008b8: PUSH1 0xa0
000008ba: SHL
000008bb: SUB
000008bc: AND
000008bd: DUP8
000008be: DUP4
000008bf: PUSH2 0x0f0e
000008c2: JUMP
000008c3: JUMPDEST
000008c4: DUP8
000008c5: PUSH1 0x01
000008c7: PUSH1 0x01
000008c9: PUSH1 0xa0
000008cb: SHL
000008cc: SUB
000008cd: AND
000008ce: DUP10
000008cf: PUSH1 0x01
000008d1: PUSH1 0x01
000008d3: PUSH1 0xa0
000008d5: SHL
000008d6: SUB
000008d7: AND
000008d8: PUSH32 0x6b47ba568693f22bf55885e915fd89956580d9846d02fc35d9b20e2360de320e
000008f9: DUP10
000008fa: DUP10
000008fb: DUP10
000008fc: DUP10
000008fd: PUSH1 0x40
000008ff: MLOAD
00000900: PUSH2 0x090c
00000903: SWAP5
00000904: SWAP4
00000905: SWAP3
00000906: SWAP2
00000907: SWAP1
00000908: PUSH2 0x1c49
0000090b: JUMP
0000090c: JUMPDEST
0000090d: PUSH1 0x40
0000090f: MLOAD
00000910: DUP1
00000911: SWAP2
00000912: SUB
00000913: SWAP1
00000914: LOG3
00000915: POP
00000916: JUMPDEST
00000917: POP
00000918: POP
00000919: POP
0000091a: POP
0000091b: POP
0000091c: POP
0000091d: POP
0000091e: POP
0000091f: JUMP
00000920: JUMPDEST
00000921: PUSH1 0x01
00000923: SLOAD
00000924: PUSH1 0x01
00000926: PUSH1 0x01
00000928: PUSH1 0xa0
0000092a: SHL
0000092b: SUB
0000092c: AND
0000092d: PUSH2 0x093e
00000930: PUSH1 0x00
00000932: SLOAD
00000933: PUSH1 0x01
00000935: PUSH1 0x01
00000937: PUSH1 0xa0
00000939: SHL
0000093a: SUB
0000093b: AND
0000093c: SWAP1
0000093d: JUMP
0000093e: JUMPDEST
0000093f: PUSH1 0x01
00000941: PUSH1 0x01
00000943: PUSH1 0xa0
00000945: SHL
00000946: SUB
00000947: AND
00000948: CALLER
00000949: PUSH1 0x01
0000094b: PUSH1 0x01
0000094d: PUSH1 0xa0
0000094f: SHL
00000950: SUB
00000951: AND
00000952: EQ
00000953: PUSH2 0x09c4
00000956: JUMPI
00000957: PUSH1 0x40
00000959: MLOAD
0000095a: PUSH3 0x461bcd
0000095e: PUSH1 0xe5
00000960: SHL
00000961: DUP2
00000962: MSTORE
00000963: PUSH1 0x20
00000965: PUSH1 0x04
00000967: DUP3
00000968: ADD
00000969: MSTORE
0000096a: PUSH1 0x2e
0000096c: PUSH1 0x24
0000096e: DUP3
0000096f: ADD
00000970: MSTORE
00000971: PUSH32 0x4e564d5f58434841494e3a206d657373656e67657220636f6e74726163742075
00000992: PUSH1 0x44
00000994: DUP3
00000995: ADD
00000996: MSTORE
00000997: PUSH32 0x6e61757468656e74696361746564000000000000000000000000000000000000
000009b8: PUSH1 0x64
000009ba: DUP3
000009bb: ADD
000009bc: MSTORE
000009bd: PUSH1 0x84
000009bf: ADD
000009c0: PUSH2 0x011b
000009c3: JUMP
000009c4: JUMPDEST
000009c5: DUP1
000009c6: PUSH1 0x01
000009c8: PUSH1 0x01
000009ca: PUSH1 0xa0
000009cc: SHL
000009cd: SUB
000009ce: AND
000009cf: PUSH2 0x09e0
000009d2: PUSH1 0x00
000009d4: SLOAD
000009d5: PUSH1 0x01
000009d7: PUSH1 0x01
000009d9: PUSH1 0xa0
000009db: SHL
000009dc: SUB
000009dd: AND
000009de: SWAP1
000009df: JUMP
000009e0: JUMPDEST
000009e1: PUSH1 0x01
000009e3: PUSH1 0x01
000009e5: PUSH1 0xa0
000009e7: SHL
000009e8: SUB
000009e9: AND
000009ea: PUSH4 0x6e296e45
000009ef: PUSH1 0x40
000009f1: MLOAD
000009f2: DUP2
000009f3: PUSH4 0xffffffff
000009f8: AND
000009f9: PUSH1 0xe0
000009fb: SHL
000009fc: DUP2
000009fd: MSTORE
000009fe: PUSH1 0x04
00000a00: ADD
00000a01: PUSH1 0x20
00000a03: PUSH1 0x40
00000a05: MLOAD
00000a06: DUP1
00000a07: DUP4
00000a08: SUB
00000a09: DUP2
00000a0a: DUP7
00000a0b: GAS
00000a0c: STATICCALL
00000a0d: ISZERO
00000a0e: DUP1
00000a0f: ISZERO
00000a10: PUSH2 0x0a1d
00000a13: JUMPI
00000a14: RETURNDATASIZE
00000a15: PUSH1 0x00
00000a17: DUP1
00000a18: RETURNDATACOPY
00000a19: RETURNDATASIZE
00000a1a: PUSH1 0x00
00000a1c: REVERT
00000a1d: JUMPDEST
00000a1e: POP
00000a1f: POP
00000a20: POP
00000a21: POP
00000a22: PUSH1 0x40
00000a24: MLOAD
00000a25: RETURNDATASIZE
00000a26: PUSH1 0x1f
00000a28: NOT
00000a29: PUSH1 0x1f
00000a2b: DUP3
00000a2c: ADD
00000a2d: AND
00000a2e: DUP3
00000a2f: ADD
00000a30: DUP1
00000a31: PUSH1 0x40
00000a33: MSTORE
00000a34: POP
00000a35: DUP2
00000a36: ADD
00000a37: SWAP1
00000a38: PUSH2 0x0a41
00000a3b: SWAP2
00000a3c: SWAP1
00000a3d: PUSH2 0x1bde
00000a40: JUMP
00000a41: JUMPDEST
00000a42: PUSH1 0x01
00000a44: PUSH1 0x01
00000a46: PUSH1 0xa0
00000a48: SHL
00000a49: SUB
00000a4a: AND
00000a4b: EQ
00000a4c: PUSH2 0x0abd
00000a4f: JUMPI
00000a50: PUSH1 0x40
00000a52: MLOAD
00000a53: PUSH3 0x461bcd
00000a57: PUSH1 0xe5
00000a59: SHL
00000a5a: DUP2
00000a5b: MSTORE
00000a5c: PUSH1 0x20
00000a5e: PUSH1 0x04
00000a60: DUP3
00000a61: ADD
00000a62: MSTORE
00000a63: PUSH1 0x30
00000a65: PUSH1 0x24
00000a67: DUP3
00000a68: ADD
00000a69: MSTORE
00000a6a: PUSH32 0x4e564d5f58434841494e3a2077726f6e672073656e646572206f662063726f73
00000a8b: PUSH1 0x44
00000a8d: DUP3
00000a8e: ADD
00000a8f: MSTORE
00000a90: PUSH32 0x732d646f6d61696e206d65737361676500000000000000000000000000000000
00000ab1: PUSH1 0x64
00000ab3: DUP3
00000ab4: ADD
00000ab5: MSTORE
00000ab6: PUSH1 0x84
00000ab8: ADD
00000ab9: PUSH2 0x011b
00000abc: JUMP
00000abd: JUMPDEST
00000abe: PUSH2 0x0ae7
00000ac1: DUP11
00000ac2: PUSH32 0xeae770ac00000000000000000000000000000000000000000000000000000000
00000ae3: PUSH2 0x12b3
00000ae6: JUMP
00000ae7: JUMPDEST
00000ae8: DUP1
00000ae9: ISZERO
00000aea: PUSH2 0x0b66
00000aed: JUMPI
00000aee: POP
00000aef: ADDRESS
00000af0: PUSH1 0x01
00000af2: PUSH1 0x01
00000af4: PUSH1 0xa0
00000af6: SHL
00000af7: SUB
00000af8: AND
00000af9: DUP11
00000afa: PUSH1 0x01
00000afc: PUSH1 0x01
00000afe: PUSH1 0xa0
00000b00: SHL
00000b01: SUB
00000b02: AND
00000b03: PUSH3 0x51d905
00000b07: PUSH1 0x40
00000b09: MLOAD
00000b0a: DUP2
00000b0b: PUSH4 0xffffffff
00000b10: AND
00000b11: PUSH1 0xe0
00000b13: SHL
00000b14: DUP2
00000b15: MSTORE
00000b16: PUSH1 0x04
00000b18: ADD
00000b19: PUSH1 0x20
00000b1b: PUSH1 0x40
00000b1d: MLOAD
00000b1e: DUP1
00000b1f: DUP4
00000b20: SUB
00000b21: DUP2
00000b22: PUSH1 0x00
00000b24: DUP8
00000b25: GAS
00000b26: CALL
00000b27: ISZERO
00000b28: DUP1
00000b29: ISZERO
00000b2a: PUSH2 0x0b37
00000b2d: JUMPI
00000b2e: RETURNDATASIZE
00000b2f: PUSH1 0x00
00000b31: DUP1
00000b32: RETURNDATACOPY
00000b33: RETURNDATASIZE
00000b34: PUSH1 0x00
00000b36: REVERT
00000b37: JUMPDEST
00000b38: POP
00000b39: POP
00000b3a: POP
00000b3b: POP
00000b3c: PUSH1 0x40
00000b3e: MLOAD
00000b3f: RETURNDATASIZE
00000b40: PUSH1 0x1f
00000b42: NOT
00000b43: PUSH1 0x1f
00000b45: DUP3
00000b46: ADD
00000b47: AND
00000b48: DUP3
00000b49: ADD
00000b4a: DUP1
00000b4b: PUSH1 0x40
00000b4d: MSTORE
00000b4e: POP
00000b4f: DUP2
00000b50: ADD
00000b51: SWAP1
00000b52: PUSH2 0x0b5b
00000b55: SWAP2
00000b56: SWAP1
00000b57: PUSH2 0x1bde
00000b5a: JUMP
00000b5b: JUMPDEST
00000b5c: PUSH1 0x01
00000b5e: PUSH1 0x01
00000b60: PUSH1 0xa0
00000b62: SHL
00000b63: SUB
00000b64: AND
00000b65: EQ
00000b66: JUMPDEST
00000b67: DUP1
00000b68: ISZERO
00000b69: PUSH2 0x0be6
00000b6c: JUMPI
00000b6d: POP
00000b6e: DUP9
00000b6f: PUSH1 0x01
00000b71: PUSH1 0x01
00000b73: PUSH1 0xa0
00000b75: SHL
00000b76: SUB
00000b77: AND
00000b78: DUP11
00000b79: PUSH1 0x01
00000b7b: PUSH1 0x01
00000b7d: PUSH1 0xa0
00000b7f: SHL
00000b80: SUB
00000b81: AND
00000b82: PUSH4 0xd6c0b2c4
00000b87: PUSH1 0x40
00000b89: MLOAD
00000b8a: DUP2
00000b8b: PUSH4 0xffffffff
00000b90: AND
00000b91: PUSH1 0xe0
00000b93: SHL
00000b94: DUP2
00000b95: MSTORE
00000b96: PUSH1 0x04
00000b98: ADD
00000b99: PUSH1 0x20
00000b9b: PUSH1 0x40
00000b9d: MLOAD
00000b9e: DUP1
00000b9f: DUP4
00000ba0: SUB
00000ba1: DUP2
00000ba2: PUSH1 0x00
00000ba4: DUP8
00000ba5: GAS
00000ba6: CALL
00000ba7: ISZERO
00000ba8: DUP1
00000ba9: ISZERO
00000baa: PUSH2 0x0bb7
00000bad: JUMPI
00000bae: RETURNDATASIZE
00000baf: PUSH1 0x00
00000bb1: DUP1
00000bb2: RETURNDATACOPY
00000bb3: RETURNDATASIZE
00000bb4: PUSH1 0x00
00000bb6: REVERT
00000bb7: JUMPDEST
00000bb8: POP
00000bb9: POP
00000bba: POP
00000bbb: POP
00000bbc: PUSH1 0x40
00000bbe: MLOAD
00000bbf: RETURNDATASIZE
00000bc0: PUSH1 0x1f
00000bc2: NOT
00000bc3: PUSH1 0x1f
00000bc5: DUP3
00000bc6: ADD
00000bc7: AND
00000bc8: DUP3
00000bc9: ADD
00000bca: DUP1
00000bcb: PUSH1 0x40
00000bcd: MSTORE
00000bce: POP
00000bcf: DUP2
00000bd0: ADD
00000bd1: SWAP1
00000bd2: PUSH2 0x0bdb
00000bd5: SWAP2
00000bd6: SWAP1
00000bd7: PUSH2 0x1bde
00000bda: JUMP
00000bdb: JUMPDEST
00000bdc: PUSH1 0x01
00000bde: PUSH1 0x01
00000be0: PUSH1 0xa0
00000be2: SHL
00000be3: SUB
00000be4: AND
00000be5: EQ
00000be6: JUMPDEST
00000be7: ISZERO
00000be8: PUSH2 0x0cca
00000beb: JUMPI
00000bec: PUSH1 0x40
00000bee: MLOAD
00000bef: PUSH32 0x40c10f1900000000000000000000000000000000000000000000000000000000
00000c10: DUP2
00000c11: MSTORE
00000c12: PUSH1 0x01
00000c14: PUSH1 0x01
00000c16: PUSH1 0xa0
00000c18: SHL
00000c19: SUB
00000c1a: DUP9
00000c1b: DUP2
00000c1c: AND
00000c1d: PUSH1 0x04
00000c1f: DUP4
00000c20: ADD
00000c21: MSTORE
00000c22: PUSH1 0x24
00000c24: DUP3
00000c25: ADD
00000c26: DUP9
00000c27: SWAP1
00000c28: MSTORE
00000c29: DUP12
00000c2a: AND
00000c2b: SWAP1
00000c2c: PUSH4 0x40c10f19
00000c31: SWAP1
00000c32: PUSH1 0x44
00000c34: ADD
00000c35: PUSH1 0x00
00000c37: PUSH1 0x40
00000c39: MLOAD
00000c3a: DUP1
00000c3b: DUP4
00000c3c: SUB
00000c3d: DUP2
00000c3e: PUSH1 0x00
00000c40: DUP8
00000c41: DUP1
00000c42: EXTCODESIZE
00000c43: ISZERO
00000c44: DUP1
00000c45: ISZERO
00000c46: PUSH2 0x0c4e
00000c49: JUMPI
00000c4a: PUSH1 0x00
00000c4c: DUP1
00000c4d: REVERT
00000c4e: JUMPDEST
00000c4f: POP
00000c50: GAS
00000c51: CALL
00000c52: ISZERO
00000c53: DUP1
00000c54: ISZERO
00000c55: PUSH2 0x0c62
00000c58: JUMPI
00000c59: RETURNDATASIZE
00000c5a: PUSH1 0x00
00000c5c: DUP1
00000c5d: RETURNDATACOPY
00000c5e: RETURNDATASIZE
00000c5f: PUSH1 0x00
00000c61: REVERT
00000c62: JUMPDEST
00000c63: POP
00000c64: POP
00000c65: POP
00000c66: POP
00000c67: DUP8
00000c68: PUSH1 0x01
00000c6a: PUSH1 0x01
00000c6c: PUSH1 0xa0
00000c6e: SHL
00000c6f: SUB
00000c70: AND
00000c71: DUP10
00000c72: PUSH1 0x01
00000c74: PUSH1 0x01
00000c76: PUSH1 0xa0
00000c78: SHL
00000c79: SUB
00000c7a: AND
00000c7b: DUP12
00000c7c: PUSH1 0x01
00000c7e: PUSH1 0x01
00000c80: PUSH1 0xa0
00000c82: SHL
00000c83: SUB
00000c84: AND
00000c85: PUSH32 0xbde927f1a995206c0e493ff5dee7f2d8ef95c81844a93d0a600831a6d7e6f654
00000ca6: DUP11
00000ca7: DUP11
00000ca8: DUP11
00000ca9: DUP11
00000caa: DUP11
00000cab: DUP11
00000cac: PUSH1 0x40
00000cae: MLOAD
00000caf: PUSH2 0x0cbd
00000cb2: SWAP7
00000cb3: SWAP6
00000cb4: SWAP5
00000cb5: SWAP4
00000cb6: SWAP3
00000cb7: SWAP2
00000cb8: SWAP1
00000cb9: PUSH2 0x1ce2
00000cbc: JUMP
00000cbd: JUMPDEST
00000cbe: PUSH1 0x40
00000cc0: MLOAD
00000cc1: DUP1
00000cc2: SWAP2
00000cc3: SUB
00000cc4: SWAP1
00000cc5: LOG4
00000cc6: PUSH2 0x0eba
00000cc9: JUMP
00000cca: JUMPDEST
00000ccb: PUSH1 0x01
00000ccd: PUSH1 0x01
00000ccf: PUSH1 0xa0
00000cd1: SHL
00000cd2: SUB
00000cd3: DUP1
00000cd4: DUP12
00000cd5: AND
00000cd6: PUSH1 0x00
00000cd8: SWAP1
00000cd9: DUP2
00000cda: MSTORE
00000cdb: PUSH1 0x03
00000cdd: PUSH1 0x20
00000cdf: SWAP1
00000ce0: DUP2
00000ce1: MSTORE
00000ce2: PUSH1 0x40
00000ce4: DUP1
00000ce5: DUP4
00000ce6: KECCAK256
00000ce7: SWAP4
00000ce8: DUP14
00000ce9: AND
00000cea: DUP4
00000ceb: MSTORE
00000cec: SWAP3
00000ced: SWAP1
00000cee: MSTORE
00000cef: KECCAK256
00000cf0: SLOAD
00000cf1: DUP7
00000cf2: GT
00000cf3: PUSH2 0x0db5
00000cf6: JUMPI
00000cf7: PUSH1 0x01
00000cf9: PUSH1 0x01
00000cfb: PUSH1 0xa0
00000cfd: SHL
00000cfe: SUB
00000cff: DUP1
00000d00: DUP12
00000d01: AND
00000d02: PUSH1 0x00
00000d04: SWAP1
00000d05: DUP2
00000d06: MSTORE
00000d07: PUSH1 0x03
00000d09: PUSH1 0x20
00000d0b: SWAP1
00000d0c: DUP2
00000d0d: MSTORE
00000d0e: PUSH1 0x40
00000d10: DUP1
00000d11: DUP4
00000d12: KECCAK256
00000d13: SWAP4
00000d14: DUP14
00000d15: AND
00000d16: DUP4
00000d17: MSTORE
00000d18: SWAP3
00000d19: SWAP1
00000d1a: MSTORE
00000d1b: KECCAK256
00000d1c: SLOAD
00000d1d: PUSH2 0x0d27
00000d20: SWAP1
00000d21: DUP8
00000d22: SWAP1
00000d23: PUSH2 0x1d58
00000d26: JUMP
00000d27: JUMPDEST
00000d28: PUSH1 0x01
00000d2a: PUSH1 0x01
00000d2c: PUSH1 0xa0
00000d2e: SHL
00000d2f: SUB
00000d30: DUP1
00000d31: DUP13
00000d32: AND
00000d33: PUSH1 0x00
00000d35: DUP2
00000d36: DUP2
00000d37: MSTORE
00000d38: PUSH1 0x03
00000d3a: PUSH1 0x20
00000d3c: SWAP1
00000d3d: DUP2
00000d3e: MSTORE
00000d3f: PUSH1 0x40
00000d41: DUP1
00000d42: DUP4
00000d43: KECCAK256
00000d44: SWAP5
00000d45: DUP16
00000d46: AND
00000d47: DUP4
00000d48: MSTORE
00000d49: SWAP4
00000d4a: SWAP1
00000d4b: MSTORE
00000d4c: SWAP2
00000d4d: SWAP1
00000d4e: SWAP2
00000d4f: KECCAK256
00000d50: SWAP2
00000d51: SWAP1
00000d52: SWAP2
00000d53: SSTORE
00000d54: PUSH2 0x0d5e
00000d57: SWAP1
00000d58: DUP9
00000d59: DUP9
00000d5a: PUSH2 0x12d8
00000d5d: JUMP
00000d5e: JUMPDEST
00000d5f: DUP8
00000d60: PUSH1 0x01
00000d62: PUSH1 0x01
00000d64: PUSH1 0xa0
00000d66: SHL
00000d67: SUB
00000d68: AND
00000d69: DUP10
00000d6a: PUSH1 0x01
00000d6c: PUSH1 0x01
00000d6e: PUSH1 0xa0
00000d70: SHL
00000d71: SUB
00000d72: AND
00000d73: DUP12
00000d74: PUSH1 0x01
00000d76: PUSH1 0x01
00000d78: PUSH1 0xa0
00000d7a: SHL
00000d7b: SUB
00000d7c: AND
00000d7d: PUSH32 0xbde927f1a995206c0e493ff5dee7f2d8ef95c81844a93d0a600831a6d7e6f654
00000d9e: DUP11
00000d9f: DUP11
00000da0: DUP11
00000da1: DUP11
00000da2: DUP11
00000da3: DUP11
00000da4: PUSH1 0x40
00000da6: MLOAD
00000da7: PUSH2 0x0cbd
00000daa: SWAP7
00000dab: SWAP6
00000dac: SWAP5
00000dad: SWAP4
00000dae: SWAP3
00000daf: SWAP2
00000db0: SWAP1
00000db1: PUSH2 0x1ce2
00000db4: JUMP
00000db5: JUMPDEST
00000db6: PUSH1 0x00
00000db8: PUSH4 0x083261e7
00000dbd: PUSH1 0xe0
00000dbf: SHL
00000dc0: DUP12
00000dc1: DUP12
00000dc2: DUP11
00000dc3: DUP13
00000dc4: DUP12
00000dc5: DUP12
00000dc6: DUP12
00000dc7: DUP12
00000dc8: DUP12
00000dc9: PUSH1 0x40
00000dcb: MLOAD
00000dcc: PUSH1 0x24
00000dce: ADD
00000dcf: PUSH2 0x0de0
00000dd2: SWAP10
00000dd3: SWAP9
00000dd4: SWAP8
00000dd5: SWAP7
00000dd6: SWAP6
00000dd7: SWAP5
00000dd8: SWAP4
00000dd9: SWAP3
00000dda: SWAP2
00000ddb: SWAP1
00000ddc: PUSH2 0x1d6b
00000ddf: JUMP
00000de0: JUMPDEST
00000de1: PUSH1 0x40
00000de3: DUP1
00000de4: MLOAD
00000de5: PUSH1 0x1f
00000de7: NOT
00000de8: DUP2
00000de9: DUP5
00000dea: SUB
00000deb: ADD
00000dec: DUP2
00000ded: MSTORE
00000dee: SWAP2
00000def: SWAP1
00000df0: MSTORE
00000df1: PUSH1 0x20
00000df3: DUP2
00000df4: ADD
00000df5: DUP1
00000df6: MLOAD
00000df7: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000e14: AND
00000e15: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00000e36: SWAP1
00000e37: SWAP4
00000e38: AND
00000e39: SWAP3
00000e3a: SWAP1
00000e3b: SWAP3
00000e3c: OR
00000e3d: SWAP1
00000e3e: SWAP2
00000e3f: MSTORE
00000e40: PUSH1 0x01
00000e42: SLOAD
00000e43: SWAP1
00000e44: SWAP2
00000e45: POP
00000e46: PUSH2 0x0e59
00000e49: SWAP1
00000e4a: PUSH1 0x01
00000e4c: PUSH1 0x01
00000e4e: PUSH1 0xa0
00000e50: SHL
00000e51: SUB
00000e52: AND
00000e53: DUP7
00000e54: DUP4
00000e55: PUSH2 0x0f0e
00000e58: JUMP
00000e59: JUMPDEST
00000e5a: DUP9
00000e5b: PUSH1 0x01
00000e5d: PUSH1 0x01
00000e5f: PUSH1 0xa0
00000e61: SHL
00000e62: SUB
00000e63: AND
00000e64: DUP11
00000e65: PUSH1 0x01
00000e67: PUSH1 0x01
00000e69: PUSH1 0xa0
00000e6b: SHL
00000e6c: SUB
00000e6d: AND
00000e6e: DUP13
00000e6f: PUSH1 0x01
00000e71: PUSH1 0x01
00000e73: PUSH1 0xa0
00000e75: SHL
00000e76: SUB
00000e77: AND
00000e78: PUSH32 0xa86decc3a8b523fd29aef7d65377a48c34396481f81b261be6cb7d42ec1b61ce
00000e99: DUP12
00000e9a: DUP12
00000e9b: DUP12
00000e9c: DUP12
00000e9d: DUP12
00000e9e: DUP12
00000e9f: PUSH1 0x40
00000ea1: MLOAD
00000ea2: PUSH2 0x0eb0
00000ea5: SWAP7
00000ea6: SWAP6
00000ea7: SWAP5
00000ea8: SWAP4
00000ea9: SWAP3
00000eaa: SWAP2
00000eab: SWAP1
00000eac: PUSH2 0x1ce2
00000eaf: JUMP
00000eb0: JUMPDEST
00000eb1: PUSH1 0x40
00000eb3: MLOAD
00000eb4: DUP1
00000eb5: SWAP2
00000eb6: SUB
00000eb7: SWAP1
00000eb8: LOG4
00000eb9: POP
00000eba: JUMPDEST
00000ebb: POP
00000ebc: POP
00000ebd: POP
00000ebe: POP
00000ebf: POP
00000ec0: POP
00000ec1: POP
00000ec2: POP
00000ec3: POP
00000ec4: POP
00000ec5: JUMP
00000ec6: JUMPDEST
00000ec7: PUSH2 0x0f08
00000eca: CALLER
00000ecb: DUP6
00000ecc: DUP6
00000ecd: DUP6
00000ece: DUP6
00000ecf: DUP1
00000ed0: DUP1
00000ed1: PUSH1 0x1f
00000ed3: ADD
00000ed4: PUSH1 0x20
00000ed6: DUP1
00000ed7: SWAP2
00000ed8: DIV
00000ed9: MUL
00000eda: PUSH1 0x20
00000edc: ADD
00000edd: PUSH1 0x40
00000edf: MLOAD
00000ee0: SWAP1
00000ee1: DUP2
00000ee2: ADD
00000ee3: PUSH1 0x40
00000ee5: MSTORE
00000ee6: DUP1
00000ee7: SWAP4
00000ee8: SWAP3
00000ee9: SWAP2
00000eea: SWAP1
00000eeb: DUP2
00000eec: DUP2
00000eed: MSTORE
00000eee: PUSH1 0x20
00000ef0: ADD
00000ef1: DUP4
00000ef2: DUP4
00000ef3: DUP1
00000ef4: DUP3
00000ef5: DUP5
00000ef6: CALLDATACOPY
00000ef7: PUSH1 0x00
00000ef9: SWAP3
00000efa: ADD
00000efb: SWAP2
00000efc: SWAP1
00000efd: SWAP2
00000efe: MSTORE
00000eff: POP
00000f00: PUSH2 0x02ae
00000f03: SWAP3
00000f04: POP
00000f05: POP
00000f06: POP
00000f07: JUMP
00000f08: JUMPDEST
00000f09: POP
00000f0a: POP
00000f0b: POP
00000f0c: POP
00000f0d: JUMP
00000f0e: JUMPDEST
00000f0f: PUSH1 0x00
00000f11: SLOAD
00000f12: PUSH1 0x40
00000f14: MLOAD
00000f15: PUSH32 0x3dbb202b00000000000000000000000000000000000000000000000000000000
00000f36: DUP2
00000f37: MSTORE
00000f38: PUSH1 0x01
00000f3a: PUSH1 0x01
00000f3c: PUSH1 0xa0
00000f3e: SHL
00000f3f: SUB
00000f40: SWAP1
00000f41: SWAP2
00000f42: AND
00000f43: SWAP1
00000f44: PUSH4 0x3dbb202b
00000f49: SWAP1
00000f4a: PUSH2 0x0f5b
00000f4d: SWAP1
00000f4e: DUP7
00000f4f: SWAP1
00000f50: DUP6
00000f51: SWAP1
00000f52: DUP8
00000f53: SWAP1
00000f54: PUSH1 0x04
00000f56: ADD
00000f57: PUSH2 0x1dc1
00000f5a: JUMP
00000f5b: JUMPDEST
00000f5c: PUSH1 0x00
00000f5e: PUSH1 0x40
00000f60: MLOAD
00000f61: DUP1
00000f62: DUP4
00000f63: SUB
00000f64: DUP2
00000f65: PUSH1 0x00
00000f67: DUP8
00000f68: DUP1
00000f69: EXTCODESIZE
00000f6a: ISZERO
00000f6b: DUP1
00000f6c: ISZERO
00000f6d: PUSH2 0x0f75
00000f70: JUMPI
00000f71: PUSH1 0x00
00000f73: DUP1
00000f74: REVERT
00000f75: JUMPDEST
00000f76: POP
00000f77: GAS
00000f78: CALL
00000f79: ISZERO
00000f7a: DUP1
00000f7b: ISZERO
00000f7c: PUSH2 0x052f
00000f7f: JUMPI
00000f80: RETURNDATASIZE
00000f81: PUSH1 0x00
00000f83: DUP1
00000f84: RETURNDATACOPY
00000f85: RETURNDATASIZE
00000f86: PUSH1 0x00
00000f88: REVERT
00000f89: JUMPDEST
00000f8a: PUSH2 0x0fb3
00000f8d: DUP10
00000f8e: PUSH32 0xeae770ac00000000000000000000000000000000000000000000000000000000
00000faf: PUSH2 0x12b3
00000fb2: JUMP
00000fb3: JUMPDEST
00000fb4: DUP1
00000fb5: ISZERO
00000fb6: PUSH2 0x1032
00000fb9: JUMPI
00000fba: POP
00000fbb: ADDRESS
00000fbc: PUSH1 0x01
00000fbe: PUSH1 0x01
00000fc0: PUSH1 0xa0
00000fc2: SHL
00000fc3: SUB
00000fc4: AND
00000fc5: DUP10
00000fc6: PUSH1 0x01
00000fc8: PUSH1 0x01
00000fca: PUSH1 0xa0
00000fcc: SHL
00000fcd: SUB
00000fce: AND
00000fcf: PUSH3 0x51d905
00000fd3: PUSH1 0x40
00000fd5: MLOAD
00000fd6: DUP2
00000fd7: PUSH4 0xffffffff
00000fdc: AND
00000fdd: PUSH1 0xe0
00000fdf: SHL
00000fe0: DUP2
00000fe1: MSTORE
00000fe2: PUSH1 0x04
00000fe4: ADD
00000fe5: PUSH1 0x20
00000fe7: PUSH1 0x40
00000fe9: MLOAD
00000fea: DUP1
00000feb: DUP4
00000fec: SUB
00000fed: DUP2
00000fee: PUSH1 0x00
00000ff0: DUP8
00000ff1: GAS
00000ff2: CALL
00000ff3: ISZERO
00000ff4: DUP1
00000ff5: ISZERO
00000ff6: PUSH2 0x1003
00000ff9: JUMPI
00000ffa: RETURNDATASIZE
00000ffb: PUSH1 0x00
00000ffd: DUP1
00000ffe: RETURNDATACOPY
00000fff: RETURNDATASIZE
00001000: PUSH1 0x00
00001002: REVERT
00001003: JUMPDEST
00001004: POP
00001005: POP
00001006: POP
00001007: POP
00001008: PUSH1 0x40
0000100a: MLOAD
0000100b: RETURNDATASIZE
0000100c: PUSH1 0x1f
0000100e: NOT
0000100f: PUSH1 0x1f
00001011: DUP3
00001012: ADD
00001013: AND
00001014: DUP3
00001015: ADD
00001016: DUP1
00001017: PUSH1 0x40
00001019: MSTORE
0000101a: POP
0000101b: DUP2
0000101c: ADD
0000101d: SWAP1
0000101e: PUSH2 0x1027
00001021: SWAP2
00001022: SWAP1
00001023: PUSH2 0x1bde
00001026: JUMP
00001027: JUMPDEST
00001028: PUSH1 0x01
0000102a: PUSH1 0x01
0000102c: PUSH1 0xa0
0000102e: SHL
0000102f: SUB
00001030: AND
00001031: EQ
00001032: JUMPDEST
00001033: DUP1
00001034: ISZERO
00001035: PUSH2 0x10b2
00001038: JUMPI
00001039: POP
0000103a: DUP8
0000103b: PUSH1 0x01
0000103d: PUSH1 0x01
0000103f: PUSH1 0xa0
00001041: SHL
00001042: SUB
00001043: AND
00001044: DUP10
00001045: PUSH1 0x01
00001047: PUSH1 0x01
00001049: PUSH1 0xa0
0000104b: SHL
0000104c: SUB
0000104d: AND
0000104e: PUSH4 0xd6c0b2c4
00001053: PUSH1 0x40
00001055: MLOAD
00001056: DUP2
00001057: PUSH4 0xffffffff
0000105c: AND
0000105d: PUSH1 0xe0
0000105f: SHL
00001060: DUP2
00001061: MSTORE
00001062: PUSH1 0x04
00001064: ADD
00001065: PUSH1 0x20
00001067: PUSH1 0x40
00001069: MLOAD
0000106a: DUP1
0000106b: DUP4
0000106c: SUB
0000106d: DUP2
0000106e: PUSH1 0x00
00001070: DUP8
00001071: GAS
00001072: CALL
00001073: ISZERO
00001074: DUP1
00001075: ISZERO
00001076: PUSH2 0x1083
00001079: JUMPI
0000107a: RETURNDATASIZE
0000107b: PUSH1 0x00
0000107d: DUP1
0000107e: RETURNDATACOPY
0000107f: RETURNDATASIZE
00001080: PUSH1 0x00
00001082: REVERT
00001083: JUMPDEST
00001084: POP
00001085: POP
00001086: POP
00001087: POP
00001088: PUSH1 0x40
0000108a: MLOAD
0000108b: RETURNDATASIZE
0000108c: PUSH1 0x1f
0000108e: NOT
0000108f: PUSH1 0x1f
00001091: DUP3
00001092: ADD
00001093: AND
00001094: DUP3
00001095: ADD
00001096: DUP1
00001097: PUSH1 0x40
00001099: MSTORE
0000109a: POP
0000109b: DUP2
0000109c: ADD
0000109d: SWAP1
0000109e: PUSH2 0x10a7
000010a1: SWAP2
000010a2: SWAP1
000010a3: PUSH2 0x1bde
000010a6: JUMP
000010a7: JUMPDEST
000010a8: PUSH1 0x01
000010aa: PUSH1 0x01
000010ac: PUSH1 0xa0
000010ae: SHL
000010af: SUB
000010b0: AND
000010b1: EQ
000010b2: JUMPDEST
000010b3: ISZERO
000010b4: PUSH2 0x1137
000010b7: JUMPI
000010b8: PUSH1 0x40
000010ba: MLOAD
000010bb: PUSH32 0x9dc29fac00000000000000000000000000000000000000000000000000000000
000010dc: DUP2
000010dd: MSTORE
000010de: PUSH1 0x01
000010e0: PUSH1 0x01
000010e2: PUSH1 0xa0
000010e4: SHL
000010e5: SUB
000010e6: DUP9
000010e7: DUP2
000010e8: AND
000010e9: PUSH1 0x04
000010eb: DUP4
000010ec: ADD
000010ed: MSTORE
000010ee: PUSH1 0x24
000010f0: DUP3
000010f1: ADD
000010f2: DUP8
000010f3: SWAP1
000010f4: MSTORE
000010f5: DUP11
000010f6: AND
000010f7: SWAP1
000010f8: PUSH4 0x9dc29fac
000010fd: SWAP1
000010fe: PUSH1 0x44
00001100: ADD
00001101: PUSH1 0x00
00001103: PUSH1 0x40
00001105: MLOAD
00001106: DUP1
00001107: DUP4
00001108: SUB
00001109: DUP2
0000110a: PUSH1 0x00
0000110c: DUP8
0000110d: DUP1
0000110e: EXTCODESIZE
0000110f: ISZERO
00001110: DUP1
00001111: ISZERO
00001112: PUSH2 0x111a
00001115: JUMPI
00001116: PUSH1 0x00
00001118: DUP1
00001119: REVERT
0000111a: JUMPDEST
0000111b: POP
0000111c: GAS
0000111d: CALL
0000111e: ISZERO
0000111f: DUP1
00001120: ISZERO
00001121: PUSH2 0x112e
00001124: JUMPI
00001125: RETURNDATASIZE
00001126: PUSH1 0x00
00001128: DUP1
00001129: RETURNDATACOPY
0000112a: RETURNDATASIZE
0000112b: PUSH1 0x00
0000112d: REVERT
0000112e: JUMPDEST
0000112f: POP
00001130: POP
00001131: POP
00001132: POP
00001133: PUSH2 0x11a4
00001136: JUMP
00001137: JUMPDEST
00001138: PUSH2 0x114c
0000113b: PUSH1 0x01
0000113d: PUSH1 0x01
0000113f: PUSH1 0xa0
00001141: SHL
00001142: SUB
00001143: DUP11
00001144: AND
00001145: DUP9
00001146: ADDRESS
00001147: DUP9
00001148: PUSH2 0x1381
0000114b: JUMP
0000114c: JUMPDEST
0000114d: PUSH1 0x01
0000114f: PUSH1 0x01
00001151: PUSH1 0xa0
00001153: SHL
00001154: SUB
00001155: DUP1
00001156: DUP11
00001157: AND
00001158: PUSH1 0x00
0000115a: SWAP1
0000115b: DUP2
0000115c: MSTORE
0000115d: PUSH1 0x03
0000115f: PUSH1 0x20
00001161: SWAP1
00001162: DUP2
00001163: MSTORE
00001164: PUSH1 0x40
00001166: DUP1
00001167: DUP4
00001168: KECCAK256
00001169: SWAP4
0000116a: DUP13
0000116b: AND
0000116c: DUP4
0000116d: MSTORE
0000116e: SWAP3
0000116f: SWAP1
00001170: MSTORE
00001171: KECCAK256
00001172: SLOAD
00001173: PUSH2 0x117d
00001176: SWAP1
00001177: DUP7
00001178: SWAP1
00001179: PUSH2 0x1df9
0000117c: JUMP
0000117d: JUMPDEST
0000117e: PUSH1 0x01
00001180: PUSH1 0x01
00001182: PUSH1 0xa0
00001184: SHL
00001185: SUB
00001186: DUP1
00001187: DUP12
00001188: AND
00001189: PUSH1 0x00
0000118b: SWAP1
0000118c: DUP2
0000118d: MSTORE
0000118e: PUSH1 0x03
00001190: PUSH1 0x20
00001192: SWAP1
00001193: DUP2
00001194: MSTORE
00001195: PUSH1 0x40
00001197: DUP1
00001198: DUP4
00001199: KECCAK256
0000119a: SWAP4
0000119b: DUP14
0000119c: AND
0000119d: DUP4
0000119e: MSTORE
0000119f: SWAP3
000011a0: SWAP1
000011a1: MSTORE
000011a2: KECCAK256
000011a3: SSTORE
000011a4: JUMPDEST
000011a5: PUSH1 0x00
000011a7: PUSH4 0x083261e7
000011ac: PUSH1 0xe0
000011ae: SHL
000011af: DUP11
000011b0: DUP11
000011b1: DUP11
000011b2: DUP11
000011b3: DUP11
000011b4: DUP11
000011b5: DUP11
000011b6: DUP11
000011b7: DUP11
000011b8: PUSH1 0x40
000011ba: MLOAD
000011bb: PUSH1 0x24
000011bd: ADD
000011be: PUSH2 0x11cf
000011c1: SWAP10
000011c2: SWAP9
000011c3: SWAP8
000011c4: SWAP7
000011c5: SWAP6
000011c6: SWAP5
000011c7: SWAP4
000011c8: SWAP3
000011c9: SWAP2
000011ca: SWAP1
000011cb: PUSH2 0x1d6b
000011ce: JUMP
000011cf: JUMPDEST
000011d0: PUSH1 0x40
000011d2: DUP1
000011d3: MLOAD
000011d4: PUSH1 0x1f
000011d6: NOT
000011d7: DUP2
000011d8: DUP5
000011d9: SUB
000011da: ADD
000011db: DUP2
000011dc: MSTORE
000011dd: SWAP2
000011de: SWAP1
000011df: MSTORE
000011e0: PUSH1 0x20
000011e2: DUP2
000011e3: ADD
000011e4: DUP1
000011e5: MLOAD
000011e6: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00001203: AND
00001204: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00001225: SWAP1
00001226: SWAP4
00001227: AND
00001228: SWAP3
00001229: SWAP1
0000122a: SWAP3
0000122b: OR
0000122c: SWAP1
0000122d: SWAP2
0000122e: MSTORE
0000122f: PUSH1 0x01
00001231: SLOAD
00001232: SWAP1
00001233: SWAP2
00001234: POP
00001235: PUSH2 0x1248
00001238: SWAP1
00001239: PUSH1 0x01
0000123b: PUSH1 0x01
0000123d: PUSH1 0xa0
0000123f: SHL
00001240: SUB
00001241: AND
00001242: DUP6
00001243: DUP4
00001244: PUSH2 0x0f0e
00001247: JUMP
00001248: JUMPDEST
00001249: DUP8
0000124a: PUSH1 0x01
0000124c: PUSH1 0x01
0000124e: PUSH1 0xa0
00001250: SHL
00001251: SUB
00001252: AND
00001253: DUP10
00001254: PUSH1 0x01
00001256: PUSH1 0x01
00001258: PUSH1 0xa0
0000125a: SHL
0000125b: SUB
0000125c: AND
0000125d: DUP12
0000125e: PUSH1 0x01
00001260: PUSH1 0x01
00001262: PUSH1 0xa0
00001264: SHL
00001265: SUB
00001266: AND
00001267: PUSH32 0x7247ff8997b99a2b0b1748d56fe62c95a23c3f152459a141a780a94b60fdf567
00001288: DUP11
00001289: DUP11
0000128a: DUP11
0000128b: DUP11
0000128c: DUP11
0000128d: DUP11
0000128e: PUSH1 0x40
00001290: MLOAD
00001291: PUSH2 0x129f
00001294: SWAP7
00001295: SWAP6
00001296: SWAP5
00001297: SWAP4
00001298: SWAP3
00001299: SWAP2
0000129a: SWAP1
0000129b: PUSH2 0x1ce2
0000129e: JUMP
0000129f: JUMPDEST
000012a0: PUSH1 0x40
000012a2: MLOAD
000012a3: DUP1
000012a4: SWAP2
000012a5: SUB
000012a6: SWAP1
000012a7: LOG4
000012a8: POP
000012a9: POP
000012aa: POP
000012ab: POP
000012ac: POP
000012ad: POP
000012ae: POP
000012af: POP
000012b0: POP
000012b1: POP
000012b2: JUMP
000012b3: JUMPDEST
000012b4: PUSH1 0x00
000012b6: PUSH2 0x12be
000012b9: DUP4
000012ba: PUSH2 0x13d2
000012bd: JUMP
000012be: JUMPDEST
000012bf: DUP1
000012c0: ISZERO
000012c1: PUSH2 0x12cf
000012c4: JUMPI
000012c5: POP
000012c6: PUSH2 0x12cf
000012c9: DUP4
000012ca: DUP4
000012cb: PUSH2 0x1436
000012ce: JUMP
000012cf: JUMPDEST
000012d0: SWAP1
000012d1: POP
000012d2: JUMPDEST
000012d3: SWAP3
000012d4: SWAP2
000012d5: POP
000012d6: POP
000012d7: JUMP
000012d8: JUMPDEST
000012d9: PUSH1 0x40
000012db: MLOAD
000012dc: PUSH1 0x01
000012de: PUSH1 0x01
000012e0: PUSH1 0xa0
000012e2: SHL
000012e3: SUB
000012e4: DUP4
000012e5: AND
000012e6: PUSH1 0x24
000012e8: DUP3
000012e9: ADD
000012ea: MSTORE
000012eb: PUSH1 0x44
000012ed: DUP2
000012ee: ADD
000012ef: DUP3
000012f0: SWAP1
000012f1: MSTORE
000012f2: PUSH2 0x044d
000012f5: SWAP1
000012f6: DUP5
000012f7: SWAP1
000012f8: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00001319: SWAP1
0000131a: PUSH1 0x64
0000131c: ADD
0000131d: JUMPDEST
0000131e: PUSH1 0x40
00001320: DUP1
00001321: MLOAD
00001322: PUSH1 0x1f
00001324: NOT
00001325: DUP2
00001326: DUP5
00001327: SUB
00001328: ADD
00001329: DUP2
0000132a: MSTORE
0000132b: SWAP2
0000132c: SWAP1
0000132d: MSTORE
0000132e: PUSH1 0x20
00001330: DUP2
00001331: ADD
00001332: DUP1
00001333: MLOAD
00001334: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00001351: AND
00001352: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
00001373: SWAP1
00001374: SWAP4
00001375: AND
00001376: SWAP3
00001377: SWAP1
00001378: SWAP3
00001379: OR
0000137a: SWAP1
0000137b: SWAP2
0000137c: MSTORE
0000137d: PUSH2 0x1505
00001380: JUMP
00001381: JUMPDEST
00001382: PUSH1 0x40
00001384: MLOAD
00001385: PUSH1 0x01
00001387: PUSH1 0x01
00001389: PUSH1 0xa0
0000138b: SHL
0000138c: SUB
0000138d: DUP1
0000138e: DUP6
0000138f: AND
00001390: PUSH1 0x24
00001392: DUP4
00001393: ADD
00001394: MSTORE
00001395: DUP4
00001396: AND
00001397: PUSH1 0x44
00001399: DUP3
0000139a: ADD
0000139b: MSTORE
0000139c: PUSH1 0x64
0000139e: DUP2
0000139f: ADD
000013a0: DUP3
000013a1: SWAP1
000013a2: MSTORE
000013a3: PUSH2 0x0f08
000013a6: SWAP1
000013a7: DUP6
000013a8: SWAP1
000013a9: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000
000013ca: SWAP1
000013cb: PUSH1 0x84
000013cd: ADD
000013ce: PUSH2 0x131d
000013d1: JUMP
000013d2: JUMPDEST
000013d3: PUSH1 0x00
000013d5: PUSH2 0x13fe
000013d8: DUP3
000013d9: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000
000013fa: PUSH2 0x1436
000013fd: JUMP
000013fe: JUMPDEST
000013ff: DUP1
00001400: ISZERO
00001401: PUSH2 0x12d2
00001404: JUMPI
00001405: POP
00001406: PUSH2 0x142f
00001409: DUP3
0000140a: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000142b: PUSH2 0x1436
0000142e: JUMP
0000142f: JUMPDEST
00001430: ISZERO
00001431: SWAP3
00001432: SWAP2
00001433: POP
00001434: POP
00001435: JUMP
00001436: JUMPDEST
00001437: PUSH1 0x40
00001439: DUP1
0000143a: MLOAD
0000143b: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000
0000145c: DUP4
0000145d: AND
0000145e: PUSH1 0x24
00001460: DUP1
00001461: DUP4
00001462: ADD
00001463: SWAP2
00001464: SWAP1
00001465: SWAP2
00001466: MSTORE
00001467: DUP3
00001468: MLOAD
00001469: DUP1
0000146a: DUP4
0000146b: SUB
0000146c: SWAP1
0000146d: SWAP2
0000146e: ADD
0000146f: DUP2
00001470: MSTORE
00001471: PUSH1 0x44
00001473: SWAP1
00001474: SWAP2
00001475: ADD
00001476: SWAP1
00001477: SWAP2
00001478: MSTORE
00001479: PUSH1 0x20
0000147b: DUP1
0000147c: DUP3
0000147d: ADD
0000147e: DUP1
0000147f: MLOAD
00001480: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000149d: AND
0000149e: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000
000014bf: OR
000014c0: DUP2
000014c1: MSTORE
000014c2: DUP3
000014c3: MLOAD
000014c4: PUSH1 0x00
000014c6: SWAP4
000014c7: SWAP3
000014c8: DUP5
000014c9: SWAP3
000014ca: DUP4
000014cb: SWAP3
000014cc: DUP4
000014cd: SWAP3
000014ce: SWAP2
000014cf: DUP4
000014d0: SWAP2
000014d1: SWAP1
000014d2: DUP11
000014d3: PUSH2 0x7530
000014d6: STATICCALL
000014d7: SWAP3
000014d8: POP
000014d9: RETURNDATASIZE
000014da: SWAP2
000014db: POP
000014dc: PUSH1 0x00
000014de: MLOAD
000014df: SWAP1
000014e0: POP
000014e1: DUP3
000014e2: DUP1
000014e3: ISZERO
000014e4: PUSH2 0x14ee
000014e7: JUMPI
000014e8: POP
000014e9: PUSH1 0x20
000014eb: DUP3
000014ec: LT
000014ed: ISZERO
000014ee: JUMPDEST
000014ef: DUP1
000014f0: ISZERO
000014f1: PUSH2 0x14fa
000014f4: JUMPI
000014f5: POP
000014f6: PUSH1 0x00
000014f8: DUP2
000014f9: GT
000014fa: JUMPDEST
000014fb: SWAP8
000014fc: SWAP7
000014fd: POP
000014fe: POP
000014ff: POP
00001500: POP
00001501: POP
00001502: POP
00001503: POP
00001504: JUMP
00001505: JUMPDEST
00001506: PUSH1 0x00
00001508: PUSH2 0x155a
0000150b: DUP3
0000150c: PUSH1 0x40
0000150e: MLOAD
0000150f: DUP1
00001510: PUSH1 0x40
00001512: ADD
00001513: PUSH1 0x40
00001515: MSTORE
00001516: DUP1
00001517: PUSH1 0x20
00001519: DUP2
0000151a: MSTORE
0000151b: PUSH1 0x20
0000151d: ADD
0000151e: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
0000153f: DUP2
00001540: MSTORE
00001541: POP
00001542: DUP6
00001543: PUSH1 0x01
00001545: PUSH1 0x01
00001547: PUSH1 0xa0
00001549: SHL
0000154a: SUB
0000154b: AND
0000154c: PUSH2 0x15ea
0000154f: SWAP1
00001550: SWAP3
00001551: SWAP2
00001552: SWAP1
00001553: PUSH4 0xffffffff
00001558: AND
00001559: JUMP
0000155a: JUMPDEST
0000155b: DUP1
0000155c: MLOAD
0000155d: SWAP1
0000155e: SWAP2
0000155f: POP
00001560: ISZERO
00001561: PUSH2 0x044d
00001564: JUMPI
00001565: DUP1
00001566: DUP1
00001567: PUSH1 0x20
00001569: ADD
0000156a: SWAP1
0000156b: MLOAD
0000156c: DUP2
0000156d: ADD
0000156e: SWAP1
0000156f: PUSH2 0x1578
00001572: SWAP2
00001573: SWAP1
00001574: PUSH2 0x1e0c
00001577: JUMP
00001578: JUMPDEST
00001579: PUSH2 0x044d
0000157c: JUMPI
0000157d: PUSH1 0x40
0000157f: MLOAD
00001580: PUSH3 0x461bcd
00001584: PUSH1 0xe5
00001586: SHL
00001587: DUP2
00001588: MSTORE
00001589: PUSH1 0x20
0000158b: PUSH1 0x04
0000158d: DUP3
0000158e: ADD
0000158f: MSTORE
00001590: PUSH1 0x2a
00001592: PUSH1 0x24
00001594: DUP3
00001595: ADD
00001596: MSTORE
00001597: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e
000015b8: PUSH1 0x44
000015ba: DUP3
000015bb: ADD
000015bc: MSTORE
000015bd: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000
000015de: PUSH1 0x64
000015e0: DUP3
000015e1: ADD
000015e2: MSTORE
000015e3: PUSH1 0x84
000015e5: ADD
000015e6: PUSH2 0x011b
000015e9: JUMP
000015ea: JUMPDEST
000015eb: PUSH1 0x60
000015ed: PUSH2 0x15f9
000015f0: DUP5
000015f1: DUP5
000015f2: PUSH1 0x00
000015f4: DUP6
000015f5: PUSH2 0x1601
000015f8: JUMP
000015f9: JUMPDEST
000015fa: SWAP5
000015fb: SWAP4
000015fc: POP
000015fd: POP
000015fe: POP
000015ff: POP
00001600: JUMP
00001601: JUMPDEST
00001602: PUSH1 0x60
00001604: DUP3
00001605: SELFBALANCE
00001606: LT
00001607: ISZERO
00001608: PUSH2 0x1679
0000160b: JUMPI
0000160c: PUSH1 0x40
0000160e: MLOAD
0000160f: PUSH3 0x461bcd
00001613: PUSH1 0xe5
00001615: SHL
00001616: DUP2
00001617: MSTORE
00001618: PUSH1 0x20
0000161a: PUSH1 0x04
0000161c: DUP3
0000161d: ADD
0000161e: MSTORE
0000161f: PUSH1 0x26
00001621: PUSH1 0x24
00001623: DUP3
00001624: ADD
00001625: MSTORE
00001626: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f
00001647: PUSH1 0x44
00001649: DUP3
0000164a: ADD
0000164b: MSTORE
0000164c: PUSH32 0x722063616c6c0000000000000000000000000000000000000000000000000000
0000166d: PUSH1 0x64
0000166f: DUP3
00001670: ADD
00001671: MSTORE
00001672: PUSH1 0x84
00001674: ADD
00001675: PUSH2 0x011b
00001678: JUMP
00001679: JUMPDEST
0000167a: PUSH1 0x00
0000167c: DUP1
0000167d: DUP7
0000167e: PUSH1 0x01
00001680: PUSH1 0x01
00001682: PUSH1 0xa0
00001684: SHL
00001685: SUB
00001686: AND
00001687: DUP6
00001688: DUP8
00001689: PUSH1 0x40
0000168b: MLOAD
0000168c: PUSH2 0x1695
0000168f: SWAP2
00001690: SWAP1
00001691: PUSH2 0x1c02
00001694: JUMP
00001695: JUMPDEST
00001696: PUSH1 0x00
00001698: PUSH1 0x40
0000169a: MLOAD
0000169b: DUP1
0000169c: DUP4
0000169d: SUB
0000169e: DUP2
0000169f: DUP6
000016a0: DUP8
000016a1: GAS
000016a2: CALL
000016a3: SWAP3
000016a4: POP
000016a5: POP
000016a6: POP
000016a7: RETURNDATASIZE
000016a8: DUP1
000016a9: PUSH1 0x00
000016ab: DUP2
000016ac: EQ
000016ad: PUSH2 0x16d2
000016b0: JUMPI
000016b1: PUSH1 0x40
000016b3: MLOAD
000016b4: SWAP2
000016b5: POP
000016b6: PUSH1 0x1f
000016b8: NOT
000016b9: PUSH1 0x3f
000016bb: RETURNDATASIZE
000016bc: ADD
000016bd: AND
000016be: DUP3
000016bf: ADD
000016c0: PUSH1 0x40
000016c2: MSTORE
000016c3: RETURNDATASIZE
000016c4: DUP3
000016c5: MSTORE
000016c6: RETURNDATASIZE
000016c7: PUSH1 0x00
000016c9: PUSH1 0x20
000016cb: DUP5
000016cc: ADD
000016cd: RETURNDATACOPY
000016ce: PUSH2 0x16d7
000016d1: JUMP
000016d2: JUMPDEST
000016d3: PUSH1 0x60
000016d5: SWAP2
000016d6: POP
000016d7: JUMPDEST
000016d8: POP
000016d9: SWAP2
000016da: POP
000016db: SWAP2
000016dc: POP
000016dd: PUSH2 0x14fa
000016e0: DUP8
000016e1: DUP4
000016e2: DUP4
000016e3: DUP8
000016e4: PUSH1 0x60
000016e6: DUP4
000016e7: ISZERO
000016e8: PUSH2 0x1752
000016eb: JUMPI
000016ec: DUP3
000016ed: MLOAD
000016ee: PUSH1 0x00
000016f0: SUB
000016f1: PUSH2 0x174b
000016f4: JUMPI
000016f5: PUSH1 0x01
000016f7: PUSH1 0x01
000016f9: PUSH1 0xa0
000016fb: SHL
000016fc: SUB
000016fd: DUP6
000016fe: AND
000016ff: EXTCODESIZE
00001700: PUSH2 0x174b
00001703: JUMPI
00001704: PUSH1 0x40
00001706: MLOAD
00001707: PUSH3 0x461bcd
0000170b: PUSH1 0xe5
0000170d: SHL
0000170e: DUP2
0000170f: MSTORE
00001710: PUSH1 0x20
00001712: PUSH1 0x04
00001714: DUP3
00001715: ADD
00001716: MSTORE
00001717: PUSH1 0x1d
00001719: PUSH1 0x24
0000171b: DUP3
0000171c: ADD
0000171d: MSTORE
0000171e: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
0000173f: PUSH1 0x44
00001741: DUP3
00001742: ADD
00001743: MSTORE
00001744: PUSH1 0x64
00001746: ADD
00001747: PUSH2 0x011b
0000174a: JUMP
0000174b: JUMPDEST
0000174c: POP
0000174d: DUP2
0000174e: PUSH2 0x15f9
00001751: JUMP
00001752: JUMPDEST
00001753: PUSH2 0x15f9
00001756: DUP4
00001757: DUP4
00001758: DUP2
00001759: MLOAD
0000175a: ISZERO
0000175b: PUSH2 0x1767
0000175e: JUMPI
0000175f: DUP2
00001760: MLOAD
00001761: DUP1
00001762: DUP4
00001763: PUSH1 0x20
00001765: ADD
00001766: REVERT
00001767: JUMPDEST
00001768: DUP1
00001769: PUSH1 0x40
0000176b: MLOAD
0000176c: PUSH3 0x461bcd
00001770: PUSH1 0xe5
00001772: SHL
00001773: DUP2
00001774: MSTORE
00001775: PUSH1 0x04
00001777: ADD
00001778: PUSH2 0x011b
0000177b: SWAP2
0000177c: SWAP1
0000177d: PUSH2 0x1e2e
00001780: JUMP
00001781: JUMPDEST
00001782: DUP1
00001783: CALLDATALOAD
00001784: PUSH4 0xffffffff
00001789: DUP2
0000178a: AND
0000178b: DUP2
0000178c: EQ
0000178d: PUSH2 0x1795
00001790: JUMPI
00001791: PUSH1 0x00
00001793: DUP1
00001794: REVERT
00001795: JUMPDEST
00001796: SWAP2
00001797: SWAP1
00001798: POP
00001799: JUMP
0000179a: JUMPDEST
0000179b: PUSH1 0x00
0000179d: DUP1
0000179e: DUP4
0000179f: PUSH1 0x1f
000017a1: DUP5
000017a2: ADD
000017a3: SLT
000017a4: PUSH2 0x17ac
000017a7: JUMPI
000017a8: PUSH1 0x00
000017aa: DUP1
000017ab: REVERT
000017ac: JUMPDEST
000017ad: POP
000017ae: DUP2
000017af: CALLDATALOAD
000017b0: PUSH8 0xffffffffffffffff
000017b9: DUP2
000017ba: GT
000017bb: ISZERO
000017bc: PUSH2 0x17c4
000017bf: JUMPI
000017c0: PUSH1 0x00
000017c2: DUP1
000017c3: REVERT
000017c4: JUMPDEST
000017c5: PUSH1 0x20
000017c7: DUP4
000017c8: ADD
000017c9: SWAP2
000017ca: POP
000017cb: DUP4
000017cc: PUSH1 0x20
000017ce: DUP3
000017cf: DUP6
000017d0: ADD
000017d1: ADD
000017d2: GT
000017d3: ISZERO
000017d4: PUSH2 0x17dc
000017d7: JUMPI
000017d8: PUSH1 0x00
000017da: DUP1
000017db: REVERT
000017dc: JUMPDEST
000017dd: SWAP3
000017de: POP
000017df: SWAP3
000017e0: SWAP1
000017e1: POP
000017e2: JUMP
000017e3: JUMPDEST
000017e4: PUSH1 0x00
000017e6: DUP1
000017e7: PUSH1 0x00
000017e9: PUSH1 0x40
000017eb: DUP5
000017ec: DUP7
000017ed: SUB
000017ee: SLT
000017ef: ISZERO
000017f0: PUSH2 0x17f8
000017f3: JUMPI
000017f4: PUSH1 0x00
000017f6: DUP1
000017f7: REVERT
000017f8: JUMPDEST
000017f9: PUSH2 0x1801
000017fc: DUP5
000017fd: PUSH2 0x1781
00001800: JUMP
00001801: JUMPDEST
00001802: SWAP3
00001803: POP
00001804: PUSH1 0x20
00001806: DUP5
00001807: ADD
00001808: CALLDATALOAD
00001809: PUSH8 0xffffffffffffffff
00001812: DUP2
00001813: GT
00001814: ISZERO
00001815: PUSH2 0x181d
00001818: JUMPI
00001819: PUSH1 0x00
0000181b: DUP1
0000181c: REVERT
0000181d: JUMPDEST
0000181e: PUSH2 0x1829
00001821: DUP7
00001822: DUP3
00001823: DUP8
00001824: ADD
00001825: PUSH2 0x179a
00001828: JUMP
00001829: JUMPDEST
0000182a: SWAP5
0000182b: SWAP8
0000182c: SWAP1
0000182d: SWAP7
0000182e: POP
0000182f: SWAP4
00001830: SWAP5
00001831: POP
00001832: POP
00001833: POP
00001834: POP
00001835: JUMP
00001836: JUMPDEST
00001837: PUSH1 0x01
00001839: PUSH1 0x01
0000183b: PUSH1 0xa0
0000183d: SHL
0000183e: SUB
0000183f: DUP2
00001840: AND
00001841: DUP2
00001842: EQ
00001843: PUSH2 0x184b
00001846: JUMPI
00001847: PUSH1 0x00
00001849: DUP1
0000184a: REVERT
0000184b: JUMPDEST
0000184c: POP
0000184d: JUMP
0000184e: JUMPDEST
0000184f: PUSH1 0x00
00001851: DUP1
00001852: PUSH1 0x00
00001854: PUSH1 0x60
00001856: DUP5
00001857: DUP7
00001858: SUB
00001859: SLT
0000185a: ISZERO
0000185b: PUSH2 0x1863
0000185e: JUMPI
0000185f: PUSH1 0x00
00001861: DUP1
00001862: REVERT
00001863: JUMPDEST
00001864: DUP4
00001865: CALLDATALOAD
00001866: PUSH2 0x186e
00001869: DUP2
0000186a: PUSH2 0x1836
0000186d: JUMP
0000186e: JUMPDEST
0000186f: SWAP3
00001870: POP
00001871: PUSH1 0x20
00001873: DUP5
00001874: ADD
00001875: CALLDATALOAD
00001876: PUSH2 0x187e
00001879: DUP2
0000187a: PUSH2 0x1836
0000187d: JUMP
0000187e: JUMPDEST
0000187f: SWAP3
00001880: SWAP6
00001881: SWAP3
00001882: SWAP5
00001883: POP
00001884: POP
00001885: POP
00001886: PUSH1 0x40
00001888: SWAP2
00001889: SWAP1
0000188a: SWAP2
0000188b: ADD
0000188c: CALLDATALOAD
0000188d: SWAP1
0000188e: JUMP
0000188f: JUMPDEST
00001890: PUSH1 0x00
00001892: DUP1
00001893: PUSH1 0x00
00001895: DUP1
00001896: PUSH1 0x00
00001898: DUP1
00001899: PUSH1 0x00
0000189b: PUSH1 0xc0
0000189d: DUP9
0000189e: DUP11
0000189f: SUB
000018a0: SLT
000018a1: ISZERO
000018a2: PUSH2 0x18aa
000018a5: JUMPI
000018a6: PUSH1 0x00
000018a8: DUP1
000018a9: REVERT
000018aa: JUMPDEST
000018ab: DUP8
000018ac: CALLDATALOAD
000018ad: PUSH2 0x18b5
000018b0: DUP2
000018b1: PUSH2 0x1836
000018b4: JUMP
000018b5: JUMPDEST
000018b6: SWAP7
000018b7: POP
000018b8: PUSH1 0x20
000018ba: DUP9
000018bb: ADD
000018bc: CALLDATALOAD
000018bd: PUSH2 0x18c5
000018c0: DUP2
000018c1: PUSH2 0x1836
000018c4: JUMP
000018c5: JUMPDEST
000018c6: SWAP6
000018c7: POP
000018c8: PUSH1 0x40
000018ca: DUP9
000018cb: ADD
000018cc: CALLDATALOAD
000018cd: PUSH2 0x18d5
000018d0: DUP2
000018d1: PUSH2 0x1836
000018d4: JUMP
000018d5: JUMPDEST
000018d6: SWAP5
000018d7: POP
000018d8: PUSH1 0x60
000018da: DUP9
000018db: ADD
000018dc: CALLDATALOAD
000018dd: SWAP4
000018de: POP
000018df: PUSH2 0x18ea
000018e2: PUSH1 0x80
000018e4: DUP10
000018e5: ADD
000018e6: PUSH2 0x1781
000018e9: JUMP
000018ea: JUMPDEST
000018eb: SWAP3
000018ec: POP
000018ed: PUSH1 0xa0
000018ef: DUP9
000018f0: ADD
000018f1: CALLDATALOAD
000018f2: PUSH8 0xffffffffffffffff
000018fb: DUP2
000018fc: GT
000018fd: ISZERO
000018fe: PUSH2 0x1906
00001901: JUMPI
00001902: PUSH1 0x00
00001904: DUP1
00001905: REVERT
00001906: JUMPDEST
00001907: PUSH2 0x1912
0000190a: DUP11
0000190b: DUP3
0000190c: DUP12
0000190d: ADD
0000190e: PUSH2 0x179a
00001911: JUMP
00001912: JUMPDEST
00001913: SWAP9
00001914: SWAP12
00001915: SWAP8
00001916: SWAP11
00001917: POP
00001918: SWAP6
00001919: SWAP9
0000191a: POP
0000191b: SWAP4
0000191c: SWAP7
0000191d: SWAP3
0000191e: SWAP6
0000191f: SWAP3
00001920: SWAP4
00001921: POP
00001922: POP
00001923: POP
00001924: JUMP
00001925: JUMPDEST
00001926: PUSH1 0x00
00001928: DUP1
00001929: PUSH1 0x00
0000192b: DUP1
0000192c: PUSH1 0x00
0000192e: DUP1
0000192f: PUSH1 0xa0
00001931: DUP8
00001932: DUP10
00001933: SUB
00001934: SLT
00001935: ISZERO
00001936: PUSH2 0x193e
00001939: JUMPI
0000193a: PUSH1 0x00
0000193c: DUP1
0000193d: REVERT
0000193e: JUMPDEST
0000193f: DUP7
00001940: CALLDATALOAD
00001941: PUSH2 0x1949
00001944: DUP2
00001945: PUSH2 0x1836
00001948: JUMP
00001949: JUMPDEST
0000194a: SWAP6
0000194b: POP
0000194c: PUSH1 0x20
0000194e: DUP8
0000194f: ADD
00001950: CALLDATALOAD
00001951: PUSH2 0x1959
00001954: DUP2
00001955: PUSH2 0x1836
00001958: JUMP
00001959: JUMPDEST
0000195a: SWAP5
0000195b: POP
0000195c: PUSH1 0x40
0000195e: DUP8
0000195f: ADD
00001960: CALLDATALOAD
00001961: SWAP4
00001962: POP
00001963: PUSH2 0x196e
00001966: PUSH1 0x60
00001968: DUP9
00001969: ADD
0000196a: PUSH2 0x1781
0000196d: JUMP
0000196e: JUMPDEST
0000196f: SWAP3
00001970: POP
00001971: PUSH1 0x80
00001973: DUP8
00001974: ADD
00001975: CALLDATALOAD
00001976: PUSH8 0xffffffffffffffff
0000197f: DUP2
00001980: GT
00001981: ISZERO
00001982: PUSH2 0x198a
00001985: JUMPI
00001986: PUSH1 0x00
00001988: DUP1
00001989: REVERT
0000198a: JUMPDEST
0000198b: PUSH2 0x1996
0000198e: DUP10
0000198f: DUP3
00001990: DUP11
00001991: ADD
00001992: PUSH2 0x179a
00001995: JUMP
00001996: JUMPDEST
00001997: SWAP8
00001998: SWAP11
00001999: SWAP7
0000199a: SWAP10
0000199b: POP
0000199c: SWAP5
0000199d: SWAP8
0000199e: POP
0000199f: SWAP3
000019a0: SWAP6
000019a1: SWAP4
000019a2: SWAP5
000019a3: SWAP3
000019a4: POP
000019a5: POP
000019a6: POP
000019a7: JUMP
000019a8: JUMPDEST
000019a9: PUSH1 0x00
000019ab: DUP1
000019ac: PUSH1 0x00
000019ae: DUP1
000019af: PUSH1 0x00
000019b1: DUP1
000019b2: PUSH1 0x00
000019b4: DUP1
000019b5: PUSH1 0x00
000019b7: PUSH2 0x0100
000019ba: DUP11
000019bb: DUP13
000019bc: SUB
000019bd: SLT
000019be: ISZERO
000019bf: PUSH2 0x19c7
000019c2: JUMPI
000019c3: PUSH1 0x00
000019c5: DUP1
000019c6: REVERT
000019c7: JUMPDEST
000019c8: DUP10
000019c9: CALLDATALOAD
000019ca: PUSH2 0x19d2
000019cd: DUP2
000019ce: PUSH2 0x1836
000019d1: JUMP
000019d2: JUMPDEST
000019d3: SWAP9
000019d4: POP
000019d5: PUSH1 0x20
000019d7: DUP11
000019d8: ADD
000019d9: CALLDATALOAD
000019da: PUSH2 0x19e2
000019dd: DUP2
000019de: PUSH2 0x1836
000019e1: JUMP
000019e2: JUMPDEST
000019e3: SWAP8
000019e4: POP
000019e5: PUSH1 0x40
000019e7: DUP11
000019e8: ADD
000019e9: CALLDATALOAD
000019ea: PUSH2 0x19f2
000019ed: DUP2
000019ee: PUSH2 0x1836
000019f1: JUMP
000019f2: JUMPDEST
000019f3: SWAP7
000019f4: POP
000019f5: PUSH1 0x60
000019f7: DUP11
000019f8: ADD
000019f9: CALLDATALOAD
000019fa: PUSH2 0x1a02
000019fd: DUP2
000019fe: PUSH2 0x1836
00001a01: JUMP
00001a02: JUMPDEST
00001a03: SWAP6
00001a04: POP
00001a05: PUSH1 0x80
00001a07: DUP11
00001a08: ADD
00001a09: CALLDATALOAD
00001a0a: SWAP5
00001a0b: POP
00001a0c: PUSH1 0xa0
00001a0e: DUP11
00001a0f: ADD
00001a10: CALLDATALOAD
00001a11: SWAP4
00001a12: POP
00001a13: PUSH2 0x1a1e
00001a16: PUSH1 0xc0
00001a18: DUP12
00001a19: ADD
00001a1a: PUSH2 0x1781
00001a1d: JUMP
00001a1e: JUMPDEST
00001a1f: SWAP3
00001a20: POP
00001a21: PUSH1 0xe0
00001a23: DUP11
00001a24: ADD
00001a25: CALLDATALOAD
00001a26: PUSH8 0xffffffffffffffff
00001a2f: DUP2
00001a30: GT
00001a31: ISZERO
00001a32: PUSH2 0x1a3a
00001a35: JUMPI
00001a36: PUSH1 0x00
00001a38: DUP1
00001a39: REVERT
00001a3a: JUMPDEST
00001a3b: PUSH2 0x1a46
00001a3e: DUP13
00001a3f: DUP3
00001a40: DUP14
00001a41: ADD
00001a42: PUSH2 0x179a
00001a45: JUMP
00001a46: JUMPDEST
00001a47: SWAP2
00001a48: POP
00001a49: DUP1
00001a4a: SWAP4
00001a4b: POP
00001a4c: POP
00001a4d: DUP1
00001a4e: SWAP2
00001a4f: POP
00001a50: POP
00001a51: SWAP3
00001a52: SWAP6
00001a53: SWAP9
00001a54: POP
00001a55: SWAP3
00001a56: SWAP6
00001a57: SWAP9
00001a58: POP
00001a59: SWAP3
00001a5a: SWAP6
00001a5b: SWAP9
00001a5c: JUMP
00001a5d: JUMPDEST
00001a5e: PUSH1 0x00
00001a60: DUP1
00001a61: PUSH1 0x40
00001a63: DUP4
00001a64: DUP6
00001a65: SUB
00001a66: SLT
00001a67: ISZERO
00001a68: PUSH2 0x1a70
00001a6b: JUMPI
00001a6c: PUSH1 0x00
00001a6e: DUP1
00001a6f: REVERT
00001a70: JUMPDEST
00001a71: DUP3
00001a72: CALLDATALOAD
00001a73: PUSH2 0x1a7b
00001a76: DUP2
00001a77: PUSH2 0x1836
00001a7a: JUMP
00001a7b: JUMPDEST
00001a7c: SWAP2
00001a7d: POP
00001a7e: PUSH1 0x20
00001a80: DUP4
00001a81: ADD
00001a82: CALLDATALOAD
00001a83: PUSH2 0x1a8b
00001a86: DUP2
00001a87: PUSH2 0x1836
00001a8a: JUMP
00001a8b: JUMPDEST
00001a8c: DUP1
00001a8d: SWAP2
00001a8e: POP
00001a8f: POP
00001a90: SWAP3
00001a91: POP
00001a92: SWAP3
00001a93: SWAP1
00001a94: POP
00001a95: JUMP
00001a96: JUMPDEST
00001a97: PUSH1 0x00
00001a99: DUP1
00001a9a: PUSH1 0x00
00001a9c: DUP1
00001a9d: PUSH1 0x60
00001a9f: DUP6
00001aa0: DUP8
00001aa1: SUB
00001aa2: SLT
00001aa3: ISZERO
00001aa4: PUSH2 0x1aac
00001aa7: JUMPI
00001aa8: PUSH1 0x00
00001aaa: DUP1
00001aab: REVERT
00001aac: JUMPDEST
00001aad: DUP5
00001aae: CALLDATALOAD
00001aaf: PUSH2 0x1ab7
00001ab2: DUP2
00001ab3: PUSH2 0x1836
00001ab6: JUMP
00001ab7: JUMPDEST
00001ab8: SWAP4
00001ab9: POP
00001aba: PUSH2 0x1ac5
00001abd: PUSH1 0x20
00001abf: DUP7
00001ac0: ADD
00001ac1: PUSH2 0x1781
00001ac4: JUMP
00001ac5: JUMPDEST
00001ac6: SWAP3
00001ac7: POP
00001ac8: PUSH1 0x40
00001aca: DUP6
00001acb: ADD
00001acc: CALLDATALOAD
00001acd: PUSH8 0xffffffffffffffff
00001ad6: DUP2
00001ad7: GT
00001ad8: ISZERO
00001ad9: PUSH2 0x1ae1
00001adc: JUMPI
00001add: PUSH1 0x00
00001adf: DUP1
00001ae0: REVERT
00001ae1: JUMPDEST
00001ae2: PUSH2 0x1aed
00001ae5: DUP8
00001ae6: DUP3
00001ae7: DUP9
00001ae8: ADD
00001ae9: PUSH2 0x179a
00001aec: JUMP
00001aed: JUMPDEST
00001aee: SWAP6
00001aef: SWAP9
00001af0: SWAP5
00001af1: SWAP8
00001af2: POP
00001af3: SWAP6
00001af4: POP
00001af5: POP
00001af6: POP
00001af7: POP
00001af8: JUMP
00001af9: JUMPDEST
00001afa: PUSH1 0x00
00001afc: JUMPDEST
00001afd: DUP4
00001afe: DUP2
00001aff: LT
00001b00: ISZERO
00001b01: PUSH2 0x1b14
00001b04: JUMPI
00001b05: DUP2
00001b06: DUP2
00001b07: ADD
00001b08: MLOAD
00001b09: DUP4
00001b0a: DUP3
00001b0b: ADD
00001b0c: MSTORE
00001b0d: PUSH1 0x20
00001b0f: ADD
00001b10: PUSH2 0x1afc
00001b13: JUMP
00001b14: JUMPDEST
00001b15: POP
00001b16: POP
00001b17: PUSH1 0x00
00001b19: SWAP2
00001b1a: ADD
00001b1b: MSTORE
00001b1c: JUMP
00001b1d: JUMPDEST
00001b1e: PUSH1 0x00
00001b20: DUP2
00001b21: MLOAD
00001b22: DUP1
00001b23: DUP5
00001b24: MSTORE
00001b25: PUSH2 0x1b35
00001b28: DUP2
00001b29: PUSH1 0x20
00001b2b: DUP7
00001b2c: ADD
00001b2d: PUSH1 0x20
00001b2f: DUP7
00001b30: ADD
00001b31: PUSH2 0x1af9
00001b34: JUMP
00001b35: JUMPDEST
00001b36: PUSH1 0x1f
00001b38: ADD
00001b39: PUSH1 0x1f
00001b3b: NOT
00001b3c: AND
00001b3d: SWAP3
00001b3e: SWAP1
00001b3f: SWAP3
00001b40: ADD
00001b41: PUSH1 0x20
00001b43: ADD
00001b44: SWAP3
00001b45: SWAP2
00001b46: POP
00001b47: POP
00001b48: JUMP
00001b49: JUMPDEST
00001b4a: PUSH1 0x00
00001b4c: PUSH2 0x0100
00001b4f: PUSH1 0x01
00001b51: PUSH1 0x01
00001b53: PUSH1 0xa0
00001b55: SHL
00001b56: SUB
00001b57: DUP1
00001b58: DUP13
00001b59: AND
00001b5a: DUP5
00001b5b: MSTORE
00001b5c: DUP1
00001b5d: DUP12
00001b5e: AND
00001b5f: PUSH1 0x20
00001b61: DUP6
00001b62: ADD
00001b63: MSTORE
00001b64: DUP1
00001b65: DUP11
00001b66: AND
00001b67: PUSH1 0x40
00001b69: DUP6
00001b6a: ADD
00001b6b: MSTORE
00001b6c: DUP1
00001b6d: DUP10
00001b6e: AND
00001b6f: PUSH1 0x60
00001b71: DUP6
00001b72: ADD
00001b73: MSTORE
00001b74: POP
00001b75: DUP7
00001b76: PUSH1 0x80
00001b78: DUP5
00001b79: ADD
00001b7a: MSTORE
00001b7b: PUSH1 0xff
00001b7d: DUP7
00001b7e: AND
00001b7f: PUSH1 0xa0
00001b81: DUP5
00001b82: ADD
00001b83: MSTORE
00001b84: PUSH4 0xffffffff
00001b89: DUP6
00001b8a: AND
00001b8b: PUSH1 0xc0
00001b8d: DUP5
00001b8e: ADD
00001b8f: MSTORE
00001b90: DUP1
00001b91: PUSH1 0xe0
00001b93: DUP5
00001b94: ADD
00001b95: MSTORE
00001b96: PUSH2 0x1ba1
00001b99: DUP2
00001b9a: DUP5
00001b9b: ADD
00001b9c: DUP6
00001b9d: PUSH2 0x1b1d
00001ba0: JUMP
00001ba1: JUMPDEST
00001ba2: SWAP12
00001ba3: SWAP11
00001ba4: POP
00001ba5: POP
00001ba6: POP
00001ba7: POP
00001ba8: POP
00001ba9: POP
00001baa: POP
00001bab: POP
00001bac: POP
00001bad: POP
00001bae: POP
00001baf: JUMP
00001bb0: JUMPDEST
00001bb1: DUP4
00001bb2: DUP2
00001bb3: MSTORE
00001bb4: PUSH4 0xffffffff
00001bb9: DUP4
00001bba: AND
00001bbb: PUSH1 0x20
00001bbd: DUP3
00001bbe: ADD
00001bbf: MSTORE
00001bc0: PUSH1 0x60
00001bc2: PUSH1 0x40
00001bc4: DUP3
00001bc5: ADD
00001bc6: MSTORE
00001bc7: PUSH1 0x00
00001bc9: PUSH2 0x1bd5
00001bcc: PUSH1 0x60
00001bce: DUP4
00001bcf: ADD
00001bd0: DUP5
00001bd1: PUSH2 0x1b1d
00001bd4: JUMP
00001bd5: JUMPDEST
00001bd6: SWAP6
00001bd7: SWAP5
00001bd8: POP
00001bd9: POP
00001bda: POP
00001bdb: POP
00001bdc: POP
00001bdd: JUMP
00001bde: JUMPDEST
00001bdf: PUSH1 0x00
00001be1: PUSH1 0x20
00001be3: DUP3
00001be4: DUP5
00001be5: SUB
00001be6: SLT
00001be7: ISZERO
00001be8: PUSH2 0x1bf0
00001beb: JUMPI
00001bec: PUSH1 0x00
00001bee: DUP1
00001bef: REVERT
00001bf0: JUMPDEST
00001bf1: DUP2
00001bf2: MLOAD
00001bf3: PUSH2 0x1bfb
00001bf6: DUP2
00001bf7: PUSH2 0x1836
00001bfa: JUMP
00001bfb: JUMPDEST
00001bfc: SWAP4
00001bfd: SWAP3
00001bfe: POP
00001bff: POP
00001c00: POP
00001c01: JUMP
00001c02: JUMPDEST
00001c03: PUSH1 0x00
00001c05: DUP3
00001c06: MLOAD
00001c07: PUSH2 0x1c14
00001c0a: DUP2
00001c0b: DUP5
00001c0c: PUSH1 0x20
00001c0e: DUP8
00001c0f: ADD
00001c10: PUSH2 0x1af9
00001c13: JUMP
00001c14: JUMPDEST
00001c15: SWAP2
00001c16: SWAP1
00001c17: SWAP2
00001c18: ADD
00001c19: SWAP3
00001c1a: SWAP2
00001c1b: POP
00001c1c: POP
00001c1d: JUMP
00001c1e: JUMPDEST
00001c1f: DUP2
00001c20: DUP4
00001c21: MSTORE
00001c22: DUP2
00001c23: DUP2
00001c24: PUSH1 0x20
00001c26: DUP6
00001c27: ADD
00001c28: CALLDATACOPY
00001c29: POP
00001c2a: PUSH1 0x00
00001c2c: PUSH1 0x20
00001c2e: DUP3
00001c2f: DUP5
00001c30: ADD
00001c31: ADD
00001c32: MSTORE
00001c33: PUSH1 0x00
00001c35: PUSH1 0x20
00001c37: PUSH1 0x1f
00001c39: NOT
00001c3a: PUSH1 0x1f
00001c3c: DUP5
00001c3d: ADD
00001c3e: AND
00001c3f: DUP5
00001c40: ADD
00001c41: ADD
00001c42: SWAP1
00001c43: POP
00001c44: SWAP3
00001c45: SWAP2
00001c46: POP
00001c47: POP
00001c48: JUMP
00001c49: JUMPDEST
00001c4a: DUP5
00001c4b: DUP2
00001c4c: MSTORE
00001c4d: PUSH4 0xffffffff
00001c52: DUP5
00001c53: AND
00001c54: PUSH1 0x20
00001c56: DUP3
00001c57: ADD
00001c58: MSTORE
00001c59: PUSH1 0x60
00001c5b: PUSH1 0x40
00001c5d: DUP3
00001c5e: ADD
00001c5f: MSTORE
00001c60: PUSH1 0x00
00001c62: PUSH2 0x1c6f
00001c65: PUSH1 0x60
00001c67: DUP4
00001c68: ADD
00001c69: DUP5
00001c6a: DUP7
00001c6b: PUSH2 0x1c1e
00001c6e: JUMP
00001c6f: JUMPDEST
00001c70: SWAP7
00001c71: SWAP6
00001c72: POP
00001c73: POP
00001c74: POP
00001c75: POP
00001c76: POP
00001c77: POP
00001c78: JUMP
00001c79: JUMPDEST
00001c7a: PUSH1 0x00
00001c7c: PUSH2 0x0100
00001c7f: PUSH1 0x01
00001c81: PUSH1 0x01
00001c83: PUSH1 0xa0
00001c85: SHL
00001c86: SUB
00001c87: DUP1
00001c88: DUP14
00001c89: AND
00001c8a: DUP5
00001c8b: MSTORE
00001c8c: DUP1
00001c8d: DUP13
00001c8e: AND
00001c8f: PUSH1 0x20
00001c91: DUP6
00001c92: ADD
00001c93: MSTORE
00001c94: DUP1
00001c95: DUP12
00001c96: AND
00001c97: PUSH1 0x40
00001c99: DUP6
00001c9a: ADD
00001c9b: MSTORE
00001c9c: DUP1
00001c9d: DUP11
00001c9e: AND
00001c9f: PUSH1 0x60
00001ca1: DUP6
00001ca2: ADD
00001ca3: MSTORE
00001ca4: POP
00001ca5: DUP8
00001ca6: PUSH1 0x80
00001ca8: DUP5
00001ca9: ADD
00001caa: MSTORE
00001cab: PUSH1 0xff
00001cad: DUP8
00001cae: AND
00001caf: PUSH1 0xa0
00001cb1: DUP5
00001cb2: ADD
00001cb3: MSTORE
00001cb4: PUSH4 0xffffffff
00001cb9: DUP7
00001cba: AND
00001cbb: PUSH1 0xc0
00001cbd: DUP5
00001cbe: ADD
00001cbf: MSTORE
00001cc0: DUP1
00001cc1: PUSH1 0xe0
00001cc3: DUP5
00001cc4: ADD
00001cc5: MSTORE
00001cc6: PUSH2 0x1cd2
00001cc9: DUP2
00001cca: DUP5
00001ccb: ADD
00001ccc: DUP6
00001ccd: DUP8
00001cce: PUSH2 0x1c1e
00001cd1: JUMP
00001cd2: JUMPDEST
00001cd3: SWAP13
00001cd4: SWAP12
00001cd5: POP
00001cd6: POP
00001cd7: POP
00001cd8: POP
00001cd9: POP
00001cda: POP
00001cdb: POP
00001cdc: POP
00001cdd: POP
00001cde: POP
00001cdf: POP
00001ce0: POP
00001ce1: JUMP
00001ce2: JUMPDEST
00001ce3: PUSH1 0x01
00001ce5: PUSH1 0x01
00001ce7: PUSH1 0xa0
00001ce9: SHL
00001cea: SUB
00001ceb: DUP8
00001cec: AND
00001ced: DUP2
00001cee: MSTORE
00001cef: DUP6
00001cf0: PUSH1 0x20
00001cf2: DUP3
00001cf3: ADD
00001cf4: MSTORE
00001cf5: DUP5
00001cf6: PUSH1 0x40
00001cf8: DUP3
00001cf9: ADD
00001cfa: MSTORE
00001cfb: PUSH4 0xffffffff
00001d00: DUP5
00001d01: AND
00001d02: PUSH1 0x60
00001d04: DUP3
00001d05: ADD
00001d06: MSTORE
00001d07: PUSH1 0xa0
00001d09: PUSH1 0x80
00001d0b: DUP3
00001d0c: ADD
00001d0d: MSTORE
00001d0e: PUSH1 0x00
00001d10: PUSH2 0x1d1d
00001d13: PUSH1 0xa0
00001d15: DUP4
00001d16: ADD
00001d17: DUP5
00001d18: DUP7
00001d19: PUSH2 0x1c1e
00001d1c: JUMP
00001d1d: JUMPDEST
00001d1e: SWAP9
00001d1f: SWAP8
00001d20: POP
00001d21: POP
00001d22: POP
00001d23: POP
00001d24: POP
00001d25: POP
00001d26: POP
00001d27: POP
00001d28: JUMP
00001d29: JUMPDEST
00001d2a: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001d4b: PUSH1 0x00
00001d4d: MSTORE
00001d4e: PUSH1 0x11
00001d50: PUSH1 0x04
00001d52: MSTORE
00001d53: PUSH1 0x24
00001d55: PUSH1 0x00
00001d57: REVERT
00001d58: JUMPDEST
00001d59: DUP2
00001d5a: DUP2
00001d5b: SUB
00001d5c: DUP2
00001d5d: DUP2
00001d5e: GT
00001d5f: ISZERO
00001d60: PUSH2 0x12d2
00001d63: JUMPI
00001d64: PUSH2 0x12d2
00001d67: PUSH2 0x1d29
00001d6a: JUMP
00001d6b: JUMPDEST
00001d6c: PUSH1 0x00
00001d6e: PUSH2 0x0100
00001d71: PUSH1 0x01
00001d73: PUSH1 0x01
00001d75: PUSH1 0xa0
00001d77: SHL
00001d78: SUB
00001d79: DUP1
00001d7a: DUP14
00001d7b: AND
00001d7c: DUP5
00001d7d: MSTORE
00001d7e: DUP1
00001d7f: DUP13
00001d80: AND
00001d81: PUSH1 0x20
00001d83: DUP6
00001d84: ADD
00001d85: MSTORE
00001d86: DUP1
00001d87: DUP12
00001d88: AND
00001d89: PUSH1 0x40
00001d8b: DUP6
00001d8c: ADD
00001d8d: MSTORE
00001d8e: DUP1
00001d8f: DUP11
00001d90: AND
00001d91: PUSH1 0x60
00001d93: DUP6
00001d94: ADD
00001d95: MSTORE
00001d96: POP
00001d97: DUP8
00001d98: PUSH1 0x80
00001d9a: DUP5
00001d9b: ADD
00001d9c: MSTORE
00001d9d: DUP7
00001d9e: PUSH1 0xa0
00001da0: DUP5
00001da1: ADD
00001da2: MSTORE
00001da3: PUSH4 0xffffffff
00001da8: DUP7
00001da9: AND
00001daa: PUSH1 0xc0
00001dac: DUP5
00001dad: ADD
00001dae: MSTORE
00001daf: DUP1
00001db0: PUSH1 0xe0
00001db2: DUP5
00001db3: ADD
00001db4: MSTORE
00001db5: PUSH2 0x1cd2
00001db8: DUP2
00001db9: DUP5
00001dba: ADD
00001dbb: DUP6
00001dbc: DUP8
00001dbd: PUSH2 0x1c1e
00001dc0: JUMP
00001dc1: JUMPDEST
00001dc2: PUSH1 0x01
00001dc4: PUSH1 0x01
00001dc6: PUSH1 0xa0
00001dc8: SHL
00001dc9: SUB
00001dca: DUP5
00001dcb: AND
00001dcc: DUP2
00001dcd: MSTORE
00001dce: PUSH1 0x60
00001dd0: PUSH1 0x20
00001dd2: DUP3
00001dd3: ADD
00001dd4: MSTORE
00001dd5: PUSH1 0x00
00001dd7: PUSH2 0x1de3
00001dda: PUSH1 0x60
00001ddc: DUP4
00001ddd: ADD
00001dde: DUP6
00001ddf: PUSH2 0x1b1d
00001de2: JUMP
00001de3: JUMPDEST
00001de4: SWAP1
00001de5: POP
00001de6: PUSH4 0xffffffff
00001deb: DUP4
00001dec: AND
00001ded: PUSH1 0x40
00001def: DUP4
00001df0: ADD
00001df1: MSTORE
00001df2: SWAP5
00001df3: SWAP4
00001df4: POP
00001df5: POP
00001df6: POP
00001df7: POP
00001df8: JUMP
00001df9: JUMPDEST
00001dfa: DUP1
00001dfb: DUP3
00001dfc: ADD
00001dfd: DUP1
00001dfe: DUP3
00001dff: GT
00001e00: ISZERO
00001e01: PUSH2 0x12d2
00001e04: JUMPI
00001e05: PUSH2 0x12d2
00001e08: PUSH2 0x1d29
00001e0b: JUMP
00001e0c: JUMPDEST
00001e0d: PUSH1 0x00
00001e0f: PUSH1 0x20
00001e11: DUP3
00001e12: DUP5
00001e13: SUB
00001e14: SLT
00001e15: ISZERO
00001e16: PUSH2 0x1e1e
00001e19: JUMPI
00001e1a: PUSH1 0x00
00001e1c: DUP1
00001e1d: REVERT
00001e1e: JUMPDEST
00001e1f: DUP2
00001e20: MLOAD
00001e21: DUP1
00001e22: ISZERO
00001e23: ISZERO
00001e24: DUP2
00001e25: EQ
00001e26: PUSH2 0x1bfb
00001e29: JUMPI
00001e2a: PUSH1 0x00
00001e2c: DUP1
00001e2d: REVERT
00001e2e: JUMPDEST
00001e2f: PUSH1 0x20
00001e31: DUP2
00001e32: MSTORE
00001e33: PUSH1 0x00
00001e35: PUSH2 0x12cf
00001e38: PUSH1 0x20
00001e3a: DUP4
00001e3b: ADD
00001e3c: DUP5
00001e3d: PUSH2 0x1b1d
00001e40: JUMP
00001e41: INVALID
00001e42: LOG2
00001e43: PUSH5 0x6970667358
00001e49: UNKNOWN(0x22)
00001e4a: SLT
00001e4b: KECCAK256
00001e4c: SWAP9
00001e4d: SWAP4
00001e4e: UNKNOWN(0xBA)
00001e4f: OR
00001e50: ADD
00001e51: UNKNOWN(0xE6)
00001e52: SMOD
00001e53: UNKNOWN(0xBA)
00001e54: CALL
00001e55: SWAP3
00001e56: PUSH0
00001e57: CALLCODE
00001e58: UNKNOWN(0xFC)
00001e59: REVERT
00001e5a: JUMPDEST
00001e5b: UNKNOWN(0x28)
00001e5c: KECCAK256
00001e5d: UNKNOWN(0x4D)
00001e5e: CLZ
00001e5f: CALLDATASIZE
00001e60: STOP
00001e61: UNKNOWN(0x1F)
00001e62: PUSH1 0xfa
00001e64: UNKNOWN(0x0F)
00001e65: JUMPDEST
00001e66: UNKNOWN(0xAF)
00001e67: SMOD
00001e68: DUP9
00001e69: SWAP3
00001e6a: UNKNOWN(0xD3)
00001e6b: PUSH2 0x6473
00001e6e: PUSH16

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability codex Unprotected initialize enables attacker-controlled messenger and bridge takeover 90 no
view
evidence_json
{
    "evidence": "initialize() is public and only checks messenger == address(0), allowing anyone to set messenger/remoteTokenBridge (lines 53-62). finalizeETHBridge and finalizeERC20Bridge transfer ETH/ERC20 based solely on onlyFromCrossDomainAccount, which becomes attacker-controlled once initialize is hijacked (lines 270-345).",
    "locations": [
        "contracts/contracts/BL/messaging/BLStandardBridge.sol:53",
        "contracts/contracts/BL/messaging/BLStandardBridge.sol:270",
        "contracts/contracts/BL/messaging/BLStandardBridge.sol:308"
    ],
    "recommendation": "Restrict initialize to a trusted deployer (e.g., onlyOwner/onlyProxyAdmin) or use an initializer pattern that is invoked atomically during proxy deployment; consider disabling initialize on the implementation contract.",
    "exploit_scenario": "1) After the proxy is deployed but before the legitimate initializer runs, attacker calls initialize() to set messenger to an attacker-controlled contract and remoteTokenBridge to an attacker-controlled address. 2) Attacker\u2019s messenger contract calls finalizeETHBridge(...) with _to=attacker and _amount=bridge ETH balance; the onlyFromCrossDomainAccount check passes because msg.sender is the attacker\u2019s messenger and xDomainMessageSender() returns the attacker-set remoteTokenBridge. 3) Repeat via finalizeERC20Bridge(...) for each locked token pair, draining up to locks[_localToken][_remoteToken] to the attacker. Profit is the entire ETH balance plus all escrowed ERC20 balances held by the bridge."
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x34d6d9dbc2523e656db067c13055c61e4679ad2805197b597946d9e88c302cdf
call_targets: 0xa037b01bf218e87144446e9e87dd9dc58033fb57
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x34d6d9dbc2523e656db067c13055c61e4679ad2805197b597946d9e88c302cdf",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xa037b01bf218e87144446e9e87dd9dc58033fb57"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xd191bcf9",
            "selector": "0xd191bcf9",
            "calldata_variants": [
                "0xd191bcf9",
                "0xd191bcf90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe11013dd",
            "selector": "0xe11013dd",
            "calldata_variants": [
                "0xe11013dd",
                "0xe11013dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9518196",
            "selector": "0xe9518196",
            "calldata_variants": [
                "0xe9518196",
                "0xe95181960000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8b4c40b0",
            "selector": "0x8b4c40b0",
            "calldata_variants": [
                "0x8b4c40b0",
                "0x8b4c40b00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8d265f10",
            "selector": "0x8d265f10",
            "calldata_variants": [
                "0x8d265f10",
                "0x8d265f100000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc05f6155",
            "selector": "0xc05f6155",
            "calldata_variants": [
                "0xc05f6155",
                "0xc05f61550000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x540abf73",
            "selector": "0x540abf73",
            "calldata_variants": [
                "0x540abf73",
                "0x540abf730000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x87087623",
            "selector": "0x87087623",
            "calldata_variants": [
                "0x87087623",
                "0x870876230000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1908,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2854,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2982,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 11,
    "guards_detected": [],
    "untrusted_call_count": 11
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x34d6d9dbc2523e656db067c13055c61e4679ad2805197b597946d9e88c302cdf
call_targets: 0xa037b01bf218e87144446e9e87dd9dc58033fb57
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x34d6d9dbc2523e656db067c13055c61e4679ad2805197b597946d9e88c302cdf",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xa037b01bf218e87144446e9e87dd9dc58033fb57"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xd191bcf9",
            "selector": "0xd191bcf9",
            "calldata_variants": [
                "0xd191bcf9",
                "0xd191bcf90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe11013dd",
            "selector": "0xe11013dd",
            "calldata_variants": [
                "0xe11013dd",
                "0xe11013dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9518196",
            "selector": "0xe9518196",
            "calldata_variants": [
                "0xe9518196",
                "0xe95181960000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8b4c40b0",
            "selector": "0x8b4c40b0",
            "calldata_variants": [
                "0x8b4c40b0",
                "0x8b4c40b00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8d265f10",
            "selector": "0x8d265f10",
            "calldata_variants": [
                "0x8d265f10",
                "0x8d265f100000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc05f6155",
            "selector": "0xc05f6155",
            "calldata_variants": [
                "0xc05f6155",
                "0xc05f61550000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x540abf73",
            "selector": "0x540abf73",
            "calldata_variants": [
                "0x540abf73",
                "0x540abf730000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x87087623",
            "selector": "0x87087623",
            "calldata_variants": [
                "0x87087623",
                "0x870876230000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1908,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2854,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2982,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 11,
    "guards_detected": []
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 7
}
info other cast Heavy CALL-family usage 55 no
view
evidence_json
{
    "notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
    "call_family_count": 14
}