e6d93c28-5dad-4570-917a-2db3b9e2dfc2
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 |
|---|---|---|---|---|
| 30299 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 73978 | artifact.fetch | failed | 1 / 3 | 2 weeks ago |
| 73979 | tool.cast_disasm | complete | 1 / 3 | 2 weeks ago |
| 73980 | analysis.bundle | complete | 1 / 3 | 2 weeks ago |
| 73981 | capability.graph | complete | 1 / 3 | 2 weeks ago |
| 73982 | detector.run | complete | 1 / 3 | 2 weeks ago |
| 73983 | validation.fork | complete | 1 / 3 | 2 weeks ago |
No slither job recorded yet.
[codex:343871] OpenAI Codex v0.77.0 (research preview)
[codex:343871] --------
[codex:343871] workdir: /tmp/codex-multi-kp8ivkty
[codex:343871] model: gpt-5.2-codex
[codex:343871] provider: openai
[codex:343871] approval: never
[codex:343871] sandbox: read-only
[codex:343871] reasoning effort: xhigh
[codex:343871] reasoning summaries: auto
[codex:343871] session id: 019b6535-1ed1-7f92-9ba6-ac0b423beda0
[codex:343871] --------
[codex:343871] user
[codex:343871] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:343871] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:343871] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:343871]
[codex:343871] Scope rules:
[codex:343871] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:343871] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:343871]
[codex:343871] Output MUST be valid JSON matching the provided schema.
[codex:343871] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:343871] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:343871]
[codex:343871] Output constraints (IMPORTANT):
[codex:343871] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:343871] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:343871] mcp startup: no servers
[codex:343871]
[codex:343871] thinking
[codex:343871] **Reading AUDIT_BUNDLE.txt**
[codex:343871] exec
[codex:343871] /bin/bash -lc ls in /tmp/codex-multi-kp8ivkty succeeded in 5ms:
[codex:343871] AUDIT_BUNDLE.txt
[codex:343871] codex-output-schema.json
[codex:343871] contracts
[codex:343871] exec
[codex:343871] /bin/bash -lc 'wc -l AUDIT_BUNDLE.txt' in /tmp/codex-multi-kp8ivkty succeeded in 5ms:
[codex:343871] 1515 AUDIT_BUNDLE.txt
[codex:343871]
[codex:343871] thinking
[codex:343871] **Planning chunked file reading**
[codex:343871] exec
[codex:343871] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kp8ivkty succeeded in 6ms:
[codex:343871] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:343871]
[codex:343871] ================================================================================
[codex:343871] FILE: contracts/Contract.sol
[codex:343871] ================================================================================
[codex:343871] // File: openzeppelin-solidity/contracts/math/SafeMath.sol
[codex:343871]
[codex:343871] pragma solidity ^0.5.2;
[codex:343871]
[codex:343871] /**
[codex:343871] * @title SafeMath
[codex:343871] * @dev Unsigned math operations with safety checks that revert on error
[codex:343871] */
[codex:343871] library SafeMath {
[codex:343871] /**
[codex:343871] * @dev Multiplies two unsigned integers, reverts on overflow.
[codex:343871] */
[codex:343871] function mul(uint256 a, uint256 b) internal pure returns (uint256) {
[codex:343871] // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
[codex:343871] // benefit is lost if 'b' is also tested.
[codex:343871]
[codex:343871] thinking
[codex:343871] **Continuing examination**
[codex:343871] exec
[codex:343871] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kp8ivkty succeeded in 5ms:
[codex:343871] /**
[codex:343871] * Returns the combination of the two arrays
[codex:343871] * @param A The first array
[codex:343871] * @param B The second array
[codex:343871] * @return Returns A extended by B
[codex:343871] */
[codex:343871] function extend(address[] memory A, address[] memory B) internal pure returns (address[] memory) {
[codex:343871] uint256 aLength = A.length;
[codex:343871] uint256 bLength = B.length;
[codex:343871] address[] memory newAddresses = new address[](aLength + bLength);
[codex:343871] for (uint256 i = 0; i < aLength; i++) {
[codex:343871] newAddresses[i] = A[i];
[codex:343871] }
[codex:343871] for (uint256 j = 0; j < bLength; j++) {
[codex:343871] newAddresses[aLength + j] = B[j];
[codex:343871] }
[codex:343871] return newAddresses;
[codex:343871] }
[codex:343871]
[codex:343871] /**
[codex:343871]
[codex:343871] thinking
[codex:343871] **Continuing process**
[codex:343871] exec
[codex:343871] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kp8ivkty succeeded in 5ms:
[codex:343871]
[codex:343871] function sPop(address[] storage A, uint256 index) internal returns (address) {
[codex:343871] uint256 length = A.length;
[codex:343871] if (index >= length) {
[codex:343871] revert("Error: index out of bounds");
[codex:343871] }
[codex:343871] address entry = A[index];
[codex:343871] for (uint256 i = index; i < length - 1; i++) {
[codex:343871] A[i] = A[i + 1];
[codex:343871] }
[codex:343871] A.length--;
[codex:343871] return entry;
[codex:343871] }
[codex:343871]
[codex:343871] /**
[codex:343871] * Deletes address at index and fills the spot with the last address.
[codex:343871] * Order is not preserved.
[codex:343871] * @return Returns the removed entry
[codex:343871] */
[codex:343871] function sPopCheap(address[] storage A, uint256 index) internal returns (address) {
[codex:343871]
[codex:343871] thinking
[codex:343871] **Continuing file analysis**
[codex:343871] exec
[codex:343871] /bin/bash -lc "sed -n '800,1200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kp8ivkty succeeded in 5ms:
[codex:343871] */
[codex:343871] function maxUInt256()
[codex:343871] internal
[codex:343871] pure
[codex:343871] returns (uint256)
[codex:343871] {
[codex:343871] return 2 ** 256 - 1;
[codex:343871] }
[codex:343871]
[codex:343871] /**
[codex:343871] * @dev Performs the power on a specified value, reverts on overflow.
[codex:343871] */
[codex:343871] function safePower(
[codex:343871] uint256 a,
[codex:343871] uint256 pow
[codex:343871] )
[codex:343871] internal
[codex:343871] pure
[codex:343871] returns (uint256)
[codex:343871] {
[codex:343871]
[codex:343871] thinking
[codex:343871] **Continuing process**
[codex:343871] exec
[codex:343871] /bin/bash -lc "sed -n '1200,1600p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-kp8ivkty succeeded in 5ms:
[codex:343871] // | | User 0xABC | 300 |
[codex:343871] // | | Set 0x456 | 1000 |
[codex:343871] // | TokenB | User 0xDEF | 100 |
[codex:343871] // | | Set 0xSET | 700 |
[codex:343871] // +--------------+---------------------+--------+
[codex:343871] mapping (address => mapping (address => uint256)) public balances;
[codex:343871]
[codex:343871] /* ============ External Functions ============ */
[codex:343871]
[codex:343871] /*
[codex:343871] * Withdraws user's unassociated tokens to user account. Can only be
[codex:343871] * called by authorized core contracts.
[codex:343871] *
[codex:343871] * @param _token The address of the ERC20 token
[codex:343871] * @param _to The address to transfer token to
[codex:343871] * @param _quantity The number of tokens to transfer
[codex:343871] */
[codex:343871] function withdrawTo(
[codex:343871] address _token,
[codex:343871] address _to,
[codex:343871]
[codex:343871] thinking
[codex:343871] **Clarifying library and first-party contract boundaries**
[codex:343871] exec
[codex:343871] /bin/bash -lc 'rg "contract " -n AUDIT_BUNDLE.txt' in /tmp/codex-multi-kp8ivkty succeeded in 6ms:
[codex:343871] 80: * @dev The Ownable contract has an owner address, and provides basic authorization control
[codex:343871] 83:contract Ownable {
[codex:343871] 89: * @dev The Ownable constructor sets the original `owner` of the contract to the sender
[codex:343871] 123: * @notice Renouncing ownership will leave the contract without an owner,
[codex:343871] 132: * @dev Allows the current owner to transfer control of the contract to a newOwner.
[codex:343871] 140: * @dev Transfers control of the contract to a newOwner.
[codex:343871] 532: * The TimeLockUpgrade contract contains a modifier for handling minimum time period updates
[codex:343871] 534:contract TimeLockUpgrade is
[codex:343871] 651: * The Authorizable contract is an inherited contract that sets permissions on certain function calls
[codex:343871] 654:contract Authorizable is
[codex:343871] 1181: * The vault contract is responsible for holding all funds and keeping track of the
[codex:343871] 1186:contract Vault is
[codex:343871] 1232: // Call specified ERC20 token contract to transfer tokens from Vault to user
[codex:343871] 1498: * Get balance of particular contract for owner.
[codex:343871]
[codex:343871]
[codex:343871] thinking
[codex:343871] **Evaluating contract security and design**
[codex:343871] thinking
[codex:343871] **Clarifying inheritance and security considerations**
[codex:343871]
[codex:343871] I'll review inheritance structure around Ownable and TimeLockUpgrade to ensure no constructor or modifier conflicts, confirming linearization prevents duplication. I also consider subtle trust assumptions around authorized contracts and the absence of reentrancy guards in Vault, noting residual risks related to third-party libraries and trusted contracts without flagging them as direct findings. I'll finalize a JSON summary reflecting this assessment.
[codex:343871] codex
[codex:343871] {"no_findings":true,"summary":"No exploitable findings in the first-party contracts from AUDIT_BUNDLE. Residual risk: correctness relies on trusted authorized contracts and unaudited third-party libraries.","findings":[]}
[codex:343871] tokens used
[codex:343871] 23,869
[codex:343871] {"no_findings":true,"summary":"No exploitable findings in the first-party contracts from AUDIT_BUNDLE. Residual risk: correctness relies on trusted authorized contracts and unaudited third-party libraries.","findings":[]}
{
"codex": {
"ran_at": "2025-12-28T13:48:13.192659+00:00",
"returncode": 0
},
"summary": "No exploitable findings in the first-party contracts from AUDIT_BUNDLE. Residual risk: correctness relies on trusted authorized contracts and unaudited third-party libraries.",
"raw_final": {
"summary": "No exploitable findings in the first-party contracts from AUDIT_BUNDLE. Residual risk: correctness relies on trusted authorized contracts and unaudited third-party libraries.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLVALUE 00000006: DUP1 00000007: ISZERO 00000008: PUSH2 0x0010 0000000b: JUMPI 0000000c: PUSH1 0x00 0000000e: DUP1 0000000f: REVERT 00000010: JUMPDEST 00000011: POP 00000012: PUSH1 0x04 00000014: CALLDATASIZE 00000015: LT 00000016: PUSH2 0x015f 00000019: JUMPI 0000001a: PUSH1 0x00 0000001c: CALLDATALOAD 0000001d: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000003b: SWAP1 0000003c: DIV 0000003d: DUP1 0000003e: PUSH4 0x80ddda30 00000043: GT 00000044: PUSH2 0x00d5 00000047: JUMPI 00000048: DUP1 00000049: PUSH4 0xb9181611 0000004e: GT 0000004f: PUSH2 0x0099 00000052: JUMPI 00000053: DUP1 00000054: PUSH4 0xb9181611 00000059: EQ 0000005a: PUSH2 0x0653 0000005d: JUMPI 0000005e: DUP1 0000005f: PUSH4 0xbada5726 00000064: EQ 00000065: PUSH2 0x0679 00000068: JUMPI 00000069: DUP1 0000006a: PUSH4 0xc23f001f 0000006f: EQ 00000070: PUSH2 0x06af 00000073: JUMPI 00000074: DUP1 00000075: PUSH4 0xc3b35a7e 0000007a: EQ 0000007b: PUSH2 0x06dd 0000007e: JUMPI 0000007f: DUP1 00000080: PUSH4 0xd39de6e9 00000085: EQ 00000086: PUSH2 0x0713 00000089: JUMPI 0000008a: DUP1 0000008b: PUSH4 0xf2fde38b 00000090: EQ 00000091: PUSH2 0x076b 00000094: JUMPI 00000095: PUSH2 0x015f 00000098: JUMP 00000099: JUMPDEST 0000009a: DUP1 0000009b: PUSH4 0x80ddda30 000000a0: EQ 000000a1: PUSH2 0x05a0 000000a4: JUMPI 000000a5: DUP1 000000a6: PUSH4 0x8da5cb5b 000000ab: EQ 000000ac: PUSH2 0x05d6 000000af: JUMPI 000000b0: DUP1 000000b1: PUSH4 0x8f32d59b 000000b6: EQ 000000b7: PUSH2 0x05de 000000ba: JUMPI 000000bb: DUP1 000000bc: PUSH4 0x9303b16f 000000c1: EQ 000000c2: PUSH2 0x05fa 000000c5: JUMPI 000000c6: DUP1 000000c7: PUSH4 0xb19ad577 000000cc: EQ 000000cd: PUSH2 0x0617 000000d0: JUMPI 000000d1: PUSH2 0x015f 000000d4: JUMP 000000d5: JUMPDEST 000000d6: DUP1 000000d7: PUSH4 0x3911477c 000000dc: GT 000000dd: PUSH2 0x0127 000000e0: JUMPI 000000e1: DUP1 000000e2: PUSH4 0x3911477c 000000e7: EQ 000000e8: PUSH2 0x043c 000000eb: JUMPI 000000ec: DUP1 000000ed: PUSH4 0x42f1181e 000000f2: EQ 000000f3: PUSH2 0x050b 000000f6: JUMPI 000000f7: DUP1 000000f8: PUSH4 0x494503d4 000000fd: EQ 000000fe: PUSH2 0x0531 00000101: JUMPI 00000102: DUP1 00000103: PUSH4 0x70712939 00000108: EQ 00000109: PUSH2 0x056a 0000010c: JUMPI 0000010d: DUP1 0000010e: PUSH4 0x715018a6 00000113: EQ 00000114: PUSH2 0x0590 00000117: JUMPI 00000118: DUP1 00000119: PUSH4 0x78446bc1 0000011e: EQ 0000011f: PUSH2 0x0598 00000122: JUMPI 00000123: PUSH2 0x015f 00000126: JUMP 00000127: JUMPDEST 00000128: DUP1 00000129: PUSH4 0x12a3bbe3 0000012e: EQ 0000012f: PUSH2 0x0164 00000132: JUMPI 00000133: DUP1 00000134: PUSH4 0x1766486d 00000139: EQ 0000013a: PUSH2 0x0235 0000013d: JUMPI 0000013e: DUP1 0000013f: PUSH4 0x1f98ade3 00000144: EQ 00000145: PUSH2 0x0264 00000148: JUMPI 00000149: DUP1 0000014a: PUSH4 0x20153c38 0000014f: EQ 00000150: PUSH2 0x0292 00000153: JUMPI 00000154: DUP1 00000155: PUSH4 0x2321af6a 0000015a: EQ 0000015b: PUSH2 0x036d 0000015e: JUMPI 0000015f: JUMPDEST 00000160: PUSH1 0x00 00000162: DUP1 00000163: REVERT 00000164: JUMPDEST 00000165: PUSH2 0x0233 00000168: PUSH1 0x04 0000016a: DUP1 0000016b: CALLDATASIZE 0000016c: SUB 0000016d: PUSH1 0x60 0000016f: DUP2 00000170: LT 00000171: ISZERO 00000172: PUSH2 0x017a 00000175: JUMPI 00000176: PUSH1 0x00 00000178: DUP1 00000179: REVERT 0000017a: JUMPDEST 0000017b: DUP2 0000017c: ADD 0000017d: SWAP1 0000017e: PUSH1 0x20 00000180: DUP2 00000181: ADD 00000182: DUP2 00000183: CALLDATALOAD 00000184: PUSH5 0x0100000000 0000018a: DUP2 0000018b: GT 0000018c: ISZERO 0000018d: PUSH2 0x0195 00000190: JUMPI 00000191: PUSH1 0x00 00000193: DUP1 00000194: REVERT 00000195: JUMPDEST 00000196: DUP3 00000197: ADD 00000198: DUP4 00000199: PUSH1 0x20 0000019b: DUP3 0000019c: ADD 0000019d: GT 0000019e: ISZERO 0000019f: PUSH2 0x01a7 000001a2: JUMPI 000001a3: PUSH1 0x00 000001a5: DUP1 000001a6: REVERT 000001a7: JUMPDEST 000001a8: DUP1 000001a9: CALLDATALOAD 000001aa: SWAP1 000001ab: PUSH1 0x20 000001ad: ADD 000001ae: SWAP2 000001af: DUP5 000001b0: PUSH1 0x20 000001b2: DUP4 000001b3: MUL 000001b4: DUP5 000001b5: ADD 000001b6: GT 000001b7: PUSH5 0x0100000000 000001bd: DUP4 000001be: GT 000001bf: OR 000001c0: ISZERO 000001c1: PUSH2 0x01c9 000001c4: JUMPI 000001c5: PUSH1 0x00 000001c7: DUP1 000001c8: REVERT 000001c9: JUMPDEST 000001ca: SWAP2 000001cb: SWAP4 000001cc: SWAP1 000001cd: SWAP3 000001ce: PUSH1 0x01 000001d0: PUSH1 0xa0 000001d2: PUSH1 0x02 000001d4: EXP 000001d5: SUB 000001d6: DUP4 000001d7: CALLDATALOAD 000001d8: AND 000001d9: SWAP3 000001da: PUSH1 0x40 000001dc: DUP2 000001dd: ADD 000001de: SWAP1 000001df: PUSH1 0x20 000001e1: ADD 000001e2: CALLDATALOAD 000001e3: PUSH5 0x0100000000 000001e9: DUP2 000001ea: GT 000001eb: ISZERO 000001ec: PUSH2 0x01f4 000001ef: JUMPI 000001f0: PUSH1 0x00 000001f2: DUP1 000001f3: REVERT 000001f4: JUMPDEST 000001f5: DUP3 000001f6: ADD 000001f7: DUP4 000001f8: PUSH1 0x20 000001fa: DUP3 000001fb: ADD 000001fc: GT 000001fd: ISZERO 000001fe: PUSH2 0x0206 00000201: JUMPI 00000202: PUSH1 0x00 00000204: DUP1 00000205: REVERT 00000206: JUMPDEST 00000207: DUP1 00000208: CALLDATALOAD 00000209: SWAP1 0000020a: PUSH1 0x20 0000020c: ADD 0000020d: SWAP2 0000020e: DUP5 0000020f: PUSH1 0x20 00000211: DUP4 00000212: MUL 00000213: DUP5 00000214: ADD 00000215: GT 00000216: PUSH5 0x0100000000 0000021c: DUP4 0000021d: GT 0000021e: OR 0000021f: ISZERO 00000220: PUSH2 0x0228 00000223: JUMPI 00000224: PUSH1 0x00 00000226: DUP1 00000227: REVERT 00000228: JUMPDEST 00000229: POP 0000022a: SWAP1 0000022b: SWAP3 0000022c: POP 0000022d: SWAP1 0000022e: POP 0000022f: PUSH2 0x0791 00000232: JUMP 00000233: JUMPDEST 00000234: STOP 00000235: JUMPDEST 00000236: PUSH2 0x0252 00000239: PUSH1 0x04 0000023b: DUP1 0000023c: CALLDATASIZE 0000023d: SUB 0000023e: PUSH1 0x20 00000240: DUP2 00000241: LT 00000242: ISZERO 00000243: PUSH2 0x024b 00000246: JUMPI 00000247: PUSH1 0x00 00000249: DUP1 0000024a: REVERT 0000024b: JUMPDEST 0000024c: POP 0000024d: CALLDATALOAD 0000024e: PUSH2 0x08b7 00000251: JUMP 00000252: JUMPDEST 00000253: PUSH1 0x40 00000255: DUP1 00000256: MLOAD 00000257: SWAP2 00000258: DUP3 00000259: MSTORE 0000025a: MLOAD 0000025b: SWAP1 0000025c: DUP2 0000025d: SWAP1 0000025e: SUB 0000025f: PUSH1 0x20 00000261: ADD 00000262: SWAP1 00000263: RETURN 00000264: JUMPDEST 00000265: PUSH2 0x0252 00000268: PUSH1 0x04 0000026a: DUP1 0000026b: CALLDATASIZE 0000026c: SUB 0000026d: PUSH1 0x40 0000026f: DUP2 00000270: LT 00000271: ISZERO 00000272: PUSH2 0x027a 00000275: JUMPI 00000276: PUSH1 0x00 00000278: DUP1 00000279: REVERT 0000027a: JUMPDEST 0000027b: POP 0000027c: PUSH1 0x01 0000027e: PUSH1 0xa0 00000280: PUSH1 0x02 00000282: EXP 00000283: SUB 00000284: DUP2 00000285: CALLDATALOAD 00000286: DUP2 00000287: AND 00000288: SWAP2 00000289: PUSH1 0x20 0000028b: ADD 0000028c: CALLDATALOAD 0000028d: AND 0000028e: PUSH2 0x08c9 00000291: JUMP 00000292: JUMPDEST 00000293: PUSH2 0x0233 00000296: PUSH1 0x04 00000298: DUP1 00000299: CALLDATASIZE 0000029a: SUB 0000029b: PUSH1 0x80 0000029d: DUP2 0000029e: LT 0000029f: ISZERO 000002a0: PUSH2 0x02a8 000002a3: JUMPI 000002a4: PUSH1 0x00 000002a6: DUP1 000002a7: REVERT 000002a8: JUMPDEST 000002a9: DUP2 000002aa: ADD 000002ab: SWAP1 000002ac: PUSH1 0x20 000002ae: DUP2 000002af: ADD 000002b0: DUP2 000002b1: CALLDATALOAD 000002b2: PUSH5 0x0100000000 000002b8: DUP2 000002b9: GT 000002ba: ISZERO 000002bb: PUSH2 0x02c3 000002be: JUMPI 000002bf: PUSH1 0x00 000002c1: DUP1 000002c2: REVERT 000002c3: JUMPDEST 000002c4: DUP3 000002c5: ADD 000002c6: DUP4 000002c7: PUSH1 0x20 000002c9: DUP3 000002ca: ADD 000002cb: GT 000002cc: ISZERO 000002cd: PUSH2 0x02d5 000002d0: JUMPI 000002d1: PUSH1 0x00 000002d3: DUP1 000002d4: REVERT 000002d5: JUMPDEST 000002d6: DUP1 000002d7: CALLDATALOAD 000002d8: SWAP1 000002d9: PUSH1 0x20 000002db: ADD 000002dc: SWAP2 000002dd: DUP5 000002de: PUSH1 0x20 000002e0: DUP4 000002e1: MUL 000002e2: DUP5 000002e3: ADD 000002e4: GT 000002e5: PUSH5 0x0100000000 000002eb: DUP4 000002ec: GT 000002ed: OR 000002ee: ISZERO 000002ef: PUSH2 0x02f7 000002f2: JUMPI 000002f3: PUSH1 0x00 000002f5: DUP1 000002f6: REVERT 000002f7: JUMPDEST 000002f8: SWAP2 000002f9: SWAP4 000002fa: SWAP1 000002fb: SWAP3 000002fc: PUSH1 0x01 000002fe: PUSH1 0xa0 00000300: PUSH1 0x02 00000302: EXP 00000303: SUB 00000304: DUP4 00000305: CALLDATALOAD 00000306: DUP2 00000307: AND 00000308: SWAP4 00000309: PUSH1 0x20 0000030b: DUP2 0000030c: ADD 0000030d: CALLDATALOAD 0000030e: SWAP1 0000030f: SWAP2 00000310: AND 00000311: SWAP3 00000312: SWAP2 00000313: SWAP1 00000314: PUSH1 0x60 00000316: DUP2 00000317: ADD 00000318: SWAP1 00000319: PUSH1 0x40 0000031b: ADD 0000031c: CALLDATALOAD 0000031d: PUSH5 0x0100000000 00000323: DUP2 00000324: GT 00000325: ISZERO 00000326: PUSH2 0x032e 00000329: JUMPI 0000032a: PUSH1 0x00 0000032c: DUP1 0000032d: REVERT 0000032e: JUMPDEST 0000032f: DUP3 00000330: ADD 00000331: DUP4 00000332: PUSH1 0x20 00000334: DUP3 00000335: ADD 00000336: GT 00000337: ISZERO 00000338: PUSH2 0x0340 0000033b: JUMPI 0000033c: PUSH1 0x00 0000033e: DUP1 0000033f: REVERT 00000340: JUMPDEST 00000341: DUP1 00000342: CALLDATALOAD 00000343: SWAP1 00000344: PUSH1 0x20 00000346: ADD 00000347: SWAP2 00000348: DUP5 00000349: PUSH1 0x20 0000034b: DUP4 0000034c: MUL 0000034d: DUP5 0000034e: ADD 0000034f: GT 00000350: PUSH5 0x0100000000 00000356: DUP4 00000357: GT 00000358: OR 00000359: ISZERO 0000035a: PUSH2 0x0362 0000035d: JUMPI 0000035e: PUSH1 0x00 00000360: DUP1 00000361: REVERT 00000362: JUMPDEST 00000363: POP 00000364: SWAP1 00000365: SWAP3 00000366: POP 00000367: SWAP1 00000368: POP 00000369: PUSH2 0x08f6 0000036c: JUMP 0000036d: JUMPDEST 0000036e: PUSH2 0x0233 00000371: PUSH1 0x04 00000373: DUP1 00000374: CALLDATASIZE 00000375: SUB 00000376: PUSH1 0x60 00000378: DUP2 00000379: LT 0000037a: ISZERO 0000037b: PUSH2 0x0383 0000037e: JUMPI 0000037f: PUSH1 0x00 00000381: DUP1 00000382: REVERT 00000383: JUMPDEST 00000384: DUP2 00000385: ADD 00000386: SWAP1 00000387: PUSH1 0x20 00000389: DUP2 0000038a: ADD 0000038b: DUP2 0000038c: CALLDATALOAD 0000038d: PUSH5 0x0100000000 00000393: DUP2 00000394: GT 00000395: ISZERO 00000396: PUSH2 0x039e 00000399: JUMPI 0000039a: PUSH1 0x00 0000039c: DUP1 0000039d: REVERT 0000039e: JUMPDEST 0000039f: DUP3 000003a0: ADD 000003a1: DUP4 000003a2: PUSH1 0x20 000003a4: DUP3 000003a5: ADD 000003a6: GT 000003a7: ISZERO 000003a8: PUSH2 0x03b0 000003ab: JUMPI 000003ac: PUSH1 0x00 000003ae: DUP1 000003af: REVERT 000003b0: JUMPDEST 000003b1: DUP1 000003b2: CALLDATALOAD 000003b3: SWAP1 000003b4: PUSH1 0x20 000003b6: ADD 000003b7: SWAP2 000003b8: DUP5 000003b9: PUSH1 0x20 000003bb: DUP4 000003bc: MUL 000003bd: DUP5 000003be: ADD 000003bf: GT 000003c0: PUSH5 0x0100000000 000003c6: DUP4 000003c7: GT 000003c8: OR 000003c9: ISZERO 000003ca: PUSH2 0x03d2 000003cd: JUMPI 000003ce: PUSH1 0x00 000003d0: DUP1 000003d1: REVERT 000003d2: JUMPDEST 000003d3: SWAP2 000003d4: SWAP4 000003d5: SWAP1 000003d6: SWAP3 000003d7: PUSH1 0x01 000003d9: PUSH1 0xa0 000003db: PUSH1 0x02 000003dd: EXP 000003de: SUB 000003df: DUP4 000003e0: CALLDATALOAD 000003e1: AND 000003e2: SWAP3 000003e3: PUSH1 0x40 000003e5: DUP2 000003e6: ADD 000003e7: SWAP1 000003e8: PUSH1 0x20 000003ea: ADD 000003eb: CALLDATALOAD 000003ec: PUSH5 0x0100000000 000003f2: DUP2 000003f3: GT 000003f4: ISZERO 000003f5: PUSH2 0x03fd 000003f8: JUMPI 000003f9: PUSH1 0x00 000003fb: DUP1 000003fc: REVERT 000003fd: JUMPDEST 000003fe: DUP3 000003ff: ADD 00000400: DUP4 00000401: PUSH1 0x20 00000403: DUP3 00000404: ADD 00000405: GT 00000406: ISZERO 00000407: PUSH2 0x040f 0000040a: JUMPI 0000040b: PUSH1 0x00 0000040d: DUP1 0000040e: REVERT 0000040f: JUMPDEST 00000410: DUP1 00000411: CALLDATALOAD 00000412: SWAP1 00000413: PUSH1 0x20 00000415: ADD 00000416: SWAP2 00000417: DUP5 00000418: PUSH1 0x20 0000041a: DUP4 0000041b: MUL 0000041c: DUP5 0000041d: ADD 0000041e: GT 0000041f: PUSH5 0x0100000000 00000425: DUP4 00000426: GT 00000427: OR 00000428: ISZERO 00000429: PUSH2 0x0431 0000042c: JUMPI 0000042d: PUSH1 0x00 0000042f: DUP1 00000430: REVERT 00000431: JUMPDEST 00000432: POP 00000433: SWAP1 00000434: SWAP3 00000435: POP 00000436: SWAP1 00000437: POP 00000438: PUSH2 0x0a1e 0000043b: JUMP 0000043c: JUMPDEST 0000043d: PUSH2 0x0233 00000440: PUSH1 0x04 00000442: DUP1 00000443: CALLDATASIZE 00000444: SUB 00000445: PUSH1 0x60 00000447: DUP2 00000448: LT 00000449: ISZERO 0000044a: PUSH2 0x0452 0000044d: JUMPI 0000044e: PUSH1 0x00 00000450: DUP1 00000451: REVERT 00000452: JUMPDEST 00000453: DUP2 00000454: ADD 00000455: SWAP1 00000456: PUSH1 0x20 00000458: DUP2 00000459: ADD 0000045a: DUP2 0000045b: CALLDATALOAD 0000045c: PUSH5 0x0100000000 00000462: DUP2 00000463: GT 00000464: ISZERO 00000465: PUSH2 0x046d 00000468: JUMPI 00000469: PUSH1 0x00 0000046b: DUP1 0000046c: REVERT 0000046d: JUMPDEST 0000046e: DUP3 0000046f: ADD 00000470: DUP4 00000471: PUSH1 0x20 00000473: DUP3 00000474: ADD 00000475: GT 00000476: ISZERO 00000477: PUSH2 0x047f 0000047a: JUMPI 0000047b: PUSH1 0x00 0000047d: DUP1 0000047e: REVERT 0000047f: JUMPDEST 00000480: DUP1 00000481: CALLDATALOAD 00000482: SWAP1 00000483: PUSH1 0x20 00000485: ADD 00000486: SWAP2 00000487: DUP5 00000488: PUSH1 0x20 0000048a: DUP4 0000048b: MUL 0000048c: DUP5 0000048d: ADD 0000048e: GT 0000048f: PUSH5 0x0100000000 00000495: DUP4 00000496: GT 00000497: OR 00000498: ISZERO 00000499: PUSH2 0x04a1 0000049c: JUMPI 0000049d: PUSH1 0x00 0000049f: DUP1 000004a0: REVERT 000004a1: JUMPDEST 000004a2: SWAP2 000004a3: SWAP4 000004a4: SWAP1 000004a5: SWAP3 000004a6: PUSH1 0x01 000004a8: PUSH1 0xa0 000004aa: PUSH1 0x02 000004ac: EXP 000004ad: SUB 000004ae: DUP4 000004af: CALLDATALOAD 000004b0: AND 000004b1: SWAP3 000004b2: PUSH1 0x40 000004b4: DUP2 000004b5: ADD 000004b6: SWAP1 000004b7: PUSH1 0x20 000004b9: ADD 000004ba: CALLDATALOAD 000004bb: PUSH5 0x0100000000 000004c1: DUP2 000004c2: GT 000004c3: ISZERO 000004c4: PUSH2 0x04cc 000004c7: JUMPI 000004c8: PUSH1 0x00 000004ca: DUP1 000004cb: REVERT 000004cc: JUMPDEST 000004cd: DUP3 000004ce: ADD 000004cf: DUP4 000004d0: PUSH1 0x20 000004d2: DUP3 000004d3: ADD 000004d4: GT 000004d5: ISZERO 000004d6: PUSH2 0x04de 000004d9: JUMPI 000004da: PUSH1 0x00 000004dc: DUP1 000004dd: REVERT 000004de: JUMPDEST 000004df: DUP1 000004e0: CALLDATALOAD 000004e1: SWAP1 000004e2: PUSH1 0x20 000004e4: ADD 000004e5: SWAP2 000004e6: DUP5 000004e7: PUSH1 0x20 000004e9: DUP4 000004ea: MUL 000004eb: DUP5 000004ec: ADD 000004ed: GT 000004ee: PUSH5 0x0100000000 000004f4: DUP4 000004f5: GT 000004f6: OR 000004f7: ISZERO 000004f8: PUSH2 0x0500 000004fb: JUMPI 000004fc: PUSH1 0x00 000004fe: DUP1 000004ff: REVERT 00000500: JUMPDEST 00000501: POP 00000502: SWAP1 00000503: SWAP3 00000504: POP 00000505: SWAP1 00000506: POP 00000507: PUSH2 0x0b3b 0000050a: JUMP 0000050b: JUMPDEST 0000050c: PUSH2 0x0233 0000050f: PUSH1 0x04 00000511: DUP1 00000512: CALLDATASIZE 00000513: SUB 00000514: PUSH1 0x20 00000516: DUP2 00000517: LT 00000518: ISZERO 00000519: PUSH2 0x0521 0000051c: JUMPI 0000051d: PUSH1 0x00 0000051f: DUP1 00000520: REVERT 00000521: JUMPDEST 00000522: POP 00000523: CALLDATALOAD 00000524: PUSH1 0x01 00000526: PUSH1 0xa0 00000528: PUSH1 0x02 0000052a: EXP 0000052b: SUB 0000052c: AND 0000052d: PUSH2 0x0c58 00000530: JUMP 00000531: JUMPDEST 00000532: PUSH2 0x054e 00000535: PUSH1 0x04 00000537: DUP1 00000538: CALLDATASIZE 00000539: SUB 0000053a: PUSH1 0x20 0000053c: DUP2 0000053d: LT 0000053e: ISZERO 0000053f: PUSH2 0x0547 00000542: JUMPI 00000543: PUSH1 0x00 00000545: DUP1 00000546: REVERT 00000547: JUMPDEST 00000548: POP 00000549: CALLDATALOAD 0000054a: PUSH2 0x0f82 0000054d: JUMP 0000054e: JUMPDEST 0000054f: PUSH1 0x40 00000551: DUP1 00000552: MLOAD 00000553: PUSH1 0x01 00000555: PUSH1 0xa0 00000557: PUSH1 0x02 00000559: EXP 0000055a: SUB 0000055b: SWAP1 0000055c: SWAP3 0000055d: AND 0000055e: DUP3 0000055f: MSTORE 00000560: MLOAD 00000561: SWAP1 00000562: DUP2 00000563: SWAP1 00000564: SUB 00000565: PUSH1 0x20 00000567: ADD 00000568: SWAP1 00000569: RETURN 0000056a: JUMPDEST 0000056b: PUSH2 0x0233 0000056e: PUSH1 0x04 00000570: DUP1 00000571: CALLDATASIZE 00000572: SUB 00000573: PUSH1 0x20 00000575: DUP2 00000576: LT 00000577: ISZERO 00000578: PUSH2 0x0580 0000057b: JUMPI 0000057c: PUSH1 0x00 0000057e: DUP1 0000057f: REVERT 00000580: JUMPDEST 00000581: POP 00000582: CALLDATALOAD 00000583: PUSH1 0x01 00000585: PUSH1 0xa0 00000587: PUSH1 0x02 00000589: EXP 0000058a: SUB 0000058b: AND 0000058c: PUSH2 0x0fa9 0000058f: JUMP 00000590: JUMPDEST 00000591: PUSH2 0x0233 00000594: PUSH2 0x10f8 00000597: JUMP 00000598: JUMPDEST 00000599: PUSH2 0x0252 0000059c: PUSH2 0x1160 0000059f: JUMP 000005a0: JUMPDEST 000005a1: PUSH2 0x0233 000005a4: PUSH1 0x04 000005a6: DUP1 000005a7: CALLDATASIZE 000005a8: SUB 000005a9: PUSH1 0x60 000005ab: DUP2 000005ac: LT 000005ad: ISZERO 000005ae: PUSH2 0x05b6 000005b1: JUMPI 000005b2: PUSH1 0x00 000005b4: DUP1 000005b5: REVERT 000005b6: JUMPDEST 000005b7: POP 000005b8: PUSH1 0x01 000005ba: PUSH1 0xa0 000005bc: PUSH1 0x02 000005be: EXP 000005bf: SUB 000005c0: DUP2 000005c1: CALLDATALOAD 000005c2: DUP2 000005c3: AND 000005c4: SWAP2 000005c5: PUSH1 0x20 000005c7: DUP2 000005c8: ADD 000005c9: CALLDATALOAD 000005ca: SWAP1 000005cb: SWAP2 000005cc: AND 000005cd: SWAP1 000005ce: PUSH1 0x40 000005d0: ADD 000005d1: CALLDATALOAD 000005d2: PUSH2 0x1166 000005d5: JUMP 000005d6: JUMPDEST 000005d7: PUSH2 0x054e 000005da: PUSH2 0x1286 000005dd: JUMP 000005de: JUMPDEST 000005df: PUSH2 0x05e6 000005e2: PUSH2 0x1296 000005e5: JUMP 000005e6: JUMPDEST 000005e7: PUSH1 0x40 000005e9: DUP1 000005ea: MLOAD 000005eb: SWAP2 000005ec: ISZERO 000005ed: ISZERO 000005ee: DUP3 000005ef: MSTORE 000005f0: MLOAD 000005f1: SWAP1 000005f2: DUP2 000005f3: SWAP1 000005f4: SUB 000005f5: PUSH1 0x20 000005f7: ADD 000005f8: SWAP1 000005f9: RETURN 000005fa: JUMPDEST 000005fb: PUSH2 0x0233 000005fe: PUSH1 0x04 00000600: DUP1 00000601: CALLDATASIZE 00000602: SUB 00000603: PUSH1 0x20 00000605: DUP2 00000606: LT 00000607: ISZERO 00000608: PUSH2 0x0610 0000060b: JUMPI 0000060c: PUSH1 0x00 0000060e: DUP1 0000060f: REVERT 00000610: JUMPDEST 00000611: POP 00000612: CALLDATALOAD 00000613: PUSH2 0x12a7 00000616: JUMP 00000617: JUMPDEST 00000618: PUSH2 0x0233 0000061b: PUSH1 0x04 0000061d: DUP1 0000061e: CALLDATASIZE 0000061f: SUB 00000620: PUSH1 0x80 00000622: DUP2 00000623: LT 00000624: ISZERO 00000625: PUSH2 0x062d 00000628: JUMPI 00000629: PUSH1 0x00 0000062b: DUP1 0000062c: REVERT 0000062d: JUMPDEST 0000062e: POP 0000062f: PUSH1 0x01 00000631: PUSH1 0xa0 00000633: PUSH1 0x02 00000635: EXP 00000636: SUB 00000637: DUP2 00000638: CALLDATALOAD 00000639: DUP2 0000063a: AND 0000063b: SWAP2 0000063c: PUSH1 0x20 0000063e: DUP2 0000063f: ADD 00000640: CALLDATALOAD 00000641: DUP3 00000642: AND 00000643: SWAP2 00000644: PUSH1 0x40 00000646: DUP3 00000647: ADD 00000648: CALLDATALOAD 00000649: AND 0000064a: SWAP1 0000064b: PUSH1 0x60 0000064d: ADD 0000064e: CALLDATALOAD 0000064f: PUSH2 0x1300 00000652: JUMP 00000653: JUMPDEST 00000654: PUSH2 0x05e6 00000657: PUSH1 0x04 00000659: DUP1 0000065a: CALLDATASIZE 0000065b: SUB 0000065c: PUSH1 0x20 0000065e: DUP2 0000065f: LT 00000660: ISZERO 00000661: PUSH2 0x0669 00000664: JUMPI 00000665: PUSH1 0x00 00000667: DUP1 00000668: REVERT 00000669: JUMPDEST 0000066a: POP 0000066b: CALLDATALOAD 0000066c: PUSH1 0x01 0000066e: PUSH1 0xa0 00000670: PUSH1 0x02 00000672: EXP 00000673: SUB 00000674: AND 00000675: PUSH2 0x145d 00000678: JUMP 00000679: JUMPDEST 0000067a: PUSH2 0x0233 0000067d: PUSH1 0x04 0000067f: DUP1 00000680: CALLDATASIZE 00000681: SUB 00000682: PUSH1 0x60 00000684: DUP2 00000685: LT 00000686: ISZERO 00000687: PUSH2 0x068f 0000068a: JUMPI 0000068b: PUSH1 0x00 0000068d: DUP1 0000068e: REVERT 0000068f: JUMPDEST 00000690: POP 00000691: PUSH1 0x01 00000693: PUSH1 0xa0 00000695: PUSH1 0x02 00000697: EXP 00000698: SUB 00000699: DUP2 0000069a: CALLDATALOAD 0000069b: DUP2 0000069c: AND 0000069d: SWAP2 0000069e: PUSH1 0x20 000006a0: DUP2 000006a1: ADD 000006a2: CALLDATALOAD 000006a3: SWAP1 000006a4: SWAP2 000006a5: AND 000006a6: SWAP1 000006a7: PUSH1 0x40 000006a9: ADD 000006aa: CALLDATALOAD 000006ab: PUSH2 0x1472 000006ae: JUMP 000006af: JUMPDEST 000006b0: PUSH2 0x0252 000006b3: PUSH1 0x04 000006b5: DUP1 000006b6: CALLDATASIZE 000006b7: SUB 000006b8: PUSH1 0x40 000006ba: DUP2 000006bb: LT 000006bc: ISZERO 000006bd: PUSH2 0x06c5 000006c0: JUMPI 000006c1: PUSH1 0x00 000006c3: DUP1 000006c4: REVERT 000006c5: JUMPDEST 000006c6: POP 000006c7: PUSH1 0x01 000006c9: PUSH1 0xa0 000006cb: PUSH1 0x02 000006cd: EXP 000006ce: SUB 000006cf: DUP2 000006d0: CALLDATALOAD 000006d1: DUP2 000006d2: AND 000006d3: SWAP2 000006d4: PUSH1 0x20 000006d6: ADD 000006d7: CALLDATALOAD 000006d8: AND 000006d9: PUSH2 0x14ff 000006dc: JUMP 000006dd: JUMPDEST 000006de: PUSH2 0x0233 000006e1: PUSH1 0x04 000006e3: DUP1 000006e4: CALLDATASIZE 000006e5: SUB 000006e6: PUSH1 0x60 000006e8: DUP2 000006e9: LT 000006ea: ISZERO 000006eb: PUSH2 0x06f3 000006ee: JUMPI 000006ef: PUSH1 0x00 000006f1: DUP1 000006f2: REVERT 000006f3: JUMPDEST 000006f4: POP 000006f5: PUSH1 0x01 000006f7: PUSH1 0xa0 000006f9: PUSH1 0x02 000006fb: EXP 000006fc: SUB 000006fd: DUP2 000006fe: CALLDATALOAD 000006ff: DUP2 00000700: AND 00000701: SWAP2 00000702: PUSH1 0x20 00000704: DUP2 00000705: ADD 00000706: CALLDATALOAD 00000707: SWAP1 00000708: SWAP2 00000709: AND 0000070a: SWAP1 0000070b: PUSH1 0x40 0000070d: ADD 0000070e: CALLDATALOAD 0000070f: PUSH2 0x151c 00000712: JUMP 00000713: JUMPDEST 00000714: PUSH2 0x071b 00000717: PUSH2 0x17bc 0000071a: JUMP 0000071b: JUMPDEST 0000071c: PUSH1 0x40 0000071e: DUP1 0000071f: MLOAD 00000720: PUSH1 0x20 00000722: DUP1 00000723: DUP3 00000724: MSTORE 00000725: DUP4 00000726: MLOAD 00000727: DUP2 00000728: DUP4 00000729: ADD 0000072a: MSTORE 0000072b: DUP4 0000072c: MLOAD 0000072d: SWAP2 0000072e: SWAP3 0000072f: DUP4 00000730: SWAP3 00000731: SWAP1 00000732: DUP4 00000733: ADD 00000734: SWAP2 00000735: DUP6 00000736: DUP2 00000737: ADD 00000738: SWAP2 00000739: MUL 0000073a: DUP1 0000073b: DUP4 0000073c: DUP4 0000073d: PUSH1 0x00 0000073f: JUMPDEST 00000740: DUP4 00000741: DUP2 00000742: LT 00000743: ISZERO 00000744: PUSH2 0x0757 00000747: JUMPI 00000748: DUP2 00000749: DUP2 0000074a: ADD 0000074b: MLOAD 0000074c: DUP4 0000074d: DUP3 0000074e: ADD 0000074f: MSTORE 00000750: PUSH1 0x20 00000752: ADD 00000753: PUSH2 0x073f 00000756: JUMP 00000757: JUMPDEST 00000758: POP 00000759: POP 0000075a: POP 0000075b: POP 0000075c: SWAP1 0000075d: POP 0000075e: ADD 0000075f: SWAP3 00000760: POP 00000761: POP 00000762: POP 00000763: PUSH1 0x40 00000765: MLOAD 00000766: DUP1 00000767: SWAP2 00000768: SUB 00000769: SWAP1 0000076a: RETURN 0000076b: JUMPDEST 0000076c: PUSH2 0x0233 0000076f: PUSH1 0x04 00000771: DUP1 00000772: CALLDATASIZE 00000773: SUB 00000774: PUSH1 0x20 00000776: DUP2 00000777: LT 00000778: ISZERO 00000779: PUSH2 0x0781 0000077c: JUMPI 0000077d: PUSH1 0x00 0000077f: DUP1 00000780: REVERT 00000781: JUMPDEST 00000782: POP 00000783: CALLDATALOAD 00000784: PUSH1 0x01 00000786: PUSH1 0xa0 00000788: PUSH1 0x02 0000078a: EXP 0000078b: SUB 0000078c: AND 0000078d: PUSH2 0x181e 00000790: JUMP 00000791: JUMPDEST 00000792: CALLER 00000793: PUSH1 0x00 00000795: SWAP1 00000796: DUP2 00000797: MSTORE 00000798: PUSH1 0x03 0000079a: PUSH1 0x20 0000079c: MSTORE 0000079d: PUSH1 0x40 0000079f: SWAP1 000007a0: KECCAK256 000007a1: SLOAD 000007a2: PUSH1 0xff 000007a4: AND 000007a5: PUSH2 0x07e2 000007a8: JUMPI 000007a9: PUSH1 0x40 000007ab: MLOAD 000007ac: PUSH1 0xe5 000007ae: PUSH1 0x02 000007b0: EXP 000007b1: PUSH3 0x461bcd 000007b5: MUL 000007b6: DUP2 000007b7: MSTORE 000007b8: PUSH1 0x04 000007ba: ADD 000007bb: DUP1 000007bc: DUP1 000007bd: PUSH1 0x20 000007bf: ADD 000007c0: DUP3 000007c1: DUP2 000007c2: SUB 000007c3: DUP3 000007c4: MSTORE 000007c5: PUSH1 0x3f 000007c7: DUP2 000007c8: MSTORE 000007c9: PUSH1 0x20 000007cb: ADD 000007cc: DUP1 000007cd: PUSH2 0x1c93 000007d0: PUSH1 0x3f 000007d2: SWAP2 000007d3: CODECOPY 000007d4: PUSH1 0x40 000007d6: ADD 000007d7: SWAP2 000007d8: POP 000007d9: POP 000007da: PUSH1 0x40 000007dc: MLOAD 000007dd: DUP1 000007de: SWAP2 000007df: SUB 000007e0: SWAP1 000007e1: REVERT 000007e2: JUMPDEST 000007e3: DUP4 000007e4: DUP1 000007e5: PUSH2 0x0822 000007e8: JUMPI 000007e9: PUSH1 0x40 000007eb: MLOAD 000007ec: PUSH1 0xe5 000007ee: PUSH1 0x02 000007f0: EXP 000007f1: PUSH3 0x461bcd 000007f5: MUL 000007f6: DUP2 000007f7: MSTORE 000007f8: PUSH1 0x04 000007fa: ADD 000007fb: DUP1 000007fc: DUP1 000007fd: PUSH1 0x20 000007ff: ADD 00000800: DUP3 00000801: DUP2 00000802: SUB 00000803: DUP3 00000804: MSTORE 00000805: PUSH1 0x38 00000807: DUP2 00000808: MSTORE 00000809: PUSH1 0x20 0000080b: ADD 0000080c: DUP1 0000080d: PUSH2 0x1b5e 00000810: PUSH1 0x38 00000812: SWAP2 00000813: CODECOPY 00000814: PUSH1 0x40 00000816: ADD 00000817: SWAP2 00000818: POP 00000819: POP 0000081a: PUSH1 0x40 0000081c: MLOAD 0000081d: DUP1 0000081e: SWAP2 0000081f: SUB 00000820: SWAP1 00000821: REVERT 00000822: JUMPDEST 00000823: DUP1 00000824: DUP3 00000825: EQ 00000826: PUSH2 0x0863 00000829: JUMPI 0000082a: PUSH1 0x40 0000082c: MLOAD 0000082d: PUSH1 0xe5 0000082f: PUSH1 0x02 00000831: EXP 00000832: PUSH3 0x461bcd 00000836: MUL 00000837: DUP2 00000838: MSTORE 00000839: PUSH1 0x04 0000083b: ADD 0000083c: DUP1 0000083d: DUP1 0000083e: PUSH1 0x20 00000840: ADD 00000841: DUP3 00000842: DUP2 00000843: SUB 00000844: DUP3 00000845: MSTORE 00000846: PUSH1 0x46 00000848: DUP2 00000849: MSTORE 0000084a: PUSH1 0x20 0000084c: ADD 0000084d: DUP1 0000084e: PUSH2 0x1c10 00000851: PUSH1 0x46 00000853: SWAP2 00000854: CODECOPY 00000855: PUSH1 0x60 00000857: ADD 00000858: SWAP2 00000859: POP 0000085a: POP 0000085b: PUSH1 0x40 0000085d: MLOAD 0000085e: DUP1 0000085f: SWAP2 00000860: SUB 00000861: SWAP1 00000862: REVERT 00000863: JUMPDEST 00000864: PUSH1 0x00 00000866: JUMPDEST 00000867: DUP2 00000868: DUP2 00000869: LT 0000086a: ISZERO 0000086b: PUSH2 0x08ae 0000086e: JUMPI 0000086f: PUSH2 0x08a6 00000872: DUP8 00000873: DUP8 00000874: DUP4 00000875: DUP2 00000876: DUP2 00000877: LT 00000878: PUSH2 0x087d 0000087b: JUMPI 0000087c: INVALID 0000087d: JUMPDEST 0000087e: SWAP1 0000087f: POP 00000880: PUSH1 0x20 00000882: MUL 00000883: ADD 00000884: CALLDATALOAD 00000885: PUSH1 0x01 00000887: PUSH1 0xa0 00000889: PUSH1 0x02 0000088b: EXP 0000088c: SUB 0000088d: AND 0000088e: DUP7 0000088f: DUP7 00000890: DUP7 00000891: DUP6 00000892: DUP2 00000893: DUP2 00000894: LT 00000895: PUSH2 0x089a 00000898: JUMPI 00000899: INVALID 0000089a: JUMPDEST 0000089b: SWAP1 0000089c: POP 0000089d: PUSH1 0x20 0000089f: MUL 000008a0: ADD 000008a1: CALLDATALOAD 000008a2: PUSH2 0x1472 000008a5: JUMP 000008a6: JUMPDEST 000008a7: PUSH1 0x01 000008a9: ADD 000008aa: PUSH2 0x0866 000008ad: JUMP 000008ae: JUMPDEST 000008af: POP 000008b0: POP 000008b1: POP 000008b2: POP 000008b3: POP 000008b4: POP 000008b5: POP 000008b6: JUMP 000008b7: JUMPDEST 000008b8: PUSH1 0x02 000008ba: PUSH1 0x20 000008bc: MSTORE 000008bd: PUSH1 0x00 000008bf: SWAP1 000008c0: DUP2 000008c1: MSTORE 000008c2: PUSH1 0x40 000008c4: SWAP1 000008c5: KECCAK256 000008c6: SLOAD 000008c7: DUP2 000008c8: JUMP 000008c9: JUMPDEST 000008ca: PUSH1 0x01 000008cc: PUSH1 0xa0 000008ce: PUSH1 0x02 000008d0: EXP 000008d1: SUB 000008d2: DUP1 000008d3: DUP4 000008d4: AND 000008d5: PUSH1 0x00 000008d7: SWAP1 000008d8: DUP2 000008d9: MSTORE 000008da: PUSH1 0x05 000008dc: PUSH1 0x20 000008de: SWAP1 000008df: DUP2 000008e0: MSTORE 000008e1: PUSH1 0x40 000008e3: DUP1 000008e4: DUP4 000008e5: KECCAK256 000008e6: SWAP4 000008e7: DUP6 000008e8: AND 000008e9: DUP4 000008ea: MSTORE 000008eb: SWAP3 000008ec: SWAP1 000008ed: MSTORE 000008ee: KECCAK256 000008ef: SLOAD 000008f0: JUMPDEST 000008f1: SWAP3 000008f2: SWAP2 000008f3: POP 000008f4: POP 000008f5: JUMP 000008f6: JUMPDEST 000008f7: CALLER 000008f8: PUSH1 0x00 000008fa: SWAP1 000008fb: DUP2 000008fc: MSTORE 000008fd: PUSH1 0x03 000008ff: PUSH1 0x20 00000901: MSTORE 00000902: PUSH1 0x40 00000904: SWAP1 00000905: KECCAK256 00000906: SLOAD 00000907: PUSH1 0xff 00000909: AND 0000090a: PUSH2 0x0947 0000090d: JUMPI 0000090e: PUSH1 0x40 00000910: MLOAD 00000911: PUSH1 0xe5 00000913: PUSH1 0x02 00000915: EXP 00000916: PUSH3 0x461bcd 0000091a: MUL 0000091b: DUP2 0000091c: MSTORE 0000091d: PUSH1 0x04 0000091f: ADD 00000920: DUP1 00000921: DUP1 00000922: PUSH1 0x20 00000924: ADD 00000925: DUP3 00000926: DUP2 00000927: SUB 00000928: DUP3 00000929: MSTORE 0000092a: PUSH1 0x3f 0000092c: DUP2 0000092d: MSTORE 0000092e: PUSH1 0x20 00000930: ADD 00000931: DUP1 00000932: PUSH2 0x1c93 00000935: PUSH1 0x3f 00000937: SWAP2 00000938: CODECOPY 00000939: PUSH1 0x40 0000093b: ADD 0000093c: SWAP2 0000093d: POP 0000093e: POP 0000093f: PUSH1 0x40 00000941: MLOAD 00000942: DUP1 00000943: SWAP2 00000944: SUB 00000945: SWAP1 00000946: REVERT 00000947: JUMPDEST 00000948: DUP5 00000949: DUP1 0000094a: PUSH2 0x0987 0000094d: JUMPI 0000094e: PUSH1 0x40 00000950: MLOAD 00000951: PUSH1 0xe5 00000953: PUSH1 0x02 00000955: EXP 00000956: PUSH3 0x461bcd 0000095a: MUL 0000095b: DUP2 0000095c: MSTORE 0000095d: PUSH1 0x04 0000095f: ADD 00000960: DUP1 00000961: DUP1 00000962: PUSH1 0x20 00000964: ADD 00000965: DUP3 00000966: DUP2 00000967: SUB 00000968: DUP3 00000969: MSTORE 0000096a: PUSH1 0x34 0000096c: DUP2 0000096d: MSTORE 0000096e: PUSH1 0x20 00000970: ADD 00000971: DUP1 00000972: PUSH2 0x1cd2 00000975: PUSH1 0x34 00000977: SWAP2 00000978: CODECOPY 00000979: PUSH1 0x40 0000097b: ADD 0000097c: SWAP2 0000097d: POP 0000097e: POP 0000097f: PUSH1 0x40 00000981: MLOAD 00000982: DUP1 00000983: SWAP2 00000984: SUB 00000985: SWAP1 00000986: REVERT 00000987: JUMPDEST 00000988: DUP1 00000989: DUP3 0000098a: EQ 0000098b: PUSH2 0x09c8 0000098e: JUMPI 0000098f: PUSH1 0x40 00000991: MLOAD 00000992: PUSH1 0xe5 00000994: PUSH1 0x02 00000996: EXP 00000997: PUSH3 0x461bcd 0000099b: MUL 0000099c: DUP2 0000099d: MSTORE 0000099e: PUSH1 0x04 000009a0: ADD 000009a1: DUP1 000009a2: DUP1 000009a3: PUSH1 0x20 000009a5: ADD 000009a6: DUP3 000009a7: DUP2 000009a8: SUB 000009a9: DUP3 000009aa: MSTORE 000009ab: PUSH1 0x42 000009ad: DUP2 000009ae: MSTORE 000009af: PUSH1 0x20 000009b1: ADD 000009b2: DUP1 000009b3: PUSH2 0x1bce 000009b6: PUSH1 0x42 000009b8: SWAP2 000009b9: CODECOPY 000009ba: PUSH1 0x60 000009bc: ADD 000009bd: SWAP2 000009be: POP 000009bf: POP 000009c0: PUSH1 0x40 000009c2: MLOAD 000009c3: DUP1 000009c4: SWAP2 000009c5: SUB 000009c6: SWAP1 000009c7: REVERT 000009c8: JUMPDEST 000009c9: PUSH1 0x00 000009cb: JUMPDEST 000009cc: DUP2 000009cd: DUP2 000009ce: LT 000009cf: ISZERO 000009d0: PUSH2 0x0a14 000009d3: JUMPI 000009d4: PUSH2 0x0a0c 000009d7: DUP9 000009d8: DUP9 000009d9: DUP4 000009da: DUP2 000009db: DUP2 000009dc: LT 000009dd: PUSH2 0x09e2 000009e0: JUMPI 000009e1: INVALID 000009e2: JUMPDEST 000009e3: SWAP1 000009e4: POP 000009e5: PUSH1 0x20 000009e7: MUL 000009e8: ADD 000009e9: CALLDATALOAD 000009ea: PUSH1 0x01 000009ec: PUSH1 0xa0 000009ee: PUSH1 0x02 000009f0: EXP 000009f1: SUB 000009f2: AND 000009f3: DUP8 000009f4: DUP8 000009f5: DUP8 000009f6: DUP8 000009f7: DUP7 000009f8: DUP2 000009f9: DUP2 000009fa: LT 000009fb: PUSH2 0x0a00 000009fe: JUMPI 000009ff: INVALID 00000a00: JUMPDEST 00000a01: SWAP1 00000a02: POP 00000a03: PUSH1 0x20 00000a05: MUL 00000a06: ADD 00000a07: CALLDATALOAD 00000a08: PUSH2 0x1300 00000a0b: JUMP 00000a0c: JUMPDEST 00000a0d: PUSH1 0x01 00000a0f: ADD 00000a10: PUSH2 0x09cb 00000a13: JUMP 00000a14: JUMPDEST 00000a15: POP 00000a16: POP 00000a17: POP 00000a18: POP 00000a19: POP 00000a1a: POP 00000a1b: POP 00000a1c: POP 00000a1d: JUMP 00000a1e: JUMPDEST 00000a1f: CALLER 00000a20: PUSH1 0x00 00000a22: SWAP1 00000a23: DUP2 00000a24: MSTORE 00000a25: PUSH1 0x03 00000a27: PUSH1 0x20 00000a29: MSTORE 00000a2a: PUSH1 0x40 00000a2c: SWAP1 00000a2d: KECCAK256 00000a2e: SLOAD 00000a2f: PUSH1 0xff 00000a31: AND 00000a32: PUSH2 0x0a6f 00000a35: JUMPI 00000a36: PUSH1 0x40 00000a38: MLOAD 00000a39: PUSH1 0xe5 00000a3b: PUSH1 0x02 00000a3d: EXP 00000a3e: PUSH3 0x461bcd 00000a42: MUL 00000a43: DUP2 00000a44: MSTORE 00000a45: PUSH1 0x04 00000a47: ADD 00000a48: DUP1 00000a49: DUP1 00000a4a: PUSH1 0x20 00000a4c: ADD 00000a4d: DUP3 00000a4e: DUP2 00000a4f: SUB 00000a50: DUP3 00000a51: MSTORE 00000a52: PUSH1 0x3f 00000a54: DUP2 00000a55: MSTORE 00000a56: PUSH1 0x20 00000a58: ADD 00000a59: DUP1 00000a5a: PUSH2 0x1c93 00000a5d: PUSH1 0x3f 00000a5f: SWAP2 00000a60: CODECOPY 00000a61: PUSH1 0x40 00000a63: ADD 00000a64: SWAP2 00000a65: POP 00000a66: POP 00000a67: PUSH1 0x40 00000a69: MLOAD 00000a6a: DUP1 00000a6b: SWAP2 00000a6c: SUB 00000a6d: SWAP1 00000a6e: REVERT 00000a6f: JUMPDEST 00000a70: DUP4 00000a71: DUP1 00000a72: PUSH2 0x0aaf 00000a75: JUMPI 00000a76: PUSH1 0x40 00000a78: MLOAD 00000a79: PUSH1 0xe5 00000a7b: PUSH1 0x02 00000a7d: EXP 00000a7e: PUSH3 0x461bcd 00000a82: MUL 00000a83: DUP2 00000a84: MSTORE 00000a85: PUSH1 0x04 00000a87: ADD 00000a88: DUP1 00000a89: DUP1 00000a8a: PUSH1 0x20 00000a8c: ADD 00000a8d: DUP3 00000a8e: DUP2 00000a8f: SUB 00000a90: DUP3 00000a91: MSTORE 00000a92: PUSH1 0x2f 00000a94: DUP2 00000a95: MSTORE 00000a96: PUSH1 0x20 00000a98: ADD 00000a99: DUP1 00000a9a: PUSH2 0x1e81 00000a9d: PUSH1 0x2f 00000a9f: SWAP2 00000aa0: CODECOPY 00000aa1: PUSH1 0x40 00000aa3: ADD 00000aa4: SWAP2 00000aa5: POP 00000aa6: POP 00000aa7: PUSH1 0x40 00000aa9: MLOAD 00000aaa: DUP1 00000aab: SWAP2 00000aac: SUB 00000aad: SWAP1 00000aae: REVERT 00000aaf: JUMPDEST 00000ab0: DUP1 00000ab1: DUP3 00000ab2: EQ 00000ab3: PUSH2 0x0af0 00000ab6: JUMPI 00000ab7: PUSH1 0x40 00000ab9: MLOAD 00000aba: PUSH1 0xe5 00000abc: PUSH1 0x02 00000abe: EXP 00000abf: PUSH3 0x461bcd 00000ac3: MUL 00000ac4: DUP2 00000ac5: MSTORE 00000ac6: PUSH1 0x04 00000ac8: ADD 00000ac9: DUP1 00000aca: DUP1 00000acb: PUSH1 0x20 00000acd: ADD 00000ace: DUP3 00000acf: DUP2 00000ad0: SUB 00000ad1: DUP3 00000ad2: MSTORE 00000ad3: PUSH1 0x3d 00000ad5: DUP2 00000ad6: MSTORE 00000ad7: PUSH1 0x20 00000ad9: ADD 00000ada: DUP1 00000adb: PUSH2 0x1d3b 00000ade: PUSH1 0x3d 00000ae0: SWAP2 00000ae1: CODECOPY 00000ae2: PUSH1 0x40 00000ae4: ADD 00000ae5: SWAP2 00000ae6: POP 00000ae7: POP 00000ae8: PUSH1 0x40 00000aea: MLOAD 00000aeb: DUP1 00000aec: SWAP2 00000aed: SUB 00000aee: SWAP1 00000aef: REVERT 00000af0: JUMPDEST 00000af1: PUSH1 0x00 00000af3: JUMPDEST 00000af4: DUP2 00000af5: DUP2 00000af6: LT 00000af7: ISZERO 00000af8: PUSH2 0x08ae 00000afb: JUMPI 00000afc: PUSH2 0x0b33 00000aff: DUP8 00000b00: DUP8 00000b01: DUP4 00000b02: DUP2 00000b03: DUP2 00000b04: LT 00000b05: PUSH2 0x0b0a 00000b08: JUMPI 00000b09: INVALID 00000b0a: JUMPDEST 00000b0b: SWAP1 00000b0c: POP 00000b0d: PUSH1 0x20 00000b0f: MUL 00000b10: ADD 00000b11: CALLDATALOAD 00000b12: PUSH1 0x01 00000b14: PUSH1 0xa0 00000b16: PUSH1 0x02 00000b18: EXP 00000b19: SUB 00000b1a: AND 00000b1b: DUP7 00000b1c: DUP7 00000b1d: DUP7 00000b1e: DUP6 00000b1f: DUP2 00000b20: DUP2 00000b21: LT 00000b22: PUSH2 0x0b27 00000b25: JUMPI 00000b26: INVALID 00000b27: JUMPDEST 00000b28: SWAP1 00000b29: POP 00000b2a: PUSH1 0x20 00000b2c: MUL 00000b2d: ADD 00000b2e: CALLDATALOAD 00000b2f: PUSH2 0x151c 00000b32: JUMP 00000b33: JUMPDEST 00000b34: PUSH1 0x01 00000b36: ADD 00000b37: PUSH2 0x0af3 00000b3a: JUMP 00000b3b: JUMPDEST 00000b3c: CALLER 00000b3d: PUSH1 0x00 00000b3f: SWAP1 00000b40: DUP2 00000b41: MSTORE 00000b42: PUSH1 0x03 00000b44: PUSH1 0x20 00000b46: MSTORE 00000b47: PUSH1 0x40 00000b49: SWAP1 00000b4a: KECCAK256 00000b4b: SLOAD 00000b4c: PUSH1 0xff 00000b4e: AND 00000b4f: PUSH2 0x0b8c 00000b52: JUMPI 00000b53: PUSH1 0x40 00000b55: MLOAD 00000b56: PUSH1 0xe5 00000b58: PUSH1 0x02 00000b5a: EXP 00000b5b: PUSH3 0x461bcd 00000b5f: MUL 00000b60: DUP2 00000b61: MSTORE 00000b62: PUSH1 0x04 00000b64: ADD 00000b65: DUP1 00000b66: DUP1 00000b67: PUSH1 0x20 00000b69: ADD 00000b6a: DUP3 00000b6b: DUP2 00000b6c: SUB 00000b6d: DUP3 00000b6e: MSTORE 00000b6f: PUSH1 0x3f 00000b71: DUP2 00000b72: MSTORE 00000b73: PUSH1 0x20 00000b75: ADD 00000b76: DUP1 00000b77: PUSH2 0x1c93 00000b7a: PUSH1 0x3f 00000b7c: SWAP2 00000b7d: CODECOPY 00000b7e: PUSH1 0x40 00000b80: ADD 00000b81: SWAP2 00000b82: POP 00000b83: POP 00000b84: PUSH1 0x40 00000b86: MLOAD 00000b87: DUP1 00000b88: SWAP2 00000b89: SUB 00000b8a: SWAP1 00000b8b: REVERT 00000b8c: JUMPDEST 00000b8d: DUP4 00000b8e: DUP1 00000b8f: PUSH2 0x0bcc 00000b92: JUMPI 00000b93: PUSH1 0x40 00000b95: MLOAD 00000b96: PUSH1 0xe5 00000b98: PUSH1 0x02 00000b9a: EXP 00000b9b: PUSH3 0x461bcd 00000b9f: MUL 00000ba0: DUP2 00000ba1: MSTORE 00000ba2: PUSH1 0x04 00000ba4: ADD 00000ba5: DUP1 00000ba6: DUP1 00000ba7: PUSH1 0x20 00000ba9: ADD 00000baa: DUP3 00000bab: DUP2 00000bac: SUB 00000bad: DUP3 00000bae: MSTORE 00000baf: PUSH1 0x38 00000bb1: DUP2 00000bb2: MSTORE 00000bb3: PUSH1 0x20 00000bb5: ADD 00000bb6: DUP1 00000bb7: PUSH2 0x1b96 00000bba: PUSH1 0x38 00000bbc: SWAP2 00000bbd: CODECOPY 00000bbe: PUSH1 0x40 00000bc0: ADD 00000bc1: SWAP2 00000bc2: POP 00000bc3: POP 00000bc4: PUSH1 0x40 00000bc6: MLOAD 00000bc7: DUP1 00000bc8: SWAP2 00000bc9: SUB 00000bca: SWAP1 00000bcb: REVERT 00000bcc: JUMPDEST 00000bcd: DUP1 00000bce: DUP3 00000bcf: EQ 00000bd0: PUSH2 0x0c0d 00000bd3: JUMPI 00000bd4: PUSH1 0x40 00000bd6: MLOAD 00000bd7: PUSH1 0xe5 00000bd9: PUSH1 0x02 00000bdb: EXP 00000bdc: PUSH3 0x461bcd 00000be0: MUL 00000be1: DUP2 00000be2: MSTORE 00000be3: PUSH1 0x04 00000be5: ADD 00000be6: DUP1 00000be7: DUP1 00000be8: PUSH1 0x20 00000bea: ADD 00000beb: DUP3 00000bec: DUP2 00000bed: SUB 00000bee: DUP3 00000bef: MSTORE 00000bf0: PUSH1 0x46 00000bf2: DUP2 00000bf3: MSTORE 00000bf4: PUSH1 0x20 00000bf6: ADD 00000bf7: DUP1 00000bf8: PUSH2 0x1b18 00000bfb: PUSH1 0x46 00000bfd: SWAP2 00000bfe: CODECOPY 00000bff: PUSH1 0x60 00000c01: ADD 00000c02: SWAP2 00000c03: POP 00000c04: POP 00000c05: PUSH1 0x40 00000c07: MLOAD 00000c08: DUP1 00000c09: SWAP2 00000c0a: SUB 00000c0b: SWAP1 00000c0c: REVERT 00000c0d: JUMPDEST 00000c0e: PUSH1 0x00 00000c10: JUMPDEST 00000c11: DUP2 00000c12: DUP2 00000c13: LT 00000c14: ISZERO 00000c15: PUSH2 0x08ae 00000c18: JUMPI 00000c19: PUSH2 0x0c50 00000c1c: DUP8 00000c1d: DUP8 00000c1e: DUP4 00000c1f: DUP2 00000c20: DUP2 00000c21: LT 00000c22: PUSH2 0x0c27 00000c25: JUMPI 00000c26: INVALID 00000c27: JUMPDEST 00000c28: SWAP1 00000c29: POP 00000c2a: PUSH1 0x20 00000c2c: MUL 00000c2d: ADD 00000c2e: CALLDATALOAD 00000c2f: PUSH1 0x01 00000c31: PUSH1 0xa0 00000c33: PUSH1 0x02 00000c35: EXP 00000c36: SUB 00000c37: AND 00000c38: DUP7 00000c39: DUP7 00000c3a: DUP7 00000c3b: DUP6 00000c3c: DUP2 00000c3d: DUP2 00000c3e: LT 00000c3f: PUSH2 0x0c44 00000c42: JUMPI 00000c43: INVALID 00000c44: JUMPDEST 00000c45: SWAP1 00000c46: POP 00000c47: PUSH1 0x20 00000c49: MUL 00000c4a: ADD 00000c4b: CALLDATALOAD 00000c4c: PUSH2 0x1166 00000c4f: JUMP 00000c50: JUMPDEST 00000c51: PUSH1 0x01 00000c53: ADD 00000c54: PUSH2 0x0c10 00000c57: JUMP 00000c58: JUMPDEST 00000c59: PUSH2 0x0c60 00000c5c: PUSH2 0x1296 00000c5f: JUMP 00000c60: JUMPDEST 00000c61: PUSH2 0x0c69 00000c64: JUMPI 00000c65: PUSH1 0x00 00000c67: DUP1 00000c68: REVERT 00000c69: JUMPDEST 00000c6a: PUSH1 0x01 00000c6c: SLOAD 00000c6d: PUSH2 0x0d77 00000c70: JUMPI 00000c71: PUSH1 0x01 00000c73: PUSH1 0xa0 00000c75: PUSH1 0x02 00000c77: EXP 00000c78: SUB 00000c79: DUP2 00000c7a: AND 00000c7b: PUSH1 0x00 00000c7d: SWAP1 00000c7e: DUP2 00000c7f: MSTORE 00000c80: PUSH1 0x03 00000c82: PUSH1 0x20 00000c84: MSTORE 00000c85: PUSH1 0x40 00000c87: SWAP1 00000c88: KECCAK256 00000c89: SLOAD 00000c8a: PUSH1 0xff 00000c8c: AND 00000c8d: ISZERO 00000c8e: PUSH2 0x0ccb 00000c91: JUMPI 00000c92: PUSH1 0x40 00000c94: MLOAD 00000c95: PUSH1 0xe5 00000c97: PUSH1 0x02 00000c99: EXP 00000c9a: PUSH3 0x461bcd 00000c9e: MUL 00000c9f: DUP2 00000ca0: MSTORE 00000ca1: PUSH1 0x04 00000ca3: ADD 00000ca4: DUP1 00000ca5: DUP1 00000ca6: PUSH1 0x20 00000ca8: ADD 00000ca9: DUP3 00000caa: DUP2 00000cab: SUB 00000cac: DUP3 00000cad: MSTORE 00000cae: PUSH1 0x3d 00000cb0: DUP2 00000cb1: MSTORE 00000cb2: PUSH1 0x20 00000cb4: ADD 00000cb5: DUP1 00000cb6: PUSH2 0x1c56 00000cb9: PUSH1 0x3d 00000cbb: SWAP2 00000cbc: CODECOPY 00000cbd: PUSH1 0x40 00000cbf: ADD 00000cc0: SWAP2 00000cc1: POP 00000cc2: POP 00000cc3: PUSH1 0x40 00000cc5: MLOAD 00000cc6: DUP1 00000cc7: SWAP2 00000cc8: SUB 00000cc9: SWAP1 00000cca: REVERT 00000ccb: JUMPDEST 00000ccc: PUSH1 0x01 00000cce: PUSH1 0xa0 00000cd0: PUSH1 0x02 00000cd2: EXP 00000cd3: SUB 00000cd4: DUP2 00000cd5: AND 00000cd6: PUSH1 0x00 00000cd8: DUP2 00000cd9: DUP2 00000cda: MSTORE 00000cdb: PUSH1 0x03 00000cdd: PUSH1 0x20 00000cdf: SWAP1 00000ce0: DUP2 00000ce1: MSTORE 00000ce2: PUSH1 0x40 00000ce4: DUP1 00000ce5: DUP4 00000ce6: KECCAK256 00000ce7: DUP1 00000ce8: SLOAD 00000ce9: PUSH1 0xff 00000ceb: NOT 00000cec: AND 00000ced: PUSH1 0x01 00000cef: SWAP1 00000cf0: DUP2 00000cf1: OR 00000cf2: SWAP1 00000cf3: SWAP2 00000cf4: SSTORE 00000cf5: PUSH1 0x04 00000cf7: DUP1 00000cf8: SLOAD 00000cf9: SWAP2 00000cfa: DUP3 00000cfb: ADD 00000cfc: DUP2 00000cfd: SSTORE 00000cfe: SWAP1 00000cff: SWAP4 00000d00: MSTORE 00000d01: PUSH32 0x8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b 00000d22: SWAP1 00000d23: SWAP3 00000d24: ADD 00000d25: DUP1 00000d26: SLOAD 00000d27: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d3c: NOT 00000d3d: AND 00000d3e: DUP5 00000d3f: OR 00000d40: SWAP1 00000d41: SSTORE 00000d42: DUP2 00000d43: MLOAD 00000d44: CALLER 00000d45: DUP2 00000d46: MSTORE 00000d47: SWAP2 00000d48: MLOAD 00000d49: PUSH32 0x8918da6429714f0e9c40ae7f270773e27fc8caf7a256e19807f859563b7514de 00000d6a: SWAP3 00000d6b: DUP2 00000d6c: SWAP1 00000d6d: SUB 00000d6e: SWAP1 00000d6f: SWAP2 00000d70: ADD 00000d71: SWAP1 00000d72: LOG2 00000d73: PUSH2 0x0f7f 00000d76: JUMP 00000d77: JUMPDEST 00000d78: PUSH1 0x00 00000d7a: DUP1 00000d7b: CALLDATASIZE 00000d7c: PUSH1 0x40 00000d7e: MLOAD 00000d7f: PUSH1 0x20 00000d81: ADD 00000d82: DUP1 00000d83: DUP4 00000d84: DUP4 00000d85: DUP1 00000d86: DUP3 00000d87: DUP5 00000d88: CALLDATACOPY 00000d89: PUSH1 0x40 00000d8b: DUP1 00000d8c: MLOAD 00000d8d: SWAP2 00000d8e: SWAP1 00000d8f: SWAP4 00000d90: ADD 00000d91: DUP2 00000d92: DUP2 00000d93: SUB 00000d94: PUSH1 0x1f 00000d96: NOT 00000d97: ADD 00000d98: DUP3 00000d99: MSTORE 00000d9a: DUP4 00000d9b: MSTORE 00000d9c: DUP1 00000d9d: MLOAD 00000d9e: PUSH1 0x20 00000da0: SWAP2 00000da1: DUP3 00000da2: ADD 00000da3: KECCAK256 00000da4: PUSH1 0x00 00000da6: DUP2 00000da7: DUP2 00000da8: MSTORE 00000da9: PUSH1 0x02 00000dab: SWAP1 00000dac: SWAP3 00000dad: MSTORE 00000dae: SWAP3 00000daf: SWAP1 00000db0: KECCAK256 00000db1: SLOAD 00000db2: SWAP2 00000db3: SWAP6 00000db4: POP 00000db5: SWAP1 00000db6: SWAP4 00000db7: POP 00000db8: POP 00000db9: POP 00000dba: DUP2 00000dbb: ISZERO 00000dbc: ISZERO 00000dbd: SWAP1 00000dbe: POP 00000dbf: PUSH2 0x0e16 00000dc2: JUMPI 00000dc3: PUSH1 0x00 00000dc5: DUP3 00000dc6: DUP2 00000dc7: MSTORE 00000dc8: PUSH1 0x02 00000dca: PUSH1 0x20 00000dcc: SWAP1 00000dcd: DUP2 00000dce: MSTORE 00000dcf: PUSH1 0x40 00000dd1: SWAP2 00000dd2: DUP3 00000dd3: SWAP1 00000dd4: KECCAK256 00000dd5: TIMESTAMP 00000dd6: SWAP1 00000dd7: DUP2 00000dd8: SWAP1 00000dd9: SSTORE 00000dda: DUP3 00000ddb: MLOAD 00000ddc: DUP6 00000ddd: DUP2 00000dde: MSTORE 00000ddf: SWAP2 00000de0: DUP3 00000de1: ADD 00000de2: MSTORE 00000de3: DUP2 00000de4: MLOAD 00000de5: PUSH32 0x0e0905d1a972d476e353bdcc3e06b19a71709054c8ba01eccb7e0691eca6d374 00000e06: SWAP3 00000e07: SWAP2 00000e08: DUP2 00000e09: SWAP1 00000e0a: SUB 00000e0b: SWAP1 00000e0c: SWAP2 00000e0d: ADD 00000e0e: SWAP1 00000e0f: LOG1 00000e10: POP 00000e11: POP 00000e12: PUSH2 0x0f7f 00000e15: JUMP 00000e16: JUMPDEST 00000e17: PUSH1 0x01 00000e19: SLOAD 00000e1a: PUSH2 0x0e2a 00000e1d: SWAP1 00000e1e: DUP3 00000e1f: SWAP1 00000e20: PUSH4 0xffffffff 00000e25: PUSH2 0x1838 00000e28: AND 00000e29: JUMP 00000e2a: JUMPDEST 00000e2b: TIMESTAMP 00000e2c: LT 00000e2d: ISZERO 00000e2e: PUSH2 0x0e6b 00000e31: JUMPI 00000e32: PUSH1 0x40 00000e34: MLOAD 00000e35: PUSH1 0xe5 00000e37: PUSH1 0x02 00000e39: EXP 00000e3a: PUSH3 0x461bcd 00000e3e: MUL 00000e3f: DUP2 00000e40: MSTORE 00000e41: PUSH1 0x04 00000e43: ADD 00000e44: DUP1 00000e45: DUP1 00000e46: PUSH1 0x20 00000e48: ADD 00000e49: DUP3 00000e4a: DUP2 00000e4b: SUB 00000e4c: DUP3 00000e4d: MSTORE 00000e4e: PUSH1 0x34 00000e50: DUP2 00000e51: MSTORE 00000e52: PUSH1 0x20 00000e54: ADD 00000e55: DUP1 00000e56: PUSH2 0x1e14 00000e59: PUSH1 0x34 00000e5b: SWAP2 00000e5c: CODECOPY 00000e5d: PUSH1 0x40 00000e5f: ADD 00000e60: SWAP2 00000e61: POP 00000e62: POP 00000e63: PUSH1 0x40 00000e65: MLOAD 00000e66: DUP1 00000e67: SWAP2 00000e68: SUB 00000e69: SWAP1 00000e6a: REVERT 00000e6b: JUMPDEST 00000e6c: PUSH1 0x00 00000e6e: DUP3 00000e6f: DUP2 00000e70: MSTORE 00000e71: PUSH1 0x02 00000e73: PUSH1 0x20 00000e75: SWAP1 00000e76: DUP2 00000e77: MSTORE 00000e78: PUSH1 0x40 00000e7a: DUP1 00000e7b: DUP4 00000e7c: KECCAK256 00000e7d: DUP4 00000e7e: SWAP1 00000e7f: SSTORE 00000e80: PUSH1 0x01 00000e82: PUSH1 0xa0 00000e84: PUSH1 0x02 00000e86: EXP 00000e87: SUB 00000e88: DUP7 00000e89: AND 00000e8a: DUP4 00000e8b: MSTORE 00000e8c: PUSH1 0x03 00000e8e: SWAP1 00000e8f: SWAP2 00000e90: MSTORE 00000e91: SWAP1 00000e92: KECCAK256 00000e93: SLOAD 00000e94: PUSH1 0xff 00000e96: AND 00000e97: ISZERO 00000e98: PUSH2 0x0ed5 00000e9b: JUMPI 00000e9c: PUSH1 0x40 00000e9e: MLOAD 00000e9f: PUSH1 0xe5 00000ea1: PUSH1 0x02 00000ea3: EXP 00000ea4: PUSH3 0x461bcd 00000ea8: MUL 00000ea9: DUP2 00000eaa: MSTORE 00000eab: PUSH1 0x04 00000ead: ADD 00000eae: DUP1 00000eaf: DUP1 00000eb0: PUSH1 0x20 00000eb2: ADD 00000eb3: DUP3 00000eb4: DUP2 00000eb5: SUB 00000eb6: DUP3 00000eb7: MSTORE 00000eb8: PUSH1 0x3d 00000eba: DUP2 00000ebb: MSTORE 00000ebc: PUSH1 0x20 00000ebe: ADD 00000ebf: DUP1 00000ec0: PUSH2 0x1c56 00000ec3: PUSH1 0x3d 00000ec5: SWAP2 00000ec6: CODECOPY 00000ec7: PUSH1 0x40 00000ec9: ADD 00000eca: SWAP2 00000ecb: POP 00000ecc: POP 00000ecd: PUSH1 0x40 00000ecf: MLOAD 00000ed0: DUP1 00000ed1: SWAP2 00000ed2: SUB 00000ed3: SWAP1 00000ed4: REVERT 00000ed5: JUMPDEST 00000ed6: PUSH1 0x01 00000ed8: PUSH1 0xa0 00000eda: PUSH1 0x02 00000edc: EXP 00000edd: SUB 00000ede: DUP4 00000edf: AND 00000ee0: PUSH1 0x00 00000ee2: DUP2 00000ee3: DUP2 00000ee4: MSTORE 00000ee5: PUSH1 0x03 00000ee7: PUSH1 0x20 00000ee9: SWAP1 00000eea: DUP2 00000eeb: MSTORE 00000eec: PUSH1 0x40 00000eee: DUP1 00000eef: DUP4 00000ef0: KECCAK256 00000ef1: DUP1 00000ef2: SLOAD 00000ef3: PUSH1 0xff 00000ef5: NOT 00000ef6: AND 00000ef7: PUSH1 0x01 00000ef9: SWAP1 00000efa: DUP2 00000efb: OR 00000efc: SWAP1 00000efd: SWAP2 00000efe: SSTORE 00000eff: PUSH1 0x04 00000f01: DUP1 00000f02: SLOAD 00000f03: SWAP2 00000f04: DUP3 00000f05: ADD 00000f06: DUP2 00000f07: SSTORE 00000f08: SWAP1 00000f09: SWAP4 00000f0a: MSTORE 00000f0b: PUSH32 0x8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b 00000f2c: SWAP1 00000f2d: SWAP3 00000f2e: ADD 00000f2f: DUP1 00000f30: SLOAD 00000f31: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f46: NOT 00000f47: AND 00000f48: DUP5 00000f49: OR 00000f4a: SWAP1 00000f4b: SSTORE 00000f4c: DUP2 00000f4d: MLOAD 00000f4e: CALLER 00000f4f: DUP2 00000f50: MSTORE 00000f51: SWAP2 00000f52: MLOAD 00000f53: PUSH32 0x8918da6429714f0e9c40ae7f270773e27fc8caf7a256e19807f859563b7514de 00000f74: SWAP3 00000f75: DUP2 00000f76: SWAP1 00000f77: SUB 00000f78: SWAP1 00000f79: SWAP2 00000f7a: ADD 00000f7b: SWAP1 00000f7c: LOG2 00000f7d: POP 00000f7e: POP 00000f7f: JUMPDEST 00000f80: POP 00000f81: JUMP 00000f82: JUMPDEST 00000f83: PUSH1 0x04 00000f85: DUP2 00000f86: DUP2 00000f87: SLOAD 00000f88: DUP2 00000f89: LT 00000f8a: PUSH2 0x0f8f 00000f8d: JUMPI 00000f8e: INVALID 00000f8f: JUMPDEST 00000f90: PUSH1 0x00 00000f92: SWAP2 00000f93: DUP3 00000f94: MSTORE 00000f95: PUSH1 0x20 00000f97: SWAP1 00000f98: SWAP2 00000f99: KECCAK256 00000f9a: ADD 00000f9b: SLOAD 00000f9c: PUSH1 0x01 00000f9e: PUSH1 0xa0 00000fa0: PUSH1 0x02 00000fa2: EXP 00000fa3: SUB 00000fa4: AND 00000fa5: SWAP1 00000fa6: POP 00000fa7: DUP2 00000fa8: JUMP 00000fa9: JUMPDEST 00000faa: PUSH2 0x0fb1 00000fad: PUSH2 0x1296 00000fb0: JUMP 00000fb1: JUMPDEST 00000fb2: PUSH2 0x0fba 00000fb5: JUMPI 00000fb6: PUSH1 0x00 00000fb8: DUP1 00000fb9: REVERT 00000fba: JUMPDEST 00000fbb: PUSH1 0x01 00000fbd: PUSH1 0xa0 00000fbf: PUSH1 0x02 00000fc1: EXP 00000fc2: SUB 00000fc3: DUP2 00000fc4: AND 00000fc5: PUSH1 0x00 00000fc7: SWAP1 00000fc8: DUP2 00000fc9: MSTORE 00000fca: PUSH1 0x03 00000fcc: PUSH1 0x20 00000fce: MSTORE 00000fcf: PUSH1 0x40 00000fd1: SWAP1 00000fd2: KECCAK256 00000fd3: SLOAD 00000fd4: PUSH1 0xff 00000fd6: AND 00000fd7: PUSH2 0x1014 00000fda: JUMPI 00000fdb: PUSH1 0x40 00000fdd: MLOAD 00000fde: PUSH1 0xe5 00000fe0: PUSH1 0x02 00000fe2: EXP 00000fe3: PUSH3 0x461bcd 00000fe7: MUL 00000fe8: DUP2 00000fe9: MSTORE 00000fea: PUSH1 0x04 00000fec: ADD 00000fed: DUP1 00000fee: DUP1 00000fef: PUSH1 0x20 00000ff1: ADD 00000ff2: DUP3 00000ff3: DUP2 00000ff4: SUB 00000ff5: DUP3 00000ff6: MSTORE 00000ff7: PUSH1 0x3c 00000ff9: DUP2 00000ffa: MSTORE 00000ffb: PUSH1 0x20 00000ffd: ADD 00000ffe: DUP1 00000fff: PUSH2 0x1d78 00001002: PUSH1 0x3c 00001004: SWAP2 00001005: CODECOPY 00001006: PUSH1 0x40 00001008: ADD 00001009: SWAP2 0000100a: POP 0000100b: POP 0000100c: PUSH1 0x40 0000100e: MLOAD 0000100f: DUP1 00001010: SWAP2 00001011: SUB 00001012: SWAP1 00001013: REVERT 00001014: JUMPDEST 00001015: PUSH1 0x01 00001017: PUSH1 0xa0 00001019: PUSH1 0x02 0000101b: EXP 0000101c: SUB 0000101d: DUP2 0000101e: AND 0000101f: PUSH1 0x00 00001021: SWAP1 00001022: DUP2 00001023: MSTORE 00001024: PUSH1 0x03 00001026: PUSH1 0x20 00001028: SWAP1 00001029: DUP2 0000102a: MSTORE 0000102b: PUSH1 0x40 0000102d: SWAP2 0000102e: DUP3 0000102f: SWAP1 00001030: KECCAK256 00001031: DUP1 00001032: SLOAD 00001033: PUSH1 0xff 00001035: NOT 00001036: AND 00001037: SWAP1 00001038: SSTORE 00001039: PUSH1 0x04 0000103b: DUP1 0000103c: SLOAD 0000103d: DUP4 0000103e: MLOAD 0000103f: DUP2 00001040: DUP5 00001041: MUL 00001042: DUP2 00001043: ADD 00001044: DUP5 00001045: ADD 00001046: SWAP1 00001047: SWAP5 00001048: MSTORE 00001049: DUP1 0000104a: DUP5 0000104b: MSTORE 0000104c: PUSH2 0x10a1 0000104f: SWAP4 00001050: DUP6 00001051: SWAP4 00001052: SWAP1 00001053: SWAP3 00001054: SWAP2 00001055: SWAP1 00001056: DUP4 00001057: ADD 00001058: DUP3 00001059: DUP3 0000105a: DUP1 0000105b: ISZERO 0000105c: PUSH2 0x108e 0000105f: JUMPI 00001060: PUSH1 0x20 00001062: MUL 00001063: DUP3 00001064: ADD 00001065: SWAP2 00001066: SWAP1 00001067: PUSH1 0x00 00001069: MSTORE 0000106a: PUSH1 0x20 0000106c: PUSH1 0x00 0000106e: KECCAK256 0000106f: SWAP1 00001070: JUMPDEST 00001071: DUP2 00001072: SLOAD 00001073: PUSH1 0x01 00001075: PUSH1 0xa0 00001077: PUSH1 0x02 00001079: EXP 0000107a: SUB 0000107b: AND 0000107c: DUP2 0000107d: MSTORE 0000107e: PUSH1 0x01 00001080: SWAP1 00001081: SWAP2 00001082: ADD 00001083: SWAP1 00001084: PUSH1 0x20 00001086: ADD 00001087: DUP1 00001088: DUP4 00001089: GT 0000108a: PUSH2 0x1070 0000108d: JUMPI 0000108e: JUMPDEST 0000108f: POP 00001090: POP 00001091: POP 00001092: POP 00001093: POP 00001094: PUSH2 0x1851 00001097: SWAP1 00001098: SWAP2 00001099: SWAP1 0000109a: PUSH4 0xffffffff 0000109f: AND 000010a0: JUMP 000010a1: JUMPDEST 000010a2: DUP1 000010a3: MLOAD 000010a4: PUSH2 0x10b5 000010a7: SWAP2 000010a8: PUSH1 0x04 000010aa: SWAP2 000010ab: PUSH1 0x20 000010ad: SWAP1 000010ae: SWAP2 000010af: ADD 000010b0: SWAP1 000010b1: PUSH2 0x1a74 000010b4: JUMP 000010b5: JUMPDEST 000010b6: POP 000010b7: PUSH1 0x40 000010b9: DUP1 000010ba: MLOAD 000010bb: CALLER 000010bc: DUP2 000010bd: MSTORE 000010be: SWAP1 000010bf: MLOAD 000010c0: PUSH1 0x01 000010c2: PUSH1 0xa0 000010c4: PUSH1 0x02 000010c6: EXP 000010c7: SUB 000010c8: DUP4 000010c9: AND 000010ca: SWAP2 000010cb: PUSH32 0x1f32c1b084e2de0713b8fb16bd46bb9df710a3dbeae2f3ca93af46e016dcc6b0 000010ec: SWAP2 000010ed: SWAP1 000010ee: DUP2 000010ef: SWAP1 000010f0: SUB 000010f1: PUSH1 0x20 000010f3: ADD 000010f4: SWAP1 000010f5: LOG2 000010f6: POP 000010f7: JUMP 000010f8: JUMPDEST 000010f9: PUSH2 0x1100 000010fc: PUSH2 0x1296 000010ff: JUMP 00001100: JUMPDEST 00001101: PUSH2 0x1109 00001104: JUMPI 00001105: PUSH1 0x00 00001107: DUP1 00001108: REVERT 00001109: JUMPDEST 0000110a: PUSH1 0x00 0000110c: DUP1 0000110d: SLOAD 0000110e: PUSH1 0x40 00001110: MLOAD 00001111: PUSH1 0x01 00001113: PUSH1 0xa0 00001115: PUSH1 0x02 00001117: EXP 00001118: SUB 00001119: SWAP1 0000111a: SWAP2 0000111b: AND 0000111c: SWAP1 0000111d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 0000113e: SWAP1 0000113f: DUP4 00001140: SWAP1 00001141: LOG3 00001142: PUSH1 0x00 00001144: DUP1 00001145: SLOAD 00001146: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000115b: NOT 0000115c: AND 0000115d: SWAP1 0000115e: SSTORE 0000115f: JUMP 00001160: JUMPDEST 00001161: PUSH1 0x01 00001163: SLOAD 00001164: DUP2 00001165: JUMP 00001166: JUMPDEST 00001167: CALLER 00001168: PUSH1 0x00 0000116a: SWAP1 0000116b: DUP2 0000116c: MSTORE 0000116d: PUSH1 0x03 0000116f: PUSH1 0x20 00001171: MSTORE 00001172: PUSH1 0x40 00001174: SWAP1 00001175: KECCAK256 00001176: SLOAD 00001177: PUSH1 0xff 00001179: AND 0000117a: PUSH2 0x11b7 0000117d: JUMPI 0000117e: PUSH1 0x40 00001180: MLOAD 00001181: PUSH1 0xe5 00001183: PUSH1 0x02 00001185: EXP 00001186: PUSH3 0x461bcd 0000118a: MUL 0000118b: DUP2 0000118c: MSTORE 0000118d: PUSH1 0x04 0000118f: ADD 00001190: DUP1 00001191: DUP1 00001192: PUSH1 0x20 00001194: ADD 00001195: DUP3 00001196: DUP2 00001197: SUB 00001198: DUP3 00001199: MSTORE 0000119a: PUSH1 0x3f 0000119c: DUP2 0000119d: MSTORE 0000119e: PUSH1 0x20 000011a0: ADD 000011a1: DUP1 000011a2: PUSH2 0x1c93 000011a5: PUSH1 0x3f 000011a7: SWAP2 000011a8: CODECOPY 000011a9: PUSH1 0x40 000011ab: ADD 000011ac: SWAP2 000011ad: POP 000011ae: POP 000011af: PUSH1 0x40 000011b1: MLOAD 000011b2: DUP1 000011b3: SWAP2 000011b4: SUB 000011b5: SWAP1 000011b6: REVERT 000011b7: JUMPDEST 000011b8: PUSH1 0x01 000011ba: PUSH1 0xa0 000011bc: PUSH1 0x02 000011be: EXP 000011bf: SUB 000011c0: DUP1 000011c1: DUP5 000011c2: AND 000011c3: PUSH1 0x00 000011c5: SWAP1 000011c6: DUP2 000011c7: MSTORE 000011c8: PUSH1 0x05 000011ca: PUSH1 0x20 000011cc: SWAP1 000011cd: DUP2 000011ce: MSTORE 000011cf: PUSH1 0x40 000011d1: DUP1 000011d2: DUP4 000011d3: KECCAK256 000011d4: SWAP4 000011d5: DUP7 000011d6: AND 000011d7: DUP4 000011d8: MSTORE 000011d9: SWAP3 000011da: SWAP1 000011db: MSTORE 000011dc: KECCAK256 000011dd: SLOAD 000011de: DUP2 000011df: GT 000011e0: ISZERO 000011e1: PUSH2 0x121e 000011e4: JUMPI 000011e5: PUSH1 0x40 000011e7: MLOAD 000011e8: PUSH1 0xe5 000011ea: PUSH1 0x02 000011ec: EXP 000011ed: PUSH3 0x461bcd 000011f1: MUL 000011f2: DUP2 000011f3: MSTORE 000011f4: PUSH1 0x04 000011f6: ADD 000011f7: DUP1 000011f8: DUP1 000011f9: PUSH1 0x20 000011fb: ADD 000011fc: DUP3 000011fd: DUP2 000011fe: SUB 000011ff: DUP3 00001200: MSTORE 00001201: PUSH1 0x35 00001203: DUP2 00001204: MSTORE 00001205: PUSH1 0x20 00001207: ADD 00001208: DUP1 00001209: PUSH2 0x1d06 0000120c: PUSH1 0x35 0000120e: SWAP2 0000120f: CODECOPY 00001210: PUSH1 0x40 00001212: ADD 00001213: SWAP2 00001214: POP 00001215: POP 00001216: PUSH1 0x40 00001218: MLOAD 00001219: DUP1 0000121a: SWAP2 0000121b: SUB 0000121c: SWAP1 0000121d: REVERT 0000121e: JUMPDEST 0000121f: DUP1 00001220: ISZERO 00001221: PUSH2 0x1281 00001224: JUMPI 00001225: PUSH1 0x01 00001227: PUSH1 0xa0 00001229: PUSH1 0x02 0000122b: EXP 0000122c: SUB 0000122d: DUP1 0000122e: DUP5 0000122f: AND 00001230: PUSH1 0x00 00001232: SWAP1 00001233: DUP2 00001234: MSTORE 00001235: PUSH1 0x05 00001237: PUSH1 0x20 00001239: SWAP1 0000123a: DUP2 0000123b: MSTORE 0000123c: PUSH1 0x40 0000123e: DUP1 0000123f: DUP4 00001240: KECCAK256 00001241: SWAP4 00001242: DUP7 00001243: AND 00001244: DUP4 00001245: MSTORE 00001246: SWAP3 00001247: SWAP1 00001248: MSTORE 00001249: KECCAK256 0000124a: SLOAD 0000124b: PUSH2 0x125a 0000124e: SWAP1 0000124f: DUP3 00001250: PUSH4 0xffffffff 00001255: PUSH2 0x1886 00001258: AND 00001259: JUMP 0000125a: JUMPDEST 0000125b: PUSH1 0x01 0000125d: PUSH1 0xa0 0000125f: PUSH1 0x02 00001261: EXP 00001262: SUB 00001263: DUP1 00001264: DUP6 00001265: AND 00001266: PUSH1 0x00 00001268: SWAP1 00001269: DUP2 0000126a: MSTORE 0000126b: PUSH1 0x05 0000126d: PUSH1 0x20 0000126f: SWAP1 00001270: DUP2 00001271: MSTORE 00001272: PUSH1 0x40 00001274: DUP1 00001275: DUP4 00001276: KECCAK256 00001277: SWAP4 00001278: DUP8 00001279: AND 0000127a: DUP4 0000127b: MSTORE 0000127c: SWAP3 0000127d: SWAP1 0000127e: MSTORE 0000127f: KECCAK256 00001280: SSTORE 00001281: JUMPDEST 00001282: POP 00001283: POP 00001284: POP 00001285: JUMP 00001286: JUMPDEST 00001287: PUSH1 0x00 00001289: SLOAD 0000128a: PUSH1 0x01 0000128c: PUSH1 0xa0 0000128e: PUSH1 0x02 00001290: EXP 00001291: SUB 00001292: AND 00001293: JUMPDEST 00001294: SWAP1 00001295: JUMP 00001296: JUMPDEST 00001297: PUSH1 0x00 00001299: SLOAD 0000129a: PUSH1 0x01 0000129c: PUSH1 0xa0 0000129e: PUSH1 0x02 000012a0: EXP 000012a1: SUB 000012a2: AND 000012a3: CALLER 000012a4: EQ 000012a5: SWAP1 000012a6: JUMP 000012a7: JUMPDEST 000012a8: PUSH2 0x12af 000012ab: PUSH2 0x1296 000012ae: JUMP 000012af: JUMPDEST 000012b0: PUSH2 0x12b8 000012b3: JUMPI 000012b4: PUSH1 0x00 000012b6: DUP1 000012b7: REVERT 000012b8: JUMPDEST 000012b9: PUSH1 0x01 000012bb: SLOAD 000012bc: DUP2 000012bd: GT 000012be: PUSH2 0x12fb 000012c1: JUMPI 000012c2: PUSH1 0x40 000012c4: MLOAD 000012c5: PUSH1 0xe5 000012c7: PUSH1 0x02 000012c9: EXP 000012ca: PUSH3 0x461bcd 000012ce: MUL 000012cf: DUP2 000012d0: MSTORE 000012d1: PUSH1 0x04 000012d3: ADD 000012d4: DUP1 000012d5: DUP1 000012d6: PUSH1 0x20 000012d8: ADD 000012d9: DUP3 000012da: DUP2 000012db: SUB 000012dc: DUP3 000012dd: MSTORE 000012de: PUSH1 0x39 000012e0: DUP2 000012e1: MSTORE 000012e2: PUSH1 0x20 000012e4: ADD 000012e5: DUP1 000012e6: PUSH2 0x1e48 000012e9: PUSH1 0x39 000012eb: SWAP2 000012ec: CODECOPY 000012ed: PUSH1 0x40 000012ef: ADD 000012f0: SWAP2 000012f1: POP 000012f2: POP 000012f3: PUSH1 0x40 000012f5: MLOAD 000012f6: DUP1 000012f7: SWAP2 000012f8: SUB 000012f9: SWAP1 000012fa: REVERT 000012fb: JUMPDEST 000012fc: PUSH1 0x01 000012fe: SSTORE 000012ff: JUMP 00001300: JUMPDEST 00001301: CALLER 00001302: PUSH1 0x00 00001304: SWAP1 00001305: DUP2 00001306: MSTORE 00001307: PUSH1 0x03 00001309: PUSH1 0x20 0000130b: MSTORE 0000130c: PUSH1 0x40 0000130e: SWAP1 0000130f: KECCAK256 00001310: SLOAD 00001311: PUSH1 0xff 00001313: AND 00001314: PUSH2 0x1351 00001317: JUMPI 00001318: PUSH1 0x40 0000131a: MLOAD 0000131b: PUSH1 0xe5 0000131d: PUSH1 0x02 0000131f: EXP 00001320: PUSH3 0x461bcd 00001324: MUL 00001325: DUP2 00001326: MSTORE 00001327: PUSH1 0x04 00001329: ADD 0000132a: DUP1 0000132b: DUP1 0000132c: PUSH1 0x20 0000132e: ADD 0000132f: DUP3 00001330: DUP2 00001331: SUB 00001332: DUP3 00001333: MSTORE 00001334: PUSH1 0x3f 00001336: DUP2 00001337: MSTORE 00001338: PUSH1 0x20 0000133a: ADD 0000133b: DUP1 0000133c: PUSH2 0x1c93 0000133f: PUSH1 0x3f 00001341: SWAP2 00001342: CODECOPY 00001343: PUSH1 0x40 00001345: ADD 00001346: SWAP2 00001347: POP 00001348: POP 00001349: PUSH1 0x40 0000134b: MLOAD 0000134c: DUP1 0000134d: SWAP2 0000134e: SUB 0000134f: SWAP1 00001350: REVERT 00001351: JUMPDEST 00001352: DUP1 00001353: ISZERO 00001354: PUSH2 0x1457 00001357: JUMPI 00001358: PUSH1 0x01 0000135a: PUSH1 0xa0 0000135c: PUSH1 0x02 0000135e: EXP 0000135f: SUB 00001360: DUP1 00001361: DUP6 00001362: AND 00001363: PUSH1 0x00 00001365: SWAP1 00001366: DUP2 00001367: MSTORE 00001368: PUSH1 0x05 0000136a: PUSH1 0x20 0000136c: SWAP1 0000136d: DUP2 0000136e: MSTORE 0000136f: PUSH1 0x40 00001371: DUP1 00001372: DUP4 00001373: KECCAK256 00001374: SWAP4 00001375: DUP8 00001376: AND 00001377: DUP4 00001378: MSTORE 00001379: SWAP3 0000137a: SWAP1 0000137b: MSTORE 0000137c: KECCAK256 0000137d: SLOAD 0000137e: DUP2 0000137f: GT 00001380: ISZERO 00001381: PUSH2 0x13be 00001384: JUMPI 00001385: PUSH1 0x40 00001387: MLOAD 00001388: PUSH1 0xe5 0000138a: PUSH1 0x02 0000138c: EXP 0000138d: PUSH3 0x461bcd 00001391: MUL 00001392: DUP2 00001393: MSTORE 00001394: PUSH1 0x04 00001396: ADD 00001397: DUP1 00001398: DUP1 00001399: PUSH1 0x20 0000139b: ADD 0000139c: DUP3 0000139d: DUP2 0000139e: SUB 0000139f: DUP3 000013a0: MSTORE 000013a1: PUSH1 0x31 000013a3: DUP2 000013a4: MSTORE 000013a5: PUSH1 0x20 000013a7: ADD 000013a8: DUP1 000013a9: PUSH2 0x1de3 000013ac: PUSH1 0x31 000013ae: SWAP2 000013af: CODECOPY 000013b0: PUSH1 0x40 000013b2: ADD 000013b3: SWAP2 000013b4: POP 000013b5: POP 000013b6: PUSH1 0x40 000013b8: MLOAD 000013b9: DUP1 000013ba: SWAP2 000013bb: SUB 000013bc: SWAP1 000013bd: REVERT 000013be: JUMPDEST 000013bf: PUSH1 0x01 000013c1: PUSH1 0xa0 000013c3: PUSH1 0x02 000013c5: EXP 000013c6: SUB 000013c7: DUP1 000013c8: DUP6 000013c9: AND 000013ca: PUSH1 0x00 000013cc: SWAP1 000013cd: DUP2 000013ce: MSTORE 000013cf: PUSH1 0x05 000013d1: PUSH1 0x20 000013d3: SWAP1 000013d4: DUP2 000013d5: MSTORE 000013d6: PUSH1 0x40 000013d8: DUP1 000013d9: DUP4 000013da: KECCAK256 000013db: SWAP4 000013dc: DUP8 000013dd: AND 000013de: DUP4 000013df: MSTORE 000013e0: SWAP3 000013e1: SWAP1 000013e2: MSTORE 000013e3: KECCAK256 000013e4: SLOAD 000013e5: PUSH2 0x13f4 000013e8: SWAP1 000013e9: DUP3 000013ea: PUSH4 0xffffffff 000013ef: PUSH2 0x1886 000013f2: AND 000013f3: JUMP 000013f4: JUMPDEST 000013f5: PUSH1 0x01 000013f7: PUSH1 0xa0 000013f9: PUSH1 0x02 000013fb: EXP 000013fc: SUB 000013fd: DUP6 000013fe: DUP2 000013ff: AND 00001400: PUSH1 0x00 00001402: SWAP1 00001403: DUP2 00001404: MSTORE 00001405: PUSH1 0x05 00001407: PUSH1 0x20 00001409: SWAP1 0000140a: DUP2 0000140b: MSTORE 0000140c: PUSH1 0x40 0000140e: DUP1 0000140f: DUP4 00001410: KECCAK256 00001411: DUP9 00001412: DUP6 00001413: AND 00001414: DUP5 00001415: MSTORE 00001416: SWAP1 00001417: SWAP2 00001418: MSTORE 00001419: DUP1 0000141a: DUP3 0000141b: KECCAK256 0000141c: SWAP4 0000141d: SWAP1 0000141e: SWAP4 0000141f: SSTORE 00001420: SWAP1 00001421: DUP5 00001422: AND 00001423: DUP2 00001424: MSTORE 00001425: KECCAK256 00001426: SLOAD 00001427: PUSH2 0x1430 0000142a: SWAP1 0000142b: DUP3 0000142c: PUSH2 0x1838 0000142f: JUMP 00001430: JUMPDEST 00001431: PUSH1 0x01 00001433: PUSH1 0xa0 00001435: PUSH1 0x02 00001437: EXP 00001438: SUB 00001439: DUP1 0000143a: DUP7 0000143b: AND 0000143c: PUSH1 0x00 0000143e: SWAP1 0000143f: DUP2 00001440: MSTORE 00001441: PUSH1 0x05 00001443: PUSH1 0x20 00001445: SWAP1 00001446: DUP2 00001447: MSTORE 00001448: PUSH1 0x40 0000144a: DUP1 0000144b: DUP4 0000144c: KECCAK256 0000144d: SWAP4 0000144e: DUP8 0000144f: AND 00001450: DUP4 00001451: MSTORE 00001452: SWAP3 00001453: SWAP1 00001454: MSTORE 00001455: KECCAK256 00001456: SSTORE 00001457: JUMPDEST 00001458: POP 00001459: POP 0000145a: POP 0000145b: POP 0000145c: JUMP 0000145d: JUMPDEST 0000145e: PUSH1 0x03 00001460: PUSH1 0x20 00001462: MSTORE 00001463: PUSH1 0x00 00001465: SWAP1 00001466: DUP2 00001467: MSTORE 00001468: PUSH1 0x40 0000146a: SWAP1 0000146b: KECCAK256 0000146c: SLOAD 0000146d: PUSH1 0xff 0000146f: AND 00001470: DUP2 00001471: JUMP 00001472: JUMPDEST 00001473: CALLER 00001474: PUSH1 0x00 00001476: SWAP1 00001477: DUP2 00001478: MSTORE 00001479: PUSH1 0x03 0000147b: PUSH1 0x20 0000147d: MSTORE 0000147e: PUSH1 0x40 00001480: SWAP1 00001481: KECCAK256 00001482: SLOAD 00001483: PUSH1 0xff 00001485: AND 00001486: PUSH2 0x14c3 00001489: JUMPI 0000148a: PUSH1 0x40 0000148c: MLOAD 0000148d: PUSH1 0xe5 0000148f: PUSH1 0x02 00001491: EXP 00001492: PUSH3 0x461bcd 00001496: MUL 00001497: DUP2 00001498: MSTORE 00001499: PUSH1 0x04 0000149b: ADD 0000149c: DUP1 0000149d: DUP1 0000149e: PUSH1 0x20 000014a0: ADD 000014a1: DUP3 000014a2: DUP2 000014a3: SUB 000014a4: DUP3 000014a5: MSTORE 000014a6: PUSH1 0x3f 000014a8: DUP2 000014a9: MSTORE 000014aa: PUSH1 0x20 000014ac: ADD 000014ad: DUP1 000014ae: PUSH2 0x1c93 000014b1: PUSH1 0x3f 000014b3: SWAP2 000014b4: CODECOPY 000014b5: PUSH1 0x40 000014b7: ADD 000014b8: SWAP2 000014b9: POP 000014ba: POP 000014bb: PUSH1 0x40 000014bd: MLOAD 000014be: DUP1 000014bf: SWAP2 000014c0: SUB 000014c1: SWAP1 000014c2: REVERT 000014c3: JUMPDEST 000014c4: DUP1 000014c5: ISZERO 000014c6: PUSH2 0x1281 000014c9: JUMPI 000014ca: PUSH1 0x01 000014cc: PUSH1 0xa0 000014ce: PUSH1 0x02 000014d0: EXP 000014d1: SUB 000014d2: DUP1 000014d3: DUP5 000014d4: AND 000014d5: PUSH1 0x00 000014d7: SWAP1 000014d8: DUP2 000014d9: MSTORE 000014da: PUSH1 0x05 000014dc: PUSH1 0x20 000014de: SWAP1 000014df: DUP2 000014e0: MSTORE 000014e1: PUSH1 0x40 000014e3: DUP1 000014e4: DUP4 000014e5: KECCAK256 000014e6: SWAP4 000014e7: DUP7 000014e8: AND 000014e9: DUP4 000014ea: MSTORE 000014eb: SWAP3 000014ec: SWAP1 000014ed: MSTORE 000014ee: KECCAK256 000014ef: SLOAD 000014f0: PUSH2 0x125a 000014f3: SWAP1 000014f4: DUP3 000014f5: PUSH4 0xffffffff 000014fa: PUSH2 0x1838 000014fd: AND 000014fe: JUMP 000014ff: JUMPDEST 00001500: PUSH1 0x05 00001502: PUSH1 0x20 00001504: SWAP1 00001505: DUP2 00001506: MSTORE 00001507: PUSH1 0x00 00001509: SWAP3 0000150a: DUP4 0000150b: MSTORE 0000150c: PUSH1 0x40 0000150e: DUP1 0000150f: DUP5 00001510: KECCAK256 00001511: SWAP1 00001512: SWAP2 00001513: MSTORE 00001514: SWAP1 00001515: DUP3 00001516: MSTORE 00001517: SWAP1 00001518: KECCAK256 00001519: SLOAD 0000151a: DUP2 0000151b: JUMP 0000151c: JUMPDEST 0000151d: CALLER 0000151e: PUSH1 0x00 00001520: SWAP1 00001521: DUP2 00001522: MSTORE 00001523: PUSH1 0x03 00001525: PUSH1 0x20 00001527: MSTORE 00001528: PUSH1 0x40 0000152a: SWAP1 0000152b: KECCAK256 0000152c: SLOAD 0000152d: PUSH1 0xff 0000152f: AND 00001530: PUSH2 0x156d 00001533: JUMPI 00001534: PUSH1 0x40 00001536: MLOAD 00001537: PUSH1 0xe5 00001539: PUSH1 0x02 0000153b: EXP 0000153c: PUSH3 0x461bcd 00001540: MUL 00001541: DUP2 00001542: MSTORE 00001543: PUSH1 0x04 00001545: ADD 00001546: DUP1 00001547: DUP1 00001548: PUSH1 0x20 0000154a: ADD 0000154b: DUP3 0000154c: DUP2 0000154d: SUB 0000154e: DUP3 0000154f: MSTORE 00001550: PUSH1 0x3f 00001552: DUP2 00001553: MSTORE 00001554: PUSH1 0x20 00001556: ADD 00001557: DUP1 00001558: PUSH2 0x1c93 0000155b: PUSH1 0x3f 0000155d: SWAP2 0000155e: CODECOPY 0000155f: PUSH1 0x40 00001561: ADD 00001562: SWAP2 00001563: POP 00001564: POP 00001565: PUSH1 0x40 00001567: MLOAD 00001568: DUP1 00001569: SWAP2 0000156a: SUB 0000156b: SWAP1 0000156c: REVERT 0000156d: JUMPDEST 0000156e: DUP1 0000156f: ISZERO 00001570: PUSH2 0x1281 00001573: JUMPI 00001574: PUSH1 0x40 00001576: DUP1 00001577: MLOAD 00001578: PUSH32 0xf7888aec00000000000000000000000000000000000000000000000000000000 00001599: DUP2 0000159a: MSTORE 0000159b: PUSH1 0x01 0000159d: PUSH1 0xa0 0000159f: PUSH1 0x02 000015a1: EXP 000015a2: SUB 000015a3: DUP6 000015a4: AND 000015a5: PUSH1 0x04 000015a7: DUP3 000015a8: ADD 000015a9: MSTORE 000015aa: ADDRESS 000015ab: PUSH1 0x24 000015ad: DUP3 000015ae: ADD 000015af: MSTORE 000015b0: SWAP1 000015b1: MLOAD 000015b2: PUSH1 0x00 000015b4: SWAP2 000015b5: PUSH20 0xeadada7c6943c223c0d4bea475a6dacc7368f8d6 000015ca: SWAP2 000015cb: PUSH4 0xf7888aec 000015d0: SWAP2 000015d1: PUSH1 0x44 000015d3: DUP1 000015d4: DUP3 000015d5: ADD 000015d6: SWAP3 000015d7: PUSH1 0x20 000015d9: SWAP3 000015da: SWAP1 000015db: SWAP2 000015dc: SWAP1 000015dd: DUP3 000015de: SWAP1 000015df: SUB 000015e0: ADD 000015e1: DUP2 000015e2: DUP7 000015e3: DUP1 000015e4: EXTCODESIZE 000015e5: ISZERO 000015e6: DUP1 000015e7: ISZERO 000015e8: PUSH2 0x15f0 000015eb: JUMPI 000015ec: PUSH1 0x00 000015ee: DUP1 000015ef: REVERT 000015f0: JUMPDEST 000015f1: POP 000015f2: GAS 000015f3: DELEGATECALL 000015f4: ISZERO 000015f5: DUP1 000015f6: ISZERO 000015f7: PUSH2 0x1604 000015fa: JUMPI 000015fb: RETURNDATASIZE 000015fc: PUSH1 0x00 000015fe: DUP1 000015ff: RETURNDATACOPY 00001600: RETURNDATASIZE 00001601: PUSH1 0x00 00001603: REVERT 00001604: JUMPDEST 00001605: POP 00001606: POP 00001607: POP 00001608: POP 00001609: PUSH1 0x40 0000160b: MLOAD 0000160c: RETURNDATASIZE 0000160d: PUSH1 0x20 0000160f: DUP2 00001610: LT 00001611: ISZERO 00001612: PUSH2 0x161a 00001615: JUMPI 00001616: PUSH1 0x00 00001618: DUP1 00001619: REVERT 0000161a: JUMPDEST 0000161b: POP 0000161c: MLOAD 0000161d: PUSH1 0x40 0000161f: DUP1 00001620: MLOAD 00001621: PUSH32 0xbeabacc800000000000000000000000000000000000000000000000000000000 00001642: DUP2 00001643: MSTORE 00001644: PUSH1 0x01 00001646: PUSH1 0xa0 00001648: PUSH1 0x02 0000164a: EXP 0000164b: SUB 0000164c: DUP1 0000164d: DUP9 0000164e: AND 0000164f: PUSH1 0x04 00001651: DUP4 00001652: ADD 00001653: MSTORE 00001654: DUP7 00001655: AND 00001656: PUSH1 0x24 00001658: DUP3 00001659: ADD 0000165a: MSTORE 0000165b: PUSH1 0x44 0000165d: DUP2 0000165e: ADD 0000165f: DUP6 00001660: SWAP1 00001661: MSTORE 00001662: SWAP1 00001663: MLOAD 00001664: SWAP2 00001665: SWAP3 00001666: POP 00001667: PUSH20 0xeadada7c6943c223c0d4bea475a6dacc7368f8d6 0000167c: SWAP2 0000167d: PUSH4 0xbeabacc8 00001682: SWAP2 00001683: PUSH1 0x64 00001685: DUP1 00001686: DUP3 00001687: ADD 00001688: SWAP3 00001689: PUSH1 0x00 0000168b: SWAP3 0000168c: SWAP1 0000168d: SWAP2 0000168e: SWAP1 0000168f: DUP3 00001690: SWAP1 00001691: SUB 00001692: ADD 00001693: DUP2 00001694: DUP7 00001695: DUP1 00001696: EXTCODESIZE 00001697: ISZERO 00001698: DUP1 00001699: ISZERO 0000169a: PUSH2 0x16a2 0000169d: JUMPI 0000169e: PUSH1 0x00 000016a0: DUP1 000016a1: REVERT 000016a2: JUMPDEST 000016a3: POP 000016a4: GAS 000016a5: DELEGATECALL 000016a6: ISZERO 000016a7: DUP1 000016a8: ISZERO 000016a9: PUSH2 0x16b6 000016ac: JUMPI 000016ad: RETURNDATASIZE 000016ae: PUSH1 0x00 000016b0: DUP1 000016b1: RETURNDATACOPY 000016b2: RETURNDATASIZE 000016b3: PUSH1 0x00 000016b5: REVERT 000016b6: JUMPDEST 000016b7: POP 000016b8: POP 000016b9: PUSH1 0x40 000016bb: DUP1 000016bc: MLOAD 000016bd: PUSH32 0xf7888aec00000000000000000000000000000000000000000000000000000000 000016de: DUP2 000016df: MSTORE 000016e0: PUSH1 0x01 000016e2: PUSH1 0xa0 000016e4: PUSH1 0x02 000016e6: EXP 000016e7: SUB 000016e8: DUP9 000016e9: AND 000016ea: PUSH1 0x04 000016ec: DUP3 000016ed: ADD 000016ee: MSTORE 000016ef: ADDRESS 000016f0: PUSH1 0x24 000016f2: DUP3 000016f3: ADD 000016f4: MSTORE 000016f5: SWAP1 000016f6: MLOAD 000016f7: PUSH1 0x00 000016f9: SWAP4 000016fa: POP 000016fb: PUSH20 0xeadada7c6943c223c0d4bea475a6dacc7368f8d6 00001710: SWAP3 00001711: POP 00001712: PUSH4 0xf7888aec 00001717: SWAP2 00001718: PUSH1 0x44 0000171a: DUP1 0000171b: DUP3 0000171c: ADD 0000171d: SWAP3 0000171e: PUSH1 0x20 00001720: SWAP3 00001721: SWAP1 00001722: SWAP2 00001723: SWAP1 00001724: DUP3 00001725: SWAP1 00001726: SUB 00001727: ADD 00001728: DUP2 00001729: DUP7 0000172a: DUP1 0000172b: EXTCODESIZE 0000172c: ISZERO 0000172d: DUP1 0000172e: ISZERO 0000172f: PUSH2 0x1737 00001732: JUMPI 00001733: PUSH1 0x00 00001735: DUP1 00001736: REVERT 00001737: JUMPDEST 00001738: POP 00001739: GAS 0000173a: DELEGATECALL 0000173b: ISZERO 0000173c: DUP1 0000173d: ISZERO 0000173e: PUSH2 0x174b 00001741: JUMPI 00001742: RETURNDATASIZE 00001743: PUSH1 0x00 00001745: DUP1 00001746: RETURNDATACOPY 00001747: RETURNDATASIZE 00001748: PUSH1 0x00 0000174a: REVERT 0000174b: JUMPDEST 0000174c: POP 0000174d: POP 0000174e: POP 0000174f: POP 00001750: PUSH1 0x40 00001752: MLOAD 00001753: RETURNDATASIZE 00001754: PUSH1 0x20 00001756: DUP2 00001757: LT 00001758: ISZERO 00001759: PUSH2 0x1761 0000175c: JUMPI 0000175d: PUSH1 0x00 0000175f: DUP1 00001760: REVERT 00001761: JUMPDEST 00001762: POP 00001763: MLOAD 00001764: SWAP1 00001765: POP 00001766: PUSH2 0x1775 00001769: DUP3 0000176a: DUP5 0000176b: PUSH4 0xffffffff 00001770: PUSH2 0x1886 00001773: AND 00001774: JUMP 00001775: JUMPDEST 00001776: DUP2 00001777: EQ 00001778: PUSH2 0x17b5 0000177b: JUMPI 0000177c: PUSH1 0x40 0000177e: MLOAD 0000177f: PUSH1 0xe5 00001781: PUSH1 0x02 00001783: EXP 00001784: PUSH3 0x461bcd 00001788: MUL 00001789: DUP2 0000178a: MSTORE 0000178b: PUSH1 0x04 0000178d: ADD 0000178e: DUP1 0000178f: DUP1 00001790: PUSH1 0x20 00001792: ADD 00001793: DUP3 00001794: DUP2 00001795: SUB 00001796: DUP3 00001797: MSTORE 00001798: PUSH1 0x2f 0000179a: DUP2 0000179b: MSTORE 0000179c: PUSH1 0x20 0000179e: ADD 0000179f: DUP1 000017a0: PUSH2 0x1db4 000017a3: PUSH1 0x2f 000017a5: SWAP2 000017a6: CODECOPY 000017a7: PUSH1 0x40 000017a9: ADD 000017aa: SWAP2 000017ab: POP 000017ac: POP 000017ad: PUSH1 0x40 000017af: MLOAD 000017b0: DUP1 000017b1: SWAP2 000017b2: SUB 000017b3: SWAP1 000017b4: REVERT 000017b5: JUMPDEST 000017b6: POP 000017b7: POP 000017b8: POP 000017b9: POP 000017ba: POP 000017bb: JUMP 000017bc: JUMPDEST 000017bd: PUSH1 0x60 000017bf: PUSH1 0x04 000017c1: DUP1 000017c2: SLOAD 000017c3: DUP1 000017c4: PUSH1 0x20 000017c6: MUL 000017c7: PUSH1 0x20 000017c9: ADD 000017ca: PUSH1 0x40 000017cc: MLOAD 000017cd: SWAP1 000017ce: DUP2 000017cf: ADD 000017d0: PUSH1 0x40 000017d2: MSTORE 000017d3: DUP1 000017d4: SWAP3 000017d5: SWAP2 000017d6: SWAP1 000017d7: DUP2 000017d8: DUP2 000017d9: MSTORE 000017da: PUSH1 0x20 000017dc: ADD 000017dd: DUP3 000017de: DUP1 000017df: SLOAD 000017e0: DUP1 000017e1: ISZERO 000017e2: PUSH2 0x1814 000017e5: JUMPI 000017e6: PUSH1 0x20 000017e8: MUL 000017e9: DUP3 000017ea: ADD 000017eb: SWAP2 000017ec: SWAP1 000017ed: PUSH1 0x00 000017ef: MSTORE 000017f0: PUSH1 0x20 000017f2: PUSH1 0x00 000017f4: KECCAK256 000017f5: SWAP1 000017f6: JUMPDEST 000017f7: DUP2 000017f8: SLOAD 000017f9: PUSH1 0x01 000017fb: PUSH1 0xa0 000017fd: PUSH1 0x02 000017ff: EXP 00001800: SUB 00001801: AND 00001802: DUP2 00001803: MSTORE 00001804: PUSH1 0x01 00001806: SWAP1 00001807: SWAP2 00001808: ADD 00001809: SWAP1 0000180a: PUSH1 0x20 0000180c: ADD 0000180d: DUP1 0000180e: DUP4 0000180f: GT 00001810: PUSH2 0x17f6 00001813: JUMPI 00001814: JUMPDEST 00001815: POP 00001816: POP 00001817: POP 00001818: POP 00001819: POP 0000181a: SWAP1 0000181b: POP 0000181c: SWAP1 0000181d: JUMP 0000181e: JUMPDEST 0000181f: PUSH2 0x1826 00001822: PUSH2 0x1296 00001825: JUMP 00001826: JUMPDEST 00001827: PUSH2 0x182f 0000182a: JUMPI 0000182b: PUSH1 0x00 0000182d: DUP1 0000182e: REVERT 0000182f: JUMPDEST 00001830: PUSH2 0x0f7f 00001833: DUP2 00001834: PUSH2 0x189b 00001837: JUMP 00001838: JUMPDEST 00001839: PUSH1 0x00 0000183b: DUP3 0000183c: DUP3 0000183d: ADD 0000183e: DUP4 0000183f: DUP2 00001840: LT 00001841: ISZERO 00001842: PUSH2 0x184a 00001845: JUMPI 00001846: PUSH1 0x00 00001848: DUP1 00001849: REVERT 0000184a: JUMPDEST 0000184b: SWAP4 0000184c: SWAP3 0000184d: POP 0000184e: POP 0000184f: POP 00001850: JUMP 00001851: JUMPDEST 00001852: PUSH1 0x60 00001854: PUSH1 0x00 00001856: DUP1 00001857: PUSH2 0x1860 0000185a: DUP6 0000185b: DUP6 0000185c: PUSH2 0x1916 0000185f: JUMP 00001860: JUMPDEST 00001861: SWAP2 00001862: POP 00001863: SWAP2 00001864: POP 00001865: DUP1 00001866: PUSH2 0x186e 00001869: JUMPI 0000186a: PUSH1 0x00 0000186c: DUP1 0000186d: REVERT 0000186e: JUMPDEST 0000186f: PUSH1 0x60 00001871: PUSH2 0x187a 00001874: DUP7 00001875: DUP5 00001876: PUSH2 0x197a 00001879: JUMP 0000187a: JUMPDEST 0000187b: POP 0000187c: SWAP4 0000187d: POP 0000187e: PUSH2 0x08f0 00001881: SWAP3 00001882: POP 00001883: POP 00001884: POP 00001885: JUMP 00001886: JUMPDEST 00001887: PUSH1 0x00 00001889: DUP3 0000188a: DUP3 0000188b: GT 0000188c: ISZERO 0000188d: PUSH2 0x1895 00001890: JUMPI 00001891: PUSH1 0x00 00001893: DUP1 00001894: REVERT 00001895: JUMPDEST 00001896: POP 00001897: SWAP1 00001898: SUB 00001899: SWAP1 0000189a: JUMP 0000189b: JUMPDEST 0000189c: PUSH1 0x01 0000189e: PUSH1 0xa0 000018a0: PUSH1 0x02 000018a2: EXP 000018a3: SUB 000018a4: DUP2 000018a5: AND 000018a6: PUSH2 0x18ae 000018a9: JUMPI 000018aa: PUSH1 0x00 000018ac: DUP1 000018ad: REVERT 000018ae: JUMPDEST 000018af: PUSH1 0x00 000018b1: DUP1 000018b2: SLOAD 000018b3: PUSH1 0x40 000018b5: MLOAD 000018b6: PUSH1 0x01 000018b8: PUSH1 0xa0 000018ba: PUSH1 0x02 000018bc: EXP 000018bd: SUB 000018be: DUP1 000018bf: DUP6 000018c0: AND 000018c1: SWAP4 000018c2: SWAP3 000018c3: AND 000018c4: SWAP2 000018c5: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 000018e6: SWAP2 000018e7: LOG3 000018e8: PUSH1 0x00 000018ea: DUP1 000018eb: SLOAD 000018ec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001901: NOT 00001902: AND 00001903: PUSH1 0x01 00001905: PUSH1 0xa0 00001907: PUSH1 0x02 00001909: EXP 0000190a: SUB 0000190b: SWAP3 0000190c: SWAP1 0000190d: SWAP3 0000190e: AND 0000190f: SWAP2 00001910: SWAP1 00001911: SWAP2 00001912: OR 00001913: SWAP1 00001914: SSTORE 00001915: JUMP 00001916: JUMPDEST 00001917: DUP2 00001918: MLOAD 00001919: PUSH1 0x00 0000191b: SWAP1 0000191c: DUP2 0000191d: SWAP1 0000191e: DUP2 0000191f: JUMPDEST 00001920: DUP2 00001921: DUP2 00001922: LT 00001923: ISZERO 00001924: PUSH2 0x1969 00001927: JUMPI 00001928: DUP5 00001929: PUSH1 0x01 0000192b: PUSH1 0xa0 0000192d: PUSH1 0x02 0000192f: EXP 00001930: SUB 00001931: AND 00001932: DUP7 00001933: DUP3 00001934: DUP2 00001935: MLOAD 00001936: DUP2 00001937: LT 00001938: PUSH2 0x193d 0000193b: JUMPI 0000193c: INVALID 0000193d: JUMPDEST 0000193e: PUSH1 0x20 00001940: MUL 00001941: PUSH1 0x20 00001943: ADD 00001944: ADD 00001945: MLOAD 00001946: PUSH1 0x01 00001948: PUSH1 0xa0 0000194a: PUSH1 0x02 0000194c: EXP 0000194d: SUB 0000194e: AND 0000194f: EQ 00001950: ISZERO 00001951: PUSH2 0x1961 00001954: JUMPI 00001955: SWAP3 00001956: POP 00001957: PUSH1 0x01 00001959: SWAP2 0000195a: POP 0000195b: PUSH2 0x1973 0000195e: SWAP1 0000195f: POP 00001960: JUMP 00001961: JUMPDEST 00001962: PUSH1 0x01 00001964: ADD 00001965: PUSH2 0x191f 00001968: JUMP 00001969: JUMPDEST 0000196a: POP 0000196b: PUSH1 0x00 0000196d: SWAP3 0000196e: POP 0000196f: DUP3 00001970: SWAP2 00001971: POP 00001972: POP 00001973: JUMPDEST 00001974: SWAP3 00001975: POP 00001976: SWAP3 00001977: SWAP1 00001978: POP 00001979: JUMP 0000197a: JUMPDEST 0000197b: PUSH1 0x60 0000197d: PUSH1 0x00 0000197f: DUP1 00001980: DUP5 00001981: MLOAD 00001982: SWAP1 00001983: POP 00001984: PUSH1 0x60 00001986: PUSH1 0x01 00001988: DUP3 00001989: SUB 0000198a: PUSH1 0x40 0000198c: MLOAD 0000198d: SWAP1 0000198e: DUP1 0000198f: DUP3 00001990: MSTORE 00001991: DUP1 00001992: PUSH1 0x20 00001994: MUL 00001995: PUSH1 0x20 00001997: ADD 00001998: DUP3 00001999: ADD 0000199a: PUSH1 0x40 0000199c: MSTORE 0000199d: DUP1 0000199e: ISZERO 0000199f: PUSH2 0x19b2 000019a2: JUMPI 000019a3: DUP2 000019a4: PUSH1 0x20 000019a6: ADD 000019a7: PUSH1 0x20 000019a9: DUP3 000019aa: MUL 000019ab: DUP1 000019ac: CODESIZE 000019ad: DUP4 000019ae: CODECOPY 000019af: ADD 000019b0: SWAP1 000019b1: POP 000019b2: JUMPDEST 000019b3: POP 000019b4: SWAP1 000019b5: POP 000019b6: PUSH1 0x00 000019b8: JUMPDEST 000019b9: DUP6 000019ba: DUP2 000019bb: LT 000019bc: ISZERO 000019bd: PUSH2 0x1a00 000019c0: JUMPI 000019c1: DUP7 000019c2: DUP2 000019c3: DUP2 000019c4: MLOAD 000019c5: DUP2 000019c6: LT 000019c7: PUSH2 0x19cc 000019ca: JUMPI 000019cb: INVALID 000019cc: JUMPDEST 000019cd: PUSH1 0x20 000019cf: MUL 000019d0: PUSH1 0x20 000019d2: ADD 000019d3: ADD 000019d4: MLOAD 000019d5: DUP3 000019d6: DUP3 000019d7: DUP2 000019d8: MLOAD 000019d9: DUP2 000019da: LT 000019db: PUSH2 0x19e0 000019de: JUMPI 000019df: INVALID 000019e0: JUMPDEST 000019e1: PUSH1 0x01 000019e3: PUSH1 0xa0 000019e5: PUSH1 0x02 000019e7: EXP 000019e8: SUB 000019e9: SWAP1 000019ea: SWAP3 000019eb: AND 000019ec: PUSH1 0x20 000019ee: SWAP3 000019ef: DUP4 000019f0: MUL 000019f1: SWAP2 000019f2: SWAP1 000019f3: SWAP2 000019f4: ADD 000019f5: SWAP1 000019f6: SWAP2 000019f7: ADD 000019f8: MSTORE 000019f9: PUSH1 0x01 000019fb: ADD 000019fc: PUSH2 0x19b8 000019ff: JUMP 00001a00: JUMPDEST 00001a01: POP 00001a02: PUSH1 0x01 00001a04: DUP6 00001a05: ADD 00001a06: JUMPDEST 00001a07: DUP3 00001a08: DUP2 00001a09: LT 00001a0a: ISZERO 00001a0b: PUSH2 0x1a51 00001a0e: JUMPI 00001a0f: DUP7 00001a10: DUP2 00001a11: DUP2 00001a12: MLOAD 00001a13: DUP2 00001a14: LT 00001a15: PUSH2 0x1a1a 00001a18: JUMPI 00001a19: INVALID 00001a1a: JUMPDEST 00001a1b: PUSH1 0x20 00001a1d: MUL 00001a1e: PUSH1 0x20 00001a20: ADD 00001a21: ADD 00001a22: MLOAD 00001a23: DUP3 00001a24: PUSH1 0x01 00001a26: DUP4 00001a27: SUB 00001a28: DUP2 00001a29: MLOAD 00001a2a: DUP2 00001a2b: LT 00001a2c: PUSH2 0x1a31 00001a2f: JUMPI 00001a30: INVALID 00001a31: JUMPDEST 00001a32: PUSH1 0x01 00001a34: PUSH1 0xa0 00001a36: PUSH1 0x02 00001a38: EXP 00001a39: SUB 00001a3a: SWAP1 00001a3b: SWAP3 00001a3c: AND 00001a3d: PUSH1 0x20 00001a3f: SWAP3 00001a40: DUP4 00001a41: MUL 00001a42: SWAP2 00001a43: SWAP1 00001a44: SWAP2 00001a45: ADD 00001a46: SWAP1 00001a47: SWAP2 00001a48: ADD 00001a49: MSTORE 00001a4a: PUSH1 0x01 00001a4c: ADD 00001a4d: PUSH2 0x1a06 00001a50: JUMP 00001a51: JUMPDEST 00001a52: POP 00001a53: DUP1 00001a54: DUP7 00001a55: DUP7 00001a56: DUP2 00001a57: MLOAD 00001a58: DUP2 00001a59: LT 00001a5a: PUSH2 0x1a5f 00001a5d: JUMPI 00001a5e: INVALID 00001a5f: JUMPDEST 00001a60: PUSH1 0x20 00001a62: MUL 00001a63: PUSH1 0x20 00001a65: ADD 00001a66: ADD 00001a67: MLOAD 00001a68: SWAP4 00001a69: POP 00001a6a: SWAP4 00001a6b: POP 00001a6c: POP 00001a6d: POP 00001a6e: SWAP3 00001a6f: POP 00001a70: SWAP3 00001a71: SWAP1 00001a72: POP 00001a73: JUMP 00001a74: JUMPDEST 00001a75: DUP3 00001a76: DUP1 00001a77: SLOAD 00001a78: DUP3 00001a79: DUP3 00001a7a: SSTORE 00001a7b: SWAP1 00001a7c: PUSH1 0x00 00001a7e: MSTORE 00001a7f: PUSH1 0x20 00001a81: PUSH1 0x00 00001a83: KECCAK256 00001a84: SWAP1 00001a85: DUP2 00001a86: ADD 00001a87: SWAP3 00001a88: DUP3 00001a89: ISZERO 00001a8a: PUSH2 0x1ad6 00001a8d: JUMPI 00001a8e: SWAP2 00001a8f: PUSH1 0x20 00001a91: MUL 00001a92: DUP3 00001a93: ADD 00001a94: JUMPDEST 00001a95: DUP3 00001a96: DUP2 00001a97: GT 00001a98: ISZERO 00001a99: PUSH2 0x1ad6 00001a9c: JUMPI 00001a9d: DUP3 00001a9e: MLOAD 00001a9f: DUP3 00001aa0: SLOAD 00001aa1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ab6: NOT 00001ab7: AND 00001ab8: PUSH1 0x01 00001aba: PUSH1 0xa0 00001abc: PUSH1 0x02 00001abe: EXP 00001abf: SUB 00001ac0: SWAP1 00001ac1: SWAP2 00001ac2: AND 00001ac3: OR 00001ac4: DUP3 00001ac5: SSTORE 00001ac6: PUSH1 0x20 00001ac8: SWAP1 00001ac9: SWAP3 00001aca: ADD 00001acb: SWAP2 00001acc: PUSH1 0x01 00001ace: SWAP1 00001acf: SWAP2 00001ad0: ADD 00001ad1: SWAP1 00001ad2: PUSH2 0x1a94 00001ad5: JUMP 00001ad6: JUMPDEST 00001ad7: POP 00001ad8: PUSH2 0x1ae2 00001adb: SWAP3 00001adc: SWAP2 00001add: POP 00001ade: PUSH2 0x1ae6 00001ae1: JUMP 00001ae2: JUMPDEST 00001ae3: POP 00001ae4: SWAP1 00001ae5: JUMP 00001ae6: JUMPDEST 00001ae7: PUSH2 0x1293 00001aea: SWAP2 00001aeb: SWAP1 00001aec: JUMPDEST 00001aed: DUP1 00001aee: DUP3 00001aef: GT 00001af0: ISZERO 00001af1: PUSH2 0x1ae2 00001af4: JUMPI 00001af5: DUP1 00001af6: SLOAD 00001af7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b0c: NOT 00001b0d: AND 00001b0e: DUP2 00001b0f: SSTORE 00001b10: PUSH1 0x01 00001b12: ADD 00001b13: PUSH2 0x1aec 00001b16: JUMP 00001b17: INVALID 00001b18: JUMP 00001b19: PUSH2 0x756c 00001b1c: PUSH21 0x2e626174636844656372656d656e74546f6b656e4f 00001b32: PUSH24 0x6e65723a20546f6b656e7320616e64207175616e74697469 00001b4b: PUSH6 0x73206c656e67 00001b52: PUSH21 0x6873206d69736d617463685661756c742e62617463 00001b68: PUSH9 0x496e6372656d656e74 00001b72: SLOAD 00001b73: PUSH16 0x6b656e4f776e65723a20546f6b656e73 00001b84: KECCAK256 00001b85: PUSH14 0x757374206e6f7420626520656d70 00001b94: PUSH21 0x795661756c742e626174636844656372656d656e74 00001baa: SLOAD 00001bab: PUSH16 0x6b656e4f776e65723a20546f6b656e73 00001bbc: KECCAK256 00001bbd: PUSH14 0x757374206e6f7420626520656d70 00001bcc: PUSH21 0x795661756c742e62617463685472616e7366657242 00001be2: PUSH2 0x6c61 00001be5: PUSH15 0x63653a20546f6b656e7320616e6420 00001bf5: PUSH18 0x75616e746974696573206c656e6774687320 00001c08: PUSH14 0x69736d617463685661756c742e62 00001c17: PUSH2 0x7463 00001c1a: PUSH9 0x496e6372656d656e74 00001c24: SLOAD 00001c25: PUSH16 0x6b656e4f776e65723a20546f6b656e73 00001c36: KECCAK256 00001c37: PUSH2 0x6e64 00001c3a: KECCAK256 00001c3b: PUSH18 0x75616e746974696573206c656e6774687320 00001c4e: PUSH14 0x69736d61746368417574686f7269 00001c5d: PUSH27 0x61626c652e616464417574686f72697a6564416464726573733a20 00001c79: COINBASE 00001c7a: PUSH5 0x6472657373 00001c80: KECCAK256 00001c81: PUSH2 0x6c72 00001c84: PUSH6 0x616479207265 00001c8b: PUSH8 0x6973746572656441 00001c94: PUSH22 0x74686f72697a61626c652e6f6e6c79417574686f7269 00001cab: PUSH27 0x65643a2053656e646572206e6f7420696e636c7564656420696e20 00001cc7: PUSH2 0x7574 00001cca: PUSH9 0x6f7269746965735661 00001cd4: PUSH22 0x6c742e62617463685472616e7366657242616c616e63 00001ceb: PUSH6 0x3a20546f6b65 00001cf2: PUSH15 0x73206d757374206e6f742062652065 00001d02: PUSH14 0x7074795661756c742e6465637265 00001d11: PUSH14 0x656e74546f6b656e4f776e65723a 00001d20: KECCAK256 00001d21: BLOBHASH 00001d22: PUSH15 0x73756666696369656e7420746f6b65 00001d32: PUSH15 0x2062616c616e63655661756c742e62 00001d42: PUSH2 0x7463 00001d45: PUSH9 0x576974686472617754 00001d4f: PUSH16 0x3a20546f6b656e7320616e6420717561 00001d60: PUSH15 0x746974696573206c656e6774687320 00001d70: PUSH14 0x69736d61746368417574686f7269 00001d7f: PUSH27 0x61626c652e72656d6f7665417574686f72697a6564416464726573 00001d9b: PUSH20 0x3a2041646472657373206e6f7420617574686f72 00001db0: PUSH10 0x7a65645661756c742e77 00001dbb: PUSH10 0x746864726177546f3a20 00001dc6: BLOBHASH 00001dc7: PUSH15 0x76616c696420706f73742077697468 00001dd7: PUSH5 0x7261772062 00001ddd: PUSH2 0x6c61 00001de0: PUSH15 0x63655661756c742e7472616e736665 00001df0: PUSH19 0x42616c616e63653a20496e7375666669636965 00001e04: PUSH15 0x7420746f6b656e2062616c616e6365 00001e14: SLOAD 00001e15: PUSH10 0x6d654c6f636b55706772 00001e20: PUSH2 0x6465 00001e23: GASPRICE 00001e24: KECCAK256 00001e25: SLOAD 00001e26: PUSH10 0x6d65206c6f636b207065 00001e31: PUSH19 0x696f64206d757374206861766520656c617073 00001e45: PUSH6 0x642e54696d65 00001e4c: UNKNOWN(0x4C) 00001e4d: PUSH16 0x636b557067726164653a204e65772070 00001e5e: PUSH6 0x72696f64206d 00001e65: PUSH22 0x73742062652067726561746572207468616e20657869 00001e7c: PUSH20 0x74696e675661756c742e62617463685769746864 00001e91: PUSH19 0x6177546f3a20546f6b656e73206d757374206e 00001ea5: PUSH16 0x7420626520656d707479a165627a7a72 00001eb6: ADDRESS 00001eb7: PC 00001eb8: KECCAK256 00001eb9: DELEGATECALL 00001eba: DUP1 00001ebb: REVERT 00001ebc: SWAP3 00001ebd: UNKNOWN(0xE3) 00001ebe: UNKNOWN(0xC5) 00001ebf: POP 00001ec0: SMOD 00001ec1: ORIGIN 00001ec2: PUSH10 0x6bb72ac4c783538dc9cf 00001ecd: PUSH27
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | upgradeability | detector | Untrusted DELEGATECALL target reachable | 55 | no | no |
viewtrace_id: 0x345c207f6020e0ca08b16d70b26b4183979adec008767a4e5a17132425946475
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 192,
"trace_id": "0x345c207f6020e0ca08b16d70b26b4183979adec008767a4e5a17132425946475",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xb9181611",
"selector": "0xb9181611",
"calldata_variants": [
"0xb9181611",
"0xb91816110000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbada5726",
"selector": "0xbada5726",
"calldata_variants": [
"0xbada5726",
"0xbada57260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc23f001f",
"selector": "0xc23f001f",
"calldata_variants": [
"0xc23f001f",
"0xc23f001f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc3b35a7e",
"selector": "0xc3b35a7e",
"calldata_variants": [
"0xc3b35a7e",
"0xc3b35a7e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd39de6e9",
"selector": "0xd39de6e9",
"calldata_variants": [
"0xd39de6e9",
"0xd39de6e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x80ddda30",
"selector": "0x80ddda30",
"calldata_variants": [
"0x80ddda30",
"0x80ddda300000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5619,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 5797,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
},
{
"pc": 5946,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [
{
"pc": 7873,
"type": "tx_origin_used"
}
],
"delegatecall_count": 4,
"untrusted_delegatecall_count": 3
}
|
| 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": "0xb9181611",
"selector": "0xb9181611",
"calldata_variants": [
"0xb9181611",
"0xb91816110000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbada5726",
"selector": "0xbada5726",
"calldata_variants": [
"0xbada5726",
"0xbada57260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc23f001f",
"selector": "0xc23f001f",
"calldata_variants": [
"0xc23f001f",
"0xc23f001f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc3b35a7e",
"selector": "0xc3b35a7e",
"calldata_variants": [
"0xc3b35a7e",
"0xc3b35a7e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd39de6e9",
"selector": "0xd39de6e9",
"calldata_variants": [
"0xd39de6e9",
"0xd39de6e90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x80ddda30",
"selector": "0x80ddda30",
"calldata_variants": [
"0x80ddda30",
"0x80ddda300000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 7873,
"type": "tx_origin_used"
}
]
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 4
}
|