3844eb0f-d048-47ba-aa55-c44b0d76ff55
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 31631 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 111584 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 111585 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 111586 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 111587 | capability.graph | complete | 1 / 3 | 1 week ago |
| 111588 | detector.run | complete | 1 / 3 | 1 week ago |
| 111589 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:782452] OpenAI Codex v0.77.0 (research preview)
[codex:782452] --------
[codex:782452] workdir: /tmp/codex-multi-4oer6byv
[codex:782452] model: gpt-5.2-codex
[codex:782452] provider: openai
[codex:782452] approval: never
[codex:782452] sandbox: read-only
[codex:782452] reasoning effort: xhigh
[codex:782452] reasoning summaries: auto
[codex:782452] session id: 019b8b97-7eca-7fe3-aa4a-e6cd981ff286
[codex:782452] --------
[codex:782452] user
[codex:782452] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:782452]
[codex:782452] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:782452]
[codex:782452] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:782452] - Gas inefficiency, code quality, naming, or best practices
[codex:782452] - Theoretical vulnerabilities without a clear extraction path
[codex:782452] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:782452] - Front-running unless it enables theft beyond MEV
[codex:782452] - DoS, griefing, or issues that don't result in attacker profit
[codex:782452] - Missing events, view function issues, or informational findings
[codex:782452]
[codex:782452] HIGH-VALUE PATTERNS TO HUNT:
[codex:782452] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:782452] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:782452] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:782452] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:782452] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:782452] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:782452] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:782452] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:782452] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:782452]
[codex:782452] For each finding, you MUST provide:
[codex:782452] 1. Exact file and line numbers of vulnerable code
[codex:782452] 2. Step-by-step exploit transaction sequence
[codex:782452] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:782452]
[codex:782452] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:782452]
[codex:782452] Output MUST be valid JSON matching the provided schema.
[codex:782452] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:782452] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:782452] mcp startup: no servers
[codex:782452]
[codex:782452] thinking
[codex:782452] **Reviewing instructions and skills requirements**
[codex:782452] exec
[codex:782452] /bin/bash -lc ls in /tmp/codex-multi-4oer6byv succeeded in 5ms:
[codex:782452] AUDIT_BUNDLE.txt
[codex:782452] codex-output-schema.json
[codex:782452] contracts
[codex:782452] exec
[codex:782452] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-4oer6byv succeeded in 5ms:
[codex:782452] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:782452]
[codex:782452] ================================================================================
[codex:782452] FILE: contracts/contracts/AntePool.sol
[codex:782452] ================================================================================
[codex:782452] // SPDX-License-Identifier: GPL-3.0-only
[codex:782452]
[codex:782452] // ┏━━━┓━━━━━┏┓━━━━━━━━━┏━━━┓━━━━━━━━━━━━━━━━━━━━━━━
[codex:782452] // ┃┏━┓┃━━━━┏┛┗┓━━━━━━━━┃┏━━┛━━━━━━━━━━━━━━━━━━━━━━━
[codex:782452] // ┃┗━┛┃┏━┓━┗┓┏┛┏━━┓━━━━┃┗━━┓┏┓┏━┓━┏━━┓━┏━┓━┏━━┓┏━━┓
[codex:782452] // ┃┏━┓┃┃┏┓┓━┃┃━┃┏┓┃━━━━┃┏━━┛┣┫┃┏┓┓┗━┓┃━┃┏┓┓┃┏━┛┃┏┓┃
[codex:782452] // ┃┃ ┃┃┃┃┃┃━┃┗┓┃┃━┫━┏┓━┃┃━━━┃┃┃┃┃┃┃┗┛┗┓┃┃┃┃┃┗━┓┃┃━┫
[codex:782452] // ┗┛ ┗┛┗┛┗┛━┗━┛┗━━┛━┗┛━┗┛━━━┗┛┗┛┗┛┗━━━┛┗┛┗┛┗━━┛┗━━┛
[codex:782452] // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[codex:782452] // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[codex:782452]
[codex:782452] pragma solidity ^0.7.0;
[codex:782452]
[codex:782452] import "@openzeppelin/contracts/math/SafeMath.sol";
[codex:782452] import "@openzeppelin/contracts/utils/Address.sol";
[codex:782452] exec
[codex:782452] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-4oer6byv succeeded in 5ms:
[codex:782452] } else {
[codex:782452] side = stakingInfo;
[codex:782452] }
[codex:782452]
[codex:782452] UserInfo storage user = side.userInfo[msg.sender];
[codex:782452]
[codex:782452] // Calculate how much the user already has staked, including the
[codex:782452] // effects of any previously accrued decay.
[codex:782452] // prevAmount = startAmount * decayMultipiler / startDecayMultiplier
[codex:782452] // newAmount = amount + prevAmount
[codex:782452] if (user.startAmount > 0) {
[codex:782452] user.startAmount = amount.add(_storedBalance(user, side));
[codex:782452] } else {
[codex:782452] user.startAmount = amount;
[codex:782452] side.numUsers = side.numUsers.add(1);
[codex:782452] }
[codex:782452] side.totalAmount = side.totalAmount.add(amount);
[codex:782452]
[codex:782452] // Reset the startDecayMultiplier for this user, since we've updated
[codex:782452] // the startAmount to include any already-accrued decay.
[codex:782452] exec
[codex:782452] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-4oer6byv succeeded in 5ms:
[codex:782452] } else {
[codex:782452] uint256 amount = _storedBalance(user, challengerInfo);
[codex:782452] uint256 bounty = getVerifierBounty();
[codex:782452] uint256 totalStake = stakingInfo.totalAmount.add(withdrawInfo.totalAmount);
[codex:782452]
[codex:782452] return amount.add(amount.mulDiv(totalStake.sub(bounty), challengerInfo.totalAmount));
[codex:782452] }
[codex:782452] }
[codex:782452]
[codex:782452] /// @inheritdoc IAntePool
[codex:782452] function getStoredBalance(address _user, bool isChallenger) external view override returns (uint256) {
[codex:782452] (uint256 decayMultiplierThisUpdate, uint256 decayThisUpdate) = _computeDecay();
[codex:782452]
[codex:782452] UserInfo storage user = isChallenger ? challengerInfo.userInfo[_user] : stakingInfo.userInfo[_user];
[codex:782452]
[codex:782452] if (user.startAmount == 0) return 0;
[codex:782452]
[codex:782452] require(user.startDecayMultiplier > 0, "ANTE: Invalid startDecayMultiplier");
[codex:782452]
[codex:782452] uint256 decayMultiplier;
[codex:782452]
[codex:782452] thinking
[codex:782452] **Checking for additional contract files**
[codex:782452] exec
[codex:782452] /bin/bash -lc "sed -n '800,1200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-4oer6byv succeeded in 5ms:
[codex:782452] /// @param _user Address of user
[codex:782452] /// @param isChallenger Flag if user is a challenger
[codex:782452] /// @dev This function calculates decay and returns the stored value after the
[codex:782452] /// decay has been either added (staker) or subtracted (challenger)
[codex:782452] /// @return Balance that the user has currently in wei
[codex:782452] function getStoredBalance(address _user, bool isChallenger) external view returns (uint256);
[codex:782452]
[codex:782452] /// @notice Returns total value of eligible payout for challengers
[codex:782452] /// @return Amount eligible for payout in wei
[codex:782452] function getTotalChallengerEligibleBalance() external view returns (uint256);
[codex:782452]
[codex:782452] /// @notice Returns total value locked of all challengers
[codex:782452] /// @return Total amount challenged in wei
[codex:782452] function getTotalChallengerStaked() external view returns (uint256);
[codex:782452]
[codex:782452] /// @notice Returns total value of all stakers who are withdrawing their stake
[codex:782452] /// @return Total amount waiting for withdraw in wei
[codex:782452] function getTotalPendingWithdraw() external view returns (uint256);
[codex:782452]
[codex:782452] /// @notice Returns total value locked of all stakers
[codex:782452]
[codex:782452]
[codex:782452]
[codex:782452] thinking
[codex:782452] **Analyzing staking pool for exploits**
[codex:782452]
[codex:782452] I’m carefully walking through the contract’s logic to spot any vulnerabilities that could let an attacker drain ETH from the staking pool; I’m focusing on reentrancy possibilities, state manipulations during external calls, accounting correctness around challenger payouts, and decay math to check for underflows or rounding bugs. The complex interplay of challenger and staker states, plus timing restrictions, seems mostly intended and guarded, but I’m considering edge cases like reentrancy in external test calls or manipulating stake timing to gain unfair shares. It’s a detailed puzzle to ensure no loopholes let unauthorized fund extraction.
[codex:782452] thinking
[codex:782452] **Evaluating claim and decay mechanics**
[codex:782452]
[codex:782452] I’m carefully verifying claim access controls, stake and decay calculations, and rounding effects to ensure no way to profit beyond intended payout. The interactions between challenger eligibility, decay updates, and pending withdrawals look consistent, with reentrancy blocked by gas-limited transfers. I’m also checking for division-by-zero or set membership edge cases that could disrupt claims but so far see no concrete exploit path.
[codex:782452] thinking
[codex:782452] **Confirming no exploitable profit path**
[codex:782452]
[codex:782452] I’m thoroughly reviewing eligibility delays, decay math, stake interactions, and transfer logic to confirm no concrete profit can be extracted through timing, reentrancy, rounding, or roles manipulation. The mechanisms seem consistent with intended behavior, supporting a clean no-findings conclusion.
[codex:782452] codex
[codex:782452] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the reviewed sources.","findings":[]}
[codex:782452] tokens used
[codex:782452] 28,193
[codex:782452] {"no_findings":true,"summary":"No concrete, exploitable profit path found in the reviewed sources.","findings":[]}
{
"codex": {
"ran_at": "2026-01-05T00:41:50.978930+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit path found in the reviewed sources.",
"raw_final": {
"summary": "No concrete, exploitable profit path found in the reviewed sources.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x02a0 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x674b7844 00000019: GT 0000001a: PUSH2 0x016e 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa218141b 00000024: GT 00000025: PUSH2 0x00cb 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xc45a0155 0000002f: GT 00000030: PUSH2 0x007f 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xe35e5d84 0000003a: GT 0000003b: PUSH2 0x0064 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xe35e5d84 00000045: EQ 00000046: PUSH2 0x0799 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xec7bb87c 00000050: EQ 00000051: PUSH2 0x07ae 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf39375ad 0000005b: EQ 0000005c: PUSH2 0x07c3 0000005f: JUMPI 00000060: PUSH2 0x02a0 00000063: JUMP 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xc45a0155 0000006b: EQ 0000006c: PUSH2 0x0744 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xc4d66de8 00000076: EQ 00000077: PUSH2 0x0759 0000007a: JUMPI 0000007b: PUSH2 0x02a0 0000007e: JUMP 0000007f: JUMPDEST 00000080: DUP1 00000081: PUSH4 0xb6be0090 00000086: GT 00000087: PUSH2 0x00b0 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0xb6be0090 00000091: EQ 00000092: PUSH2 0x06da 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0xbed9d861 0000009c: EQ 0000009d: PUSH2 0x071a 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xc31678e2 000000a7: EQ 000000a8: PUSH2 0x072f 000000ab: JUMPI 000000ac: PUSH2 0x02a0 000000af: JUMP 000000b0: JUMPDEST 000000b1: DUP1 000000b2: PUSH4 0xa218141b 000000b7: EQ 000000b8: PUSH2 0x067d 000000bb: JUMPI 000000bc: DUP1 000000bd: PUSH4 0xa87a8c2c 000000c2: EQ 000000c3: PUSH2 0x0692 000000c6: JUMPI 000000c7: PUSH2 0x02a0 000000ca: JUMP 000000cb: JUMPDEST 000000cc: DUP1 000000cd: PUSH4 0x7fab9e46 000000d2: GT 000000d3: PUSH2 0x0122 000000d6: JUMPI 000000d7: DUP1 000000d8: PUSH4 0x92c7a64e 000000dd: GT 000000de: PUSH2 0x0107 000000e1: JUMPI 000000e2: DUP1 000000e3: PUSH4 0x92c7a64e 000000e8: EQ 000000e9: PUSH2 0x05c3 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x93c00b42 000000f3: EQ 000000f4: PUSH2 0x0603 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x9ebea88c 000000fe: EQ 000000ff: PUSH2 0x064b 00000102: JUMPI 00000103: PUSH2 0x02a0 00000106: JUMP 00000107: JUMPDEST 00000108: DUP1 00000109: PUSH4 0x7fab9e46 0000010e: EQ 0000010f: PUSH2 0x057b 00000112: JUMPI 00000113: DUP1 00000114: PUSH4 0x883d5036 00000119: EQ 0000011a: PUSH2 0x059a 0000011d: JUMPI 0000011e: PUSH2 0x02a0 00000121: JUMP 00000122: JUMPDEST 00000123: DUP1 00000124: PUSH4 0x703ec8c4 00000129: GT 0000012a: PUSH2 0x0153 0000012d: JUMPI 0000012e: DUP1 0000012f: PUSH4 0x703ec8c4 00000134: EQ 00000135: PUSH2 0x0507 00000138: JUMPI 00000139: DUP1 0000013a: PUSH4 0x7bb4d0a7 0000013f: EQ 00000140: PUSH2 0x053a 00000143: JUMPI 00000144: DUP1 00000145: PUSH4 0x7fa76e43 0000014a: EQ 0000014b: PUSH2 0x054f 0000014e: JUMPI 0000014f: PUSH2 0x02a0 00000152: JUMP 00000153: JUMPDEST 00000154: DUP1 00000155: PUSH4 0x674b7844 0000015a: EQ 0000015b: PUSH2 0x04b2 0000015e: JUMPI 0000015f: DUP1 00000160: PUSH4 0x6a7b6506 00000165: EQ 00000166: PUSH2 0x04c7 00000169: JUMPI 0000016a: PUSH2 0x02a0 0000016d: JUMP 0000016e: JUMPDEST 0000016f: DUP1 00000170: PUSH4 0x2fde80e5 00000175: GT 00000176: PUSH2 0x021c 00000179: JUMPI 0000017a: DUP1 0000017b: PUSH4 0x4e71d92d 00000180: GT 00000181: PUSH2 0x01d0 00000184: JUMPI 00000185: DUP1 00000186: PUSH4 0x607c94f0 0000018b: GT 0000018c: PUSH2 0x01b5 0000018f: JUMPI 00000190: DUP1 00000191: PUSH4 0x607c94f0 00000196: EQ 00000197: PUSH2 0x0473 0000019a: JUMPI 0000019b: DUP1 0000019c: PUSH4 0x61037ff9 000001a1: EQ 000001a2: PUSH2 0x0488 000001a5: JUMPI 000001a6: DUP1 000001a7: PUSH4 0x6615bbf0 000001ac: EQ 000001ad: PUSH2 0x049d 000001b0: JUMPI 000001b1: PUSH2 0x02a0 000001b4: JUMP 000001b5: JUMPDEST 000001b6: DUP1 000001b7: PUSH4 0x4e71d92d 000001bc: EQ 000001bd: PUSH2 0x0447 000001c0: JUMPI 000001c1: DUP1 000001c2: PUSH4 0x5c0dd776 000001c7: EQ 000001c8: PUSH2 0x045e 000001cb: JUMPI 000001cc: PUSH2 0x02a0 000001cf: JUMP 000001d0: JUMPDEST 000001d1: DUP1 000001d2: PUSH4 0x44e87220 000001d7: GT 000001d8: PUSH2 0x0201 000001db: JUMPI 000001dc: DUP1 000001dd: PUSH4 0x44e87220 000001e2: EQ 000001e3: PUSH2 0x0408 000001e6: JUMPI 000001e7: DUP1 000001e8: PUSH4 0x49c45883 000001ed: EQ 000001ee: PUSH2 0x041d 000001f1: JUMPI 000001f2: DUP1 000001f3: PUSH4 0x4e544988 000001f8: EQ 000001f9: PUSH2 0x0432 000001fc: JUMPI 000001fd: PUSH2 0x02a0 00000200: JUMP 00000201: JUMPDEST 00000202: DUP1 00000203: PUSH4 0x2fde80e5 00000208: EQ 00000209: PUSH2 0x03de 0000020c: JUMPI 0000020d: DUP1 0000020e: PUSH4 0x35fd4ce5 00000213: EQ 00000214: PUSH2 0x03f3 00000217: JUMPI 00000218: PUSH2 0x02a0 0000021b: JUMP 0000021c: JUMPDEST 0000021d: DUP1 0000021e: PUSH4 0x1357e1dc 00000223: GT 00000224: PUSH2 0x0273 00000227: JUMPI 00000228: DUP1 00000229: PUSH4 0x1e95a512 0000022e: GT 0000022f: PUSH2 0x0258 00000232: JUMPI 00000233: DUP1 00000234: PUSH4 0x1e95a512 00000239: EQ 0000023a: PUSH2 0x0335 0000023d: JUMPI 0000023e: DUP1 0000023f: PUSH4 0x2043a1a3 00000244: EQ 00000245: PUSH2 0x0375 00000248: JUMPI 00000249: DUP1 0000024a: PUSH4 0x2b7ac3f3 0000024f: EQ 00000250: PUSH2 0x03a0 00000253: JUMPI 00000254: PUSH2 0x02a0 00000257: JUMP 00000258: JUMPDEST 00000259: DUP1 0000025a: PUSH4 0x1357e1dc 0000025f: EQ 00000260: PUSH2 0x030b 00000263: JUMPI 00000264: DUP1 00000265: PUSH4 0x156c2a64 0000026a: EQ 0000026b: PUSH2 0x0320 0000026e: JUMPI 0000026f: PUSH2 0x02a0 00000272: JUMP 00000273: JUMPDEST 00000274: DUP1 00000275: PUSH4 0x01646b06 0000027a: EQ 0000027b: PUSH2 0x02a5 0000027e: JUMPI 0000027f: DUP1 00000280: PUSH4 0x0917e776 00000285: EQ 00000286: PUSH2 0x02cc 00000289: JUMPI 0000028a: DUP1 0000028b: PUSH4 0x0b07681c 00000290: EQ 00000291: PUSH2 0x02e1 00000294: JUMPI 00000295: DUP1 00000296: PUSH4 0x12a1a255 0000029b: EQ 0000029c: PUSH2 0x02f6 0000029f: JUMPI 000002a0: JUMPDEST 000002a1: PUSH1 0x00 000002a3: DUP1 000002a4: REVERT 000002a5: JUMPDEST 000002a6: CALLVALUE 000002a7: DUP1 000002a8: ISZERO 000002a9: PUSH2 0x02b1 000002ac: JUMPI 000002ad: PUSH1 0x00 000002af: DUP1 000002b0: REVERT 000002b1: JUMPDEST 000002b2: POP 000002b3: PUSH2 0x02ba 000002b6: PUSH2 0x07d8 000002b9: JUMP 000002ba: JUMPDEST 000002bb: PUSH1 0x40 000002bd: DUP1 000002be: MLOAD 000002bf: SWAP2 000002c0: DUP3 000002c1: MSTORE 000002c2: MLOAD 000002c3: SWAP1 000002c4: DUP2 000002c5: SWAP1 000002c6: SUB 000002c7: PUSH1 0x20 000002c9: ADD 000002ca: SWAP1 000002cb: RETURN 000002cc: JUMPDEST 000002cd: CALLVALUE 000002ce: DUP1 000002cf: ISZERO 000002d0: PUSH2 0x02d8 000002d3: JUMPI 000002d4: PUSH1 0x00 000002d6: DUP1 000002d7: REVERT 000002d8: JUMPDEST 000002d9: POP 000002da: PUSH2 0x02ba 000002dd: PUSH2 0x07de 000002e0: JUMP 000002e1: JUMPDEST 000002e2: CALLVALUE 000002e3: DUP1 000002e4: ISZERO 000002e5: PUSH2 0x02ed 000002e8: JUMPI 000002e9: PUSH1 0x00 000002eb: DUP1 000002ec: REVERT 000002ed: JUMPDEST 000002ee: POP 000002ef: PUSH2 0x02ba 000002f2: PUSH2 0x07e5 000002f5: JUMP 000002f6: JUMPDEST 000002f7: CALLVALUE 000002f8: DUP1 000002f9: ISZERO 000002fa: PUSH2 0x0302 000002fd: JUMPI 000002fe: PUSH1 0x00 00000300: DUP1 00000301: REVERT 00000302: JUMPDEST 00000303: POP 00000304: PUSH2 0x02ba 00000307: PUSH2 0x07eb 0000030a: JUMP 0000030b: JUMPDEST 0000030c: CALLVALUE 0000030d: DUP1 0000030e: ISZERO 0000030f: PUSH2 0x0317 00000312: JUMPI 00000313: PUSH1 0x00 00000315: DUP1 00000316: REVERT 00000317: JUMPDEST 00000318: POP 00000319: PUSH2 0x02ba 0000031c: PUSH2 0x07f6 0000031f: JUMP 00000320: JUMPDEST 00000321: CALLVALUE 00000322: DUP1 00000323: ISZERO 00000324: PUSH2 0x032c 00000327: JUMPI 00000328: PUSH1 0x00 0000032a: DUP1 0000032b: REVERT 0000032c: JUMPDEST 0000032d: POP 0000032e: PUSH2 0x02ba 00000331: PUSH2 0x07fc 00000334: JUMP 00000335: JUMPDEST 00000336: CALLVALUE 00000337: DUP1 00000338: ISZERO 00000339: PUSH2 0x0341 0000033c: JUMPI 0000033d: PUSH1 0x00 0000033f: DUP1 00000340: REVERT 00000341: JUMPDEST 00000342: POP 00000343: PUSH2 0x02ba 00000346: PUSH1 0x04 00000348: DUP1 00000349: CALLDATASIZE 0000034a: SUB 0000034b: PUSH1 0x20 0000034d: DUP2 0000034e: LT 0000034f: ISZERO 00000350: PUSH2 0x0358 00000353: JUMPI 00000354: PUSH1 0x00 00000356: DUP1 00000357: REVERT 00000358: JUMPDEST 00000359: POP 0000035a: CALLDATALOAD 0000035b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000370: AND 00000371: PUSH2 0x0802 00000374: JUMP 00000375: JUMPDEST 00000376: CALLVALUE 00000377: DUP1 00000378: ISZERO 00000379: PUSH2 0x0381 0000037c: JUMPI 0000037d: PUSH1 0x00 0000037f: DUP1 00000380: REVERT 00000381: JUMPDEST 00000382: POP 00000383: PUSH2 0x038a 00000386: PUSH2 0x0895 00000389: JUMP 0000038a: JUMPDEST 0000038b: PUSH1 0x40 0000038d: DUP1 0000038e: MLOAD 0000038f: PUSH1 0xff 00000391: SWAP1 00000392: SWAP3 00000393: AND 00000394: DUP3 00000395: MSTORE 00000396: MLOAD 00000397: SWAP1 00000398: DUP2 00000399: SWAP1 0000039a: SUB 0000039b: PUSH1 0x20 0000039d: ADD 0000039e: SWAP1 0000039f: RETURN 000003a0: JUMPDEST 000003a1: CALLVALUE 000003a2: DUP1 000003a3: ISZERO 000003a4: PUSH2 0x03ac 000003a7: JUMPI 000003a8: PUSH1 0x00 000003aa: DUP1 000003ab: REVERT 000003ac: JUMPDEST 000003ad: POP 000003ae: PUSH2 0x03b5 000003b1: PUSH2 0x089a 000003b4: JUMP 000003b5: JUMPDEST 000003b6: PUSH1 0x40 000003b8: DUP1 000003b9: MLOAD 000003ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000003cf: SWAP1 000003d0: SWAP3 000003d1: AND 000003d2: DUP3 000003d3: MSTORE 000003d4: MLOAD 000003d5: SWAP1 000003d6: DUP2 000003d7: SWAP1 000003d8: SUB 000003d9: PUSH1 0x20 000003db: ADD 000003dc: SWAP1 000003dd: RETURN 000003de: JUMPDEST 000003df: CALLVALUE 000003e0: DUP1 000003e1: ISZERO 000003e2: PUSH2 0x03ea 000003e5: JUMPI 000003e6: PUSH1 0x00 000003e8: DUP1 000003e9: REVERT 000003ea: JUMPDEST 000003eb: POP 000003ec: PUSH2 0x02ba 000003ef: PUSH2 0x08b6 000003f2: JUMP 000003f3: JUMPDEST 000003f4: CALLVALUE 000003f5: DUP1 000003f6: ISZERO 000003f7: PUSH2 0x03ff 000003fa: JUMPI 000003fb: PUSH1 0x00 000003fd: DUP1 000003fe: REVERT 000003ff: JUMPDEST 00000400: POP 00000401: PUSH2 0x02ba 00000404: PUSH2 0x08bc 00000407: JUMP 00000408: JUMPDEST 00000409: CALLVALUE 0000040a: DUP1 0000040b: ISZERO 0000040c: PUSH2 0x0414 0000040f: JUMPI 00000410: PUSH1 0x00 00000412: DUP1 00000413: REVERT 00000414: JUMPDEST 00000415: POP 00000416: PUSH2 0x02ba 00000419: PUSH2 0x08ee 0000041c: JUMP 0000041d: JUMPDEST 0000041e: CALLVALUE 0000041f: DUP1 00000420: ISZERO 00000421: PUSH2 0x0429 00000424: JUMPI 00000425: PUSH1 0x00 00000427: DUP1 00000428: REVERT 00000429: JUMPDEST 0000042a: POP 0000042b: PUSH2 0x02ba 0000042e: PUSH2 0x08f7 00000431: JUMP 00000432: JUMPDEST 00000433: CALLVALUE 00000434: DUP1 00000435: ISZERO 00000436: PUSH2 0x043e 00000439: JUMPI 0000043a: PUSH1 0x00 0000043c: DUP1 0000043d: REVERT 0000043e: JUMPDEST 0000043f: POP 00000440: PUSH2 0x02ba 00000443: PUSH2 0x08fd 00000446: JUMP 00000447: JUMPDEST 00000448: CALLVALUE 00000449: DUP1 0000044a: ISZERO 0000044b: PUSH2 0x0453 0000044e: JUMPI 0000044f: PUSH1 0x00 00000451: DUP1 00000452: REVERT 00000453: JUMPDEST 00000454: POP 00000455: PUSH2 0x045c 00000458: PUSH2 0x0903 0000045b: JUMP 0000045c: JUMPDEST 0000045d: STOP 0000045e: JUMPDEST 0000045f: CALLVALUE 00000460: DUP1 00000461: ISZERO 00000462: PUSH2 0x046a 00000465: JUMPI 00000466: PUSH1 0x00 00000468: DUP1 00000469: REVERT 0000046a: JUMPDEST 0000046b: POP 0000046c: PUSH2 0x045c 0000046f: PUSH2 0x0a36 00000472: JUMP 00000473: JUMPDEST 00000474: CALLVALUE 00000475: DUP1 00000476: ISZERO 00000477: PUSH2 0x047f 0000047a: JUMPI 0000047b: PUSH1 0x00 0000047d: DUP1 0000047e: REVERT 0000047f: JUMPDEST 00000480: POP 00000481: PUSH2 0x045c 00000484: PUSH2 0x0b4a 00000487: JUMP 00000488: JUMPDEST 00000489: CALLVALUE 0000048a: DUP1 0000048b: ISZERO 0000048c: PUSH2 0x0494 0000048f: JUMPI 00000490: PUSH1 0x00 00000492: DUP1 00000493: REVERT 00000494: JUMPDEST 00000495: POP 00000496: PUSH2 0x02ba 00000499: PUSH2 0x0d22 0000049c: JUMP 0000049d: JUMPDEST 0000049e: CALLVALUE 0000049f: DUP1 000004a0: ISZERO 000004a1: PUSH2 0x04a9 000004a4: JUMPI 000004a5: PUSH1 0x00 000004a7: DUP1 000004a8: REVERT 000004a9: JUMPDEST 000004aa: POP 000004ab: PUSH2 0x02ba 000004ae: PUSH2 0x0d28 000004b1: JUMP 000004b2: JUMPDEST 000004b3: CALLVALUE 000004b4: DUP1 000004b5: ISZERO 000004b6: PUSH2 0x04be 000004b9: JUMPI 000004ba: PUSH1 0x00 000004bc: DUP1 000004bd: REVERT 000004be: JUMPDEST 000004bf: POP 000004c0: PUSH2 0x02ba 000004c3: PUSH2 0x0d2e 000004c6: JUMP 000004c7: JUMPDEST 000004c8: CALLVALUE 000004c9: DUP1 000004ca: ISZERO 000004cb: PUSH2 0x04d3 000004ce: JUMPI 000004cf: PUSH1 0x00 000004d1: DUP1 000004d2: REVERT 000004d3: JUMPDEST 000004d4: POP 000004d5: PUSH2 0x02ba 000004d8: PUSH1 0x04 000004da: DUP1 000004db: CALLDATASIZE 000004dc: SUB 000004dd: PUSH1 0x20 000004df: DUP2 000004e0: LT 000004e1: ISZERO 000004e2: PUSH2 0x04ea 000004e5: JUMPI 000004e6: PUSH1 0x00 000004e8: DUP1 000004e9: REVERT 000004ea: JUMPDEST 000004eb: POP 000004ec: CALLDATALOAD 000004ed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000502: AND 00000503: PUSH2 0x0d33 00000506: JUMP 00000507: JUMPDEST 00000508: CALLVALUE 00000509: DUP1 0000050a: ISZERO 0000050b: PUSH2 0x0513 0000050e: JUMPI 0000050f: PUSH1 0x00 00000511: DUP1 00000512: REVERT 00000513: JUMPDEST 00000514: POP 00000515: PUSH2 0x051c 00000518: PUSH2 0x0d6a 0000051b: JUMP 0000051c: JUMPDEST 0000051d: PUSH1 0x40 0000051f: DUP1 00000520: MLOAD 00000521: SWAP4 00000522: DUP5 00000523: MSTORE 00000524: PUSH1 0x20 00000526: DUP5 00000527: ADD 00000528: SWAP3 00000529: SWAP1 0000052a: SWAP3 0000052b: MSTORE 0000052c: DUP3 0000052d: DUP3 0000052e: ADD 0000052f: MSTORE 00000530: MLOAD 00000531: SWAP1 00000532: DUP2 00000533: SWAP1 00000534: SUB 00000535: PUSH1 0x60 00000537: ADD 00000538: SWAP1 00000539: RETURN 0000053a: JUMPDEST 0000053b: CALLVALUE 0000053c: DUP1 0000053d: ISZERO 0000053e: PUSH2 0x0546 00000541: JUMPI 00000542: PUSH1 0x00 00000544: DUP1 00000545: REVERT 00000546: JUMPDEST 00000547: POP 00000548: PUSH2 0x03b5 0000054b: PUSH2 0x0d76 0000054e: JUMP 0000054f: JUMPDEST 00000550: CALLVALUE 00000551: DUP1 00000552: ISZERO 00000553: PUSH2 0x055b 00000556: JUMPI 00000557: PUSH1 0x00 00000559: DUP1 0000055a: REVERT 0000055b: JUMPDEST 0000055c: POP 0000055d: PUSH2 0x045c 00000560: PUSH1 0x04 00000562: DUP1 00000563: CALLDATASIZE 00000564: SUB 00000565: PUSH1 0x20 00000567: DUP2 00000568: LT 00000569: ISZERO 0000056a: PUSH2 0x0572 0000056d: JUMPI 0000056e: PUSH1 0x00 00000570: DUP1 00000571: REVERT 00000572: JUMPDEST 00000573: POP 00000574: CALLDATALOAD 00000575: ISZERO 00000576: ISZERO 00000577: PUSH2 0x0d92 0000057a: JUMP 0000057b: JUMPDEST 0000057c: PUSH2 0x045c 0000057f: PUSH1 0x04 00000581: DUP1 00000582: CALLDATASIZE 00000583: SUB 00000584: PUSH1 0x20 00000586: DUP2 00000587: LT 00000588: ISZERO 00000589: PUSH2 0x0591 0000058c: JUMPI 0000058d: PUSH1 0x00 0000058f: DUP1 00000590: REVERT 00000591: JUMPDEST 00000592: POP 00000593: CALLDATALOAD 00000594: ISZERO 00000595: ISZERO 00000596: PUSH2 0x0e38 00000599: JUMP 0000059a: JUMPDEST 0000059b: CALLVALUE 0000059c: DUP1 0000059d: ISZERO 0000059e: PUSH2 0x05a6 000005a1: JUMPI 000005a2: PUSH1 0x00 000005a4: DUP1 000005a5: REVERT 000005a6: JUMPDEST 000005a7: POP 000005a8: PUSH2 0x05af 000005ab: PUSH2 0x0fb8 000005ae: JUMP 000005af: JUMPDEST 000005b0: PUSH1 0x40 000005b2: DUP1 000005b3: MLOAD 000005b4: SWAP2 000005b5: ISZERO 000005b6: ISZERO 000005b7: DUP3 000005b8: MSTORE 000005b9: MLOAD 000005ba: SWAP1 000005bb: DUP2 000005bc: SWAP1 000005bd: SUB 000005be: PUSH1 0x20 000005c0: ADD 000005c1: SWAP1 000005c2: RETURN 000005c3: JUMPDEST 000005c4: CALLVALUE 000005c5: DUP1 000005c6: ISZERO 000005c7: PUSH2 0x05cf 000005ca: JUMPI 000005cb: PUSH1 0x00 000005cd: DUP1 000005ce: REVERT 000005cf: JUMPDEST 000005d0: POP 000005d1: PUSH2 0x02ba 000005d4: PUSH1 0x04 000005d6: DUP1 000005d7: CALLDATASIZE 000005d8: SUB 000005d9: PUSH1 0x20 000005db: DUP2 000005dc: LT 000005dd: ISZERO 000005de: PUSH2 0x05e6 000005e1: JUMPI 000005e2: PUSH1 0x00 000005e4: DUP1 000005e5: REVERT 000005e6: JUMPDEST 000005e7: POP 000005e8: CALLDATALOAD 000005e9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005fe: AND 000005ff: PUSH2 0x0fd9 00000602: JUMP 00000603: JUMPDEST 00000604: CALLVALUE 00000605: DUP1 00000606: ISZERO 00000607: PUSH2 0x060f 0000060a: JUMPI 0000060b: PUSH1 0x00 0000060d: DUP1 0000060e: REVERT 0000060f: JUMPDEST 00000610: POP 00000611: PUSH2 0x02ba 00000614: PUSH1 0x04 00000616: DUP1 00000617: CALLDATASIZE 00000618: SUB 00000619: PUSH1 0x40 0000061b: DUP2 0000061c: LT 0000061d: ISZERO 0000061e: PUSH2 0x0626 00000621: JUMPI 00000622: PUSH1 0x00 00000624: DUP1 00000625: REVERT 00000626: JUMPDEST 00000627: POP 00000628: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000063d: DUP2 0000063e: CALLDATALOAD 0000063f: AND 00000640: SWAP1 00000641: PUSH1 0x20 00000643: ADD 00000644: CALLDATALOAD 00000645: ISZERO 00000646: ISZERO 00000647: PUSH2 0x10c6 0000064a: JUMP 0000064b: JUMPDEST 0000064c: CALLVALUE 0000064d: DUP1 0000064e: ISZERO 0000064f: PUSH2 0x0657 00000652: JUMPI 00000653: PUSH1 0x00 00000655: DUP1 00000656: REVERT 00000657: JUMPDEST 00000658: POP 00000659: PUSH2 0x045c 0000065c: PUSH1 0x04 0000065e: DUP1 0000065f: CALLDATASIZE 00000660: SUB 00000661: PUSH1 0x40 00000663: DUP2 00000664: LT 00000665: ISZERO 00000666: PUSH2 0x066e 00000669: JUMPI 0000066a: PUSH1 0x00 0000066c: DUP1 0000066d: REVERT 0000066e: JUMPDEST 0000066f: POP 00000670: DUP1 00000671: CALLDATALOAD 00000672: SWAP1 00000673: PUSH1 0x20 00000675: ADD 00000676: CALLDATALOAD 00000677: ISZERO 00000678: ISZERO 00000679: PUSH2 0x1126 0000067c: JUMP 0000067d: JUMPDEST 0000067e: CALLVALUE 0000067f: DUP1 00000680: ISZERO 00000681: PUSH2 0x0689 00000684: JUMPI 00000685: PUSH1 0x00 00000687: DUP1 00000688: REVERT 00000689: JUMPDEST 0000068a: POP 0000068b: PUSH2 0x02ba 0000068e: PUSH2 0x11ba 00000691: JUMP 00000692: JUMPDEST 00000693: CALLVALUE 00000694: DUP1 00000695: ISZERO 00000696: PUSH2 0x069e 00000699: JUMPI 0000069a: PUSH1 0x00 0000069c: DUP1 0000069d: REVERT 0000069e: JUMPDEST 0000069f: POP 000006a0: PUSH2 0x02ba 000006a3: PUSH1 0x04 000006a5: DUP1 000006a6: CALLDATASIZE 000006a7: SUB 000006a8: PUSH1 0x40 000006aa: DUP2 000006ab: LT 000006ac: ISZERO 000006ad: PUSH2 0x06b5 000006b0: JUMPI 000006b1: PUSH1 0x00 000006b3: DUP1 000006b4: REVERT 000006b5: JUMPDEST 000006b6: POP 000006b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006cc: DUP2 000006cd: CALLDATALOAD 000006ce: AND 000006cf: SWAP1 000006d0: PUSH1 0x20 000006d2: ADD 000006d3: CALLDATALOAD 000006d4: ISZERO 000006d5: ISZERO 000006d6: PUSH2 0x11c0 000006d9: JUMP 000006da: JUMPDEST 000006db: CALLVALUE 000006dc: DUP1 000006dd: ISZERO 000006de: PUSH2 0x06e6 000006e1: JUMPI 000006e2: PUSH1 0x00 000006e4: DUP1 000006e5: REVERT 000006e6: JUMPDEST 000006e7: POP 000006e8: PUSH2 0x02ba 000006eb: PUSH1 0x04 000006ed: DUP1 000006ee: CALLDATASIZE 000006ef: SUB 000006f0: PUSH1 0x20 000006f2: DUP2 000006f3: LT 000006f4: ISZERO 000006f5: PUSH2 0x06fd 000006f8: JUMPI 000006f9: PUSH1 0x00 000006fb: DUP1 000006fc: REVERT 000006fd: JUMPDEST 000006fe: POP 000006ff: CALLDATALOAD 00000700: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000715: AND 00000716: PUSH2 0x12f1 00000719: JUMP 0000071a: JUMPDEST 0000071b: CALLVALUE 0000071c: DUP1 0000071d: ISZERO 0000071e: PUSH2 0x0726 00000721: JUMPI 00000722: PUSH1 0x00 00000724: DUP1 00000725: REVERT 00000726: JUMPDEST 00000727: POP 00000728: PUSH2 0x045c 0000072b: PUSH2 0x131c 0000072e: JUMP 0000072f: JUMPDEST 00000730: CALLVALUE 00000731: DUP1 00000732: ISZERO 00000733: PUSH2 0x073b 00000736: JUMPI 00000737: PUSH1 0x00 00000739: DUP1 0000073a: REVERT 0000073b: JUMPDEST 0000073c: POP 0000073d: PUSH2 0x045c 00000740: PUSH2 0x144d 00000743: JUMP 00000744: JUMPDEST 00000745: CALLVALUE 00000746: DUP1 00000747: ISZERO 00000748: PUSH2 0x0750 0000074b: JUMPI 0000074c: PUSH1 0x00 0000074e: DUP1 0000074f: REVERT 00000750: JUMPDEST 00000751: POP 00000752: PUSH2 0x03b5 00000755: PUSH2 0x14c2 00000758: JUMP 00000759: JUMPDEST 0000075a: CALLVALUE 0000075b: DUP1 0000075c: ISZERO 0000075d: PUSH2 0x0765 00000760: JUMPI 00000761: PUSH1 0x00 00000763: DUP1 00000764: REVERT 00000765: JUMPDEST 00000766: POP 00000767: PUSH2 0x045c 0000076a: PUSH1 0x04 0000076c: DUP1 0000076d: CALLDATASIZE 0000076e: SUB 0000076f: PUSH1 0x20 00000771: DUP2 00000772: LT 00000773: ISZERO 00000774: PUSH2 0x077c 00000777: JUMPI 00000778: PUSH1 0x00 0000077a: DUP1 0000077b: REVERT 0000077c: JUMPDEST 0000077d: POP 0000077e: CALLDATALOAD 0000077f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000794: AND 00000795: PUSH2 0x14de 00000798: JUMP 00000799: JUMPDEST 0000079a: CALLVALUE 0000079b: DUP1 0000079c: ISZERO 0000079d: PUSH2 0x07a5 000007a0: JUMPI 000007a1: PUSH1 0x00 000007a3: DUP1 000007a4: REVERT 000007a5: JUMPDEST 000007a6: POP 000007a7: PUSH2 0x02ba 000007aa: PUSH2 0x1731 000007ad: JUMP 000007ae: JUMPDEST 000007af: CALLVALUE 000007b0: DUP1 000007b1: ISZERO 000007b2: PUSH2 0x07ba 000007b5: JUMPI 000007b6: PUSH1 0x00 000007b8: DUP1 000007b9: REVERT 000007ba: JUMPDEST 000007bb: POP 000007bc: PUSH2 0x02ba 000007bf: PUSH2 0x1738 000007c2: JUMP 000007c3: JUMPDEST 000007c4: CALLVALUE 000007c5: DUP1 000007c6: ISZERO 000007c7: PUSH2 0x07cf 000007ca: JUMPI 000007cb: PUSH1 0x00 000007cd: DUP1 000007ce: REVERT 000007cf: JUMPDEST 000007d0: POP 000007d1: PUSH2 0x051c 000007d4: PUSH2 0x173e 000007d7: JUMP 000007d8: JUMPDEST 000007d9: PUSH1 0x03 000007db: SLOAD 000007dc: DUP2 000007dd: JUMP 000007de: JUMPDEST 000007df: PUSH1 0x0d 000007e1: SLOAD 000007e2: JUMPDEST 000007e3: SWAP1 000007e4: JUMP 000007e5: JUMPDEST 000007e6: PUSH1 0x18 000007e8: SLOAD 000007e9: DUP2 000007ea: JUMP 000007eb: JUMPDEST 000007ec: PUSH7 0x2386f26fc10000 000007f4: DUP2 000007f5: JUMP 000007f6: JUMPDEST 000007f7: PUSH1 0x07 000007f9: SLOAD 000007fa: DUP2 000007fb: JUMP 000007fc: JUMPDEST 000007fd: PUSH1 0x11 000007ff: SLOAD 00000800: SWAP1 00000801: JUMP 00000802: JUMPDEST 00000803: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000818: DUP2 00000819: AND 0000081a: PUSH1 0x00 0000081c: SWAP1 0000081d: DUP2 0000081e: MSTORE 0000081f: PUSH1 0x17 00000821: PUSH1 0x20 00000823: MSTORE 00000824: PUSH1 0x40 00000826: DUP2 00000827: KECCAK256 00000828: PUSH1 0x01 0000082a: DUP2 0000082b: ADD 0000082c: SLOAD 0000082d: PUSH2 0x087d 00000830: JUMPI 00000831: PUSH1 0x40 00000833: DUP1 00000834: MLOAD 00000835: PUSH3 0x461bcd 00000839: PUSH1 0xe5 0000083b: SHL 0000083c: DUP2 0000083d: MSTORE 0000083e: PUSH1 0x20 00000840: PUSH1 0x04 00000842: DUP3 00000843: ADD 00000844: MSTORE 00000845: PUSH1 0x19 00000847: PUSH1 0x24 00000849: DUP3 0000084a: ADD 0000084b: MSTORE 0000084c: PUSH32 0x414e54453a206e6f7468696e6720746f20776974686472617700000000000000 0000086d: PUSH1 0x44 0000086f: DUP3 00000870: ADD 00000871: MSTORE 00000872: SWAP1 00000873: MLOAD 00000874: SWAP1 00000875: DUP2 00000876: SWAP1 00000877: SUB 00000878: PUSH1 0x64 0000087a: ADD 0000087b: SWAP1 0000087c: REVERT 0000087d: JUMPDEST 0000087e: DUP1 0000087f: SLOAD 00000880: PUSH2 0x088c 00000883: SWAP1 00000884: PUSH3 0x015180 00000888: PUSH2 0x174a 0000088b: JUMP 0000088c: JUMPDEST 0000088d: SWAP2 0000088e: POP 0000088f: POP 00000890: JUMPDEST 00000891: SWAP2 00000892: SWAP1 00000893: POP 00000894: JUMP 00000895: JUMPDEST 00000896: PUSH1 0x0c 00000898: DUP2 00000899: JUMP 0000089a: JUMPDEST 0000089b: PUSH1 0x05 0000089d: SLOAD 0000089e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008b3: AND 000008b4: DUP2 000008b5: JUMP 000008b6: JUMPDEST 000008b7: PUSH1 0x04 000008b9: SLOAD 000008ba: DUP2 000008bb: JUMP 000008bc: JUMPDEST 000008bd: PUSH1 0x18 000008bf: SLOAD 000008c0: PUSH1 0x0d 000008c2: SLOAD 000008c3: PUSH1 0x00 000008c5: SWAP2 000008c6: DUP3 000008c7: SWAP2 000008c8: PUSH2 0x08d0 000008cb: SWAP2 000008cc: PUSH2 0x174a 000008cf: JUMP 000008d0: JUMPDEST 000008d1: SWAP1 000008d2: POP 000008d3: PUSH2 0x08e8 000008d6: PUSH1 0x64 000008d8: PUSH2 0x08e2 000008db: DUP4 000008dc: PUSH1 0x05 000008de: PUSH2 0x17a4 000008e1: JUMP 000008e2: JUMPDEST 000008e3: SWAP1 000008e4: PUSH2 0x17fd 000008e7: JUMP 000008e8: JUMPDEST 000008e9: SWAP2 000008ea: POP 000008eb: POP 000008ec: SWAP1 000008ed: JUMP 000008ee: JUMPDEST 000008ef: PUSH5 0x174876e800 000008f5: DUP2 000008f6: JUMP 000008f7: JUMPDEST 000008f8: PUSH1 0x06 000008fa: SLOAD 000008fb: DUP2 000008fc: JUMP 000008fd: JUMPDEST 000008fe: PUSH1 0x14 00000900: SLOAD 00000901: SWAP1 00000902: JUMP 00000903: JUMPDEST 00000904: PUSH1 0x01 00000906: SLOAD 00000907: PUSH21 0x010000000000000000000000000000000000000000 0000091d: SWAP1 0000091e: DIV 0000091f: PUSH1 0xff 00000921: AND 00000922: PUSH2 0x0972 00000925: JUMPI 00000926: PUSH1 0x40 00000928: DUP1 00000929: MLOAD 0000092a: PUSH3 0x461bcd 0000092e: PUSH1 0xe5 00000930: SHL 00000931: DUP2 00000932: MSTORE 00000933: PUSH1 0x20 00000935: PUSH1 0x04 00000937: DUP3 00000938: ADD 00000939: MSTORE 0000093a: PUSH1 0x19 0000093c: PUSH1 0x24 0000093e: DUP3 0000093f: ADD 00000940: MSTORE 00000941: PUSH32 0x414e54453a205465737420686173206e6f74206661696c656400000000000000 00000962: PUSH1 0x44 00000964: DUP3 00000965: ADD 00000966: MSTORE 00000967: SWAP1 00000968: MLOAD 00000969: SWAP1 0000096a: DUP2 0000096b: SWAP1 0000096c: SUB 0000096d: PUSH1 0x64 0000096f: ADD 00000970: SWAP1 00000971: REVERT 00000972: JUMPDEST 00000973: CALLER 00000974: PUSH1 0x00 00000976: SWAP1 00000977: DUP2 00000978: MSTORE 00000979: PUSH1 0x0f 0000097b: PUSH1 0x20 0000097d: MSTORE 0000097e: PUSH1 0x40 00000980: SWAP1 00000981: KECCAK256 00000982: DUP1 00000983: SLOAD 00000984: PUSH2 0x09be 00000987: JUMPI 00000988: PUSH1 0x40 0000098a: MLOAD 0000098b: PUSH3 0x461bcd 0000098f: PUSH1 0xe5 00000991: SHL 00000992: DUP2 00000993: MSTORE 00000994: PUSH1 0x04 00000996: ADD 00000997: DUP1 00000998: DUP1 00000999: PUSH1 0x20 0000099b: ADD 0000099c: DUP3 0000099d: DUP2 0000099e: SUB 0000099f: DUP3 000009a0: MSTORE 000009a1: PUSH1 0x23 000009a3: DUP2 000009a4: MSTORE 000009a5: PUSH1 0x20 000009a7: ADD 000009a8: DUP1 000009a9: PUSH2 0x22f8 000009ac: PUSH1 0x23 000009ae: SWAP2 000009af: CODECOPY 000009b0: PUSH1 0x40 000009b2: ADD 000009b3: SWAP2 000009b4: POP 000009b5: POP 000009b6: PUSH1 0x40 000009b8: MLOAD 000009b9: DUP1 000009ba: SWAP2 000009bb: SUB 000009bc: SWAP1 000009bd: REVERT 000009be: JUMPDEST 000009bf: PUSH1 0x00 000009c1: PUSH2 0x09ca 000009c4: DUP3 000009c5: CALLER 000009c6: PUSH2 0x1864 000009c9: JUMP 000009ca: JUMPDEST 000009cb: PUSH1 0x00 000009cd: DUP4 000009ce: SSTORE 000009cf: PUSH1 0x06 000009d1: SLOAD 000009d2: SWAP1 000009d3: SWAP2 000009d4: POP 000009d5: PUSH2 0x09df 000009d8: SWAP1 000009d9: PUSH1 0x01 000009db: PUSH2 0x174a 000009de: JUMP 000009df: JUMPDEST 000009e0: PUSH1 0x06 000009e2: SSTORE 000009e3: PUSH1 0x07 000009e5: SLOAD 000009e6: PUSH2 0x09ef 000009e9: SWAP1 000009ea: DUP3 000009eb: PUSH2 0x174a 000009ee: JUMP 000009ef: JUMPDEST 000009f0: PUSH1 0x07 000009f2: SSTORE 000009f3: PUSH2 0x09fc 000009f6: CALLER 000009f7: DUP3 000009f8: PUSH2 0x190d 000009fb: JUMP 000009fc: JUMPDEST 000009fd: PUSH1 0x40 000009ff: DUP1 00000a00: MLOAD 00000a01: DUP3 00000a02: DUP2 00000a03: MSTORE 00000a04: SWAP1 00000a05: MLOAD 00000a06: CALLER 00000a07: SWAP2 00000a08: PUSH32 0xf42cf8c29487b42c009006cba2a2a0ca0388229f3183e6e957e0a0b163585cb4 00000a29: SWAP2 00000a2a: SWAP1 00000a2b: DUP2 00000a2c: SWAP1 00000a2d: SUB 00000a2e: PUSH1 0x20 00000a30: ADD 00000a31: SWAP1 00000a32: LOG2 00000a33: POP 00000a34: POP 00000a35: JUMP 00000a36: JUMPDEST 00000a37: PUSH2 0x0a3e 00000a3a: PUSH2 0x195e 00000a3d: JUMP 00000a3e: JUMPDEST 00000a3f: CALLER 00000a40: PUSH1 0x00 00000a42: SWAP1 00000a43: DUP2 00000a44: MSTORE 00000a45: PUSH1 0x17 00000a47: PUSH1 0x20 00000a49: MSTORE 00000a4a: PUSH1 0x40 00000a4c: SWAP1 00000a4d: KECCAK256 00000a4e: PUSH1 0x01 00000a50: DUP2 00000a51: ADD 00000a52: SLOAD 00000a53: PUSH2 0x0a8d 00000a56: JUMPI 00000a57: PUSH1 0x40 00000a59: MLOAD 00000a5a: PUSH3 0x461bcd 00000a5e: PUSH1 0xe5 00000a60: SHL 00000a61: DUP2 00000a62: MSTORE 00000a63: PUSH1 0x04 00000a65: ADD 00000a66: DUP1 00000a67: DUP1 00000a68: PUSH1 0x20 00000a6a: ADD 00000a6b: DUP3 00000a6c: DUP2 00000a6d: SUB 00000a6e: DUP3 00000a6f: MSTORE 00000a70: PUSH1 0x21 00000a72: DUP2 00000a73: MSTORE 00000a74: PUSH1 0x20 00000a76: ADD 00000a77: DUP1 00000a78: PUSH2 0x21d3 00000a7b: PUSH1 0x21 00000a7d: SWAP2 00000a7e: CODECOPY 00000a7f: PUSH1 0x40 00000a81: ADD 00000a82: SWAP2 00000a83: POP 00000a84: POP 00000a85: PUSH1 0x40 00000a87: MLOAD 00000a88: DUP1 00000a89: SWAP2 00000a8a: SUB 00000a8b: SWAP1 00000a8c: REVERT 00000a8d: JUMPDEST 00000a8e: PUSH1 0x01 00000a90: DUP2 00000a91: ADD 00000a92: DUP1 00000a93: SLOAD 00000a94: PUSH1 0x00 00000a96: SWAP1 00000a97: SWAP2 00000a98: SSTORE 00000a99: PUSH2 0x0aa0 00000a9c: PUSH2 0x144d 00000a9f: JUMP 00000aa0: JUMPDEST 00000aa1: CALLER 00000aa2: PUSH1 0x00 00000aa4: SWAP1 00000aa5: DUP2 00000aa6: MSTORE 00000aa7: PUSH1 0x0b 00000aa9: PUSH1 0x20 00000aab: MSTORE 00000aac: PUSH1 0x40 00000aae: SWAP1 00000aaf: KECCAK256 00000ab0: DUP1 00000ab1: SLOAD 00000ab2: ISZERO 00000ab3: PUSH2 0x0ad2 00000ab6: JUMPI 00000ab7: PUSH2 0x0acb 00000aba: PUSH2 0x0ac4 00000abd: DUP3 00000abe: PUSH1 0x0b 00000ac0: PUSH2 0x19ce 00000ac3: JUMP 00000ac4: JUMPDEST 00000ac5: DUP4 00000ac6: SWAP1 00000ac7: PUSH2 0x174a 00000aca: JUMP 00000acb: JUMPDEST 00000acc: DUP2 00000acd: SSTORE 00000ace: PUSH2 0x0ae7 00000ad1: JUMP 00000ad2: JUMPDEST 00000ad3: DUP2 00000ad4: DUP2 00000ad5: SSTORE 00000ad6: PUSH1 0x0c 00000ad8: SLOAD 00000ad9: PUSH2 0x0ae3 00000adc: SWAP1 00000add: PUSH1 0x01 00000adf: PUSH2 0x174a 00000ae2: JUMP 00000ae3: JUMPDEST 00000ae4: PUSH1 0x0c 00000ae6: SSTORE 00000ae7: JUMPDEST 00000ae8: PUSH1 0x0d 00000aea: SLOAD 00000aeb: PUSH2 0x0af4 00000aee: SWAP1 00000aef: DUP4 00000af0: PUSH2 0x174a 00000af3: JUMP 00000af4: JUMPDEST 00000af5: PUSH1 0x0d 00000af7: SSTORE 00000af8: PUSH1 0x0e 00000afa: SLOAD 00000afb: PUSH1 0x01 00000afd: DUP3 00000afe: ADD 00000aff: SSTORE 00000b00: PUSH1 0x18 00000b02: SLOAD 00000b03: PUSH2 0x0b0c 00000b06: SWAP1 00000b07: DUP4 00000b08: PUSH2 0x1a39 00000b0b: JUMP 00000b0c: JUMPDEST 00000b0d: PUSH1 0x18 00000b0f: SSTORE 00000b10: PUSH1 0x40 00000b12: DUP1 00000b13: MLOAD 00000b14: DUP4 00000b15: DUP2 00000b16: MSTORE 00000b17: SWAP1 00000b18: MLOAD 00000b19: CALLER 00000b1a: SWAP2 00000b1b: PUSH32 0x62437abf8b924b1ad4fbca02f5402eb6fe6bf4ba9b844f3c1378a7507e3799a0 00000b3c: SWAP2 00000b3d: SWAP1 00000b3e: DUP2 00000b3f: SWAP1 00000b40: SUB 00000b41: PUSH1 0x20 00000b43: ADD 00000b44: SWAP1 00000b45: LOG2 00000b46: POP 00000b47: POP 00000b48: POP 00000b49: JUMP 00000b4a: JUMPDEST 00000b4b: PUSH2 0x0b52 00000b4e: PUSH2 0x195e 00000b51: JUMP 00000b52: JUMPDEST 00000b53: PUSH2 0x0b5d 00000b56: PUSH1 0x15 00000b58: CALLER 00000b59: PUSH2 0x1a96 00000b5c: JUMP 00000b5d: JUMPDEST 00000b5e: PUSH2 0x0b98 00000b61: JUMPI 00000b62: PUSH1 0x40 00000b64: MLOAD 00000b65: PUSH3 0x461bcd 00000b69: PUSH1 0xe5 00000b6b: SHL 00000b6c: DUP2 00000b6d: MSTORE 00000b6e: PUSH1 0x04 00000b70: ADD 00000b71: DUP1 00000b72: DUP1 00000b73: PUSH1 0x20 00000b75: ADD 00000b76: DUP3 00000b77: DUP2 00000b78: SUB 00000b79: DUP3 00000b7a: MSTORE 00000b7b: PUSH1 0x24 00000b7d: DUP2 00000b7e: MSTORE 00000b7f: PUSH1 0x20 00000b81: ADD 00000b82: DUP1 00000b83: PUSH2 0x21af 00000b86: PUSH1 0x24 00000b88: SWAP2 00000b89: CODECOPY 00000b8a: PUSH1 0x40 00000b8c: ADD 00000b8d: SWAP2 00000b8e: POP 00000b8f: POP 00000b90: PUSH1 0x40 00000b92: MLOAD 00000b93: DUP1 00000b94: SWAP2 00000b95: SUB 00000b96: SWAP1 00000b97: REVERT 00000b98: JUMPDEST 00000b99: CALLER 00000b9a: PUSH1 0x00 00000b9c: SWAP1 00000b9d: DUP2 00000b9e: MSTORE 00000b9f: PUSH1 0x13 00000ba1: PUSH1 0x20 00000ba3: MSTORE 00000ba4: PUSH1 0x40 00000ba6: SWAP1 00000ba7: KECCAK256 00000ba8: SLOAD 00000ba9: PUSH1 0x0c 00000bab: SWAP1 00000bac: PUSH2 0x0bb6 00000baf: SWAP1 00000bb0: NUMBER 00000bb1: SWAP1 00000bb2: PUSH2 0x1a39 00000bb5: JUMP 00000bb6: JUMPDEST 00000bb7: GT 00000bb8: PUSH2 0x0bf2 00000bbb: JUMPI 00000bbc: PUSH1 0x40 00000bbe: MLOAD 00000bbf: PUSH3 0x461bcd 00000bc3: PUSH1 0xe5 00000bc5: SHL 00000bc6: DUP2 00000bc7: MSTORE 00000bc8: PUSH1 0x04 00000bca: ADD 00000bcb: DUP1 00000bcc: DUP1 00000bcd: PUSH1 0x20 00000bcf: ADD 00000bd0: DUP3 00000bd1: DUP2 00000bd2: SUB 00000bd3: DUP3 00000bd4: MSTORE 00000bd5: PUSH1 0x3d 00000bd7: DUP2 00000bd8: MSTORE 00000bd9: PUSH1 0x20 00000bdb: ADD 00000bdc: DUP1 00000bdd: PUSH2 0x2342 00000be0: PUSH1 0x3d 00000be2: SWAP2 00000be3: CODECOPY 00000be4: PUSH1 0x40 00000be6: ADD 00000be7: SWAP2 00000be8: POP 00000be9: POP 00000bea: PUSH1 0x40 00000bec: MLOAD 00000bed: DUP1 00000bee: SWAP2 00000bef: SUB 00000bf0: SWAP1 00000bf1: REVERT 00000bf2: JUMPDEST 00000bf3: PUSH1 0x02 00000bf5: SLOAD 00000bf6: PUSH2 0x0c00 00000bf9: SWAP1 00000bfa: PUSH1 0x01 00000bfc: PUSH2 0x174a 00000bff: JUMP 00000c00: JUMPDEST 00000c01: PUSH1 0x02 00000c03: SSTORE 00000c04: NUMBER 00000c05: PUSH1 0x04 00000c07: SSTORE 00000c08: PUSH1 0x40 00000c0a: MLOAD 00000c0b: CALLER 00000c0c: SWAP1 00000c0d: PUSH32 0x19be9da849e19de3d0b3e9d11c9b0542b8e91a3f26d3188b8984ee8bac17fcac 00000c2e: SWAP1 00000c2f: PUSH1 0x00 00000c31: SWAP1 00000c32: LOG2 00000c33: PUSH2 0x0c3a 00000c36: PUSH2 0x1b0b 00000c39: JUMP 00000c3a: JUMPDEST 00000c3b: PUSH2 0x0d20 00000c3e: JUMPI 00000c3f: PUSH2 0x0c46 00000c42: PUSH2 0x144d 00000c45: JUMP 00000c46: JUMPDEST 00000c47: PUSH1 0x05 00000c49: DUP1 00000c4a: SLOAD 00000c4b: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00000c6c: AND 00000c6d: CALLER 00000c6e: OR 00000c6f: SWAP1 00000c70: SSTORE 00000c71: NUMBER 00000c72: PUSH1 0x03 00000c74: SSTORE 00000c75: PUSH1 0x01 00000c77: DUP1 00000c78: SLOAD 00000c79: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 00000c9a: AND 00000c9b: PUSH21 0x010000000000000000000000000000000000000000 00000cb1: OR 00000cb2: SWAP1 00000cb3: SSTORE 00000cb4: PUSH2 0x0cbb 00000cb7: PUSH2 0x1bae 00000cba: JUMP 00000cbb: JUMPDEST 00000cbc: PUSH2 0x0cc3 00000cbf: PUSH2 0x08bc 00000cc2: JUMP 00000cc3: JUMPDEST 00000cc4: PUSH1 0x09 00000cc6: SSTORE 00000cc7: PUSH1 0x18 00000cc9: SLOAD 00000cca: PUSH1 0x0d 00000ccc: SLOAD 00000ccd: PUSH1 0x00 00000ccf: SWAP2 00000cd0: PUSH2 0x0cd9 00000cd3: SWAP2 00000cd4: SWAP1 00000cd5: PUSH2 0x174a 00000cd8: JUMP 00000cd9: JUMPDEST 00000cda: SWAP1 00000cdb: POP 00000cdc: PUSH2 0x0cf0 00000cdf: PUSH1 0x09 00000ce1: SLOAD 00000ce2: DUP3 00000ce3: PUSH2 0x1a39 00000ce6: SWAP1 00000ce7: SWAP2 00000ce8: SWAP1 00000ce9: PUSH4 0xffffffff 00000cee: AND 00000cef: JUMP 00000cf0: JUMPDEST 00000cf1: PUSH1 0x0a 00000cf3: SSTORE 00000cf4: PUSH1 0x40 00000cf6: MLOAD 00000cf7: CALLER 00000cf8: SWAP1 00000cf9: PUSH32 0x9818c5a155ab582a34fec045ea885625c3d2bcb231cf25d5501f54d000ee8911 00000d1a: SWAP1 00000d1b: PUSH1 0x00 00000d1d: SWAP1 00000d1e: LOG2 00000d1f: POP 00000d20: JUMPDEST 00000d21: JUMP 00000d22: JUMPDEST 00000d23: PUSH1 0x02 00000d25: SLOAD 00000d26: DUP2 00000d27: JUMP 00000d28: JUMPDEST 00000d29: PUSH1 0x18 00000d2b: SLOAD 00000d2c: SWAP1 00000d2d: JUMP 00000d2e: JUMPDEST 00000d2f: PUSH1 0x05 00000d31: DUP2 00000d32: JUMP 00000d33: JUMPDEST 00000d34: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d49: DUP2 00000d4a: AND 00000d4b: PUSH1 0x00 00000d4d: SWAP1 00000d4e: DUP2 00000d4f: MSTORE 00000d50: PUSH1 0x13 00000d52: PUSH1 0x20 00000d54: MSTORE 00000d55: PUSH1 0x40 00000d57: DUP2 00000d58: KECCAK256 00000d59: SLOAD 00000d5a: PUSH2 0x0d64 00000d5d: SWAP1 00000d5e: PUSH1 0x0c 00000d60: PUSH2 0x174a 00000d63: JUMP 00000d64: JUMPDEST 00000d65: SWAP3 00000d66: SWAP2 00000d67: POP 00000d68: POP 00000d69: JUMP 00000d6a: JUMPDEST 00000d6b: PUSH1 0x0c 00000d6d: SLOAD 00000d6e: PUSH1 0x0d 00000d70: SLOAD 00000d71: PUSH1 0x0e 00000d73: SLOAD 00000d74: DUP4 00000d75: JUMP 00000d76: JUMPDEST 00000d77: PUSH1 0x00 00000d79: SLOAD 00000d7a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d8f: AND 00000d90: DUP2 00000d91: JUMP 00000d92: JUMPDEST 00000d93: PUSH2 0x0d9a 00000d96: PUSH2 0x195e 00000d99: JUMP 00000d9a: JUMPDEST 00000d9b: PUSH2 0x0da2 00000d9e: PUSH2 0x144d 00000da1: JUMP 00000da2: JUMPDEST 00000da3: PUSH1 0x00 00000da5: DUP2 00000da6: PUSH2 0x0db0 00000da9: JUMPI 00000daa: PUSH1 0x0b 00000dac: PUSH2 0x0db3 00000daf: JUMP 00000db0: JUMPDEST 00000db1: PUSH1 0x0f 00000db3: JUMPDEST 00000db4: CALLER 00000db5: PUSH1 0x00 00000db7: SWAP1 00000db8: DUP2 00000db9: MSTORE 00000dba: PUSH1 0x20 00000dbc: DUP3 00000dbd: SWAP1 00000dbe: MSTORE 00000dbf: PUSH1 0x40 00000dc1: DUP2 00000dc2: KECCAK256 00000dc3: SWAP2 00000dc4: SWAP3 00000dc5: POP 00000dc6: PUSH2 0x0dcf 00000dc9: DUP3 00000dca: DUP5 00000dcb: PUSH2 0x19ce 00000dce: JUMP 00000dcf: JUMPDEST 00000dd0: SWAP1 00000dd1: POP 00000dd2: PUSH1 0x00 00000dd4: DUP2 00000dd5: GT 00000dd6: PUSH2 0x0e26 00000dd9: JUMPI 00000dda: PUSH1 0x40 00000ddc: DUP1 00000ddd: MLOAD 00000dde: PUSH3 0x461bcd 00000de2: PUSH1 0xe5 00000de4: SHL 00000de5: DUP2 00000de6: MSTORE 00000de7: PUSH1 0x20 00000de9: PUSH1 0x04 00000deb: DUP3 00000dec: ADD 00000ded: MSTORE 00000dee: PUSH1 0x18 00000df0: PUSH1 0x24 00000df2: DUP3 00000df3: ADD 00000df4: MSTORE 00000df5: PUSH32 0x414e54453a204e6f7468696e6720746f20756e7374616b650000000000000000 00000e16: PUSH1 0x44 00000e18: DUP3 00000e19: ADD 00000e1a: MSTORE 00000e1b: SWAP1 00000e1c: MLOAD 00000e1d: SWAP1 00000e1e: DUP2 00000e1f: SWAP1 00000e20: SUB 00000e21: PUSH1 0x64 00000e23: ADD 00000e24: SWAP1 00000e25: REVERT 00000e26: JUMPDEST 00000e27: PUSH2 0x0e32 00000e2a: DUP2 00000e2b: DUP6 00000e2c: DUP6 00000e2d: DUP6 00000e2e: PUSH2 0x1c6c 00000e31: JUMP 00000e32: JUMPDEST 00000e33: POP 00000e34: POP 00000e35: POP 00000e36: POP 00000e37: JUMP 00000e38: JUMPDEST 00000e39: PUSH2 0x0e40 00000e3c: PUSH2 0x195e 00000e3f: JUMP 00000e40: JUMPDEST 00000e41: CALLVALUE 00000e42: DUP1 00000e43: PUSH2 0x0e93 00000e46: JUMPI 00000e47: PUSH1 0x40 00000e49: DUP1 00000e4a: MLOAD 00000e4b: PUSH3 0x461bcd 00000e4f: PUSH1 0xe5 00000e51: SHL 00000e52: DUP2 00000e53: MSTORE 00000e54: PUSH1 0x20 00000e56: PUSH1 0x04 00000e58: DUP3 00000e59: ADD 00000e5a: MSTORE 00000e5b: PUSH1 0x17 00000e5d: PUSH1 0x24 00000e5f: DUP3 00000e60: ADD 00000e61: MSTORE 00000e62: PUSH32 0x414e54453a2043616e6e6f74207374616b65207a65726f000000000000000000 00000e83: PUSH1 0x44 00000e85: DUP3 00000e86: ADD 00000e87: MSTORE 00000e88: SWAP1 00000e89: MLOAD 00000e8a: SWAP1 00000e8b: DUP2 00000e8c: SWAP1 00000e8d: SUB 00000e8e: PUSH1 0x64 00000e90: ADD 00000e91: SWAP1 00000e92: REVERT 00000e93: JUMPDEST 00000e94: PUSH2 0x0e9b 00000e97: PUSH2 0x144d 00000e9a: JUMP 00000e9b: JUMPDEST 00000e9c: PUSH1 0x00 00000e9e: DUP3 00000e9f: ISZERO 00000ea0: PUSH2 0x0f0e 00000ea3: JUMPI 00000ea4: PUSH7 0x2386f26fc10000 00000eac: DUP3 00000ead: LT 00000eae: ISZERO 00000eaf: PUSH2 0x0ee9 00000eb2: JUMPI 00000eb3: PUSH1 0x40 00000eb5: MLOAD 00000eb6: PUSH3 0x461bcd 00000eba: PUSH1 0xe5 00000ebc: SHL 00000ebd: DUP2 00000ebe: MSTORE 00000ebf: PUSH1 0x04 00000ec1: ADD 00000ec2: DUP1 00000ec3: DUP1 00000ec4: PUSH1 0x20 00000ec6: ADD 00000ec7: DUP3 00000ec8: DUP2 00000ec9: SUB 00000eca: DUP3 00000ecb: MSTORE 00000ecc: PUSH1 0x2e 00000ece: DUP2 00000ecf: MSTORE 00000ed0: PUSH1 0x20 00000ed2: ADD 00000ed3: DUP1 00000ed4: PUSH2 0x2255 00000ed7: PUSH1 0x2e 00000ed9: SWAP2 00000eda: CODECOPY 00000edb: PUSH1 0x40 00000edd: ADD 00000ede: SWAP2 00000edf: POP 00000ee0: POP 00000ee1: PUSH1 0x40 00000ee3: MLOAD 00000ee4: DUP1 00000ee5: SWAP2 00000ee6: SUB 00000ee7: SWAP1 00000ee8: REVERT 00000ee9: JUMPDEST 00000eea: POP 00000eeb: PUSH1 0x0f 00000eed: PUSH2 0x0ef7 00000ef0: PUSH1 0x15 00000ef2: CALLER 00000ef3: PUSH2 0x1daf 00000ef6: JUMP 00000ef7: JUMPDEST 00000ef8: CALLER 00000ef9: PUSH1 0x00 00000efb: SWAP1 00000efc: DUP2 00000efd: MSTORE 00000efe: PUSH1 0x13 00000f00: PUSH1 0x20 00000f02: MSTORE 00000f03: PUSH1 0x40 00000f05: SWAP1 00000f06: KECCAK256 00000f07: NUMBER 00000f08: SWAP1 00000f09: SSTORE 00000f0a: PUSH2 0x0f12 00000f0d: JUMP 00000f0e: JUMPDEST 00000f0f: POP 00000f10: PUSH1 0x0b 00000f12: JUMPDEST 00000f13: CALLER 00000f14: PUSH1 0x00 00000f16: SWAP1 00000f17: DUP2 00000f18: MSTORE 00000f19: PUSH1 0x20 00000f1b: DUP3 00000f1c: SWAP1 00000f1d: MSTORE 00000f1e: PUSH1 0x40 00000f20: SWAP1 00000f21: KECCAK256 00000f22: DUP1 00000f23: SLOAD 00000f24: ISZERO 00000f25: PUSH2 0x0f43 00000f28: JUMPI 00000f29: PUSH2 0x0f3c 00000f2c: PUSH2 0x0f35 00000f2f: DUP3 00000f30: DUP5 00000f31: PUSH2 0x19ce 00000f34: JUMP 00000f35: JUMPDEST 00000f36: DUP5 00000f37: SWAP1 00000f38: PUSH2 0x174a 00000f3b: JUMP 00000f3c: JUMPDEST 00000f3d: DUP2 00000f3e: SSTORE 00000f3f: PUSH2 0x0f5b 00000f42: JUMP 00000f43: JUMPDEST 00000f44: DUP3 00000f45: DUP2 00000f46: SSTORE 00000f47: PUSH1 0x01 00000f49: DUP3 00000f4a: DUP2 00000f4b: ADD 00000f4c: SLOAD 00000f4d: PUSH2 0x0f55 00000f50: SWAP2 00000f51: PUSH2 0x174a 00000f54: JUMP 00000f55: JUMPDEST 00000f56: PUSH1 0x01 00000f58: DUP4 00000f59: ADD 00000f5a: SSTORE 00000f5b: JUMPDEST 00000f5c: PUSH1 0x02 00000f5e: DUP3 00000f5f: ADD 00000f60: SLOAD 00000f61: PUSH2 0x0f6a 00000f64: SWAP1 00000f65: DUP5 00000f66: PUSH2 0x174a 00000f69: JUMP 00000f6a: JUMPDEST 00000f6b: PUSH1 0x02 00000f6d: DUP4 00000f6e: ADD 00000f6f: SSTORE 00000f70: PUSH1 0x03 00000f72: DUP3 00000f73: ADD 00000f74: SLOAD 00000f75: PUSH1 0x01 00000f77: DUP3 00000f78: ADD 00000f79: SSTORE 00000f7a: PUSH1 0x40 00000f7c: DUP1 00000f7d: MLOAD 00000f7e: DUP5 00000f7f: DUP2 00000f80: MSTORE 00000f81: SWAP1 00000f82: MLOAD 00000f83: DUP6 00000f84: ISZERO 00000f85: ISZERO 00000f86: SWAP2 00000f87: CALLER 00000f88: SWAP2 00000f89: PUSH32 0x20580cc2838cc75cd2cfb9e285a0d4c24078360f4273611af79fcdff9a6a806f 00000faa: SWAP2 00000fab: DUP2 00000fac: SWAP1 00000fad: SUB 00000fae: PUSH1 0x20 00000fb0: ADD 00000fb1: SWAP1 00000fb2: LOG3 00000fb3: POP 00000fb4: POP 00000fb5: POP 00000fb6: POP 00000fb7: JUMP 00000fb8: JUMPDEST 00000fb9: PUSH1 0x01 00000fbb: SLOAD 00000fbc: PUSH21 0x010000000000000000000000000000000000000000 00000fd2: SWAP1 00000fd3: DIV 00000fd4: PUSH1 0xff 00000fd6: AND 00000fd7: DUP2 00000fd8: JUMP 00000fd9: JUMPDEST 00000fda: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fef: DUP2 00000ff0: AND 00000ff1: PUSH1 0x00 00000ff3: SWAP1 00000ff4: DUP2 00000ff5: MSTORE 00000ff6: PUSH1 0x0f 00000ff8: PUSH1 0x20 00000ffa: MSTORE 00000ffb: PUSH1 0x40 00000ffd: DUP2 00000ffe: KECCAK256 00000fff: DUP1 00001000: SLOAD 00001001: PUSH2 0x103b 00001004: JUMPI 00001005: PUSH1 0x40 00001007: MLOAD 00001008: PUSH3 0x461bcd 0000100c: PUSH1 0xe5 0000100e: SHL 0000100f: DUP2 00001010: MSTORE 00001011: PUSH1 0x04 00001013: ADD 00001014: DUP1 00001015: DUP1 00001016: PUSH1 0x20 00001018: ADD 00001019: DUP3 0000101a: DUP2 0000101b: SUB 0000101c: DUP3 0000101d: MSTORE 0000101e: PUSH1 0x23 00001020: DUP2 00001021: MSTORE 00001022: PUSH1 0x20 00001024: ADD 00001025: DUP1 00001026: PUSH2 0x22f8 00001029: PUSH1 0x23 0000102b: SWAP2 0000102c: CODECOPY 0000102d: PUSH1 0x40 0000102f: ADD 00001030: SWAP2 00001031: POP 00001032: POP 00001033: PUSH1 0x40 00001035: MLOAD 00001036: DUP1 00001037: SWAP2 00001038: SUB 00001039: SWAP1 0000103a: REVERT 0000103b: JUMPDEST 0000103c: PUSH1 0x01 0000103e: SLOAD 0000103f: PUSH21 0x010000000000000000000000000000000000000000 00001055: SWAP1 00001056: DIV 00001057: PUSH1 0xff 00001059: AND 0000105a: ISZERO 0000105b: PUSH2 0x1070 0000105e: JUMPI 0000105f: PUSH2 0x1068 00001062: DUP2 00001063: DUP5 00001064: PUSH2 0x1864 00001067: JUMP 00001068: JUMPDEST 00001069: SWAP2 0000106a: POP 0000106b: POP 0000106c: PUSH2 0x0890 0000106f: JUMP 00001070: JUMPDEST 00001071: PUSH1 0x00 00001073: PUSH2 0x107d 00001076: DUP3 00001077: PUSH1 0x0f 00001079: PUSH2 0x19ce 0000107c: JUMP 0000107d: JUMPDEST 0000107e: SWAP1 0000107f: POP 00001080: PUSH1 0x00 00001082: PUSH2 0x1089 00001085: PUSH2 0x08bc 00001088: JUMP 00001089: JUMPDEST 0000108a: PUSH1 0x18 0000108c: SLOAD 0000108d: PUSH1 0x0d 0000108f: SLOAD 00001090: SWAP2 00001091: SWAP3 00001092: POP 00001093: PUSH1 0x00 00001095: SWAP2 00001096: PUSH2 0x109e 00001099: SWAP2 0000109a: PUSH2 0x174a 0000109d: JUMP 0000109e: JUMPDEST 0000109f: SWAP1 000010a0: POP 000010a1: PUSH2 0x10bb 000010a4: PUSH2 0x0f35 000010a7: PUSH2 0x10b0 000010aa: DUP4 000010ab: DUP6 000010ac: PUSH2 0x1a39 000010af: JUMP 000010b0: JUMPDEST 000010b1: PUSH1 0x11 000010b3: SLOAD 000010b4: DUP7 000010b5: SWAP2 000010b6: SWAP1 000010b7: PUSH2 0x1e4d 000010ba: JUMP 000010bb: JUMPDEST 000010bc: SWAP5 000010bd: POP 000010be: POP 000010bf: POP 000010c0: POP 000010c1: POP 000010c2: PUSH2 0x0890 000010c5: JUMP 000010c6: JUMPDEST 000010c7: PUSH1 0x00 000010c9: DUP2 000010ca: PUSH2 0x10f8 000010cd: JUMPI 000010ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010e3: DUP4 000010e4: AND 000010e5: PUSH1 0x00 000010e7: SWAP1 000010e8: DUP2 000010e9: MSTORE 000010ea: PUSH1 0x0b 000010ec: PUSH1 0x20 000010ee: MSTORE 000010ef: PUSH1 0x40 000010f1: SWAP1 000010f2: KECCAK256 000010f3: SLOAD 000010f4: PUSH2 0x111f 000010f7: JUMP 000010f8: JUMPDEST 000010f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000110e: DUP4 0000110f: AND 00001110: PUSH1 0x00 00001112: SWAP1 00001113: DUP2 00001114: MSTORE 00001115: PUSH1 0x0f 00001117: PUSH1 0x20 00001119: MSTORE 0000111a: PUSH1 0x40 0000111c: SWAP1 0000111d: KECCAK256 0000111e: SLOAD 0000111f: JUMPDEST 00001120: SWAP4 00001121: SWAP3 00001122: POP 00001123: POP 00001124: POP 00001125: JUMP 00001126: JUMPDEST 00001127: PUSH2 0x112e 0000112a: PUSH2 0x195e 0000112d: JUMP 0000112e: JUMPDEST 0000112f: PUSH1 0x00 00001131: DUP3 00001132: GT 00001133: PUSH2 0x1183 00001136: JUMPI 00001137: PUSH1 0x40 00001139: DUP1 0000113a: MLOAD 0000113b: PUSH3 0x461bcd 0000113f: PUSH1 0xe5 00001141: SHL 00001142: DUP2 00001143: MSTORE 00001144: PUSH1 0x20 00001146: PUSH1 0x04 00001148: DUP3 00001149: ADD 0000114a: MSTORE 0000114b: PUSH1 0x17 0000114d: PUSH1 0x24 0000114f: DUP3 00001150: ADD 00001151: MSTORE 00001152: PUSH32 0x414e54453a2043616e6e6f7420756e7374616b6520302e000000000000000000 00001173: PUSH1 0x44 00001175: DUP3 00001176: ADD 00001177: MSTORE 00001178: SWAP1 00001179: MLOAD 0000117a: SWAP1 0000117b: DUP2 0000117c: SWAP1 0000117d: SUB 0000117e: PUSH1 0x64 00001180: ADD 00001181: SWAP1 00001182: REVERT 00001183: JUMPDEST 00001184: PUSH2 0x118b 00001187: PUSH2 0x144d 0000118a: JUMP 0000118b: JUMPDEST 0000118c: PUSH1 0x00 0000118e: DUP2 0000118f: PUSH2 0x1199 00001192: JUMPI 00001193: PUSH1 0x0b 00001195: PUSH2 0x119c 00001198: JUMP 00001199: JUMPDEST 0000119a: PUSH1 0x0f 0000119c: JUMPDEST 0000119d: CALLER 0000119e: PUSH1 0x00 000011a0: SWAP1 000011a1: DUP2 000011a2: MSTORE 000011a3: PUSH1 0x20 000011a5: DUP3 000011a6: SWAP1 000011a7: MSTORE 000011a8: PUSH1 0x40 000011aa: SWAP1 000011ab: KECCAK256 000011ac: SWAP1 000011ad: SWAP2 000011ae: POP 000011af: PUSH2 0x0e32 000011b2: DUP5 000011b3: DUP5 000011b4: DUP5 000011b5: DUP5 000011b6: PUSH2 0x1c6c 000011b9: JUMP 000011ba: JUMPDEST 000011bb: PUSH1 0x19 000011bd: SLOAD 000011be: DUP2 000011bf: JUMP 000011c0: JUMPDEST 000011c1: PUSH1 0x00 000011c3: DUP1 000011c4: PUSH1 0x00 000011c6: PUSH2 0x11cd 000011c9: PUSH2 0x1f1a 000011cc: JUMP 000011cd: JUMPDEST 000011ce: SWAP2 000011cf: POP 000011d0: SWAP2 000011d1: POP 000011d2: PUSH1 0x00 000011d4: DUP5 000011d5: PUSH2 0x1202 000011d8: JUMPI 000011d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011ee: DUP7 000011ef: AND 000011f0: PUSH1 0x00 000011f2: SWAP1 000011f3: DUP2 000011f4: MSTORE 000011f5: PUSH1 0x0b 000011f7: PUSH1 0x20 000011f9: MSTORE 000011fa: PUSH1 0x40 000011fc: SWAP1 000011fd: KECCAK256 000011fe: PUSH2 0x1228 00001201: JUMP 00001202: JUMPDEST 00001203: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001218: DUP7 00001219: AND 0000121a: PUSH1 0x00 0000121c: SWAP1 0000121d: DUP2 0000121e: MSTORE 0000121f: PUSH1 0x0f 00001221: PUSH1 0x20 00001223: MSTORE 00001224: PUSH1 0x40 00001226: SWAP1 00001227: KECCAK256 00001228: JUMPDEST 00001229: DUP1 0000122a: SLOAD 0000122b: SWAP1 0000122c: SWAP2 0000122d: POP 0000122e: PUSH2 0x123d 00001231: JUMPI 00001232: PUSH1 0x00 00001234: SWAP4 00001235: POP 00001236: POP 00001237: POP 00001238: POP 00001239: PUSH2 0x0d64 0000123c: JUMP 0000123d: JUMPDEST 0000123e: PUSH1 0x00 00001240: DUP2 00001241: PUSH1 0x01 00001243: ADD 00001244: SLOAD 00001245: GT 00001246: PUSH2 0x1280 00001249: JUMPI 0000124a: PUSH1 0x40 0000124c: MLOAD 0000124d: PUSH3 0x461bcd 00001251: PUSH1 0xe5 00001253: SHL 00001254: DUP2 00001255: MSTORE 00001256: PUSH1 0x04 00001258: ADD 00001259: DUP1 0000125a: DUP1 0000125b: PUSH1 0x20 0000125d: ADD 0000125e: DUP3 0000125f: DUP2 00001260: SUB 00001261: DUP3 00001262: MSTORE 00001263: PUSH1 0x22 00001265: DUP2 00001266: MSTORE 00001267: PUSH1 0x20 00001269: ADD 0000126a: DUP1 0000126b: PUSH2 0x2233 0000126e: PUSH1 0x22 00001270: SWAP2 00001271: CODECOPY 00001272: PUSH1 0x40 00001274: ADD 00001275: SWAP2 00001276: POP 00001277: POP 00001278: PUSH1 0x40 0000127a: MLOAD 0000127b: DUP1 0000127c: SWAP2 0000127d: SUB 0000127e: SWAP1 0000127f: REVERT 00001280: JUMPDEST 00001281: PUSH1 0x00 00001283: DUP6 00001284: ISZERO 00001285: PUSH2 0x12aa 00001288: JUMPI 00001289: PUSH1 0x12 0000128b: SLOAD 0000128c: PUSH2 0x12a3 0000128f: SWAP1 00001290: PUSH8 0x0de0b6b3a7640000 00001299: SWAP1 0000129a: PUSH2 0x08e2 0000129d: SWAP1 0000129e: DUP8 0000129f: PUSH2 0x17a4 000012a2: JUMP 000012a3: JUMPDEST 000012a4: SWAP1 000012a5: POP 000012a6: PUSH2 0x12d4 000012a9: JUMP 000012aa: JUMPDEST 000012ab: PUSH1 0x0d 000012ad: SLOAD 000012ae: PUSH1 0x00 000012b0: PUSH2 0x12b9 000012b3: DUP3 000012b4: DUP7 000012b5: PUSH2 0x174a 000012b8: JUMP 000012b9: JUMPDEST 000012ba: PUSH1 0x0e 000012bc: SLOAD 000012bd: SWAP1 000012be: SWAP2 000012bf: POP 000012c0: PUSH2 0x12cf 000012c3: SWAP1 000012c4: DUP4 000012c5: SWAP1 000012c6: PUSH2 0x08e2 000012c9: SWAP1 000012ca: DUP5 000012cb: PUSH2 0x17a4 000012ce: JUMP 000012cf: JUMPDEST 000012d0: SWAP3 000012d1: POP 000012d2: POP 000012d3: POP 000012d4: JUMPDEST 000012d5: PUSH1 0x01 000012d7: DUP3 000012d8: ADD 000012d9: SLOAD 000012da: DUP3 000012db: SLOAD 000012dc: PUSH2 0x12e6 000012df: SWAP2 000012e0: DUP4 000012e1: SWAP1 000012e2: PUSH2 0x1e4d 000012e5: JUMP 000012e6: JUMPDEST 000012e7: SWAP8 000012e8: SWAP7 000012e9: POP 000012ea: POP 000012eb: POP 000012ec: POP 000012ed: POP 000012ee: POP 000012ef: POP 000012f0: JUMP 000012f1: JUMPDEST 000012f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001307: AND 00001308: PUSH1 0x00 0000130a: SWAP1 0000130b: DUP2 0000130c: MSTORE 0000130d: PUSH1 0x17 0000130f: PUSH1 0x20 00001311: MSTORE 00001312: PUSH1 0x40 00001314: SWAP1 00001315: KECCAK256 00001316: PUSH1 0x01 00001318: ADD 00001319: SLOAD 0000131a: SWAP1 0000131b: JUMP 0000131c: JUMPDEST 0000131d: PUSH2 0x1324 00001320: PUSH2 0x195e 00001323: JUMP 00001324: JUMPDEST 00001325: CALLER 00001326: PUSH1 0x00 00001328: SWAP1 00001329: DUP2 0000132a: MSTORE 0000132b: PUSH1 0x17 0000132d: PUSH1 0x20 0000132f: MSTORE 00001330: PUSH1 0x40 00001332: SWAP1 00001333: KECCAK256 00001334: DUP1 00001335: SLOAD 00001336: PUSH32 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeae80 00001357: TIMESTAMP 00001358: ADD 00001359: GT 0000135a: PUSH2 0x1394 0000135d: JUMPI 0000135e: PUSH1 0x40 00001360: MLOAD 00001361: PUSH3 0x461bcd 00001365: PUSH1 0xe5 00001367: SHL 00001368: DUP2 00001369: MSTORE 0000136a: PUSH1 0x04 0000136c: ADD 0000136d: DUP1 0000136e: DUP1 0000136f: PUSH1 0x20 00001371: ADD 00001372: DUP3 00001373: DUP2 00001374: SUB 00001375: DUP3 00001376: MSTORE 00001377: PUSH1 0x2a 00001379: DUP2 0000137a: MSTORE 0000137b: PUSH1 0x20 0000137d: ADD 0000137e: DUP1 0000137f: PUSH2 0x2283 00001382: PUSH1 0x2a 00001384: SWAP2 00001385: CODECOPY 00001386: PUSH1 0x40 00001388: ADD 00001389: SWAP2 0000138a: POP 0000138b: POP 0000138c: PUSH1 0x40 0000138e: MLOAD 0000138f: DUP1 00001390: SWAP2 00001391: SUB 00001392: SWAP1 00001393: REVERT 00001394: JUMPDEST 00001395: PUSH1 0x00 00001397: DUP2 00001398: PUSH1 0x01 0000139a: ADD 0000139b: SLOAD 0000139c: GT 0000139d: PUSH2 0x13ed 000013a0: JUMPI 000013a1: PUSH1 0x40 000013a3: DUP1 000013a4: MLOAD 000013a5: PUSH3 0x461bcd 000013a9: PUSH1 0xe5 000013ab: SHL 000013ac: DUP2 000013ad: MSTORE 000013ae: PUSH1 0x20 000013b0: PUSH1 0x04 000013b2: DUP3 000013b3: ADD 000013b4: MSTORE 000013b5: PUSH1 0x19 000013b7: PUSH1 0x24 000013b9: DUP3 000013ba: ADD 000013bb: MSTORE 000013bc: PUSH32 0x414e54453a204e6f7468696e6720746f20776974686472617700000000000000 000013dd: PUSH1 0x44 000013df: DUP3 000013e0: ADD 000013e1: MSTORE 000013e2: SWAP1 000013e3: MLOAD 000013e4: SWAP1 000013e5: DUP2 000013e6: SWAP1 000013e7: SUB 000013e8: PUSH1 0x64 000013ea: ADD 000013eb: SWAP1 000013ec: REVERT 000013ed: JUMPDEST 000013ee: PUSH1 0x01 000013f0: DUP2 000013f1: ADD 000013f2: SLOAD 000013f3: PUSH1 0x18 000013f5: SLOAD 000013f6: PUSH2 0x13ff 000013f9: SWAP1 000013fa: DUP3 000013fb: PUSH2 0x1a39 000013fe: JUMP 000013ff: JUMPDEST 00001400: PUSH1 0x18 00001402: SSTORE 00001403: PUSH1 0x00 00001405: PUSH1 0x01 00001407: DUP4 00001408: ADD 00001409: SSTORE 0000140a: PUSH2 0x1413 0000140d: CALLER 0000140e: DUP3 0000140f: PUSH2 0x190d 00001412: JUMP 00001413: JUMPDEST 00001414: PUSH1 0x40 00001416: DUP1 00001417: MLOAD 00001418: DUP3 00001419: DUP2 0000141a: MSTORE 0000141b: SWAP1 0000141c: MLOAD 0000141d: CALLER 0000141e: SWAP2 0000141f: PUSH32 0x141ef67c4a6d3ec2adfb2f66d33c2b11de5b4f34344757554d430570b18a92ec 00001440: SWAP2 00001441: SWAP1 00001442: DUP2 00001443: SWAP1 00001444: SUB 00001445: PUSH1 0x20 00001447: ADD 00001448: SWAP1 00001449: LOG2 0000144a: POP 0000144b: POP 0000144c: JUMP 0000144d: JUMPDEST 0000144e: PUSH1 0x00 00001450: DUP1 00001451: PUSH2 0x1458 00001454: PUSH2 0x1f1a 00001457: JUMP 00001458: JUMPDEST 00001459: NUMBER 0000145a: PUSH1 0x19 0000145c: SSTORE 0000145d: SWAP1 0000145e: SWAP3 0000145f: POP 00001460: SWAP1 00001461: POP 00001462: DUP1 00001463: PUSH2 0x146d 00001466: JUMPI 00001467: POP 00001468: POP 00001469: PUSH2 0x0d20 0000146c: JUMP 0000146d: JUMPDEST 0000146e: PUSH1 0x0d 00001470: SLOAD 00001471: PUSH1 0x11 00001473: SLOAD 00001474: PUSH1 0x12 00001476: SLOAD 00001477: PUSH2 0x1489 0000147a: SWAP1 0000147b: DUP6 0000147c: PUSH8 0x0de0b6b3a7640000 00001485: PUSH2 0x1e4d 00001488: JUMP 00001489: JUMPDEST 0000148a: PUSH1 0x12 0000148c: SSTORE 0000148d: PUSH2 0x1496 00001490: DUP2 00001491: DUP5 00001492: PUSH2 0x1a39 00001495: JUMP 00001496: JUMPDEST 00001497: PUSH1 0x11 00001499: SSTORE 0000149a: PUSH1 0x00 0000149c: PUSH2 0x14a5 0000149f: DUP4 000014a0: DUP6 000014a1: PUSH2 0x174a 000014a4: JUMP 000014a5: JUMPDEST 000014a6: PUSH1 0x0e 000014a8: SLOAD 000014a9: SWAP1 000014aa: SWAP2 000014ab: POP 000014ac: PUSH2 0x14b6 000014af: SWAP1 000014b0: DUP3 000014b1: DUP6 000014b2: PUSH2 0x1e4d 000014b5: JUMP 000014b6: JUMPDEST 000014b7: PUSH1 0x0e 000014b9: SSTORE 000014ba: PUSH1 0x0d 000014bc: SSTORE 000014bd: POP 000014be: POP 000014bf: POP 000014c0: POP 000014c1: JUMP 000014c2: JUMPDEST 000014c3: PUSH1 0x01 000014c5: SLOAD 000014c6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000014db: AND 000014dc: DUP2 000014dd: JUMP 000014de: JUMPDEST 000014df: PUSH1 0x08 000014e1: SLOAD 000014e2: PUSH1 0xff 000014e4: AND 000014e5: ISZERO 000014e6: PUSH2 0x1536 000014e9: JUMPI 000014ea: PUSH1 0x40 000014ec: DUP1 000014ed: MLOAD 000014ee: PUSH3 0x461bcd 000014f2: PUSH1 0xe5 000014f4: SHL 000014f5: DUP2 000014f6: MSTORE 000014f7: PUSH1 0x20 000014f9: PUSH1 0x04 000014fb: DUP3 000014fc: ADD 000014fd: MSTORE 000014fe: PUSH1 0x1e 00001500: PUSH1 0x24 00001502: DUP3 00001503: ADD 00001504: MSTORE 00001505: PUSH32 0x414e54453a20506f6f6c20616c726561647920696e697469616c697a65640000 00001526: PUSH1 0x44 00001528: DUP3 00001529: ADD 0000152a: MSTORE 0000152b: SWAP1 0000152c: MLOAD 0000152d: SWAP1 0000152e: DUP2 0000152f: SWAP1 00001530: SUB 00001531: PUSH1 0x64 00001533: ADD 00001534: SWAP1 00001535: REVERT 00001536: JUMPDEST 00001537: PUSH1 0x01 00001539: SLOAD 0000153a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000154f: AND 00001550: CALLER 00001551: EQ 00001552: PUSH2 0x158c 00001555: JUMPI 00001556: PUSH1 0x40 00001558: MLOAD 00001559: PUSH3 0x461bcd 0000155d: PUSH1 0xe5 0000155f: SHL 00001560: DUP2 00001561: MSTORE 00001562: PUSH1 0x04 00001564: ADD 00001565: DUP1 00001566: DUP1 00001567: PUSH1 0x20 00001569: ADD 0000156a: DUP3 0000156b: DUP2 0000156c: SUB 0000156d: DUP3 0000156e: MSTORE 0000156f: PUSH1 0x2a 00001571: DUP2 00001572: MSTORE 00001573: PUSH1 0x20 00001575: ADD 00001576: DUP1 00001577: PUSH2 0x22ce 0000157a: PUSH1 0x2a 0000157c: SWAP2 0000157d: CODECOPY 0000157e: PUSH1 0x40 00001580: ADD 00001581: SWAP2 00001582: POP 00001583: POP 00001584: PUSH1 0x40 00001586: MLOAD 00001587: DUP1 00001588: SWAP2 00001589: SUB 0000158a: SWAP1 0000158b: REVERT 0000158c: JUMPDEST 0000158d: PUSH2 0x15ab 00001590: DUP2 00001591: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015a6: AND 000015a7: PUSH2 0x1ff4 000015aa: JUMP 000015ab: JUMPDEST 000015ac: PUSH2 0x15e6 000015af: JUMPI 000015b0: PUSH1 0x40 000015b2: MLOAD 000015b3: PUSH3 0x461bcd 000015b7: PUSH1 0xe5 000015b9: SHL 000015ba: DUP2 000015bb: MSTORE 000015bc: PUSH1 0x04 000015be: ADD 000015bf: DUP1 000015c0: DUP1 000015c1: PUSH1 0x20 000015c3: ADD 000015c4: DUP3 000015c5: DUP2 000015c6: SUB 000015c7: DUP3 000015c8: MSTORE 000015c9: PUSH1 0x27 000015cb: DUP2 000015cc: MSTORE 000015cd: PUSH1 0x20 000015cf: ADD 000015d0: DUP1 000015d1: PUSH2 0x237f 000015d4: PUSH1 0x27 000015d6: SWAP2 000015d7: CODECOPY 000015d8: PUSH1 0x40 000015da: ADD 000015db: SWAP2 000015dc: POP 000015dd: POP 000015de: PUSH1 0x40 000015e0: MLOAD 000015e1: DUP1 000015e2: SWAP2 000015e3: SUB 000015e4: SWAP1 000015e5: REVERT 000015e6: JUMPDEST 000015e7: DUP1 000015e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000015fd: AND 000015fe: PUSH4 0xe0b4fb92 00001603: PUSH1 0x40 00001605: MLOAD 00001606: DUP2 00001607: PUSH4 0xffffffff 0000160c: AND 0000160d: PUSH1 0xe0 0000160f: SHL 00001610: DUP2 00001611: MSTORE 00001612: PUSH1 0x04 00001614: ADD 00001615: PUSH1 0x20 00001617: PUSH1 0x40 00001619: MLOAD 0000161a: DUP1 0000161b: DUP4 0000161c: SUB 0000161d: DUP2 0000161e: PUSH1 0x00 00001620: DUP8 00001621: DUP1 00001622: EXTCODESIZE 00001623: ISZERO 00001624: DUP1 00001625: ISZERO 00001626: PUSH2 0x162e 00001629: JUMPI 0000162a: PUSH1 0x00 0000162c: DUP1 0000162d: REVERT 0000162e: JUMPDEST 0000162f: POP 00001630: GAS 00001631: CALL 00001632: ISZERO 00001633: DUP1 00001634: ISZERO 00001635: PUSH2 0x1642 00001638: JUMPI 00001639: RETURNDATASIZE 0000163a: PUSH1 0x00 0000163c: DUP1 0000163d: RETURNDATACOPY 0000163e: RETURNDATASIZE 0000163f: PUSH1 0x00 00001641: REVERT 00001642: JUMPDEST 00001643: POP 00001644: POP 00001645: POP 00001646: POP 00001647: PUSH1 0x40 00001649: MLOAD 0000164a: RETURNDATASIZE 0000164b: PUSH1 0x20 0000164d: DUP2 0000164e: LT 0000164f: ISZERO 00001650: PUSH2 0x1658 00001653: JUMPI 00001654: PUSH1 0x00 00001656: DUP1 00001657: REVERT 00001658: JUMPDEST 00001659: POP 0000165a: MLOAD 0000165b: PUSH2 0x1695 0000165e: JUMPI 0000165f: PUSH1 0x40 00001661: MLOAD 00001662: PUSH3 0x461bcd 00001666: PUSH1 0xe5 00001668: SHL 00001669: DUP2 0000166a: MSTORE 0000166b: PUSH1 0x04 0000166d: ADD 0000166e: DUP1 0000166f: DUP1 00001670: PUSH1 0x20 00001672: ADD 00001673: DUP3 00001674: DUP2 00001675: SUB 00001676: DUP3 00001677: MSTORE 00001678: PUSH1 0x3f 0000167a: DUP2 0000167b: MSTORE 0000167c: PUSH1 0x20 0000167e: ADD 0000167f: DUP1 00001680: PUSH2 0x21f4 00001683: PUSH1 0x3f 00001685: SWAP2 00001686: CODECOPY 00001687: PUSH1 0x40 00001689: ADD 0000168a: SWAP2 0000168b: POP 0000168c: POP 0000168d: PUSH1 0x40 0000168f: MLOAD 00001690: DUP1 00001691: SWAP2 00001692: SUB 00001693: SWAP1 00001694: REVERT 00001695: JUMPDEST 00001696: PUSH1 0x08 00001698: DUP1 00001699: SLOAD 0000169a: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 000016bb: AND 000016bc: PUSH1 0x01 000016be: SWAP1 000016bf: DUP2 000016c0: OR 000016c1: SWAP1 000016c2: SWAP2 000016c3: SSTORE 000016c4: DUP1 000016c5: SLOAD 000016c6: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 000016e7: AND 000016e8: SWAP1 000016e9: SSTORE 000016ea: PUSH1 0x00 000016ec: DUP1 000016ed: SLOAD 000016ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001703: SWAP1 00001704: SWAP3 00001705: AND 00001706: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001727: SWAP1 00001728: SWAP3 00001729: AND 0000172a: SWAP2 0000172b: SWAP1 0000172c: SWAP2 0000172d: OR 0000172e: SWAP1 0000172f: SSTORE 00001730: JUMP 00001731: JUMPDEST 00001732: PUSH3 0x015180 00001736: DUP2 00001737: JUMP 00001738: JUMPDEST 00001739: PUSH1 0x14 0000173b: SLOAD 0000173c: DUP2 0000173d: JUMP 0000173e: JUMPDEST 0000173f: PUSH1 0x10 00001741: SLOAD 00001742: PUSH1 0x11 00001744: SLOAD 00001745: PUSH1 0x12 00001747: SLOAD 00001748: DUP4 00001749: JUMP 0000174a: JUMPDEST 0000174b: PUSH1 0x00 0000174d: DUP3 0000174e: DUP3 0000174f: ADD 00001750: DUP4 00001751: DUP2 00001752: LT 00001753: ISZERO 00001754: PUSH2 0x111f 00001757: JUMPI 00001758: PUSH1 0x40 0000175a: DUP1 0000175b: MLOAD 0000175c: PUSH3 0x461bcd 00001760: PUSH1 0xe5 00001762: SHL 00001763: DUP2 00001764: MSTORE 00001765: PUSH1 0x20 00001767: PUSH1 0x04 00001769: DUP3 0000176a: ADD 0000176b: MSTORE 0000176c: PUSH1 0x1b 0000176e: PUSH1 0x24 00001770: DUP3 00001771: ADD 00001772: MSTORE 00001773: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 00001794: PUSH1 0x44 00001796: DUP3 00001797: ADD 00001798: MSTORE 00001799: SWAP1 0000179a: MLOAD 0000179b: SWAP1 0000179c: DUP2 0000179d: SWAP1 0000179e: SUB 0000179f: PUSH1 0x64 000017a1: ADD 000017a2: SWAP1 000017a3: REVERT 000017a4: JUMPDEST 000017a5: PUSH1 0x00 000017a7: DUP3 000017a8: PUSH2 0x17b3 000017ab: JUMPI 000017ac: POP 000017ad: PUSH1 0x00 000017af: PUSH2 0x0d64 000017b2: JUMP 000017b3: JUMPDEST 000017b4: DUP3 000017b5: DUP3 000017b6: MUL 000017b7: DUP3 000017b8: DUP5 000017b9: DUP3 000017ba: DUP2 000017bb: PUSH2 0x17c0 000017be: JUMPI 000017bf: INVALID 000017c0: JUMPDEST 000017c1: DIV 000017c2: EQ 000017c3: PUSH2 0x111f 000017c6: JUMPI 000017c7: PUSH1 0x40 000017c9: MLOAD 000017ca: PUSH3 0x461bcd 000017ce: PUSH1 0xe5 000017d0: SHL 000017d1: DUP2 000017d2: MSTORE 000017d3: PUSH1 0x04 000017d5: ADD 000017d6: DUP1 000017d7: DUP1 000017d8: PUSH1 0x20 000017da: ADD 000017db: DUP3 000017dc: DUP2 000017dd: SUB 000017de: DUP3 000017df: MSTORE 000017e0: PUSH1 0x21 000017e2: DUP2 000017e3: MSTORE 000017e4: PUSH1 0x20 000017e6: ADD 000017e7: DUP1 000017e8: PUSH2 0x22ad 000017eb: PUSH1 0x21 000017ed: SWAP2 000017ee: CODECOPY 000017ef: PUSH1 0x40 000017f1: ADD 000017f2: SWAP2 000017f3: POP 000017f4: POP 000017f5: PUSH1 0x40 000017f7: MLOAD 000017f8: DUP1 000017f9: SWAP2 000017fa: SUB 000017fb: SWAP1 000017fc: REVERT 000017fd: JUMPDEST 000017fe: PUSH1 0x00 00001800: DUP1 00001801: DUP3 00001802: GT 00001803: PUSH2 0x1853 00001806: JUMPI 00001807: PUSH1 0x40 00001809: DUP1 0000180a: MLOAD 0000180b: PUSH3 0x461bcd 0000180f: PUSH1 0xe5 00001811: SHL 00001812: DUP2 00001813: MSTORE 00001814: PUSH1 0x20 00001816: PUSH1 0x04 00001818: DUP3 00001819: ADD 0000181a: MSTORE 0000181b: PUSH1 0x1a 0000181d: PUSH1 0x24 0000181f: DUP3 00001820: ADD 00001821: MSTORE 00001822: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 00001843: PUSH1 0x44 00001845: DUP3 00001846: ADD 00001847: MSTORE 00001848: SWAP1 00001849: MLOAD 0000184a: SWAP1 0000184b: DUP2 0000184c: SWAP1 0000184d: SUB 0000184e: PUSH1 0x64 00001850: ADD 00001851: SWAP1 00001852: REVERT 00001853: JUMPDEST 00001854: DUP2 00001855: DUP4 00001856: DUP2 00001857: PUSH2 0x185c 0000185a: JUMPI 0000185b: INVALID 0000185c: JUMPDEST 0000185d: DIV 0000185e: SWAP4 0000185f: SWAP3 00001860: POP 00001861: POP 00001862: POP 00001863: JUMP 00001864: JUMPDEST 00001865: PUSH1 0x00 00001867: DUP1 00001868: PUSH2 0x1872 0000186b: DUP5 0000186c: PUSH1 0x0f 0000186e: PUSH2 0x19ce 00001871: JUMP 00001872: JUMPDEST 00001873: PUSH1 0x03 00001875: SLOAD 00001876: SWAP1 00001877: SWAP2 00001878: POP 00001879: PUSH2 0x1883 0000187c: SWAP1 0000187d: PUSH1 0x0c 0000187f: PUSH2 0x1a39 00001882: JUMP 00001883: JUMPDEST 00001884: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001899: DUP5 0000189a: AND 0000189b: PUSH1 0x00 0000189d: SWAP1 0000189e: DUP2 0000189f: MSTORE 000018a0: PUSH1 0x13 000018a2: PUSH1 0x20 000018a4: MSTORE 000018a5: PUSH1 0x40 000018a7: SWAP1 000018a8: KECCAK256 000018a9: SLOAD 000018aa: LT 000018ab: ISZERO 000018ac: PUSH2 0x18cf 000018af: JUMPI 000018b0: PUSH1 0x0a 000018b2: SLOAD 000018b3: PUSH1 0x14 000018b5: SLOAD 000018b6: PUSH2 0x18cc 000018b9: SWAP2 000018ba: PUSH2 0x18c5 000018bd: SWAP2 000018be: DUP5 000018bf: SWAP2 000018c0: SWAP1 000018c1: PUSH2 0x1e4d 000018c4: JUMP 000018c5: JUMPDEST 000018c6: DUP3 000018c7: SWAP1 000018c8: PUSH2 0x174a 000018cb: JUMP 000018cc: JUMPDEST 000018cd: SWAP1 000018ce: POP 000018cf: JUMPDEST 000018d0: PUSH1 0x05 000018d2: SLOAD 000018d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000018e8: DUP5 000018e9: DUP2 000018ea: AND 000018eb: SWAP2 000018ec: AND 000018ed: EQ 000018ee: PUSH2 0x18f7 000018f1: JUMPI 000018f2: DUP1 000018f3: PUSH2 0x1905 000018f6: JUMP 000018f7: JUMPDEST 000018f8: PUSH1 0x09 000018fa: SLOAD 000018fb: PUSH2 0x1905 000018fe: SWAP1 000018ff: DUP3 00001900: SWAP1 00001901: PUSH2 0x174a 00001904: JUMP 00001905: JUMPDEST 00001906: SWAP5 00001907: SWAP4 00001908: POP 00001909: POP 0000190a: POP 0000190b: POP 0000190c: JUMP 0000190d: JUMPDEST 0000190e: DUP2 0000190f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001924: AND 00001925: PUSH2 0x08fc 00001928: PUSH2 0x1931 0000192b: DUP4 0000192c: SELFBALANCE 0000192d: PUSH2 0x1ffa 00001930: JUMP 00001931: JUMPDEST 00001932: PUSH1 0x40 00001934: MLOAD 00001935: DUP2 00001936: ISZERO 00001937: SWAP1 00001938: SWAP3 00001939: MUL 0000193a: SWAP2 0000193b: PUSH1 0x00 0000193d: DUP2 0000193e: DUP2 0000193f: DUP2 00001940: DUP6 00001941: DUP9 00001942: DUP9 00001943: CALL 00001944: SWAP4 00001945: POP 00001946: POP 00001947: POP 00001948: POP 00001949: ISZERO 0000194a: DUP1 0000194b: ISZERO 0000194c: PUSH2 0x1959 0000194f: JUMPI 00001950: RETURNDATASIZE 00001951: PUSH1 0x00 00001953: DUP1 00001954: RETURNDATACOPY 00001955: RETURNDATASIZE 00001956: PUSH1 0x00 00001958: REVERT 00001959: JUMPDEST 0000195a: POP 0000195b: POP 0000195c: POP 0000195d: JUMP 0000195e: JUMPDEST 0000195f: PUSH1 0x01 00001961: SLOAD 00001962: PUSH21 0x010000000000000000000000000000000000000000 00001978: SWAP1 00001979: DIV 0000197a: PUSH1 0xff 0000197c: AND 0000197d: ISZERO 0000197e: PUSH2 0x0d20 00001981: JUMPI 00001982: PUSH1 0x40 00001984: DUP1 00001985: MLOAD 00001986: PUSH3 0x461bcd 0000198a: PUSH1 0xe5 0000198c: SHL 0000198d: DUP2 0000198e: MSTORE 0000198f: PUSH1 0x20 00001991: PUSH1 0x04 00001993: DUP3 00001994: ADD 00001995: MSTORE 00001996: PUSH1 0x1a 00001998: PUSH1 0x24 0000199a: DUP3 0000199b: ADD 0000199c: MSTORE 0000199d: PUSH32 0x414e54453a205465737420616c7265616479206661696c65642e000000000000 000019be: PUSH1 0x44 000019c0: DUP3 000019c1: ADD 000019c2: MSTORE 000019c3: SWAP1 000019c4: MLOAD 000019c5: SWAP1 000019c6: DUP2 000019c7: SWAP1 000019c8: SUB 000019c9: PUSH1 0x64 000019cb: ADD 000019cc: SWAP1 000019cd: REVERT 000019ce: JUMPDEST 000019cf: DUP2 000019d0: SLOAD 000019d1: PUSH1 0x00 000019d3: SWAP1 000019d4: PUSH2 0x19df 000019d7: JUMPI 000019d8: POP 000019d9: PUSH1 0x00 000019db: PUSH2 0x0d64 000019de: JUMP 000019df: JUMPDEST 000019e0: PUSH1 0x00 000019e2: DUP4 000019e3: PUSH1 0x01 000019e5: ADD 000019e6: SLOAD 000019e7: GT 000019e8: PUSH2 0x1a22 000019eb: JUMPI 000019ec: PUSH1 0x40 000019ee: MLOAD 000019ef: PUSH3 0x461bcd 000019f3: PUSH1 0xe5 000019f5: SHL 000019f6: DUP2 000019f7: MSTORE 000019f8: PUSH1 0x04 000019fa: ADD 000019fb: DUP1 000019fc: DUP1 000019fd: PUSH1 0x20 000019ff: ADD 00001a00: DUP3 00001a01: DUP2 00001a02: SUB 00001a03: DUP3 00001a04: MSTORE 00001a05: PUSH1 0x22 00001a07: DUP2 00001a08: MSTORE 00001a09: PUSH1 0x20 00001a0b: ADD 00001a0c: DUP1 00001a0d: PUSH2 0x2233 00001a10: PUSH1 0x22 00001a12: SWAP2 00001a13: CODECOPY 00001a14: PUSH1 0x40 00001a16: ADD 00001a17: SWAP2 00001a18: POP 00001a19: POP 00001a1a: PUSH1 0x40 00001a1c: MLOAD 00001a1d: DUP1 00001a1e: SWAP2 00001a1f: SUB 00001a20: SWAP1 00001a21: REVERT 00001a22: JUMPDEST 00001a23: PUSH1 0x03 00001a25: DUP3 00001a26: ADD 00001a27: SLOAD 00001a28: PUSH1 0x01 00001a2a: DUP5 00001a2b: ADD 00001a2c: SLOAD 00001a2d: DUP5 00001a2e: SLOAD 00001a2f: PUSH2 0x111f 00001a32: SWAP3 00001a33: SWAP1 00001a34: SWAP2 00001a35: PUSH2 0x1e4d 00001a38: JUMP 00001a39: JUMPDEST 00001a3a: PUSH1 0x00 00001a3c: DUP3 00001a3d: DUP3 00001a3e: GT 00001a3f: ISZERO 00001a40: PUSH2 0x1a90 00001a43: JUMPI 00001a44: PUSH1 0x40 00001a46: DUP1 00001a47: MLOAD 00001a48: PUSH3 0x461bcd 00001a4c: PUSH1 0xe5 00001a4e: SHL 00001a4f: DUP2 00001a50: MSTORE 00001a51: PUSH1 0x20 00001a53: PUSH1 0x04 00001a55: DUP3 00001a56: ADD 00001a57: MSTORE 00001a58: PUSH1 0x1e 00001a5a: PUSH1 0x24 00001a5c: DUP3 00001a5d: ADD 00001a5e: MSTORE 00001a5f: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 00001a80: PUSH1 0x44 00001a82: DUP3 00001a83: ADD 00001a84: MSTORE 00001a85: SWAP1 00001a86: MLOAD 00001a87: SWAP1 00001a88: DUP2 00001a89: SWAP1 00001a8a: SUB 00001a8b: PUSH1 0x64 00001a8d: ADD 00001a8e: SWAP1 00001a8f: REVERT 00001a90: JUMPDEST 00001a91: POP 00001a92: SWAP1 00001a93: SUB 00001a94: SWAP1 00001a95: JUMP 00001a96: JUMPDEST 00001a97: PUSH1 0x01 00001a99: DUP3 00001a9a: ADD 00001a9b: SLOAD 00001a9c: PUSH1 0x00 00001a9e: SWAP1 00001a9f: PUSH2 0x1aaa 00001aa2: JUMPI 00001aa3: POP 00001aa4: PUSH1 0x00 00001aa6: PUSH2 0x0d64 00001aa9: JUMP 00001aaa: JUMPDEST 00001aab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ac0: DUP3 00001ac1: AND 00001ac2: PUSH1 0x00 00001ac4: DUP2 00001ac5: DUP2 00001ac6: MSTORE 00001ac7: PUSH1 0x20 00001ac9: DUP6 00001aca: SWAP1 00001acb: MSTORE 00001acc: PUSH1 0x40 00001ace: SWAP1 00001acf: KECCAK256 00001ad0: SLOAD 00001ad1: PUSH1 0x01 00001ad3: DUP6 00001ad4: ADD 00001ad5: DUP1 00001ad6: SLOAD 00001ad7: SWAP1 00001ad8: SWAP2 00001ad9: SWAP1 00001ada: DUP2 00001adb: LT 00001adc: PUSH2 0x1ae1 00001adf: JUMPI 00001ae0: INVALID 00001ae1: JUMPDEST 00001ae2: PUSH1 0x00 00001ae4: SWAP2 00001ae5: DUP3 00001ae6: MSTORE 00001ae7: PUSH1 0x20 00001ae9: SWAP1 00001aea: SWAP2 00001aeb: KECCAK256 00001aec: ADD 00001aed: SLOAD 00001aee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b03: AND 00001b04: EQ 00001b05: SWAP4 00001b06: SWAP3 00001b07: POP 00001b08: POP 00001b09: POP 00001b0a: JUMP 00001b0b: JUMPDEST 00001b0c: PUSH1 0x00 00001b0e: DUP1 00001b0f: PUSH1 0x00 00001b11: SWAP1 00001b12: SLOAD 00001b13: SWAP1 00001b14: PUSH2 0x0100 00001b17: EXP 00001b18: SWAP1 00001b19: DIV 00001b1a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b2f: AND 00001b30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b45: AND 00001b46: PUSH4 0xe0b4fb92 00001b4b: PUSH1 0x40 00001b4d: MLOAD 00001b4e: DUP2 00001b4f: PUSH4 0xffffffff 00001b54: AND 00001b55: PUSH1 0xe0 00001b57: SHL 00001b58: DUP2 00001b59: MSTORE 00001b5a: PUSH1 0x04 00001b5c: ADD 00001b5d: PUSH1 0x20 00001b5f: PUSH1 0x40 00001b61: MLOAD 00001b62: DUP1 00001b63: DUP4 00001b64: SUB 00001b65: DUP2 00001b66: PUSH1 0x00 00001b68: DUP8 00001b69: DUP1 00001b6a: EXTCODESIZE 00001b6b: ISZERO 00001b6c: DUP1 00001b6d: ISZERO 00001b6e: PUSH2 0x1b76 00001b71: JUMPI 00001b72: PUSH1 0x00 00001b74: DUP1 00001b75: REVERT 00001b76: JUMPDEST 00001b77: POP 00001b78: GAS 00001b79: CALL 00001b7a: SWAP3 00001b7b: POP 00001b7c: POP 00001b7d: POP 00001b7e: DUP1 00001b7f: ISZERO 00001b80: PUSH2 0x1b9b 00001b83: JUMPI 00001b84: POP 00001b85: PUSH1 0x40 00001b87: MLOAD 00001b88: RETURNDATASIZE 00001b89: PUSH1 0x20 00001b8b: DUP2 00001b8c: LT 00001b8d: ISZERO 00001b8e: PUSH2 0x1b96 00001b91: JUMPI 00001b92: PUSH1 0x00 00001b94: DUP1 00001b95: REVERT 00001b96: JUMPDEST 00001b97: POP 00001b98: MLOAD 00001b99: PUSH1 0x01 00001b9b: JUMPDEST 00001b9c: PUSH2 0x1ba7 00001b9f: JUMPI 00001ba0: POP 00001ba1: PUSH1 0x00 00001ba3: PUSH2 0x07e2 00001ba6: JUMP 00001ba7: JUMPDEST 00001ba8: SWAP1 00001ba9: POP 00001baa: PUSH2 0x07e2 00001bad: JUMP 00001bae: JUMPDEST 00001baf: PUSH1 0x03 00001bb1: SLOAD 00001bb2: PUSH1 0x00 00001bb4: SWAP1 00001bb5: PUSH2 0x1bbf 00001bb8: SWAP1 00001bb9: PUSH1 0x0c 00001bbb: PUSH2 0x1a39 00001bbe: JUMP 00001bbf: JUMPDEST 00001bc0: SWAP1 00001bc1: POP 00001bc2: PUSH1 0x00 00001bc4: JUMPDEST 00001bc5: PUSH1 0x16 00001bc7: SLOAD 00001bc8: DUP2 00001bc9: LT 00001bca: ISZERO 00001bcb: PUSH2 0x1c68 00001bce: JUMPI 00001bcf: PUSH1 0x00 00001bd1: PUSH1 0x15 00001bd3: PUSH1 0x01 00001bd5: ADD 00001bd6: DUP3 00001bd7: DUP2 00001bd8: SLOAD 00001bd9: DUP2 00001bda: LT 00001bdb: PUSH2 0x1be0 00001bde: JUMPI 00001bdf: INVALID 00001be0: JUMPDEST 00001be1: PUSH1 0x00 00001be3: SWAP2 00001be4: DUP3 00001be5: MSTORE 00001be6: PUSH1 0x20 00001be8: DUP1 00001be9: DUP4 00001bea: KECCAK256 00001beb: SWAP1 00001bec: SWAP2 00001bed: ADD 00001bee: SLOAD 00001bef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c04: AND 00001c05: DUP1 00001c06: DUP4 00001c07: MSTORE 00001c08: PUSH1 0x13 00001c0a: SWAP1 00001c0b: SWAP2 00001c0c: MSTORE 00001c0d: PUSH1 0x40 00001c0f: SWAP1 00001c10: SWAP2 00001c11: KECCAK256 00001c12: SLOAD 00001c13: SWAP1 00001c14: SWAP2 00001c15: POP 00001c16: DUP4 00001c17: GT 00001c18: ISZERO 00001c19: PUSH2 0x1c5f 00001c1c: JUMPI 00001c1d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001c32: DUP2 00001c33: AND 00001c34: PUSH1 0x00 00001c36: SWAP1 00001c37: DUP2 00001c38: MSTORE 00001c39: PUSH1 0x0f 00001c3b: PUSH1 0x20 00001c3d: DUP2 00001c3e: SWAP1 00001c3f: MSTORE 00001c40: PUSH1 0x40 00001c42: SWAP1 00001c43: SWAP2 00001c44: KECCAK256 00001c45: PUSH2 0x1c5b 00001c48: SWAP2 00001c49: PUSH2 0x1c52 00001c4c: SWAP2 00001c4d: SWAP1 00001c4e: PUSH2 0x19ce 00001c51: JUMP 00001c52: JUMPDEST 00001c53: PUSH1 0x14 00001c55: SLOAD 00001c56: SWAP1 00001c57: PUSH2 0x174a 00001c5a: JUMP 00001c5b: JUMPDEST 00001c5c: PUSH1 0x14 00001c5e: SSTORE 00001c5f: JUMPDEST 00001c60: POP 00001c61: PUSH1 0x01 00001c63: ADD 00001c64: PUSH2 0x1bc4 00001c67: JUMP 00001c68: JUMPDEST 00001c69: POP 00001c6a: POP 00001c6b: JUMP 00001c6c: JUMPDEST 00001c6d: PUSH1 0x00 00001c6f: PUSH2 0x1c78 00001c72: DUP3 00001c73: DUP5 00001c74: PUSH2 0x19ce 00001c77: JUMP 00001c78: JUMPDEST 00001c79: SWAP1 00001c7a: POP 00001c7b: DUP5 00001c7c: DUP2 00001c7d: EQ 00001c7e: ISZERO 00001c7f: PUSH2 0x1cb8 00001c82: JUMPI 00001c83: PUSH1 0x00 00001c85: DUP1 00001c86: DUP4 00001c87: SSTORE 00001c88: PUSH1 0x01 00001c8a: DUP1 00001c8b: DUP5 00001c8c: ADD 00001c8d: SWAP2 00001c8e: SWAP1 00001c8f: SWAP2 00001c90: SSTORE 00001c91: DUP4 00001c92: DUP2 00001c93: ADD 00001c94: SLOAD 00001c95: PUSH2 0x1c9d 00001c98: SWAP2 00001c99: PUSH2 0x1a39 00001c9c: JUMP 00001c9d: JUMPDEST 00001c9e: PUSH1 0x01 00001ca0: DUP5 00001ca1: ADD 00001ca2: SSTORE 00001ca3: DUP4 00001ca4: ISZERO 00001ca5: PUSH2 0x1cb3 00001ca8: JUMPI 00001ca9: PUSH2 0x1cb3 00001cac: PUSH1 0x15 00001cae: CALLER 00001caf: PUSH2 0x2010 00001cb2: JUMP 00001cb3: JUMPDEST 00001cb4: PUSH2 0x1d0e 00001cb7: JUMP 00001cb8: JUMPDEST 00001cb9: DUP1 00001cba: DUP6 00001cbb: GT 00001cbc: ISZERO 00001cbd: PUSH2 0x1cf7 00001cc0: JUMPI 00001cc1: PUSH1 0x40 00001cc3: MLOAD 00001cc4: PUSH3 0x461bcd 00001cc8: PUSH1 0xe5 00001cca: SHL 00001ccb: DUP2 00001ccc: MSTORE 00001ccd: PUSH1 0x04 00001ccf: ADD 00001cd0: DUP1 00001cd1: DUP1 00001cd2: PUSH1 0x20 00001cd4: ADD 00001cd5: DUP3 00001cd6: DUP2 00001cd7: SUB 00001cd8: DUP3 00001cd9: MSTORE 00001cda: PUSH1 0x27 00001cdc: DUP2 00001cdd: MSTORE 00001cde: PUSH1 0x20 00001ce0: ADD 00001ce1: DUP1 00001ce2: PUSH2 0x231b 00001ce5: PUSH1 0x27 00001ce7: SWAP2 00001ce8: CODECOPY 00001ce9: PUSH1 0x40 00001ceb: ADD 00001cec: SWAP2 00001ced: POP 00001cee: POP 00001cef: PUSH1 0x40 00001cf1: MLOAD 00001cf2: DUP1 00001cf3: SWAP2 00001cf4: SUB 00001cf5: SWAP1 00001cf6: REVERT 00001cf7: JUMPDEST 00001cf8: PUSH2 0x1d01 00001cfb: DUP2 00001cfc: DUP7 00001cfd: PUSH2 0x1a39 00001d00: JUMP 00001d01: JUMPDEST 00001d02: DUP3 00001d03: SSTORE 00001d04: PUSH1 0x03 00001d06: DUP4 00001d07: ADD 00001d08: SLOAD 00001d09: PUSH1 0x01 00001d0b: DUP4 00001d0c: ADD 00001d0d: SSTORE 00001d0e: JUMPDEST 00001d0f: PUSH1 0x02 00001d11: DUP4 00001d12: ADD 00001d13: SLOAD 00001d14: PUSH2 0x1d1d 00001d17: SWAP1 00001d18: DUP7 00001d19: PUSH2 0x1a39 00001d1c: JUMP 00001d1d: JUMPDEST 00001d1e: PUSH1 0x02 00001d20: DUP5 00001d21: ADD 00001d22: SSTORE 00001d23: DUP4 00001d24: ISZERO 00001d25: PUSH2 0x1d37 00001d28: JUMPI 00001d29: PUSH2 0x1d32 00001d2c: CALLER 00001d2d: DUP7 00001d2e: PUSH2 0x190d 00001d31: JUMP 00001d32: JUMPDEST 00001d33: PUSH2 0x1d6f 00001d36: JUMP 00001d37: JUMPDEST 00001d38: CALLER 00001d39: PUSH1 0x00 00001d3b: SWAP1 00001d3c: DUP2 00001d3d: MSTORE 00001d3e: PUSH1 0x17 00001d40: PUSH1 0x20 00001d42: MSTORE 00001d43: PUSH1 0x40 00001d45: SWAP1 00001d46: KECCAK256 00001d47: TIMESTAMP 00001d48: DUP2 00001d49: SSTORE 00001d4a: PUSH1 0x01 00001d4c: DUP2 00001d4d: ADD 00001d4e: SLOAD 00001d4f: PUSH2 0x1d58 00001d52: SWAP1 00001d53: DUP8 00001d54: PUSH2 0x174a 00001d57: JUMP 00001d58: JUMPDEST 00001d59: PUSH1 0x01 00001d5b: DUP3 00001d5c: ADD 00001d5d: SSTORE 00001d5e: PUSH1 0x18 00001d60: SLOAD 00001d61: PUSH2 0x1d6a 00001d64: SWAP1 00001d65: DUP8 00001d66: PUSH2 0x174a 00001d69: JUMP 00001d6a: JUMPDEST 00001d6b: PUSH1 0x18 00001d6d: SSTORE 00001d6e: POP 00001d6f: JUMPDEST 00001d70: PUSH1 0x40 00001d72: DUP1 00001d73: MLOAD 00001d74: DUP7 00001d75: DUP2 00001d76: MSTORE 00001d77: SWAP1 00001d78: MLOAD 00001d79: DUP6 00001d7a: ISZERO 00001d7b: ISZERO 00001d7c: SWAP2 00001d7d: CALLER 00001d7e: SWAP2 00001d7f: PUSH32 0x2dad9020fc3cab73927d1f0192936d8dcbceac42333d75509d99c2c941339ccf 00001da0: SWAP2 00001da1: DUP2 00001da2: SWAP1 00001da3: SUB 00001da4: PUSH1 0x20 00001da6: ADD 00001da7: SWAP1 00001da8: LOG3 00001da9: POP 00001daa: POP 00001dab: POP 00001dac: POP 00001dad: POP 00001dae: JUMP 00001daf: JUMPDEST 00001db0: PUSH2 0x1db9 00001db3: DUP3 00001db4: DUP3 00001db5: PUSH2 0x1a96 00001db8: JUMP 00001db9: JUMPDEST 00001dba: PUSH2 0x1c68 00001dbd: JUMPI 00001dbe: PUSH1 0x01 00001dc0: DUP3 00001dc1: DUP2 00001dc2: ADD 00001dc3: DUP1 00001dc4: SLOAD 00001dc5: SWAP2 00001dc6: DUP3 00001dc7: ADD 00001dc8: DUP2 00001dc9: SSTORE 00001dca: PUSH1 0x00 00001dcc: DUP2 00001dcd: DUP2 00001dce: MSTORE 00001dcf: PUSH1 0x20 00001dd1: DUP1 00001dd2: DUP3 00001dd3: KECCAK256 00001dd4: SWAP1 00001dd5: SWAP4 00001dd6: ADD 00001dd7: DUP1 00001dd8: SLOAD 00001dd9: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00001dfa: AND 00001dfb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e10: SWAP6 00001e11: SWAP1 00001e12: SWAP6 00001e13: AND 00001e14: SWAP5 00001e15: DUP6 00001e16: OR 00001e17: SWAP1 00001e18: SSTORE 00001e19: SWAP1 00001e1a: SLOAD 00001e1b: SWAP3 00001e1c: DUP2 00001e1d: MSTORE 00001e1e: SWAP3 00001e1f: SWAP1 00001e20: MSTORE 00001e21: PUSH1 0x40 00001e23: SWAP1 00001e24: SWAP2 00001e25: KECCAK256 00001e26: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001e47: SWAP1 00001e48: SWAP2 00001e49: ADD 00001e4a: SWAP1 00001e4b: SSTORE 00001e4c: JUMP 00001e4d: JUMPDEST 00001e4e: PUSH1 0x00 00001e50: DUP1 00001e51: DUP1 00001e52: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001e73: DUP6 00001e74: DUP8 00001e75: MULMOD 00001e76: DUP7 00001e77: DUP7 00001e78: MUL 00001e79: SWAP3 00001e7a: POP 00001e7b: DUP3 00001e7c: DUP2 00001e7d: LT 00001e7e: SWAP1 00001e7f: DUP4 00001e80: SWAP1 00001e81: SUB 00001e82: SUB 00001e83: SWAP1 00001e84: POP 00001e85: DUP1 00001e86: PUSH2 0x1ea1 00001e89: JUMPI 00001e8a: PUSH1 0x00 00001e8c: DUP5 00001e8d: GT 00001e8e: PUSH2 0x1e96 00001e91: JUMPI 00001e92: PUSH1 0x00 00001e94: DUP1 00001e95: REVERT 00001e96: JUMPDEST 00001e97: POP 00001e98: DUP3 00001e99: SWAP1 00001e9a: DIV 00001e9b: SWAP1 00001e9c: POP 00001e9d: PUSH2 0x111f 00001ea0: JUMP 00001ea1: JUMPDEST 00001ea2: DUP1 00001ea3: DUP5 00001ea4: GT 00001ea5: PUSH2 0x1ead 00001ea8: JUMPI 00001ea9: PUSH1 0x00 00001eab: DUP1 00001eac: REVERT 00001ead: JUMPDEST 00001eae: PUSH1 0x00 00001eb0: DUP5 00001eb1: DUP7 00001eb2: DUP9 00001eb3: MULMOD 00001eb4: PUSH1 0x00 00001eb6: DUP7 00001eb7: DUP2 00001eb8: SUB 00001eb9: DUP8 00001eba: AND 00001ebb: SWAP7 00001ebc: DUP8 00001ebd: SWAP1 00001ebe: DIV 00001ebf: SWAP7 00001ec0: PUSH1 0x02 00001ec2: PUSH1 0x03 00001ec4: DUP10 00001ec5: MUL 00001ec6: DUP2 00001ec7: XOR 00001ec8: DUP1 00001ec9: DUP11 00001eca: MUL 00001ecb: DUP3 00001ecc: SUB 00001ecd: MUL 00001ece: DUP1 00001ecf: DUP11 00001ed0: MUL 00001ed1: DUP3 00001ed2: SUB 00001ed3: MUL 00001ed4: DUP1 00001ed5: DUP11 00001ed6: MUL 00001ed7: DUP3 00001ed8: SUB 00001ed9: MUL 00001eda: DUP1 00001edb: DUP11 00001edc: MUL 00001edd: DUP3 00001ede: SUB 00001edf: MUL 00001ee0: DUP1 00001ee1: DUP11 00001ee2: MUL 00001ee3: DUP3 00001ee4: SUB 00001ee5: MUL 00001ee6: DUP1 00001ee7: DUP11 00001ee8: MUL 00001ee9: SWAP1 00001eea: SWAP2 00001eeb: SUB 00001eec: MUL 00001eed: SWAP2 00001eee: DUP2 00001eef: SWAP1 00001ef0: SUB 00001ef1: DUP2 00001ef2: SWAP1 00001ef3: DIV 00001ef4: PUSH1 0x01 00001ef6: ADD 00001ef7: DUP7 00001ef8: DUP5 00001ef9: GT 00001efa: SWAP1 00001efb: SWAP6 00001efc: SUB 00001efd: SWAP5 00001efe: SWAP1 00001eff: SWAP5 00001f00: MUL 00001f01: SWAP2 00001f02: SWAP1 00001f03: SWAP5 00001f04: SUB 00001f05: SWAP3 00001f06: SWAP1 00001f07: SWAP3 00001f08: DIV 00001f09: SWAP2 00001f0a: SWAP1 00001f0b: SWAP2 00001f0c: OR 00001f0d: SWAP2 00001f0e: SWAP1 00001f0f: SWAP2 00001f10: MUL 00001f11: SWAP2 00001f12: POP 00001f13: POP 00001f14: SWAP4 00001f15: SWAP3 00001f16: POP 00001f17: POP 00001f18: POP 00001f19: JUMP 00001f1a: JUMPDEST 00001f1b: PUSH1 0x19 00001f1d: SLOAD 00001f1e: PUSH8 0x0de0b6b3a7640000 00001f27: SWAP1 00001f28: PUSH1 0x00 00001f2a: SWAP1 00001f2b: NUMBER 00001f2c: GT 00001f2d: PUSH2 0x1f35 00001f30: JUMPI 00001f31: PUSH2 0x1ff0 00001f34: JUMP 00001f35: JUMPDEST 00001f36: PUSH1 0x01 00001f38: SLOAD 00001f39: PUSH21 0x010000000000000000000000000000000000000000 00001f4f: SWAP1 00001f50: DIV 00001f51: PUSH1 0xff 00001f53: AND 00001f54: ISZERO 00001f55: PUSH2 0x1f5d 00001f58: JUMPI 00001f59: PUSH2 0x1ff0 00001f5c: JUMP 00001f5d: JUMPDEST 00001f5e: PUSH1 0x0d 00001f60: SLOAD 00001f61: PUSH1 0x11 00001f63: SLOAD 00001f64: DUP2 00001f65: ISZERO 00001f66: DUP1 00001f67: PUSH2 0x1f6e 00001f6a: JUMPI 00001f6b: POP 00001f6c: DUP1 00001f6d: ISZERO 00001f6e: JUMPDEST 00001f6f: ISZERO 00001f70: PUSH2 0x1f7a 00001f73: JUMPI 00001f74: POP 00001f75: POP 00001f76: PUSH2 0x1ff0 00001f79: JUMP 00001f7a: JUMPDEST 00001f7b: PUSH1 0x00 00001f7d: PUSH2 0x1f91 00001f80: PUSH1 0x19 00001f82: SLOAD 00001f83: NUMBER 00001f84: PUSH2 0x1a39 00001f87: SWAP1 00001f88: SWAP2 00001f89: SWAP1 00001f8a: PUSH4 0xffffffff 00001f8f: AND 00001f90: JUMP 00001f91: JUMPDEST 00001f92: SWAP1 00001f93: POP 00001f94: PUSH1 0x00 00001f96: PUSH2 0x1fa4 00001f99: PUSH5 0x174876e800 00001f9f: DUP4 00001fa0: PUSH2 0x17a4 00001fa3: JUMP 00001fa4: JUMPDEST 00001fa5: SWAP1 00001fa6: POP 00001fa7: PUSH8 0x0de0b6b3a7640000 00001fb0: DUP2 00001fb1: LT 00001fb2: PUSH2 0x1fc1 00001fb5: JUMPI 00001fb6: PUSH1 0x00 00001fb8: SWAP6 00001fb9: POP 00001fba: DUP3 00001fbb: SWAP5 00001fbc: POP 00001fbd: PUSH2 0x1feb 00001fc0: JUMP 00001fc1: JUMPDEST 00001fc2: PUSH2 0x1fd3 00001fc5: PUSH8 0x0de0b6b3a7640000 00001fce: DUP3 00001fcf: PUSH2 0x1a39 00001fd2: JUMP 00001fd3: JUMPDEST 00001fd4: SWAP6 00001fd5: POP 00001fd6: PUSH2 0x1fe8 00001fd9: DUP4 00001fda: DUP3 00001fdb: PUSH8 0x0de0b6b3a7640000 00001fe4: PUSH2 0x1e4d 00001fe7: JUMP 00001fe8: JUMPDEST 00001fe9: SWAP5 00001fea: POP 00001feb: JUMPDEST 00001fec: POP 00001fed: POP 00001fee: POP 00001fef: POP 00001ff0: JUMPDEST 00001ff1: SWAP1 00001ff2: SWAP2 00001ff3: JUMP 00001ff4: JUMPDEST 00001ff5: EXTCODESIZE 00001ff6: ISZERO 00001ff7: ISZERO 00001ff8: SWAP1 00001ff9: JUMP 00001ffa: JUMPDEST 00001ffb: PUSH1 0x00 00001ffd: DUP2 00001ffe: DUP4 00001fff: LT 00002000: PUSH2 0x2009 00002003: JUMPI 00002004: DUP2 00002005: PUSH2 0x111f 00002008: JUMP 00002009: JUMPDEST 0000200a: POP 0000200b: SWAP1 0000200c: SWAP2 0000200d: SWAP1 0000200e: POP 0000200f: JUMP 00002010: JUMPDEST 00002011: PUSH2 0x201a 00002014: DUP3 00002015: DUP3 00002016: PUSH2 0x1a96 00002019: JUMP 0000201a: JUMPDEST 0000201b: PUSH2 0x2023 0000201e: JUMPI 0000201f: PUSH2 0x1c68 00002022: JUMP 00002023: JUMPDEST 00002024: PUSH1 0x01 00002026: DUP3 00002027: ADD 00002028: SLOAD 00002029: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000203e: DUP3 0000203f: AND 00002040: PUSH1 0x00 00002042: SWAP1 00002043: DUP2 00002044: MSTORE 00002045: PUSH1 0x20 00002047: DUP5 00002048: SWAP1 00002049: MSTORE 0000204a: PUSH1 0x40 0000204c: SWAP1 0000204d: KECCAK256 0000204e: SLOAD 0000204f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00002070: SWAP1 00002071: SWAP2 00002072: ADD 00002073: SWAP1 00002074: DUP1 00002075: DUP3 00002076: EQ 00002077: PUSH2 0x211d 0000207a: JUMPI 0000207b: PUSH1 0x00 0000207d: DUP5 0000207e: PUSH1 0x01 00002080: ADD 00002081: DUP4 00002082: DUP2 00002083: SLOAD 00002084: DUP2 00002085: LT 00002086: PUSH2 0x208b 00002089: JUMPI 0000208a: INVALID 0000208b: JUMPDEST 0000208c: PUSH1 0x00 0000208e: SWAP2 0000208f: DUP3 00002090: MSTORE 00002091: PUSH1 0x20 00002093: DUP1 00002094: DUP4 00002095: KECCAK256 00002096: SWAP1 00002097: SWAP2 00002098: ADD 00002099: SLOAD 0000209a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020af: AND 000020b0: DUP1 000020b1: DUP4 000020b2: MSTORE 000020b3: SWAP1 000020b4: DUP8 000020b5: SWAP1 000020b6: MSTORE 000020b7: PUSH1 0x40 000020b9: SWAP1 000020ba: SWAP2 000020bb: KECCAK256 000020bc: DUP4 000020bd: SWAP1 000020be: SSTORE 000020bf: PUSH1 0x01 000020c1: DUP7 000020c2: ADD 000020c3: DUP1 000020c4: SLOAD 000020c5: SWAP2 000020c6: SWAP3 000020c7: POP 000020c8: DUP3 000020c9: SWAP2 000020ca: DUP5 000020cb: SWAP1 000020cc: DUP2 000020cd: LT 000020ce: PUSH2 0x20d3 000020d1: JUMPI 000020d2: INVALID 000020d3: JUMPDEST 000020d4: SWAP1 000020d5: PUSH1 0x00 000020d7: MSTORE 000020d8: PUSH1 0x20 000020da: PUSH1 0x00 000020dc: KECCAK256 000020dd: ADD 000020de: PUSH1 0x00 000020e0: PUSH2 0x0100 000020e3: EXP 000020e4: DUP2 000020e5: SLOAD 000020e6: DUP2 000020e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020fc: MUL 000020fd: NOT 000020fe: AND 000020ff: SWAP1 00002100: DUP4 00002101: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002116: AND 00002117: MUL 00002118: OR 00002119: SWAP1 0000211a: SSTORE 0000211b: POP 0000211c: POP 0000211d: JUMPDEST 0000211e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002133: DUP4 00002134: AND 00002135: PUSH1 0x00 00002137: SWAP1 00002138: DUP2 00002139: MSTORE 0000213a: PUSH1 0x20 0000213c: DUP6 0000213d: SWAP1 0000213e: MSTORE 0000213f: PUSH1 0x40 00002141: DUP2 00002142: KECCAK256 00002143: SSTORE 00002144: PUSH1 0x01 00002146: DUP5 00002147: ADD 00002148: DUP1 00002149: SLOAD 0000214a: DUP1 0000214b: PUSH2 0x2150 0000214e: JUMPI 0000214f: INVALID 00002150: JUMPDEST 00002151: PUSH1 0x00 00002153: DUP3 00002154: DUP2 00002155: MSTORE 00002156: PUSH1 0x20 00002158: SWAP1 00002159: KECCAK256 0000215a: DUP2 0000215b: ADD 0000215c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 0000217d: SWAP1 0000217e: DUP2 0000217f: ADD 00002180: DUP1 00002181: SLOAD 00002182: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000021a3: AND 000021a4: SWAP1 000021a5: SSTORE 000021a6: ADD 000021a7: SWAP1 000021a8: SSTORE 000021a9: POP 000021aa: POP 000021ab: POP 000021ac: POP 000021ad: JUMP 000021ae: INVALID 000021af: COINBASE 000021b0: UNKNOWN(0x4E) 000021b1: SLOAD 000021b2: GASLIMIT 000021b3: GASPRICE 000021b4: KECCAK256 000021b5: UNKNOWN(0x4F) 000021b6: PUSH15 0x6c79206368616c6c656e6765727320 000021c6: PUSH4 0x616e2063 000021cb: PUSH9 0x65636b54657374414e 000021d5: SLOAD 000021d6: GASLIMIT 000021d7: GASPRICE 000021d8: KECCAK256 000021d9: UNKNOWN(0x4E) 000021da: PUSH16 0x2070656e64696e672077697468647261 000021eb: PUSH24 0x2062616c616e6365414e54453a20416e7465546573742064 00002204: PUSH16 0x6573206e6f7420696d706c656d656e74 00002215: KECCAK256 00002216: PUSH4 0x6865636b 0000221b: SLOAD 0000221c: PUSH6 0x737450617373 00002223: PUSH6 0x73206f722074 0000222a: PUSH6 0x737420666169 00002231: PUSH13 0x73414e54453a20496e76616c69 0000223f: PUSH5 0x2073746172 00002245: PUSH21 0x44656361794d756c7469706c696572414e54453a20 0000225b: NUMBER 0000225c: PUSH9 0x616c6c656e67657220 00002266: PUSH14 0x757374207374616b65206d6f7265 00002275: KECCAK256 00002276: PUSH21 0x68616e20302e303120455448414e54453a206d7573 0000228c: PUSH21 0x207761697420323420686f75727320746f20776974 000022a2: PUSH9 0x64726177207374616b 000022ac: PUSH6 0x536166654d61 000022b3: PUSH21 0x683a206d756c7469706c69636174696f6e206f7665 000022c9: PUSH19 0x666c6f77414e54453a206f6e6c792066616374 000022dd: PUSH16 0x72792063616e20696e697469616c697a 000022ee: PUSH6 0x20416e746550 000022f5: PUSH16 0x6f6c414e54453a204e6f204368616c6c 00002306: PUSH6 0x6e6765722053 0000230d: PUSH21 0x616b696e672062616c616e6365414e54453a205769 00002323: PUSH21 0x686472617720726571756573742065786365656473 00002339: KECCAK256 0000233a: PUSH3 0x616c61 0000233e: PUSH15 0x63652e414e54453a206d7573742077 0000234e: PUSH2 0x6974 00002351: KECCAK256 00002352: BALANCE 00002353: ORIGIN 00002354: KECCAK256 00002355: PUSH3 0x6c6f63 00002359: PUSH12 0x73206166746572206368616c 00002366: PUSH13 0x656e67696e6720746f2063616c 00002374: PUSH13 0x20636865636b54657374414e54 00002382: GASLIMIT 00002383: GASPRICE 00002384: KECCAK256 00002385: COINBASE 00002386: PUSH15 0x746554657374206d75737420626520 00002396: PUSH2 0x2073 00002399: PUSH14 0x61727420636f6e7472616374a264 000023a8: PUSH10 0x706673582212208a68b9 000023b3: GAS 000023b4: UNKNOWN(0xE6) 000023b5: UNKNOWN(0x28) 000023b6: UNKNOWN(0xA7) 000023b7: PUSH3 0x4f9f5d 000023bb: UNKNOWN(0xD2) 000023bc: UNKNOWN(0xDC) 000023bd: CLZ 000023be: DUP16 000023bf: CREATE2 000023c0: UNKNOWN(0xDC) 000023c1: DUP15 000023c2: UNKNOWN(0x22) 000023c3: UNKNOWN(0xBA) 000023c4: UNKNOWN(0xB4) 000023c5: UNKNOWN(0xD2) 000023c6: BLOBHASH 000023c7: SHL 000023c8: UNKNOWN(0xC7) 000023c9: UNKNOWN(0x1F) 000023ca: JUMPI 000023cb: REVERT 000023cc: UNKNOWN(0x4D) 000023cd: CALLCODE 000023ce: SHL 000023cf: COINBASE 000023d0: PUSH5 0x736f6c6343 000023d6: STOP 000023d7: SMOD 000023d8: MOD 000023d9: STOP 000023da: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xe35e5d84",
"selector": "0xe35e5d84",
"calldata_variants": [
"0xe35e5d84",
"0xe35e5d840000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec7bb87c",
"selector": "0xec7bb87c",
"calldata_variants": [
"0xec7bb87c",
"0xec7bb87c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf39375ad",
"selector": "0xf39375ad",
"calldata_variants": [
"0xf39375ad",
"0xf39375ad0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc45a0155",
"selector": "0xc45a0155",
"calldata_variants": [
"0xc45a0155",
"0xc45a01550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc4d66de8",
"selector": "0xc4d66de8",
"calldata_variants": [
"0xc4d66de8",
"0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb6be0090",
"selector": "0xb6be0090",
"calldata_variants": [
"0xb6be0090",
"0xb6be00900000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbed9d861",
"selector": "0xbed9d861",
"calldata_variants": [
"0xbed9d861",
"0xbed9d8610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc31678e2",
"selector": "0xc31678e2",
"calldata_variants": [
"0xc31678e2",
"0xc31678e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 9043,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xaba93bc84da6ce5e2f347e464b3a17b54220e3d4cf4b0f6203ca9fd7f495a53a
call_targets:
0x83ca192d41892fddb62c53576a7ceab3a4ed90f8
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xaba93bc84da6ce5e2f347e464b3a17b54220e3d4cf4b0f6203ca9fd7f495a53a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x83ca192d41892fddb62c53576a7ceab3a4ed90f8"
],
"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": "0xe35e5d84",
"selector": "0xe35e5d84",
"calldata_variants": [
"0xe35e5d84",
"0xe35e5d840000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec7bb87c",
"selector": "0xec7bb87c",
"calldata_variants": [
"0xec7bb87c",
"0xec7bb87c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf39375ad",
"selector": "0xf39375ad",
"calldata_variants": [
"0xf39375ad",
"0xf39375ad0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc45a0155",
"selector": "0xc45a0155",
"calldata_variants": [
"0xc45a0155",
"0xc45a01550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc4d66de8",
"selector": "0xc4d66de8",
"calldata_variants": [
"0xc4d66de8",
"0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb6be0090",
"selector": "0xb6be0090",
"calldata_variants": [
"0xb6be0090",
"0xb6be00900000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbed9d861",
"selector": "0xbed9d861",
"calldata_variants": [
"0xbed9d861",
"0xbed9d8610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc31678e2",
"selector": "0xc31678e2",
"calldata_variants": [
"0xc31678e2",
"0xc31678e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5681,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6467,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7033,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [
{
"pc": 9043,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 4
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xaba93bc84da6ce5e2f347e464b3a17b54220e3d4cf4b0f6203ca9fd7f495a53a
call_targets:
0x83ca192d41892fddb62c53576a7ceab3a4ed90f8
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xaba93bc84da6ce5e2f347e464b3a17b54220e3d4cf4b0f6203ca9fd7f495a53a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x83ca192d41892fddb62c53576a7ceab3a4ed90f8"
],
"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": "0xe35e5d84",
"selector": "0xe35e5d84",
"calldata_variants": [
"0xe35e5d84",
"0xe35e5d840000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec7bb87c",
"selector": "0xec7bb87c",
"calldata_variants": [
"0xec7bb87c",
"0xec7bb87c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf39375ad",
"selector": "0xf39375ad",
"calldata_variants": [
"0xf39375ad",
"0xf39375ad0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc45a0155",
"selector": "0xc45a0155",
"calldata_variants": [
"0xc45a0155",
"0xc45a01550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc4d66de8",
"selector": "0xc4d66de8",
"calldata_variants": [
"0xc4d66de8",
"0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb6be0090",
"selector": "0xb6be0090",
"calldata_variants": [
"0xb6be0090",
"0xb6be00900000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbed9d861",
"selector": "0xbed9d861",
"calldata_variants": [
"0xbed9d861",
"0xbed9d8610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc31678e2",
"selector": "0xc31678e2",
"calldata_variants": [
"0xc31678e2",
"0xc31678e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5681,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 6467,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7033,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": [
{
"pc": 9043,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xa684899236e21783e8b0ae1418714343a7ee2311b53f3e913d7d681c8e489d33
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xa684899236e21783e8b0ae1418714343a7ee2311b53f3e913d7d681c8e489d33",
"confirmed": false,
"trace_mode": "structLogs",
"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": "0xe35e5d84",
"selector": "0xe35e5d84",
"calldata_variants": [
"0xe35e5d84",
"0xe35e5d840000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xec7bb87c",
"selector": "0xec7bb87c",
"calldata_variants": [
"0xec7bb87c",
"0xec7bb87c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf39375ad",
"selector": "0xf39375ad",
"calldata_variants": [
"0xf39375ad",
"0xf39375ad0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc45a0155",
"selector": "0xc45a0155",
"calldata_variants": [
"0xc45a0155",
"0xc45a01550000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc4d66de8",
"selector": "0xc4d66de8",
"calldata_variants": [
"0xc4d66de8",
"0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb6be0090",
"selector": "0xb6be0090",
"calldata_variants": [
"0xb6be0090",
"0xb6be00900000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbed9d861",
"selector": "0xbed9d861",
"calldata_variants": [
"0xbed9d861",
"0xbed9d8610000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc31678e2",
"selector": "0xc31678e2",
"calldata_variants": [
"0xc31678e2",
"0xc31678e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 1
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"create2_count": 1
}
|