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

Analysis Run

8c5b2b5d-90da-42b1-a8ff-785f9a741c38

complete
Chain ID
1
Address
Block Number
Created
Wed, Dec 31, 2025 7:49 PM
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
Untrusted DELEGATECALL target reachable
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
30902 report.consolidate complete 1 / 1 3 months ago
94423 artifact.fetch complete 1 / 3 1 week ago
94424 tool.cast_disasm complete 1 / 3 1 week ago
94425 analysis.bundle complete 1 / 3 1 week ago
94426 capability.graph complete 1 / 3 1 week ago
94427 detector.run complete 1 / 3 1 week ago
94428 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
Redeem is reentrancy-unsafe during per-asset transfers, enabling double-withdrawal of later tokens in the list when a hook-enabled asset is transferred first.
View stderr
[codex:1188426] OpenAI Codex v0.77.0 (research preview)
[codex:1188426] --------
[codex:1188426] workdir: /tmp/codex-multi-1i439pvs
[codex:1188426] model: gpt-5.2-codex
[codex:1188426] provider: openai
[codex:1188426] approval: never
[codex:1188426] sandbox: read-only
[codex:1188426] reasoning effort: xhigh
[codex:1188426] reasoning summaries: auto
[codex:1188426] session id: 019b75f0-3bae-7071-b1f2-8b7508437b22
[codex:1188426] --------
[codex:1188426] user
[codex:1188426] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1188426] 
[codex:1188426] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1188426] 
[codex:1188426] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1188426] - Gas inefficiency, code quality, naming, or best practices
[codex:1188426] - Theoretical vulnerabilities without a clear extraction path
[codex:1188426] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1188426] - Front-running unless it enables theft beyond MEV
[codex:1188426] - DoS, griefing, or issues that don't result in attacker profit
[codex:1188426] - Missing events, view function issues, or informational findings
[codex:1188426] 
[codex:1188426] HIGH-VALUE PATTERNS TO HUNT:
[codex:1188426] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1188426] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1188426] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1188426] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1188426] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1188426] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1188426] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1188426] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1188426] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1188426] 
[codex:1188426] For each finding, you MUST provide:
[codex:1188426] 1. Exact file and line numbers of vulnerable code
[codex:1188426] 2. Step-by-step exploit transaction sequence
[codex:1188426] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1188426] 
[codex:1188426] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1188426] 
[codex:1188426] Output MUST be valid JSON matching the provided schema.
[codex:1188426] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1188426] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1188426] mcp startup: no servers
[codex:1188426] 
[codex:1188426] thinking
[codex:1188426] **Preparing to read audit instructions**
[codex:1188426] exec
[codex:1188426] /bin/bash -lc ls in /tmp/codex-multi-1i439pvs succeeded in 5ms:
[codex:1188426] AUDIT_BUNDLE.txt
[codex:1188426] codex-output-schema.json
[codex:1188426] contracts
[codex:1188426] 
[codex:1188426] thinking
[codex:1188426] **Reading AUDIT_BUNDLE.txt**
[codex:1188426] exec
[codex:1188426] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-1i439pvs succeeded in 5ms:
[codex:1188426] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1188426] 
[codex:1188426] ================================================================================
[codex:1188426] FILE: contracts/src/LRTSquared/LRTSquaredCore.sol
[codex:1188426] ================================================================================
[codex:1188426] // SPDX-License-Identifier: MIT
[codex:1188426] pragma solidity ^0.8.25;
[codex:1188426] 
[codex:1188426] import {LRTSquaredStorage, SafeERC20, IERC20, Math, BucketLimiter, IPriceProvider} from "./LRTSquaredStorage.sol";
[codex:1188426] 
[codex:1188426] contract LRTSquaredCore is LRTSquaredStorage {
[codex:1188426]     using BucketLimiter for BucketLimiter.Limit;
[codex:1188426]     using SafeERC20 for IERC20;
[codex:1188426]     using Math for uint256;
[codex:1188426] 
[codex:1188426]     function getRateLimit() external view returns (RateLimit memory) {
[codex:1188426]         RateLimit memory _rateLimit = rateLimit;
[codex:1188426]         _rateLimit.limit.getCurrent();
[codex:1188426]         return _rateLimit;
[codex:1188426]     }
[codex:1188426] 
[codex:1188426] thinking
[codex:1188426] **Evaluating potential exploits in vault contract**
[codex:1188426] exec
[codex:1188426] /bin/bash -lc 'rg --files contracts' in /tmp/codex-multi-1i439pvs succeeded in 10ms:
[codex:1188426] contracts/src/interfaces/ISwapper.sol
[codex:1188426] contracts/src/interfaces/IPriceProvider.sol
[codex:1188426] contracts/src/governance/Governable.sol
[codex:1188426] contracts/src/LRTSquared/LRTSquaredStorage.sol
[codex:1188426] contracts/src/LRTSquared/LRTSquaredCore.sol
[codex:1188426] contracts/src/libraries/BucketLimiter.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol
[codex:1188426] contracts/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol
[codex:1188426] contracts/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/utils/Strings.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol
[codex:1188426] contracts/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/ERC20Upgradeable.sol
[codex:1188426] contracts/lib/openzeppelin-contracts/contracts/utils/Address.sol
[codex:1188426] 
[codex:1188426] 
[codex:1188426] 
[codex:1188426] thinking
[codex:1188426] **Evaluating potential vault exploits**
[codex:1188426] thinking
[codex:1188426] **Analyzing detailed vault mechanics and reentrancy risks**
[codex:1188426] 
[codex:1188426] There is a lot here! I'm investigating subtleties in rate limiting during initial deposits, token whitelist versus registration checks, and the complex interplay of upgradeability patterns with fallback delegatecalls. I'm also focusing on potential reentrancy during redeem, especially with multi-token transfers and ERC777 hooks, to see if partial token transfers and share burns could be exploited for double withdrawals or asset inflation. The rounding and arithmetic seem typical, and most access controls are intact, but the multi-step transfer with reentrant calls definitely warrants close attention to confirm safety or spot a subtle vulnerability.
[codex:1188426] thinking
[codex:1188426] **Identifying cross-token reentrancy vulnerability in redeem**
[codex:1188426] 
[codex:1188426] I’m closely examining how sequential token transfers in redeem allow reentrancy, letting an attacker withdraw more of some tokens than their share permits by exploiting partial balance updates mid-redeem. This classic multi-asset vault vulnerability hinges on tokens with transfer hooks (like ERC777) triggering reentrant calls during asset transfers. If such a token is whitelisted, an attacker holding shares can repeatedly redeem within a single transaction to extract disproportionate amounts, effectively profiting at other holders’ expense. This appears to be a concrete exploit path worth highlighting.
[codex:1188426] exec
[codex:1188426] /bin/bash -lc "nl -ba contracts/src/LRTSquared/LRTSquaredCore.sol | sed -n '1,220p'" in /tmp/codex-multi-1i439pvs succeeded in 7ms:
[codex:1188426]      1	// SPDX-License-Identifier: MIT
[codex:1188426]      2	pragma solidity ^0.8.25;
[codex:1188426]      3	
[codex:1188426]      4	import {LRTSquaredStorage, SafeERC20, IERC20, Math, BucketLimiter, IPriceProvider} from "./LRTSquaredStorage.sol";
[codex:1188426]      5	
[codex:1188426]      6	contract LRTSquaredCore is LRTSquaredStorage {
[codex:1188426]      7	    using BucketLimiter for BucketLimiter.Limit;
[codex:1188426]      8	    using SafeERC20 for IERC20;
[codex:1188426]      9	    using Math for uint256;
[codex:1188426]     10	
[codex:1188426]     11	    function getRateLimit() external view returns (RateLimit memory) {
[codex:1188426]     12	        RateLimit memory _rateLimit = rateLimit;
[codex:1188426]     13	        _rateLimit.limit.getCurrent();
[codex:1188426]     14	        return _rateLimit;
[codex:1188426]     15	    }
[codex:1188426]     16	
[codex:1188426]     17	    /// @notice Deposit rewards to the contract and mint share tokens to the recipient.
[codex:1188426]     18	    /// @param _tokens addresses of ERC20 tokens to deposit
[codex:1188426]     19	    /// @param _amounts amounts of tokens to deposit
[codex:1188426]     20	    /// @param _receiver recipient of the minted share token
[codex:1188426] 
[codex:1188426] 
[codex:1188426] thinking
[codex:1188426] **Analyzing multi-token redeem reentrancy**
[codex:1188426] thinking
[codex:1188426] **Detailing redeem reentrancy impact**
[codex:1188426] 
[codex:1188426] I'll carefully outline the reentrancy attack steps during multi-token redeem, showing how reentrant calls double-withdraw later tokens when an early token in the list triggers a callback. I'll also confirm the profit potential depends on token order, with significant extraction possible if the reentrant token comes before others. Next, I'll prepare the required JSON report with the severity, evidence, locations, and recommendations.
[codex:1188426] codex
[codex:1188426] {"no_findings":false,"summary":"Redeem is reentrancy-unsafe during per-asset transfers, enabling double-withdrawal of later tokens in the list when a hook-enabled asset is transferred first.","findings":[{"severity":"high","category":"reentrancy","title":"Reentrant redeem can double-withdraw later assets in multi-token vault","exploit_scenario":"1) Attacker acquires vault shares and uses a contract that can reenter (e.g., ERC777 `tokensReceived`). 2) Ensure at least one vault token is hook-enabled (ERC777/ERC223/malicious ERC20) and appears before another token in `tokens`. 3) Call `redeem(r1)`; after `_burn`, the vault transfers the first token. 4) During that transfer, reenter `redeem(r2)` for remaining shares; `assetAmounts` are computed against balances that still include the later token amounts owed to the first redeem. 5) The reentrant call withdraws inflated amounts of later tokens, and the original redeem then transfers its precomputed later-token amounts, resulting in double-withdrawal of those later tokens.","recommendation":"Add a reentrancy guard to `redeem` (and any other functions that transfer out assets) or switch to a pull/escrow pattern where claimable amounts are stored before any external token transfers. This prevents reentrant calls from using stale per-asset balances.","evidence":"`redeem` calculates `assetAmounts` once, burns shares, then transfers each asset in a loop without a reentrancy guard, so later-token balances still include amounts owed to the first redemption during reentrant calls.","locations":["`contracts/src/LRTSquared/LRTSquaredCore.sol:56`","`contracts/src/LRTSquared/LRTSquaredCore.sol:60`","`contracts/src/LRTSquared/LRTSquaredCore.sol:64`"]}]}
[codex:1188426] tokens used
[codex:1188426] 32,014
[codex:1188426] {"no_findings":false,"summary":"Redeem is reentrancy-unsafe during per-asset transfers, enabling double-withdrawal of later tokens in the list when a hook-enabled asset is transferred first.","findings":[{"severity":"high","category":"reentrancy","title":"Reentrant redeem can double-withdraw later assets in multi-token vault","exploit_scenario":"1) Attacker acquires vault shares and uses a contract that can reenter (e.g., ERC777 `tokensReceived`). 2) Ensure at least one vault token is hook-enabled (ERC777/ERC223/malicious ERC20) and appears before another token in `tokens`. 3) Call `redeem(r1)`; after `_burn`, the vault transfers the first token. 4) During that transfer, reenter `redeem(r2)` for remaining shares; `assetAmounts` are computed against balances that still include the later token amounts owed to the first redeem. 5) The reentrant call withdraws inflated amounts of later tokens, and the original redeem then transfers its precomputed later-token amounts, resulting in double-withdrawal of those later tokens.","recommendation":"Add a reentrancy guard to `redeem` (and any other functions that transfer out assets) or switch to a pull/escrow pattern where claimable amounts are stored before any external token transfers. This prevents reentrant calls from using stale per-asset balances.","evidence":"`redeem` calculates `assetAmounts` once, burns shares, then transfers each asset in a loop without a reentrancy guard, so later-token balances still include amounts owed to the first redemption during reentrant calls.","locations":["`contracts/src/LRTSquared/LRTSquaredCore.sol:56`","`contracts/src/LRTSquared/LRTSquaredCore.sol:60`","`contracts/src/LRTSquared/LRTSquaredCore.sol:64`"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-31T19:49:29.784871+00:00",
        "returncode": 0
    },
    "summary": "Redeem is reentrancy-unsafe during per-asset transfers, enabling double-withdrawal of later tokens in the list when a hook-enabled asset is transferred first.",
    "raw_final": {
        "summary": "Redeem is reentrancy-unsafe during per-asset transfers, enabling double-withdrawal of later tokens in the list when a hook-enabled asset is transferred first.",
        "findings": [
            {
                "title": "Reentrant redeem can double-withdraw later assets in multi-token vault",
                "category": "reentrancy",
                "evidence": "`redeem` calculates `assetAmounts` once, burns shares, then transfers each asset in a loop without a reentrancy guard, so later-token balances still include amounts owed to the first redemption during reentrant calls.",
                "severity": "high",
                "locations": [
                    "`contracts/src/LRTSquared/LRTSquaredCore.sol:56`",
                    "`contracts/src/LRTSquared/LRTSquaredCore.sol:60`",
                    "`contracts/src/LRTSquared/LRTSquaredCore.sol:64`"
                ],
                "recommendation": "Add a reentrancy guard to `redeem` (and any other functions that transfer out assets) or switch to a pull/escrow pattern where claimable amounts are stored before any external token transfers. This prevents reentrant calls from using stale per-asset balances.",
                "exploit_scenario": "1) Attacker acquires vault shares and uses a contract that can reenter (e.g., ERC777 `tokensReceived`). 2) Ensure at least one vault token is hook-enabled (ERC777/ERC223/malicious ERC20) and appears before another token in `tokens`. 3) Call `redeem(r1)`; after `_burn`, the vault transfers the first token. 4) During that transfer, reenter `redeem(r2)` for remaining shares; `assetAmounts` are computed against balances that still include the later token amounts owed to the first redeem. 5) The reentrant call withdraws inflated amounts of later tokens, and the original redeem then transfers its precomputed later-token amounts, resulting in double-withdrawal of those later tokens."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
2
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
14
EXT*/BALANCE
3
Total opcodes
8781
Flags
delegatecall_present call_family_heavy
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: ISZERO
0000000a: PUSH2 0x0019
0000000d: JUMPI
0000000e: JUMPDEST
0000000f: CALLVALUE
00000010: ISZERO
00000011: PUSH2 0x343c
00000014: JUMPI
00000015: JUMPDEST
00000016: PUSH0
00000017: DUP1
00000018: REVERT
00000019: JUMPDEST
0000001a: PUSH0
0000001b: CALLDATALOAD
0000001c: PUSH1 0xe0
0000001e: SHR
0000001f: DUP1
00000020: PUSH4 0x01d22ccd
00000025: EQ
00000026: PUSH2 0x03d8
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x01e1d114
00000030: EQ
00000031: PUSH2 0x03d3
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x06fdde03
0000003b: EQ
0000003c: PUSH2 0x03ce
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x095ea7b3
00000046: EQ
00000047: PUSH2 0x03c9
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x0a1289ad
00000051: EQ
00000052: PUSH2 0x03c4
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x0a154161
0000005c: EQ
0000005d: PUSH2 0x03bf
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x0c340a24
00000067: EQ
00000068: PUSH2 0x03ba
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0x17d949fe
00000072: EQ
00000073: PUSH2 0x03b5
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0x18160ddd
0000007d: EQ
0000007e: PUSH2 0x03b0
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0x1bacc406
00000088: EQ
00000089: PUSH2 0x03ab
0000008c: JUMPI
0000008d: DUP1
0000008e: PUSH4 0x23b872dd
00000093: EQ
00000094: PUSH2 0x03a6
00000097: JUMPI
00000098: DUP1
00000099: PUSH4 0x26aa101f
0000009e: EQ
0000009f: PUSH2 0x03a1
000000a2: JUMPI
000000a3: DUP1
000000a4: PUSH4 0x29272ff6
000000a9: EQ
000000aa: PUSH2 0x039c
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0x2b3297f9
000000b4: EQ
000000b5: PUSH2 0x0397
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0x2c62fa10
000000bf: EQ
000000c0: PUSH2 0x0392
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0x313ce567
000000ca: EQ
000000cb: PUSH2 0x038d
000000ce: JUMPI
000000cf: DUP1
000000d0: PUSH4 0x3644e515
000000d5: EQ
000000d6: PUSH2 0x0388
000000d9: JUMPI
000000da: DUP1
000000db: PUSH4 0x387e971c
000000e0: EQ
000000e1: PUSH2 0x0383
000000e4: JUMPI
000000e5: DUP1
000000e6: PUSH4 0x3995c06f
000000eb: EQ
000000ec: PUSH2 0x037e
000000ef: JUMPI
000000f0: DUP1
000000f1: PUSH4 0x43998bdd
000000f6: EQ
000000f7: PUSH2 0x0379
000000fa: JUMPI
000000fb: DUP1
000000fc: PUSH4 0x4cdad506
00000101: EQ
00000102: PUSH2 0x0374
00000105: JUMPI
00000106: DUP1
00000107: PUSH4 0x4f1ef286
0000010c: EQ
0000010d: PUSH2 0x036f
00000110: JUMPI
00000111: DUP1
00000112: PUSH4 0x4f64b2be
00000117: EQ
00000118: PUSH2 0x036a
0000011b: JUMPI
0000011c: DUP1
0000011d: PUSH4 0x52d1902d
00000122: EQ
00000123: PUSH2 0x0365
00000126: JUMPI
00000127: DUP1
00000128: PUSH4 0x52ed3ed8
0000012d: EQ
0000012e: PUSH2 0x0360
00000131: JUMPI
00000132: DUP1
00000133: PUSH4 0x57d5d520
00000138: EQ
00000139: PUSH2 0x035b
0000013c: JUMPI
0000013d: DUP1
0000013e: PUSH4 0x5c975abb
00000143: EQ
00000144: PUSH2 0x0356
00000147: JUMPI
00000148: DUP1
00000149: PUSH4 0x5d36b190
0000014e: EQ
0000014f: PUSH2 0x0351
00000152: JUMPI
00000153: DUP1
00000154: PUSH4 0x608baa9a
00000159: EQ
0000015a: PUSH2 0x034c
0000015d: JUMPI
0000015e: DUP1
0000015f: PUSH4 0x61ec3846
00000164: EQ
00000165: PUSH2 0x0347
00000168: JUMPI
00000169: DUP1
0000016a: PUSH4 0x6696821b
0000016f: EQ
00000170: PUSH2 0x0342
00000173: JUMPI
00000174: DUP1
00000175: PUSH4 0x6ff97f1d
0000017a: EQ
0000017b: PUSH2 0x033d
0000017e: JUMPI
0000017f: DUP1
00000180: PUSH4 0x70a08231
00000185: EQ
00000186: PUSH2 0x0338
00000189: JUMPI
0000018a: DUP1
0000018b: PUSH4 0x7ecebe00
00000190: EQ
00000191: PUSH2 0x0333
00000194: JUMPI
00000195: DUP1
00000196: PUSH4 0x7f12dc60
0000019b: EQ
0000019c: PUSH2 0x032e
0000019f: JUMPI
000001a0: DUP1
000001a1: PUSH4 0x84b0196e
000001a6: EQ
000001a7: PUSH2 0x0329
000001aa: JUMPI
000001ab: DUP1
000001ac: PUSH4 0x863a7fc1
000001b1: EQ
000001b2: PUSH2 0x0324
000001b5: JUMPI
000001b6: DUP1
000001b7: PUSH4 0x9295d478
000001bc: EQ
000001bd: PUSH2 0x031f
000001c0: JUMPI
000001c1: DUP1
000001c2: PUSH4 0x95d89b41
000001c7: EQ
000001c8: PUSH2 0x031a
000001cb: JUMPI
000001cc: DUP1
000001cd: PUSH4 0x98c601aa
000001d2: EQ
000001d3: PUSH2 0x0315
000001d6: JUMPI
000001d7: DUP1
000001d8: PUSH4 0x9c79d8dc
000001dd: EQ
000001de: PUSH2 0x0310
000001e1: JUMPI
000001e2: DUP1
000001e3: PUSH4 0xa9059cbb
000001e8: EQ
000001e9: PUSH2 0x030b
000001ec: JUMPI
000001ed: DUP1
000001ee: PUSH4 0xad3cb1cc
000001f3: EQ
000001f4: PUSH2 0x0306
000001f7: JUMPI
000001f8: DUP1
000001f9: PUSH4 0xb5af090f
000001fe: EQ
000001ff: PUSH2 0x0301
00000202: JUMPI
00000203: DUP1
00000204: PUSH4 0xb888879e
00000209: EQ
0000020a: PUSH2 0x02fc
0000020d: JUMPI
0000020e: DUP1
0000020f: PUSH4 0xb8a723bd
00000214: EQ
00000215: PUSH2 0x02f7
00000218: JUMPI
00000219: DUP1
0000021a: PUSH4 0xba46ae72
0000021f: EQ
00000220: PUSH2 0x02f2
00000223: JUMPI
00000224: DUP1
00000225: PUSH4 0xc7af3352
0000022a: EQ
0000022b: PUSH2 0x02ed
0000022e: JUMPI
0000022f: DUP1
00000230: PUSH4 0xd38bfff4
00000235: EQ
00000236: PUSH2 0x02e8
00000239: JUMPI
0000023a: DUP1
0000023b: PUSH4 0xd505accf
00000240: EQ
00000241: PUSH2 0x02e3
00000244: JUMPI
00000245: DUP1
00000246: PUSH4 0xd6bcfca3
0000024b: EQ
0000024c: PUSH2 0x02de
0000024f: JUMPI
00000250: DUP1
00000251: PUSH4 0xdb006a75
00000256: EQ
00000257: PUSH2 0x02d9
0000025a: JUMPI
0000025b: DUP1
0000025c: PUSH4 0xdd62ed3e
00000261: EQ
00000262: PUSH2 0x02d4
00000265: JUMPI
00000266: DUP1
00000267: PUSH4 0xddca3f43
0000026c: EQ
0000026d: PUSH2 0x02cf
00000270: JUMPI
00000271: DUP1
00000272: PUSH4 0xe2e97570
00000277: EQ
00000278: PUSH2 0x02ca
0000027b: JUMPI
0000027c: DUP1
0000027d: PUSH4 0xe5328e06
00000282: EQ
00000283: PUSH2 0x02c5
00000286: JUMPI
00000287: DUP1
00000288: PUSH4 0xe8c67216
0000028d: EQ
0000028e: PUSH2 0x02c0
00000291: JUMPI
00000292: DUP1
00000293: PUSH4 0xf293f14e
00000298: EQ
00000299: PUSH2 0x02bb
0000029c: JUMPI
0000029d: DUP1
0000029e: PUSH4 0xfa6d102b
000002a3: EQ
000002a4: PUSH2 0x02b6
000002a7: JUMPI
000002a8: PUSH4 0xfc0cfeee
000002ad: SUB
000002ae: PUSH2 0x000e
000002b1: JUMPI
000002b2: PUSH2 0x28a8
000002b5: JUMP
000002b6: JUMPDEST
000002b7: PUSH2 0x2800
000002ba: JUMP
000002bb: JUMPDEST
000002bc: PUSH2 0x2708
000002bf: JUMP
000002c0: JUMPDEST
000002c1: PUSH2 0x2614
000002c4: JUMP
000002c5: JUMPDEST
000002c6: PUSH2 0x2485
000002c9: JUMP
000002ca: JUMPDEST
000002cb: PUSH2 0x246a
000002ce: JUMP
000002cf: JUMPDEST
000002d0: PUSH2 0x242a
000002d3: JUMP
000002d4: JUMPDEST
000002d5: PUSH2 0x23c1
000002d8: JUMP
000002d9: JUMPDEST
000002da: PUSH2 0x2229
000002dd: JUMP
000002de: JUMPDEST
000002df: PUSH2 0x220b
000002e2: JUMP
000002e3: JUMPDEST
000002e4: PUSH2 0x2066
000002e7: JUMP
000002e8: JUMPDEST
000002e9: PUSH2 0x1f68
000002ec: JUMP
000002ed: JUMPDEST
000002ee: PUSH2 0x1f23
000002f1: JUMP
000002f2: JUMPDEST
000002f3: PUSH2 0x1e72
000002f6: JUMP
000002f7: JUMPDEST
000002f8: PUSH2 0x1e55
000002fb: JUMP
000002fc: JUMPDEST
000002fd: PUSH2 0x1e2f
00000300: JUMP
00000301: JUMPDEST
00000302: PUSH2 0x1df4
00000305: JUMP
00000306: JUMPDEST
00000307: PUSH2 0x1d84
0000030a: JUMP
0000030b: JUMPDEST
0000030c: PUSH2 0x1d5e
0000030f: JUMP
00000310: JUMPDEST
00000311: PUSH2 0x1d41
00000314: JUMP
00000315: JUMPDEST
00000316: PUSH2 0x1a5c
00000319: JUMP
0000031a: JUMPDEST
0000031b: PUSH2 0x195d
0000031e: JUMP
0000031f: JUMPDEST
00000320: PUSH2 0x1920
00000323: JUMP
00000324: JUMPDEST
00000325: PUSH2 0x18fa
00000328: JUMP
00000329: JUMPDEST
0000032a: PUSH2 0x1809
0000032d: JUMP
0000032e: JUMPDEST
0000032f: PUSH2 0x1775
00000332: JUMP
00000333: JUMPDEST
00000334: PUSH2 0x171e
00000337: JUMP
00000338: JUMPDEST
00000339: PUSH2 0x16c9
0000033c: JUMP
0000033d: JUMPDEST
0000033e: PUSH2 0x169a
00000341: JUMP
00000342: JUMPDEST
00000343: PUSH2 0x1578
00000346: JUMP
00000347: JUMPDEST
00000348: PUSH2 0x1512
0000034b: JUMP
0000034c: JUMPDEST
0000034d: PUSH2 0x14e7
00000350: JUMP
00000351: JUMPDEST
00000352: PUSH2 0x13fb
00000355: JUMP
00000356: JUMPDEST
00000357: PUSH2 0x13ba
0000035a: JUMP
0000035b: JUMPDEST
0000035c: PUSH2 0x13a1
0000035f: JUMP
00000360: JUMPDEST
00000361: PUSH2 0x129b
00000364: JUMP
00000365: JUMPDEST
00000366: PUSH2 0x1207
00000369: JUMP
0000036a: JUMPDEST
0000036b: PUSH2 0x11ae
0000036e: JUMP
0000036f: JUMPDEST
00000370: PUSH2 0x0ecc
00000373: JUMP
00000374: JUMPDEST
00000375: PUSH2 0x0e5f
00000378: JUMP
00000379: JUMPDEST
0000037a: PUSH2 0x0e36
0000037d: JUMP
0000037e: JUMPDEST
0000037f: PUSH2 0x0c5a
00000382: JUMP
00000383: JUMPDEST
00000384: PUSH2 0x0c1d
00000387: JUMP
00000388: JUMPDEST
00000389: PUSH2 0x0bfb
0000038c: JUMP
0000038d: JUMPDEST
0000038e: PUSH2 0x0be0
00000391: JUMP
00000392: JUMPDEST
00000393: PUSH2 0x0b85
00000396: JUMP
00000397: JUMPDEST
00000398: PUSH2 0x0b5f
0000039b: JUMP
0000039c: JUMPDEST
0000039d: PUSH2 0x0a6e
000003a0: JUMP
000003a1: JUMPDEST
000003a2: PUSH2 0x09d6
000003a5: JUMP
000003a6: JUMPDEST
000003a7: PUSH2 0x0818
000003aa: JUMP
000003ab: JUMPDEST
000003ac: PUSH2 0x07d7
000003af: JUMP
000003b0: JUMPDEST
000003b1: PUSH2 0x079b
000003b4: JUMP
000003b5: JUMPDEST
000003b6: PUSH2 0x077f
000003b9: JUMP
000003ba: JUMPDEST
000003bb: PUSH2 0x073a
000003be: JUMP
000003bf: JUMPDEST
000003c0: PUSH2 0x071d
000003c3: JUMP
000003c4: JUMPDEST
000003c5: PUSH2 0x06e0
000003c8: JUMP
000003c9: JUMPDEST
000003ca: PUSH2 0x06af
000003cd: JUMP
000003ce: JUMPDEST
000003cf: PUSH2 0x04f7
000003d2: JUMP
000003d3: JUMPDEST
000003d4: PUSH2 0x0495
000003d7: JUMP
000003d8: JUMPDEST
000003d9: CALLVALUE
000003da: PUSH2 0x0015
000003dd: JUMPI
000003de: PUSH0
000003df: PUSH1 0x03
000003e1: NOT
000003e2: CALLDATASIZE
000003e3: ADD
000003e4: SLT
000003e5: PUSH2 0x0015
000003e8: JUMPI
000003e9: PUSH1 0x20
000003eb: PUSH1 0x01
000003ed: PUSH1 0x01
000003ef: PUSH1 0xa0
000003f1: SHL
000003f2: SUB
000003f3: PUSH1 0x07
000003f5: SLOAD
000003f6: AND
000003f7: PUSH1 0x40
000003f9: MLOAD
000003fa: SWAP1
000003fb: DUP2
000003fc: MSTORE
000003fd: RETURN
000003fe: JUMPDEST
000003ff: SWAP1
00000400: DUP2
00000401: MLOAD
00000402: DUP1
00000403: DUP3
00000404: MSTORE
00000405: PUSH1 0x20
00000407: DUP1
00000408: DUP1
00000409: SWAP4
0000040a: ADD
0000040b: SWAP4
0000040c: ADD
0000040d: SWAP2
0000040e: PUSH0
0000040f: JUMPDEST
00000410: DUP3
00000411: DUP2
00000412: LT
00000413: PUSH2 0x041d
00000416: JUMPI
00000417: POP
00000418: POP
00000419: POP
0000041a: POP
0000041b: SWAP1
0000041c: JUMP
0000041d: JUMPDEST
0000041e: DUP4
0000041f: MLOAD
00000420: PUSH1 0x01
00000422: PUSH1 0x01
00000424: PUSH1 0xa0
00000426: SHL
00000427: SUB
00000428: AND
00000429: DUP6
0000042a: MSTORE
0000042b: SWAP4
0000042c: DUP2
0000042d: ADD
0000042e: SWAP4
0000042f: SWAP3
00000430: DUP2
00000431: ADD
00000432: SWAP3
00000433: PUSH1 0x01
00000435: ADD
00000436: PUSH2 0x040f
00000439: JUMP
0000043a: JUMPDEST
0000043b: SWAP1
0000043c: DUP2
0000043d: MLOAD
0000043e: DUP1
0000043f: DUP3
00000440: MSTORE
00000441: PUSH1 0x20
00000443: DUP1
00000444: DUP1
00000445: SWAP4
00000446: ADD
00000447: SWAP4
00000448: ADD
00000449: SWAP2
0000044a: PUSH0
0000044b: JUMPDEST
0000044c: DUP3
0000044d: DUP2
0000044e: LT
0000044f: PUSH2 0x0459
00000452: JUMPI
00000453: POP
00000454: POP
00000455: POP
00000456: POP
00000457: SWAP1
00000458: JUMP
00000459: JUMPDEST
0000045a: DUP4
0000045b: MLOAD
0000045c: DUP6
0000045d: MSTORE
0000045e: SWAP4
0000045f: DUP2
00000460: ADD
00000461: SWAP4
00000462: SWAP3
00000463: DUP2
00000464: ADD
00000465: SWAP3
00000466: PUSH1 0x01
00000468: ADD
00000469: PUSH2 0x044b
0000046c: JUMP
0000046d: JUMPDEST
0000046e: SWAP1
0000046f: SWAP2
00000470: PUSH2 0x0484
00000473: PUSH2 0x0492
00000476: SWAP4
00000477: PUSH1 0x40
00000479: DUP5
0000047a: MSTORE
0000047b: PUSH1 0x40
0000047d: DUP5
0000047e: ADD
0000047f: SWAP1
00000480: PUSH2 0x03fe
00000483: JUMP
00000484: JUMPDEST
00000485: SWAP2
00000486: PUSH1 0x20
00000488: DUP2
00000489: DUP5
0000048a: SUB
0000048b: SWAP2
0000048c: ADD
0000048d: MSTORE
0000048e: PUSH2 0x043a
00000491: JUMP
00000492: JUMPDEST
00000493: SWAP1
00000494: JUMP
00000495: JUMPDEST
00000496: CALLVALUE
00000497: PUSH2 0x0015
0000049a: JUMPI
0000049b: PUSH0
0000049c: PUSH1 0x03
0000049e: NOT
0000049f: CALLDATASIZE
000004a0: ADD
000004a1: SLT
000004a2: PUSH2 0x0015
000004a5: JUMPI
000004a6: PUSH2 0x04ad
000004a9: PUSH2 0x2a8f
000004ac: JUMP
000004ad: JUMPDEST
000004ae: SWAP1
000004af: PUSH2 0x04bd
000004b2: PUSH1 0x40
000004b4: MLOAD
000004b5: SWAP3
000004b6: DUP4
000004b7: SWAP3
000004b8: DUP4
000004b9: PUSH2 0x046d
000004bc: JUMP
000004bd: JUMPDEST
000004be: SUB
000004bf: SWAP1
000004c0: RETURN
000004c1: JUMPDEST
000004c2: SWAP1
000004c3: PUSH1 0x1f
000004c5: NOT
000004c6: PUSH1 0x1f
000004c8: PUSH1 0x20
000004ca: DUP1
000004cb: SWAP5
000004cc: DUP1
000004cd: MLOAD
000004ce: SWAP2
000004cf: DUP3
000004d0: SWAP2
000004d1: DUP3
000004d2: DUP8
000004d3: MSTORE
000004d4: ADD
000004d5: DUP7
000004d6: DUP7
000004d7: ADD
000004d8: MCOPY
000004d9: PUSH0
000004da: DUP6
000004db: DUP3
000004dc: DUP7
000004dd: ADD
000004de: ADD
000004df: MSTORE
000004e0: ADD
000004e1: AND
000004e2: ADD
000004e3: ADD
000004e4: SWAP1
000004e5: JUMP
000004e6: JUMPDEST
000004e7: SWAP1
000004e8: PUSH1 0x20
000004ea: PUSH2 0x0492
000004ed: SWAP3
000004ee: DUP2
000004ef: DUP2
000004f0: MSTORE
000004f1: ADD
000004f2: SWAP1
000004f3: PUSH2 0x04c1
000004f6: JUMP
000004f7: JUMPDEST
000004f8: CALLVALUE
000004f9: PUSH2 0x0015
000004fc: JUMPI
000004fd: PUSH0
000004fe: PUSH1 0x03
00000500: NOT
00000501: CALLDATASIZE
00000502: ADD
00000503: SLT
00000504: PUSH2 0x0015
00000507: JUMPI
00000508: PUSH1 0x40
0000050a: MLOAD
0000050b: PUSH0
0000050c: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03
0000052d: SLOAD
0000052e: PUSH1 0x01
00000530: DUP2
00000531: PUSH1 0x01
00000533: SHR
00000534: SWAP2
00000535: PUSH1 0x01
00000537: DUP2
00000538: AND
00000539: SWAP2
0000053a: DUP3
0000053b: ISZERO
0000053c: PUSH2 0x0663
0000053f: JUMPI
00000540: JUMPDEST
00000541: PUSH1 0x20
00000543: SWAP2
00000544: PUSH1 0x20
00000546: DUP6
00000547: LT
00000548: DUP5
00000549: EQ
0000054a: PUSH2 0x0636
0000054d: JUMPI
0000054e: DUP5
0000054f: DUP8
00000550: MSTORE
00000551: PUSH1 0x20
00000553: DUP8
00000554: ADD
00000555: SWAP4
00000556: SWAP1
00000557: DUP2
00000558: ISZERO
00000559: PUSH2 0x05f9
0000055c: JUMPI
0000055d: POP
0000055e: PUSH1 0x01
00000560: EQ
00000561: PUSH2 0x0581
00000564: JUMPI
00000565: JUMPDEST
00000566: PUSH2 0x04bd
00000569: DUP7
0000056a: PUSH2 0x0575
0000056d: DUP2
0000056e: DUP9
0000056f: SUB
00000570: DUP3
00000571: PUSH2 0x0ce7
00000574: JUMP
00000575: JUMPDEST
00000576: PUSH1 0x40
00000578: MLOAD
00000579: SWAP2
0000057a: DUP3
0000057b: SWAP2
0000057c: DUP3
0000057d: PUSH2 0x04e6
00000580: JUMP
00000581: JUMPDEST
00000582: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03
000005a3: PUSH0
000005a4: SWAP1
000005a5: DUP2
000005a6: MSTORE
000005a7: SWAP5
000005a8: POP
000005a9: SWAP2
000005aa: SWAP3
000005ab: SWAP2
000005ac: PUSH32 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0
000005cd: JUMPDEST
000005ce: DUP4
000005cf: DUP7
000005d0: LT
000005d1: PUSH2 0x05e8
000005d4: JUMPI
000005d5: POP
000005d6: POP
000005d7: POP
000005d8: SWAP2
000005d9: ADD
000005da: SWAP1
000005db: POP
000005dc: PUSH2 0x0575
000005df: DUP3
000005e0: PUSH2 0x04bd
000005e3: PUSH0
000005e4: PUSH2 0x0565
000005e7: JUMP
000005e8: JUMPDEST
000005e9: DUP1
000005ea: SLOAD
000005eb: DUP6
000005ec: DUP8
000005ed: ADD
000005ee: MSTORE
000005ef: SWAP5
000005f0: DUP3
000005f1: ADD
000005f2: SWAP5
000005f3: DUP2
000005f4: ADD
000005f5: PUSH2 0x05cd
000005f8: JUMP
000005f9: JUMPDEST
000005fa: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
0000061b: AND
0000061c: DUP5
0000061d: MSTORE
0000061e: POP
0000061f: POP
00000620: POP
00000621: SWAP1
00000622: ISZERO
00000623: ISZERO
00000624: PUSH1 0x05
00000626: SHL
00000627: ADD
00000628: SWAP1
00000629: POP
0000062a: PUSH2 0x0575
0000062d: DUP3
0000062e: PUSH2 0x04bd
00000631: PUSH0
00000632: PUSH2 0x0565
00000635: JUMP
00000636: JUMPDEST
00000637: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00000658: PUSH0
00000659: MSTORE
0000065a: PUSH1 0x22
0000065c: PUSH1 0x04
0000065e: MSTORE
0000065f: PUSH1 0x24
00000661: PUSH0
00000662: REVERT
00000663: JUMPDEST
00000664: SWAP3
00000665: PUSH1 0x7f
00000667: AND
00000668: SWAP3
00000669: PUSH2 0x0540
0000066c: JUMP
0000066d: JUMPDEST
0000066e: PUSH1 0x04
00000670: CALLDATALOAD
00000671: SWAP1
00000672: PUSH1 0x01
00000674: PUSH1 0x01
00000676: PUSH1 0xa0
00000678: SHL
00000679: SUB
0000067a: DUP3
0000067b: AND
0000067c: DUP3
0000067d: SUB
0000067e: PUSH2 0x0015
00000681: JUMPI
00000682: JUMP
00000683: JUMPDEST
00000684: PUSH1 0x24
00000686: CALLDATALOAD
00000687: SWAP1
00000688: PUSH1 0x01
0000068a: PUSH1 0x01
0000068c: PUSH1 0xa0
0000068e: SHL
0000068f: SUB
00000690: DUP3
00000691: AND
00000692: DUP3
00000693: SUB
00000694: PUSH2 0x0015
00000697: JUMPI
00000698: JUMP
00000699: JUMPDEST
0000069a: PUSH1 0x44
0000069c: CALLDATALOAD
0000069d: SWAP1
0000069e: PUSH1 0x01
000006a0: PUSH1 0x01
000006a2: PUSH1 0xa0
000006a4: SHL
000006a5: SUB
000006a6: DUP3
000006a7: AND
000006a8: DUP3
000006a9: SUB
000006aa: PUSH2 0x0015
000006ad: JUMPI
000006ae: JUMP
000006af: JUMPDEST
000006b0: CALLVALUE
000006b1: PUSH2 0x0015
000006b4: JUMPI
000006b5: PUSH1 0x40
000006b7: PUSH1 0x03
000006b9: NOT
000006ba: CALLDATASIZE
000006bb: ADD
000006bc: SLT
000006bd: PUSH2 0x0015
000006c0: JUMPI
000006c1: PUSH2 0x06d5
000006c4: PUSH2 0x06cb
000006c7: PUSH2 0x066d
000006ca: JUMP
000006cb: JUMPDEST
000006cc: PUSH1 0x24
000006ce: CALLDATALOAD
000006cf: SWAP1
000006d0: CALLER
000006d1: PUSH2 0x3ff0
000006d4: JUMP
000006d5: JUMPDEST
000006d6: PUSH1 0x20
000006d8: PUSH1 0x40
000006da: MLOAD
000006db: PUSH1 0x01
000006dd: DUP2
000006de: MSTORE
000006df: RETURN
000006e0: JUMPDEST
000006e1: CALLVALUE
000006e2: PUSH2 0x0015
000006e5: JUMPI
000006e6: PUSH1 0x20
000006e8: PUSH1 0x03
000006ea: NOT
000006eb: CALLDATASIZE
000006ec: ADD
000006ed: SLT
000006ee: PUSH2 0x0015
000006f1: JUMPI
000006f2: PUSH1 0x01
000006f4: PUSH1 0x01
000006f6: PUSH1 0xa0
000006f8: SHL
000006f9: SUB
000006fa: PUSH2 0x0701
000006fd: PUSH2 0x066d
00000700: JUMP
00000701: JUMPDEST
00000702: AND
00000703: PUSH0
00000704: MSTORE
00000705: PUSH1 0x0b
00000707: PUSH1 0x20
00000709: MSTORE
0000070a: PUSH1 0x20
0000070c: PUSH1 0xff
0000070e: PUSH1 0x40
00000710: PUSH0
00000711: KECCAK256
00000712: SLOAD
00000713: AND
00000714: PUSH1 0x40
00000716: MLOAD
00000717: SWAP1
00000718: ISZERO
00000719: ISZERO
0000071a: DUP2
0000071b: MSTORE
0000071c: RETURN
0000071d: JUMPDEST
0000071e: CALLVALUE
0000071f: PUSH2 0x0015
00000722: JUMPI
00000723: PUSH0
00000724: PUSH1 0x03
00000726: NOT
00000727: CALLDATASIZE
00000728: ADD
00000729: SLT
0000072a: PUSH2 0x0015
0000072d: JUMPI
0000072e: PUSH1 0x20
00000730: PUSH1 0x0d
00000732: SLOAD
00000733: PUSH1 0x40
00000735: MLOAD
00000736: SWAP1
00000737: DUP2
00000738: MSTORE
00000739: RETURN
0000073a: JUMPDEST
0000073b: CALLVALUE
0000073c: PUSH2 0x0015
0000073f: JUMPI
00000740: PUSH0
00000741: PUSH1 0x03
00000743: NOT
00000744: CALLDATASIZE
00000745: ADD
00000746: SLT
00000747: PUSH2 0x0015
0000074a: JUMPI
0000074b: PUSH1 0x20
0000074d: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
0000076e: SLOAD
0000076f: PUSH1 0x01
00000771: PUSH1 0x01
00000773: PUSH1 0xa0
00000775: SHL
00000776: SUB
00000777: PUSH1 0x40
00000779: MLOAD
0000077a: SWAP2
0000077b: AND
0000077c: DUP2
0000077d: MSTORE
0000077e: RETURN
0000077f: JUMPDEST
00000780: CALLVALUE
00000781: PUSH2 0x0015
00000784: JUMPI
00000785: PUSH1 0x20
00000787: PUSH1 0x03
00000789: NOT
0000078a: CALLDATASIZE
0000078b: ADD
0000078c: SLT
0000078d: PUSH2 0x0015
00000790: JUMPI
00000791: PUSH2 0x04ad
00000794: PUSH1 0x04
00000796: CALLDATALOAD
00000797: PUSH2 0x2d74
0000079a: JUMP
0000079b: JUMPDEST
0000079c: CALLVALUE
0000079d: PUSH2 0x0015
000007a0: JUMPI
000007a1: PUSH0
000007a2: PUSH1 0x03
000007a4: NOT
000007a5: CALLDATASIZE
000007a6: ADD
000007a7: SLT
000007a8: PUSH2 0x0015
000007ab: JUMPI
000007ac: PUSH1 0x20
000007ae: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
000007cf: SLOAD
000007d0: PUSH1 0x40
000007d2: MLOAD
000007d3: SWAP1
000007d4: DUP2
000007d5: MSTORE
000007d6: RETURN
000007d7: JUMPDEST
000007d8: CALLVALUE
000007d9: PUSH2 0x0015
000007dc: JUMPI
000007dd: PUSH1 0x20
000007df: PUSH1 0x03
000007e1: NOT
000007e2: CALLDATASIZE
000007e3: ADD
000007e4: SLT
000007e5: PUSH2 0x0015
000007e8: JUMPI
000007e9: PUSH1 0x40
000007eb: PUSH1 0x01
000007ed: PUSH1 0x01
000007ef: PUSH1 0xa0
000007f1: SHL
000007f2: SUB
000007f3: DUP1
000007f4: PUSH2 0x07fb
000007f7: PUSH2 0x066d
000007fa: JUMP
000007fb: JUMPDEST
000007fc: AND
000007fd: PUSH0
000007fe: MSTORE
000007ff: PUSH1 0x0f
00000801: PUSH1 0x20
00000803: MSTORE
00000804: DUP2
00000805: PUSH0
00000806: KECCAK256
00000807: SLOAD
00000808: DUP3
00000809: MLOAD
0000080a: SWAP2
0000080b: DUP2
0000080c: AND
0000080d: DUP3
0000080e: MSTORE
0000080f: PUSH1 0xa0
00000811: SHR
00000812: PUSH1 0x20
00000814: DUP3
00000815: ADD
00000816: MSTORE
00000817: RETURN
00000818: JUMPDEST
00000819: CALLVALUE
0000081a: PUSH2 0x0015
0000081d: JUMPI
0000081e: PUSH1 0x60
00000820: PUSH1 0x03
00000822: NOT
00000823: CALLDATASIZE
00000824: ADD
00000825: SLT
00000826: PUSH2 0x0015
00000829: JUMPI
0000082a: PUSH2 0x0831
0000082d: PUSH2 0x066d
00000830: JUMP
00000831: JUMPDEST
00000832: PUSH2 0x0839
00000835: PUSH2 0x0683
00000838: JUMP
00000839: JUMPDEST
0000083a: PUSH1 0x44
0000083c: CALLDATALOAD
0000083d: SWAP1
0000083e: PUSH2 0x0891
00000841: CALLER
00000842: PUSH2 0x087b
00000845: DUP6
00000846: PUSH1 0x01
00000848: PUSH1 0x01
0000084a: PUSH1 0xa0
0000084c: SHL
0000084d: SUB
0000084e: AND
0000084f: PUSH0
00000850: MSTORE
00000851: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01
00000872: PUSH1 0x20
00000874: MSTORE
00000875: PUSH1 0x40
00000877: PUSH0
00000878: KECCAK256
00000879: SWAP1
0000087a: JUMP
0000087b: JUMPDEST
0000087c: SWAP1
0000087d: PUSH1 0x01
0000087f: PUSH1 0x01
00000881: PUSH1 0xa0
00000883: SHL
00000884: SUB
00000885: AND
00000886: PUSH0
00000887: MSTORE
00000888: PUSH1 0x20
0000088a: MSTORE
0000088b: PUSH1 0x40
0000088d: PUSH0
0000088e: KECCAK256
0000088f: SWAP1
00000890: JUMP
00000891: JUMPDEST
00000892: SLOAD
00000893: SWAP3
00000894: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000008b5: DUP5
000008b6: SUB
000008b7: PUSH2 0x08d1
000008ba: JUMPI
000008bb: JUMPDEST
000008bc: PUSH2 0x08c5
000008bf: SWAP4
000008c0: POP
000008c1: PUSH2 0x3479
000008c4: JUMP
000008c5: JUMPDEST
000008c6: PUSH1 0x40
000008c8: MLOAD
000008c9: PUSH1 0x01
000008cb: DUP2
000008cc: MSTORE
000008cd: PUSH1 0x20
000008cf: SWAP1
000008d0: RETURN
000008d1: JUMPDEST
000008d2: DUP3
000008d3: DUP5
000008d4: LT
000008d5: PUSH2 0x0997
000008d8: JUMPI
000008d9: PUSH1 0x01
000008db: PUSH1 0x01
000008dd: PUSH1 0xa0
000008df: SHL
000008e0: SUB
000008e1: DUP2
000008e2: AND
000008e3: ISZERO
000008e4: PUSH2 0x0967
000008e7: JUMPI
000008e8: CALLER
000008e9: ISZERO
000008ea: PUSH2 0x0937
000008ed: JUMPI
000008ee: DUP3
000008ef: PUSH2 0x08c5
000008f2: SWAP5
000008f3: SUB
000008f4: PUSH2 0x0931
000008f7: CALLER
000008f8: PUSH2 0x087b
000008fb: DUP5
000008fc: PUSH1 0x01
000008fe: PUSH1 0x01
00000900: PUSH1 0xa0
00000902: SHL
00000903: SUB
00000904: AND
00000905: PUSH0
00000906: MSTORE
00000907: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01
00000928: PUSH1 0x20
0000092a: MSTORE
0000092b: PUSH1 0x40
0000092d: PUSH0
0000092e: KECCAK256
0000092f: SWAP1
00000930: JUMP
00000931: JUMPDEST
00000932: SSTORE
00000933: PUSH2 0x08bb
00000936: JUMP
00000937: JUMPDEST
00000938: PUSH1 0x24
0000093a: PUSH1 0x40
0000093c: MLOAD
0000093d: PUSH32 0x94280d6200000000000000000000000000000000000000000000000000000000
0000095e: DUP2
0000095f: MSTORE
00000960: PUSH0
00000961: PUSH1 0x04
00000963: DUP3
00000964: ADD
00000965: MSTORE
00000966: REVERT
00000967: JUMPDEST
00000968: PUSH1 0x24
0000096a: PUSH1 0x40
0000096c: MLOAD
0000096d: PUSH32 0xe602df0500000000000000000000000000000000000000000000000000000000
0000098e: DUP2
0000098f: MSTORE
00000990: PUSH0
00000991: PUSH1 0x04
00000993: DUP3
00000994: ADD
00000995: MSTORE
00000996: REVERT
00000997: JUMPDEST
00000998: PUSH1 0x40
0000099a: MLOAD
0000099b: PUSH32 0xfb8f41b200000000000000000000000000000000000000000000000000000000
000009bc: DUP2
000009bd: MSTORE
000009be: CALLER
000009bf: PUSH1 0x04
000009c1: DUP3
000009c2: ADD
000009c3: MSTORE
000009c4: PUSH1 0x24
000009c6: DUP2
000009c7: ADD
000009c8: DUP6
000009c9: SWAP1
000009ca: MSTORE
000009cb: PUSH1 0x44
000009cd: DUP2
000009ce: ADD
000009cf: DUP5
000009d0: SWAP1
000009d1: MSTORE
000009d2: PUSH1 0x64
000009d4: SWAP1
000009d5: REVERT
000009d6: JUMPDEST
000009d7: CALLVALUE
000009d8: PUSH2 0x0015
000009db: JUMPI
000009dc: PUSH1 0x20
000009de: PUSH1 0x03
000009e0: NOT
000009e1: CALLDATASIZE
000009e2: ADD
000009e3: SLT
000009e4: PUSH2 0x0015
000009e7: JUMPI
000009e8: PUSH1 0x20
000009ea: PUSH2 0x0a0e
000009ed: PUSH2 0x09f4
000009f0: PUSH2 0x066d
000009f3: JUMP
000009f4: JUMPDEST
000009f5: PUSH1 0x01
000009f7: PUSH1 0x01
000009f9: PUSH1 0xa0
000009fb: SHL
000009fc: SUB
000009fd: AND
000009fe: PUSH0
000009ff: MSTORE
00000a00: PUSH0
00000a01: PUSH1 0x20
00000a03: MSTORE
00000a04: PUSH1 0xff
00000a06: PUSH1 0x40
00000a08: PUSH0
00000a09: KECCAK256
00000a0a: SLOAD
00000a0b: AND
00000a0c: SWAP1
00000a0d: JUMP
00000a0e: JUMPDEST
00000a0f: PUSH1 0x40
00000a11: MLOAD
00000a12: SWAP1
00000a13: ISZERO
00000a14: ISZERO
00000a15: DUP2
00000a16: MSTORE
00000a17: RETURN
00000a18: JUMPDEST
00000a19: SWAP1
00000a1a: PUSH2 0x0a2b
00000a1d: SWAP1
00000a1e: PUSH1 0x40
00000a20: DUP4
00000a21: MSTORE
00000a22: PUSH1 0x40
00000a24: DUP4
00000a25: ADD
00000a26: SWAP1
00000a27: PUSH2 0x03fe
00000a2a: JUMP
00000a2b: JUMPDEST
00000a2c: DUP2
00000a2d: DUP2
00000a2e: SUB
00000a2f: PUSH1 0x20
00000a31: SWAP3
00000a32: DUP4
00000a33: ADD
00000a34: MSTORE
00000a35: DUP3
00000a36: MLOAD
00000a37: DUP1
00000a38: DUP3
00000a39: MSTORE
00000a3a: SWAP1
00000a3b: DUP3
00000a3c: ADD
00000a3d: SWAP3
00000a3e: DUP3
00000a3f: ADD
00000a40: SWAP2
00000a41: PUSH0
00000a42: JUMPDEST
00000a43: DUP3
00000a44: DUP2
00000a45: LT
00000a46: PUSH2 0x0a50
00000a49: JUMPI
00000a4a: POP
00000a4b: POP
00000a4c: POP
00000a4d: POP
00000a4e: SWAP1
00000a4f: JUMP
00000a50: JUMPDEST
00000a51: DUP4
00000a52: MLOAD
00000a53: PUSH8 0xffffffffffffffff
00000a5c: AND
00000a5d: DUP6
00000a5e: MSTORE
00000a5f: SWAP4
00000a60: DUP2
00000a61: ADD
00000a62: SWAP4
00000a63: SWAP3
00000a64: DUP2
00000a65: ADD
00000a66: SWAP3
00000a67: PUSH1 0x01
00000a69: ADD
00000a6a: PUSH2 0x0a42
00000a6d: JUMP
00000a6e: JUMPDEST
00000a6f: CALLVALUE
00000a70: PUSH2 0x0015
00000a73: JUMPI
00000a74: PUSH0
00000a75: PUSH1 0x03
00000a77: NOT
00000a78: CALLDATASIZE
00000a79: ADD
00000a7a: SLT
00000a7b: PUSH2 0x0015
00000a7e: JUMPI
00000a7f: PUSH1 0x02
00000a81: DUP1
00000a82: SLOAD
00000a83: PUSH2 0x0a8b
00000a86: DUP2
00000a87: PUSH2 0x0d0a
00000a8a: JUMP
00000a8b: JUMPDEST
00000a8c: SWAP2
00000a8d: PUSH2 0x0a99
00000a90: PUSH1 0x40
00000a92: MLOAD
00000a93: SWAP4
00000a94: DUP5
00000a95: PUSH2 0x0ce7
00000a98: JUMP
00000a99: JUMPDEST
00000a9a: DUP2
00000a9b: DUP4
00000a9c: MSTORE
00000a9d: PUSH1 0x1f
00000a9f: NOT
00000aa0: PUSH2 0x0aa8
00000aa3: DUP4
00000aa4: PUSH2 0x0d0a
00000aa7: JUMP
00000aa8: JUMPDEST
00000aa9: ADD
00000aaa: CALLDATASIZE
00000aab: PUSH1 0x20
00000aad: DUP6
00000aae: ADD
00000aaf: CALLDATACOPY
00000ab0: PUSH2 0x0ad9
00000ab3: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00000ad4: SLOAD
00000ad5: PUSH2 0x368f
00000ad8: JUMP
00000ad9: JUMPDEST
00000ada: SWAP1
00000adb: PUSH0
00000adc: JUMPDEST
00000add: DUP4
00000ade: DUP2
00000adf: LT
00000ae0: PUSH2 0x0afb
00000ae3: JUMPI
00000ae4: DUP5
00000ae5: PUSH2 0x0aec
00000ae8: PUSH2 0x291d
00000aeb: JUMP
00000aec: JUMPDEST
00000aed: PUSH2 0x04bd
00000af0: PUSH1 0x40
00000af2: MLOAD
00000af3: SWAP3
00000af4: DUP4
00000af5: SWAP3
00000af6: DUP4
00000af7: PUSH2 0x0a18
00000afa: JUMP
00000afb: JUMPDEST
00000afc: PUSH1 0x01
00000afe: SWAP1
00000aff: DUP3
00000b00: PUSH0
00000b01: MSTORE
00000b02: PUSH2 0x0b59
00000b05: PUSH2 0x0b40
00000b08: DUP6
00000b09: PUSH2 0x0b3b
00000b0c: DUP5
00000b0d: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
00000b2e: ADD
00000b2f: SLOAD
00000b30: PUSH1 0x01
00000b32: PUSH1 0x01
00000b34: PUSH1 0xa0
00000b36: SHL
00000b37: SUB
00000b38: AND
00000b39: SWAP1
00000b3a: JUMP
00000b3b: JUMPDEST
00000b3c: PUSH2 0x36d6
00000b3f: JUMP
00000b40: JUMPDEST
00000b41: PUSH2 0x0b4a
00000b44: DUP4
00000b45: DUP10
00000b46: PUSH2 0x2a61
00000b49: JUMP
00000b4a: JUMPDEST
00000b4b: SWAP1
00000b4c: PUSH8 0xffffffffffffffff
00000b55: AND
00000b56: SWAP1
00000b57: MSTORE
00000b58: JUMP
00000b59: JUMPDEST
00000b5a: ADD
00000b5b: PUSH2 0x0adc
00000b5e: JUMP
00000b5f: JUMPDEST
00000b60: CALLVALUE
00000b61: PUSH2 0x0015
00000b64: JUMPI
00000b65: PUSH0
00000b66: PUSH1 0x03
00000b68: NOT
00000b69: CALLDATASIZE
00000b6a: ADD
00000b6b: SLT
00000b6c: PUSH2 0x0015
00000b6f: JUMPI
00000b70: PUSH1 0x20
00000b72: PUSH1 0x01
00000b74: PUSH1 0x01
00000b76: PUSH1 0xa0
00000b78: SHL
00000b79: SUB
00000b7a: PUSH1 0x0a
00000b7c: SLOAD
00000b7d: AND
00000b7e: PUSH1 0x40
00000b80: MLOAD
00000b81: SWAP1
00000b82: DUP2
00000b83: MSTORE
00000b84: RETURN
00000b85: JUMPDEST
00000b86: CALLVALUE
00000b87: PUSH2 0x0015
00000b8a: JUMPI
00000b8b: PUSH1 0x20
00000b8d: PUSH1 0x03
00000b8f: NOT
00000b90: CALLDATASIZE
00000b91: ADD
00000b92: SLT
00000b93: PUSH2 0x0015
00000b96: JUMPI
00000b97: PUSH2 0x04ad
00000b9a: PUSH2 0x0bda
00000b9d: PUSH2 0x0ba4
00000ba0: PUSH2 0x066d
00000ba3: JUMP
00000ba4: JUMPDEST
00000ba5: PUSH1 0x01
00000ba7: PUSH1 0x01
00000ba9: PUSH1 0xa0
00000bab: SHL
00000bac: SUB
00000bad: AND
00000bae: PUSH0
00000baf: MSTORE
00000bb0: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00000bd1: PUSH1 0x20
00000bd3: MSTORE
00000bd4: PUSH1 0x40
00000bd6: PUSH0
00000bd7: KECCAK256
00000bd8: SWAP1
00000bd9: JUMP
00000bda: JUMPDEST
00000bdb: SLOAD
00000bdc: PUSH2 0x2d74
00000bdf: JUMP
00000be0: JUMPDEST
00000be1: CALLVALUE
00000be2: PUSH2 0x0015
00000be5: JUMPI
00000be6: PUSH0
00000be7: PUSH1 0x03
00000be9: NOT
00000bea: CALLDATASIZE
00000beb: ADD
00000bec: SLT
00000bed: PUSH2 0x0015
00000bf0: JUMPI
00000bf1: PUSH1 0x20
00000bf3: PUSH1 0x40
00000bf5: MLOAD
00000bf6: PUSH1 0x12
00000bf8: DUP2
00000bf9: MSTORE
00000bfa: RETURN
00000bfb: JUMPDEST
00000bfc: CALLVALUE
00000bfd: PUSH2 0x0015
00000c00: JUMPI
00000c01: PUSH0
00000c02: PUSH1 0x03
00000c04: NOT
00000c05: CALLDATASIZE
00000c06: ADD
00000c07: SLT
00000c08: PUSH2 0x0015
00000c0b: JUMPI
00000c0c: PUSH1 0x20
00000c0e: PUSH2 0x0c15
00000c11: PUSH2 0x4079
00000c14: JUMP
00000c15: JUMPDEST
00000c16: PUSH1 0x40
00000c18: MLOAD
00000c19: SWAP1
00000c1a: DUP2
00000c1b: MSTORE
00000c1c: RETURN
00000c1d: JUMPDEST
00000c1e: CALLVALUE
00000c1f: PUSH2 0x0015
00000c22: JUMPI
00000c23: PUSH1 0x20
00000c25: PUSH1 0x03
00000c27: NOT
00000c28: CALLDATASIZE
00000c29: ADD
00000c2a: SLT
00000c2b: PUSH2 0x0015
00000c2e: JUMPI
00000c2f: PUSH1 0x01
00000c31: PUSH1 0x01
00000c33: PUSH1 0xa0
00000c35: SHL
00000c36: SUB
00000c37: PUSH2 0x0c3e
00000c3a: PUSH2 0x066d
00000c3d: JUMP
00000c3e: JUMPDEST
00000c3f: AND
00000c40: PUSH0
00000c41: MSTORE
00000c42: PUSH1 0x01
00000c44: PUSH1 0x20
00000c46: MSTORE
00000c47: PUSH1 0x20
00000c49: PUSH1 0xff
00000c4b: PUSH1 0x40
00000c4d: PUSH0
00000c4e: KECCAK256
00000c4f: SLOAD
00000c50: AND
00000c51: PUSH1 0x40
00000c53: MLOAD
00000c54: SWAP1
00000c55: ISZERO
00000c56: ISZERO
00000c57: DUP2
00000c58: MSTORE
00000c59: RETURN
00000c5a: JUMPDEST
00000c5b: CALLVALUE
00000c5c: PUSH2 0x0015
00000c5f: JUMPI
00000c60: PUSH1 0x20
00000c62: PUSH1 0x03
00000c64: NOT
00000c65: CALLDATASIZE
00000c66: ADD
00000c67: SLT
00000c68: PUSH2 0x0015
00000c6b: JUMPI
00000c6c: PUSH1 0x20
00000c6e: PUSH2 0x0c15
00000c71: PUSH2 0x0c78
00000c74: PUSH2 0x066d
00000c77: JUMP
00000c78: JUMPDEST
00000c79: PUSH2 0x2ead
00000c7c: JUMP
00000c7d: JUMPDEST
00000c7e: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00000c9f: PUSH0
00000ca0: MSTORE
00000ca1: PUSH1 0x41
00000ca3: PUSH1 0x04
00000ca5: MSTORE
00000ca6: PUSH1 0x24
00000ca8: PUSH0
00000ca9: REVERT
00000caa: JUMPDEST
00000cab: PUSH1 0x60
00000cad: DUP2
00000cae: ADD
00000caf: SWAP1
00000cb0: DUP2
00000cb1: LT
00000cb2: PUSH8 0xffffffffffffffff
00000cbb: DUP3
00000cbc: GT
00000cbd: OR
00000cbe: PUSH2 0x0cc6
00000cc1: JUMPI
00000cc2: PUSH1 0x40
00000cc4: MSTORE
00000cc5: JUMP
00000cc6: JUMPDEST
00000cc7: PUSH2 0x0c7d
00000cca: JUMP
00000ccb: JUMPDEST
00000ccc: PUSH1 0x80
00000cce: DUP2
00000ccf: ADD
00000cd0: SWAP1
00000cd1: DUP2
00000cd2: LT
00000cd3: PUSH8 0xffffffffffffffff
00000cdc: DUP3
00000cdd: GT
00000cde: OR
00000cdf: PUSH2 0x0cc6
00000ce2: JUMPI
00000ce3: PUSH1 0x40
00000ce5: MSTORE
00000ce6: JUMP
00000ce7: JUMPDEST
00000ce8: SWAP1
00000ce9: PUSH1 0x1f
00000ceb: PUSH1 0x1f
00000ced: NOT
00000cee: SWAP2
00000cef: ADD
00000cf0: AND
00000cf1: DUP2
00000cf2: ADD
00000cf3: SWAP1
00000cf4: DUP2
00000cf5: LT
00000cf6: PUSH8 0xffffffffffffffff
00000cff: DUP3
00000d00: GT
00000d01: OR
00000d02: PUSH2 0x0cc6
00000d05: JUMPI
00000d06: PUSH1 0x40
00000d08: MSTORE
00000d09: JUMP
00000d0a: JUMPDEST
00000d0b: PUSH8 0xffffffffffffffff
00000d14: DUP2
00000d15: GT
00000d16: PUSH2 0x0cc6
00000d19: JUMPI
00000d1a: PUSH1 0x05
00000d1c: SHL
00000d1d: PUSH1 0x20
00000d1f: ADD
00000d20: SWAP1
00000d21: JUMP
00000d22: JUMPDEST
00000d23: SWAP1
00000d24: DUP1
00000d25: PUSH1 0x1f
00000d27: DUP4
00000d28: ADD
00000d29: SLT
00000d2a: ISZERO
00000d2b: PUSH2 0x0015
00000d2e: JUMPI
00000d2f: PUSH1 0x20
00000d31: SWAP1
00000d32: DUP3
00000d33: CALLDATALOAD
00000d34: PUSH2 0x0d3c
00000d37: DUP2
00000d38: PUSH2 0x0d0a
00000d3b: JUMP
00000d3c: JUMPDEST
00000d3d: SWAP4
00000d3e: PUSH2 0x0d4a
00000d41: PUSH1 0x40
00000d43: MLOAD
00000d44: SWAP6
00000d45: DUP7
00000d46: PUSH2 0x0ce7
00000d49: JUMP
00000d4a: JUMPDEST
00000d4b: DUP2
00000d4c: DUP6
00000d4d: MSTORE
00000d4e: PUSH1 0x20
00000d50: DUP1
00000d51: DUP7
00000d52: ADD
00000d53: SWAP3
00000d54: PUSH1 0x05
00000d56: SHL
00000d57: DUP3
00000d58: ADD
00000d59: ADD
00000d5a: SWAP3
00000d5b: DUP4
00000d5c: GT
00000d5d: PUSH2 0x0015
00000d60: JUMPI
00000d61: PUSH1 0x20
00000d63: ADD
00000d64: SWAP1
00000d65: JUMPDEST
00000d66: DUP3
00000d67: DUP3
00000d68: LT
00000d69: PUSH2 0x0d73
00000d6c: JUMPI
00000d6d: POP
00000d6e: POP
00000d6f: POP
00000d70: POP
00000d71: SWAP1
00000d72: JUMP
00000d73: JUMPDEST
00000d74: DUP2
00000d75: CALLDATALOAD
00000d76: PUSH1 0x01
00000d78: PUSH1 0x01
00000d7a: PUSH1 0xa0
00000d7c: SHL
00000d7d: SUB
00000d7e: DUP2
00000d7f: AND
00000d80: DUP2
00000d81: SUB
00000d82: PUSH2 0x0015
00000d85: JUMPI
00000d86: DUP2
00000d87: MSTORE
00000d88: SWAP1
00000d89: DUP4
00000d8a: ADD
00000d8b: SWAP1
00000d8c: DUP4
00000d8d: ADD
00000d8e: PUSH2 0x0d65
00000d91: JUMP
00000d92: JUMPDEST
00000d93: SWAP1
00000d94: DUP1
00000d95: PUSH1 0x1f
00000d97: DUP4
00000d98: ADD
00000d99: SLT
00000d9a: ISZERO
00000d9b: PUSH2 0x0015
00000d9e: JUMPI
00000d9f: PUSH1 0x20
00000da1: SWAP1
00000da2: DUP3
00000da3: CALLDATALOAD
00000da4: PUSH2 0x0dac
00000da7: DUP2
00000da8: PUSH2 0x0d0a
00000dab: JUMP
00000dac: JUMPDEST
00000dad: SWAP4
00000dae: PUSH2 0x0dba
00000db1: PUSH1 0x40
00000db3: MLOAD
00000db4: SWAP6
00000db5: DUP7
00000db6: PUSH2 0x0ce7
00000db9: JUMP
00000dba: JUMPDEST
00000dbb: DUP2
00000dbc: DUP6
00000dbd: MSTORE
00000dbe: PUSH1 0x20
00000dc0: DUP1
00000dc1: DUP7
00000dc2: ADD
00000dc3: SWAP3
00000dc4: PUSH1 0x05
00000dc6: SHL
00000dc7: DUP3
00000dc8: ADD
00000dc9: ADD
00000dca: SWAP3
00000dcb: DUP4
00000dcc: GT
00000dcd: PUSH2 0x0015
00000dd0: JUMPI
00000dd1: PUSH1 0x20
00000dd3: ADD
00000dd4: SWAP1
00000dd5: JUMPDEST
00000dd6: DUP3
00000dd7: DUP3
00000dd8: LT
00000dd9: PUSH2 0x0de3
00000ddc: JUMPI
00000ddd: POP
00000dde: POP
00000ddf: POP
00000de0: POP
00000de1: SWAP1
00000de2: JUMP
00000de3: JUMPDEST
00000de4: DUP2
00000de5: CALLDATALOAD
00000de6: DUP2
00000de7: MSTORE
00000de8: SWAP1
00000de9: DUP4
00000dea: ADD
00000deb: SWAP1
00000dec: DUP4
00000ded: ADD
00000dee: PUSH2 0x0dd5
00000df1: JUMP
00000df2: JUMPDEST
00000df3: SWAP1
00000df4: PUSH1 0x40
00000df6: PUSH1 0x03
00000df8: NOT
00000df9: DUP4
00000dfa: ADD
00000dfb: SLT
00000dfc: PUSH2 0x0015
00000dff: JUMPI
00000e00: PUSH8 0xffffffffffffffff
00000e09: PUSH1 0x04
00000e0b: CALLDATALOAD
00000e0c: DUP2
00000e0d: DUP2
00000e0e: GT
00000e0f: PUSH2 0x0015
00000e12: JUMPI
00000e13: DUP4
00000e14: PUSH2 0x0e1f
00000e17: SWAP2
00000e18: PUSH1 0x04
00000e1a: ADD
00000e1b: PUSH2 0x0d22
00000e1e: JUMP
00000e1f: JUMPDEST
00000e20: SWAP3
00000e21: PUSH1 0x24
00000e23: CALLDATALOAD
00000e24: SWAP2
00000e25: DUP3
00000e26: GT
00000e27: PUSH2 0x0015
00000e2a: JUMPI
00000e2b: PUSH2 0x0492
00000e2e: SWAP2
00000e2f: PUSH1 0x04
00000e31: ADD
00000e32: PUSH2 0x0d92
00000e35: JUMP
00000e36: JUMPDEST
00000e37: CALLVALUE
00000e38: PUSH2 0x0015
00000e3b: JUMPI
00000e3c: PUSH2 0x0e4d
00000e3f: PUSH2 0x0e47
00000e42: CALLDATASIZE
00000e43: PUSH2 0x0df2
00000e46: JUMP
00000e47: JUMPDEST
00000e48: SWAP1
00000e49: PUSH2 0x3027
00000e4c: JUMP
00000e4d: JUMPDEST
00000e4e: PUSH1 0x40
00000e50: DUP1
00000e51: MLOAD
00000e52: SWAP3
00000e53: DUP4
00000e54: MSTORE
00000e55: PUSH1 0x20
00000e57: DUP4
00000e58: ADD
00000e59: SWAP2
00000e5a: SWAP1
00000e5b: SWAP2
00000e5c: MSTORE
00000e5d: SWAP1
00000e5e: RETURN
00000e5f: JUMPDEST
00000e60: CALLVALUE
00000e61: PUSH2 0x0015
00000e64: JUMPI
00000e65: PUSH1 0x20
00000e67: PUSH1 0x03
00000e69: NOT
00000e6a: CALLDATASIZE
00000e6b: ADD
00000e6c: SLT
00000e6d: PUSH2 0x0015
00000e70: JUMPI
00000e71: PUSH2 0x0e98
00000e74: PUSH2 0x0ea6
00000e77: PUSH2 0x0e81
00000e7a: PUSH1 0x04
00000e7c: CALLDATALOAD
00000e7d: PUSH2 0x3060
00000e80: JUMP
00000e81: JUMPDEST
00000e82: SWAP2
00000e83: SWAP3
00000e84: SWAP1
00000e85: PUSH1 0x40
00000e87: MLOAD
00000e88: SWAP5
00000e89: DUP6
00000e8a: SWAP5
00000e8b: PUSH1 0x60
00000e8d: DUP7
00000e8e: MSTORE
00000e8f: PUSH1 0x60
00000e91: DUP7
00000e92: ADD
00000e93: SWAP1
00000e94: PUSH2 0x03fe
00000e97: JUMP
00000e98: JUMPDEST
00000e99: SWAP1
00000e9a: DUP5
00000e9b: DUP3
00000e9c: SUB
00000e9d: PUSH1 0x20
00000e9f: DUP7
00000ea0: ADD
00000ea1: MSTORE
00000ea2: PUSH2 0x043a
00000ea5: JUMP
00000ea6: JUMPDEST
00000ea7: SWAP1
00000ea8: PUSH1 0x40
00000eaa: DUP4
00000eab: ADD
00000eac: MSTORE
00000ead: SUB
00000eae: SWAP1
00000eaf: RETURN
00000eb0: JUMPDEST
00000eb1: PUSH8 0xffffffffffffffff
00000eba: DUP2
00000ebb: GT
00000ebc: PUSH2 0x0cc6
00000ebf: JUMPI
00000ec0: PUSH1 0x1f
00000ec2: ADD
00000ec3: PUSH1 0x1f
00000ec5: NOT
00000ec6: AND
00000ec7: PUSH1 0x20
00000ec9: ADD
00000eca: SWAP1
00000ecb: JUMP
00000ecc: JUMPDEST
00000ecd: PUSH1 0x40
00000ecf: DUP1
00000ed0: PUSH1 0x03
00000ed2: NOT
00000ed3: CALLDATASIZE
00000ed4: ADD
00000ed5: SLT
00000ed6: PUSH2 0x0015
00000ed9: JUMPI
00000eda: PUSH2 0x0ee1
00000edd: PUSH2 0x066d
00000ee0: JUMP
00000ee1: JUMPDEST
00000ee2: SWAP1
00000ee3: PUSH1 0x24
00000ee5: CALLDATALOAD
00000ee6: SWAP1
00000ee7: PUSH8 0xffffffffffffffff
00000ef0: DUP3
00000ef1: GT
00000ef2: PUSH2 0x0015
00000ef5: JUMPI
00000ef6: PUSH1 0x04
00000ef8: SWAP2
00000ef9: CALLDATASIZE
00000efa: PUSH1 0x23
00000efc: DUP3
00000efd: ADD
00000efe: SLT
00000eff: ISZERO
00000f00: PUSH2 0x0015
00000f03: JUMPI
00000f04: DUP1
00000f05: DUP4
00000f06: ADD
00000f07: CALLDATALOAD
00000f08: PUSH2 0x0f10
00000f0b: DUP2
00000f0c: PUSH2 0x0eb0
00000f0f: JUMP
00000f10: JUMPDEST
00000f11: SWAP2
00000f12: PUSH2 0x0f1d
00000f15: DUP5
00000f16: MLOAD
00000f17: SWAP4
00000f18: DUP5
00000f19: PUSH2 0x0ce7
00000f1c: JUMP
00000f1d: JUMPDEST
00000f1e: DUP2
00000f1f: DUP4
00000f20: MSTORE
00000f21: CALLDATASIZE
00000f22: PUSH1 0x24
00000f24: DUP4
00000f25: DUP4
00000f26: ADD
00000f27: ADD
00000f28: GT
00000f29: PUSH2 0x0015
00000f2c: JUMPI
00000f2d: DUP2
00000f2e: PUSH0
00000f2f: SWAP3
00000f30: PUSH1 0x24
00000f32: PUSH1 0x20
00000f34: SWAP4
00000f35: ADD
00000f36: DUP4
00000f37: DUP7
00000f38: ADD
00000f39: CALLDATACOPY
00000f3a: DUP4
00000f3b: ADD
00000f3c: ADD
00000f3d: MSTORE
00000f3e: PUSH1 0x01
00000f40: PUSH1 0x01
00000f42: PUSH1 0xa0
00000f44: SHL
00000f45: SUB
00000f46: DUP1
00000f47: PUSH32 0x0000000000000000000000001cb489ef513e1cc35c4657c91853a2e6ff1957de
00000f68: AND
00000f69: DUP1
00000f6a: ADDRESS
00000f6b: EQ
00000f6c: SWAP1
00000f6d: DUP2
00000f6e: ISZERO
00000f6f: PUSH2 0x1119
00000f72: JUMPI
00000f73: JUMPDEST
00000f74: POP
00000f75: PUSH2 0x10f1
00000f78: JUMPI
00000f79: PUSH2 0x0fab
00000f7c: PUSH1 0x01
00000f7e: PUSH1 0x01
00000f80: PUSH1 0xa0
00000f82: SHL
00000f83: SUB
00000f84: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
00000fa5: SLOAD
00000fa6: AND
00000fa7: CALLER
00000fa8: EQ
00000fa9: SWAP1
00000faa: JUMP
00000fab: JUMPDEST
00000fac: ISZERO
00000fad: PUSH2 0x10c9
00000fb0: JUMPI
00000fb1: SWAP1
00000fb2: PUSH1 0x20
00000fb4: DUP5
00000fb5: SWAP3
00000fb6: DUP5
00000fb7: MLOAD
00000fb8: SWAP4
00000fb9: DUP5
00000fba: DUP1
00000fbb: SWAP3
00000fbc: PUSH32 0x52d1902d00000000000000000000000000000000000000000000000000000000
00000fdd: DUP3
00000fde: MSTORE
00000fdf: DUP10
00000fe0: AND
00000fe1: GAS
00000fe2: STATICCALL
00000fe3: PUSH0
00000fe4: SWAP3
00000fe5: DUP2
00000fe6: PUSH2 0x1098
00000fe9: JUMPI
00000fea: JUMPDEST
00000feb: POP
00000fec: PUSH2 0x102f
00000fef: JUMPI
00000ff0: POP
00000ff1: POP
00000ff2: MLOAD
00000ff3: PUSH32 0x4c9c8ce300000000000000000000000000000000000000000000000000000000
00001014: DUP2
00001015: MSTORE
00001016: PUSH1 0x01
00001018: PUSH1 0x01
0000101a: PUSH1 0xa0
0000101c: SHL
0000101d: SUB
0000101e: SWAP1
0000101f: SWAP3
00001020: AND
00001021: SWAP1
00001022: DUP3
00001023: ADD
00001024: SWAP1
00001025: DUP2
00001026: MSTORE
00001027: DUP2
00001028: SWAP1
00001029: PUSH1 0x20
0000102b: ADD
0000102c: SUB
0000102d: SWAP1
0000102e: REVERT
0000102f: JUMPDEST
00001030: DUP5
00001031: DUP5
00001032: DUP5
00001033: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00001054: DUP6
00001055: SUB
00001056: PUSH2 0x1065
00001059: JUMPI
0000105a: PUSH2 0x1063
0000105d: DUP5
0000105e: DUP5
0000105f: PUSH2 0x4111
00001062: JUMP
00001063: JUMPDEST
00001064: STOP
00001065: JUMPDEST
00001066: MLOAD
00001067: PUSH32 0xaa1d49a400000000000000000000000000000000000000000000000000000000
00001088: DUP2
00001089: MSTORE
0000108a: SWAP1
0000108b: DUP2
0000108c: ADD
0000108d: DUP5
0000108e: DUP2
0000108f: MSTORE
00001090: DUP2
00001091: SWAP1
00001092: PUSH1 0x20
00001094: ADD
00001095: SUB
00001096: SWAP1
00001097: REVERT
00001098: JUMPDEST
00001099: PUSH2 0x10bb
0000109c: SWAP2
0000109d: SWAP4
0000109e: POP
0000109f: PUSH1 0x20
000010a1: RETURNDATASIZE
000010a2: PUSH1 0x20
000010a4: GT
000010a5: PUSH2 0x10c2
000010a8: JUMPI
000010a9: JUMPDEST
000010aa: PUSH2 0x10b3
000010ad: DUP2
000010ae: DUP4
000010af: PUSH2 0x0ce7
000010b2: JUMP
000010b3: JUMPDEST
000010b4: DUP2
000010b5: ADD
000010b6: SWAP1
000010b7: PUSH2 0x2a75
000010ba: JUMP
000010bb: JUMPDEST
000010bc: SWAP2
000010bd: PUSH0
000010be: PUSH2 0x0fea
000010c1: JUMP
000010c2: JUMPDEST
000010c3: POP
000010c4: RETURNDATASIZE
000010c5: PUSH2 0x10a9
000010c8: JUMP
000010c9: JUMPDEST
000010ca: POP
000010cb: POP
000010cc: MLOAD
000010cd: PUSH32 0xe0a8b92000000000000000000000000000000000000000000000000000000000
000010ee: DUP2
000010ef: MSTORE
000010f0: REVERT
000010f1: JUMPDEST
000010f2: POP
000010f3: POP
000010f4: MLOAD
000010f5: PUSH32 0xe07c8dba00000000000000000000000000000000000000000000000000000000
00001116: DUP2
00001117: MSTORE
00001118: REVERT
00001119: JUMPDEST
0000111a: SWAP1
0000111b: POP
0000111c: DUP2
0000111d: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
0000113e: SLOAD
0000113f: AND
00001140: EQ
00001141: ISZERO
00001142: PUSH0
00001143: PUSH2 0x0f73
00001146: JUMP
00001147: JUMPDEST
00001148: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001169: PUSH0
0000116a: MSTORE
0000116b: PUSH1 0x32
0000116d: PUSH1 0x04
0000116f: MSTORE
00001170: PUSH1 0x24
00001172: PUSH0
00001173: REVERT
00001174: JUMPDEST
00001175: PUSH1 0x02
00001177: SLOAD
00001178: DUP2
00001179: LT
0000117a: ISZERO
0000117b: PUSH2 0x11a9
0000117e: JUMPI
0000117f: PUSH1 0x02
00001181: PUSH0
00001182: MSTORE
00001183: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
000011a4: ADD
000011a5: SWAP1
000011a6: PUSH0
000011a7: SWAP1
000011a8: JUMP
000011a9: JUMPDEST
000011aa: PUSH2 0x1147
000011ad: JUMP
000011ae: JUMPDEST
000011af: CALLVALUE
000011b0: PUSH2 0x0015
000011b3: JUMPI
000011b4: PUSH1 0x20
000011b6: PUSH1 0x03
000011b8: NOT
000011b9: CALLDATASIZE
000011ba: ADD
000011bb: SLT
000011bc: PUSH2 0x0015
000011bf: JUMPI
000011c0: PUSH1 0x04
000011c2: CALLDATALOAD
000011c3: PUSH1 0x02
000011c5: SLOAD
000011c6: DUP2
000011c7: LT
000011c8: ISZERO
000011c9: PUSH2 0x0015
000011cc: JUMPI
000011cd: PUSH1 0x01
000011cf: PUSH1 0x01
000011d1: PUSH1 0xa0
000011d3: SHL
000011d4: SUB
000011d5: PUSH1 0x20
000011d7: SWAP2
000011d8: PUSH1 0x02
000011da: PUSH0
000011db: MSTORE
000011dc: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
000011fd: ADD
000011fe: SLOAD
000011ff: AND
00001200: PUSH1 0x40
00001202: MLOAD
00001203: SWAP1
00001204: DUP2
00001205: MSTORE
00001206: RETURN
00001207: JUMPDEST
00001208: CALLVALUE
00001209: PUSH2 0x0015
0000120c: JUMPI
0000120d: PUSH0
0000120e: PUSH1 0x03
00001210: NOT
00001211: CALLDATASIZE
00001212: ADD
00001213: SLT
00001214: PUSH2 0x0015
00001217: JUMPI
00001218: PUSH1 0x01
0000121a: PUSH1 0x01
0000121c: PUSH1 0xa0
0000121e: SHL
0000121f: SUB
00001220: PUSH32 0x0000000000000000000000001cb489ef513e1cc35c4657c91853a2e6ff1957de
00001241: AND
00001242: ADDRESS
00001243: SUB
00001244: PUSH2 0x1271
00001247: JUMPI
00001248: PUSH1 0x20
0000124a: PUSH1 0x40
0000124c: MLOAD
0000124d: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
0000126e: DUP2
0000126f: MSTORE
00001270: RETURN
00001271: JUMPDEST
00001272: PUSH1 0x04
00001274: PUSH1 0x40
00001276: MLOAD
00001277: PUSH32 0xe07c8dba00000000000000000000000000000000000000000000000000000000
00001298: DUP2
00001299: MSTORE
0000129a: REVERT
0000129b: JUMPDEST
0000129c: CALLVALUE
0000129d: PUSH2 0x0015
000012a0: JUMPI
000012a1: PUSH1 0x20
000012a3: PUSH1 0x03
000012a5: NOT
000012a6: CALLDATASIZE
000012a7: ADD
000012a8: SLT
000012a9: PUSH2 0x0015
000012ac: JUMPI
000012ad: PUSH2 0x12b7
000012b0: PUSH1 0x04
000012b2: CALLDATALOAD
000012b3: PUSH2 0x368f
000012b6: JUMP
000012b7: JUMPDEST
000012b8: PUSH1 0x03
000012ba: SLOAD
000012bb: PUSH1 0x01
000012bd: PUSH1 0x01
000012bf: PUSH1 0xa0
000012c1: SHL
000012c2: SUB
000012c3: AND
000012c4: SWAP1
000012c5: PUSH1 0x04
000012c7: PUSH1 0x40
000012c9: DUP1
000012ca: SWAP4
000012cb: DUP2
000012cc: MLOAD
000012cd: SWAP3
000012ce: DUP4
000012cf: DUP1
000012d0: SWAP3
000012d1: PUSH32 0xa0a8045e00000000000000000000000000000000000000000000000000000000
000012f2: DUP3
000012f3: MSTORE
000012f4: GAS
000012f5: STATICCALL
000012f6: SWAP1
000012f7: DUP2
000012f8: ISZERO
000012f9: PUSH2 0x139c
000012fc: JUMPI
000012fd: PUSH0
000012fe: SWAP1
000012ff: PUSH0
00001300: SWAP3
00001301: PUSH2 0x136c
00001304: JUMPI
00001305: JUMPDEST
00001306: POP
00001307: DUP1
00001308: ISZERO
00001309: PUSH2 0x1343
0000130c: JUMPI
0000130d: PUSH2 0x04bd
00001310: SWAP2
00001311: PUSH2 0x1326
00001314: PUSH2 0x1320
00001317: PUSH2 0x132c
0000131a: SWAP4
0000131b: DUP7
0000131c: PUSH2 0x2e48
0000131f: JUMP
00001320: JUMPDEST
00001321: SWAP2
00001322: PUSH2 0x2e60
00001325: JUMP
00001326: JUMPDEST
00001327: SWAP1
00001328: PUSH2 0x2e9e
0000132b: JUMP
0000132c: JUMPDEST
0000132d: SWAP3
0000132e: MLOAD
0000132f: SWAP2
00001330: DUP3
00001331: MSTORE
00001332: PUSH1 0x20
00001334: DUP3
00001335: ADD
00001336: SWAP3
00001337: SWAP1
00001338: SWAP3
00001339: MSTORE
0000133a: SWAP1
0000133b: DUP2
0000133c: SWAP1
0000133d: PUSH1 0x40
0000133f: DUP3
00001340: ADD
00001341: SWAP1
00001342: JUMP
00001343: JUMPDEST
00001344: PUSH1 0x04
00001346: DUP5
00001347: MLOAD
00001348: PUSH32 0x68a7617000000000000000000000000000000000000000000000000000000000
00001369: DUP2
0000136a: MSTORE
0000136b: REVERT
0000136c: JUMPDEST
0000136d: SWAP1
0000136e: POP
0000136f: PUSH2 0x138e
00001372: SWAP2
00001373: POP
00001374: DUP4
00001375: RETURNDATASIZE
00001376: DUP6
00001377: GT
00001378: PUSH2 0x1395
0000137b: JUMPI
0000137c: JUMPDEST
0000137d: PUSH2 0x1386
00001380: DUP2
00001381: DUP4
00001382: PUSH2 0x0ce7
00001385: JUMP
00001386: JUMPDEST
00001387: DUP2
00001388: ADD
00001389: SWAP1
0000138a: PUSH2 0x308a
0000138d: JUMP
0000138e: JUMPDEST
0000138f: SWAP1
00001390: PUSH0
00001391: PUSH2 0x1305
00001394: JUMP
00001395: JUMPDEST
00001396: POP
00001397: RETURNDATASIZE
00001398: PUSH2 0x137c
0000139b: JUMP
0000139c: JUMPDEST
0000139d: PUSH2 0x2a84
000013a0: JUMP
000013a1: JUMPDEST
000013a2: CALLVALUE
000013a3: PUSH2 0x0015
000013a6: JUMPI
000013a7: PUSH1 0x20
000013a9: PUSH2 0x0c15
000013ac: PUSH2 0x13b4
000013af: CALLDATASIZE
000013b0: PUSH2 0x0df2
000013b3: JUMP
000013b4: JUMPDEST
000013b5: SWAP1
000013b6: PUSH2 0x30b3
000013b9: JUMP
000013ba: JUMPDEST
000013bb: CALLVALUE
000013bc: PUSH2 0x0015
000013bf: JUMPI
000013c0: PUSH0
000013c1: PUSH1 0x03
000013c3: NOT
000013c4: CALLDATASIZE
000013c5: ADD
000013c6: SLT
000013c7: PUSH2 0x0015
000013ca: JUMPI
000013cb: PUSH1 0x20
000013cd: PUSH1 0xff
000013cf: PUSH32 0xcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300
000013f0: SLOAD
000013f1: AND
000013f2: PUSH1 0x40
000013f4: MLOAD
000013f5: SWAP1
000013f6: ISZERO
000013f7: ISZERO
000013f8: DUP2
000013f9: MSTORE
000013fa: RETURN
000013fb: JUMPDEST
000013fc: CALLVALUE
000013fd: PUSH2 0x0015
00001400: JUMPI
00001401: PUSH0
00001402: PUSH1 0x03
00001404: NOT
00001405: CALLDATASIZE
00001406: ADD
00001407: SLT
00001408: PUSH2 0x0015
0000140b: JUMPI
0000140c: PUSH1 0x01
0000140e: PUSH1 0x01
00001410: PUSH1 0xa0
00001412: SHL
00001413: SUB
00001414: DUP1
00001415: PUSH32 0x0fe544e960ecab9b6f1eee0df869972d09c3c135c0d116422cce176351b52237
00001436: SLOAD
00001437: AND
00001438: CALLER
00001439: SUB
0000143a: PUSH2 0x14bd
0000143d: JUMPI
0000143e: CALLER
0000143f: ISZERO
00001440: PUSH2 0x1493
00001443: JUMPI
00001444: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
00001465: SWAP1
00001466: CALLER
00001467: SWAP1
00001468: DUP3
00001469: SLOAD
0000146a: AND
0000146b: PUSH32 0xc7c0c772add429241571afb3805861fb3cfa2af374534088b76cdb4325a87e9a
0000148c: PUSH0
0000148d: DUP1
0000148e: LOG3
0000148f: CALLER
00001490: SWAP1
00001491: SSTORE
00001492: STOP
00001493: JUMPDEST
00001494: PUSH1 0x04
00001496: PUSH1 0x40
00001498: MLOAD
00001499: PUSH32 0x8843aaaf00000000000000000000000000000000000000000000000000000000
000014ba: DUP2
000014bb: MSTORE
000014bc: REVERT
000014bd: JUMPDEST
000014be: PUSH1 0x04
000014c0: PUSH1 0x40
000014c2: MLOAD
000014c3: PUSH32 0x9ba0305d00000000000000000000000000000000000000000000000000000000
000014e4: DUP2
000014e5: MSTORE
000014e6: REVERT
000014e7: JUMPDEST
000014e8: CALLVALUE
000014e9: PUSH2 0x0015
000014ec: JUMPI
000014ed: PUSH1 0x40
000014ef: PUSH1 0x03
000014f1: NOT
000014f2: CALLDATASIZE
000014f3: ADD
000014f4: SLT
000014f5: PUSH2 0x0015
000014f8: JUMPI
000014f9: PUSH1 0x24
000014fb: CALLDATALOAD
000014fc: PUSH1 0x04
000014fe: DUP2
000014ff: LT
00001500: ISZERO
00001501: PUSH2 0x0015
00001504: JUMPI
00001505: PUSH2 0x0c15
00001508: PUSH1 0x20
0000150a: SWAP2
0000150b: PUSH1 0x04
0000150d: CALLDATALOAD
0000150e: PUSH2 0x3261
00001511: JUMP
00001512: JUMPDEST
00001513: CALLVALUE
00001514: PUSH2 0x0015
00001517: JUMPI
00001518: PUSH1 0x40
0000151a: PUSH1 0x03
0000151c: NOT
0000151d: CALLDATASIZE
0000151e: ADD
0000151f: SLT
00001520: PUSH2 0x0015
00001523: JUMPI
00001524: PUSH1 0x20
00001526: PUSH2 0x0c15
00001529: PUSH2 0x1530
0000152c: PUSH2 0x066d
0000152f: JUMP
00001530: JUMPDEST
00001531: PUSH2 0x1573
00001534: PUSH2 0x153b
00001537: PUSH2 0x0683
0000153a: JUMP
0000153b: JUMPDEST
0000153c: SWAP2
0000153d: PUSH1 0x01
0000153f: PUSH1 0x01
00001541: PUSH1 0xa0
00001543: SHL
00001544: SUB
00001545: AND
00001546: PUSH0
00001547: MSTORE
00001548: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00001569: PUSH1 0x20
0000156b: MSTORE
0000156c: PUSH1 0x40
0000156e: PUSH0
0000156f: KECCAK256
00001570: SLOAD
00001571: SWAP1
00001572: JUMP
00001573: JUMPDEST
00001574: PUSH2 0x32e0
00001577: JUMP
00001578: JUMPDEST
00001579: PUSH0
0000157a: PUSH1 0x03
0000157c: NOT
0000157d: CALLDATASIZE
0000157e: ADD
0000157f: SLT
00001580: PUSH2 0x0015
00001583: JUMPI
00001584: PUSH2 0x158b
00001587: PUSH2 0x398c
0000158a: JUMP
0000158b: JUMPDEST
0000158c: PUSH1 0x0c
0000158e: SLOAD
0000158f: DUP1
00001590: ISZERO
00001591: PUSH2 0x1670
00001594: JUMPI
00001595: CALLVALUE
00001596: SUB
00001597: PUSH2 0x1646
0000159a: JUMPI
0000159b: PUSH2 0x15a2
0000159e: PUSH2 0x398c
000015a1: JUMP
000015a2: JUMPDEST
000015a3: PUSH32 0xcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300
000015c4: PUSH1 0x01
000015c6: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
000015e7: DUP3
000015e8: SLOAD
000015e9: AND
000015ea: OR
000015eb: SWAP1
000015ec: SSTORE
000015ed: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258
0000160e: PUSH1 0x20
00001610: PUSH1 0x40
00001612: MLOAD
00001613: CALLER
00001614: DUP2
00001615: MSTORE
00001616: LOG1
00001617: PUSH2 0x161f
0000161a: CALLVALUE
0000161b: PUSH1 0x0d
0000161d: SSTORE
0000161e: JUMP
0000161f: JUMPDEST
00001620: CALLER
00001621: PUSH32 0xfd7ee573b5f0025377dc7fc832e85c1f9a1bf8c0ab7f9ba6fdc741d117b444ed
00001642: PUSH0
00001643: DUP1
00001644: LOG2
00001645: STOP
00001646: JUMPDEST
00001647: PUSH1 0x04
00001649: PUSH1 0x40
0000164b: MLOAD
0000164c: PUSH32 0x95b0fc1c00000000000000000000000000000000000000000000000000000000
0000166d: DUP2
0000166e: MSTORE
0000166f: REVERT
00001670: JUMPDEST
00001671: PUSH1 0x04
00001673: PUSH1 0x40
00001675: MLOAD
00001676: PUSH32 0x400f6a8700000000000000000000000000000000000000000000000000000000
00001697: DUP2
00001698: MSTORE
00001699: REVERT
0000169a: JUMPDEST
0000169b: CALLVALUE
0000169c: PUSH2 0x0015
0000169f: JUMPI
000016a0: PUSH0
000016a1: PUSH1 0x03
000016a3: NOT
000016a4: CALLDATASIZE
000016a5: ADD
000016a6: SLT
000016a7: PUSH2 0x0015
000016aa: JUMPI
000016ab: PUSH2 0x04bd
000016ae: PUSH2 0x16b5
000016b1: PUSH2 0x291d
000016b4: JUMP
000016b5: JUMPDEST
000016b6: PUSH1 0x40
000016b8: MLOAD
000016b9: SWAP2
000016ba: DUP3
000016bb: SWAP2
000016bc: PUSH1 0x20
000016be: DUP4
000016bf: MSTORE
000016c0: PUSH1 0x20
000016c2: DUP4
000016c3: ADD
000016c4: SWAP1
000016c5: PUSH2 0x03fe
000016c8: JUMP
000016c9: JUMPDEST
000016ca: CALLVALUE
000016cb: PUSH2 0x0015
000016ce: JUMPI
000016cf: PUSH1 0x20
000016d1: PUSH1 0x03
000016d3: NOT
000016d4: CALLDATASIZE
000016d5: ADD
000016d6: SLT
000016d7: PUSH2 0x0015
000016da: JUMPI
000016db: PUSH1 0x20
000016dd: PUSH2 0x0c15
000016e0: PUSH2 0x16e7
000016e3: PUSH2 0x066d
000016e6: JUMP
000016e7: JUMPDEST
000016e8: PUSH1 0x01
000016ea: PUSH1 0x01
000016ec: PUSH1 0xa0
000016ee: SHL
000016ef: SUB
000016f0: AND
000016f1: PUSH0
000016f2: MSTORE
000016f3: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00001714: PUSH1 0x20
00001716: MSTORE
00001717: PUSH1 0x40
00001719: PUSH0
0000171a: KECCAK256
0000171b: SLOAD
0000171c: SWAP1
0000171d: JUMP
0000171e: JUMPDEST
0000171f: CALLVALUE
00001720: PUSH2 0x0015
00001723: JUMPI
00001724: PUSH1 0x20
00001726: PUSH1 0x03
00001728: NOT
00001729: CALLDATASIZE
0000172a: ADD
0000172b: SLT
0000172c: PUSH2 0x0015
0000172f: JUMPI
00001730: PUSH1 0x01
00001732: PUSH1 0x01
00001734: PUSH1 0xa0
00001736: SHL
00001737: SUB
00001738: PUSH2 0x173f
0000173b: PUSH2 0x066d
0000173e: JUMP
0000173f: JUMPDEST
00001740: AND
00001741: PUSH0
00001742: MSTORE
00001743: PUSH32 0x5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb00
00001764: PUSH1 0x20
00001766: MSTORE
00001767: PUSH1 0x20
00001769: PUSH1 0x40
0000176b: PUSH0
0000176c: KECCAK256
0000176d: SLOAD
0000176e: PUSH1 0x40
00001770: MLOAD
00001771: SWAP1
00001772: DUP2
00001773: MSTORE
00001774: RETURN
00001775: JUMPDEST
00001776: CALLVALUE
00001777: PUSH2 0x0015
0000177a: JUMPI
0000177b: PUSH0
0000177c: PUSH1 0x03
0000177e: NOT
0000177f: CALLDATASIZE
00001780: ADD
00001781: SLT
00001782: PUSH2 0x0015
00001785: JUMPI
00001786: PUSH1 0x20
00001788: PUSH1 0x40
0000178a: MLOAD
0000178b: PUSH2 0x2710
0000178e: DUP2
0000178f: MSTORE
00001790: RETURN
00001791: JUMPDEST
00001792: SWAP2
00001793: SWAP4
00001794: PUSH2 0x17ea
00001797: PUSH2 0x0492
0000179a: SWAP7
0000179b: SWAP5
0000179c: SWAP6
0000179d: PUSH2 0x17dc
000017a0: PUSH1 0x01
000017a2: PUSH1 0x01
000017a4: PUSH1 0xa0
000017a6: SHL
000017a7: SUB
000017a8: SWAP5
000017a9: PUSH32 0x0f00000000000000000000000000000000000000000000000000000000000000
000017ca: DUP8
000017cb: MSTORE
000017cc: PUSH1 0xe0
000017ce: PUSH1 0x20
000017d0: DUP9
000017d1: ADD
000017d2: MSTORE
000017d3: PUSH1 0xe0
000017d5: DUP8
000017d6: ADD
000017d7: SWAP1
000017d8: PUSH2 0x04c1
000017db: JUMP
000017dc: JUMPDEST
000017dd: SWAP1
000017de: DUP6
000017df: DUP3
000017e0: SUB
000017e1: PUSH1 0x40
000017e3: DUP8
000017e4: ADD
000017e5: MSTORE
000017e6: PUSH2 0x04c1
000017e9: JUMP
000017ea: JUMPDEST
000017eb: SWAP5
000017ec: PUSH1 0x60
000017ee: DUP5
000017ef: ADD
000017f0: MSTORE
000017f1: AND
000017f2: PUSH1 0x80
000017f4: DUP3
000017f5: ADD
000017f6: MSTORE
000017f7: PUSH0
000017f8: PUSH1 0xa0
000017fa: DUP3
000017fb: ADD
000017fc: MSTORE
000017fd: PUSH1 0xc0
000017ff: DUP2
00001800: DUP5
00001801: SUB
00001802: SWAP2
00001803: ADD
00001804: MSTORE
00001805: PUSH2 0x043a
00001808: JUMP
00001809: JUMPDEST
0000180a: CALLVALUE
0000180b: PUSH2 0x0015
0000180e: JUMPI
0000180f: PUSH0
00001810: PUSH1 0x03
00001812: NOT
00001813: CALLDATASIZE
00001814: ADD
00001815: SLT
00001816: PUSH2 0x0015
00001819: JUMPI
0000181a: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d100
0000183b: SLOAD
0000183c: ISZERO
0000183d: DUP1
0000183e: PUSH2 0x18d1
00001841: JUMPI
00001842: JUMPDEST
00001843: ISZERO
00001844: PUSH2 0x1873
00001847: JUMPI
00001848: PUSH2 0x184f
0000184b: PUSH2 0x2b43
0000184e: JUMP
0000184f: JUMPDEST
00001850: PUSH2 0x1857
00001853: PUSH2 0x2c7b
00001856: JUMP
00001857: JUMPDEST
00001858: SWAP1
00001859: PUSH2 0x04bd
0000185c: PUSH2 0x1863
0000185f: PUSH2 0x2a09
00001862: JUMP
00001863: JUMPDEST
00001864: PUSH1 0x40
00001866: MLOAD
00001867: SWAP4
00001868: DUP5
00001869: SWAP4
0000186a: ADDRESS
0000186b: SWAP2
0000186c: CHAINID
0000186d: SWAP2
0000186e: DUP7
0000186f: PUSH2 0x1791
00001872: JUMP
00001873: JUMPDEST
00001874: PUSH1 0x64
00001876: PUSH1 0x40
00001878: MLOAD
00001879: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000189a: DUP2
0000189b: MSTORE
0000189c: PUSH1 0x20
0000189e: PUSH1 0x04
000018a0: DUP3
000018a1: ADD
000018a2: MSTORE
000018a3: PUSH1 0x15
000018a5: PUSH1 0x24
000018a7: DUP3
000018a8: ADD
000018a9: MSTORE
000018aa: PUSH32 0x4549503731323a20556e696e697469616c697a65640000000000000000000000
000018cb: PUSH1 0x44
000018cd: DUP3
000018ce: ADD
000018cf: MSTORE
000018d0: REVERT
000018d1: JUMPDEST
000018d2: POP
000018d3: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d101
000018f4: SLOAD
000018f5: ISZERO
000018f6: PUSH2 0x1842
000018f9: JUMP
000018fa: JUMPDEST
000018fb: CALLVALUE
000018fc: PUSH2 0x0015
000018ff: JUMPI
00001900: PUSH1 0x40
00001902: PUSH1 0x03
00001904: NOT
00001905: CALLDATASIZE
00001906: ADD
00001907: SLT
00001908: PUSH2 0x0015
0000190b: JUMPI
0000190c: PUSH1 0x20
0000190e: PUSH2 0x0c15
00001911: PUSH2 0x1918
00001914: PUSH2 0x0683
00001917: JUMP
00001918: JUMPDEST
00001919: PUSH1 0x04
0000191b: CALLDATALOAD
0000191c: PUSH2 0x32e0
0000191f: JUMP
00001920: JUMPDEST
00001921: CALLVALUE
00001922: PUSH2 0x0015
00001925: JUMPI
00001926: PUSH1 0x20
00001928: PUSH1 0x03
0000192a: NOT
0000192b: CALLDATASIZE
0000192c: ADD
0000192d: SLT
0000192e: PUSH2 0x0015
00001931: JUMPI
00001932: PUSH1 0x01
00001934: PUSH1 0x01
00001936: PUSH1 0xa0
00001938: SHL
00001939: SUB
0000193a: PUSH2 0x1941
0000193d: PUSH2 0x066d
00001940: JUMP
00001941: JUMPDEST
00001942: AND
00001943: PUSH0
00001944: MSTORE
00001945: PUSH1 0x08
00001947: PUSH1 0x20
00001949: MSTORE
0000194a: PUSH1 0x20
0000194c: PUSH1 0xff
0000194e: PUSH1 0x40
00001950: PUSH0
00001951: KECCAK256
00001952: SLOAD
00001953: AND
00001954: PUSH1 0x40
00001956: MLOAD
00001957: SWAP1
00001958: ISZERO
00001959: ISZERO
0000195a: DUP2
0000195b: MSTORE
0000195c: RETURN
0000195d: JUMPDEST
0000195e: CALLVALUE
0000195f: PUSH2 0x0015
00001962: JUMPI
00001963: PUSH0
00001964: PUSH1 0x03
00001966: NOT
00001967: CALLDATASIZE
00001968: ADD
00001969: SLT
0000196a: PUSH2 0x0015
0000196d: JUMPI
0000196e: PUSH1 0x40
00001970: MLOAD
00001971: PUSH0
00001972: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04
00001993: SLOAD
00001994: PUSH1 0x01
00001996: DUP2
00001997: PUSH1 0x01
00001999: SHR
0000199a: SWAP2
0000199b: PUSH1 0x01
0000199d: DUP2
0000199e: AND
0000199f: SWAP2
000019a0: DUP3
000019a1: ISZERO
000019a2: PUSH2 0x1a52
000019a5: JUMPI
000019a6: JUMPDEST
000019a7: PUSH1 0x20
000019a9: SWAP2
000019aa: PUSH1 0x20
000019ac: DUP6
000019ad: LT
000019ae: DUP5
000019af: EQ
000019b0: PUSH2 0x0636
000019b3: JUMPI
000019b4: DUP5
000019b5: DUP8
000019b6: MSTORE
000019b7: PUSH1 0x20
000019b9: DUP8
000019ba: ADD
000019bb: SWAP4
000019bc: SWAP1
000019bd: DUP2
000019be: ISZERO
000019bf: PUSH2 0x05f9
000019c2: JUMPI
000019c3: POP
000019c4: PUSH1 0x01
000019c6: EQ
000019c7: PUSH2 0x19da
000019ca: JUMPI
000019cb: PUSH2 0x04bd
000019ce: DUP7
000019cf: PUSH2 0x0575
000019d2: DUP2
000019d3: DUP9
000019d4: SUB
000019d5: DUP3
000019d6: PUSH2 0x0ce7
000019d9: JUMP
000019da: JUMPDEST
000019db: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04
000019fc: PUSH0
000019fd: SWAP1
000019fe: DUP2
000019ff: MSTORE
00001a00: SWAP5
00001a01: POP
00001a02: SWAP2
00001a03: SWAP3
00001a04: SWAP2
00001a05: PUSH32 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa
00001a26: JUMPDEST
00001a27: DUP4
00001a28: DUP7
00001a29: LT
00001a2a: PUSH2 0x1a41
00001a2d: JUMPI
00001a2e: POP
00001a2f: POP
00001a30: POP
00001a31: SWAP2
00001a32: ADD
00001a33: SWAP1
00001a34: POP
00001a35: PUSH2 0x0575
00001a38: DUP3
00001a39: PUSH2 0x04bd
00001a3c: PUSH0
00001a3d: PUSH2 0x0565
00001a40: JUMP
00001a41: JUMPDEST
00001a42: DUP1
00001a43: SLOAD
00001a44: DUP6
00001a45: DUP8
00001a46: ADD
00001a47: MSTORE
00001a48: SWAP5
00001a49: DUP3
00001a4a: ADD
00001a4b: SWAP5
00001a4c: DUP2
00001a4d: ADD
00001a4e: PUSH2 0x1a26
00001a51: JUMP
00001a52: JUMPDEST
00001a53: SWAP3
00001a54: PUSH1 0x7f
00001a56: AND
00001a57: SWAP3
00001a58: PUSH2 0x19a6
00001a5b: JUMP
00001a5c: JUMPDEST
00001a5d: CALLVALUE
00001a5e: PUSH2 0x0015
00001a61: JUMPI
00001a62: PUSH1 0x60
00001a64: PUSH1 0x03
00001a66: NOT
00001a67: CALLDATASIZE
00001a68: ADD
00001a69: SLT
00001a6a: PUSH2 0x0015
00001a6d: JUMPI
00001a6e: PUSH8 0xffffffffffffffff
00001a77: PUSH1 0x04
00001a79: DUP1
00001a7a: CALLDATALOAD
00001a7b: DUP3
00001a7c: DUP2
00001a7d: GT
00001a7e: PUSH2 0x0015
00001a81: JUMPI
00001a82: PUSH2 0x1a8e
00001a85: SWAP1
00001a86: CALLDATASIZE
00001a87: SWAP1
00001a88: DUP4
00001a89: ADD
00001a8a: PUSH2 0x0d22
00001a8d: JUMP
00001a8e: JUMPDEST
00001a8f: SWAP2
00001a90: PUSH1 0x24
00001a92: CALLDATALOAD
00001a93: SWAP1
00001a94: DUP2
00001a95: GT
00001a96: PUSH2 0x0015
00001a99: JUMPI
00001a9a: PUSH2 0x1aa6
00001a9d: SWAP1
00001a9e: CALLDATASIZE
00001a9f: SWAP1
00001aa0: DUP4
00001aa1: ADD
00001aa2: PUSH2 0x0d92
00001aa5: JUMP
00001aa6: JUMPDEST
00001aa7: SWAP2
00001aa8: PUSH2 0x1aaf
00001aab: PUSH2 0x0699
00001aae: JUMP
00001aaf: JUMPDEST
00001ab0: PUSH2 0x1ab7
00001ab3: PUSH2 0x398c
00001ab6: JUMP
00001ab7: JUMPDEST
00001ab8: CALLER
00001ab9: PUSH0
00001aba: MSTORE
00001abb: PUSH1 0x01
00001abd: PUSH1 0x20
00001abf: MSTORE
00001ac0: PUSH1 0x40
00001ac2: SWAP4
00001ac3: PUSH1 0xff
00001ac5: DUP6
00001ac6: PUSH0
00001ac7: KECCAK256
00001ac8: SLOAD
00001ac9: AND
00001aca: ISZERO
00001acb: PUSH2 0x1d19
00001ace: JUMPI
00001acf: PUSH2 0x1ad6
00001ad2: PUSH2 0x39e1
00001ad5: JUMP
00001ad6: JUMPDEST
00001ad7: DUP3
00001ad8: MLOAD
00001ad9: DUP2
00001ada: MLOAD
00001adb: SUB
00001adc: PUSH2 0x1cf1
00001adf: JUMPI
00001ae0: PUSH1 0x01
00001ae2: PUSH1 0x01
00001ae4: PUSH1 0xa0
00001ae6: SHL
00001ae7: SUB
00001ae8: DUP3
00001ae9: AND
00001aea: SWAP5
00001aeb: DUP6
00001aec: ISZERO
00001aed: PUSH2 0x1cc9
00001af0: JUMPI
00001af1: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00001b12: SLOAD
00001b13: ISZERO
00001b14: SWAP5
00001b15: PUSH2 0x1b1c
00001b18: PUSH2 0x3639
00001b1b: JUMP
00001b1c: JUMPDEST
00001b1d: DUP7
00001b1e: PUSH2 0x1b27
00001b21: DUP6
00001b22: DUP9
00001b23: PUSH2 0x3027
00001b26: JUMP
00001b27: JUMPDEST
00001b28: SWAP7
00001b29: SWAP1
00001b2a: SWAP9
00001b2b: PUSH2 0x1c50
00001b2e: JUMPI
00001b2f: JUMPDEST
00001b30: PUSH2 0x1b60
00001b33: PUSH2 0x1b5c
00001b36: PUSH2 0x1b57
00001b39: PUSH2 0x1b42
00001b3c: DUP11
00001b3d: DUP14
00001b3e: PUSH2 0x30a6
00001b41: JUMP
00001b42: JUMPDEST
00001b43: PUSH16 0xffffffffffffffffffffffffffffffff
00001b54: AND
00001b55: SWAP1
00001b56: JUMP
00001b57: JUMPDEST
00001b58: PUSH2 0x3af9
00001b5b: JUMP
00001b5c: JUMPDEST
00001b5d: ISZERO
00001b5e: SWAP1
00001b5f: JUMP
00001b60: JUMPDEST
00001b61: PUSH2 0x1c28
00001b64: JUMPI
00001b65: DUP9
00001b66: ISZERO
00001b67: PUSH2 0x1c00
00001b6a: JUMPI
00001b6b: PUSH2 0x1b77
00001b6e: SWAP1
00001b6f: DUP8
00001b70: DUP11
00001b71: DUP9
00001b72: DUP12
00001b73: PUSH2 0x3ba5
00001b76: JUMP
00001b77: JUMPDEST
00001b78: PUSH2 0x1b7f
00001b7b: PUSH2 0x3cd5
00001b7e: JUMP
00001b7f: JUMPDEST
00001b80: PUSH2 0x1b87
00001b83: PUSH2 0x3639
00001b86: JUMP
00001b87: JUMPDEST
00001b88: SWAP1
00001b89: ISZERO
00001b8a: SWAP2
00001b8b: DUP3
00001b8c: PUSH2 0x1bf6
00001b8f: JUMPI
00001b90: JUMPDEST
00001b91: POP
00001b92: POP
00001b93: PUSH2 0x1bd0
00001b96: JUMPI
00001b97: POP
00001b98: PUSH32 0x6fa8234a2db30e7490b3e314f2d1783c1de3ec2bf7be5f873d2a9d4f7b8bdf3d
00001bb9: SWAP4
00001bba: SWAP3
00001bbb: SWAP2
00001bbc: PUSH2 0x1bcb
00001bbf: SWAP2
00001bc0: MLOAD
00001bc1: SWAP4
00001bc2: DUP5
00001bc3: SWAP4
00001bc4: CALLER
00001bc5: SWAP8
00001bc6: DUP6
00001bc7: PUSH2 0x33a3
00001bca: JUMP
00001bcb: JUMPDEST
00001bcc: SUB
00001bcd: SWAP1
00001bce: LOG3
00001bcf: STOP
00001bd0: JUMPDEST
00001bd1: SWAP1
00001bd2: MLOAD
00001bd3: PUSH31 0xb6e3b800000000000000000000000000000000000000000000000000000000
00001bf3: DUP2
00001bf4: MSTORE
00001bf5: REVERT
00001bf6: JUMPDEST
00001bf7: GT
00001bf8: SWAP1
00001bf9: POP
00001bfa: PUSH0
00001bfb: DUP1
00001bfc: PUSH2 0x1b90
00001bff: JUMP
00001c00: JUMPDEST
00001c01: DUP4
00001c02: DUP6
00001c03: MLOAD
00001c04: PUSH32 0xc48af02400000000000000000000000000000000000000000000000000000000
00001c25: DUP2
00001c26: MSTORE
00001c27: REVERT
00001c28: JUMPDEST
00001c29: DUP4
00001c2a: DUP6
00001c2b: MLOAD
00001c2c: PUSH32 0xa74c1c5f00000000000000000000000000000000000000000000000000000000
00001c4d: DUP2
00001c4e: MSTORE
00001c4f: REVERT
00001c50: JUMPDEST
00001c51: PUSH2 0x1cc4
00001c54: PUSH2 0x1c82
00001c57: PUSH2 0x1c6f
00001c5a: PUSH2 0x1c7c
00001c5d: PUSH2 0x1c6f
00001c60: PUSH1 0x06
00001c62: SLOAD
00001c63: PUSH8 0xffffffffffffffff
00001c6c: AND
00001c6d: SWAP1
00001c6e: JUMP
00001c6f: JUMPDEST
00001c70: PUSH8 0xffffffffffffffff
00001c79: AND
00001c7a: SWAP1
00001c7b: JUMP
00001c7c: JUMPDEST
00001c7d: TIMESTAMP
00001c7e: PUSH2 0x30a6
00001c81: JUMP
00001c82: JUMPDEST
00001c83: PUSH32 0xffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff
00001ca4: PUSH16 0xffffffffffffffff0000000000000000
00001cb5: PUSH1 0x06
00001cb7: SLOAD
00001cb8: SWAP3
00001cb9: PUSH1 0x40
00001cbb: SHL
00001cbc: AND
00001cbd: SWAP2
00001cbe: AND
00001cbf: OR
00001cc0: PUSH1 0x06
00001cc2: SSTORE
00001cc3: JUMP
00001cc4: JUMPDEST
00001cc5: PUSH2 0x1b2f
00001cc8: JUMP
00001cc9: JUMPDEST
00001cca: DUP5
00001ccb: SWAP1
00001ccc: MLOAD
00001ccd: PUSH32 0x9c8d2cd200000000000000000000000000000000000000000000000000000000
00001cee: DUP2
00001cef: MSTORE
00001cf0: REVERT
00001cf1: JUMPDEST
00001cf2: DUP4
00001cf3: DUP6
00001cf4: MLOAD
00001cf5: PUSH32 0xa24a13a600000000000000000000000000000000000000000000000000000000
00001d16: DUP2
00001d17: MSTORE
00001d18: REVERT
00001d19: JUMPDEST
00001d1a: DUP4
00001d1b: DUP6
00001d1c: MLOAD
00001d1d: PUSH32 0x0afa41a800000000000000000000000000000000000000000000000000000000
00001d3e: DUP2
00001d3f: MSTORE
00001d40: REVERT
00001d41: JUMPDEST
00001d42: CALLVALUE
00001d43: PUSH2 0x0015
00001d46: JUMPI
00001d47: PUSH0
00001d48: PUSH1 0x03
00001d4a: NOT
00001d4b: CALLDATASIZE
00001d4c: ADD
00001d4d: SLT
00001d4e: PUSH2 0x0015
00001d51: JUMPI
00001d52: PUSH1 0x20
00001d54: PUSH1 0x0c
00001d56: SLOAD
00001d57: PUSH1 0x40
00001d59: MLOAD
00001d5a: SWAP1
00001d5b: DUP2
00001d5c: MSTORE
00001d5d: RETURN
00001d5e: JUMPDEST
00001d5f: CALLVALUE
00001d60: PUSH2 0x0015
00001d63: JUMPI
00001d64: PUSH1 0x40
00001d66: PUSH1 0x03
00001d68: NOT
00001d69: CALLDATASIZE
00001d6a: ADD
00001d6b: SLT
00001d6c: PUSH2 0x0015
00001d6f: JUMPI
00001d70: PUSH2 0x06d5
00001d73: PUSH2 0x1d7a
00001d76: PUSH2 0x066d
00001d79: JUMP
00001d7a: JUMPDEST
00001d7b: PUSH1 0x24
00001d7d: CALLDATALOAD
00001d7e: SWAP1
00001d7f: CALLER
00001d80: PUSH2 0x3479
00001d83: JUMP
00001d84: JUMPDEST
00001d85: CALLVALUE
00001d86: PUSH2 0x0015
00001d89: JUMPI
00001d8a: PUSH0
00001d8b: PUSH1 0x03
00001d8d: NOT
00001d8e: CALLDATASIZE
00001d8f: ADD
00001d90: SLT
00001d91: PUSH2 0x0015
00001d94: JUMPI
00001d95: PUSH1 0x40
00001d97: MLOAD
00001d98: PUSH1 0x40
00001d9a: DUP2
00001d9b: ADD
00001d9c: SWAP1
00001d9d: DUP1
00001d9e: DUP3
00001d9f: LT
00001da0: PUSH8 0xffffffffffffffff
00001da9: DUP4
00001daa: GT
00001dab: OR
00001dac: PUSH2 0x0cc6
00001daf: JUMPI
00001db0: PUSH2 0x04bd
00001db3: SWAP2
00001db4: PUSH1 0x40
00001db6: MSTORE
00001db7: PUSH1 0x05
00001db9: DUP2
00001dba: MSTORE
00001dbb: PUSH32 0x352e302e30000000000000000000000000000000000000000000000000000000
00001ddc: PUSH1 0x20
00001dde: DUP3
00001ddf: ADD
00001de0: MSTORE
00001de1: PUSH1 0x40
00001de3: MLOAD
00001de4: SWAP2
00001de5: DUP3
00001de6: SWAP2
00001de7: PUSH1 0x20
00001de9: DUP4
00001dea: MSTORE
00001deb: PUSH1 0x20
00001ded: DUP4
00001dee: ADD
00001def: SWAP1
00001df0: PUSH2 0x04c1
00001df3: JUMP
00001df4: JUMPDEST
00001df5: CALLVALUE
00001df6: PUSH2 0x0015
00001df9: JUMPI
00001dfa: PUSH1 0x20
00001dfc: PUSH1 0x03
00001dfe: NOT
00001dff: CALLDATASIZE
00001e00: ADD
00001e01: SLT
00001e02: PUSH2 0x0015
00001e05: JUMPI
00001e06: PUSH1 0x20
00001e08: PUSH2 0x0a0e
00001e0b: PUSH2 0x1e12
00001e0e: PUSH2 0x066d
00001e11: JUMP
00001e12: JUMPDEST
00001e13: PUSH1 0x01
00001e15: PUSH1 0x01
00001e17: PUSH1 0xa0
00001e19: SHL
00001e1a: SUB
00001e1b: AND
00001e1c: PUSH0
00001e1d: MSTORE
00001e1e: PUSH0
00001e1f: PUSH1 0x20
00001e21: MSTORE
00001e22: PUSH1 0xff
00001e24: PUSH1 0x40
00001e26: PUSH0
00001e27: KECCAK256
00001e28: SLOAD
00001e29: PUSH1 0x08
00001e2b: SHR
00001e2c: AND
00001e2d: SWAP1
00001e2e: JUMP
00001e2f: JUMPDEST
00001e30: CALLVALUE
00001e31: PUSH2 0x0015
00001e34: JUMPI
00001e35: PUSH0
00001e36: PUSH1 0x03
00001e38: NOT
00001e39: CALLDATASIZE
00001e3a: ADD
00001e3b: SLT
00001e3c: PUSH2 0x0015
00001e3f: JUMPI
00001e40: PUSH1 0x20
00001e42: PUSH1 0x01
00001e44: PUSH1 0x01
00001e46: PUSH1 0xa0
00001e48: SHL
00001e49: SUB
00001e4a: PUSH1 0x03
00001e4c: SLOAD
00001e4d: AND
00001e4e: PUSH1 0x40
00001e50: MLOAD
00001e51: SWAP1
00001e52: DUP2
00001e53: MSTORE
00001e54: RETURN
00001e55: JUMPDEST
00001e56: CALLVALUE
00001e57: PUSH2 0x0015
00001e5a: JUMPI
00001e5b: PUSH0
00001e5c: PUSH1 0x03
00001e5e: NOT
00001e5f: CALLDATASIZE
00001e60: ADD
00001e61: SLT
00001e62: PUSH2 0x0015
00001e65: JUMPI
00001e66: PUSH1 0x20
00001e68: PUSH1 0x09
00001e6a: SLOAD
00001e6b: PUSH1 0x40
00001e6d: MLOAD
00001e6e: SWAP1
00001e6f: DUP2
00001e70: MSTORE
00001e71: RETURN
00001e72: JUMPDEST
00001e73: CALLVALUE
00001e74: PUSH2 0x0015
00001e77: JUMPI
00001e78: PUSH1 0x20
00001e7a: PUSH1 0x03
00001e7c: NOT
00001e7d: CALLDATASIZE
00001e7e: ADD
00001e7f: SLT
00001e80: PUSH2 0x0015
00001e83: JUMPI
00001e84: PUSH2 0x04bd
00001e87: PUSH2 0x1e8e
00001e8a: PUSH2 0x066d
00001e8d: JUMP
00001e8e: JUMPDEST
00001e8f: PUSH1 0x01
00001e91: PUSH1 0x01
00001e93: PUSH1 0xa0
00001e95: SHL
00001e96: SUB
00001e97: PUSH1 0x40
00001e99: SWAP2
00001e9a: PUSH0
00001e9b: DUP4
00001e9c: DUP1
00001e9d: MLOAD
00001e9e: PUSH2 0x1ea6
00001ea1: DUP2
00001ea2: PUSH2 0x0caa
00001ea5: JUMP
00001ea6: JUMPDEST
00001ea7: DUP3
00001ea8: DUP2
00001ea9: MSTORE
00001eaa: DUP3
00001eab: PUSH1 0x20
00001ead: DUP3
00001eae: ADD
00001eaf: MSTORE
00001eb0: ADD
00001eb1: MSTORE
00001eb2: AND
00001eb3: PUSH0
00001eb4: MSTORE
00001eb5: PUSH0
00001eb6: PUSH1 0x20
00001eb8: MSTORE
00001eb9: DUP1
00001eba: PUSH0
00001ebb: KECCAK256
00001ebc: SWAP1
00001ebd: PUSH8 0xffffffffffffffff
00001ec6: DUP2
00001ec7: MLOAD
00001ec8: SWAP3
00001ec9: PUSH2 0x1ed1
00001ecc: DUP5
00001ecd: PUSH2 0x0caa
00001ed0: JUMP
00001ed1: JUMPDEST
00001ed2: SLOAD
00001ed3: PUSH1 0xff
00001ed5: DUP2
00001ed6: AND
00001ed7: ISZERO
00001ed8: ISZERO
00001ed9: DUP5
00001eda: MSTORE
00001edb: PUSH1 0xff
00001edd: DUP2
00001ede: PUSH1 0x08
00001ee0: SHR
00001ee1: AND
00001ee2: ISZERO
00001ee3: ISZERO
00001ee4: PUSH1 0x20
00001ee6: DUP6
00001ee7: ADD
00001ee8: MSTORE
00001ee9: PUSH1 0x10
00001eeb: SHR
00001eec: AND
00001eed: DUP2
00001eee: DUP4
00001eef: ADD
00001ef0: MSTORE
00001ef1: MLOAD
00001ef2: SWAP2
00001ef3: DUP3
00001ef4: SWAP2
00001ef5: DUP3
00001ef6: SWAP2
00001ef7: SWAP1
00001ef8: SWAP2
00001ef9: PUSH1 0x40
00001efb: PUSH8 0xffffffffffffffff
00001f04: DUP2
00001f05: PUSH1 0x60
00001f07: DUP5
00001f08: ADD
00001f09: SWAP6
00001f0a: DUP1
00001f0b: MLOAD
00001f0c: ISZERO
00001f0d: ISZERO
00001f0e: DUP6
00001f0f: MSTORE
00001f10: PUSH1 0x20
00001f12: DUP2
00001f13: ADD
00001f14: MLOAD
00001f15: ISZERO
00001f16: ISZERO
00001f17: PUSH1 0x20
00001f19: DUP7
00001f1a: ADD
00001f1b: MSTORE
00001f1c: ADD
00001f1d: MLOAD
00001f1e: AND
00001f1f: SWAP2
00001f20: ADD
00001f21: MSTORE
00001f22: JUMP
00001f23: JUMPDEST
00001f24: CALLVALUE
00001f25: PUSH2 0x0015
00001f28: JUMPI
00001f29: PUSH0
00001f2a: PUSH1 0x03
00001f2c: NOT
00001f2d: CALLDATASIZE
00001f2e: ADD
00001f2f: SLT
00001f30: PUSH2 0x0015
00001f33: JUMPI
00001f34: PUSH1 0x20
00001f36: PUSH2 0x0a0e
00001f39: PUSH1 0x01
00001f3b: PUSH1 0x01
00001f3d: PUSH1 0xa0
00001f3f: SHL
00001f40: SUB
00001f41: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
00001f62: SLOAD
00001f63: AND
00001f64: CALLER
00001f65: EQ
00001f66: SWAP1
00001f67: JUMP
00001f68: JUMPDEST
00001f69: CALLVALUE
00001f6a: PUSH2 0x0015
00001f6d: JUMPI
00001f6e: PUSH1 0x20
00001f70: PUSH1 0x03
00001f72: NOT
00001f73: CALLDATASIZE
00001f74: ADD
00001f75: SLT
00001f76: PUSH2 0x0015
00001f79: JUMPI
00001f7a: PUSH2 0x1f81
00001f7d: PUSH2 0x066d
00001f80: JUMP
00001f81: JUMPDEST
00001f82: PUSH2 0x1fb4
00001f85: PUSH1 0x01
00001f87: PUSH1 0x01
00001f89: PUSH1 0xa0
00001f8b: SHL
00001f8c: SUB
00001f8d: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
00001fae: SLOAD
00001faf: AND
00001fb0: CALLER
00001fb1: EQ
00001fb2: SWAP1
00001fb3: JUMP
00001fb4: JUMPDEST
00001fb5: ISZERO
00001fb6: PUSH2 0x2031
00001fb9: JUMPI
00001fba: DUP1
00001fbb: PUSH32 0x0fe544e960ecab9b6f1eee0df869972d09c3c135c0d116422cce176351b52237
00001fdc: SSTORE
00001fdd: PUSH1 0x01
00001fdf: PUSH1 0x01
00001fe1: PUSH1 0xa0
00001fe3: SHL
00001fe4: SUB
00001fe5: DUP1
00001fe6: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
00002007: SLOAD
00002008: AND
00002009: SWAP2
0000200a: AND
0000200b: SWAP1
0000200c: PUSH32 0xa39cc5eb22d0f34d8beaefee8a3f17cc229c1a1d1ef87a5ad47313487b1c4f0d
0000202d: PUSH0
0000202e: DUP1
0000202f: LOG3
00002030: STOP
00002031: JUMPDEST
00002032: PUSH1 0x04
00002034: PUSH1 0x40
00002036: MLOAD
00002037: PUSH32 0xe0a8b92000000000000000000000000000000000000000000000000000000000
00002058: DUP2
00002059: MSTORE
0000205a: REVERT
0000205b: JUMPDEST
0000205c: PUSH1 0xff
0000205e: DUP2
0000205f: AND
00002060: SUB
00002061: PUSH2 0x0015
00002064: JUMPI
00002065: JUMP
00002066: JUMPDEST
00002067: CALLVALUE
00002068: PUSH2 0x0015
0000206b: JUMPI
0000206c: PUSH1 0xe0
0000206e: PUSH1 0x03
00002070: NOT
00002071: CALLDATASIZE
00002072: ADD
00002073: SLT
00002074: PUSH2 0x0015
00002077: JUMPI
00002078: PUSH2 0x207f
0000207b: PUSH2 0x066d
0000207e: JUMP
0000207f: JUMPDEST
00002080: PUSH2 0x2087
00002083: PUSH2 0x0683
00002086: JUMP
00002087: JUMPDEST
00002088: PUSH1 0x44
0000208a: CALLDATALOAD
0000208b: SWAP1
0000208c: PUSH1 0x64
0000208e: CALLDATALOAD
0000208f: PUSH1 0x84
00002091: CALLDATALOAD
00002092: PUSH2 0x209a
00002095: DUP2
00002096: PUSH2 0x205b
00002099: JUMP
0000209a: JUMPDEST
0000209b: DUP2
0000209c: TIMESTAMP
0000209d: GT
0000209e: PUSH2 0x21da
000020a1: JUMPI
000020a2: SWAP1
000020a3: PUSH2 0x2154
000020a6: PUSH2 0x217a
000020a9: SWAP3
000020aa: PUSH2 0x2162
000020ad: PUSH2 0x20ef
000020b0: DUP9
000020b1: PUSH1 0x01
000020b3: PUSH1 0x01
000020b5: PUSH1 0xa0
000020b7: SHL
000020b8: SUB
000020b9: AND
000020ba: PUSH0
000020bb: MSTORE
000020bc: PUSH32 0x5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb00
000020dd: PUSH1 0x20
000020df: MSTORE
000020e0: PUSH1 0x40
000020e2: PUSH0
000020e3: KECCAK256
000020e4: DUP1
000020e5: SLOAD
000020e6: SWAP1
000020e7: PUSH1 0x01
000020e9: DUP3
000020ea: ADD
000020eb: SWAP1
000020ec: SSTORE
000020ed: SWAP1
000020ee: JUMP
000020ef: JUMPDEST
000020f0: SWAP4
000020f1: PUSH1 0x40
000020f3: MLOAD
000020f4: SWAP4
000020f5: DUP5
000020f6: SWAP2
000020f7: PUSH1 0x20
000020f9: DUP4
000020fa: ADD
000020fb: SWAP7
000020fc: DUP11
000020fd: DUP11
000020fe: DUP14
000020ff: DUP11
00002100: SWAP2
00002101: SWAP6
00002102: SWAP5
00002103: SWAP4
00002104: SWAP1
00002105: SWAP3
00002106: PUSH1 0xa0
00002108: SWAP4
00002109: PUSH1 0xc0
0000210b: DUP5
0000210c: ADD
0000210d: SWAP8
0000210e: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9
0000212f: DUP6
00002130: MSTORE
00002131: PUSH1 0x01
00002133: PUSH1 0x01
00002135: PUSH1 0xa0
00002137: SHL
00002138: SUB
00002139: DUP1
0000213a: SWAP3
0000213b: AND
0000213c: PUSH1 0x20
0000213e: DUP7
0000213f: ADD
00002140: MSTORE
00002141: AND
00002142: PUSH1 0x40
00002144: DUP5
00002145: ADD
00002146: MSTORE
00002147: PUSH1 0x60
00002149: DUP4
0000214a: ADD
0000214b: MSTORE
0000214c: PUSH1 0x80
0000214e: DUP3
0000214f: ADD
00002150: MSTORE
00002151: ADD
00002152: MSTORE
00002153: JUMP
00002154: JUMPDEST
00002155: SUB
00002156: PUSH1 0x1f
00002158: NOT
00002159: DUP2
0000215a: ADD
0000215b: DUP5
0000215c: MSTORE
0000215d: DUP4
0000215e: PUSH2 0x0ce7
00002161: JUMP
00002162: JUMPDEST
00002163: PUSH2 0x2175
00002166: PUSH1 0xc4
00002168: CALLDATALOAD
00002169: SWAP4
0000216a: PUSH1 0xa4
0000216c: CALLDATALOAD
0000216d: SWAP4
0000216e: MLOAD
0000216f: SWAP1
00002170: KECCAK256
00002171: PUSH2 0x3dcd
00002174: JUMP
00002175: JUMPDEST
00002176: PUSH2 0x3e0e
00002179: JUMP
0000217a: JUMPDEST
0000217b: PUSH1 0x01
0000217d: PUSH1 0x01
0000217f: PUSH1 0xa0
00002181: SHL
00002182: SUB
00002183: DUP1
00002184: DUP6
00002185: AND
00002186: SWAP1
00002187: DUP3
00002188: AND
00002189: SUB
0000218a: PUSH2 0x2197
0000218d: JUMPI
0000218e: POP
0000218f: PUSH2 0x1063
00002192: SWAP3
00002193: PUSH2 0x3ff0
00002196: JUMP
00002197: JUMPDEST
00002198: PUSH1 0x40
0000219a: MLOAD
0000219b: PUSH32 0x4b800e4600000000000000000000000000000000000000000000000000000000
000021bc: DUP2
000021bd: MSTORE
000021be: PUSH1 0x01
000021c0: PUSH1 0x01
000021c2: PUSH1 0xa0
000021c4: SHL
000021c5: SUB
000021c6: SWAP2
000021c7: DUP3
000021c8: AND
000021c9: PUSH1 0x04
000021cb: DUP3
000021cc: ADD
000021cd: MSTORE
000021ce: SWAP1
000021cf: DUP5
000021d0: AND
000021d1: PUSH1 0x24
000021d3: DUP3
000021d4: ADD
000021d5: MSTORE
000021d6: PUSH1 0x44
000021d8: SWAP1
000021d9: REVERT
000021da: JUMPDEST
000021db: PUSH1 0x24
000021dd: DUP3
000021de: PUSH1 0x40
000021e0: MLOAD
000021e1: SWAP1
000021e2: PUSH32 0x6279130200000000000000000000000000000000000000000000000000000000
00002203: DUP3
00002204: MSTORE
00002205: PUSH1 0x04
00002207: DUP3
00002208: ADD
00002209: MSTORE
0000220a: REVERT
0000220b: JUMPDEST
0000220c: CALLVALUE
0000220d: PUSH2 0x0015
00002210: JUMPI
00002211: PUSH0
00002212: PUSH1 0x03
00002214: NOT
00002215: CALLDATASIZE
00002216: ADD
00002217: SLT
00002218: PUSH2 0x0015
0000221b: JUMPI
0000221c: PUSH1 0x20
0000221e: PUSH1 0x40
00002220: MLOAD
00002221: PUSH4 0x3b9aca00
00002226: DUP2
00002227: MSTORE
00002228: RETURN
00002229: JUMPDEST
0000222a: CALLVALUE
0000222b: PUSH2 0x0015
0000222e: JUMPI
0000222f: PUSH1 0x20
00002231: PUSH1 0x03
00002233: NOT
00002234: CALLDATASIZE
00002235: ADD
00002236: SLT
00002237: PUSH2 0x0015
0000223a: JUMPI
0000223b: PUSH1 0x04
0000223d: CALLDATALOAD
0000223e: DUP1
0000223f: ISZERO
00002240: PUSH2 0x2397
00002243: JUMPI
00002244: DUP1
00002245: PUSH2 0x227e
00002248: CALLER
00002249: PUSH1 0x01
0000224b: PUSH1 0x01
0000224d: PUSH1 0xa0
0000224f: SHL
00002250: SUB
00002251: AND
00002252: PUSH0
00002253: MSTORE
00002254: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00002275: PUSH1 0x20
00002277: MSTORE
00002278: PUSH1 0x40
0000227a: PUSH0
0000227b: KECCAK256
0000227c: SWAP1
0000227d: JUMP
0000227e: JUMPDEST
0000227f: SLOAD
00002280: LT
00002281: PUSH2 0x236d
00002284: JUMPI
00002285: PUSH2 0x228d
00002288: DUP2
00002289: PUSH2 0x3060
0000228c: JUMP
0000228d: JUMPDEST
0000228e: SWAP3
0000228f: DUP4
00002290: SWAP3
00002291: SWAP2
00002292: SWAP3
00002293: PUSH2 0x234c
00002296: JUMPI
00002297: JUMPDEST
00002298: PUSH2 0x22aa
0000229b: PUSH2 0x22a4
0000229e: DUP6
0000229f: DUP4
000022a0: PUSH2 0x301a
000022a3: JUMP
000022a4: JUMPDEST
000022a5: CALLER
000022a6: PUSH2 0x3e26
000022a9: JUMP
000022aa: JUMPDEST
000022ab: PUSH0
000022ac: JUMPDEST
000022ad: DUP3
000022ae: MLOAD
000022af: DUP2
000022b0: LT
000022b1: ISZERO
000022b2: PUSH2 0x2312
000022b5: JUMPI
000022b6: DUP1
000022b7: PUSH2 0x22c2
000022ba: PUSH1 0x01
000022bc: SWAP3
000022bd: DUP7
000022be: PUSH2 0x2a61
000022c1: JUMP
000022c2: JUMPDEST
000022c3: MLOAD
000022c4: PUSH2 0x22ce
000022c7: JUMPI
000022c8: JUMPDEST
000022c9: ADD
000022ca: PUSH2 0x22ac
000022cd: JUMP
000022ce: JUMPDEST
000022cf: PUSH2 0x230d
000022d2: PUSH2 0x22fa
000022d5: PUSH2 0x22ee
000022d8: PUSH2 0x22e1
000022db: DUP5
000022dc: DUP9
000022dd: PUSH2 0x2a61
000022e0: JUMP
000022e1: JUMPDEST
000022e2: MLOAD
000022e3: PUSH1 0x01
000022e5: PUSH1 0x01
000022e7: PUSH1 0xa0
000022e9: SHL
000022ea: SUB
000022eb: AND
000022ec: SWAP1
000022ed: JUMP
000022ee: JUMPDEST
000022ef: PUSH1 0x01
000022f1: PUSH1 0x01
000022f3: PUSH1 0xa0
000022f5: SHL
000022f6: SUB
000022f7: AND
000022f8: SWAP1
000022f9: JUMP
000022fa: JUMPDEST
000022fb: PUSH2 0x2304
000022fe: DUP4
000022ff: DUP9
00002300: PUSH2 0x2a61
00002303: JUMP
00002304: JUMPDEST
00002305: MLOAD
00002306: SWAP1
00002307: CALLER
00002308: SWAP1
00002309: PUSH2 0x3f5c
0000230c: JUMP
0000230d: JUMPDEST
0000230e: PUSH2 0x22c8
00002311: JUMP
00002312: JUMPDEST
00002313: POP
00002314: SWAP3
00002315: PUSH2 0x2347
00002318: PUSH32 0x5db1997bc8fc1e1e4bcea6438a652310893f2756d6138bece7142ac25e9187dd
00002339: SWAP4
0000233a: PUSH1 0x40
0000233c: MLOAD
0000233d: SWAP4
0000233e: DUP5
0000233f: SWAP4
00002340: CALLER
00002341: SWAP8
00002342: DUP6
00002343: PUSH2 0x33a3
00002346: JUMP
00002347: JUMPDEST
00002348: SUB
00002349: SWAP1
0000234a: LOG2
0000234b: STOP
0000234c: JUMPDEST
0000234d: PUSH2 0x2368
00002350: DUP5
00002351: PUSH2 0x2362
00002354: PUSH1 0x0e
00002356: SLOAD
00002357: PUSH1 0x01
00002359: PUSH1 0x01
0000235b: PUSH1 0xa0
0000235d: SHL
0000235e: SUB
0000235f: AND
00002360: SWAP1
00002361: JUMP
00002362: JUMPDEST
00002363: CALLER
00002364: PUSH2 0x3479
00002367: JUMP
00002368: JUMPDEST
00002369: PUSH2 0x2297
0000236c: JUMP
0000236d: JUMPDEST
0000236e: PUSH1 0x04
00002370: PUSH1 0x40
00002372: MLOAD
00002373: PUSH32 0x3999656700000000000000000000000000000000000000000000000000000000
00002394: DUP2
00002395: MSTORE
00002396: REVERT
00002397: JUMPDEST
00002398: PUSH1 0x04
0000239a: PUSH1 0x40
0000239c: MLOAD
0000239d: PUSH32 0xc48af02400000000000000000000000000000000000000000000000000000000
000023be: DUP2
000023bf: MSTORE
000023c0: REVERT
000023c1: JUMPDEST
000023c2: CALLVALUE
000023c3: PUSH2 0x0015
000023c6: JUMPI
000023c7: PUSH1 0x40
000023c9: PUSH1 0x03
000023cb: NOT
000023cc: CALLDATASIZE
000023cd: ADD
000023ce: SLT
000023cf: PUSH2 0x0015
000023d2: JUMPI
000023d3: PUSH1 0x20
000023d5: PUSH2 0x2421
000023d8: PUSH2 0x23df
000023db: PUSH2 0x066d
000023de: JUMP
000023df: JUMPDEST
000023e0: PUSH2 0x087b
000023e3: PUSH2 0x23ea
000023e6: PUSH2 0x0683
000023e9: JUMP
000023ea: JUMPDEST
000023eb: SWAP2
000023ec: PUSH1 0x01
000023ee: PUSH1 0x01
000023f0: PUSH1 0xa0
000023f2: SHL
000023f3: SUB
000023f4: AND
000023f5: PUSH0
000023f6: MSTORE
000023f7: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01
00002418: PUSH1 0x20
0000241a: MSTORE
0000241b: PUSH1 0x40
0000241d: PUSH0
0000241e: KECCAK256
0000241f: SWAP1
00002420: JUMP
00002421: JUMPDEST
00002422: SLOAD
00002423: PUSH1 0x40
00002425: MLOAD
00002426: SWAP1
00002427: DUP2
00002428: MSTORE
00002429: RETURN
0000242a: JUMPDEST
0000242b: CALLVALUE
0000242c: PUSH2 0x0015
0000242f: JUMPI
00002430: PUSH0
00002431: PUSH1 0x03
00002433: NOT
00002434: CALLDATASIZE
00002435: ADD
00002436: SLT
00002437: PUSH2 0x0015
0000243a: JUMPI
0000243b: PUSH1 0x60
0000243d: PUSH1 0x0e
0000243f: SLOAD
00002440: PUSH1 0x40
00002442: MLOAD
00002443: SWAP1
00002444: PUSH1 0x01
00002446: PUSH1 0x01
00002448: PUSH1 0xa0
0000244a: SHL
0000244b: SUB
0000244c: DUP2
0000244d: AND
0000244e: DUP3
0000244f: MSTORE
00002450: PUSH6 0xffffffffffff
00002457: DUP2
00002458: PUSH1 0xa0
0000245a: SHR
0000245b: AND
0000245c: PUSH1 0x20
0000245e: DUP4
0000245f: ADD
00002460: MSTORE
00002461: PUSH1 0xd0
00002463: SHR
00002464: PUSH1 0x40
00002466: DUP3
00002467: ADD
00002468: MSTORE
00002469: RETURN
0000246a: JUMPDEST
0000246b: CALLVALUE
0000246c: PUSH2 0x0015
0000246f: JUMPI
00002470: PUSH0
00002471: PUSH1 0x03
00002473: NOT
00002474: CALLDATASIZE
00002475: ADD
00002476: SLT
00002477: PUSH2 0x0015
0000247a: JUMPI
0000247b: PUSH1 0x20
0000247d: PUSH1 0x40
0000247f: MLOAD
00002480: PUSH1 0x64
00002482: DUP2
00002483: MSTORE
00002484: RETURN
00002485: JUMPDEST
00002486: CALLVALUE
00002487: PUSH2 0x0015
0000248a: JUMPI
0000248b: PUSH0
0000248c: PUSH1 0x03
0000248e: NOT
0000248f: CALLDATASIZE
00002490: ADD
00002491: SLT
00002492: PUSH2 0x0015
00002495: JUMPI
00002496: PUSH2 0x249d
00002499: PUSH2 0x2a8f
0000249c: JUMP
0000249d: JUMPDEST
0000249e: SWAP1
0000249f: PUSH0
000024a0: DUP1
000024a1: PUSH2 0x24b8
000024a4: PUSH2 0x22ee
000024a7: PUSH2 0x22ee
000024aa: PUSH1 0x03
000024ac: SLOAD
000024ad: PUSH1 0x01
000024af: PUSH1 0x01
000024b1: PUSH1 0xa0
000024b3: SHL
000024b4: SUB
000024b5: AND
000024b6: SWAP1
000024b7: JUMP
000024b8: JUMPDEST
000024b9: SWAP2
000024ba: JUMPDEST
000024bb: DUP4
000024bc: MLOAD
000024bd: DUP3
000024be: LT
000024bf: ISZERO
000024c0: PUSH2 0x2599
000024c3: JUMPI
000024c4: PUSH2 0x2526
000024c7: SWAP1
000024c8: PUSH2 0x24d1
000024cb: DUP4
000024cc: DUP8
000024cd: PUSH2 0x2a61
000024d0: JUMP
000024d1: JUMPDEST
000024d2: MLOAD
000024d3: SWAP1
000024d4: PUSH2 0x24e0
000024d7: PUSH2 0x22e1
000024da: DUP6
000024db: DUP9
000024dc: PUSH2 0x2a61
000024df: JUMP
000024e0: JUMPDEST
000024e1: PUSH1 0x40
000024e3: MLOAD
000024e4: PUSH32 0x34ff2eeb00000000000000000000000000000000000000000000000000000000
00002505: DUP2
00002506: MSTORE
00002507: PUSH1 0x01
00002509: PUSH1 0x01
0000250b: PUSH1 0xa0
0000250d: SHL
0000250e: SUB
0000250f: SWAP1
00002510: SWAP2
00002511: AND
00002512: PUSH1 0x04
00002514: DUP3
00002515: ADD
00002516: MSTORE
00002517: PUSH1 0x20
00002519: SWAP4
0000251a: DUP5
0000251b: SWAP1
0000251c: DUP3
0000251d: SWAP1
0000251e: DUP2
0000251f: SWAP1
00002520: PUSH1 0x24
00002522: DUP3
00002523: ADD
00002524: SWAP1
00002525: JUMP
00002526: JUMPDEST
00002527: SUB
00002528: DUP2
00002529: DUP10
0000252a: GAS
0000252b: STATICCALL
0000252c: SWAP4
0000252d: DUP5
0000252e: ISZERO
0000252f: PUSH2 0x139c
00002532: JUMPI
00002533: PUSH1 0x01
00002535: SWAP5
00002536: PUSH2 0x2572
00002539: SWAP5
0000253a: PUSH2 0x256c
0000253d: SWAP4
0000253e: PUSH2 0x254f
00002541: SWAP4
00002542: PUSH0
00002543: SWAP4
00002544: PUSH2 0x257a
00002547: JUMPI
00002548: JUMPDEST
00002549: POP
0000254a: POP
0000254b: PUSH2 0x2e48
0000254e: JUMP
0000254f: JUMPDEST
00002550: PUSH2 0x1326
00002553: PUSH2 0x2567
00002556: PUSH2 0x2562
00002559: PUSH2 0x22e1
0000255c: DUP10
0000255d: DUP13
0000255e: PUSH2 0x2a61
00002561: JUMP
00002562: JUMPDEST
00002563: PUSH2 0x3749
00002566: JUMP
00002567: JUMPDEST
00002568: PUSH2 0x2e60
0000256b: JUMP
0000256c: JUMPDEST
0000256d: SWAP1
0000256e: PUSH2 0x30a6
00002571: JUMP
00002572: JUMPDEST
00002573: SWAP2
00002574: ADD
00002575: SWAP1
00002576: PUSH2 0x24ba
00002579: JUMP
0000257a: JUMPDEST
0000257b: PUSH2 0x2591
0000257e: SWAP3
0000257f: SWAP4
00002580: POP
00002581: DUP1
00002582: RETURNDATASIZE
00002583: LT
00002584: PUSH2 0x10c2
00002587: JUMPI
00002588: PUSH2 0x10b3
0000258b: DUP2
0000258c: DUP4
0000258d: PUSH2 0x0ce7
00002590: JUMP
00002591: JUMPDEST
00002592: SWAP1
00002593: PUSH0
00002594: DUP1
00002595: PUSH2 0x2548
00002598: JUMP
00002599: JUMPDEST
0000259a: PUSH1 0x40
0000259c: DUP1
0000259d: MLOAD
0000259e: PUSH32 0xa0a8045e00000000000000000000000000000000000000000000000000000000
000025bf: DUP2
000025c0: MSTORE
000025c1: SWAP1
000025c2: DUP2
000025c3: PUSH1 0x04
000025c5: DUP2
000025c6: DUP8
000025c7: GAS
000025c8: STATICCALL
000025c9: DUP1
000025ca: ISZERO
000025cb: PUSH2 0x139c
000025ce: JUMPI
000025cf: PUSH2 0x0e4d
000025d2: SWAP2
000025d3: PUSH0
000025d4: SWAP1
000025d5: PUSH0
000025d6: SWAP3
000025d7: PUSH2 0x25e9
000025da: JUMPI
000025db: JUMPDEST
000025dc: POP
000025dd: PUSH2 0x1320
000025e0: PUSH2 0x1326
000025e3: SWAP2
000025e4: DUP6
000025e5: PUSH2 0x2e48
000025e8: JUMP
000025e9: JUMPDEST
000025ea: PUSH2 0x1320
000025ed: SWAP3
000025ee: POP
000025ef: PUSH2 0x1326
000025f2: SWAP2
000025f3: POP
000025f4: PUSH2 0x260b
000025f7: SWAP1
000025f8: PUSH1 0x40
000025fa: RETURNDATASIZE
000025fb: PUSH1 0x40
000025fd: GT
000025fe: PUSH2 0x1395
00002601: JUMPI
00002602: PUSH2 0x1386
00002605: DUP2
00002606: DUP4
00002607: PUSH2 0x0ce7
0000260a: JUMP
0000260b: JUMPDEST
0000260c: SWAP3
0000260d: SWAP1
0000260e: SWAP2
0000260f: POP
00002610: PUSH2 0x25db
00002613: JUMP
00002614: JUMPDEST
00002615: CALLVALUE
00002616: PUSH2 0x0015
00002619: JUMPI
0000261a: PUSH0
0000261b: PUSH1 0x03
0000261d: NOT
0000261e: CALLDATASIZE
0000261f: ADD
00002620: SLT
00002621: PUSH2 0x0015
00002624: JUMPI
00002625: PUSH2 0x04bd
00002628: PUSH1 0x40
0000262a: PUSH0
0000262b: PUSH1 0x60
0000262d: DUP3
0000262e: MLOAD
0000262f: PUSH2 0x2637
00002632: DUP2
00002633: PUSH2 0x0ccb
00002636: JUMP
00002637: JUMPDEST
00002638: PUSH2 0x263f
0000263b: PUSH2 0x33d3
0000263e: JUMP
0000263f: JUMPDEST
00002640: DUP2
00002641: MSTORE
00002642: DUP3
00002643: PUSH1 0x20
00002645: DUP3
00002646: ADD
00002647: MSTORE
00002648: DUP3
00002649: DUP5
0000264a: DUP3
0000264b: ADD
0000264c: MSTORE
0000264d: ADD
0000264e: MSTORE
0000264f: DUP1
00002650: MLOAD
00002651: SWAP1
00002652: PUSH2 0x265a
00002655: DUP3
00002656: PUSH2 0x0ccb
00002659: JUMP
0000265a: JUMPDEST
0000265b: PUSH2 0x2691
0000265e: PUSH2 0x2665
00002661: PUSH2 0x33f7
00002664: JUMP
00002665: JUMPDEST
00002666: DUP1
00002667: DUP5
00002668: MSTORE
00002669: PUSH1 0x06
0000266b: SLOAD
0000266c: PUSH8 0xffffffffffffffff
00002675: DUP1
00002676: DUP3
00002677: AND
00002678: PUSH1 0x20
0000267a: DUP8
0000267b: ADD
0000267c: MSTORE
0000267d: DUP2
0000267e: DUP6
0000267f: SHR
00002680: AND
00002681: DUP5
00002682: DUP7
00002683: ADD
00002684: MSTORE
00002685: PUSH1 0x80
00002687: SHR
00002688: PUSH1 0x60
0000268a: DUP6
0000268b: ADD
0000268c: MSTORE
0000268d: PUSH2 0x3faf
00002690: JUMP
00002691: JUMPDEST
00002692: POP
00002693: MLOAD
00002694: SWAP2
00002695: DUP3
00002696: SWAP2
00002697: DUP3
00002698: SWAP2
00002699: SWAP1
0000269a: SWAP2
0000269b: PUSH1 0xc0
0000269d: PUSH1 0x60
0000269f: DUP1
000026a0: PUSH1 0xe0
000026a2: DUP5
000026a3: ADD
000026a4: SWAP6
000026a5: DUP1
000026a6: MLOAD
000026a7: PUSH16 0xffffffffffffffffffffffffffffffff
000026b8: SWAP4
000026b9: DUP2
000026ba: DUP6
000026bb: DUP1
000026bc: SWAP4
000026bd: MLOAD
000026be: AND
000026bf: DUP9
000026c0: MSTORE
000026c1: DUP3
000026c2: PUSH1 0x20
000026c4: DUP3
000026c5: ADD
000026c6: MLOAD
000026c7: AND
000026c8: PUSH1 0x20
000026ca: DUP10
000026cb: ADD
000026cc: MSTORE
000026cd: DUP3
000026ce: PUSH1 0x40
000026d0: DUP3
000026d1: ADD
000026d2: MLOAD
000026d3: AND
000026d4: PUSH1 0x40
000026d6: DUP10
000026d7: ADD
000026d8: MSTORE
000026d9: ADD
000026da: MLOAD
000026db: AND
000026dc: DUP3
000026dd: DUP7
000026de: ADD
000026df: MSTORE
000026e0: PUSH1 0x20
000026e2: DUP2
000026e3: ADD
000026e4: MLOAD
000026e5: PUSH8 0xffffffffffffffff
000026ee: DUP1
000026ef: SWAP2
000026f0: AND
000026f1: PUSH1 0x80
000026f3: DUP8
000026f4: ADD
000026f5: MSTORE
000026f6: PUSH1 0x40
000026f8: DUP3
000026f9: ADD
000026fa: MLOAD
000026fb: AND
000026fc: PUSH1 0xa0
000026fe: DUP7
000026ff: ADD
00002700: MSTORE
00002701: ADD
00002702: MLOAD
00002703: AND
00002704: SWAP2
00002705: ADD
00002706: MSTORE
00002707: JUMP
00002708: JUMPDEST
00002709: CALLVALUE
0000270a: PUSH2 0x0015
0000270d: JUMPI
0000270e: PUSH0
0000270f: PUSH1 0x03
00002711: NOT
00002712: CALLDATASIZE
00002713: ADD
00002714: SLT
00002715: PUSH2 0x0015
00002718: JUMPI
00002719: PUSH1 0x0d
0000271b: SLOAD
0000271c: DUP1
0000271d: ISZERO
0000271e: PUSH2 0x27d6
00002721: JUMPI
00002722: PUSH0
00002723: PUSH1 0x0d
00002725: SSTORE
00002726: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
00002747: PUSH0
00002748: DUP1
00002749: DUP1
0000274a: DUP1
0000274b: DUP6
0000274c: PUSH1 0x01
0000274e: PUSH1 0x01
00002750: PUSH1 0xa0
00002752: SHL
00002753: SUB
00002754: DUP7
00002755: SLOAD
00002756: AND
00002757: GAS
00002758: CALL
00002759: PUSH2 0x2760
0000275c: PUSH2 0x3fc1
0000275f: JUMP
00002760: JUMPDEST
00002761: POP
00002762: ISZERO
00002763: PUSH2 0x27ac
00002766: JUMPI
00002767: PUSH2 0x2347
0000276a: PUSH2 0x279b
0000276d: PUSH32 0xd6060418062d03ef3ef2e9cca5d7e94502c0224f1ea338059fa40ecfb8bd121a
0000278e: SWAP3
0000278f: SLOAD
00002790: PUSH1 0x01
00002792: PUSH1 0x01
00002794: PUSH1 0xa0
00002796: SHL
00002797: SUB
00002798: AND
00002799: SWAP1
0000279a: JUMP
0000279b: JUMPDEST
0000279c: PUSH1 0x40
0000279e: MLOAD
0000279f: SWAP4
000027a0: DUP5
000027a1: MSTORE
000027a2: SWAP3
000027a3: SWAP1
000027a4: DUP2
000027a5: SWAP1
000027a6: PUSH1 0x20
000027a8: DUP3
000027a9: ADD
000027aa: SWAP1
000027ab: JUMP
000027ac: JUMPDEST
000027ad: PUSH1 0x04
000027af: PUSH1 0x40
000027b1: MLOAD
000027b2: PUSH32 0x6747a28800000000000000000000000000000000000000000000000000000000
000027d3: DUP2
000027d4: MSTORE
000027d5: REVERT
000027d6: JUMPDEST
000027d7: PUSH1 0x04
000027d9: PUSH1 0x40
000027db: MLOAD
000027dc: PUSH32 0xeb0ac26000000000000000000000000000000000000000000000000000000000
000027fd: DUP2
000027fe: MSTORE
000027ff: REVERT
00002800: JUMPDEST
00002801: CALLVALUE
00002802: PUSH2 0x0015
00002805: JUMPI
00002806: PUSH1 0x20
00002808: PUSH1 0x03
0000280a: NOT
0000280b: CALLDATASIZE
0000280c: ADD
0000280d: SLT
0000280e: PUSH2 0x0015
00002811: JUMPI
00002812: PUSH2 0x2819
00002815: PUSH2 0x066d
00002818: JUMP
00002819: JUMPDEST
0000281a: PUSH1 0x01
0000281c: PUSH1 0x01
0000281e: PUSH1 0xa0
00002820: SHL
00002821: SUB
00002822: DUP2
00002823: AND
00002824: PUSH0
00002825: MSTORE
00002826: PUSH0
00002827: PUSH1 0x20
00002829: MSTORE
0000282a: PUSH1 0xff
0000282c: PUSH1 0x40
0000282e: PUSH0
0000282f: KECCAK256
00002830: SLOAD
00002831: AND
00002832: ISZERO
00002833: PUSH2 0x287e
00002836: JUMPI
00002837: PUSH2 0x286c
0000283a: PUSH1 0x20
0000283c: SWAP2
0000283d: PUSH2 0x2866
00002840: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00002861: SLOAD
00002862: PUSH2 0x368f
00002865: JUMP
00002866: JUMPDEST
00002867: SWAP1
00002868: PUSH2 0x36d6
0000286b: JUMP
0000286c: JUMPDEST
0000286d: PUSH8 0xffffffffffffffff
00002876: PUSH1 0x40
00002878: MLOAD
00002879: SWAP2
0000287a: AND
0000287b: DUP2
0000287c: MSTORE
0000287d: RETURN
0000287e: JUMPDEST
0000287f: PUSH1 0x04
00002881: PUSH1 0x40
00002883: MLOAD
00002884: PUSH32 0x259ba1ad00000000000000000000000000000000000000000000000000000000
000028a5: DUP2
000028a6: MSTORE
000028a7: REVERT
000028a8: JUMPDEST
000028a9: CALLVALUE
000028aa: PUSH2 0x0015
000028ad: JUMPI
000028ae: PUSH1 0x20
000028b0: PUSH1 0x03
000028b2: NOT
000028b3: CALLDATASIZE
000028b4: ADD
000028b5: SLT
000028b6: PUSH2 0x0015
000028b9: JUMPI
000028ba: PUSH2 0x28c1
000028bd: PUSH2 0x066d
000028c0: JUMP
000028c1: JUMPDEST
000028c2: PUSH2 0x28f4
000028c5: PUSH1 0x01
000028c7: PUSH1 0x01
000028c9: PUSH1 0xa0
000028cb: SHL
000028cc: SUB
000028cd: PUSH32 0x7d8b90e89a676f7a8a3cf40a0c23c3d2ea61cec6ae800738fbd79bc111b5ea87
000028ee: SLOAD
000028ef: AND
000028f0: CALLER
000028f1: EQ
000028f2: SWAP1
000028f3: JUMP
000028f4: JUMPDEST
000028f5: ISZERO
000028f6: PUSH2 0x2031
000028f9: JUMPI
000028fa: PUSH32 0x67f3bdb99ec85305417f06f626cf52c7dee7e44607664b5f1cce0af5d822472f
0000291b: SSTORE
0000291c: STOP
0000291d: JUMPDEST
0000291e: PUSH1 0x40
00002920: MLOAD
00002921: SWAP1
00002922: PUSH1 0x02
00002924: SLOAD
00002925: DUP1
00002926: DUP4
00002927: MSTORE
00002928: DUP3
00002929: PUSH1 0x20
0000292b: SWAP2
0000292c: PUSH1 0x20
0000292e: DUP3
0000292f: ADD
00002930: SWAP1
00002931: PUSH1 0x02
00002933: PUSH0
00002934: MSTORE
00002935: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
00002956: SWAP4
00002957: PUSH0
00002958: SWAP1
00002959: JUMPDEST
0000295a: DUP3
0000295b: DUP3
0000295c: LT
0000295d: PUSH2 0x2971
00002960: JUMPI
00002961: POP
00002962: POP
00002963: POP
00002964: PUSH2 0x296f
00002967: SWAP3
00002968: POP
00002969: SUB
0000296a: DUP4
0000296b: PUSH2 0x0ce7
0000296e: JUMP
0000296f: JUMPDEST
00002970: JUMP
00002971: JUMPDEST
00002972: DUP6
00002973: SLOAD
00002974: PUSH1 0x01
00002976: PUSH1 0x01
00002978: PUSH1 0xa0
0000297a: SHL
0000297b: SUB
0000297c: AND
0000297d: DUP5
0000297e: MSTORE
0000297f: PUSH1 0x01
00002981: SWAP6
00002982: DUP7
00002983: ADD
00002984: SWAP6
00002985: DUP9
00002986: SWAP6
00002987: POP
00002988: SWAP4
00002989: DUP2
0000298a: ADD
0000298b: SWAP4
0000298c: SWAP1
0000298d: SWAP2
0000298e: ADD
0000298f: SWAP1
00002990: PUSH2 0x2959
00002993: JUMP
00002994: JUMPDEST
00002995: PUSH1 0x40
00002997: MLOAD
00002998: SWAP1
00002999: PUSH1 0x02
0000299b: SLOAD
0000299c: DUP1
0000299d: DUP4
0000299e: MSTORE
0000299f: DUP3
000029a0: PUSH1 0x20
000029a2: SWAP2
000029a3: PUSH1 0x20
000029a5: DUP3
000029a6: ADD
000029a7: SWAP1
000029a8: PUSH1 0x02
000029aa: PUSH0
000029ab: MSTORE
000029ac: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
000029cd: SWAP4
000029ce: PUSH0
000029cf: SWAP1
000029d0: JUMPDEST
000029d1: DUP3
000029d2: DUP3
000029d3: LT
000029d4: PUSH2 0x29e6
000029d7: JUMPI
000029d8: POP
000029d9: POP
000029da: POP
000029db: PUSH2 0x296f
000029de: SWAP3
000029df: POP
000029e0: SUB
000029e1: DUP4
000029e2: PUSH2 0x0ce7
000029e5: JUMP
000029e6: JUMPDEST
000029e7: DUP6
000029e8: SLOAD
000029e9: PUSH1 0x01
000029eb: PUSH1 0x01
000029ed: PUSH1 0xa0
000029ef: SHL
000029f0: SUB
000029f1: AND
000029f2: DUP5
000029f3: MSTORE
000029f4: PUSH1 0x01
000029f6: SWAP6
000029f7: DUP7
000029f8: ADD
000029f9: SWAP6
000029fa: DUP9
000029fb: SWAP6
000029fc: POP
000029fd: SWAP4
000029fe: DUP2
000029ff: ADD
00002a00: SWAP4
00002a01: SWAP1
00002a02: SWAP2
00002a03: ADD
00002a04: SWAP1
00002a05: PUSH2 0x29d0
00002a08: JUMP
00002a09: JUMPDEST
00002a0a: PUSH1 0x40
00002a0c: MLOAD
00002a0d: PUSH1 0x20
00002a0f: DUP2
00002a10: ADD
00002a11: DUP2
00002a12: DUP2
00002a13: LT
00002a14: PUSH8 0xffffffffffffffff
00002a1d: DUP3
00002a1e: GT
00002a1f: OR
00002a20: PUSH2 0x0cc6
00002a23: JUMPI
00002a24: PUSH1 0x40
00002a26: MSTORE
00002a27: PUSH0
00002a28: DUP2
00002a29: MSTORE
00002a2a: SWAP1
00002a2b: PUSH0
00002a2c: CALLDATASIZE
00002a2d: DUP2
00002a2e: CALLDATACOPY
00002a2f: JUMP
00002a30: JUMPDEST
00002a31: SWAP1
00002a32: PUSH2 0x2a3a
00002a35: DUP3
00002a36: PUSH2 0x0d0a
00002a39: JUMP
00002a3a: JUMPDEST
00002a3b: PUSH2 0x2a47
00002a3e: PUSH1 0x40
00002a40: MLOAD
00002a41: SWAP2
00002a42: DUP3
00002a43: PUSH2 0x0ce7
00002a46: JUMP
00002a47: JUMPDEST
00002a48: DUP3
00002a49: DUP2
00002a4a: MSTORE
00002a4b: PUSH1 0x1f
00002a4d: NOT
00002a4e: PUSH2 0x2a57
00002a51: DUP3
00002a52: SWAP5
00002a53: PUSH2 0x0d0a
00002a56: JUMP
00002a57: JUMPDEST
00002a58: ADD
00002a59: SWAP1
00002a5a: PUSH1 0x20
00002a5c: CALLDATASIZE
00002a5d: SWAP2
00002a5e: ADD
00002a5f: CALLDATACOPY
00002a60: JUMP
00002a61: JUMPDEST
00002a62: DUP1
00002a63: MLOAD
00002a64: DUP3
00002a65: LT
00002a66: ISZERO
00002a67: PUSH2 0x11a9
00002a6a: JUMPI
00002a6b: PUSH1 0x20
00002a6d: SWAP2
00002a6e: PUSH1 0x05
00002a70: SHL
00002a71: ADD
00002a72: ADD
00002a73: SWAP1
00002a74: JUMP
00002a75: JUMPDEST
00002a76: SWAP1
00002a77: DUP2
00002a78: PUSH1 0x20
00002a7a: SWAP2
00002a7b: SUB
00002a7c: SLT
00002a7d: PUSH2 0x0015
00002a80: JUMPI
00002a81: MLOAD
00002a82: SWAP1
00002a83: JUMP
00002a84: JUMPDEST
00002a85: PUSH1 0x40
00002a87: MLOAD
00002a88: RETURNDATASIZE
00002a89: PUSH0
00002a8a: DUP3
00002a8b: RETURNDATACOPY
00002a8c: RETURNDATASIZE
00002a8d: SWAP1
00002a8e: REVERT
00002a8f: JUMPDEST
00002a90: PUSH2 0x2a97
00002a93: PUSH2 0x2994
00002a96: JUMP
00002a97: JUMPDEST
00002a98: SWAP1
00002a99: DUP2
00002a9a: MLOAD
00002a9b: SWAP2
00002a9c: PUSH2 0x2aa4
00002a9f: DUP4
00002aa0: PUSH2 0x2a30
00002aa3: JUMP
00002aa4: JUMPDEST
00002aa5: SWAP3
00002aa6: PUSH0
00002aa7: JUMPDEST
00002aa8: DUP2
00002aa9: DUP2
00002aaa: LT
00002aab: PUSH2 0x2ab4
00002aae: JUMPI
00002aaf: POP
00002ab0: POP
00002ab1: SWAP2
00002ab2: SWAP1
00002ab3: JUMP
00002ab4: JUMPDEST
00002ab5: PUSH2 0x2ac7
00002ab8: PUSH2 0x22ee
00002abb: PUSH2 0x22ee
00002abe: PUSH2 0x22e1
00002ac1: DUP5
00002ac2: DUP8
00002ac3: PUSH2 0x2a61
00002ac6: JUMP
00002ac7: JUMPDEST
00002ac8: PUSH1 0x40
00002aca: MLOAD
00002acb: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
00002aec: DUP2
00002aed: MSTORE
00002aee: ADDRESS
00002aef: PUSH1 0x04
00002af1: DUP3
00002af2: ADD
00002af3: MSTORE
00002af4: PUSH1 0x20
00002af6: SWAP3
00002af7: SWAP2
00002af8: DUP4
00002af9: SWAP1
00002afa: DUP3
00002afb: SWAP1
00002afc: PUSH1 0x24
00002afe: SWAP1
00002aff: DUP3
00002b00: SWAP1
00002b01: GAS
00002b02: STATICCALL
00002b03: SWAP1
00002b04: DUP2
00002b05: ISZERO
00002b06: PUSH2 0x139c
00002b09: JUMPI
00002b0a: PUSH1 0x01
00002b0c: SWAP4
00002b0d: PUSH0
00002b0e: SWAP3
00002b0f: PUSH2 0x2b26
00002b12: JUMPI
00002b13: JUMPDEST
00002b14: POP
00002b15: POP
00002b16: PUSH2 0x2b1f
00002b19: DUP3
00002b1a: DUP9
00002b1b: PUSH2 0x2a61
00002b1e: JUMP
00002b1f: JUMPDEST
00002b20: MSTORE
00002b21: ADD
00002b22: PUSH2 0x2aa7
00002b25: JUMP
00002b26: JUMPDEST
00002b27: PUSH2 0x2b3c
00002b2a: SWAP3
00002b2b: POP
00002b2c: DUP1
00002b2d: RETURNDATASIZE
00002b2e: LT
00002b2f: PUSH2 0x10c2
00002b32: JUMPI
00002b33: PUSH2 0x10b3
00002b36: DUP2
00002b37: DUP4
00002b38: PUSH2 0x0ce7
00002b3b: JUMP
00002b3c: JUMPDEST
00002b3d: PUSH0
00002b3e: DUP1
00002b3f: PUSH2 0x2b13
00002b42: JUMP
00002b43: JUMPDEST
00002b44: PUSH1 0x40
00002b46: MLOAD
00002b47: SWAP1
00002b48: PUSH0
00002b49: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d102
00002b6a: SLOAD
00002b6b: PUSH1 0x01
00002b6d: SWAP2
00002b6e: DUP2
00002b6f: PUSH1 0x01
00002b71: SHR
00002b72: SWAP3
00002b73: PUSH1 0x01
00002b75: DUP4
00002b76: AND
00002b77: SWAP1
00002b78: DUP2
00002b79: ISZERO
00002b7a: PUSH2 0x2c71
00002b7d: JUMPI
00002b7e: JUMPDEST
00002b7f: PUSH1 0x20
00002b81: SWAP1
00002b82: PUSH1 0x20
00002b84: DUP7
00002b85: LT
00002b86: DUP4
00002b87: EQ
00002b88: PUSH2 0x0636
00002b8b: JUMPI
00002b8c: DUP6
00002b8d: DUP9
00002b8e: MSTORE
00002b8f: DUP8
00002b90: SWAP5
00002b91: PUSH1 0x20
00002b93: DUP7
00002b94: ADD
00002b95: SWAP4
00002b96: SWAP1
00002b97: DUP2
00002b98: ISZERO
00002b99: PUSH2 0x2c33
00002b9c: JUMPI
00002b9d: POP
00002b9e: PUSH1 0x01
00002ba0: EQ
00002ba1: PUSH2 0x2bb4
00002ba4: JUMPI
00002ba5: JUMPDEST
00002ba6: POP
00002ba7: POP
00002ba8: POP
00002ba9: PUSH2 0x296f
00002bac: SWAP3
00002bad: POP
00002bae: SUB
00002baf: DUP4
00002bb0: PUSH2 0x0ce7
00002bb3: JUMP
00002bb4: JUMPDEST
00002bb5: SWAP3
00002bb6: POP
00002bb7: SWAP4
00002bb8: PUSH2 0x2c01
00002bbb: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d102
00002bdc: PUSH0
00002bdd: MSTORE
00002bde: PUSH32 0x42ad5d3e1f2e6e70edcf6d991b8a3023d3fca8047a131592f9edb9fd9b89d57d
00002bff: SWAP1
00002c00: JUMP
00002c01: JUMPDEST
00002c02: SWAP5
00002c03: PUSH0
00002c04: SWAP4
00002c05: JUMPDEST
00002c06: DUP3
00002c07: DUP6
00002c08: LT
00002c09: PUSH2 0x2c1d
00002c0c: JUMPI
00002c0d: POP
00002c0e: POP
00002c0f: POP
00002c10: PUSH2 0x296f
00002c13: SWAP4
00002c14: POP
00002c15: ADD
00002c16: PUSH0
00002c17: DUP1
00002c18: DUP1
00002c19: PUSH2 0x2ba5
00002c1c: JUMP
00002c1d: JUMPDEST
00002c1e: DUP7
00002c1f: SLOAD
00002c20: DUP6
00002c21: DUP6
00002c22: ADD
00002c23: MSTORE
00002c24: SWAP6
00002c25: DUP7
00002c26: ADD
00002c27: SWAP6
00002c28: DUP9
00002c29: SWAP6
00002c2a: POP
00002c2b: SWAP4
00002c2c: DUP2
00002c2d: ADD
00002c2e: SWAP4
00002c2f: PUSH2 0x2c05
00002c32: JUMP
00002c33: JUMPDEST
00002c34: SWAP2
00002c35: POP
00002c36: POP
00002c37: PUSH2 0x296f
00002c3a: SWAP6
00002c3b: SWAP3
00002c3c: SWAP4
00002c3d: POP
00002c3e: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
00002c5f: SWAP2
00002c60: POP
00002c61: AND
00002c62: DUP3
00002c63: MSTORE
00002c64: ISZERO
00002c65: ISZERO
00002c66: PUSH1 0x05
00002c68: SHL
00002c69: ADD
00002c6a: PUSH0
00002c6b: DUP1
00002c6c: DUP1
00002c6d: PUSH2 0x2ba5
00002c70: JUMP
00002c71: JUMPDEST
00002c72: SWAP4
00002c73: PUSH1 0x7f
00002c75: AND
00002c76: SWAP4
00002c77: PUSH2 0x2b7e
00002c7a: JUMP
00002c7b: JUMPDEST
00002c7c: PUSH1 0x40
00002c7e: MLOAD
00002c7f: SWAP1
00002c80: PUSH0
00002c81: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d103
00002ca2: SLOAD
00002ca3: PUSH1 0x01
00002ca5: SWAP2
00002ca6: DUP2
00002ca7: PUSH1 0x01
00002ca9: SHR
00002caa: SWAP3
00002cab: PUSH1 0x01
00002cad: DUP4
00002cae: AND
00002caf: SWAP1
00002cb0: DUP2
00002cb1: ISZERO
00002cb2: PUSH2 0x2d6a
00002cb5: JUMPI
00002cb6: JUMPDEST
00002cb7: PUSH1 0x20
00002cb9: SWAP1
00002cba: PUSH1 0x20
00002cbc: DUP7
00002cbd: LT
00002cbe: DUP4
00002cbf: EQ
00002cc0: PUSH2 0x0636
00002cc3: JUMPI
00002cc4: DUP6
00002cc5: DUP9
00002cc6: MSTORE
00002cc7: DUP8
00002cc8: SWAP5
00002cc9: PUSH1 0x20
00002ccb: DUP7
00002ccc: ADD
00002ccd: SWAP4
00002cce: SWAP1
00002ccf: DUP2
00002cd0: ISZERO
00002cd1: PUSH2 0x2c33
00002cd4: JUMPI
00002cd5: POP
00002cd6: PUSH1 0x01
00002cd8: EQ
00002cd9: PUSH2 0x2ceb
00002cdc: JUMPI
00002cdd: POP
00002cde: POP
00002cdf: POP
00002ce0: PUSH2 0x296f
00002ce3: SWAP3
00002ce4: POP
00002ce5: SUB
00002ce6: DUP4
00002ce7: PUSH2 0x0ce7
00002cea: JUMP
00002ceb: JUMPDEST
00002cec: SWAP3
00002ced: POP
00002cee: SWAP4
00002cef: PUSH2 0x2d38
00002cf2: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d103
00002d13: PUSH0
00002d14: MSTORE
00002d15: PUSH32 0x5f9ce34815f8e11431c7bb75a8e6886a91478f7ffc1dbb0a98dc240fddd76b75
00002d36: SWAP1
00002d37: JUMP
00002d38: JUMPDEST
00002d39: SWAP5
00002d3a: PUSH0
00002d3b: SWAP4
00002d3c: JUMPDEST
00002d3d: DUP3
00002d3e: DUP6
00002d3f: LT
00002d40: PUSH2 0x2d54
00002d43: JUMPI
00002d44: POP
00002d45: POP
00002d46: POP
00002d47: PUSH2 0x296f
00002d4a: SWAP4
00002d4b: POP
00002d4c: ADD
00002d4d: PUSH0
00002d4e: DUP1
00002d4f: DUP1
00002d50: PUSH2 0x2ba5
00002d53: JUMP
00002d54: JUMPDEST
00002d55: DUP7
00002d56: SLOAD
00002d57: DUP6
00002d58: DUP6
00002d59: ADD
00002d5a: MSTORE
00002d5b: SWAP6
00002d5c: DUP7
00002d5d: ADD
00002d5e: SWAP6
00002d5f: DUP9
00002d60: SWAP6
00002d61: POP
00002d62: SWAP4
00002d63: DUP2
00002d64: ADD
00002d65: SWAP4
00002d66: PUSH2 0x2d3c
00002d69: JUMP
00002d6a: JUMPDEST
00002d6b: SWAP4
00002d6c: PUSH1 0x7f
00002d6e: AND
00002d6f: SWAP4
00002d70: PUSH2 0x2cb6
00002d73: JUMP
00002d74: JUMPDEST
00002d75: SWAP1
00002d76: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00002d97: SLOAD
00002d98: ISZERO
00002d99: PUSH2 0x2df1
00002d9c: JUMPI
00002d9d: PUSH2 0x2da4
00002da0: PUSH2 0x2994
00002da3: JUMP
00002da4: JUMPDEST
00002da5: DUP1
00002da6: MLOAD
00002da7: PUSH2 0x2daf
00002daa: DUP2
00002dab: PUSH2 0x2a30
00002dae: JUMP
00002daf: JUMPDEST
00002db0: SWAP4
00002db1: PUSH0
00002db2: JUMPDEST
00002db3: DUP3
00002db4: DUP2
00002db5: LT
00002db6: PUSH2 0x2dc0
00002db9: JUMPI
00002dba: POP
00002dbb: POP
00002dbc: POP
00002dbd: SWAP2
00002dbe: SWAP1
00002dbf: JUMP
00002dc0: JUMPDEST
00002dc1: DUP1
00002dc2: PUSH2 0x2de0
00002dc5: PUSH1 0x01
00002dc7: PUSH1 0x01
00002dc9: PUSH1 0xa0
00002dcb: SHL
00002dcc: SUB
00002dcd: PUSH2 0x2dd8
00002dd0: PUSH1 0x01
00002dd2: SWAP5
00002dd3: DUP9
00002dd4: PUSH2 0x2a61
00002dd7: JUMP
00002dd8: JUMPDEST
00002dd9: MLOAD
00002dda: AND
00002ddb: DUP5
00002ddc: PUSH2 0x32e0
00002ddf: JUMP
00002de0: JUMPDEST
00002de1: PUSH2 0x2dea
00002de4: DUP3
00002de5: DUP10
00002de6: PUSH2 0x2a61
00002de9: JUMP
00002dea: JUMPDEST
00002deb: MSTORE
00002dec: ADD
00002ded: PUSH2 0x2db2
00002df0: JUMP
00002df1: JUMPDEST
00002df2: PUSH1 0x04
00002df4: PUSH1 0x40
00002df6: MLOAD
00002df7: PUSH32 0xed0f386100000000000000000000000000000000000000000000000000000000
00002e18: DUP2
00002e19: MSTORE
00002e1a: REVERT
00002e1b: JUMPDEST
00002e1c: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00002e3d: PUSH0
00002e3e: MSTORE
00002e3f: PUSH1 0x11
00002e41: PUSH1 0x04
00002e43: MSTORE
00002e44: PUSH1 0x24
00002e46: PUSH0
00002e47: REVERT
00002e48: JUMPDEST
00002e49: DUP2
00002e4a: DUP2
00002e4b: MUL
00002e4c: SWAP3
00002e4d: SWAP2
00002e4e: DUP2
00002e4f: ISZERO
00002e50: SWAP2
00002e51: DUP5
00002e52: DIV
00002e53: EQ
00002e54: OR
00002e55: ISZERO
00002e56: PUSH2 0x2e5b
00002e59: JUMPI
00002e5a: JUMP
00002e5b: JUMPDEST
00002e5c: PUSH2 0x2e1b
00002e5f: JUMP
00002e60: JUMPDEST
00002e61: PUSH1 0xff
00002e63: AND
00002e64: PUSH1 0x4d
00002e66: DUP2
00002e67: GT
00002e68: PUSH2 0x2e5b
00002e6b: JUMPI
00002e6c: PUSH1 0x0a
00002e6e: EXP
00002e6f: SWAP1
00002e70: JUMP
00002e71: JUMPDEST
00002e72: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00002e93: PUSH0
00002e94: MSTORE
00002e95: PUSH1 0x12
00002e97: PUSH1 0x04
00002e99: MSTORE
00002e9a: PUSH1 0x24
00002e9c: PUSH0
00002e9d: REVERT
00002e9e: JUMPDEST
00002e9f: DUP2
00002ea0: ISZERO
00002ea1: PUSH2 0x2ea8
00002ea4: JUMPI
00002ea5: DIV
00002ea6: SWAP1
00002ea7: JUMP
00002ea8: JUMPDEST
00002ea9: PUSH2 0x2e71
00002eac: JUMP
00002ead: JUMPDEST
00002eae: PUSH2 0x2ec5
00002eb1: PUSH2 0x22ee
00002eb4: PUSH2 0x22ee
00002eb7: PUSH1 0x03
00002eb9: SLOAD
00002eba: PUSH1 0x01
00002ebc: PUSH1 0x01
00002ebe: PUSH1 0xa0
00002ec0: SHL
00002ec1: SUB
00002ec2: AND
00002ec3: SWAP1
00002ec4: JUMP
00002ec5: JUMPDEST
00002ec6: PUSH1 0x40
00002ec8: MLOAD
00002ec9: PUSH32 0x34ff2eeb00000000000000000000000000000000000000000000000000000000
00002eea: DUP1
00002eeb: DUP3
00002eec: MSTORE
00002eed: PUSH1 0x01
00002eef: PUSH1 0x01
00002ef1: PUSH1 0xa0
00002ef3: SHL
00002ef4: SUB
00002ef5: DUP5
00002ef6: AND
00002ef7: PUSH1 0x04
00002ef9: DUP4
00002efa: ADD
00002efb: MSTORE
00002efc: PUSH1 0x20
00002efe: SWAP4
00002eff: SWAP3
00002f00: SWAP1
00002f01: SWAP2
00002f02: DUP5
00002f03: DUP2
00002f04: PUSH1 0x24
00002f06: DUP2
00002f07: DUP6
00002f08: GAS
00002f09: STATICCALL
00002f0a: SWAP1
00002f0b: DUP2
00002f0c: ISZERO
00002f0d: PUSH2 0x139c
00002f10: JUMPI
00002f11: PUSH0
00002f12: SWAP2
00002f13: PUSH2 0x2ffd
00002f16: JUMPI
00002f17: JUMPDEST
00002f18: POP
00002f19: ISZERO
00002f1a: PUSH2 0x2fd3
00002f1d: JUMPI
00002f1e: PUSH1 0x40
00002f20: MLOAD
00002f21: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
00002f42: DUP2
00002f43: MSTORE
00002f44: ADDRESS
00002f45: PUSH1 0x04
00002f47: DUP3
00002f48: ADD
00002f49: MSTORE
00002f4a: DUP5
00002f4b: DUP2
00002f4c: PUSH1 0x24
00002f4e: DUP2
00002f4f: PUSH1 0x01
00002f51: PUSH1 0x01
00002f53: PUSH1 0xa0
00002f55: SHL
00002f56: SUB
00002f57: DUP9
00002f58: AND
00002f59: GAS
00002f5a: STATICCALL
00002f5b: SWAP3
00002f5c: DUP4
00002f5d: ISZERO
00002f5e: PUSH2 0x139c
00002f61: JUMPI
00002f62: DUP6
00002f63: SWAP2
00002f64: PUSH0
00002f65: SWAP5
00002f66: PUSH2 0x2fb4
00002f69: JUMPI
00002f6a: JUMPDEST
00002f6b: POP
00002f6c: PUSH1 0x40
00002f6e: MLOAD
00002f6f: SWAP1
00002f70: DUP2
00002f71: MSTORE
00002f72: PUSH1 0x01
00002f74: PUSH1 0x01
00002f76: PUSH1 0xa0
00002f78: SHL
00002f79: SUB
00002f7a: DUP6
00002f7b: AND
00002f7c: PUSH1 0x04
00002f7e: DUP3
00002f7f: ADD
00002f80: MSTORE
00002f81: SWAP2
00002f82: DUP3
00002f83: SWAP1
00002f84: PUSH1 0x24
00002f86: SWAP1
00002f87: DUP3
00002f88: SWAP1
00002f89: GAS
00002f8a: STATICCALL
00002f8b: SWAP4
00002f8c: DUP5
00002f8d: ISZERO
00002f8e: PUSH2 0x139c
00002f91: JUMPI
00002f92: PUSH2 0x0492
00002f95: SWAP5
00002f96: PUSH2 0x1326
00002f99: SWAP4
00002f9a: PUSH2 0x2567
00002f9d: SWAP4
00002f9e: PUSH2 0x2fae
00002fa1: SWAP4
00002fa2: PUSH0
00002fa3: SWAP4
00002fa4: PUSH2 0x257a
00002fa7: JUMPI
00002fa8: POP
00002fa9: POP
00002faa: PUSH2 0x2e48
00002fad: JUMP
00002fae: JUMPDEST
00002faf: SWAP3
00002fb0: PUSH2 0x3749
00002fb3: JUMP
00002fb4: JUMPDEST
00002fb5: PUSH2 0x2fcc
00002fb8: SWAP2
00002fb9: SWAP5
00002fba: POP
00002fbb: DUP3
00002fbc: RETURNDATASIZE
00002fbd: DUP5
00002fbe: GT
00002fbf: PUSH2 0x10c2
00002fc2: JUMPI
00002fc3: PUSH2 0x10b3
00002fc6: DUP2
00002fc7: DUP4
00002fc8: PUSH2 0x0ce7
00002fcb: JUMP
00002fcc: JUMPDEST
00002fcd: SWAP3
00002fce: PUSH0
00002fcf: PUSH2 0x2f6a
00002fd2: JUMP
00002fd3: JUMPDEST
00002fd4: PUSH1 0x04
00002fd6: PUSH1 0x40
00002fd8: MLOAD
00002fd9: PUSH32 0x68a7617000000000000000000000000000000000000000000000000000000000
00002ffa: DUP2
00002ffb: MSTORE
00002ffc: REVERT
00002ffd: JUMPDEST
00002ffe: PUSH2 0x3014
00003001: SWAP2
00003002: POP
00003003: DUP6
00003004: RETURNDATASIZE
00003005: DUP8
00003006: GT
00003007: PUSH2 0x10c2
0000300a: JUMPI
0000300b: PUSH2 0x10b3
0000300e: DUP2
0000300f: DUP4
00003010: PUSH2 0x0ce7
00003013: JUMP
00003014: JUMPDEST
00003015: PUSH0
00003016: PUSH2 0x2f17
00003019: JUMP
0000301a: JUMPDEST
0000301b: SWAP2
0000301c: SWAP1
0000301d: DUP3
0000301e: SUB
0000301f: SWAP2
00003020: DUP3
00003021: GT
00003022: PUSH2 0x2e5b
00003025: JUMPI
00003026: JUMP
00003027: JUMPDEST
00003028: PUSH2 0x3039
0000302b: SWAP2
0000302c: PUSH2 0x3034
0000302f: SWAP2
00003030: PUSH2 0x30b3
00003033: JUMP
00003034: JUMPDEST
00003035: PUSH2 0x3221
00003038: JUMP
00003039: JUMPDEST
0000303a: SWAP1
0000303b: PUSH2 0x3051
0000303e: PUSH6 0xffffffffffff
00003045: PUSH1 0x0e
00003047: SLOAD
00003048: PUSH1 0xa0
0000304a: SHR
0000304b: AND
0000304c: DUP4
0000304d: PUSH2 0x37c9
00003050: JUMP
00003051: JUMPDEST
00003052: SWAP2
00003053: DUP3
00003054: DUP2
00003055: SUB
00003056: SWAP1
00003057: DUP2
00003058: GT
00003059: PUSH2 0x2e5b
0000305c: JUMPI
0000305d: SWAP2
0000305e: SWAP1
0000305f: JUMP
00003060: JUMPDEST
00003061: PUSH2 0x306f
00003064: PUSH1 0x0e
00003066: SLOAD
00003067: PUSH1 0xd0
00003069: SHR
0000306a: DUP3
0000306b: PUSH2 0x37c9
0000306e: JUMP
0000306f: JUMPDEST
00003070: SWAP1
00003071: DUP2
00003072: DUP2
00003073: SUB
00003074: SWAP1
00003075: DUP2
00003076: GT
00003077: PUSH2 0x2e5b
0000307a: JUMPI
0000307b: PUSH2 0x3083
0000307e: SWAP1
0000307f: PUSH2 0x2d74
00003082: JUMP
00003083: JUMPDEST
00003084: SWAP3
00003085: SWAP1
00003086: SWAP3
00003087: SWAP2
00003088: SWAP1
00003089: JUMP
0000308a: JUMPDEST
0000308b: SWAP2
0000308c: SWAP1
0000308d: DUP3
0000308e: PUSH1 0x40
00003090: SWAP2
00003091: SUB
00003092: SLT
00003093: PUSH2 0x0015
00003096: JUMPI
00003097: PUSH1 0x20
00003099: DUP3
0000309a: MLOAD
0000309b: SWAP3
0000309c: ADD
0000309d: MLOAD
0000309e: PUSH2 0x0492
000030a1: DUP2
000030a2: PUSH2 0x205b
000030a5: JUMP
000030a6: JUMPDEST
000030a7: SWAP2
000030a8: SWAP1
000030a9: DUP3
000030aa: ADD
000030ab: DUP1
000030ac: SWAP3
000030ad: GT
000030ae: PUSH2 0x2e5b
000030b1: JUMPI
000030b2: JUMP
000030b3: JUMPDEST
000030b4: PUSH0
000030b5: SWAP3
000030b6: DUP2
000030b7: MLOAD
000030b8: DUP4
000030b9: MLOAD
000030ba: SUB
000030bb: PUSH2 0x31f7
000030be: JUMPI
000030bf: SWAP2
000030c0: SWAP3
000030c1: PUSH0
000030c2: SWAP4
000030c3: PUSH2 0x30da
000030c6: PUSH2 0x22ee
000030c9: PUSH2 0x22ee
000030cc: PUSH1 0x03
000030ce: SLOAD
000030cf: PUSH1 0x01
000030d1: PUSH1 0x01
000030d3: PUSH1 0xa0
000030d5: SHL
000030d6: SUB
000030d7: AND
000030d8: SWAP1
000030d9: JUMP
000030da: JUMPDEST
000030db: SWAP2
000030dc: JUMPDEST
000030dd: DUP4
000030de: MLOAD
000030df: DUP7
000030e0: LT
000030e1: ISZERO
000030e2: PUSH2 0x31f0
000030e5: JUMPI
000030e6: PUSH2 0x30f8
000030e9: PUSH2 0x1b5c
000030ec: PUSH2 0x09f4
000030ef: PUSH2 0x22e1
000030f2: DUP10
000030f3: DUP9
000030f4: PUSH2 0x2a61
000030f7: JUMP
000030f8: JUMPDEST
000030f9: PUSH2 0x287e
000030fc: JUMPI
000030fd: PUSH2 0x3109
00003100: PUSH2 0x22e1
00003103: DUP8
00003104: DUP7
00003105: PUSH2 0x2a61
00003108: JUMP
00003109: JUMPDEST
0000310a: PUSH1 0x40
0000310c: SWAP1
0000310d: DUP2
0000310e: MLOAD
0000310f: SWAP2
00003110: PUSH32 0x34ff2eeb00000000000000000000000000000000000000000000000000000000
00003131: DUP4
00003132: MSTORE
00003133: PUSH1 0x20
00003135: SWAP3
00003136: DUP4
00003137: DUP2
00003138: DUP1
00003139: PUSH2 0x3156
0000313c: PUSH1 0x04
0000313e: SWAP7
0000313f: DUP8
00003140: DUP4
00003141: ADD
00003142: SWAP2
00003143: SWAP1
00003144: SWAP2
00003145: PUSH1 0x01
00003147: PUSH1 0x01
00003149: PUSH1 0xa0
0000314b: SHL
0000314c: SUB
0000314d: PUSH1 0x20
0000314f: DUP3
00003150: ADD
00003151: SWAP4
00003152: AND
00003153: SWAP1
00003154: MSTORE
00003155: JUMP
00003156: JUMPDEST
00003157: SUB
00003158: DUP2
00003159: DUP11
0000315a: GAS
0000315b: STATICCALL
0000315c: SWAP4
0000315d: DUP5
0000315e: ISZERO
0000315f: PUSH2 0x139c
00003162: JUMPI
00003163: PUSH0
00003164: SWAP5
00003165: PUSH2 0x31d1
00003168: JUMPI
00003169: JUMPDEST
0000316a: POP
0000316b: POP
0000316c: DUP3
0000316d: ISZERO
0000316e: PUSH2 0x31ab
00003171: JUMPI
00003172: POP
00003173: POP
00003174: PUSH1 0x01
00003176: SWAP2
00003177: PUSH2 0x256c
0000317a: PUSH2 0x3190
0000317d: PUSH2 0x31a3
00003180: SWAP4
00003181: PUSH2 0x318a
00003184: DUP12
00003185: DUP9
00003186: PUSH2 0x2a61
00003189: JUMP
0000318a: JUMPDEST
0000318b: MLOAD
0000318c: PUSH2 0x2e48
0000318f: JUMP
00003190: JUMPDEST
00003191: PUSH2 0x1326
00003194: PUSH2 0x2567
00003197: PUSH2 0x2562
0000319a: PUSH2 0x22e1
0000319d: DUP14
0000319e: DUP13
0000319f: PUSH2 0x2a61
000031a2: JUMP
000031a3: JUMPDEST
000031a4: SWAP6
000031a5: ADD
000031a6: SWAP5
000031a7: PUSH2 0x30dc
000031aa: JUMP
000031ab: JUMPDEST
000031ac: MLOAD
000031ad: PUSH32 0x68a7617000000000000000000000000000000000000000000000000000000000
000031ce: DUP2
000031cf: MSTORE
000031d0: REVERT
000031d1: JUMPDEST
000031d2: PUSH2 0x31e8
000031d5: SWAP3
000031d6: SWAP5
000031d7: POP
000031d8: DUP1
000031d9: RETURNDATASIZE
000031da: LT
000031db: PUSH2 0x10c2
000031de: JUMPI
000031df: PUSH2 0x10b3
000031e2: DUP2
000031e3: DUP4
000031e4: PUSH2 0x0ce7
000031e7: JUMP
000031e8: JUMPDEST
000031e9: SWAP2
000031ea: PUSH0
000031eb: DUP1
000031ec: PUSH2 0x3169
000031ef: JUMP
000031f0: JUMPDEST
000031f1: SWAP5
000031f2: POP
000031f3: POP
000031f4: POP
000031f5: POP
000031f6: JUMP
000031f7: JUMPDEST
000031f8: PUSH1 0x04
000031fa: PUSH1 0x40
000031fc: MLOAD
000031fd: PUSH32 0xa24a13a600000000000000000000000000000000000000000000000000000000
0000321e: DUP2
0000321f: MSTORE
00003220: REVERT
00003221: JUMPDEST
00003222: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00003243: SLOAD
00003244: DUP1
00003245: ISZERO
00003246: PUSH2 0x325d
00003249: JUMPI
0000324a: SWAP1
0000324b: DUP2
0000324c: PUSH2 0x3257
0000324f: PUSH2 0x0492
00003252: SWAP4
00003253: PUSH2 0x368f
00003256: JUMP
00003257: JUMPDEST
00003258: SWAP2
00003259: PUSH2 0x38e0
0000325c: JUMP
0000325d: JUMPDEST
0000325e: POP
0000325f: SWAP1
00003260: JUMP
00003261: JUMPDEST
00003262: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00003283: SLOAD
00003284: DUP1
00003285: ISZERO
00003286: PUSH2 0x32da
00003289: JUMPI
0000328a: PUSH2 0x3292
0000328d: DUP2
0000328e: PUSH2 0x368f
00003291: JUMP
00003292: JUMPDEST
00003293: SWAP1
00003294: PUSH1 0x01
00003296: DUP1
00003297: PUSH2 0x32a1
0000329a: DUP5
0000329b: DUP5
0000329c: DUP8
0000329d: PUSH2 0x38e0
000032a0: JUMP
000032a1: JUMPDEST
000032a2: SWAP6
000032a3: PUSH2 0x32ab
000032a6: DUP2
000032a7: PUSH2 0x420d
000032aa: JUMP
000032ab: JUMPDEST
000032ac: AND
000032ad: EQ
000032ae: SWAP3
000032af: DUP4
000032b0: PUSH2 0x32c5
000032b3: JUMPI
000032b4: JUMPDEST
000032b5: POP
000032b6: POP
000032b7: POP
000032b8: ISZERO
000032b9: ISZERO
000032ba: DUP2
000032bb: ADD
000032bc: DUP1
000032bd: SWAP2
000032be: GT
000032bf: PUSH2 0x2e5b
000032c2: JUMPI
000032c3: SWAP1
000032c4: JUMP
000032c5: JUMPDEST
000032c6: SWAP1
000032c7: SWAP2
000032c8: DUP1
000032c9: SWAP4
000032ca: POP
000032cb: ISZERO
000032cc: PUSH2 0x2ea8
000032cf: JUMPI
000032d0: MULMOD
000032d1: ISZERO
000032d2: ISZERO
000032d3: PUSH0
000032d4: DUP1
000032d5: DUP1
000032d6: PUSH2 0x32b4
000032d9: JUMP
000032da: JUMPDEST
000032db: POP
000032dc: SWAP1
000032dd: POP
000032de: SWAP1
000032df: JUMP
000032e0: JUMPDEST
000032e1: SWAP1
000032e2: PUSH1 0x01
000032e4: PUSH1 0x01
000032e6: PUSH1 0xa0
000032e8: SHL
000032e9: SUB
000032ea: AND
000032eb: SWAP1
000032ec: DUP2
000032ed: PUSH0
000032ee: MSTORE
000032ef: PUSH0
000032f0: PUSH1 0x20
000032f2: MSTORE
000032f3: PUSH1 0xff
000032f5: PUSH1 0x40
000032f7: PUSH0
000032f8: KECCAK256
000032f9: SLOAD
000032fa: AND
000032fb: ISZERO
000032fc: PUSH2 0x287e
000032ff: JUMPI
00003300: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00003321: SLOAD
00003322: SWAP1
00003323: DUP2
00003324: ISZERO
00003325: PUSH2 0x2df1
00003328: JUMPI
00003329: PUSH1 0x40
0000332b: MLOAD
0000332c: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000
0000334d: DUP2
0000334e: MSTORE
0000334f: ADDRESS
00003350: PUSH1 0x04
00003352: DUP3
00003353: ADD
00003354: MSTORE
00003355: SWAP3
00003356: PUSH1 0x20
00003358: SWAP1
00003359: DUP5
0000335a: SWAP1
0000335b: PUSH1 0x24
0000335d: SWAP1
0000335e: DUP3
0000335f: SWAP1
00003360: GAS
00003361: STATICCALL
00003362: SWAP1
00003363: DUP2
00003364: ISZERO
00003365: PUSH2 0x139c
00003368: JUMPI
00003369: PUSH2 0x0492
0000336c: SWAP4
0000336d: PUSH0
0000336e: SWAP3
0000336f: PUSH2 0x3382
00003372: JUMPI
00003373: JUMPDEST
00003374: POP
00003375: DUP2
00003376: PUSH2 0x38e0
00003379: JUMPI
0000337a: PUSH1 0x01
0000337c: SWAP2
0000337d: POP
0000337e: PUSH2 0x38e0
00003381: JUMP
00003382: JUMPDEST
00003383: PUSH2 0x339c
00003386: SWAP2
00003387: SWAP3
00003388: POP
00003389: PUSH1 0x20
0000338b: RETURNDATASIZE
0000338c: PUSH1 0x20
0000338e: GT
0000338f: PUSH2 0x10c2
00003392: JUMPI
00003393: PUSH2 0x10b3
00003396: DUP2
00003397: DUP4
00003398: PUSH2 0x0ce7
0000339b: JUMP
0000339c: JUMPDEST
0000339d: SWAP1
0000339e: PUSH0
0000339f: PUSH2 0x3373
000033a2: JUMP
000033a3: JUMPDEST
000033a4: SWAP3
000033a5: PUSH2 0x0492
000033a8: SWAP5
000033a9: SWAP3
000033aa: PUSH2 0x33c5
000033ad: SWAP3
000033ae: DUP6
000033af: MSTORE
000033b0: PUSH1 0x20
000033b2: DUP6
000033b3: ADD
000033b4: MSTORE
000033b5: PUSH1 0x80
000033b7: PUSH1 0x40
000033b9: DUP6
000033ba: ADD
000033bb: MSTORE
000033bc: PUSH1 0x80
000033be: DUP5
000033bf: ADD
000033c0: SWAP1
000033c1: PUSH2 0x03fe
000033c4: JUMP
000033c5: JUMPDEST
000033c6: SWAP2
000033c7: PUSH1 0x60
000033c9: DUP2
000033ca: DUP5
000033cb: SUB
000033cc: SWAP2
000033cd: ADD
000033ce: MSTORE
000033cf: PUSH2 0x043a
000033d2: JUMP
000033d3: JUMPDEST
000033d4: PUSH1 0x40
000033d6: MLOAD
000033d7: SWAP1
000033d8: PUSH2 0x33e0
000033db: DUP3
000033dc: PUSH2 0x0ccb
000033df: JUMP
000033e0: JUMPDEST
000033e1: PUSH0
000033e2: PUSH1 0x60
000033e4: DUP4
000033e5: DUP3
000033e6: DUP2
000033e7: MSTORE
000033e8: DUP3
000033e9: PUSH1 0x20
000033eb: DUP3
000033ec: ADD
000033ed: MSTORE
000033ee: DUP3
000033ef: PUSH1 0x40
000033f1: DUP3
000033f2: ADD
000033f3: MSTORE
000033f4: ADD
000033f5: MSTORE
000033f6: JUMP
000033f7: JUMPDEST
000033f8: PUSH1 0x40
000033fa: MLOAD
000033fb: SWAP1
000033fc: PUSH2 0x3404
000033ff: DUP3
00003400: PUSH2 0x0ccb
00003403: JUMP
00003404: JUMPDEST
00003405: DUP2
00003406: PUSH1 0x60
00003408: PUSH1 0x04
0000340a: SLOAD
0000340b: PUSH16 0xffffffffffffffffffffffffffffffff
0000341c: SWAP1
0000341d: DUP2
0000341e: DUP2
0000341f: AND
00003420: DUP5
00003421: MSTORE
00003422: PUSH1 0x80
00003424: SHR
00003425: PUSH1 0x20
00003427: DUP5
00003428: ADD
00003429: MSTORE
0000342a: PUSH1 0x05
0000342c: SLOAD
0000342d: SWAP1
0000342e: DUP2
0000342f: AND
00003430: PUSH1 0x40
00003432: DUP5
00003433: ADD
00003434: MSTORE
00003435: PUSH1 0x80
00003437: SHR
00003438: SWAP2
00003439: ADD
0000343a: MSTORE
0000343b: JUMP
0000343c: JUMPDEST
0000343d: CALLDATASIZE
0000343e: PUSH0
0000343f: DUP1
00003440: CALLDATACOPY
00003441: PUSH0
00003442: DUP1
00003443: CALLDATASIZE
00003444: DUP2
00003445: PUSH32 0x67f3bdb99ec85305417f06f626cf52c7dee7e44607664b5f1cce0af5d822472f
00003466: SLOAD
00003467: GAS
00003468: DELEGATECALL
00003469: RETURNDATASIZE
0000346a: PUSH0
0000346b: DUP1
0000346c: RETURNDATACOPY
0000346d: ISZERO
0000346e: PUSH2 0x3475
00003471: JUMPI
00003472: RETURNDATASIZE
00003473: PUSH0
00003474: RETURN
00003475: JUMPDEST
00003476: RETURNDATASIZE
00003477: PUSH0
00003478: REVERT
00003479: JUMPDEST
0000347a: SWAP2
0000347b: PUSH1 0x01
0000347d: PUSH1 0x01
0000347f: PUSH1 0xa0
00003481: SHL
00003482: SUB
00003483: SWAP2
00003484: DUP3
00003485: DUP5
00003486: AND
00003487: SWAP3
00003488: DUP4
00003489: ISZERO
0000348a: PUSH2 0x3609
0000348d: JUMPI
0000348e: DUP2
0000348f: AND
00003490: SWAP4
00003491: DUP5
00003492: ISZERO
00003493: PUSH2 0x35d9
00003496: JUMPI
00003497: PUSH2 0x34d0
0000349a: DUP2
0000349b: PUSH1 0x01
0000349d: PUSH1 0x01
0000349f: PUSH1 0xa0
000034a1: SHL
000034a2: SUB
000034a3: AND
000034a4: PUSH0
000034a5: MSTORE
000034a6: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
000034c7: PUSH1 0x20
000034c9: MSTORE
000034ca: PUSH1 0x40
000034cc: PUSH0
000034cd: KECCAK256
000034ce: SWAP1
000034cf: JUMP
000034d0: JUMPDEST
000034d1: SLOAD
000034d2: DUP4
000034d3: DUP2
000034d4: LT
000034d5: PUSH2 0x3591
000034d8: JUMPI
000034d9: PUSH2 0x358c
000034dc: SWAP3
000034dd: DUP5
000034de: SWAP3
000034df: PUSH2 0x353f
000034e2: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00003503: SWAP7
00003504: PUSH2 0x3576
00003507: SWAP5
00003508: SUB
00003509: SWAP2
0000350a: PUSH1 0x01
0000350c: PUSH1 0x01
0000350e: PUSH1 0xa0
00003510: SHL
00003511: SUB
00003512: AND
00003513: PUSH0
00003514: MSTORE
00003515: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00003536: PUSH1 0x20
00003538: MSTORE
00003539: PUSH1 0x40
0000353b: PUSH0
0000353c: KECCAK256
0000353d: SWAP1
0000353e: JUMP
0000353f: JUMPDEST
00003540: SSTORE
00003541: PUSH1 0x01
00003543: PUSH1 0x01
00003545: PUSH1 0xa0
00003547: SHL
00003548: SUB
00003549: AND
0000354a: PUSH0
0000354b: MSTORE
0000354c: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
0000356d: PUSH1 0x20
0000356f: MSTORE
00003570: PUSH1 0x40
00003572: PUSH0
00003573: KECCAK256
00003574: SWAP1
00003575: JUMP
00003576: JUMPDEST
00003577: DUP1
00003578: SLOAD
00003579: DUP3
0000357a: ADD
0000357b: SWAP1
0000357c: SSTORE
0000357d: PUSH1 0x40
0000357f: MLOAD
00003580: SWAP1
00003581: DUP2
00003582: MSTORE
00003583: SWAP1
00003584: DUP2
00003585: SWAP1
00003586: PUSH1 0x20
00003588: DUP3
00003589: ADD
0000358a: SWAP1
0000358b: JUMP
0000358c: JUMPDEST
0000358d: SUB
0000358e: SWAP1
0000358f: LOG3
00003590: JUMP
00003591: JUMPDEST
00003592: PUSH1 0x40
00003594: MLOAD
00003595: PUSH32 0xe450d38c00000000000000000000000000000000000000000000000000000000
000035b6: DUP2
000035b7: MSTORE
000035b8: PUSH1 0x01
000035ba: PUSH1 0x01
000035bc: PUSH1 0xa0
000035be: SHL
000035bf: SUB
000035c0: SWAP3
000035c1: SWAP1
000035c2: SWAP3
000035c3: AND
000035c4: PUSH1 0x04
000035c6: DUP4
000035c7: ADD
000035c8: MSTORE
000035c9: PUSH1 0x24
000035cb: DUP3
000035cc: ADD
000035cd: MSTORE
000035ce: PUSH1 0x44
000035d0: DUP2
000035d1: ADD
000035d2: DUP4
000035d3: SWAP1
000035d4: MSTORE
000035d5: PUSH1 0x64
000035d7: SWAP1
000035d8: REVERT
000035d9: JUMPDEST
000035da: PUSH1 0x24
000035dc: PUSH1 0x40
000035de: MLOAD
000035df: PUSH32 0xec442f0500000000000000000000000000000000000000000000000000000000
00003600: DUP2
00003601: MSTORE
00003602: PUSH0
00003603: PUSH1 0x04
00003605: DUP3
00003606: ADD
00003607: MSTORE
00003608: REVERT
00003609: JUMPDEST
0000360a: PUSH1 0x24
0000360c: PUSH1 0x40
0000360e: MLOAD
0000360f: PUSH32 0x96c6fd1e00000000000000000000000000000000000000000000000000000000
00003630: DUP2
00003631: MSTORE
00003632: PUSH0
00003633: PUSH1 0x04
00003635: DUP3
00003636: ADD
00003637: MSTORE
00003638: REVERT
00003639: JUMPDEST
0000363a: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
0000365b: SLOAD
0000365c: DUP1
0000365d: ISZERO
0000365e: PUSH2 0x368a
00003661: JUMPI
00003662: PUSH2 0x366c
00003665: PUSH2 0x13b4
00003668: PUSH2 0x2a8f
0000366b: JUMP
0000366c: JUMPDEST
0000366d: PUSH8 0x0de0b6b3a7640000
00003676: SWAP1
00003677: DUP2
00003678: DUP2
00003679: MUL
0000367a: SWAP2
0000367b: DUP2
0000367c: DUP4
0000367d: DIV
0000367e: EQ
0000367f: SWAP1
00003680: ISZERO
00003681: OR
00003682: ISZERO
00003683: PUSH2 0x2e5b
00003686: JUMPI
00003687: DIV
00003688: SWAP1
00003689: JUMP
0000368a: JUMPDEST
0000368b: POP
0000368c: PUSH0
0000368d: SWAP1
0000368e: JUMP
0000368f: JUMPDEST
00003690: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
000036b1: SLOAD
000036b2: SWAP1
000036b3: DUP2
000036b4: ISZERO
000036b5: PUSH2 0x36d0
000036b8: JUMPI
000036b9: PUSH2 0x36cc
000036bc: SWAP1
000036bd: PUSH2 0x36c7
000036c0: PUSH2 0x13b4
000036c3: PUSH2 0x2a8f
000036c6: JUMP
000036c7: JUMPDEST
000036c8: PUSH2 0x2e48
000036cb: JUMP
000036cc: JUMPDEST
000036cd: DIV
000036ce: SWAP1
000036cf: JUMP
000036d0: JUMPDEST
000036d1: POP
000036d2: POP
000036d3: PUSH0
000036d4: SWAP1
000036d5: JUMP
000036d6: JUMPDEST
000036d7: PUSH2 0x36df
000036da: SWAP1
000036db: PUSH2 0x2ead
000036de: JUMP
000036df: JUMPDEST
000036e0: PUSH4 0x3b9aca00
000036e5: SWAP1
000036e6: DUP2
000036e7: DUP2
000036e8: MUL
000036e9: SWAP2
000036ea: DUP2
000036eb: DUP4
000036ec: DIV
000036ed: EQ
000036ee: SWAP1
000036ef: ISZERO
000036f0: OR
000036f1: ISZERO
000036f2: PUSH2 0x2e5b
000036f5: JUMPI
000036f6: DUP2
000036f7: ISZERO
000036f8: PUSH2 0x2ea8
000036fb: JUMPI
000036fc: DIV
000036fd: PUSH8 0xffffffffffffffff
00003706: SWAP1
00003707: DUP2
00003708: DUP2
00003709: GT
0000370a: PUSH2 0x3711
0000370d: JUMPI
0000370e: AND
0000370f: SWAP1
00003710: JUMP
00003711: JUMPDEST
00003712: PUSH1 0x44
00003714: SWAP1
00003715: PUSH1 0x40
00003717: MLOAD
00003718: SWAP1
00003719: PUSH32 0x6dfcc65000000000000000000000000000000000000000000000000000000000
0000373a: DUP3
0000373b: MSTORE
0000373c: PUSH1 0x40
0000373e: PUSH1 0x04
00003740: DUP4
00003741: ADD
00003742: MSTORE
00003743: PUSH1 0x24
00003745: DUP3
00003746: ADD
00003747: MSTORE
00003748: REVERT
00003749: JUMPDEST
0000374a: PUSH1 0x20
0000374c: PUSH1 0x01
0000374e: PUSH1 0x01
00003750: PUSH1 0xa0
00003752: SHL
00003753: SUB
00003754: SWAP2
00003755: PUSH1 0x04
00003757: PUSH1 0x40
00003759: MLOAD
0000375a: DUP1
0000375b: SWAP5
0000375c: DUP2
0000375d: SWAP4
0000375e: PUSH32 0x313ce56700000000000000000000000000000000000000000000000000000000
0000377f: DUP4
00003780: MSTORE
00003781: AND
00003782: GAS
00003783: STATICCALL
00003784: SWAP1
00003785: DUP2
00003786: ISZERO
00003787: PUSH2 0x139c
0000378a: JUMPI
0000378b: PUSH0
0000378c: SWAP2
0000378d: PUSH2 0x3794
00003790: JUMPI
00003791: POP
00003792: SWAP1
00003793: JUMP
00003794: JUMPDEST
00003795: SWAP1
00003796: POP
00003797: PUSH1 0x20
00003799: DUP2
0000379a: RETURNDATASIZE
0000379b: PUSH1 0x20
0000379d: GT
0000379e: PUSH2 0x37c1
000037a1: JUMPI
000037a2: JUMPDEST
000037a3: DUP2
000037a4: PUSH2 0x37af
000037a7: PUSH1 0x20
000037a9: SWAP4
000037aa: DUP4
000037ab: PUSH2 0x0ce7
000037ae: JUMP
000037af: JUMPDEST
000037b0: DUP2
000037b1: ADD
000037b2: SUB
000037b3: SLT
000037b4: PUSH2 0x0015
000037b7: JUMPI
000037b8: MLOAD
000037b9: PUSH2 0x0492
000037bc: DUP2
000037bd: PUSH2 0x205b
000037c0: JUMP
000037c1: JUMPDEST
000037c2: RETURNDATASIZE
000037c3: SWAP2
000037c4: POP
000037c5: PUSH2 0x37a2
000037c8: JUMP
000037c9: JUMPDEST
000037ca: SWAP1
000037cb: DUP1
000037cc: DUP3
000037cd: MUL
000037ce: SWAP1
000037cf: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
000037f0: DUP2
000037f1: DUP5
000037f2: MULMOD
000037f3: SWAP1
000037f4: DUP3
000037f5: DUP1
000037f6: DUP4
000037f7: LT
000037f8: SWAP3
000037f9: SUB
000037fa: SWAP2
000037fb: DUP1
000037fc: DUP4
000037fd: SUB
000037fe: SWAP3
000037ff: EQ
00003800: PUSH2 0x384a
00003803: JUMPI
00003804: PUSH2 0x2710
00003807: SWAP1
00003808: DUP3
00003809: DUP3
0000380a: GT
0000380b: ISZERO
0000380c: PUSH2 0x3845
0000380f: JUMPI
00003810: PUSH32 0xbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e91
00003831: SWAP5
00003832: MULMOD
00003833: SWAP1
00003834: DUP3
00003835: DUP3
00003836: GT
00003837: SWAP1
00003838: SUB
00003839: PUSH1 0xfc
0000383b: SHL
0000383c: SWAP2
0000383d: SUB
0000383e: PUSH1 0x04
00003840: SHR
00003841: OR
00003842: MUL
00003843: SWAP1
00003844: JUMP
00003845: JUMPDEST
00003846: PUSH2 0x40ef
00003849: JUMP
0000384a: JUMPDEST
0000384b: POP
0000384c: POP
0000384d: PUSH2 0x2710
00003850: SWAP2
00003851: POP
00003852: DIV
00003853: SWAP1
00003854: JUMP
00003855: JUMPDEST
00003856: SWAP1
00003857: DUP1
00003858: DUP3
00003859: MUL
0000385a: SWAP1
0000385b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000387c: DUP2
0000387d: DUP5
0000387e: MULMOD
0000387f: SWAP1
00003880: DUP3
00003881: DUP1
00003882: DUP4
00003883: LT
00003884: SWAP3
00003885: SUB
00003886: SWAP2
00003887: DUP1
00003888: DUP4
00003889: SUB
0000388a: SWAP3
0000388b: EQ
0000388c: PUSH2 0x38d3
0000388f: JUMPI
00003890: PUSH4 0x3b9aca00
00003895: SWAP1
00003896: DUP3
00003897: DUP3
00003898: GT
00003899: ISZERO
0000389a: PUSH2 0x3845
0000389d: JUMPI
0000389e: PUSH32 0x88f2cfb83100cb4e69e7c79c58b316e597157d372fb9787e8e47ce423a2e9c6d
000038bf: SWAP5
000038c0: MULMOD
000038c1: SWAP1
000038c2: DUP3
000038c3: DUP3
000038c4: GT
000038c5: SWAP1
000038c6: SUB
000038c7: PUSH1 0xf7
000038c9: SHL
000038ca: SWAP2
000038cb: SUB
000038cc: PUSH1 0x09
000038ce: SHR
000038cf: OR
000038d0: MUL
000038d1: SWAP1
000038d2: JUMP
000038d3: JUMPDEST
000038d4: POP
000038d5: POP
000038d6: PUSH4 0x3b9aca00
000038db: SWAP2
000038dc: POP
000038dd: DIV
000038de: SWAP1
000038df: JUMP
000038e0: JUMPDEST
000038e1: SWAP2
000038e2: DUP2
000038e3: DUP4
000038e4: MUL
000038e5: SWAP2
000038e6: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00003907: DUP2
00003908: DUP6
00003909: MULMOD
0000390a: SWAP4
0000390b: DUP4
0000390c: DUP1
0000390d: DUP7
0000390e: LT
0000390f: SWAP6
00003910: SUB
00003911: SWAP5
00003912: DUP1
00003913: DUP7
00003914: SUB
00003915: SWAP6
00003916: EQ
00003917: PUSH2 0x397f
0000391a: JUMPI
0000391b: DUP5
0000391c: DUP4
0000391d: GT
0000391e: ISZERO
0000391f: PUSH2 0x3972
00003922: JUMPI
00003923: SWAP1
00003924: DUP3
00003925: SWAP2
00003926: MULMOD
00003927: DUP2
00003928: PUSH0
00003929: SUB
0000392a: DUP3
0000392b: AND
0000392c: DUP1
0000392d: SWAP3
0000392e: DIV
0000392f: PUSH1 0x02
00003931: DUP1
00003932: DUP3
00003933: PUSH1 0x03
00003935: MUL
00003936: XOR
00003937: DUP1
00003938: DUP4
00003939: MUL
0000393a: DUP3
0000393b: SUB
0000393c: MUL
0000393d: DUP1
0000393e: DUP4
0000393f: MUL
00003940: DUP3
00003941: SUB
00003942: MUL
00003943: DUP1
00003944: DUP4
00003945: MUL
00003946: DUP3
00003947: SUB
00003948: MUL
00003949: DUP1
0000394a: DUP4
0000394b: MUL
0000394c: DUP3
0000394d: SUB
0000394e: MUL
0000394f: DUP1
00003950: DUP4
00003951: MUL
00003952: DUP3
00003953: SUB
00003954: MUL
00003955: DUP1
00003956: SWAP3
00003957: MUL
00003958: SWAP1
00003959: SUB
0000395a: MUL
0000395b: SWAP4
0000395c: PUSH1 0x01
0000395e: DUP4
0000395f: DUP1
00003960: PUSH0
00003961: SUB
00003962: DIV
00003963: ADD
00003964: SWAP1
00003965: DUP5
00003966: DUP4
00003967: GT
00003968: SWAP1
00003969: SUB
0000396a: MUL
0000396b: SWAP3
0000396c: SUB
0000396d: DIV
0000396e: OR
0000396f: MUL
00003970: SWAP1
00003971: JUMP
00003972: JUMPDEST
00003973: DUP3
00003974: ISZERO
00003975: PUSH1 0x03
00003977: MUL
00003978: PUSH1 0x11
0000397a: XOR
0000397b: PUSH2 0x4101
0000397e: JUMP
0000397f: JUMPDEST
00003980: POP
00003981: POP
00003982: SWAP1
00003983: PUSH2 0x0492
00003986: SWAP3
00003987: POP
00003988: PUSH2 0x2e9e
0000398b: JUMP
0000398c: JUMPDEST
0000398d: PUSH1 0xff
0000398f: PUSH32 0xcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300
000039b0: SLOAD
000039b1: AND
000039b2: PUSH2 0x39b7
000039b5: JUMPI
000039b6: JUMP
000039b7: JUMPDEST
000039b8: PUSH1 0x04
000039ba: PUSH1 0x40
000039bc: MLOAD
000039bd: PUSH32 0xd93c066500000000000000000000000000000000000000000000000000000000
000039de: DUP2
000039df: MSTORE
000039e0: REVERT
000039e1: JUMPDEST
000039e2: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00003a03: SLOAD
00003a04: DUP1
00003a05: ISZERO
00003a06: PUSH2 0x3af6
00003a09: JUMPI
00003a0a: PUSH1 0x06
00003a0c: SLOAD
00003a0d: SWAP1
00003a0e: PUSH8 0xffffffffffffffff
00003a17: DUP3
00003a18: PUSH1 0x40
00003a1a: SHR
00003a1b: AND
00003a1c: TIMESTAMP
00003a1d: GT
00003a1e: PUSH2 0x3a25
00003a21: JUMPI
00003a22: POP
00003a23: POP
00003a24: JUMP
00003a25: JUMPDEST
00003a26: PUSH2 0x3ad7
00003a29: SWAP2
00003a2a: PUSH2 0x3a49
00003a2d: PUSH16 0xffffffffffffffffffffffffffffffff
00003a3e: SWAP3
00003a3f: DUP4
00003a40: SWAP3
00003a41: PUSH1 0x80
00003a43: SHR
00003a44: SWAP1
00003a45: PUSH2 0x3855
00003a48: JUMP
00003a49: JUMPDEST
00003a4a: AND
00003a4b: SWAP1
00003a4c: PUSH1 0x05
00003a4e: SLOAD
00003a4f: PUSH1 0x80
00003a51: SHR
00003a52: SWAP1
00003a53: PUSH2 0x3a5a
00003a56: PUSH2 0x33d3
00003a59: JUMP
00003a5a: JUMPDEST
00003a5b: POP
00003a5c: PUSH1 0x40
00003a5e: MLOAD
00003a5f: SWAP3
00003a60: PUSH2 0x3a68
00003a63: DUP5
00003a64: PUSH2 0x0ccb
00003a67: JUMP
00003a68: JUMPDEST
00003a69: DUP1
00003a6a: DUP5
00003a6b: MSTORE
00003a6c: PUSH1 0x20
00003a6e: DUP5
00003a6f: ADD
00003a70: MSTORE
00003a71: TIMESTAMP
00003a72: AND
00003a73: PUSH1 0x40
00003a75: DUP4
00003a76: ADD
00003a77: MSTORE
00003a78: PUSH1 0x60
00003a7a: DUP3
00003a7b: ADD
00003a7c: MSTORE
00003a7d: PUSH16 0xffffffffffffffffffffffffffffffff
00003a8e: PUSH1 0x60
00003a90: DUP2
00003a91: DUP4
00003a92: MLOAD
00003a93: AND
00003a94: SWAP2
00003a95: PUSH32 0xffffffffffffffffffffffffffffffff00000000000000000000000000000000
00003ab6: SWAP3
00003ab7: DUP4
00003ab8: PUSH1 0x20
00003aba: DUP7
00003abb: ADD
00003abc: MLOAD
00003abd: PUSH1 0x80
00003abf: SHL
00003ac0: AND
00003ac1: OR
00003ac2: PUSH1 0x04
00003ac4: SSTORE
00003ac5: PUSH1 0x40
00003ac7: DUP5
00003ac8: ADD
00003ac9: MLOAD
00003aca: AND
00003acb: SWAP3
00003acc: ADD
00003acd: MLOAD
00003ace: PUSH1 0x80
00003ad0: SHL
00003ad1: AND
00003ad2: OR
00003ad3: PUSH1 0x05
00003ad5: SSTORE
00003ad6: JUMP
00003ad7: JUMPDEST
00003ad8: PUSH2 0x296f
00003adb: PUSH2 0x1c82
00003ade: PUSH2 0x1c6f
00003ae1: PUSH2 0x1c7c
00003ae4: PUSH2 0x1c6f
00003ae7: PUSH1 0x06
00003ae9: SLOAD
00003aea: PUSH8 0xffffffffffffffff
00003af3: AND
00003af4: SWAP1
00003af5: JUMP
00003af6: JUMPDEST
00003af7: POP
00003af8: JUMP
00003af9: JUMPDEST
00003afa: PUSH1 0x40
00003afc: MLOAD
00003afd: SWAP1
00003afe: PUSH2 0x3b06
00003b01: DUP3
00003b02: PUSH2 0x0ccb
00003b05: JUMP
00003b06: JUMPDEST
00003b07: PUSH1 0x04
00003b09: SLOAD
00003b0a: SWAP2
00003b0b: PUSH16 0xffffffffffffffffffffffffffffffff
00003b1c: SWAP1
00003b1d: DUP2
00003b1e: DUP5
00003b1f: AND
00003b20: SWAP3
00003b21: DUP4
00003b22: DUP3
00003b23: MSTORE
00003b24: PUSH1 0x20
00003b26: DUP3
00003b27: ADD
00003b28: SWAP5
00003b29: PUSH1 0x80
00003b2b: SHR
00003b2c: DUP6
00003b2d: MSTORE
00003b2e: DUP3
00003b2f: DUP1
00003b30: PUSH1 0x05
00003b32: SLOAD
00003b33: SWAP7
00003b34: PUSH2 0x3b4e
00003b37: PUSH1 0x40
00003b39: DUP7
00003b3a: ADD
00003b3b: SWAP6
00003b3c: DUP4
00003b3d: DUP11
00003b3e: AND
00003b3f: DUP8
00003b40: MSTORE
00003b41: DUP10
00003b42: PUSH1 0x80
00003b44: SHR
00003b45: PUSH1 0x60
00003b47: DUP3
00003b48: ADD
00003b49: MSTORE
00003b4a: PUSH2 0x4244
00003b4d: JUMP
00003b4e: JUMPDEST
00003b4f: MLOAD
00003b50: AND
00003b51: SWAP2
00003b52: AND
00003b53: SWAP1
00003b54: DUP2
00003b55: DUP2
00003b56: LT
00003b57: PUSH2 0x3b9b
00003b5a: JUMPI
00003b5b: SUB
00003b5c: SWAP3
00003b5d: DUP3
00003b5e: DUP5
00003b5f: GT
00003b60: PUSH2 0x2e5b
00003b63: JUMPI
00003b64: PUSH32 0xffffffffffffffffffffffffffffffff00000000000000000000000000000000
00003b85: DUP1
00003b86: SWAP5
00003b87: PUSH1 0x80
00003b89: SHL
00003b8a: AND
00003b8b: OR
00003b8c: PUSH1 0x04
00003b8e: SSTORE
00003b8f: MLOAD
00003b90: AND
00003b91: SWAP2
00003b92: AND
00003b93: OR
00003b94: PUSH1 0x05
00003b96: SSTORE
00003b97: PUSH1 0x01
00003b99: SWAP1
00003b9a: JUMP
00003b9b: JUMPDEST
00003b9c: POP
00003b9d: POP
00003b9e: POP
00003b9f: POP
00003ba0: POP
00003ba1: POP
00003ba2: PUSH0
00003ba3: SWAP1
00003ba4: JUMP
00003ba5: JUMPDEST
00003ba6: SWAP3
00003ba7: SWAP4
00003ba8: SWAP5
00003ba9: SWAP2
00003baa: SWAP1
00003bab: SWAP5
00003bac: PUSH0
00003bad: JUMPDEST
00003bae: DUP5
00003baf: MLOAD
00003bb0: DUP2
00003bb1: LT
00003bb2: ISZERO
00003bb3: PUSH2 0x3c9e
00003bb6: JUMPI
00003bb7: PUSH1 0x01
00003bb9: PUSH1 0x01
00003bbb: PUSH1 0xa0
00003bbd: SHL
00003bbe: SUB
00003bbf: PUSH2 0x3beb
00003bc2: DUP2
00003bc3: PUSH2 0x3bcc
00003bc6: DUP5
00003bc7: DUP10
00003bc8: PUSH2 0x2a61
00003bcb: JUMP
00003bcc: JUMPDEST
00003bcd: MLOAD
00003bce: AND
00003bcf: PUSH1 0x01
00003bd1: PUSH1 0x01
00003bd3: PUSH1 0xa0
00003bd5: SHL
00003bd6: SUB
00003bd7: AND
00003bd8: PUSH0
00003bd9: MSTORE
00003bda: PUSH0
00003bdb: PUSH1 0x20
00003bdd: MSTORE
00003bde: PUSH1 0xff
00003be0: PUSH1 0x40
00003be2: PUSH0
00003be3: KECCAK256
00003be4: SLOAD
00003be5: PUSH1 0x08
00003be7: SHR
00003be8: AND
00003be9: SWAP1
00003bea: JUMP
00003beb: JUMPDEST
00003bec: ISZERO
00003bed: PUSH2 0x3c74
00003bf0: JUMPI
00003bf1: PUSH2 0x3bfa
00003bf4: DUP3
00003bf5: DUP8
00003bf6: PUSH2 0x2a61
00003bf9: JUMP
00003bfa: JUMPDEST
00003bfb: MLOAD
00003bfc: AND
00003bfd: SWAP1
00003bfe: PUSH2 0x3c07
00003c01: DUP2
00003c02: DUP10
00003c03: PUSH2 0x2a61
00003c06: JUMP
00003c07: JUMPDEST
00003c08: MLOAD
00003c09: PUSH1 0x40
00003c0b: SWAP1
00003c0c: DUP2
00003c0d: MLOAD
00003c0e: SWAP1
00003c0f: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000
00003c30: PUSH1 0x20
00003c32: DUP4
00003c33: ADD
00003c34: MSTORE
00003c35: CALLER
00003c36: PUSH1 0x24
00003c38: DUP4
00003c39: ADD
00003c3a: MSTORE
00003c3b: ADDRESS
00003c3c: PUSH1 0x44
00003c3e: DUP4
00003c3f: ADD
00003c40: MSTORE
00003c41: PUSH1 0x64
00003c43: SWAP1
00003c44: DUP2
00003c45: DUP4
00003c46: ADD
00003c47: MSTORE
00003c48: DUP2
00003c49: MSTORE
00003c4a: PUSH1 0xa0
00003c4c: DUP2
00003c4d: ADD
00003c4e: SWAP4
00003c4f: DUP2
00003c50: DUP6
00003c51: LT
00003c52: PUSH8 0xffffffffffffffff
00003c5b: DUP7
00003c5c: GT
00003c5d: OR
00003c5e: PUSH2 0x0cc6
00003c61: JUMPI
00003c62: PUSH1 0x01
00003c64: SWAP5
00003c65: PUSH2 0x3c6e
00003c68: SWAP4
00003c69: MSTORE
00003c6a: PUSH2 0x44b3
00003c6d: JUMP
00003c6e: JUMPDEST
00003c6f: ADD
00003c70: PUSH2 0x3bad
00003c73: JUMP
00003c74: JUMPDEST
00003c75: PUSH1 0x04
00003c77: PUSH1 0x40
00003c79: MLOAD
00003c7a: PUSH32 0xf84835a000000000000000000000000000000000000000000000000000000000
00003c9b: DUP2
00003c9c: MSTORE
00003c9d: REVERT
00003c9e: JUMPDEST
00003c9f: POP
00003ca0: SWAP2
00003ca1: SWAP5
00003ca2: POP
00003ca3: SWAP2
00003ca4: POP
00003ca5: PUSH2 0x296f
00003ca8: SWAP3
00003ca9: DUP1
00003caa: PUSH2 0x3cb4
00003cad: JUMPI
00003cae: JUMPDEST
00003caf: POP
00003cb0: PUSH2 0x42a9
00003cb3: JUMP
00003cb4: JUMPDEST
00003cb5: PUSH2 0x3ccf
00003cb8: SWAP1
00003cb9: PUSH2 0x3cca
00003cbc: PUSH1 0x0e
00003cbe: SLOAD
00003cbf: PUSH1 0x01
00003cc1: PUSH1 0x01
00003cc3: PUSH1 0xa0
00003cc5: SHL
00003cc6: SUB
00003cc7: AND
00003cc8: SWAP1
00003cc9: JUMP
00003cca: JUMPDEST
00003ccb: PUSH2 0x42a9
00003cce: JUMP
00003ccf: JUMPDEST
00003cd0: PUSH0
00003cd1: PUSH2 0x3cae
00003cd4: JUMP
00003cd5: JUMPDEST
00003cd6: PUSH1 0x02
00003cd8: SLOAD
00003cd9: PUSH2 0x3d02
00003cdc: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00003cfd: SLOAD
00003cfe: PUSH2 0x368f
00003d01: JUMP
00003d02: JUMPDEST
00003d03: DUP1
00003d04: ISZERO
00003d05: PUSH2 0x3dc9
00003d08: JUMPI
00003d09: PUSH0
00003d0a: JUMPDEST
00003d0b: DUP3
00003d0c: DUP2
00003d0d: LT
00003d0e: PUSH2 0x3d16
00003d11: JUMPI
00003d12: POP
00003d13: POP
00003d14: POP
00003d15: JUMP
00003d16: JUMPDEST
00003d17: PUSH2 0x3d38
00003d1a: DUP3
00003d1b: PUSH1 0x01
00003d1d: PUSH1 0x01
00003d1f: PUSH1 0xa0
00003d21: SHL
00003d22: SUB
00003d23: PUSH2 0x3d2b
00003d26: DUP5
00003d27: PUSH2 0x1174
00003d2a: JUMP
00003d2b: JUMPDEST
00003d2c: SWAP1
00003d2d: SLOAD
00003d2e: SWAP1
00003d2f: PUSH1 0x03
00003d31: SHL
00003d32: SHR
00003d33: AND
00003d34: PUSH2 0x36d6
00003d37: JUMP
00003d38: JUMPDEST
00003d39: PUSH8 0xffffffffffffffff
00003d42: PUSH2 0x3d90
00003d45: PUSH2 0x1c6f
00003d48: PUSH2 0x3d7f
00003d4b: PUSH2 0x3d69
00003d4e: PUSH2 0x3d56
00003d51: DUP8
00003d52: PUSH2 0x1174
00003d55: JUMP
00003d56: JUMPDEST
00003d57: SWAP1
00003d58: SLOAD
00003d59: PUSH1 0x01
00003d5b: PUSH1 0x01
00003d5d: PUSH1 0xa0
00003d5f: SHL
00003d60: SUB
00003d61: SWAP2
00003d62: PUSH1 0x03
00003d64: SHL
00003d65: SHR
00003d66: AND
00003d67: SWAP1
00003d68: JUMP
00003d69: JUMPDEST
00003d6a: PUSH1 0x01
00003d6c: PUSH1 0x01
00003d6e: PUSH1 0xa0
00003d70: SHL
00003d71: SUB
00003d72: AND
00003d73: PUSH0
00003d74: MSTORE
00003d75: PUSH0
00003d76: PUSH1 0x20
00003d78: MSTORE
00003d79: PUSH1 0x40
00003d7b: PUSH0
00003d7c: KECCAK256
00003d7d: SWAP1
00003d7e: JUMP
00003d7f: JUMPDEST
00003d80: SLOAD
00003d81: PUSH1 0x10
00003d83: SHR
00003d84: PUSH8 0xffffffffffffffff
00003d8d: AND
00003d8e: SWAP1
00003d8f: JUMP
00003d90: JUMPDEST
00003d91: SWAP2
00003d92: AND
00003d93: GT
00003d94: PUSH2 0x3d9f
00003d97: JUMPI
00003d98: PUSH1 0x01
00003d9a: ADD
00003d9b: PUSH2 0x3d0a
00003d9e: JUMP
00003d9f: JUMPDEST
00003da0: PUSH1 0x04
00003da2: PUSH1 0x40
00003da4: MLOAD
00003da5: PUSH32 0xa4a7227e00000000000000000000000000000000000000000000000000000000
00003dc6: DUP2
00003dc7: MSTORE
00003dc8: REVERT
00003dc9: JUMPDEST
00003dca: POP
00003dcb: POP
00003dcc: JUMP
00003dcd: JUMPDEST
00003dce: PUSH1 0x42
00003dd0: SWAP1
00003dd1: PUSH2 0x3dd8
00003dd4: PUSH2 0x4079
00003dd7: JUMP
00003dd8: JUMPDEST
00003dd9: SWAP1
00003dda: PUSH1 0x40
00003ddc: MLOAD
00003ddd: SWAP2
00003dde: PUSH32 0x1901000000000000000000000000000000000000000000000000000000000000
00003dff: DUP4
00003e00: MSTORE
00003e01: PUSH1 0x02
00003e03: DUP4
00003e04: ADD
00003e05: MSTORE
00003e06: PUSH1 0x22
00003e08: DUP3
00003e09: ADD
00003e0a: MSTORE
00003e0b: KECCAK256
00003e0c: SWAP1
00003e0d: JUMP
00003e0e: JUMPDEST
00003e0f: SWAP2
00003e10: PUSH2 0x0492
00003e13: SWAP4
00003e14: SWAP2
00003e15: PUSH2 0x3e1d
00003e18: SWAP4
00003e19: PUSH2 0x435a
00003e1c: JUMP
00003e1d: JUMPDEST
00003e1e: SWAP1
00003e1f: SWAP3
00003e20: SWAP2
00003e21: SWAP3
00003e22: PUSH2 0x43dc
00003e25: JUMP
00003e26: JUMPDEST
00003e27: SWAP2
00003e28: SWAP1
00003e29: PUSH1 0x01
00003e2b: PUSH1 0x01
00003e2d: PUSH1 0xa0
00003e2f: SHL
00003e30: SUB
00003e31: DUP4
00003e32: AND
00003e33: SWAP1
00003e34: DUP2
00003e35: ISZERO
00003e36: PUSH2 0x3609
00003e39: JUMPI
00003e3a: PUSH2 0x3e73
00003e3d: DUP5
00003e3e: PUSH1 0x01
00003e40: PUSH1 0x01
00003e42: PUSH1 0xa0
00003e44: SHL
00003e45: SUB
00003e46: AND
00003e47: PUSH0
00003e48: MSTORE
00003e49: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00003e6a: PUSH1 0x20
00003e6c: MSTORE
00003e6d: PUSH1 0x40
00003e6f: PUSH0
00003e70: KECCAK256
00003e71: SWAP1
00003e72: JUMP
00003e73: JUMPDEST
00003e74: SLOAD
00003e75: SWAP4
00003e76: DUP2
00003e77: DUP6
00003e78: LT
00003e79: PUSH2 0x3f11
00003e7c: JUMPI
00003e7d: DUP2
00003e7e: PUSH1 0x20
00003e80: SWAP2
00003e81: PUSH2 0x3ee0
00003e84: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00003ea5: SWAP5
00003ea6: PUSH0
00003ea7: SWAP8
00003ea8: SWAP9
00003ea9: SUB
00003eaa: SWAP2
00003eab: PUSH1 0x01
00003ead: PUSH1 0x01
00003eaf: PUSH1 0xa0
00003eb1: SHL
00003eb2: SUB
00003eb3: AND
00003eb4: PUSH0
00003eb5: MSTORE
00003eb6: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00003ed7: PUSH1 0x20
00003ed9: MSTORE
00003eda: PUSH1 0x40
00003edc: PUSH0
00003edd: KECCAK256
00003ede: SWAP1
00003edf: JUMP
00003ee0: JUMPDEST
00003ee1: SSTORE
00003ee2: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
00003f03: DUP2
00003f04: DUP2
00003f05: SLOAD
00003f06: SUB
00003f07: SWAP1
00003f08: SSTORE
00003f09: PUSH1 0x40
00003f0b: MLOAD
00003f0c: SWAP1
00003f0d: DUP2
00003f0e: MSTORE
00003f0f: LOG3
00003f10: JUMP
00003f11: JUMPDEST
00003f12: PUSH1 0x40
00003f14: MLOAD
00003f15: PUSH32 0xe450d38c00000000000000000000000000000000000000000000000000000000
00003f36: DUP2
00003f37: MSTORE
00003f38: PUSH1 0x01
00003f3a: PUSH1 0x01
00003f3c: PUSH1 0xa0
00003f3e: SHL
00003f3f: SUB
00003f40: SWAP2
00003f41: SWAP1
00003f42: SWAP2
00003f43: AND
00003f44: PUSH1 0x04
00003f46: DUP3
00003f47: ADD
00003f48: MSTORE
00003f49: PUSH1 0x24
00003f4b: DUP2
00003f4c: ADD
00003f4d: DUP6
00003f4e: SWAP1
00003f4f: MSTORE
00003f50: PUSH1 0x44
00003f52: DUP2
00003f53: ADD
00003f54: SWAP2
00003f55: SWAP1
00003f56: SWAP2
00003f57: MSTORE
00003f58: PUSH1 0x64
00003f5a: SWAP1
00003f5b: REVERT
00003f5c: JUMPDEST
00003f5d: PUSH2 0x296f
00003f60: SWAP3
00003f61: PUSH1 0x01
00003f63: PUSH1 0x01
00003f65: PUSH1 0xa0
00003f67: SHL
00003f68: SUB
00003f69: PUSH1 0x40
00003f6b: MLOAD
00003f6c: SWAP4
00003f6d: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00003f8e: PUSH1 0x20
00003f90: DUP7
00003f91: ADD
00003f92: MSTORE
00003f93: AND
00003f94: PUSH1 0x24
00003f96: DUP5
00003f97: ADD
00003f98: MSTORE
00003f99: PUSH1 0x44
00003f9b: DUP4
00003f9c: ADD
00003f9d: MSTORE
00003f9e: PUSH1 0x44
00003fa0: DUP3
00003fa1: MSTORE
00003fa2: PUSH2 0x3faa
00003fa5: DUP3
00003fa6: PUSH2 0x0ccb
00003fa9: JUMP
00003faa: JUMPDEST
00003fab: PUSH2 0x44b3
00003fae: JUMP
00003faf: JUMPDEST
00003fb0: PUSH2 0x3fb7
00003fb3: PUSH2 0x33d3
00003fb6: JUMP
00003fb7: JUMPDEST
00003fb8: POP
00003fb9: PUSH2 0x0492
00003fbc: DUP2
00003fbd: PUSH2 0x4244
00003fc0: JUMP
00003fc1: JUMPDEST
00003fc2: RETURNDATASIZE
00003fc3: ISZERO
00003fc4: PUSH2 0x3feb
00003fc7: JUMPI
00003fc8: RETURNDATASIZE
00003fc9: SWAP1
00003fca: PUSH2 0x3fd2
00003fcd: DUP3
00003fce: PUSH2 0x0eb0
00003fd1: JUMP
00003fd2: JUMPDEST
00003fd3: SWAP2
00003fd4: PUSH2 0x3fe0
00003fd7: PUSH1 0x40
00003fd9: MLOAD
00003fda: SWAP4
00003fdb: DUP5
00003fdc: PUSH2 0x0ce7
00003fdf: JUMP
00003fe0: JUMPDEST
00003fe1: DUP3
00003fe2: MSTORE
00003fe3: RETURNDATASIZE
00003fe4: PUSH0
00003fe5: PUSH1 0x20
00003fe7: DUP5
00003fe8: ADD
00003fe9: RETURNDATACOPY
00003fea: JUMP
00003feb: JUMPDEST
00003fec: PUSH1 0x60
00003fee: SWAP1
00003fef: JUMP
00003ff0: JUMPDEST
00003ff1: SWAP1
00003ff2: PUSH1 0x01
00003ff4: PUSH1 0x01
00003ff6: PUSH1 0xa0
00003ff8: SHL
00003ff9: SUB
00003ffa: SWAP2
00003ffb: DUP3
00003ffc: DUP2
00003ffd: AND
00003ffe: SWAP3
00003fff: DUP4
00004000: ISZERO
00004001: PUSH2 0x0967
00004004: JUMPI
00004005: DUP3
00004006: AND
00004007: SWAP4
00004008: DUP5
00004009: ISZERO
0000400a: PUSH2 0x0937
0000400d: JUMPI
0000400e: DUP1
0000400f: PUSH2 0x406f
00004012: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
00004033: SWAP5
00004034: PUSH2 0x087b
00004037: PUSH1 0x20
00004039: SWAP6
0000403a: PUSH1 0x01
0000403c: PUSH1 0x01
0000403e: PUSH1 0xa0
00004040: SHL
00004041: SUB
00004042: AND
00004043: PUSH0
00004044: MSTORE
00004045: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01
00004066: PUSH1 0x20
00004068: MSTORE
00004069: PUSH1 0x40
0000406b: PUSH0
0000406c: KECCAK256
0000406d: SWAP1
0000406e: JUMP
0000406f: JUMPDEST
00004070: SSTORE
00004071: PUSH1 0x40
00004073: MLOAD
00004074: SWAP1
00004075: DUP2
00004076: MSTORE
00004077: LOG3
00004078: JUMP
00004079: JUMPDEST
0000407a: PUSH2 0x4081
0000407d: PUSH2 0x4525
00004080: JUMP
00004081: JUMPDEST
00004082: PUSH2 0x4089
00004085: PUSH2 0x458f
00004088: JUMP
00004089: JUMPDEST
0000408a: PUSH1 0x40
0000408c: MLOAD
0000408d: SWAP1
0000408e: PUSH1 0x20
00004090: DUP3
00004091: ADD
00004092: SWAP3
00004093: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
000040b4: DUP5
000040b5: MSTORE
000040b6: PUSH1 0x40
000040b8: DUP4
000040b9: ADD
000040ba: MSTORE
000040bb: PUSH1 0x60
000040bd: DUP3
000040be: ADD
000040bf: MSTORE
000040c0: CHAINID
000040c1: PUSH1 0x80
000040c3: DUP3
000040c4: ADD
000040c5: MSTORE
000040c6: ADDRESS
000040c7: PUSH1 0xa0
000040c9: DUP3
000040ca: ADD
000040cb: MSTORE
000040cc: PUSH1 0xa0
000040ce: DUP2
000040cf: MSTORE
000040d0: PUSH1 0xc0
000040d2: DUP2
000040d3: ADD
000040d4: DUP2
000040d5: DUP2
000040d6: LT
000040d7: PUSH8 0xffffffffffffffff
000040e0: DUP3
000040e1: GT
000040e2: OR
000040e3: PUSH2 0x0cc6
000040e6: JUMPI
000040e7: PUSH1 0x40
000040e9: MSTORE
000040ea: MLOAD
000040eb: SWAP1
000040ec: KECCAK256
000040ed: SWAP1
000040ee: JUMP
000040ef: JUMPDEST
000040f0: PUSH4 0x4e487b71
000040f5: PUSH0
000040f6: MSTORE
000040f7: PUSH1 0x11
000040f9: PUSH1 0x20
000040fb: MSTORE
000040fc: PUSH1 0x24
000040fe: PUSH1 0x1c
00004100: REVERT
00004101: JUMPDEST
00004102: PUSH4 0x4e487b71
00004107: PUSH0
00004108: MSTORE
00004109: PUSH1 0x20
0000410b: MSTORE
0000410c: PUSH1 0x24
0000410e: PUSH1 0x1c
00004110: REVERT
00004111: JUMPDEST
00004112: SWAP1
00004113: DUP2
00004114: EXTCODESIZE
00004115: ISZERO
00004116: PUSH2 0x41d3
00004119: JUMPI
0000411a: PUSH1 0x01
0000411c: PUSH1 0x01
0000411e: PUSH1 0xa0
00004120: SHL
00004121: SUB
00004122: DUP3
00004123: AND
00004124: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00004145: DUP2
00004146: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00004167: DUP3
00004168: SLOAD
00004169: AND
0000416a: OR
0000416b: SWAP1
0000416c: SSTORE
0000416d: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
0000418e: PUSH0
0000418f: DUP1
00004190: LOG2
00004191: DUP1
00004192: MLOAD
00004193: ISZERO
00004194: PUSH2 0x41a0
00004197: JUMPI
00004198: PUSH2 0x3af6
0000419b: SWAP2
0000419c: PUSH2 0x45d4
0000419f: JUMP
000041a0: JUMPDEST
000041a1: POP
000041a2: POP
000041a3: CALLVALUE
000041a4: PUSH2 0x41a9
000041a7: JUMPI
000041a8: JUMP
000041a9: JUMPDEST
000041aa: PUSH1 0x04
000041ac: PUSH1 0x40
000041ae: MLOAD
000041af: PUSH32 0xb398979f00000000000000000000000000000000000000000000000000000000
000041d0: DUP2
000041d1: MSTORE
000041d2: REVERT
000041d3: JUMPDEST
000041d4: PUSH1 0x24
000041d6: DUP3
000041d7: PUSH1 0x01
000041d9: PUSH1 0x01
000041db: PUSH1 0xa0
000041dd: SHL
000041de: SUB
000041df: PUSH1 0x40
000041e1: MLOAD
000041e2: SWAP2
000041e3: PUSH32 0x4c9c8ce300000000000000000000000000000000000000000000000000000000
00004204: DUP4
00004205: MSTORE
00004206: AND
00004207: PUSH1 0x04
00004209: DUP3
0000420a: ADD
0000420b: MSTORE
0000420c: REVERT
0000420d: JUMPDEST
0000420e: PUSH1 0x04
00004210: GT
00004211: ISZERO
00004212: PUSH2 0x4217
00004215: JUMPI
00004216: JUMP
00004217: JUMPDEST
00004218: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00004239: PUSH0
0000423a: MSTORE
0000423b: PUSH1 0x21
0000423d: PUSH1 0x04
0000423f: MSTORE
00004240: PUSH1 0x24
00004242: PUSH0
00004243: REVERT
00004244: JUMPDEST
00004245: PUSH16 0xffffffffffffffffffffffffffffffff
00004256: DUP1
00004257: TIMESTAMP
00004258: AND
00004259: SWAP2
0000425a: PUSH1 0x40
0000425c: DUP2
0000425d: ADD
0000425e: SWAP2
0000425f: DUP1
00004260: DUP1
00004261: DUP5
00004262: MLOAD
00004263: AND
00004264: DUP6
00004265: SUB
00004266: AND
00004267: DUP2
00004268: PUSH1 0x60
0000426a: DUP5
0000426b: ADD
0000426c: MLOAD
0000426d: AND
0000426e: MUL
0000426f: SWAP2
00004270: DUP2
00004271: DUP4
00004272: AND
00004273: SWAP3
00004274: DUP4
00004275: SUB
00004276: PUSH2 0x2e5b
00004279: JUMPI
0000427a: PUSH1 0x20
0000427c: DUP2
0000427d: ADD
0000427e: SWAP3
0000427f: DUP3
00004280: DUP5
00004281: MLOAD
00004282: AND
00004283: ADD
00004284: DUP3
00004285: DUP2
00004286: GT
00004287: PUSH2 0x2e5b
0000428a: JUMPI
0000428b: DUP2
0000428c: MLOAD
0000428d: SWAP1
0000428e: DUP4
0000428f: AND
00004290: SWAP1
00004291: DUP4
00004292: AND
00004293: DUP2
00004294: GT
00004295: ISZERO
00004296: PUSH2 0x42a1
00004299: JUMPI
0000429a: POP
0000429b: MLOAD
0000429c: AND
0000429d: SWAP1
0000429e: MSTORE
0000429f: MSTORE
000042a0: JUMP
000042a1: JUMPDEST
000042a2: SWAP3
000042a3: SWAP2
000042a4: POP
000042a5: POP
000042a6: MSTORE
000042a7: MSTORE
000042a8: JUMP
000042a9: JUMPDEST
000042aa: SWAP1
000042ab: PUSH1 0x01
000042ad: PUSH1 0x01
000042af: PUSH1 0xa0
000042b1: SHL
000042b2: SUB
000042b3: DUP3
000042b4: AND
000042b5: SWAP2
000042b6: DUP3
000042b7: ISZERO
000042b8: PUSH2 0x35d9
000042bb: JUMPI
000042bc: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02
000042dd: SWAP2
000042de: DUP3
000042df: SLOAD
000042e0: SWAP1
000042e1: DUP1
000042e2: DUP3
000042e3: ADD
000042e4: DUP1
000042e5: SWAP3
000042e6: GT
000042e7: PUSH2 0x2e5b
000042ea: JUMPI
000042eb: PUSH2 0x434b
000042ee: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
0000430f: SWAP4
00004310: PUSH1 0x20
00004312: SWAP4
00004313: PUSH0
00004314: SWAP7
00004315: SSTORE
00004316: PUSH1 0x01
00004318: PUSH1 0x01
0000431a: PUSH1 0xa0
0000431c: SHL
0000431d: SUB
0000431e: AND
0000431f: PUSH0
00004320: MSTORE
00004321: PUSH32 0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00
00004342: PUSH1 0x20
00004344: MSTORE
00004345: PUSH1 0x40
00004347: PUSH0
00004348: KECCAK256
00004349: SWAP1
0000434a: JUMP
0000434b: JUMPDEST
0000434c: DUP2
0000434d: DUP2
0000434e: SLOAD
0000434f: ADD
00004350: SWAP1
00004351: SSTORE
00004352: PUSH1 0x40
00004354: MLOAD
00004355: SWAP1
00004356: DUP2
00004357: MSTORE
00004358: LOG3
00004359: JUMP
0000435a: JUMPDEST
0000435b: SWAP2
0000435c: SWAP1
0000435d: PUSH32 0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0
0000437e: DUP5
0000437f: GT
00004380: PUSH2 0x43d1
00004383: JUMPI
00004384: SWAP2
00004385: PUSH1 0x20
00004387: SWAP4
00004388: PUSH1 0x80
0000438a: SWAP3
0000438b: PUSH1 0xff
0000438d: PUSH0
0000438e: SWAP6
0000438f: PUSH1 0x40
00004391: MLOAD
00004392: SWAP5
00004393: DUP6
00004394: MSTORE
00004395: AND
00004396: DUP7
00004397: DUP5
00004398: ADD
00004399: MSTORE
0000439a: PUSH1 0x40
0000439c: DUP4
0000439d: ADD
0000439e: MSTORE
0000439f: PUSH1 0x60
000043a1: DUP3
000043a2: ADD
000043a3: MSTORE
000043a4: DUP3
000043a5: DUP1
000043a6: MSTORE
000043a7: PUSH1 0x01
000043a9: GAS
000043aa: STATICCALL
000043ab: ISZERO
000043ac: PUSH2 0x139c
000043af: JUMPI
000043b0: PUSH0
000043b1: MLOAD
000043b2: PUSH1 0x01
000043b4: PUSH1 0x01
000043b6: PUSH1 0xa0
000043b8: SHL
000043b9: SUB
000043ba: DUP2
000043bb: AND
000043bc: ISZERO
000043bd: PUSH2 0x43c7
000043c0: JUMPI
000043c1: SWAP1
000043c2: PUSH0
000043c3: SWAP1
000043c4: PUSH0
000043c5: SWAP1
000043c6: JUMP
000043c7: JUMPDEST
000043c8: POP
000043c9: PUSH0
000043ca: SWAP1
000043cb: PUSH1 0x01
000043cd: SWAP1
000043ce: PUSH0
000043cf: SWAP1
000043d0: JUMP
000043d1: JUMPDEST
000043d2: POP
000043d3: POP
000043d4: POP
000043d5: PUSH0
000043d6: SWAP2
000043d7: PUSH1 0x03
000043d9: SWAP2
000043da: SWAP1
000043db: JUMP
000043dc: JUMPDEST
000043dd: PUSH2 0x43e5
000043e0: DUP2
000043e1: PUSH2 0x420d
000043e4: JUMP
000043e5: JUMPDEST
000043e6: DUP1
000043e7: PUSH2 0x43ee
000043ea: JUMPI
000043eb: POP
000043ec: POP
000043ed: JUMP
000043ee: JUMPDEST
000043ef: PUSH2 0x43f7
000043f2: DUP2
000043f3: PUSH2 0x420d
000043f6: JUMP
000043f7: JUMPDEST
000043f8: PUSH1 0x01
000043fa: DUP2
000043fb: SUB
000043fc: PUSH2 0x4429
000043ff: JUMPI
00004400: PUSH1 0x04
00004402: PUSH1 0x40
00004404: MLOAD
00004405: PUSH32 0xf645eedf00000000000000000000000000000000000000000000000000000000
00004426: DUP2
00004427: MSTORE
00004428: REVERT
00004429: JUMPDEST
0000442a: PUSH2 0x4432
0000442d: DUP2
0000442e: PUSH2 0x420d
00004431: JUMP
00004432: JUMPDEST
00004433: PUSH1 0x02
00004435: DUP2
00004436: SUB
00004437: PUSH2 0x446c
0000443a: JUMPI
0000443b: PUSH1 0x40
0000443d: MLOAD
0000443e: PUSH32 0xfce698f700000000000000000000000000000000000000000000000000000000
0000445f: DUP2
00004460: MSTORE
00004461: PUSH1 0x04
00004463: DUP2
00004464: ADD
00004465: DUP4
00004466: SWAP1
00004467: MSTORE
00004468: PUSH1 0x24
0000446a: SWAP1
0000446b: REVERT
0000446c: JUMPDEST
0000446d: DUP1
0000446e: PUSH2 0x4478
00004471: PUSH1 0x03
00004473: SWAP3
00004474: PUSH2 0x420d
00004477: JUMP
00004478: JUMPDEST
00004479: EQ
0000447a: PUSH2 0x4480
0000447d: JUMPI
0000447e: POP
0000447f: JUMP
00004480: JUMPDEST
00004481: PUSH1 0x40
00004483: MLOAD
00004484: PUSH32 0xd78bce0c00000000000000000000000000000000000000000000000000000000
000044a5: DUP2
000044a6: MSTORE
000044a7: PUSH1 0x04
000044a9: DUP2
000044aa: ADD
000044ab: SWAP2
000044ac: SWAP1
000044ad: SWAP2
000044ae: MSTORE
000044af: PUSH1 0x24
000044b1: SWAP1
000044b2: REVERT
000044b3: JUMPDEST
000044b4: SWAP1
000044b5: PUSH0
000044b6: PUSH1 0x20
000044b8: SWAP2
000044b9: DUP3
000044ba: DUP2
000044bb: MLOAD
000044bc: SWAP2
000044bd: ADD
000044be: DUP3
000044bf: DUP6
000044c0: GAS
000044c1: CALL
000044c2: ISZERO
000044c3: PUSH2 0x2a84
000044c6: JUMPI
000044c7: PUSH0
000044c8: MLOAD
000044c9: RETURNDATASIZE
000044ca: PUSH2 0x451c
000044cd: JUMPI
000044ce: POP
000044cf: PUSH1 0x01
000044d1: PUSH1 0x01
000044d3: PUSH1 0xa0
000044d5: SHL
000044d6: SUB
000044d7: DUP2
000044d8: AND
000044d9: EXTCODESIZE
000044da: ISZERO
000044db: JUMPDEST
000044dc: PUSH2 0x44e2
000044df: JUMPI
000044e0: POP
000044e1: JUMP
000044e2: JUMPDEST
000044e3: PUSH1 0x24
000044e5: SWAP1
000044e6: PUSH1 0x01
000044e8: PUSH1 0x01
000044ea: PUSH1 0xa0
000044ec: SHL
000044ed: SUB
000044ee: PUSH1 0x40
000044f0: MLOAD
000044f1: SWAP2
000044f2: PUSH32 0x5274afe700000000000000000000000000000000000000000000000000000000
00004513: DUP4
00004514: MSTORE
00004515: AND
00004516: PUSH1 0x04
00004518: DUP3
00004519: ADD
0000451a: MSTORE
0000451b: REVERT
0000451c: JUMPDEST
0000451d: PUSH1 0x01
0000451f: EQ
00004520: ISZERO
00004521: PUSH2 0x44db
00004524: JUMP
00004525: JUMPDEST
00004526: PUSH2 0x452d
00004529: PUSH2 0x2b43
0000452c: JUMP
0000452d: JUMPDEST
0000452e: DUP1
0000452f: MLOAD
00004530: SWAP1
00004531: DUP2
00004532: ISZERO
00004533: PUSH2 0x453d
00004536: JUMPI
00004537: PUSH1 0x20
00004539: ADD
0000453a: KECCAK256
0000453b: SWAP1
0000453c: JUMP
0000453d: JUMPDEST
0000453e: POP
0000453f: POP
00004540: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d100
00004561: SLOAD
00004562: DUP1
00004563: ISZERO
00004564: PUSH2 0x456a
00004567: JUMPI
00004568: SWAP1
00004569: JUMP
0000456a: JUMPDEST
0000456b: POP
0000456c: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
0000458d: SWAP1
0000458e: JUMP
0000458f: JUMPDEST
00004590: PUSH2 0x4597
00004593: PUSH2 0x2c7b
00004596: JUMP
00004597: JUMPDEST
00004598: DUP1
00004599: MLOAD
0000459a: SWAP1
0000459b: DUP2
0000459c: ISZERO
0000459d: PUSH2 0x45a7
000045a0: JUMPI
000045a1: PUSH1 0x20
000045a3: ADD
000045a4: KECCAK256
000045a5: SWAP1
000045a6: JUMP
000045a7: JUMPDEST
000045a8: POP
000045a9: POP
000045aa: PUSH32 0xa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d101
000045cb: SLOAD
000045cc: DUP1
000045cd: ISZERO
000045ce: PUSH2 0x456a
000045d1: JUMPI
000045d2: SWAP1
000045d3: JUMP
000045d4: JUMPDEST
000045d5: PUSH0
000045d6: DUP1
000045d7: PUSH2 0x0492
000045da: SWAP4
000045db: PUSH1 0x20
000045dd: DUP2
000045de: MLOAD
000045df: SWAP2
000045e0: ADD
000045e1: DUP5
000045e2: GAS
000045e3: DELEGATECALL
000045e4: PUSH2 0x45eb
000045e7: PUSH2 0x3fc1
000045ea: JUMP
000045eb: JUMPDEST
000045ec: SWAP2
000045ed: SWAP1
000045ee: PUSH2 0x462b
000045f1: JUMPI
000045f2: POP
000045f3: DUP1
000045f4: MLOAD
000045f5: ISZERO
000045f6: PUSH2 0x4601
000045f9: JUMPI
000045fa: DUP1
000045fb: MLOAD
000045fc: SWAP1
000045fd: PUSH1 0x20
000045ff: ADD
00004600: REVERT
00004601: JUMPDEST
00004602: PUSH1 0x04
00004604: PUSH1 0x40
00004606: MLOAD
00004607: PUSH32 0xd6bda27500000000000000000000000000000000000000000000000000000000
00004628: DUP2
00004629: MSTORE
0000462a: REVERT
0000462b: JUMPDEST
0000462c: DUP2
0000462d: MLOAD
0000462e: ISZERO
0000462f: DUP1
00004630: PUSH2 0x4676
00004633: JUMPI
00004634: JUMPDEST
00004635: PUSH2 0x463c
00004638: JUMPI
00004639: POP
0000463a: SWAP1
0000463b: JUMP
0000463c: JUMPDEST
0000463d: PUSH1 0x24
0000463f: SWAP1
00004640: PUSH1 0x01
00004642: PUSH1 0x01
00004644: PUSH1 0xa0
00004646: SHL
00004647: SUB
00004648: PUSH1 0x40
0000464a: MLOAD
0000464b: SWAP2
0000464c: PUSH32 0x9996b31500000000000000000000000000000000000000000000000000000000
0000466d: DUP4
0000466e: MSTORE
0000466f: AND
00004670: PUSH1 0x04
00004672: DUP3
00004673: ADD
00004674: MSTORE
00004675: REVERT
00004676: JUMPDEST
00004677: POP
00004678: DUP1
00004679: EXTCODESIZE
0000467a: ISZERO
0000467b: PUSH2 0x4634
0000467e: JUMP
0000467f: INVALID
00004680: LOG2
00004681: PUSH5 0x6970667358
00004687: UNKNOWN(0x22)
00004688: SLT
00004689: KECCAK256
0000468a: UNKNOWN(0xE5)
0000468b: PUSH30 0xd4be98a30c3d62d16e9004a28d87ed7a798455019a27b3a35a7216dffd46
000046aa: PUSH5 0x736f6c6343
000046b0: STOP
000046b1: ADDMOD
000046b2: NOT
000046b3: STOP
000046b4: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x20cc36c0f69f64308861d6f0fde63ae99da0d2fb89bb8778f210e3369a817980
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0x20cc36c0f69f64308861d6f0fde63ae99da0d2fb89bb8778f210e3369a817980",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x01d22ccd",
            "selector": "0x01d22ccd",
            "calldata_variants": [
                "0x01d22ccd",
                "0x01d22ccd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01e1d114",
            "selector": "0x01e1d114",
            "calldata_variants": [
                "0x01e1d114",
                "0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0a1289ad",
            "selector": "0x0a1289ad",
            "calldata_variants": [
                "0x0a1289ad",
                "0x0a1289ad0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0a154161",
            "selector": "0x0a154161",
            "calldata_variants": [
                "0x0a154161",
                "0x0a1541610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c340a24",
            "selector": "0x0c340a24",
            "calldata_variants": [
                "0x0c340a24",
                "0x0c340a240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x17d949fe",
            "selector": "0x17d949fe",
            "calldata_variants": [
                "0x17d949fe",
                "0x17d949fe0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 13416,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 17891,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 2,
    "untrusted_delegatecall_count": 2
}
high reentrancy codex Reentrant redeem can double-withdraw later assets in multi-token vault 85 no
view
evidence_json
{
    "evidence": "`redeem` calculates `assetAmounts` once, burns shares, then transfers each asset in a loop without a reentrancy guard, so later-token balances still include amounts owed to the first redemption during reentrant calls.",
    "locations": [
        "`contracts/src/LRTSquared/LRTSquaredCore.sol:56`",
        "`contracts/src/LRTSquared/LRTSquaredCore.sol:60`",
        "`contracts/src/LRTSquared/LRTSquaredCore.sol:64`"
    ],
    "recommendation": "Add a reentrancy guard to `redeem` (and any other functions that transfer out assets) or switch to a pull/escrow pattern where claimable amounts are stored before any external token transfers. This prevents reentrant calls from using stale per-asset balances.",
    "exploit_scenario": "1) Attacker acquires vault shares and uses a contract that can reenter (e.g., ERC777 `tokensReceived`). 2) Ensure at least one vault token is hook-enabled (ERC777/ERC223/malicious ERC20) and appears before another token in `tokens`. 3) Call `redeem(r1)`; after `_burn`, the vault transfers the first token. 4) During that transfer, reenter `redeem(r2)` for remaining shares; `assetAmounts` are computed against balances that still include the later token amounts owed to the first redeem. 5) The reentrant call withdraws inflated amounts of later tokens, and the original redeem then transfers its precomputed later-token amounts, resulting in double-withdrawal of those later tokens."
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xe424759ab1fc0a115ccbb0448cf89a43475c67f9f2fd7792e2cae94b621cd5aa
call_targets: 0x1cb489ef513e1cc35c4657c91853a2e6ff1957de
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xe424759ab1fc0a115ccbb0448cf89a43475c67f9f2fd7792e2cae94b621cd5aa",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1cb489ef513e1cc35c4657c91853a2e6ff1957de"
    ],
    "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": "0x01d22ccd",
            "selector": "0x01d22ccd",
            "calldata_variants": [
                "0x01d22ccd",
                "0x01d22ccd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01e1d114",
            "selector": "0x01e1d114",
            "calldata_variants": [
                "0x01e1d114",
                "0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0a1289ad",
            "selector": "0x0a1289ad",
            "calldata_variants": [
                "0x0a1289ad",
                "0x0a1289ad0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0a154161",
            "selector": "0x0a154161",
            "calldata_variants": [
                "0x0a154161",
                "0x0a1541610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c340a24",
            "selector": "0x0c340a24",
            "calldata_variants": [
                "0x0c340a24",
                "0x0c340a240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x17d949fe",
            "selector": "0x17d949fe",
            "calldata_variants": [
                "0x17d949fe",
                "0x17d949fe0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 10072,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 17601,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xe424759ab1fc0a115ccbb0448cf89a43475c67f9f2fd7792e2cae94b621cd5aa
call_targets: 0x1cb489ef513e1cc35c4657c91853a2e6ff1957de
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xe424759ab1fc0a115ccbb0448cf89a43475c67f9f2fd7792e2cae94b621cd5aa",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1cb489ef513e1cc35c4657c91853a2e6ff1957de"
    ],
    "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": "0x01d22ccd",
            "selector": "0x01d22ccd",
            "calldata_variants": [
                "0x01d22ccd",
                "0x01d22ccd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x01e1d114",
            "selector": "0x01e1d114",
            "calldata_variants": [
                "0x01e1d114",
                "0x01e1d1140000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0a1289ad",
            "selector": "0x0a1289ad",
            "calldata_variants": [
                "0x0a1289ad",
                "0x0a1289ad0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0a154161",
            "selector": "0x0a154161",
            "calldata_variants": [
                "0x0a154161",
                "0x0a1541610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c340a24",
            "selector": "0x0c340a24",
            "calldata_variants": [
                "0x0c340a24",
                "0x0c340a240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x17d949fe",
            "selector": "0x17d949fe",
            "calldata_variants": [
                "0x17d949fe",
                "0x17d949fe0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 10072,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 17601,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 2
}
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
}