019c0ea9-086b-7039-af33-ba1f33f7260e
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 |
|---|---|---|---|---|
| 41823 | artifact.fetch | complete | 1 / 3 | 2 months ago |
| 41824 | proxy.resolve | complete | 1 / 3 | 2 months ago |
| 41825 | tool.cast_disasm | complete | 1 / 3 | 2 months ago |
| 41826 | analysis.bundle | complete | 1 / 3 | 2 months ago |
| 41827 | capability.graph | complete | 1 / 3 | 2 months ago |
| 41828 | detector.run | complete | 1 / 3 | 2 months ago |
| 41829 | validation.fork | complete | 1 / 3 | 2 months ago |
| 42337 | report.consolidate | complete | 1 / 6 | 2 months ago |
{
"status": "not_proxy"
}
No slither job recorded yet.
{"no_findings":false,"summary":"Bytecode shows an Ownable-like contract (owner()/transferOwnership) with many external CALL/STATICCALLs to computed targets, and CREATE/CREATE2 usage; no delegatecall/proxy evidence. Findings below are based on bytecode-only heuristics, so access control and intended behavior remain uncertain.","findings":[{"severity":"medium","category":"access_control","title":"External CALLs with computed target/value may allow arbitrary call/value forwarding","exploit_scenario":"If any public/external function exposes these CALL paths without strict access control, an attacker could supply target/value parameters to make the contract call arbitrary addresses and forward ETH, potentially draining contract-held ETH or invoking reentrancy via malicious targets. This is especially relevant because the dispatcher includes a payable receive/fallback path and multiple CALL sites with computed targets.","recommendation":"Ensure any function that forwards calls/value is restricted (e.g., onlyOwner or allowlisted targets), or validate target/value strictly (e.g., require value == 0 unless explicitly intended). Add reentrancy protection if state is modified around these calls.","evidence":"Callsites list multiple CALLs with target_expression_category/value_expression_category set to \"computed\" and returndata_checked null (pc 1327, 2143, 2524, 2920, 3222, 3631, 4739, 4915, 5134, 5510, 8155). Detector finding: \"Untrusted CALL target/value reachable\" with no guards detected.","locations":["pc:1327","pc:2143","pc:2524","pc:2920","pc:4739","pc:8155"]},{"severity":"low","category":"other","title":"CREATE2 result appears unchecked","exploit_scenario":"A CREATE2 deployment can fail (salt collision, insufficient balance, invalid init code). If the contract does not verify the returned address, later logic may assume deployment succeeded, leading to incorrect state or funds locked. In permissionless deployment paths, this can also enable front-running of expected addresses.","recommendation":"Check the CREATE2 return value and revert on failure (address == 0). Consider access control or salt validation if deployments should be restricted or deterministic addresses are relied on.","evidence":"Basic block shows CREATE2 followed by POPs and immediate JUMP without a zero-address check.","locations":["pc:3769"]},{"severity":"low","category":"other","title":"ERC20 transfer/transferFrom calls do not appear to validate return data","exploit_scenario":"If interacting with non-standard ERC20s that return false instead of reverting, the contract may treat failed transfers as success, causing accounting mismatches or stuck funds.","recommendation":"Use a safe ERC20 wrapper that treats missing/false return data as failure (e.g., check returndata size and decode boolean), or enforce a token allowlist with compliant behavior.","evidence":"Multiple CALL sites report returndata_checked null. Runtime bytecode includes direct a9059cbb calls without explicit return-data validation.","locations":["selector:0xa9059cbb","pc:4915"]}]}
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-gj9pbyye
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019c0f2e-0831-73c2-8d44-215002b2bc48
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.
Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.
Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
mcp startup: no servers
exec
/bin/bash -lc ls in /tmp/codex-gj9pbyye succeeded in 6ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-gj9pbyye succeeded in 8ms:
{
"analysis_artifact": {
"address": "0x9665368f54e19e94adbd0780326871ce9660f61d",
"artifact_hash": "0xd8f35504f98cb59bd091e0bd894acfb8639bc7ae41aabf5a5d370a06ce00c619",
"artifact_json": {
"auth": {
"guards": []
},
"basic_blocks": [
{
"end_pc": 12,
"hash": "0xe00fd92e67ca5bc494ca81b00167e5ab4230aad3b6eaef8362d3faf2f617b724",
"opcodes": [
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"CALLDATASIZE",
"LT",
"PUSH2",
exec
/bin/bash -lc 'rg -n "storage|slot|proxy|delegatecall|selfdestruct|CREATE|callsite|selector|function" BYTECODE_BUNDLE.json | head -n 200' in /tmp/codex-gj9pbyye succeeded in 12ms:
3190: "CREATE",
4535: "CREATE2",
10400: "callsites": [
13522: "dispatcher_type": "selector_jump_table",
13523: "function_entries": [
13526: "selector": "0xe5f9dea6"
13530: "selector": "0xee1e2bb8"
13534: "selector": "0xf2fde38b"
13538: "selector": "0xfb7eb226"
13542: "selector": "0xffa1ad74"
13546: "selector": "0x8f1e7abc"
13550: "selector": "0x9e281a98"
13554: "selector": "0xad1b93e2"
13558: "selector": "0xc6d3d560"
13562: "selector": "0xd0e30db0"
13566: "selector": "0x50c3f4b5"
13570: "selector": "0x5ec181fb"
13574: "selector": "0x654db0db"
13578: "selector": "0x715018a6"
13582: "selector": "0x8da5cb5b"
exec
/bin/bash -lc "sed -n '10380,10680p' BYTECODE_BUNDLE.json" in /tmp/codex-gj9pbyye succeeded in 8ms:
},
{
"end_pc": 8599,
"hash": "0x2b20ab7bb93a4beaef79e7c86753ee84f0318a4b43060675acf9f73c79eb1038",
"opcodes": [
"ADDMOD",
"BYTE",
"STOP"
],
"start_pc": 8597
},
{
"end_pc": 8600,
"hash": "0x36a2d72ebd92ef8cd2cd30844dc14bed95bd5685cf8b1820f6dd8c6dbd4b0312",
"opcodes": [
"CALLER"
],
"start_pc": 8600
}
],
exec
/bin/bash -lc 'rg -n "signature|name|inferred" BYTECODE_BUNDLE.json | head -n 200' in /tmp/codex-gj9pbyye succeeded in 9ms:
16046: "contract_name": null,
exec
/bin/bash -lc "sed -n '15980,16140p' BYTECODE_BUNDLE.json" in /tmp/codex-gj9pbyye succeeded in 7ms:
"slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
},
{
"op": "SLOAD",
"pc": 2605,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
},
{
"op": "SLOAD",
"pc": 2664,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 2980,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
},
{
"op": "SLOAD",
"pc": 2990,
exec
/bin/bash -lc 'rg -n "CREATE2|CREATE" BYTECODE_BUNDLE.json | head -n 40' in /tmp/codex-gj9pbyye succeeded in 7ms:
3190: "CREATE",
4535: "CREATE2",
24192: "sink": "CREATE"
24195: "title": "CREATE/CREATE2 reachable",
24204: "sink": "CREATE",
exec
/bin/bash -lc "sed -n '3160,3225p' BYTECODE_BUNDLE.json" in /tmp/codex-gj9pbyye succeeded in 11ms:
"PUSH2",
"JUMPI"
],
"start_pc": 2556
},
{
"end_pc": 2575,
"hash": "0x2572677e3b73180b09be6399616a01d48abd17c442959129ffc685c9f77c0509",
"opcodes": [
"PUSH1",
"MLOAD",
"PUSH2",
"OP_90",
"PUSH2",
"JUMP"
],
"start_pc": 2565
},
{
"end_pc": 2593,
exec
/bin/bash -lc "sed -n '4500,4565p' BYTECODE_BUNDLE.json" in /tmp/codex-gj9pbyye succeeded in 7ms:
"OP_83",
"OP_83",
"PUSH2",
"JUMP"
],
"start_pc": 3745
},
{
"end_pc": 3768,
"hash": "0x30238010c8394e7278b97a7b8edb96b2adb7a8d469447aebbd2559c7fb896fec",
"opcodes": [
"JUMPDEST",
"OP_90",
"POP",
"PUSH2",
"OP_85",
"OP_82",
"OP_86",
"PUSH2",
"JUMP"
codex
{"no_findings":false,"summary":"Bytecode shows an Ownable-like contract (owner()/transferOwnership) with many external CALL/STATICCALLs to computed targets, and CREATE/CREATE2 usage; no delegatecall/proxy evidence. Findings below are based on bytecode-only heuristics, so access control and intended behavior remain uncertain.","findings":[{"severity":"medium","category":"access_control","title":"External CALLs with computed target/value may allow arbitrary call/value forwarding","exploit_scenario":"If any public/external function exposes these CALL paths without strict access control, an attacker could supply target/value parameters to make the contract call arbitrary addresses and forward ETH, potentially draining contract-held ETH or invoking reentrancy via malicious targets. This is especially relevant because the dispatcher includes a payable receive/fallback path and multiple CALL sites with computed targets.","recommendation":"Ensure any function that forwards calls/value is restricted (e.g., onlyOwner or allowlisted targets), or validate target/value strictly (e.g., require value == 0 unless explicitly intended). Add reentrancy protection if state is modified around these calls.","evidence":"Callsites list multiple CALLs with target_expression_category/value_expression_category set to \"computed\" and returndata_checked null (pc 1327, 2143, 2524, 2920, 3222, 3631, 4739, 4915, 5134, 5510, 8155). Detector finding: \"Untrusted CALL target/value reachable\" with no guards detected.","locations":["pc:1327","pc:2143","pc:2524","pc:2920","pc:4739","pc:8155"]},{"severity":"low","category":"other","title":"CREATE2 result appears unchecked","exploit_scenario":"A CREATE2 deployment can fail (salt collision, insufficient balance, invalid init code). If the contract does not verify the returned address, later logic may assume deployment succeeded, leading to incorrect state or funds locked. In permissionless deployment paths, this can also enable front-running of expected addresses.","recommendation":"Check the CREATE2 return value and revert on failure (address == 0). Consider access control or salt validation if deployments should be restricted or deterministic addresses are relied on.","evidence":"Basic block shows CREATE2 followed by POPs and immediate JUMP without a zero-address check.","locations":["pc:3769"]},{"severity":"low","category":"other","title":"ERC20 transfer/transferFrom calls do not appear to validate return data","exploit_scenario":"If interacting with non-standard ERC20s that return false instead of reverting, the contract may treat failed transfers as success, causing accounting mismatches or stuck funds.","recommendation":"Use a safe ERC20 wrapper that treats missing/false return data as failure (e.g., check returndata size and decode boolean), or enforce a token allowlist with compliant behavior.","evidence":"Multiple CALL sites report returndata_checked null. Runtime bytecode includes direct a9059cbb calls without explicit return-data validation.","locations":["selector:0xa9059cbb","pc:4915"]}]}
tokens used
50,806
{
"codex": {
"ran_at": "2026-01-30T13:55:56.886011+00:00",
"returncode": 0
},
"project": {
"mode": "bytecode",
"bytecode_length": 17204,
"bytecode_truncated": false,
"capability_graph_present": true,
"analysis_artifact_present": true
},
"summary": "Bytecode shows an Ownable-like contract (owner()/transferOwnership) with many external CALL/STATICCALLs to computed targets, and CREATE/CREATE2 usage; no delegatecall/proxy evidence. Findings below are based on bytecode-only heuristics, so access control and intended behavior remain uncertain.",
"raw_final": {
"summary": "Bytecode shows an Ownable-like contract (owner()/transferOwnership) with many external CALL/STATICCALLs to computed targets, and CREATE/CREATE2 usage; no delegatecall/proxy evidence. Findings below are based on bytecode-only heuristics, so access control and intended behavior remain uncertain.",
"findings": [
{
"title": "External CALLs with computed target/value may allow arbitrary call/value forwarding",
"category": "access_control",
"evidence": "Callsites list multiple CALLs with target_expression_category/value_expression_category set to \"computed\" and returndata_checked null (pc 1327, 2143, 2524, 2920, 3222, 3631, 4739, 4915, 5134, 5510, 8155). Detector finding: \"Untrusted CALL target/value reachable\" with no guards detected.",
"severity": "medium",
"locations": [
"pc:1327",
"pc:2143",
"pc:2524",
"pc:2920",
"pc:4739",
"pc:8155"
],
"recommendation": "Ensure any function that forwards calls/value is restricted (e.g., onlyOwner or allowlisted targets), or validate target/value strictly (e.g., require value == 0 unless explicitly intended). Add reentrancy protection if state is modified around these calls.",
"exploit_scenario": "If any public/external function exposes these CALL paths without strict access control, an attacker could supply target/value parameters to make the contract call arbitrary addresses and forward ETH, potentially draining contract-held ETH or invoking reentrancy via malicious targets. This is especially relevant because the dispatcher includes a payable receive/fallback path and multiple CALL sites with computed targets."
},
{
"title": "CREATE2 result appears unchecked",
"category": "other",
"evidence": "Basic block shows CREATE2 followed by POPs and immediate JUMP without a zero-address check.",
"severity": "low",
"locations": [
"pc:3769"
],
"recommendation": "Check the CREATE2 return value and revert on failure (address == 0). Consider access control or salt validation if deployments should be restricted or deterministic addresses are relied on.",
"exploit_scenario": "A CREATE2 deployment can fail (salt collision, insufficient balance, invalid init code). If the contract does not verify the returned address, later logic may assume deployment succeeded, leading to incorrect state or funds locked. In permissionless deployment paths, this can also enable front-running of expected addresses."
},
{
"title": "ERC20 transfer/transferFrom calls do not appear to validate return data",
"category": "other",
"evidence": "Multiple CALL sites report returndata_checked null. Runtime bytecode includes direct a9059cbb calls without explicit return-data validation.",
"severity": "low",
"locations": [
"selector:0xa9059cbb",
"pc:4915"
],
"recommendation": "Use a safe ERC20 wrapper that treats missing/false return data as failure (e.g., check returndata size and decode boolean), or enforce a token allowlist with compliant behavior.",
"exploit_scenario": "If interacting with non-standard ERC20s that return false instead of reverting, the contract may treat failed transfers as success, causing accounting mismatches or stuck funds."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x011c 0000000c: JUMPI 0000000d: PUSH0 0000000e: CALLDATALOAD 0000000f: PUSH1 0xe0 00000011: SHR 00000012: DUP1 00000013: PUSH4 0x8f1e7abc 00000018: GT 00000019: PUSH2 0x009d 0000001c: JUMPI 0000001d: DUP1 0000001e: PUSH4 0xe5f9dea6 00000023: GT 00000024: PUSH2 0x0062 00000027: JUMPI 00000028: DUP1 00000029: PUSH4 0xe5f9dea6 0000002e: EQ 0000002f: PUSH2 0x02fb 00000032: JUMPI 00000033: DUP1 00000034: PUSH4 0xee1e2bb8 00000039: EQ 0000003a: PUSH2 0x031a 0000003d: JUMPI 0000003e: DUP1 0000003f: PUSH4 0xf2fde38b 00000044: EQ 00000045: PUSH2 0x0339 00000048: JUMPI 00000049: DUP1 0000004a: PUSH4 0xfb7eb226 0000004f: EQ 00000050: PUSH2 0x0358 00000053: JUMPI 00000054: DUP1 00000055: PUSH4 0xffa1ad74 0000005a: EQ 0000005b: PUSH2 0x0377 0000005e: JUMPI 0000005f: PUSH0 00000060: DUP1 00000061: REVERT 00000062: JUMPDEST 00000063: DUP1 00000064: PUSH4 0x8f1e7abc 00000069: EQ 0000006a: PUSH2 0x0277 0000006d: JUMPI 0000006e: DUP1 0000006f: PUSH4 0x9e281a98 00000074: EQ 00000075: PUSH2 0x0296 00000078: JUMPI 00000079: DUP1 0000007a: PUSH4 0xad1b93e2 0000007f: EQ 00000080: PUSH2 0x02b5 00000083: JUMPI 00000084: DUP1 00000085: PUSH4 0xc6d3d560 0000008a: EQ 0000008b: PUSH2 0x02d4 0000008e: JUMPI 0000008f: DUP1 00000090: PUSH4 0xd0e30db0 00000095: EQ 00000096: PUSH2 0x02f3 00000099: JUMPI 0000009a: PUSH0 0000009b: DUP1 0000009c: REVERT 0000009d: JUMPDEST 0000009e: DUP1 0000009f: PUSH4 0x50c3f4b5 000000a4: GT 000000a5: PUSH2 0x00e3 000000a8: JUMPI 000000a9: DUP1 000000aa: PUSH4 0x50c3f4b5 000000af: EQ 000000b0: PUSH2 0x01ec 000000b3: JUMPI 000000b4: DUP1 000000b5: PUSH4 0x5ec181fb 000000ba: EQ 000000bb: PUSH2 0x020b 000000be: JUMPI 000000bf: DUP1 000000c0: PUSH4 0x654db0db 000000c5: EQ 000000c6: PUSH2 0x022a 000000c9: JUMPI 000000ca: DUP1 000000cb: PUSH4 0x715018a6 000000d0: EQ 000000d1: PUSH2 0x023f 000000d4: JUMPI 000000d5: DUP1 000000d6: PUSH4 0x8da5cb5b 000000db: EQ 000000dc: PUSH2 0x0253 000000df: JUMPI 000000e0: PUSH0 000000e1: DUP1 000000e2: REVERT 000000e3: JUMPDEST 000000e4: DUP1 000000e5: PUSH2 0x5446 000000e8: EQ 000000e9: PUSH2 0x0127 000000ec: JUMPI 000000ed: DUP1 000000ee: PUSH4 0x2848aeaf 000000f3: EQ 000000f4: PUSH2 0x0148 000000f7: JUMPI 000000f8: DUP1 000000f9: PUSH4 0x2c4e78b6 000000fe: EQ 000000ff: PUSH2 0x018c 00000102: JUMPI 00000103: DUP1 00000104: PUSH4 0x2e1a7d4d 00000109: EQ 0000010a: PUSH2 0x01ae 0000010d: JUMPI 0000010e: DUP1 0000010f: PUSH4 0x4e93d06f 00000114: EQ 00000115: PUSH2 0x01cd 00000118: JUMPI 00000119: PUSH0 0000011a: DUP1 0000011b: REVERT 0000011c: JUMPDEST 0000011d: CALLDATASIZE 0000011e: PUSH2 0x0123 00000121: JUMPI 00000122: STOP 00000123: JUMPDEST 00000124: PUSH0 00000125: DUP1 00000126: REVERT 00000127: JUMPDEST 00000128: CALLVALUE 00000129: DUP1 0000012a: ISZERO 0000012b: PUSH2 0x0132 0000012e: JUMPI 0000012f: PUSH0 00000130: DUP1 00000131: REVERT 00000132: JUMPDEST 00000133: POP 00000134: PUSH2 0x0146 00000137: PUSH2 0x0141 0000013a: CALLDATASIZE 0000013b: PUSH1 0x04 0000013d: PUSH2 0x1693 00000140: JUMP 00000141: JUMPDEST 00000142: PUSH2 0x038c 00000145: JUMP 00000146: JUMPDEST 00000147: STOP 00000148: JUMPDEST 00000149: CALLVALUE 0000014a: DUP1 0000014b: ISZERO 0000014c: PUSH2 0x0153 0000014f: JUMPI 00000150: PUSH0 00000151: DUP1 00000152: REVERT 00000153: JUMPDEST 00000154: POP 00000155: PUSH2 0x0176 00000158: PUSH2 0x0162 0000015b: CALLDATASIZE 0000015c: PUSH1 0x04 0000015e: PUSH2 0x16f3 00000161: JUMP 00000162: JUMPDEST 00000163: PUSH1 0x01 00000165: PUSH1 0x20 00000167: MSTORE 00000168: PUSH0 00000169: SWAP1 0000016a: DUP2 0000016b: MSTORE 0000016c: PUSH1 0x40 0000016e: SWAP1 0000016f: KECCAK256 00000170: SLOAD 00000171: PUSH1 0xff 00000173: AND 00000174: DUP2 00000175: JUMP 00000176: JUMPDEST 00000177: PUSH1 0x40 00000179: MLOAD 0000017a: PUSH2 0x0183 0000017d: SWAP2 0000017e: SWAP1 0000017f: PUSH2 0x171b 00000182: JUMP 00000183: JUMPDEST 00000184: PUSH1 0x40 00000186: MLOAD 00000187: DUP1 00000188: SWAP2 00000189: SUB 0000018a: SWAP1 0000018b: RETURN 0000018c: JUMPDEST 0000018d: CALLVALUE 0000018e: DUP1 0000018f: ISZERO 00000190: PUSH2 0x0197 00000193: JUMPI 00000194: PUSH0 00000195: DUP1 00000196: REVERT 00000197: JUMPDEST 00000198: POP 00000199: PUSH2 0x01a1 0000019c: PUSH1 0x04 0000019e: SLOAD 0000019f: DUP2 000001a0: JUMP 000001a1: JUMPDEST 000001a2: PUSH1 0x40 000001a4: MLOAD 000001a5: PUSH2 0x0183 000001a8: SWAP2 000001a9: SWAP1 000001aa: PUSH2 0x172f 000001ad: JUMP 000001ae: JUMPDEST 000001af: CALLVALUE 000001b0: DUP1 000001b1: ISZERO 000001b2: PUSH2 0x01b9 000001b5: JUMPI 000001b6: PUSH0 000001b7: DUP1 000001b8: REVERT 000001b9: JUMPDEST 000001ba: POP 000001bb: PUSH2 0x0146 000001be: PUSH2 0x01c8 000001c1: CALLDATASIZE 000001c2: PUSH1 0x04 000001c4: PUSH2 0x173d 000001c7: JUMP 000001c8: JUMPDEST 000001c9: PUSH2 0x0456 000001cc: JUMP 000001cd: JUMPDEST 000001ce: CALLVALUE 000001cf: DUP1 000001d0: ISZERO 000001d1: PUSH2 0x01d8 000001d4: JUMPI 000001d5: PUSH0 000001d6: DUP1 000001d7: REVERT 000001d8: JUMPDEST 000001d9: POP 000001da: PUSH2 0x0146 000001dd: PUSH2 0x01e7 000001e0: CALLDATASIZE 000001e1: PUSH1 0x04 000001e3: PUSH2 0x18a8 000001e6: JUMP 000001e7: JUMPDEST 000001e8: PUSH2 0x0550 000001eb: JUMP 000001ec: JUMPDEST 000001ed: CALLVALUE 000001ee: DUP1 000001ef: ISZERO 000001f0: PUSH2 0x01f7 000001f3: JUMPI 000001f4: PUSH0 000001f5: DUP1 000001f6: REVERT 000001f7: JUMPDEST 000001f8: POP 000001f9: PUSH2 0x0146 000001fc: PUSH2 0x0206 000001ff: CALLDATASIZE 00000200: PUSH1 0x04 00000202: PUSH2 0x1948 00000205: JUMP 00000206: JUMPDEST 00000207: PUSH2 0x05f0 0000020a: JUMP 0000020b: JUMPDEST 0000020c: CALLVALUE 0000020d: DUP1 0000020e: ISZERO 0000020f: PUSH2 0x0216 00000212: JUMPI 00000213: PUSH0 00000214: DUP1 00000215: REVERT 00000216: JUMPDEST 00000217: POP 00000218: PUSH2 0x0146 0000021b: PUSH2 0x0225 0000021e: CALLDATASIZE 0000021f: PUSH1 0x04 00000221: PUSH2 0x1a09 00000224: JUMP 00000225: JUMPDEST 00000226: PUSH2 0x0690 00000229: JUMP 0000022a: JUMPDEST 0000022b: CALLVALUE 0000022c: DUP1 0000022d: ISZERO 0000022e: PUSH2 0x0235 00000231: JUMPI 00000232: PUSH0 00000233: DUP1 00000234: REVERT 00000235: JUMPDEST 00000236: POP 00000237: PUSH2 0x01a1 0000023a: PUSH1 0x03 0000023c: SLOAD 0000023d: DUP2 0000023e: JUMP 0000023f: JUMPDEST 00000240: CALLVALUE 00000241: DUP1 00000242: ISZERO 00000243: PUSH2 0x024a 00000246: JUMPI 00000247: PUSH0 00000248: DUP1 00000249: REVERT 0000024a: JUMPDEST 0000024b: POP 0000024c: PUSH2 0x0146 0000024f: PUSH2 0x071a 00000252: JUMP 00000253: JUMPDEST 00000254: CALLVALUE 00000255: DUP1 00000256: ISZERO 00000257: PUSH2 0x025e 0000025a: JUMPI 0000025b: PUSH0 0000025c: DUP1 0000025d: REVERT 0000025e: JUMPDEST 0000025f: POP 00000260: PUSH0 00000261: SLOAD 00000262: PUSH1 0x01 00000264: PUSH1 0x01 00000266: PUSH1 0xa0 00000268: SHL 00000269: SUB 0000026a: AND 0000026b: PUSH1 0x40 0000026d: MLOAD 0000026e: PUSH2 0x0183 00000271: SWAP2 00000272: SWAP1 00000273: PUSH2 0x1a57 00000276: JUMP 00000277: JUMPDEST 00000278: CALLVALUE 00000279: DUP1 0000027a: ISZERO 0000027b: PUSH2 0x0282 0000027e: JUMPI 0000027f: PUSH0 00000280: DUP1 00000281: REVERT 00000282: JUMPDEST 00000283: POP 00000284: PUSH2 0x0146 00000287: PUSH2 0x0291 0000028a: CALLDATASIZE 0000028b: PUSH1 0x04 0000028d: PUSH2 0x1a65 00000290: JUMP 00000291: JUMPDEST 00000292: PUSH2 0x072d 00000295: JUMP 00000296: JUMPDEST 00000297: CALLVALUE 00000298: DUP1 00000299: ISZERO 0000029a: PUSH2 0x02a1 0000029d: JUMPI 0000029e: PUSH0 0000029f: DUP1 000002a0: REVERT 000002a1: JUMPDEST 000002a2: POP 000002a3: PUSH2 0x0146 000002a6: PUSH2 0x02b0 000002a9: CALLDATASIZE 000002aa: PUSH1 0x04 000002ac: PUSH2 0x1acd 000002af: JUMP 000002b0: JUMPDEST 000002b1: PUSH2 0x077e 000002b4: JUMP 000002b5: JUMPDEST 000002b6: CALLVALUE 000002b7: DUP1 000002b8: ISZERO 000002b9: PUSH2 0x02c0 000002bc: JUMPI 000002bd: PUSH0 000002be: DUP1 000002bf: REVERT 000002c0: JUMPDEST 000002c1: POP 000002c2: PUSH2 0x0146 000002c5: PUSH2 0x02cf 000002c8: CALLDATASIZE 000002c9: PUSH1 0x04 000002cb: PUSH2 0x1b07 000002ce: JUMP 000002cf: JUMPDEST 000002d0: PUSH2 0x0806 000002d3: JUMP 000002d4: JUMPDEST 000002d5: CALLVALUE 000002d6: DUP1 000002d7: ISZERO 000002d8: PUSH2 0x02df 000002db: JUMPI 000002dc: PUSH0 000002dd: DUP1 000002de: REVERT 000002df: JUMPDEST 000002e0: POP 000002e1: PUSH2 0x0146 000002e4: PUSH2 0x02ee 000002e7: CALLDATASIZE 000002e8: PUSH1 0x04 000002ea: PUSH2 0x1948 000002ed: JUMP 000002ee: JUMPDEST 000002ef: PUSH2 0x08f5 000002f2: JUMP 000002f3: JUMPDEST 000002f4: PUSH2 0x0146 000002f7: PUSH2 0x0984 000002fa: JUMP 000002fb: JUMPDEST 000002fc: CALLVALUE 000002fd: DUP1 000002fe: ISZERO 000002ff: PUSH2 0x0306 00000302: JUMPI 00000303: PUSH0 00000304: DUP1 00000305: REVERT 00000306: JUMPDEST 00000307: POP 00000308: PUSH2 0x0146 0000030b: PUSH2 0x0315 0000030e: CALLDATASIZE 0000030f: PUSH1 0x04 00000311: PUSH2 0x173d 00000314: JUMP 00000315: JUMPDEST 00000316: PUSH2 0x09f2 00000319: JUMP 0000031a: JUMPDEST 0000031b: CALLVALUE 0000031c: DUP1 0000031d: ISZERO 0000031e: PUSH2 0x0325 00000321: JUMPI 00000322: PUSH0 00000323: DUP1 00000324: REVERT 00000325: JUMPDEST 00000326: POP 00000327: PUSH2 0x0146 0000032a: PUSH2 0x0334 0000032d: CALLDATASIZE 0000032e: PUSH1 0x04 00000330: PUSH2 0x1b90 00000333: JUMP 00000334: JUMPDEST 00000335: PUSH2 0x0a7a 00000338: JUMP 00000339: JUMPDEST 0000033a: CALLVALUE 0000033b: DUP1 0000033c: ISZERO 0000033d: PUSH2 0x0344 00000340: JUMPI 00000341: PUSH0 00000342: DUP1 00000343: REVERT 00000344: JUMPDEST 00000345: POP 00000346: PUSH2 0x0146 00000349: PUSH2 0x0353 0000034c: CALLDATASIZE 0000034d: PUSH1 0x04 0000034f: PUSH2 0x16f3 00000352: JUMP 00000353: JUMPDEST 00000354: PUSH2 0x0bed 00000357: JUMP 00000358: JUMPDEST 00000359: CALLVALUE 0000035a: DUP1 0000035b: ISZERO 0000035c: PUSH2 0x0363 0000035f: JUMPI 00000360: PUSH0 00000361: DUP1 00000362: REVERT 00000363: JUMPDEST 00000364: POP 00000365: PUSH2 0x0146 00000368: PUSH2 0x0372 0000036b: CALLDATASIZE 0000036c: PUSH1 0x04 0000036e: PUSH2 0x1bf6 00000371: JUMP 00000372: JUMPDEST 00000373: PUSH2 0x0c2a 00000376: JUMP 00000377: JUMPDEST 00000378: CALLVALUE 00000379: DUP1 0000037a: ISZERO 0000037b: PUSH2 0x0382 0000037e: JUMPI 0000037f: PUSH0 00000380: DUP1 00000381: REVERT 00000382: JUMPDEST 00000383: POP 00000384: PUSH2 0x01a1 00000387: PUSH1 0x07 00000389: SLOAD 0000038a: DUP2 0000038b: JUMP 0000038c: JUMPDEST 0000038d: PUSH2 0x0394 00000390: PUSH2 0x0cb3 00000393: JUMP 00000394: JUMPDEST 00000395: PUSH2 0x039d 00000398: DUP2 00000399: PUSH2 0x0ce2 0000039c: JUMP 0000039d: JUMPDEST 0000039e: PUSH1 0x05 000003a0: SLOAD 000003a1: PUSH0 000003a2: DUP2 000003a3: SWAP1 000003a4: SUB 000003a5: PUSH2 0x03ae 000003a8: JUMPI 000003a9: POP 000003aa: PUSH2 0x0450 000003ad: JUMP 000003ae: JUMPDEST 000003af: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000003c4: PUSH0 000003c5: DUP1 000003c6: PUSH2 0x03ce 000003c9: DUP9 000003ca: PUSH2 0x0d07 000003cd: JUMP 000003ce: JUMPDEST 000003cf: SWAP2 000003d0: POP 000003d1: SWAP2 000003d2: POP 000003d3: PUSH0 000003d4: DUP1 000003d5: DUP9 000003d6: PUSH1 0x01 000003d8: PUSH1 0x01 000003da: PUSH1 0xa0 000003dc: SHL 000003dd: SUB 000003de: AND 000003df: DUP6 000003e0: PUSH1 0x01 000003e2: PUSH1 0x01 000003e4: PUSH1 0xa0 000003e6: SHL 000003e7: SUB 000003e8: AND 000003e9: LT 000003ea: PUSH2 0x03f4 000003ed: JUMPI 000003ee: DUP3 000003ef: DUP5 000003f0: PUSH2 0x03f7 000003f3: JUMP 000003f4: JUMPDEST 000003f5: DUP4 000003f6: DUP4 000003f7: JUMPDEST 000003f8: SWAP2 000003f9: POP 000003fa: SWAP2 000003fb: POP 000003fc: PUSH0 000003fd: DUP1 000003fe: PUSH2 0x0409 00000401: DUP9 00000402: DUP12 00000403: DUP7 00000404: DUP7 00000405: PUSH2 0x0d1b 00000408: JUMP 00000409: JUMPDEST 0000040a: SWAP2 0000040b: POP 0000040c: SWAP2 0000040d: POP 0000040e: DUP2 0000040f: PUSH1 0x05 00000411: PUSH0 00000412: DUP3 00000413: DUP3 00000414: SLOAD 00000415: PUSH2 0x041e 00000418: SWAP2 00000419: SWAP1 0000041a: PUSH2 0x1c3c 0000041d: JUMP 0000041e: JUMPDEST 0000041f: SWAP1 00000420: SWAP2 00000421: SSTORE 00000422: POP 00000423: PUSH2 0x042f 00000426: SWAP1 00000427: POP 00000428: DUP8 00000429: DUP14 0000042a: DUP5 0000042b: PUSH2 0x0d73 0000042e: JUMP 0000042f: JUMPDEST 00000430: PUSH2 0x043c 00000433: DUP13 00000434: DUP9 00000435: DUP14 00000436: DUP5 00000437: CALLER 00000438: PUSH2 0x0d83 0000043b: JUMP 0000043c: JUMPDEST 0000043d: PUSH2 0x0446 00000440: DUP8 00000441: DUP4 00000442: PUSH2 0x0d90 00000445: JUMP 00000446: JUMPDEST 00000447: POP 00000448: POP 00000449: POP 0000044a: POP 0000044b: POP 0000044c: POP 0000044d: POP 0000044e: POP 0000044f: POP 00000450: JUMPDEST 00000451: POP 00000452: POP 00000453: POP 00000454: POP 00000455: JUMP 00000456: JUMPDEST 00000457: PUSH2 0x045e 0000045a: PUSH2 0x0ddf 0000045d: JUMP 0000045e: JUMPDEST 0000045f: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000474: PUSH0 00000475: DUP3 00000476: SWAP1 00000477: SUB 00000478: PUSH2 0x04e9 0000047b: JUMPI 0000047c: PUSH1 0x40 0000047e: MLOAD 0000047f: PUSH4 0x70a08231 00000484: PUSH1 0xe0 00000486: SHL 00000487: DUP2 00000488: MSTORE 00000489: PUSH1 0x01 0000048b: PUSH1 0x01 0000048d: PUSH1 0xa0 0000048f: SHL 00000490: SUB 00000491: DUP3 00000492: AND 00000493: SWAP1 00000494: PUSH4 0x70a08231 00000499: SWAP1 0000049a: PUSH2 0x04a7 0000049d: SWAP1 0000049e: ADDRESS 0000049f: SWAP1 000004a0: PUSH1 0x04 000004a2: ADD 000004a3: PUSH2 0x1a57 000004a6: JUMP 000004a7: JUMPDEST 000004a8: PUSH1 0x20 000004aa: PUSH1 0x40 000004ac: MLOAD 000004ad: DUP1 000004ae: DUP4 000004af: SUB 000004b0: DUP2 000004b1: DUP7 000004b2: GAS 000004b3: STATICCALL 000004b4: ISZERO 000004b5: DUP1 000004b6: ISZERO 000004b7: PUSH2 0x04c2 000004ba: JUMPI 000004bb: RETURNDATASIZE 000004bc: PUSH0 000004bd: DUP1 000004be: RETURNDATACOPY 000004bf: RETURNDATASIZE 000004c0: PUSH0 000004c1: REVERT 000004c2: JUMPDEST 000004c3: POP 000004c4: POP 000004c5: POP 000004c6: POP 000004c7: PUSH1 0x40 000004c9: MLOAD 000004ca: RETURNDATASIZE 000004cb: PUSH1 0x1f 000004cd: NOT 000004ce: PUSH1 0x1f 000004d0: DUP3 000004d1: ADD 000004d2: AND 000004d3: DUP3 000004d4: ADD 000004d5: DUP1 000004d6: PUSH1 0x40 000004d8: MSTORE 000004d9: POP 000004da: DUP2 000004db: ADD 000004dc: SWAP1 000004dd: PUSH2 0x04e6 000004e0: SWAP2 000004e1: SWAP1 000004e2: PUSH2 0x1c5a 000004e5: JUMP 000004e6: JUMPDEST 000004e7: SWAP2 000004e8: POP 000004e9: JUMPDEST 000004ea: PUSH1 0x40 000004ec: MLOAD 000004ed: PUSH4 0x2e1a7d4d 000004f2: PUSH1 0xe0 000004f4: SHL 000004f5: DUP2 000004f6: MSTORE 000004f7: PUSH1 0x01 000004f9: PUSH1 0x01 000004fb: PUSH1 0xa0 000004fd: SHL 000004fe: SUB 000004ff: DUP3 00000500: AND 00000501: SWAP1 00000502: PUSH4 0x2e1a7d4d 00000507: SWAP1 00000508: PUSH2 0x0515 0000050b: SWAP1 0000050c: DUP6 0000050d: SWAP1 0000050e: PUSH1 0x04 00000510: ADD 00000511: PUSH2 0x172f 00000514: JUMP 00000515: JUMPDEST 00000516: PUSH0 00000517: PUSH1 0x40 00000519: MLOAD 0000051a: DUP1 0000051b: DUP4 0000051c: SUB 0000051d: DUP2 0000051e: PUSH0 0000051f: DUP8 00000520: DUP1 00000521: EXTCODESIZE 00000522: ISZERO 00000523: DUP1 00000524: ISZERO 00000525: PUSH2 0x052c 00000528: JUMPI 00000529: PUSH0 0000052a: DUP1 0000052b: REVERT 0000052c: JUMPDEST 0000052d: POP 0000052e: GAS 0000052f: CALL 00000530: ISZERO 00000531: DUP1 00000532: ISZERO 00000533: PUSH2 0x053e 00000536: JUMPI 00000537: RETURNDATASIZE 00000538: PUSH0 00000539: DUP1 0000053a: RETURNDATACOPY 0000053b: RETURNDATASIZE 0000053c: PUSH0 0000053d: REVERT 0000053e: JUMPDEST 0000053f: POP 00000540: POP 00000541: POP 00000542: POP 00000543: PUSH2 0x054c 00000546: CALLER 00000547: SELFBALANCE 00000548: PUSH2 0x0e0b 0000054b: JUMP 0000054c: JUMPDEST 0000054d: POP 0000054e: POP 0000054f: JUMP 00000550: JUMPDEST 00000551: PUSH2 0x0558 00000554: PUSH2 0x0cb3 00000557: JUMP 00000558: JUMPDEST 00000559: PUSH2 0x0565 0000055c: DUP2 0000055d: PUSH1 0x40 0000055f: ADD 00000560: MLOAD 00000561: PUSH2 0x0ce2 00000564: JUMP 00000565: JUMPDEST 00000566: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0000057b: PUSH0 0000057c: PUSH2 0x0584 0000057f: DUP8 00000580: PUSH2 0x0e84 00000583: JUMP 00000584: JUMPDEST 00000585: SWAP1 00000586: POP 00000587: PUSH0 00000588: PUSH2 0x0591 0000058b: DUP4 0000058c: ADDRESS 0000058d: PUSH2 0x0e8f 00000590: JUMP 00000591: JUMPDEST 00000592: SWAP1 00000593: POP 00000594: PUSH2 0x059f 00000597: DUP4 00000598: DUP9 00000599: DUP9 0000059a: DUP9 0000059b: PUSH2 0x0ea1 0000059e: JUMP 0000059f: JUMPDEST 000005a0: PUSH0 000005a1: PUSH2 0x05aa 000005a4: DUP5 000005a5: ADDRESS 000005a6: PUSH2 0x0e8f 000005a9: JUMP 000005aa: JUMPDEST 000005ab: SWAP1 000005ac: POP 000005ad: PUSH0 000005ae: PUSH2 0x05b6 000005b1: DUP11 000005b2: PUSH2 0x0e84 000005b5: JUMP 000005b6: JUMPDEST 000005b7: SWAP1 000005b8: POP 000005b9: PUSH0 000005ba: PUSH2 0x05c3 000005bd: DUP7 000005be: DUP14 000005bf: PUSH2 0x0e8f 000005c2: JUMP 000005c3: JUMPDEST 000005c4: SWAP1 000005c5: POP 000005c6: PUSH2 0x05de 000005c9: DUP6 000005ca: DUP4 000005cb: DUP7 000005cc: DUP7 000005cd: PUSH1 0x06 000005cf: SLOAD 000005d0: DUP13 000005d1: PUSH0 000005d2: ADD 000005d3: MLOAD 000005d4: DUP8 000005d5: DUP15 000005d6: PUSH1 0x20 000005d8: ADD 000005d9: MLOAD 000005da: PUSH2 0x0eca 000005dd: JUMP 000005de: JUMPDEST 000005df: POP 000005e0: POP 000005e1: PUSH0 000005e2: PUSH1 0x06 000005e4: SSTORE 000005e5: POP 000005e6: POP 000005e7: POP 000005e8: POP 000005e9: POP 000005ea: POP 000005eb: POP 000005ec: POP 000005ed: POP 000005ee: POP 000005ef: JUMP 000005f0: JUMPDEST 000005f1: PUSH2 0x05f8 000005f4: PUSH2 0x0cb3 000005f7: JUMP 000005f8: JUMPDEST 000005f9: PUSH2 0x0605 000005fc: DUP2 000005fd: PUSH1 0x40 000005ff: ADD 00000600: MLOAD 00000601: PUSH2 0x0ce2 00000604: JUMP 00000605: JUMPDEST 00000606: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0000061b: PUSH0 0000061c: PUSH2 0x0624 0000061f: DUP7 00000620: PUSH2 0x0e84 00000623: JUMP 00000624: JUMPDEST 00000625: SWAP1 00000626: POP 00000627: PUSH0 00000628: PUSH2 0x0631 0000062b: DUP4 0000062c: ADDRESS 0000062d: PUSH2 0x0e8f 00000630: JUMP 00000631: JUMPDEST 00000632: SWAP1 00000633: POP 00000634: PUSH2 0x0640 00000637: DUP9 00000638: DUP5 00000639: DUP10 0000063a: DUP10 0000063b: DUP10 0000063c: PUSH2 0x0f91 0000063f: JUMP 00000640: JUMPDEST 00000641: PUSH0 00000642: PUSH2 0x064a 00000645: DUP9 00000646: PUSH2 0x0e84 00000649: JUMP 0000064a: JUMPDEST 0000064b: SWAP1 0000064c: POP 0000064d: PUSH0 0000064e: PUSH2 0x0657 00000651: DUP6 00000652: ADDRESS 00000653: PUSH2 0x0e8f 00000656: JUMP 00000657: JUMPDEST 00000658: SWAP1 00000659: POP 0000065a: PUSH0 0000065b: PUSH2 0x0664 0000065e: DUP7 0000065f: DUP13 00000660: PUSH2 0x0e8f 00000663: JUMP 00000664: JUMPDEST 00000665: SWAP1 00000666: POP 00000667: PUSH2 0x067f 0000066a: DUP6 0000066b: DUP5 0000066c: DUP7 0000066d: DUP6 0000066e: PUSH1 0x06 00000670: SLOAD 00000671: DUP13 00000672: PUSH0 00000673: ADD 00000674: MLOAD 00000675: DUP8 00000676: DUP15 00000677: PUSH1 0x20 00000679: ADD 0000067a: MLOAD 0000067b: PUSH2 0x0eca 0000067e: JUMP 0000067f: JUMPDEST 00000680: POP 00000681: POP 00000682: PUSH0 00000683: PUSH1 0x06 00000685: SSTORE 00000686: POP 00000687: POP 00000688: POP 00000689: POP 0000068a: POP 0000068b: POP 0000068c: POP 0000068d: POP 0000068e: POP 0000068f: JUMP 00000690: JUMPDEST 00000691: PUSH2 0x0698 00000694: PUSH2 0x0ddf 00000697: JUMP 00000698: JUMPDEST 00000699: PUSH0 0000069a: JUMPDEST 0000069b: DUP2 0000069c: DUP2 0000069d: LT 0000069e: ISZERO 0000069f: PUSH2 0x06fc 000006a2: JUMPI 000006a3: PUSH1 0x01 000006a5: DUP1 000006a6: PUSH0 000006a7: DUP6 000006a8: DUP6 000006a9: DUP6 000006aa: DUP2 000006ab: DUP2 000006ac: LT 000006ad: PUSH2 0x06b8 000006b0: JUMPI 000006b1: PUSH2 0x06b8 000006b4: PUSH2 0x1c78 000006b7: JUMP 000006b8: JUMPDEST 000006b9: SWAP1 000006ba: POP 000006bb: PUSH1 0x20 000006bd: MUL 000006be: ADD 000006bf: PUSH1 0x20 000006c1: DUP2 000006c2: ADD 000006c3: SWAP1 000006c4: PUSH2 0x06cd 000006c7: SWAP2 000006c8: SWAP1 000006c9: PUSH2 0x16f3 000006cc: JUMP 000006cd: JUMPDEST 000006ce: PUSH1 0x01 000006d0: PUSH1 0x01 000006d2: PUSH1 0xa0 000006d4: SHL 000006d5: SUB 000006d6: AND 000006d7: DUP2 000006d8: MSTORE 000006d9: PUSH1 0x20 000006db: DUP2 000006dc: ADD 000006dd: SWAP2 000006de: SWAP1 000006df: SWAP2 000006e0: MSTORE 000006e1: PUSH1 0x40 000006e3: ADD 000006e4: PUSH0 000006e5: KECCAK256 000006e6: DUP1 000006e7: SLOAD 000006e8: PUSH1 0xff 000006ea: NOT 000006eb: AND 000006ec: SWAP2 000006ed: ISZERO 000006ee: ISZERO 000006ef: SWAP2 000006f0: SWAP1 000006f1: SWAP2 000006f2: OR 000006f3: SWAP1 000006f4: SSTORE 000006f5: PUSH1 0x01 000006f7: ADD 000006f8: PUSH2 0x069a 000006fb: JUMP 000006fc: JUMPDEST 000006fd: POP 000006fe: DUP2 000006ff: DUP2 00000700: SWAP1 00000701: POP 00000702: PUSH1 0x04 00000704: PUSH0 00000705: DUP3 00000706: DUP3 00000707: SLOAD 00000708: PUSH2 0x0711 0000070b: SWAP2 0000070c: SWAP1 0000070d: PUSH2 0x1c8c 00000710: JUMP 00000711: JUMPDEST 00000712: SWAP1 00000713: SWAP2 00000714: SSTORE 00000715: POP 00000716: POP 00000717: POP 00000718: POP 00000719: JUMP 0000071a: JUMPDEST 0000071b: PUSH2 0x0722 0000071e: PUSH2 0x0ddf 00000721: JUMP 00000722: JUMPDEST 00000723: PUSH2 0x072b 00000726: PUSH0 00000727: PUSH2 0x0fe9 0000072a: JUMP 0000072b: JUMPDEST 0000072c: JUMP 0000072d: JUMPDEST 0000072e: PUSH2 0x0735 00000731: PUSH2 0x0cb3 00000734: JUMP 00000735: JUMPDEST 00000736: PUSH2 0x0742 00000739: DUP2 0000073a: PUSH1 0x40 0000073c: ADD 0000073d: MLOAD 0000073e: PUSH2 0x0ce2 00000741: JUMP 00000742: JUMPDEST 00000743: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000758: PUSH0 00000759: PUSH2 0x0761 0000075c: DUP8 0000075d: PUSH2 0x0e84 00000760: JUMP 00000761: JUMPDEST 00000762: SWAP1 00000763: POP 00000764: PUSH0 00000765: PUSH2 0x076e 00000768: DUP4 00000769: ADDRESS 0000076a: PUSH2 0x0e8f 0000076d: JUMP 0000076e: JUMPDEST 0000076f: SWAP1 00000770: POP 00000771: PUSH2 0x059f 00000774: DUP10 00000775: DUP5 00000776: DUP11 00000777: DUP10 00000778: DUP10 00000779: DUP13 0000077a: PUSH2 0x1038 0000077d: JUMP 0000077e: JUMPDEST 0000077f: PUSH2 0x0786 00000782: PUSH2 0x0ddf 00000785: JUMP 00000786: JUMPDEST 00000787: DUP1 00000788: PUSH0 00000789: SUB 0000078a: PUSH2 0x07fb 0000078d: JUMPI 0000078e: PUSH1 0x40 00000790: MLOAD 00000791: PUSH4 0x70a08231 00000796: PUSH1 0xe0 00000798: SHL 00000799: DUP2 0000079a: MSTORE 0000079b: PUSH1 0x01 0000079d: PUSH1 0x01 0000079f: PUSH1 0xa0 000007a1: SHL 000007a2: SUB 000007a3: DUP4 000007a4: AND 000007a5: SWAP1 000007a6: PUSH4 0x70a08231 000007ab: SWAP1 000007ac: PUSH2 0x07b9 000007af: SWAP1 000007b0: ADDRESS 000007b1: SWAP1 000007b2: PUSH1 0x04 000007b4: ADD 000007b5: PUSH2 0x1a57 000007b8: JUMP 000007b9: JUMPDEST 000007ba: PUSH1 0x20 000007bc: PUSH1 0x40 000007be: MLOAD 000007bf: DUP1 000007c0: DUP4 000007c1: SUB 000007c2: DUP2 000007c3: DUP7 000007c4: GAS 000007c5: STATICCALL 000007c6: ISZERO 000007c7: DUP1 000007c8: ISZERO 000007c9: PUSH2 0x07d4 000007cc: JUMPI 000007cd: RETURNDATASIZE 000007ce: PUSH0 000007cf: DUP1 000007d0: RETURNDATACOPY 000007d1: RETURNDATASIZE 000007d2: PUSH0 000007d3: REVERT 000007d4: JUMPDEST 000007d5: POP 000007d6: POP 000007d7: POP 000007d8: POP 000007d9: PUSH1 0x40 000007db: MLOAD 000007dc: RETURNDATASIZE 000007dd: PUSH1 0x1f 000007df: NOT 000007e0: PUSH1 0x1f 000007e2: DUP3 000007e3: ADD 000007e4: AND 000007e5: DUP3 000007e6: ADD 000007e7: DUP1 000007e8: PUSH1 0x40 000007ea: MSTORE 000007eb: POP 000007ec: DUP2 000007ed: ADD 000007ee: SWAP1 000007ef: PUSH2 0x07f8 000007f2: SWAP2 000007f3: SWAP1 000007f4: PUSH2 0x1c5a 000007f7: JUMP 000007f8: JUMPDEST 000007f9: SWAP1 000007fa: POP 000007fb: JUMPDEST 000007fc: PUSH2 0x054c 000007ff: DUP3 00000800: CALLER 00000801: DUP4 00000802: PUSH2 0x10ca 00000805: JUMP 00000806: JUMPDEST 00000807: PUSH2 0x080e 0000080a: PUSH2 0x0ddf 0000080d: JUMP 0000080e: JUMPDEST 0000080f: PUSH1 0x40 00000811: MLOAD 00000812: PUSH4 0x2e1a7d4d 00000817: PUSH1 0xe0 00000819: SHL 0000081a: DUP2 0000081b: MSTORE 0000081c: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000831: SWAP1 00000832: PUSH4 0x2e1a7d4d 00000837: SWAP1 00000838: PUSH2 0x0845 0000083b: SWAP1 0000083c: DUP9 0000083d: SWAP1 0000083e: PUSH1 0x04 00000840: ADD 00000841: PUSH2 0x172f 00000844: JUMP 00000845: JUMPDEST 00000846: PUSH0 00000847: PUSH1 0x40 00000849: MLOAD 0000084a: DUP1 0000084b: DUP4 0000084c: SUB 0000084d: DUP2 0000084e: PUSH0 0000084f: DUP8 00000850: DUP1 00000851: EXTCODESIZE 00000852: ISZERO 00000853: DUP1 00000854: ISZERO 00000855: PUSH2 0x085c 00000858: JUMPI 00000859: PUSH0 0000085a: DUP1 0000085b: REVERT 0000085c: JUMPDEST 0000085d: POP 0000085e: GAS 0000085f: CALL 00000860: ISZERO 00000861: DUP1 00000862: ISZERO 00000863: PUSH2 0x086e 00000866: JUMPI 00000867: RETURNDATASIZE 00000868: PUSH0 00000869: DUP1 0000086a: RETURNDATACOPY 0000086b: RETURNDATASIZE 0000086c: PUSH0 0000086d: REVERT 0000086e: JUMPDEST 0000086f: POP 00000870: POP 00000871: POP 00000872: DUP4 00000873: DUP3 00000874: EQ 00000875: SWAP1 00000876: POP 00000877: PUSH2 0x0893 0000087a: JUMPI 0000087b: PUSH1 0x40 0000087d: MLOAD 0000087e: PUSH4 0x33f84aaf 00000883: PUSH1 0xe1 00000885: SHL 00000886: DUP2 00000887: MSTORE 00000888: PUSH1 0x04 0000088a: ADD 0000088b: PUSH1 0x40 0000088d: MLOAD 0000088e: DUP1 0000088f: SWAP2 00000890: SUB 00000891: SWAP1 00000892: REVERT 00000893: JUMPDEST 00000894: PUSH0 00000895: JUMPDEST 00000896: DUP4 00000897: DUP2 00000898: LT 00000899: ISZERO 0000089a: PUSH2 0x08ed 0000089d: JUMPI 0000089e: PUSH2 0x08e5 000008a1: DUP6 000008a2: DUP6 000008a3: DUP4 000008a4: DUP2 000008a5: DUP2 000008a6: LT 000008a7: PUSH2 0x08b2 000008aa: JUMPI 000008ab: PUSH2 0x08b2 000008ae: PUSH2 0x1c78 000008b1: JUMP 000008b2: JUMPDEST 000008b3: SWAP1 000008b4: POP 000008b5: PUSH1 0x20 000008b7: MUL 000008b8: ADD 000008b9: PUSH1 0x20 000008bb: DUP2 000008bc: ADD 000008bd: SWAP1 000008be: PUSH2 0x08c7 000008c1: SWAP2 000008c2: SWAP1 000008c3: PUSH2 0x16f3 000008c6: JUMP 000008c7: JUMPDEST 000008c8: DUP5 000008c9: DUP5 000008ca: DUP5 000008cb: DUP2 000008cc: DUP2 000008cd: LT 000008ce: PUSH2 0x08d9 000008d1: JUMPI 000008d2: PUSH2 0x08d9 000008d5: PUSH2 0x1c78 000008d8: JUMP 000008d9: JUMPDEST 000008da: SWAP1 000008db: POP 000008dc: PUSH1 0x20 000008de: MUL 000008df: ADD 000008e0: CALLDATALOAD 000008e1: PUSH2 0x0e0b 000008e4: JUMP 000008e5: JUMPDEST 000008e6: PUSH1 0x01 000008e8: ADD 000008e9: PUSH2 0x0895 000008ec: JUMP 000008ed: JUMPDEST 000008ee: POP 000008ef: POP 000008f0: POP 000008f1: POP 000008f2: POP 000008f3: POP 000008f4: JUMP 000008f5: JUMPDEST 000008f6: PUSH2 0x08fd 000008f9: PUSH2 0x0cb3 000008fc: JUMP 000008fd: JUMPDEST 000008fe: PUSH2 0x090a 00000901: DUP2 00000902: PUSH1 0x40 00000904: ADD 00000905: MLOAD 00000906: PUSH2 0x0ce2 00000909: JUMP 0000090a: JUMPDEST 0000090b: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000920: PUSH0 00000921: PUSH2 0x0929 00000924: DUP7 00000925: PUSH2 0x0e84 00000928: JUMP 00000929: JUMPDEST 0000092a: SWAP1 0000092b: POP 0000092c: PUSH0 0000092d: PUSH2 0x0936 00000930: DUP4 00000931: ADDRESS 00000932: PUSH2 0x0e8f 00000935: JUMP 00000936: JUMPDEST 00000937: SWAP1 00000938: POP 00000939: PUSH2 0x0945 0000093c: DUP9 0000093d: DUP5 0000093e: DUP10 0000093f: DUP10 00000940: DUP10 00000941: PUSH2 0x1122 00000944: JUMP 00000945: JUMPDEST 00000946: PUSH0 00000947: PUSH2 0x0950 0000094a: DUP5 0000094b: ADDRESS 0000094c: PUSH2 0x0e8f 0000094f: JUMP 00000950: JUMPDEST 00000951: SWAP1 00000952: POP 00000953: PUSH0 00000954: PUSH2 0x095c 00000957: DUP10 00000958: PUSH2 0x0e84 0000095b: JUMP 0000095c: JUMPDEST 0000095d: SWAP1 0000095e: POP 0000095f: PUSH0 00000960: PUSH2 0x0969 00000963: DUP7 00000964: DUP13 00000965: PUSH2 0x0e8f 00000968: JUMP 00000969: JUMPDEST 0000096a: SWAP1 0000096b: POP 0000096c: PUSH2 0x067f 0000096f: DUP6 00000970: DUP4 00000971: DUP7 00000972: DUP7 00000973: PUSH1 0x06 00000975: SLOAD 00000976: DUP13 00000977: PUSH0 00000978: ADD 00000979: MLOAD 0000097a: DUP8 0000097b: DUP15 0000097c: PUSH1 0x20 0000097e: ADD 0000097f: MLOAD 00000980: PUSH2 0x0eca 00000983: JUMP 00000984: JUMPDEST 00000985: PUSH2 0x098c 00000988: PUSH2 0x0ddf 0000098b: JUMP 0000098c: JUMPDEST 0000098d: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000009a2: PUSH1 0x01 000009a4: PUSH1 0x01 000009a6: PUSH1 0xa0 000009a8: SHL 000009a9: SUB 000009aa: AND 000009ab: PUSH4 0xd0e30db0 000009b0: CALLVALUE 000009b1: PUSH1 0x40 000009b3: MLOAD 000009b4: DUP3 000009b5: PUSH4 0xffffffff 000009ba: AND 000009bb: PUSH1 0xe0 000009bd: SHL 000009be: DUP2 000009bf: MSTORE 000009c0: PUSH1 0x04 000009c2: ADD 000009c3: PUSH0 000009c4: PUSH1 0x40 000009c6: MLOAD 000009c7: DUP1 000009c8: DUP4 000009c9: SUB 000009ca: DUP2 000009cb: DUP6 000009cc: DUP9 000009cd: DUP1 000009ce: EXTCODESIZE 000009cf: ISZERO 000009d0: DUP1 000009d1: ISZERO 000009d2: PUSH2 0x09d9 000009d5: JUMPI 000009d6: PUSH0 000009d7: DUP1 000009d8: REVERT 000009d9: JUMPDEST 000009da: POP 000009db: GAS 000009dc: CALL 000009dd: ISZERO 000009de: DUP1 000009df: ISZERO 000009e0: PUSH2 0x09eb 000009e3: JUMPI 000009e4: RETURNDATASIZE 000009e5: PUSH0 000009e6: DUP1 000009e7: RETURNDATACOPY 000009e8: RETURNDATASIZE 000009e9: PUSH0 000009ea: REVERT 000009eb: JUMPDEST 000009ec: POP 000009ed: POP 000009ee: POP 000009ef: POP 000009f0: POP 000009f1: JUMP 000009f2: JUMPDEST 000009f3: PUSH2 0x09fa 000009f6: PUSH2 0x0ddf 000009f9: JUMP 000009fa: JUMPDEST 000009fb: PUSH0 000009fc: JUMPDEST 000009fd: DUP2 000009fe: DUP2 000009ff: LT 00000a00: ISZERO 00000a01: PUSH2 0x0a60 00000a04: JUMPI 00000a05: PUSH1 0x40 00000a07: MLOAD 00000a08: PUSH2 0x0a10 00000a0b: SWAP1 00000a0c: PUSH2 0x1647 00000a0f: JUMP 00000a10: JUMPDEST 00000a11: PUSH1 0x40 00000a13: MLOAD 00000a14: DUP1 00000a15: SWAP2 00000a16: SUB 00000a17: SWAP1 00000a18: PUSH0 00000a19: CREATE 00000a1a: DUP1 00000a1b: ISZERO 00000a1c: DUP1 00000a1d: ISZERO 00000a1e: PUSH2 0x0a29 00000a21: JUMPI 00000a22: RETURNDATASIZE 00000a23: PUSH0 00000a24: DUP1 00000a25: RETURNDATACOPY 00000a26: RETURNDATASIZE 00000a27: PUSH0 00000a28: REVERT 00000a29: JUMPDEST 00000a2a: POP 00000a2b: PUSH1 0x03 00000a2d: SLOAD 00000a2e: PUSH0 00000a2f: SWAP1 00000a30: DUP2 00000a31: MSTORE 00000a32: PUSH1 0x02 00000a34: PUSH1 0x20 00000a36: MSTORE 00000a37: PUSH1 0x40 00000a39: SWAP1 00000a3a: KECCAK256 00000a3b: DUP1 00000a3c: SLOAD 00000a3d: PUSH1 0x01 00000a3f: PUSH1 0x01 00000a41: PUSH1 0xa0 00000a43: SHL 00000a44: SUB 00000a45: NOT 00000a46: AND 00000a47: PUSH1 0x01 00000a49: PUSH1 0x01 00000a4b: PUSH1 0xa0 00000a4d: SHL 00000a4e: SUB 00000a4f: SWAP3 00000a50: SWAP1 00000a51: SWAP3 00000a52: AND 00000a53: SWAP2 00000a54: SWAP1 00000a55: SWAP2 00000a56: OR 00000a57: SWAP1 00000a58: SSTORE 00000a59: PUSH1 0x01 00000a5b: ADD 00000a5c: PUSH2 0x09fc 00000a5f: JUMP 00000a60: JUMPDEST 00000a61: POP 00000a62: DUP1 00000a63: PUSH1 0x03 00000a65: PUSH0 00000a66: DUP3 00000a67: DUP3 00000a68: SLOAD 00000a69: PUSH2 0x0a72 00000a6c: SWAP2 00000a6d: SWAP1 00000a6e: PUSH2 0x1c8c 00000a71: JUMP 00000a72: JUMPDEST 00000a73: SWAP1 00000a74: SWAP2 00000a75: SSTORE 00000a76: POP 00000a77: POP 00000a78: POP 00000a79: JUMP 00000a7a: JUMPDEST 00000a7b: PUSH2 0x0a82 00000a7e: PUSH2 0x0cb3 00000a81: JUMP 00000a82: JUMPDEST 00000a83: PUSH2 0x0a8b 00000a86: DUP2 00000a87: PUSH2 0x0ce2 00000a8a: JUMP 00000a8b: JUMPDEST 00000a8c: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000aa1: PUSH1 0x01 00000aa3: PUSH1 0x01 00000aa5: PUSH1 0xa0 00000aa7: SHL 00000aa8: SUB 00000aa9: DUP6 00000aaa: AND 00000aab: DUP2 00000aac: LT 00000aad: PUSH0 00000aae: PUSH2 0x0ab7 00000ab1: DUP4 00000ab2: ADDRESS 00000ab3: PUSH2 0x0e8f 00000ab6: JUMP 00000ab7: JUMPDEST 00000ab8: PUSH0 00000ab9: DUP7 00000aba: DUP2 00000abb: MSTORE 00000abc: PUSH1 0x02 00000abe: PUSH1 0x20 00000ac0: MSTORE 00000ac1: PUSH1 0x40 00000ac3: SWAP1 00000ac4: KECCAK256 00000ac5: SLOAD 00000ac6: SWAP1 00000ac7: SWAP2 00000ac8: POP 00000ac9: PUSH1 0x01 00000acb: PUSH1 0x01 00000acd: PUSH1 0xa0 00000acf: SHL 00000ad0: SUB 00000ad1: AND 00000ad2: DUP1 00000ad3: PUSH2 0x0afa 00000ad6: JUMPI 00000ad7: DUP6 00000ad8: PUSH1 0x40 00000ada: MLOAD 00000adb: PUSH4 0xbb5d4343 00000ae0: PUSH1 0xe0 00000ae2: SHL 00000ae3: DUP2 00000ae4: MSTORE 00000ae5: PUSH1 0x04 00000ae7: ADD 00000ae8: PUSH2 0x0af1 00000aeb: SWAP2 00000aec: SWAP1 00000aed: PUSH2 0x172f 00000af0: JUMP 00000af1: JUMPDEST 00000af2: PUSH1 0x40 00000af4: MLOAD 00000af5: DUP1 00000af6: SWAP2 00000af7: SUB 00000af8: SWAP1 00000af9: REVERT 00000afa: JUMPDEST 00000afb: PUSH0 00000afc: PUSH2 0x0b06 00000aff: DUP9 00000b00: DUP12 00000b01: DUP7 00000b02: PUSH2 0x1198 00000b05: JUMP 00000b06: JUMPDEST 00000b07: SWAP1 00000b08: POP 00000b09: PUSH2 0x0b13 00000b0c: DUP6 00000b0d: DUP12 00000b0e: DUP4 00000b0f: PUSH2 0x0d73 00000b12: JUMP 00000b13: JUMPDEST 00000b14: PUSH2 0x0b20 00000b17: DUP11 00000b18: DUP7 00000b19: DUP12 00000b1a: DUP12 00000b1b: DUP7 00000b1c: PUSH2 0x0d83 00000b1f: JUMP 00000b20: JUMPDEST 00000b21: PUSH1 0x40 00000b23: MLOAD 00000b24: PUSH4 0x35bb2427 00000b29: PUSH1 0xe1 00000b2b: SHL 00000b2c: DUP2 00000b2d: MSTORE 00000b2e: PUSH1 0x01 00000b30: PUSH1 0x01 00000b32: PUSH1 0xa0 00000b34: SHL 00000b35: SUB 00000b36: DUP4 00000b37: AND 00000b38: SWAP1 00000b39: PUSH4 0x6b76484e 00000b3e: SWAP1 00000b3f: PUSH2 0x0b4e 00000b42: SWAP1 00000b43: DUP14 00000b44: SWAP1 00000b45: DUP14 00000b46: SWAP1 00000b47: PUSH1 0x04 00000b49: ADD 00000b4a: PUSH2 0x1c9f 00000b4d: JUMP 00000b4e: JUMPDEST 00000b4f: PUSH0 00000b50: PUSH1 0x40 00000b52: MLOAD 00000b53: DUP1 00000b54: DUP4 00000b55: SUB 00000b56: DUP2 00000b57: PUSH0 00000b58: DUP8 00000b59: DUP1 00000b5a: EXTCODESIZE 00000b5b: ISZERO 00000b5c: DUP1 00000b5d: ISZERO 00000b5e: PUSH2 0x0b65 00000b61: JUMPI 00000b62: PUSH0 00000b63: DUP1 00000b64: REVERT 00000b65: JUMPDEST 00000b66: POP 00000b67: GAS 00000b68: CALL 00000b69: ISZERO 00000b6a: DUP1 00000b6b: ISZERO 00000b6c: PUSH2 0x0b77 00000b6f: JUMPI 00000b70: RETURNDATASIZE 00000b71: PUSH0 00000b72: DUP1 00000b73: RETURNDATACOPY 00000b74: RETURNDATASIZE 00000b75: PUSH0 00000b76: REVERT 00000b77: JUMPDEST 00000b78: POP 00000b79: POP 00000b7a: POP 00000b7b: POP 00000b7c: PUSH2 0x0b87 00000b7f: DUP11 00000b80: DUP11 00000b81: DUP8 00000b82: ADDRESS 00000b83: PUSH2 0x11ac 00000b86: JUMP 00000b87: JUMPDEST 00000b88: PUSH0 00000b89: PUSH2 0x0b92 00000b8c: DUP7 00000b8d: ADDRESS 00000b8e: PUSH2 0x0e8f 00000b91: JUMP 00000b92: JUMPDEST 00000b93: SWAP1 00000b94: POP 00000b95: PUSH0 00000b96: PUSH2 0x0b9f 00000b99: DUP3 00000b9a: DUP7 00000b9b: PUSH2 0x1c3c 00000b9e: JUMP 00000b9f: JUMPDEST 00000ba0: SWAP1 00000ba1: POP 00000ba2: PUSH1 0x06 00000ba4: SLOAD 00000ba5: DUP2 00000ba6: GT 00000ba7: ISZERO 00000ba8: PUSH2 0x0bc9 00000bab: JUMPI 00000bac: PUSH1 0x06 00000bae: SLOAD 00000baf: PUSH1 0x40 00000bb1: MLOAD 00000bb2: PUSH4 0x8ed97227 00000bb7: PUSH1 0xe0 00000bb9: SHL 00000bba: DUP2 00000bbb: MSTORE 00000bbc: PUSH2 0x0af1 00000bbf: SWAP2 00000bc0: DUP4 00000bc1: SWAP2 00000bc2: PUSH1 0x04 00000bc4: ADD 00000bc5: PUSH2 0x1cba 00000bc8: JUMP 00000bc9: JUMPDEST 00000bca: DUP1 00000bcb: PUSH1 0x06 00000bcd: PUSH0 00000bce: DUP3 00000bcf: DUP3 00000bd0: SLOAD 00000bd1: PUSH2 0x0bda 00000bd4: SWAP2 00000bd5: SWAP1 00000bd6: PUSH2 0x1c3c 00000bd9: JUMP 00000bda: JUMPDEST 00000bdb: SWAP1 00000bdc: SWAP2 00000bdd: SSTORE 00000bde: POP 00000bdf: POP 00000be0: POP 00000be1: POP 00000be2: POP 00000be3: POP 00000be4: POP 00000be5: POP 00000be6: POP 00000be7: POP 00000be8: POP 00000be9: POP 00000bea: POP 00000beb: POP 00000bec: JUMP 00000bed: JUMPDEST 00000bee: PUSH2 0x0bf5 00000bf1: PUSH2 0x0ddf 00000bf4: JUMP 00000bf5: JUMPDEST 00000bf6: PUSH1 0x01 00000bf8: PUSH1 0x01 00000bfa: PUSH1 0xa0 00000bfc: SHL 00000bfd: SUB 00000bfe: DUP2 00000bff: AND 00000c00: PUSH2 0x0c1e 00000c03: JUMPI 00000c04: PUSH0 00000c05: PUSH1 0x40 00000c07: MLOAD 00000c08: PUSH4 0x1e4fbdf7 00000c0d: PUSH1 0xe0 00000c0f: SHL 00000c10: DUP2 00000c11: MSTORE 00000c12: PUSH1 0x04 00000c14: ADD 00000c15: PUSH2 0x0af1 00000c18: SWAP2 00000c19: SWAP1 00000c1a: PUSH2 0x1a57 00000c1d: JUMP 00000c1e: JUMPDEST 00000c1f: PUSH2 0x0c27 00000c22: DUP2 00000c23: PUSH2 0x0fe9 00000c26: JUMP 00000c27: JUMPDEST 00000c28: POP 00000c29: JUMP 00000c2a: JUMPDEST 00000c2b: PUSH2 0x0c32 00000c2e: PUSH2 0x0ddf 00000c31: JUMP 00000c32: JUMPDEST 00000c33: PUSH2 0x0c3b 00000c36: DUP2 00000c37: PUSH2 0x0ce2 00000c3a: JUMP 00000c3b: JUMPDEST 00000c3c: PUSH1 0x05 00000c3e: DUP4 00000c3f: SWAP1 00000c40: SSTORE 00000c41: PUSH1 0x06 00000c43: DUP3 00000c44: SWAP1 00000c45: SSTORE 00000c46: PUSH1 0x40 00000c48: MLOAD 00000c49: PUSH4 0x2e1a7d4d 00000c4e: PUSH1 0xe0 00000c50: SHL 00000c51: DUP2 00000c52: MSTORE 00000c53: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00000c68: SWAP1 00000c69: PUSH4 0x2e1a7d4d 00000c6e: SWAP1 00000c6f: PUSH2 0x0c7c 00000c72: SWAP1 00000c73: DUP8 00000c74: SWAP1 00000c75: PUSH1 0x04 00000c77: ADD 00000c78: PUSH2 0x172f 00000c7b: JUMP 00000c7c: JUMPDEST 00000c7d: PUSH0 00000c7e: PUSH1 0x40 00000c80: MLOAD 00000c81: DUP1 00000c82: DUP4 00000c83: SUB 00000c84: DUP2 00000c85: PUSH0 00000c86: DUP8 00000c87: DUP1 00000c88: EXTCODESIZE 00000c89: ISZERO 00000c8a: DUP1 00000c8b: ISZERO 00000c8c: PUSH2 0x0c93 00000c8f: JUMPI 00000c90: PUSH0 00000c91: DUP1 00000c92: REVERT 00000c93: JUMPDEST 00000c94: POP 00000c95: GAS 00000c96: CALL 00000c97: ISZERO 00000c98: DUP1 00000c99: ISZERO 00000c9a: PUSH2 0x0ca5 00000c9d: JUMPI 00000c9e: RETURNDATASIZE 00000c9f: PUSH0 00000ca0: DUP1 00000ca1: RETURNDATACOPY 00000ca2: RETURNDATASIZE 00000ca3: PUSH0 00000ca4: REVERT 00000ca5: JUMPDEST 00000ca6: POP 00000ca7: POP 00000ca8: POP 00000ca9: POP 00000caa: PUSH2 0x0450 00000cad: COINBASE 00000cae: DUP6 00000caf: PUSH2 0x0e0b 00000cb2: JUMP 00000cb3: JUMPDEST 00000cb4: CALLER 00000cb5: PUSH0 00000cb6: SWAP1 00000cb7: DUP2 00000cb8: MSTORE 00000cb9: PUSH1 0x01 00000cbb: PUSH1 0x20 00000cbd: MSTORE 00000cbe: PUSH1 0x40 00000cc0: SWAP1 00000cc1: KECCAK256 00000cc2: SLOAD 00000cc3: PUSH1 0xff 00000cc5: AND 00000cc6: PUSH2 0x072b 00000cc9: JUMPI 00000cca: PUSH1 0x40 00000ccc: MLOAD 00000ccd: PUSH4 0x1eb49d6d 00000cd2: PUSH1 0xe1 00000cd4: SHL 00000cd5: DUP2 00000cd6: MSTORE 00000cd7: PUSH1 0x04 00000cd9: ADD 00000cda: PUSH1 0x40 00000cdc: MLOAD 00000cdd: DUP1 00000cde: SWAP2 00000cdf: SUB 00000ce0: SWAP1 00000ce1: REVERT 00000ce2: JUMPDEST 00000ce3: DUP1 00000ce4: TIMESTAMP 00000ce5: GT 00000ce6: ISZERO 00000ce7: PUSH2 0x0c27 00000cea: JUMPI 00000ceb: TIMESTAMP 00000cec: DUP2 00000ced: PUSH1 0x40 00000cef: MLOAD 00000cf0: PUSH4 0xeadb91a5 00000cf5: PUSH1 0xe0 00000cf7: SHL 00000cf8: DUP2 00000cf9: MSTORE 00000cfa: PUSH1 0x04 00000cfc: ADD 00000cfd: PUSH2 0x0af1 00000d00: SWAP3 00000d01: SWAP2 00000d02: SWAP1 00000d03: PUSH2 0x1cba 00000d06: JUMP 00000d07: JUMPDEST 00000d08: PUSH0 00000d09: DUP1 00000d0a: PUSH2 0x0d12 00000d0d: DUP4 00000d0e: PUSH2 0x11b8 00000d11: JUMP 00000d12: JUMPDEST 00000d13: SWAP2 00000d14: POP 00000d15: SWAP2 00000d16: POP 00000d17: SWAP2 00000d18: POP 00000d19: SWAP2 00000d1a: JUMP 00000d1b: JUMPDEST 00000d1c: PUSH0 00000d1d: DUP1 00000d1e: DUP3 00000d1f: DUP6 00000d20: LT 00000d21: PUSH2 0x0d39 00000d24: JUMPI 00000d25: DUP6 00000d26: PUSH2 0x0d30 00000d29: DUP8 00000d2a: DUP7 00000d2b: DUP7 00000d2c: PUSH2 0x1230 00000d2f: JUMP 00000d30: JUMPDEST 00000d31: SWAP2 00000d32: POP 00000d33: SWAP2 00000d34: POP 00000d35: PUSH2 0x0d6a 00000d38: JUMP 00000d39: JUMPDEST 00000d3a: PUSH0 00000d3b: PUSH2 0x0d45 00000d3e: DUP7 00000d3f: DUP7 00000d40: DUP7 00000d41: PUSH2 0x123c 00000d44: JUMP 00000d45: JUMPDEST 00000d46: SWAP1 00000d47: POP 00000d48: DUP7 00000d49: DUP2 00000d4a: GT 00000d4b: PUSH2 0x0d58 00000d4e: JUMPI 00000d4f: SWAP2 00000d50: POP 00000d51: DUP5 00000d52: SWAP1 00000d53: POP 00000d54: PUSH2 0x0d6a 00000d57: JUMP 00000d58: JUMPDEST 00000d59: DUP7 00000d5a: PUSH2 0x0d64 00000d5d: DUP9 00000d5e: DUP8 00000d5f: DUP8 00000d60: PUSH2 0x1230 00000d63: JUMP 00000d64: JUMPDEST 00000d65: SWAP3 00000d66: POP 00000d67: SWAP3 00000d68: POP 00000d69: POP 00000d6a: JUMPDEST 00000d6b: SWAP5 00000d6c: POP 00000d6d: SWAP5 00000d6e: SWAP3 00000d6f: POP 00000d70: POP 00000d71: POP 00000d72: JUMP 00000d73: JUMPDEST 00000d74: PUSH2 0x0d7e 00000d77: DUP4 00000d78: DUP4 00000d79: DUP4 00000d7a: PUSH2 0x1248 00000d7d: JUMP 00000d7e: JUMPDEST 00000d7f: POP 00000d80: POP 00000d81: POP 00000d82: JUMP 00000d83: JUMPDEST 00000d84: PUSH2 0x09eb 00000d87: DUP6 00000d88: DUP6 00000d89: DUP6 00000d8a: DUP6 00000d8b: DUP6 00000d8c: PUSH2 0x12b6 00000d8f: JUMP 00000d90: JUMPDEST 00000d91: PUSH0 00000d92: DUP1 00000d93: PUSH2 0x03e8 00000d96: PUSH2 0x0da0 00000d99: PUSH1 0x05 00000d9b: DUP6 00000d9c: PUSH2 0x1cd5 00000d9f: JUMP 00000da0: JUMPDEST 00000da1: PUSH2 0x0daa 00000da4: SWAP2 00000da5: SWAP1 00000da6: PUSH2 0x1d08 00000da9: JUMP 00000daa: JUMPDEST 00000dab: SWAP1 00000dac: POP 00000dad: PUSH2 0x0dcb 00000db0: DUP5 00000db1: PUSH20 0x0ba2275dd2a7748ab91e5edc1cd6f10d60ebc48f 00000dc6: DUP4 00000dc7: PUSH2 0x0d73 00000dca: JUMP 00000dcb: JUMPDEST 00000dcc: PUSH2 0x0dd5 00000dcf: DUP2 00000dd0: DUP5 00000dd1: PUSH2 0x1c3c 00000dd4: JUMP 00000dd5: JUMPDEST 00000dd6: SWAP2 00000dd7: POP 00000dd8: POP 00000dd9: JUMPDEST 00000dda: SWAP3 00000ddb: SWAP2 00000ddc: POP 00000ddd: POP 00000dde: JUMP 00000ddf: JUMPDEST 00000de0: PUSH0 00000de1: SLOAD 00000de2: PUSH1 0x01 00000de4: PUSH1 0x01 00000de6: PUSH1 0xa0 00000de8: SHL 00000de9: SUB 00000dea: AND 00000deb: CALLER 00000dec: EQ 00000ded: PUSH2 0x072b 00000df0: JUMPI 00000df1: CALLER 00000df2: PUSH1 0x40 00000df4: MLOAD 00000df5: PUSH4 0x118cdaa7 00000dfa: PUSH1 0xe0 00000dfc: SHL 00000dfd: DUP2 00000dfe: MSTORE 00000dff: PUSH1 0x04 00000e01: ADD 00000e02: PUSH2 0x0af1 00000e05: SWAP2 00000e06: SWAP1 00000e07: PUSH2 0x1a57 00000e0a: JUMP 00000e0b: JUMPDEST 00000e0c: PUSH0 00000e0d: DUP3 00000e0e: PUSH1 0x01 00000e10: PUSH1 0x01 00000e12: PUSH1 0xa0 00000e14: SHL 00000e15: SUB 00000e16: AND 00000e17: DUP3 00000e18: PUSH1 0x40 00000e1a: MLOAD 00000e1b: PUSH2 0x0e23 00000e1e: SWAP1 00000e1f: PUSH2 0x1d1b 00000e22: JUMP 00000e23: JUMPDEST 00000e24: PUSH0 00000e25: PUSH1 0x40 00000e27: MLOAD 00000e28: DUP1 00000e29: DUP4 00000e2a: SUB 00000e2b: DUP2 00000e2c: DUP6 00000e2d: DUP8 00000e2e: GAS 00000e2f: CALL 00000e30: SWAP3 00000e31: POP 00000e32: POP 00000e33: POP 00000e34: RETURNDATASIZE 00000e35: DUP1 00000e36: PUSH0 00000e37: DUP2 00000e38: EQ 00000e39: PUSH2 0x0e5d 00000e3c: JUMPI 00000e3d: PUSH1 0x40 00000e3f: MLOAD 00000e40: SWAP2 00000e41: POP 00000e42: PUSH1 0x1f 00000e44: NOT 00000e45: PUSH1 0x3f 00000e47: RETURNDATASIZE 00000e48: ADD 00000e49: AND 00000e4a: DUP3 00000e4b: ADD 00000e4c: PUSH1 0x40 00000e4e: MSTORE 00000e4f: RETURNDATASIZE 00000e50: DUP3 00000e51: MSTORE 00000e52: RETURNDATASIZE 00000e53: PUSH0 00000e54: PUSH1 0x20 00000e56: DUP5 00000e57: ADD 00000e58: RETURNDATACOPY 00000e59: PUSH2 0x0e62 00000e5c: JUMP 00000e5d: JUMPDEST 00000e5e: PUSH1 0x60 00000e60: SWAP2 00000e61: POP 00000e62: JUMPDEST 00000e63: POP 00000e64: POP 00000e65: SWAP1 00000e66: POP 00000e67: DUP1 00000e68: PUSH2 0x0d7e 00000e6b: JUMPI 00000e6c: PUSH1 0x40 00000e6e: MLOAD 00000e6f: PUSH4 0x12171d83 00000e74: PUSH1 0xe3 00000e76: SHL 00000e77: DUP2 00000e78: MSTORE 00000e79: PUSH1 0x04 00000e7b: ADD 00000e7c: PUSH1 0x40 00000e7e: MLOAD 00000e7f: DUP1 00000e80: SWAP2 00000e81: SUB 00000e82: SWAP1 00000e83: REVERT 00000e84: JUMPDEST 00000e85: PUSH0 00000e86: PUSH2 0x0dd9 00000e89: DUP3 00000e8a: DUP4 00000e8b: PUSH2 0x1350 00000e8e: JUMP 00000e8f: JUMPDEST 00000e90: PUSH0 00000e91: PUSH2 0x0e9a 00000e94: DUP4 00000e95: DUP4 00000e96: PUSH2 0x1350 00000e99: JUMP 00000e9a: JUMPDEST 00000e9b: SWAP4 00000e9c: SWAP3 00000e9d: POP 00000e9e: POP 00000e9f: POP 00000ea0: JUMP 00000ea1: JUMPDEST 00000ea2: PUSH0 00000ea3: PUSH2 0x0eac 00000ea6: DUP4 00000ea7: DUP4 00000ea8: PUSH2 0x13bd 00000eab: JUMP 00000eac: JUMPDEST 00000ead: SWAP1 00000eae: POP 00000eaf: PUSH2 0x0eb9 00000eb2: DUP6 00000eb3: DUP3 00000eb4: DUP7 00000eb5: PUSH2 0x0d73 00000eb8: JUMP 00000eb9: JUMPDEST 00000eba: DUP3 00000ebb: DUP3 00000ebc: MLOAD 00000ebd: PUSH1 0x20 00000ebf: DUP5 00000ec0: ADD 00000ec1: PUSH0 00000ec2: CREATE2 00000ec3: POP 00000ec4: POP 00000ec5: POP 00000ec6: POP 00000ec7: POP 00000ec8: POP 00000ec9: JUMP 00000eca: JUMPDEST 00000ecb: DUP7 00000ecc: DUP9 00000ecd: LT 00000ece: ISZERO 00000ecf: PUSH2 0x0eef 00000ed2: JUMPI 00000ed3: DUP8 00000ed4: DUP8 00000ed5: PUSH1 0x40 00000ed7: MLOAD 00000ed8: PUSH4 0xce33ec07 00000edd: PUSH1 0xe0 00000edf: SHL 00000ee0: DUP2 00000ee1: MSTORE 00000ee2: PUSH1 0x04 00000ee4: ADD 00000ee5: PUSH2 0x0af1 00000ee8: SWAP3 00000ee9: SWAP2 00000eea: SWAP1 00000eeb: PUSH2 0x1cba 00000eee: JUMP 00000eef: JUMPDEST 00000ef0: PUSH0 00000ef1: PUSH2 0x0efa 00000ef4: DUP9 00000ef5: DUP11 00000ef6: PUSH2 0x1c3c 00000ef9: JUMP 00000efa: JUMPDEST 00000efb: SWAP1 00000efc: POP 00000efd: DUP4 00000efe: DUP2 00000eff: LT 00000f00: ISZERO 00000f01: PUSH2 0x0f21 00000f04: JUMPI 00000f05: DUP4 00000f06: DUP2 00000f07: PUSH1 0x40 00000f09: MLOAD 00000f0a: PUSH4 0x15dac24b 00000f0f: PUSH1 0xe2 00000f11: SHL 00000f12: DUP2 00000f13: MSTORE 00000f14: PUSH1 0x04 00000f16: ADD 00000f17: PUSH2 0x0af1 00000f1a: SWAP3 00000f1b: SWAP2 00000f1c: SWAP1 00000f1d: PUSH2 0x1cba 00000f20: JUMP 00000f21: JUMPDEST 00000f22: DUP2 00000f23: DUP4 00000f24: GT 00000f25: ISZERO 00000f26: PUSH2 0x0f46 00000f29: JUMPI 00000f2a: DUP3 00000f2b: DUP3 00000f2c: PUSH1 0x40 00000f2e: MLOAD 00000f2f: PUSH4 0xf96a0509 00000f34: PUSH1 0xe0 00000f36: SHL 00000f37: DUP2 00000f38: MSTORE 00000f39: PUSH1 0x04 00000f3b: ADD 00000f3c: PUSH2 0x0af1 00000f3f: SWAP3 00000f40: SWAP2 00000f41: SWAP1 00000f42: PUSH2 0x1cba 00000f45: JUMP 00000f46: JUMPDEST 00000f47: PUSH0 00000f48: DUP7 00000f49: DUP9 00000f4a: GT 00000f4b: PUSH2 0x0f54 00000f4e: JUMPI 00000f4f: PUSH0 00000f50: PUSH2 0x0f5e 00000f53: JUMP 00000f54: JUMPDEST 00000f55: PUSH2 0x0f5e 00000f58: DUP8 00000f59: DUP10 00000f5a: PUSH2 0x1c3c 00000f5d: JUMP 00000f5e: JUMPDEST 00000f5f: SWAP1 00000f60: POP 00000f61: DUP6 00000f62: DUP2 00000f63: GT 00000f64: ISZERO 00000f65: PUSH2 0x0f85 00000f68: JUMPI 00000f69: DUP1 00000f6a: DUP7 00000f6b: PUSH1 0x40 00000f6d: MLOAD 00000f6e: PUSH4 0x8ed97227 00000f73: PUSH1 0xe0 00000f75: SHL 00000f76: DUP2 00000f77: MSTORE 00000f78: PUSH1 0x04 00000f7a: ADD 00000f7b: PUSH2 0x0af1 00000f7e: SWAP3 00000f7f: SWAP2 00000f80: SWAP1 00000f81: PUSH2 0x1cba 00000f84: JUMP 00000f85: JUMPDEST 00000f86: POP 00000f87: POP 00000f88: POP 00000f89: POP 00000f8a: POP 00000f8b: POP 00000f8c: POP 00000f8d: POP 00000f8e: POP 00000f8f: POP 00000f90: JUMP 00000f91: JUMPDEST 00000f92: PUSH2 0x0f9c 00000f95: DUP5 00000f96: DUP7 00000f97: DUP4 00000f98: PUSH2 0x0d73 00000f9b: JUMP 00000f9c: JUMPDEST 00000f9d: PUSH2 0x0fa8 00000fa0: DUP6 00000fa1: DUP6 00000fa2: DUP6 00000fa3: ADDRESS 00000fa4: PUSH2 0x11ac 00000fa7: JUMP 00000fa8: JUMPDEST 00000fa9: PUSH0 00000faa: PUSH2 0x0fb3 00000fad: DUP5 00000fae: ADDRESS 00000faf: PUSH2 0x0e8f 00000fb2: JUMP 00000fb3: JUMPDEST 00000fb4: SWAP1 00000fb5: POP 00000fb6: PUSH0 00000fb7: PUSH2 0x0fc0 00000fba: DUP5 00000fbb: DUP4 00000fbc: PUSH2 0x1d08 00000fbf: JUMP 00000fc0: JUMPDEST 00000fc1: SWAP1 00000fc2: POP 00000fc3: PUSH0 00000fc4: JUMPDEST 00000fc5: DUP5 00000fc6: DUP2 00000fc7: LT 00000fc8: ISZERO 00000fc9: PUSH2 0x0fdf 00000fcc: JUMPI 00000fcd: PUSH2 0x0fd7 00000fd0: DUP7 00000fd1: DUP10 00000fd2: DUP5 00000fd3: PUSH2 0x0d73 00000fd6: JUMP 00000fd7: JUMPDEST 00000fd8: PUSH1 0x01 00000fda: ADD 00000fdb: PUSH2 0x0fc4 00000fde: JUMP 00000fdf: JUMPDEST 00000fe0: POP 00000fe1: POP 00000fe2: POP 00000fe3: POP 00000fe4: POP 00000fe5: POP 00000fe6: POP 00000fe7: POP 00000fe8: JUMP 00000fe9: JUMPDEST 00000fea: PUSH0 00000feb: DUP1 00000fec: SLOAD 00000fed: PUSH1 0x01 00000fef: PUSH1 0x01 00000ff1: PUSH1 0xa0 00000ff3: SHL 00000ff4: SUB 00000ff5: DUP4 00000ff6: DUP2 00000ff7: AND 00000ff8: PUSH1 0x01 00000ffa: PUSH1 0x01 00000ffc: PUSH1 0xa0 00000ffe: SHL 00000fff: SUB 00001000: NOT 00001001: DUP4 00001002: AND 00001003: DUP2 00001004: OR 00001005: DUP5 00001006: SSTORE 00001007: PUSH1 0x40 00001009: MLOAD 0000100a: SWAP2 0000100b: SWAP1 0000100c: SWAP3 0000100d: AND 0000100e: SWAP3 0000100f: DUP4 00001010: SWAP2 00001011: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00001032: SWAP2 00001033: SWAP1 00001034: LOG3 00001035: POP 00001036: POP 00001037: JUMP 00001038: JUMPDEST 00001039: PUSH1 0x01 0000103b: PUSH1 0x01 0000103d: PUSH1 0xa0 0000103f: SHL 00001040: SUB 00001041: DUP1 00001042: DUP6 00001043: AND 00001044: SWAP1 00001045: DUP7 00001046: AND 00001047: LT 00001048: PUSH0 00001049: JUMPDEST 0000104a: DUP5 0000104b: DUP2 0000104c: LT 0000104d: ISZERO 0000104e: PUSH2 0x0fdf 00001051: JUMPI 00001052: PUSH0 00001053: PUSH2 0x105d 00001056: DUP5 00001057: DUP11 00001058: DUP6 00001059: PUSH2 0x1198 0000105c: JUMP 0000105d: JUMPDEST 0000105e: SWAP1 0000105f: POP 00001060: PUSH2 0x106a 00001063: DUP9 00001064: DUP11 00001065: DUP4 00001066: PUSH2 0x0d73 00001069: JUMP 0000106a: JUMPDEST 0000106b: PUSH2 0x1077 0000106e: DUP10 0000106f: DUP10 00001070: DUP10 00001071: DUP8 00001072: ADDRESS 00001073: PUSH2 0x0d83 00001076: JUMP 00001077: JUMPDEST 00001078: PUSH0 00001079: PUSH2 0x1082 0000107c: DUP9 0000107d: ADDRESS 0000107e: PUSH2 0x0e8f 00001081: JUMP 00001082: JUMPDEST 00001083: SWAP1 00001084: POP 00001085: PUSH0 00001086: PUSH2 0x108f 00001089: DUP8 0000108a: DUP4 0000108b: PUSH2 0x1d08 0000108e: JUMP 0000108f: JUMPDEST 00001090: SWAP1 00001091: POP 00001092: PUSH0 00001093: JUMPDEST 00001094: DUP8 00001095: DUP2 00001096: LT 00001097: ISZERO 00001098: PUSH2 0x10ba 0000109b: JUMPI 0000109c: PUSH2 0x10a6 0000109f: DUP11 000010a0: DUP14 000010a1: DUP5 000010a2: PUSH2 0x0d73 000010a5: JUMP 000010a6: JUMPDEST 000010a7: PUSH2 0x10b2 000010aa: DUP13 000010ab: DUP12 000010ac: DUP14 000010ad: ADDRESS 000010ae: PUSH2 0x11ac 000010b1: JUMP 000010b2: JUMPDEST 000010b3: PUSH1 0x01 000010b5: ADD 000010b6: PUSH2 0x1093 000010b9: JUMP 000010ba: JUMPDEST 000010bb: POP 000010bc: POP 000010bd: PUSH1 0x01 000010bf: SWAP1 000010c0: SWAP3 000010c1: ADD 000010c2: SWAP2 000010c3: POP 000010c4: PUSH2 0x1049 000010c7: SWAP1 000010c8: POP 000010c9: JUMP 000010ca: JUMPDEST 000010cb: PUSH2 0x0d7e 000010ce: DUP4 000010cf: DUP5 000010d0: PUSH1 0x01 000010d2: PUSH1 0x01 000010d4: PUSH1 0xa0 000010d6: SHL 000010d7: SUB 000010d8: AND 000010d9: PUSH4 0xa9059cbb 000010de: DUP6 000010df: DUP6 000010e0: PUSH1 0x40 000010e2: MLOAD 000010e3: PUSH1 0x24 000010e5: ADD 000010e6: PUSH2 0x10f0 000010e9: SWAP3 000010ea: SWAP2 000010eb: SWAP1 000010ec: PUSH2 0x1d22 000010ef: JUMP 000010f0: JUMPDEST 000010f1: PUSH1 0x40 000010f3: MLOAD 000010f4: PUSH1 0x20 000010f6: DUP2 000010f7: DUP4 000010f8: SUB 000010f9: SUB 000010fa: DUP2 000010fb: MSTORE 000010fc: SWAP1 000010fd: PUSH1 0x40 000010ff: MSTORE 00001100: SWAP2 00001101: POP 00001102: PUSH1 0xe0 00001104: SHL 00001105: PUSH1 0x20 00001107: DUP3 00001108: ADD 00001109: DUP1 0000110a: MLOAD 0000110b: PUSH1 0x01 0000110d: PUSH1 0x01 0000110f: PUSH1 0xe0 00001111: SHL 00001112: SUB 00001113: DUP4 00001114: DUP2 00001115: DUP4 00001116: AND 00001117: OR 00001118: DUP4 00001119: MSTORE 0000111a: POP 0000111b: POP 0000111c: POP 0000111d: POP 0000111e: PUSH2 0x13ff 00001121: JUMP 00001122: JUMPDEST 00001123: PUSH1 0x01 00001125: PUSH1 0x01 00001127: PUSH1 0xa0 00001129: SHL 0000112a: SUB 0000112b: DUP1 0000112c: DUP5 0000112d: AND 0000112e: SWAP1 0000112f: DUP6 00001130: AND 00001131: LT 00001132: PUSH0 00001133: JUMPDEST 00001134: DUP3 00001135: DUP2 00001136: LT 00001137: ISZERO 00001138: PUSH2 0x118f 0000113b: JUMPI 0000113c: PUSH0 0000113d: PUSH2 0x1147 00001140: DUP6 00001141: DUP10 00001142: DUP6 00001143: PUSH2 0x1198 00001146: JUMP 00001147: JUMPDEST 00001148: SWAP1 00001149: POP 0000114a: PUSH2 0x1154 0000114d: DUP8 0000114e: DUP10 0000114f: DUP4 00001150: PUSH2 0x0d73 00001153: JUMP 00001154: JUMPDEST 00001155: PUSH2 0x1161 00001158: DUP9 00001159: DUP9 0000115a: DUP9 0000115b: DUP9 0000115c: ADDRESS 0000115d: PUSH2 0x0d83 00001160: JUMP 00001161: JUMPDEST 00001162: PUSH0 00001163: PUSH2 0x116c 00001166: DUP8 00001167: ADDRESS 00001168: PUSH2 0x0e8f 0000116b: JUMP 0000116c: JUMPDEST 0000116d: SWAP1 0000116e: POP 0000116f: PUSH2 0x1179 00001172: DUP8 00001173: DUP11 00001174: DUP4 00001175: PUSH2 0x0d73 00001178: JUMP 00001179: JUMPDEST 0000117a: PUSH2 0x1185 0000117d: DUP10 0000117e: DUP9 0000117f: DUP11 00001180: ADDRESS 00001181: PUSH2 0x11ac 00001184: JUMP 00001185: JUMPDEST 00001186: POP 00001187: POP 00001188: PUSH1 0x01 0000118a: ADD 0000118b: PUSH2 0x1133 0000118e: JUMP 0000118f: JUMPDEST 00001190: POP 00001191: POP 00001192: POP 00001193: POP 00001194: POP 00001195: POP 00001196: POP 00001197: JUMP 00001198: JUMPDEST 00001199: PUSH0 0000119a: PUSH2 0x11a4 0000119d: DUP5 0000119e: DUP5 0000119f: DUP5 000011a0: PUSH2 0x1462 000011a3: JUMP 000011a4: JUMPDEST 000011a5: SWAP5 000011a6: SWAP4 000011a7: POP 000011a8: POP 000011a9: POP 000011aa: POP 000011ab: JUMP 000011ac: JUMPDEST 000011ad: PUSH2 0x0450 000011b0: DUP5 000011b1: DUP5 000011b2: DUP5 000011b3: DUP5 000011b4: PUSH2 0x149e 000011b7: JUMP 000011b8: JUMPDEST 000011b9: PUSH0 000011ba: DUP1 000011bb: DUP3 000011bc: PUSH1 0x01 000011be: PUSH1 0x01 000011c0: PUSH1 0xa0 000011c2: SHL 000011c3: SUB 000011c4: AND 000011c5: PUSH4 0x0902f1ac 000011ca: PUSH1 0x40 000011cc: MLOAD 000011cd: DUP2 000011ce: PUSH4 0xffffffff 000011d3: AND 000011d4: PUSH1 0xe0 000011d6: SHL 000011d7: DUP2 000011d8: MSTORE 000011d9: PUSH1 0x04 000011db: ADD 000011dc: PUSH1 0x60 000011de: PUSH1 0x40 000011e0: MLOAD 000011e1: DUP1 000011e2: DUP4 000011e3: SUB 000011e4: DUP2 000011e5: DUP7 000011e6: GAS 000011e7: STATICCALL 000011e8: ISZERO 000011e9: DUP1 000011ea: ISZERO 000011eb: PUSH2 0x11f6 000011ee: JUMPI 000011ef: RETURNDATASIZE 000011f0: PUSH0 000011f1: DUP1 000011f2: RETURNDATACOPY 000011f3: RETURNDATASIZE 000011f4: PUSH0 000011f5: REVERT 000011f6: JUMPDEST 000011f7: POP 000011f8: POP 000011f9: POP 000011fa: POP 000011fb: PUSH1 0x40 000011fd: MLOAD 000011fe: RETURNDATASIZE 000011ff: PUSH1 0x1f 00001201: NOT 00001202: PUSH1 0x1f 00001204: DUP3 00001205: ADD 00001206: AND 00001207: DUP3 00001208: ADD 00001209: DUP1 0000120a: PUSH1 0x40 0000120c: MSTORE 0000120d: POP 0000120e: DUP2 0000120f: ADD 00001210: SWAP1 00001211: PUSH2 0x121a 00001214: SWAP2 00001215: SWAP1 00001216: PUSH2 0x1d61 00001219: JUMP 0000121a: JUMPDEST 0000121b: POP 0000121c: PUSH1 0x01 0000121e: PUSH1 0x01 00001220: PUSH1 0x70 00001222: SHL 00001223: SUB 00001224: SWAP2 00001225: DUP3 00001226: AND 00001227: SWAP6 00001228: SWAP2 00001229: AND 0000122a: SWAP4 0000122b: POP 0000122c: SWAP2 0000122d: POP 0000122e: POP 0000122f: JUMP 00001230: JUMPDEST 00001231: PUSH0 00001232: PUSH2 0x11a4 00001235: DUP5 00001236: DUP5 00001237: DUP5 00001238: PUSH2 0x15a9 0000123b: JUMP 0000123c: JUMPDEST 0000123d: PUSH0 0000123e: PUSH2 0x11a4 00001241: DUP5 00001242: DUP5 00001243: DUP5 00001244: PUSH2 0x15f5 00001247: JUMP 00001248: JUMPDEST 00001249: PUSH1 0x40 0000124b: MLOAD 0000124c: PUSH4 0xa9059cbb 00001251: PUSH1 0xe0 00001253: SHL 00001254: DUP2 00001255: MSTORE 00001256: PUSH1 0x01 00001258: PUSH1 0x01 0000125a: PUSH1 0xa0 0000125c: SHL 0000125d: SUB 0000125e: DUP5 0000125f: AND 00001260: SWAP1 00001261: PUSH4 0xa9059cbb 00001266: SWAP1 00001267: PUSH2 0x1276 0000126a: SWAP1 0000126b: DUP6 0000126c: SWAP1 0000126d: DUP6 0000126e: SWAP1 0000126f: PUSH1 0x04 00001271: ADD 00001272: PUSH2 0x1d22 00001275: JUMP 00001276: JUMPDEST 00001277: PUSH1 0x20 00001279: PUSH1 0x40 0000127b: MLOAD 0000127c: DUP1 0000127d: DUP4 0000127e: SUB 0000127f: DUP2 00001280: PUSH0 00001281: DUP8 00001282: GAS 00001283: CALL 00001284: ISZERO 00001285: DUP1 00001286: ISZERO 00001287: PUSH2 0x1292 0000128a: JUMPI 0000128b: RETURNDATASIZE 0000128c: PUSH0 0000128d: DUP1 0000128e: RETURNDATACOPY 0000128f: RETURNDATASIZE 00001290: PUSH0 00001291: REVERT 00001292: JUMPDEST 00001293: POP 00001294: POP 00001295: POP 00001296: POP 00001297: PUSH1 0x40 00001299: MLOAD 0000129a: RETURNDATASIZE 0000129b: PUSH1 0x1f 0000129d: NOT 0000129e: PUSH1 0x1f 000012a0: DUP3 000012a1: ADD 000012a2: AND 000012a3: DUP3 000012a4: ADD 000012a5: DUP1 000012a6: PUSH1 0x40 000012a8: MSTORE 000012a9: POP 000012aa: DUP2 000012ab: ADD 000012ac: SWAP1 000012ad: PUSH2 0x0450 000012b0: SWAP2 000012b1: SWAP1 000012b2: PUSH2 0x1dc0 000012b5: JUMP 000012b6: JUMPDEST 000012b7: PUSH1 0x01 000012b9: PUSH1 0x01 000012bb: PUSH1 0xa0 000012bd: SHL 000012be: SUB 000012bf: DUP1 000012c0: DUP5 000012c1: AND 000012c2: SWAP1 000012c3: DUP6 000012c4: AND 000012c5: LT 000012c6: PUSH0 000012c7: DUP1 000012c8: DUP3 000012c9: PUSH2 0x12d3 000012cc: JUMPI 000012cd: DUP5 000012ce: PUSH0 000012cf: PUSH2 0x12d6 000012d2: JUMP 000012d3: JUMPDEST 000012d4: PUSH0 000012d5: DUP6 000012d6: JUMPDEST 000012d7: PUSH1 0x40 000012d9: DUP1 000012da: MLOAD 000012db: PUSH0 000012dc: DUP2 000012dd: MSTORE 000012de: PUSH1 0x20 000012e0: DUP2 000012e1: ADD 000012e2: SWAP2 000012e3: DUP3 000012e4: SWAP1 000012e5: MSTORE 000012e6: PUSH4 0x022c0d9f 000012eb: PUSH1 0xe0 000012ed: SHL 000012ee: SWAP1 000012ef: SWAP2 000012f0: MSTORE 000012f1: SWAP2 000012f2: SWAP4 000012f3: POP 000012f4: SWAP2 000012f5: POP 000012f6: PUSH1 0x01 000012f8: PUSH1 0x01 000012fa: PUSH1 0xa0 000012fc: SHL 000012fd: SUB 000012fe: DUP10 000012ff: AND 00001300: SWAP1 00001301: PUSH4 0x022c0d9f 00001306: SWAP1 00001307: PUSH2 0x1319 0000130a: SWAP1 0000130b: DUP6 0000130c: SWAP1 0000130d: DUP6 0000130e: SWAP1 0000130f: DUP10 00001310: SWAP1 00001311: PUSH1 0x24 00001313: DUP2 00001314: ADD 00001315: PUSH2 0x1e1a 00001318: JUMP 00001319: JUMPDEST 0000131a: PUSH0 0000131b: PUSH1 0x40 0000131d: MLOAD 0000131e: DUP1 0000131f: DUP4 00001320: SUB 00001321: DUP2 00001322: PUSH0 00001323: DUP8 00001324: DUP1 00001325: EXTCODESIZE 00001326: ISZERO 00001327: DUP1 00001328: ISZERO 00001329: PUSH2 0x1330 0000132c: JUMPI 0000132d: PUSH0 0000132e: DUP1 0000132f: REVERT 00001330: JUMPDEST 00001331: POP 00001332: GAS 00001333: CALL 00001334: ISZERO 00001335: DUP1 00001336: ISZERO 00001337: PUSH2 0x1342 0000133a: JUMPI 0000133b: RETURNDATASIZE 0000133c: PUSH0 0000133d: DUP1 0000133e: RETURNDATACOPY 0000133f: RETURNDATASIZE 00001340: PUSH0 00001341: REVERT 00001342: JUMPDEST 00001343: POP 00001344: POP 00001345: POP 00001346: POP 00001347: POP 00001348: POP 00001349: POP 0000134a: POP 0000134b: POP 0000134c: POP 0000134d: POP 0000134e: POP 0000134f: JUMP 00001350: JUMPDEST 00001351: PUSH1 0x40 00001353: MLOAD 00001354: PUSH4 0x70a08231 00001359: PUSH1 0xe0 0000135b: SHL 0000135c: DUP2 0000135d: MSTORE 0000135e: PUSH0 0000135f: SWAP1 00001360: PUSH1 0x01 00001362: PUSH1 0x01 00001364: PUSH1 0xa0 00001366: SHL 00001367: SUB 00001368: DUP5 00001369: AND 0000136a: SWAP1 0000136b: PUSH4 0x70a08231 00001370: SWAP1 00001371: PUSH2 0x137e 00001374: SWAP1 00001375: DUP6 00001376: SWAP1 00001377: PUSH1 0x04 00001379: ADD 0000137a: PUSH2 0x1a57 0000137d: JUMP 0000137e: JUMPDEST 0000137f: PUSH1 0x20 00001381: PUSH1 0x40 00001383: MLOAD 00001384: DUP1 00001385: DUP4 00001386: SUB 00001387: DUP2 00001388: DUP7 00001389: GAS 0000138a: STATICCALL 0000138b: ISZERO 0000138c: DUP1 0000138d: ISZERO 0000138e: PUSH2 0x1399 00001391: JUMPI 00001392: RETURNDATASIZE 00001393: PUSH0 00001394: DUP1 00001395: RETURNDATACOPY 00001396: RETURNDATASIZE 00001397: PUSH0 00001398: REVERT 00001399: JUMPDEST 0000139a: POP 0000139b: POP 0000139c: POP 0000139d: POP 0000139e: PUSH1 0x40 000013a0: MLOAD 000013a1: RETURNDATASIZE 000013a2: PUSH1 0x1f 000013a4: NOT 000013a5: PUSH1 0x1f 000013a7: DUP3 000013a8: ADD 000013a9: AND 000013aa: DUP3 000013ab: ADD 000013ac: DUP1 000013ad: PUSH1 0x40 000013af: MSTORE 000013b0: POP 000013b1: DUP2 000013b2: ADD 000013b3: SWAP1 000013b4: PUSH2 0x0e9a 000013b7: SWAP2 000013b8: SWAP1 000013b9: PUSH2 0x1c5a 000013bc: JUMP 000013bd: JUMPDEST 000013be: PUSH0 000013bf: PUSH1 0xff 000013c1: PUSH1 0xf8 000013c3: SHL 000013c4: ADDRESS 000013c5: DUP5 000013c6: DUP5 000013c7: DUP1 000013c8: MLOAD 000013c9: SWAP1 000013ca: PUSH1 0x20 000013cc: ADD 000013cd: KECCAK256 000013ce: PUSH1 0x40 000013d0: MLOAD 000013d1: PUSH1 0x20 000013d3: ADD 000013d4: PUSH2 0x13e0 000013d7: SWAP5 000013d8: SWAP4 000013d9: SWAP3 000013da: SWAP2 000013db: SWAP1 000013dc: PUSH2 0x1e8a 000013df: JUMP 000013e0: JUMPDEST 000013e1: PUSH1 0x40 000013e3: DUP1 000013e4: MLOAD 000013e5: PUSH1 0x1f 000013e7: NOT 000013e8: DUP2 000013e9: DUP5 000013ea: SUB 000013eb: ADD 000013ec: DUP2 000013ed: MSTORE 000013ee: SWAP2 000013ef: SWAP1 000013f0: MSTORE 000013f1: DUP1 000013f2: MLOAD 000013f3: PUSH1 0x20 000013f5: SWAP1 000013f6: SWAP2 000013f7: ADD 000013f8: KECCAK256 000013f9: SWAP4 000013fa: SWAP3 000013fb: POP 000013fc: POP 000013fd: POP 000013fe: JUMP 000013ff: JUMPDEST 00001400: PUSH0 00001401: DUP1 00001402: PUSH1 0x20 00001404: PUSH0 00001405: DUP5 00001406: MLOAD 00001407: PUSH1 0x20 00001409: DUP7 0000140a: ADD 0000140b: PUSH0 0000140c: DUP9 0000140d: GAS 0000140e: CALL 0000140f: DUP1 00001410: PUSH2 0x141e 00001413: JUMPI 00001414: PUSH1 0x40 00001416: MLOAD 00001417: RETURNDATASIZE 00001418: PUSH0 00001419: DUP3 0000141a: RETURNDATACOPY 0000141b: RETURNDATASIZE 0000141c: DUP2 0000141d: REVERT 0000141e: JUMPDEST 0000141f: POP 00001420: POP 00001421: PUSH0 00001422: MLOAD 00001423: RETURNDATASIZE 00001424: SWAP2 00001425: POP 00001426: DUP2 00001427: ISZERO 00001428: PUSH2 0x1435 0000142b: JUMPI 0000142c: DUP1 0000142d: PUSH1 0x01 0000142f: EQ 00001430: ISZERO 00001431: PUSH2 0x1442 00001434: JUMP 00001435: JUMPDEST 00001436: PUSH1 0x01 00001438: PUSH1 0x01 0000143a: PUSH1 0xa0 0000143c: SHL 0000143d: SUB 0000143e: DUP5 0000143f: AND 00001440: EXTCODESIZE 00001441: ISZERO 00001442: JUMPDEST 00001443: ISZERO 00001444: PUSH2 0x0450 00001447: JUMPI 00001448: DUP4 00001449: PUSH1 0x40 0000144b: MLOAD 0000144c: PUSH4 0x5274afe7 00001451: PUSH1 0xe0 00001453: SHL 00001454: DUP2 00001455: MSTORE 00001456: PUSH1 0x04 00001458: ADD 00001459: PUSH2 0x0af1 0000145c: SWAP2 0000145d: SWAP1 0000145e: PUSH2 0x1a57 00001461: JUMP 00001462: JUMPDEST 00001463: PUSH0 00001464: DUP1 00001465: PUSH0 00001466: PUSH2 0x146e 00001469: DUP6 0000146a: PUSH2 0x11b8 0000146d: JUMP 0000146e: JUMPDEST 0000146f: SWAP2 00001470: POP 00001471: SWAP2 00001472: POP 00001473: PUSH0 00001474: DUP1 00001475: DUP6 00001476: PUSH2 0x1480 00001479: JUMPI 0000147a: DUP3 0000147b: DUP5 0000147c: PUSH2 0x1483 0000147f: JUMP 00001480: JUMPDEST 00001481: DUP4 00001482: DUP4 00001483: JUMPDEST 00001484: SWAP2 00001485: POP 00001486: SWAP2 00001487: POP 00001488: PUSH2 0x1492 0000148b: DUP9 0000148c: DUP4 0000148d: DUP4 0000148e: PUSH2 0x15f5 00001491: JUMP 00001492: JUMPDEST 00001493: SWAP9 00001494: SWAP8 00001495: POP 00001496: POP 00001497: POP 00001498: POP 00001499: POP 0000149a: POP 0000149b: POP 0000149c: POP 0000149d: JUMP 0000149e: JUMPDEST 0000149f: PUSH1 0x01 000014a1: PUSH1 0x01 000014a3: PUSH1 0xa0 000014a5: SHL 000014a6: SUB 000014a7: DUP1 000014a8: DUP4 000014a9: AND 000014aa: SWAP1 000014ab: DUP5 000014ac: AND 000014ad: LT 000014ae: PUSH0 000014af: DUP1 000014b0: PUSH2 0x14b8 000014b3: DUP8 000014b4: PUSH2 0x11b8 000014b7: JUMP 000014b8: JUMPDEST 000014b9: SWAP2 000014ba: POP 000014bb: SWAP2 000014bc: POP 000014bd: PUSH0 000014be: DUP1 000014bf: DUP5 000014c0: PUSH2 0x14ca 000014c3: JUMPI 000014c4: DUP3 000014c5: DUP5 000014c6: PUSH2 0x14cd 000014c9: JUMP 000014ca: JUMPDEST 000014cb: DUP4 000014cc: DUP4 000014cd: JUMPDEST 000014ce: SWAP2 000014cf: POP 000014d0: SWAP2 000014d1: POP 000014d2: PUSH0 000014d3: PUSH2 0x14dc 000014d6: DUP10 000014d7: DUP12 000014d8: PUSH2 0x1350 000014db: JUMP 000014dc: JUMPDEST 000014dd: SWAP1 000014de: POP 000014df: PUSH0 000014e0: PUSH2 0x14e9 000014e3: DUP5 000014e4: DUP4 000014e5: PUSH2 0x1c3c 000014e8: JUMP 000014e9: JUMPDEST 000014ea: SWAP1 000014eb: POP 000014ec: PUSH0 000014ed: PUSH2 0x14f7 000014f0: DUP3 000014f1: DUP7 000014f2: DUP7 000014f3: PUSH2 0x15a9 000014f6: JUMP 000014f7: JUMPDEST 000014f8: SWAP1 000014f9: POP 000014fa: PUSH0 000014fb: DUP1 000014fc: DUP10 000014fd: PUSH2 0x1507 00001500: JUMPI 00001501: DUP3 00001502: PUSH0 00001503: PUSH2 0x150a 00001506: JUMP 00001507: JUMPDEST 00001508: PUSH0 00001509: DUP4 0000150a: JUMPDEST 0000150b: SWAP1 0000150c: SWAP3 0000150d: POP 0000150e: SWAP1 0000150f: POP 00001510: PUSH1 0x01 00001512: PUSH1 0x01 00001514: PUSH1 0xa0 00001516: SHL 00001517: SUB 00001518: DUP15 00001519: AND 0000151a: PUSH4 0x022c0d9f 0000151f: DUP4 00001520: DUP4 00001521: DUP15 00001522: PUSH0 00001523: PUSH1 0x40 00001525: MLOAD 00001526: SWAP1 00001527: DUP1 00001528: DUP3 00001529: MSTORE 0000152a: DUP1 0000152b: PUSH1 0x1f 0000152d: ADD 0000152e: PUSH1 0x1f 00001530: NOT 00001531: AND 00001532: PUSH1 0x20 00001534: ADD 00001535: DUP3 00001536: ADD 00001537: PUSH1 0x40 00001539: MSTORE 0000153a: DUP1 0000153b: ISZERO 0000153c: PUSH2 0x154c 0000153f: JUMPI 00001540: PUSH1 0x20 00001542: DUP3 00001543: ADD 00001544: DUP2 00001545: DUP1 00001546: CALLDATASIZE 00001547: DUP4 00001548: CALLDATACOPY 00001549: ADD 0000154a: SWAP1 0000154b: POP 0000154c: JUMPDEST 0000154d: POP 0000154e: PUSH1 0x40 00001550: MLOAD 00001551: DUP6 00001552: PUSH4 0xffffffff 00001557: AND 00001558: PUSH1 0xe0 0000155a: SHL 0000155b: DUP2 0000155c: MSTORE 0000155d: PUSH1 0x04 0000155f: ADD 00001560: PUSH2 0x156c 00001563: SWAP5 00001564: SWAP4 00001565: SWAP3 00001566: SWAP2 00001567: SWAP1 00001568: PUSH2 0x1e1a 0000156b: JUMP 0000156c: JUMPDEST 0000156d: PUSH0 0000156e: PUSH1 0x40 00001570: MLOAD 00001571: DUP1 00001572: DUP4 00001573: SUB 00001574: DUP2 00001575: PUSH0 00001576: DUP8 00001577: DUP1 00001578: EXTCODESIZE 00001579: ISZERO 0000157a: DUP1 0000157b: ISZERO 0000157c: PUSH2 0x1583 0000157f: JUMPI 00001580: PUSH0 00001581: DUP1 00001582: REVERT 00001583: JUMPDEST 00001584: POP 00001585: GAS 00001586: CALL 00001587: ISZERO 00001588: DUP1 00001589: ISZERO 0000158a: PUSH2 0x1595 0000158d: JUMPI 0000158e: RETURNDATASIZE 0000158f: PUSH0 00001590: DUP1 00001591: RETURNDATACOPY 00001592: RETURNDATASIZE 00001593: PUSH0 00001594: REVERT 00001595: JUMPDEST 00001596: POP 00001597: POP 00001598: POP 00001599: POP 0000159a: POP 0000159b: POP 0000159c: POP 0000159d: POP 0000159e: POP 0000159f: POP 000015a0: POP 000015a1: POP 000015a2: POP 000015a3: POP 000015a4: POP 000015a5: POP 000015a6: POP 000015a7: POP 000015a8: JUMP 000015a9: JUMPDEST 000015aa: PUSH0 000015ab: DUP1 000015ac: PUSH2 0x15b7 000015af: DUP6 000015b0: PUSH2 0x03e5 000015b3: PUSH2 0x1cd5 000015b6: JUMP 000015b7: JUMPDEST 000015b8: SWAP1 000015b9: POP 000015ba: PUSH0 000015bb: PUSH2 0x15c4 000015be: DUP5 000015bf: DUP4 000015c0: PUSH2 0x1cd5 000015c3: JUMP 000015c4: JUMPDEST 000015c5: SWAP1 000015c6: POP 000015c7: PUSH0 000015c8: DUP3 000015c9: PUSH2 0x15d4 000015cc: DUP8 000015cd: PUSH2 0x03e8 000015d0: PUSH2 0x1cd5 000015d3: JUMP 000015d4: JUMPDEST 000015d5: PUSH2 0x15de 000015d8: SWAP2 000015d9: SWAP1 000015da: PUSH2 0x1c8c 000015dd: JUMP 000015de: JUMPDEST 000015df: SWAP1 000015e0: POP 000015e1: PUSH2 0x15ea 000015e4: DUP2 000015e5: DUP4 000015e6: PUSH2 0x1d08 000015e9: JUMP 000015ea: JUMPDEST 000015eb: SWAP8 000015ec: SWAP7 000015ed: POP 000015ee: POP 000015ef: POP 000015f0: POP 000015f1: POP 000015f2: POP 000015f3: POP 000015f4: JUMP 000015f5: JUMPDEST 000015f6: PUSH0 000015f7: DUP1 000015f8: PUSH2 0x1601 000015fb: DUP6 000015fc: DUP6 000015fd: PUSH2 0x1cd5 00001600: JUMP 00001601: JUMPDEST 00001602: PUSH2 0x160d 00001605: SWAP1 00001606: PUSH2 0x03e8 00001609: PUSH2 0x1cd5 0000160c: JUMP 0000160d: JUMPDEST 0000160e: SWAP1 0000160f: POP 00001610: PUSH0 00001611: PUSH2 0x161a 00001614: DUP7 00001615: DUP6 00001616: PUSH2 0x1c3c 00001619: JUMP 0000161a: JUMPDEST 0000161b: PUSH2 0x1626 0000161e: SWAP1 0000161f: PUSH2 0x03e5 00001622: PUSH2 0x1cd5 00001625: JUMP 00001626: JUMPDEST 00001627: SWAP1 00001628: POP 00001629: PUSH2 0x1632 0000162c: DUP2 0000162d: DUP4 0000162e: PUSH2 0x1d08 00001631: JUMP 00001632: JUMPDEST 00001633: PUSH2 0x163d 00001636: SWAP1 00001637: PUSH1 0x01 00001639: PUSH2 0x1c8c 0000163c: JUMP 0000163d: JUMPDEST 0000163e: SWAP7 0000163f: SWAP6 00001640: POP 00001641: POP 00001642: POP 00001643: POP 00001644: POP 00001645: POP 00001646: JUMP 00001647: JUMPDEST 00001648: PUSH2 0x0292 0000164b: DUP1 0000164c: PUSH2 0x1ed2 0000164f: DUP4 00001650: CODECOPY 00001651: ADD 00001652: SWAP1 00001653: JUMP 00001654: JUMPDEST 00001655: PUSH0 00001656: PUSH1 0x01 00001658: PUSH1 0x01 0000165a: PUSH1 0xa0 0000165c: SHL 0000165d: SUB 0000165e: DUP3 0000165f: AND 00001660: PUSH2 0x0dd9 00001663: JUMP 00001664: JUMPDEST 00001665: PUSH2 0x166d 00001668: DUP2 00001669: PUSH2 0x1654 0000166c: JUMP 0000166d: JUMPDEST 0000166e: DUP2 0000166f: EQ 00001670: PUSH2 0x0c27 00001673: JUMPI 00001674: PUSH0 00001675: DUP1 00001676: REVERT 00001677: JUMPDEST 00001678: DUP1 00001679: CALLDATALOAD 0000167a: PUSH2 0x0dd9 0000167d: DUP2 0000167e: PUSH2 0x1664 00001681: JUMP 00001682: JUMPDEST 00001683: DUP1 00001684: PUSH2 0x166d 00001687: JUMP 00001688: JUMPDEST 00001689: DUP1 0000168a: CALLDATALOAD 0000168b: PUSH2 0x0dd9 0000168e: DUP2 0000168f: PUSH2 0x1682 00001692: JUMP 00001693: JUMPDEST 00001694: PUSH0 00001695: DUP1 00001696: PUSH0 00001697: DUP1 00001698: PUSH1 0x80 0000169a: DUP6 0000169b: DUP8 0000169c: SUB 0000169d: SLT 0000169e: ISZERO 0000169f: PUSH2 0x16a9 000016a2: JUMPI 000016a3: PUSH2 0x16a9 000016a6: PUSH0 000016a7: DUP1 000016a8: REVERT 000016a9: JUMPDEST 000016aa: PUSH0 000016ab: PUSH2 0x16b4 000016ae: DUP8 000016af: DUP8 000016b0: PUSH2 0x1677 000016b3: JUMP 000016b4: JUMPDEST 000016b5: SWAP5 000016b6: POP 000016b7: POP 000016b8: PUSH1 0x20 000016ba: PUSH2 0x16c5 000016bd: DUP8 000016be: DUP3 000016bf: DUP9 000016c0: ADD 000016c1: PUSH2 0x1677 000016c4: JUMP 000016c5: JUMPDEST 000016c6: SWAP4 000016c7: POP 000016c8: POP 000016c9: PUSH1 0x40 000016cb: PUSH2 0x16d6 000016ce: DUP8 000016cf: DUP3 000016d0: DUP9 000016d1: ADD 000016d2: PUSH2 0x1688 000016d5: JUMP 000016d6: JUMPDEST 000016d7: SWAP3 000016d8: POP 000016d9: POP 000016da: PUSH1 0x60 000016dc: PUSH2 0x16e7 000016df: DUP8 000016e0: DUP3 000016e1: DUP9 000016e2: ADD 000016e3: PUSH2 0x1688 000016e6: JUMP 000016e7: JUMPDEST 000016e8: SWAP2 000016e9: POP 000016ea: POP 000016eb: SWAP3 000016ec: SWAP6 000016ed: SWAP2 000016ee: SWAP5 000016ef: POP 000016f0: SWAP3 000016f1: POP 000016f2: JUMP 000016f3: JUMPDEST 000016f4: PUSH0 000016f5: PUSH1 0x20 000016f7: DUP3 000016f8: DUP5 000016f9: SUB 000016fa: SLT 000016fb: ISZERO 000016fc: PUSH2 0x1706 000016ff: JUMPI 00001700: PUSH2 0x1706 00001703: PUSH0 00001704: DUP1 00001705: REVERT 00001706: JUMPDEST 00001707: PUSH0 00001708: PUSH2 0x0dd5 0000170b: DUP5 0000170c: DUP5 0000170d: PUSH2 0x1677 00001710: JUMP 00001711: JUMPDEST 00001712: DUP1 00001713: ISZERO 00001714: ISZERO 00001715: JUMPDEST 00001716: DUP3 00001717: MSTORE 00001718: POP 00001719: POP 0000171a: JUMP 0000171b: JUMPDEST 0000171c: PUSH1 0x20 0000171e: DUP2 0000171f: ADD 00001720: PUSH2 0x0dd9 00001723: DUP3 00001724: DUP5 00001725: PUSH2 0x1711 00001728: JUMP 00001729: JUMPDEST 0000172a: DUP1 0000172b: PUSH2 0x1715 0000172e: JUMP 0000172f: JUMPDEST 00001730: PUSH1 0x20 00001732: DUP2 00001733: ADD 00001734: PUSH2 0x0dd9 00001737: DUP3 00001738: DUP5 00001739: PUSH2 0x1729 0000173c: JUMP 0000173d: JUMPDEST 0000173e: PUSH0 0000173f: PUSH1 0x20 00001741: DUP3 00001742: DUP5 00001743: SUB 00001744: SLT 00001745: ISZERO 00001746: PUSH2 0x1750 00001749: JUMPI 0000174a: PUSH2 0x1750 0000174d: PUSH0 0000174e: DUP1 0000174f: REVERT 00001750: JUMPDEST 00001751: PUSH0 00001752: PUSH2 0x0dd5 00001755: DUP5 00001756: DUP5 00001757: PUSH2 0x1688 0000175a: JUMP 0000175b: JUMPDEST 0000175c: PUSH4 0x4e487b71 00001761: PUSH1 0xe0 00001763: SHL 00001764: PUSH0 00001765: MSTORE 00001766: PUSH1 0x41 00001768: PUSH1 0x04 0000176a: MSTORE 0000176b: PUSH1 0x24 0000176d: PUSH0 0000176e: REVERT 0000176f: JUMPDEST 00001770: PUSH1 0x1f 00001772: NOT 00001773: PUSH1 0x1f 00001775: DUP4 00001776: ADD 00001777: AND 00001778: DUP2 00001779: ADD 0000177a: DUP2 0000177b: DUP2 0000177c: LT 0000177d: PUSH8 0xffffffffffffffff 00001786: DUP3 00001787: GT 00001788: OR 00001789: ISZERO 0000178a: PUSH2 0x1795 0000178d: JUMPI 0000178e: PUSH2 0x1795 00001791: PUSH2 0x175b 00001794: JUMP 00001795: JUMPDEST 00001796: PUSH1 0x40 00001798: MSTORE 00001799: POP 0000179a: POP 0000179b: JUMP 0000179c: JUMPDEST 0000179d: PUSH0 0000179e: PUSH2 0x17a6 000017a1: PUSH1 0x40 000017a3: MLOAD 000017a4: SWAP1 000017a5: JUMP 000017a6: JUMPDEST 000017a7: SWAP1 000017a8: POP 000017a9: PUSH2 0x17b2 000017ac: DUP3 000017ad: DUP3 000017ae: PUSH2 0x176f 000017b1: JUMP 000017b2: JUMPDEST 000017b3: SWAP2 000017b4: SWAP1 000017b5: POP 000017b6: JUMP 000017b7: JUMPDEST 000017b8: PUSH0 000017b9: PUSH8 0xffffffffffffffff 000017c2: DUP3 000017c3: GT 000017c4: ISZERO 000017c5: PUSH2 0x17d0 000017c8: JUMPI 000017c9: PUSH2 0x17d0 000017cc: PUSH2 0x175b 000017cf: JUMP 000017d0: JUMPDEST 000017d1: PUSH1 0x1f 000017d3: NOT 000017d4: PUSH1 0x1f 000017d6: DUP4 000017d7: ADD 000017d8: AND 000017d9: PUSH1 0x20 000017db: ADD 000017dc: SWAP3 000017dd: SWAP2 000017de: POP 000017df: POP 000017e0: JUMP 000017e1: JUMPDEST 000017e2: DUP3 000017e3: DUP2 000017e4: DUP4 000017e5: CALLDATACOPY 000017e6: POP 000017e7: PUSH0 000017e8: SWAP2 000017e9: ADD 000017ea: MSTORE 000017eb: JUMP 000017ec: JUMPDEST 000017ed: PUSH0 000017ee: PUSH2 0x17fe 000017f1: PUSH2 0x17f9 000017f4: DUP5 000017f5: PUSH2 0x17b7 000017f8: JUMP 000017f9: JUMPDEST 000017fa: PUSH2 0x179c 000017fd: JUMP 000017fe: JUMPDEST 000017ff: SWAP1 00001800: POP 00001801: DUP3 00001802: DUP2 00001803: MSTORE 00001804: PUSH1 0x20 00001806: DUP2 00001807: ADD 00001808: DUP5 00001809: DUP5 0000180a: DUP5 0000180b: ADD 0000180c: GT 0000180d: ISZERO 0000180e: PUSH2 0x1818 00001811: JUMPI 00001812: PUSH2 0x1818 00001815: PUSH0 00001816: DUP1 00001817: REVERT 00001818: JUMPDEST 00001819: PUSH2 0x1823 0000181c: DUP5 0000181d: DUP3 0000181e: DUP6 0000181f: PUSH2 0x17e1 00001822: JUMP 00001823: JUMPDEST 00001824: POP 00001825: SWAP4 00001826: SWAP3 00001827: POP 00001828: POP 00001829: POP 0000182a: JUMP 0000182b: JUMPDEST 0000182c: PUSH0 0000182d: DUP3 0000182e: PUSH1 0x1f 00001830: DUP4 00001831: ADD 00001832: SLT 00001833: PUSH2 0x183d 00001836: JUMPI 00001837: PUSH2 0x183d 0000183a: PUSH0 0000183b: DUP1 0000183c: REVERT 0000183d: JUMPDEST 0000183e: DUP2 0000183f: CALLDATALOAD 00001840: PUSH2 0x0dd5 00001843: DUP5 00001844: DUP3 00001845: PUSH1 0x20 00001847: DUP7 00001848: ADD 00001849: PUSH2 0x17ec 0000184c: JUMP 0000184d: JUMPDEST 0000184e: PUSH0 0000184f: PUSH1 0x60 00001851: DUP3 00001852: DUP5 00001853: SUB 00001854: SLT 00001855: ISZERO 00001856: PUSH2 0x1860 00001859: JUMPI 0000185a: PUSH2 0x1860 0000185d: PUSH0 0000185e: DUP1 0000185f: REVERT 00001860: JUMPDEST 00001861: PUSH2 0x186a 00001864: PUSH1 0x60 00001866: PUSH2 0x179c 00001869: JUMP 0000186a: JUMPDEST 0000186b: SWAP1 0000186c: POP 0000186d: PUSH0 0000186e: PUSH2 0x1877 00001871: DUP5 00001872: DUP5 00001873: PUSH2 0x1688 00001876: JUMP 00001877: JUMPDEST 00001878: DUP3 00001879: MSTORE 0000187a: POP 0000187b: PUSH1 0x20 0000187d: PUSH2 0x1888 00001880: DUP5 00001881: DUP5 00001882: DUP4 00001883: ADD 00001884: PUSH2 0x1688 00001887: JUMP 00001888: JUMPDEST 00001889: PUSH1 0x20 0000188b: DUP4 0000188c: ADD 0000188d: MSTORE 0000188e: POP 0000188f: PUSH1 0x40 00001891: PUSH2 0x189c 00001894: DUP5 00001895: DUP3 00001896: DUP6 00001897: ADD 00001898: PUSH2 0x1688 0000189b: JUMP 0000189c: JUMPDEST 0000189d: PUSH1 0x40 0000189f: DUP4 000018a0: ADD 000018a1: MSTORE 000018a2: POP 000018a3: SWAP3 000018a4: SWAP2 000018a5: POP 000018a6: POP 000018a7: JUMP 000018a8: JUMPDEST 000018a9: PUSH0 000018aa: DUP1 000018ab: PUSH0 000018ac: DUP1 000018ad: PUSH0 000018ae: DUP1 000018af: PUSH2 0x0100 000018b2: DUP8 000018b3: DUP10 000018b4: SUB 000018b5: SLT 000018b6: ISZERO 000018b7: PUSH2 0x18c1 000018ba: JUMPI 000018bb: PUSH2 0x18c1 000018be: PUSH0 000018bf: DUP1 000018c0: REVERT 000018c1: JUMPDEST 000018c2: PUSH0 000018c3: PUSH2 0x18cc 000018c6: DUP10 000018c7: DUP10 000018c8: PUSH2 0x1677 000018cb: JUMP 000018cc: JUMPDEST 000018cd: SWAP7 000018ce: POP 000018cf: POP 000018d0: PUSH1 0x20 000018d2: PUSH2 0x18dd 000018d5: DUP10 000018d6: DUP3 000018d7: DUP11 000018d8: ADD 000018d9: PUSH2 0x1677 000018dc: JUMP 000018dd: JUMPDEST 000018de: SWAP6 000018df: POP 000018e0: POP 000018e1: PUSH1 0x40 000018e3: PUSH2 0x18ee 000018e6: DUP10 000018e7: DUP3 000018e8: DUP11 000018e9: ADD 000018ea: PUSH2 0x1688 000018ed: JUMP 000018ee: JUMPDEST 000018ef: SWAP5 000018f0: POP 000018f1: POP 000018f2: PUSH1 0x60 000018f4: PUSH2 0x18ff 000018f7: DUP10 000018f8: DUP3 000018f9: DUP11 000018fa: ADD 000018fb: PUSH2 0x1688 000018fe: JUMP 000018ff: JUMPDEST 00001900: SWAP4 00001901: POP 00001902: POP 00001903: PUSH1 0x80 00001905: DUP8 00001906: ADD 00001907: CALLDATALOAD 00001908: PUSH8 0xffffffffffffffff 00001911: DUP2 00001912: GT 00001913: ISZERO 00001914: PUSH2 0x191e 00001917: JUMPI 00001918: PUSH2 0x191e 0000191b: PUSH0 0000191c: DUP1 0000191d: REVERT 0000191e: JUMPDEST 0000191f: PUSH2 0x192a 00001922: DUP10 00001923: DUP3 00001924: DUP11 00001925: ADD 00001926: PUSH2 0x182b 00001929: JUMP 0000192a: JUMPDEST 0000192b: SWAP3 0000192c: POP 0000192d: POP 0000192e: PUSH1 0xa0 00001930: PUSH2 0x193b 00001933: DUP10 00001934: DUP3 00001935: DUP11 00001936: ADD 00001937: PUSH2 0x184d 0000193a: JUMP 0000193b: JUMPDEST 0000193c: SWAP2 0000193d: POP 0000193e: POP 0000193f: SWAP3 00001940: SWAP6 00001941: POP 00001942: SWAP3 00001943: SWAP6 00001944: POP 00001945: SWAP3 00001946: SWAP6 00001947: JUMP 00001948: JUMPDEST 00001949: PUSH0 0000194a: DUP1 0000194b: PUSH0 0000194c: DUP1 0000194d: PUSH0 0000194e: PUSH1 0xe0 00001950: DUP7 00001951: DUP9 00001952: SUB 00001953: SLT 00001954: ISZERO 00001955: PUSH2 0x195f 00001958: JUMPI 00001959: PUSH2 0x195f 0000195c: PUSH0 0000195d: DUP1 0000195e: REVERT 0000195f: JUMPDEST 00001960: PUSH0 00001961: PUSH2 0x196a 00001964: DUP9 00001965: DUP9 00001966: PUSH2 0x1677 00001969: JUMP 0000196a: JUMPDEST 0000196b: SWAP6 0000196c: POP 0000196d: POP 0000196e: PUSH1 0x20 00001970: PUSH2 0x197b 00001973: DUP9 00001974: DUP3 00001975: DUP10 00001976: ADD 00001977: PUSH2 0x1677 0000197a: JUMP 0000197b: JUMPDEST 0000197c: SWAP5 0000197d: POP 0000197e: POP 0000197f: PUSH1 0x40 00001981: PUSH2 0x198c 00001984: DUP9 00001985: DUP3 00001986: DUP10 00001987: ADD 00001988: PUSH2 0x1688 0000198b: JUMP 0000198c: JUMPDEST 0000198d: SWAP4 0000198e: POP 0000198f: POP 00001990: PUSH1 0x60 00001992: PUSH2 0x199d 00001995: DUP9 00001996: DUP3 00001997: DUP10 00001998: ADD 00001999: PUSH2 0x1688 0000199c: JUMP 0000199d: JUMPDEST 0000199e: SWAP3 0000199f: POP 000019a0: POP 000019a1: PUSH1 0x80 000019a3: PUSH2 0x19ae 000019a6: DUP9 000019a7: DUP3 000019a8: DUP10 000019a9: ADD 000019aa: PUSH2 0x184d 000019ad: JUMP 000019ae: JUMPDEST 000019af: SWAP2 000019b0: POP 000019b1: POP 000019b2: SWAP3 000019b3: SWAP6 000019b4: POP 000019b5: SWAP3 000019b6: SWAP6 000019b7: SWAP1 000019b8: SWAP4 000019b9: POP 000019ba: JUMP 000019bb: JUMPDEST 000019bc: PUSH0 000019bd: DUP1 000019be: DUP4 000019bf: PUSH1 0x1f 000019c1: DUP5 000019c2: ADD 000019c3: SLT 000019c4: PUSH2 0x19ce 000019c7: JUMPI 000019c8: PUSH2 0x19ce 000019cb: PUSH0 000019cc: DUP1 000019cd: REVERT 000019ce: JUMPDEST 000019cf: POP 000019d0: DUP2 000019d1: CALLDATALOAD 000019d2: PUSH8 0xffffffffffffffff 000019db: DUP2 000019dc: GT 000019dd: ISZERO 000019de: PUSH2 0x19e8 000019e1: JUMPI 000019e2: PUSH2 0x19e8 000019e5: PUSH0 000019e6: DUP1 000019e7: REVERT 000019e8: JUMPDEST 000019e9: PUSH1 0x20 000019eb: DUP4 000019ec: ADD 000019ed: SWAP2 000019ee: POP 000019ef: DUP4 000019f0: PUSH1 0x20 000019f2: DUP3 000019f3: MUL 000019f4: DUP4 000019f5: ADD 000019f6: GT 000019f7: ISZERO 000019f8: PUSH2 0x1a02 000019fb: JUMPI 000019fc: PUSH2 0x1a02 000019ff: PUSH0 00001a00: DUP1 00001a01: REVERT 00001a02: JUMPDEST 00001a03: SWAP3 00001a04: POP 00001a05: SWAP3 00001a06: SWAP1 00001a07: POP 00001a08: JUMP 00001a09: JUMPDEST 00001a0a: PUSH0 00001a0b: DUP1 00001a0c: PUSH1 0x20 00001a0e: DUP4 00001a0f: DUP6 00001a10: SUB 00001a11: SLT 00001a12: ISZERO 00001a13: PUSH2 0x1a1d 00001a16: JUMPI 00001a17: PUSH2 0x1a1d 00001a1a: PUSH0 00001a1b: DUP1 00001a1c: REVERT 00001a1d: JUMPDEST 00001a1e: DUP3 00001a1f: CALLDATALOAD 00001a20: PUSH8 0xffffffffffffffff 00001a29: DUP2 00001a2a: GT 00001a2b: ISZERO 00001a2c: PUSH2 0x1a36 00001a2f: JUMPI 00001a30: PUSH2 0x1a36 00001a33: PUSH0 00001a34: DUP1 00001a35: REVERT 00001a36: JUMPDEST 00001a37: PUSH2 0x1a42 00001a3a: DUP6 00001a3b: DUP3 00001a3c: DUP7 00001a3d: ADD 00001a3e: PUSH2 0x19bb 00001a41: JUMP 00001a42: JUMPDEST 00001a43: SWAP3 00001a44: POP 00001a45: SWAP3 00001a46: POP 00001a47: POP 00001a48: SWAP3 00001a49: POP 00001a4a: SWAP3 00001a4b: SWAP1 00001a4c: POP 00001a4d: JUMP 00001a4e: JUMPDEST 00001a4f: PUSH2 0x1715 00001a52: DUP2 00001a53: PUSH2 0x1654 00001a56: JUMP 00001a57: JUMPDEST 00001a58: PUSH1 0x20 00001a5a: DUP2 00001a5b: ADD 00001a5c: PUSH2 0x0dd9 00001a5f: DUP3 00001a60: DUP5 00001a61: PUSH2 0x1a4e 00001a64: JUMP 00001a65: JUMPDEST 00001a66: PUSH0 00001a67: DUP1 00001a68: PUSH0 00001a69: DUP1 00001a6a: PUSH0 00001a6b: DUP1 00001a6c: PUSH2 0x0100 00001a6f: DUP8 00001a70: DUP10 00001a71: SUB 00001a72: SLT 00001a73: ISZERO 00001a74: PUSH2 0x1a7e 00001a77: JUMPI 00001a78: PUSH2 0x1a7e 00001a7b: PUSH0 00001a7c: DUP1 00001a7d: REVERT 00001a7e: JUMPDEST 00001a7f: PUSH0 00001a80: PUSH2 0x1a89 00001a83: DUP10 00001a84: DUP10 00001a85: PUSH2 0x1677 00001a88: JUMP 00001a89: JUMPDEST 00001a8a: SWAP7 00001a8b: POP 00001a8c: POP 00001a8d: PUSH1 0x20 00001a8f: PUSH2 0x1a9a 00001a92: DUP10 00001a93: DUP3 00001a94: DUP11 00001a95: ADD 00001a96: PUSH2 0x1677 00001a99: JUMP 00001a9a: JUMPDEST 00001a9b: SWAP6 00001a9c: POP 00001a9d: POP 00001a9e: PUSH1 0x40 00001aa0: PUSH2 0x1aab 00001aa3: DUP10 00001aa4: DUP3 00001aa5: DUP11 00001aa6: ADD 00001aa7: PUSH2 0x1688 00001aaa: JUMP 00001aab: JUMPDEST 00001aac: SWAP5 00001aad: POP 00001aae: POP 00001aaf: PUSH1 0x60 00001ab1: PUSH2 0x1abc 00001ab4: DUP10 00001ab5: DUP3 00001ab6: DUP11 00001ab7: ADD 00001ab8: PUSH2 0x1688 00001abb: JUMP 00001abc: JUMPDEST 00001abd: SWAP4 00001abe: POP 00001abf: POP 00001ac0: PUSH1 0x80 00001ac2: PUSH2 0x192a 00001ac5: DUP10 00001ac6: DUP3 00001ac7: DUP11 00001ac8: ADD 00001ac9: PUSH2 0x1688 00001acc: JUMP 00001acd: JUMPDEST 00001ace: PUSH0 00001acf: DUP1 00001ad0: PUSH1 0x40 00001ad2: DUP4 00001ad3: DUP6 00001ad4: SUB 00001ad5: SLT 00001ad6: ISZERO 00001ad7: PUSH2 0x1ae1 00001ada: JUMPI 00001adb: PUSH2 0x1ae1 00001ade: PUSH0 00001adf: DUP1 00001ae0: REVERT 00001ae1: JUMPDEST 00001ae2: PUSH0 00001ae3: PUSH2 0x1aec 00001ae6: DUP6 00001ae7: DUP6 00001ae8: PUSH2 0x1677 00001aeb: JUMP 00001aec: JUMPDEST 00001aed: SWAP3 00001aee: POP 00001aef: POP 00001af0: PUSH1 0x20 00001af2: PUSH2 0x1afd 00001af5: DUP6 00001af6: DUP3 00001af7: DUP7 00001af8: ADD 00001af9: PUSH2 0x1688 00001afc: JUMP 00001afd: JUMPDEST 00001afe: SWAP2 00001aff: POP 00001b00: POP 00001b01: SWAP3 00001b02: POP 00001b03: SWAP3 00001b04: SWAP1 00001b05: POP 00001b06: JUMP 00001b07: JUMPDEST 00001b08: PUSH0 00001b09: DUP1 00001b0a: PUSH0 00001b0b: DUP1 00001b0c: PUSH0 00001b0d: PUSH1 0x60 00001b0f: DUP7 00001b10: DUP9 00001b11: SUB 00001b12: SLT 00001b13: ISZERO 00001b14: PUSH2 0x1b1e 00001b17: JUMPI 00001b18: PUSH2 0x1b1e 00001b1b: PUSH0 00001b1c: DUP1 00001b1d: REVERT 00001b1e: JUMPDEST 00001b1f: PUSH0 00001b20: PUSH2 0x1b29 00001b23: DUP9 00001b24: DUP9 00001b25: PUSH2 0x1688 00001b28: JUMP 00001b29: JUMPDEST 00001b2a: SWAP6 00001b2b: POP 00001b2c: POP 00001b2d: PUSH1 0x20 00001b2f: DUP7 00001b30: ADD 00001b31: CALLDATALOAD 00001b32: PUSH8 0xffffffffffffffff 00001b3b: DUP2 00001b3c: GT 00001b3d: ISZERO 00001b3e: PUSH2 0x1b48 00001b41: JUMPI 00001b42: PUSH2 0x1b48 00001b45: PUSH0 00001b46: DUP1 00001b47: REVERT 00001b48: JUMPDEST 00001b49: PUSH2 0x1b54 00001b4c: DUP9 00001b4d: DUP3 00001b4e: DUP10 00001b4f: ADD 00001b50: PUSH2 0x19bb 00001b53: JUMP 00001b54: JUMPDEST 00001b55: SWAP5 00001b56: POP 00001b57: SWAP5 00001b58: POP 00001b59: POP 00001b5a: PUSH1 0x40 00001b5c: DUP7 00001b5d: ADD 00001b5e: CALLDATALOAD 00001b5f: PUSH8 0xffffffffffffffff 00001b68: DUP2 00001b69: GT 00001b6a: ISZERO 00001b6b: PUSH2 0x1b75 00001b6e: JUMPI 00001b6f: PUSH2 0x1b75 00001b72: PUSH0 00001b73: DUP1 00001b74: REVERT 00001b75: JUMPDEST 00001b76: PUSH2 0x1b81 00001b79: DUP9 00001b7a: DUP3 00001b7b: DUP10 00001b7c: ADD 00001b7d: PUSH2 0x19bb 00001b80: JUMP 00001b81: JUMPDEST 00001b82: SWAP3 00001b83: POP 00001b84: SWAP3 00001b85: POP 00001b86: POP 00001b87: SWAP3 00001b88: SWAP6 00001b89: POP 00001b8a: SWAP3 00001b8b: SWAP6 00001b8c: SWAP1 00001b8d: SWAP4 00001b8e: POP 00001b8f: JUMP 00001b90: JUMPDEST 00001b91: PUSH0 00001b92: DUP1 00001b93: PUSH0 00001b94: DUP1 00001b95: PUSH0 00001b96: PUSH1 0xa0 00001b98: DUP7 00001b99: DUP9 00001b9a: SUB 00001b9b: SLT 00001b9c: ISZERO 00001b9d: PUSH2 0x1ba7 00001ba0: JUMPI 00001ba1: PUSH2 0x1ba7 00001ba4: PUSH0 00001ba5: DUP1 00001ba6: REVERT 00001ba7: JUMPDEST 00001ba8: PUSH0 00001ba9: PUSH2 0x1bb2 00001bac: DUP9 00001bad: DUP9 00001bae: PUSH2 0x1677 00001bb1: JUMP 00001bb2: JUMPDEST 00001bb3: SWAP6 00001bb4: POP 00001bb5: POP 00001bb6: PUSH1 0x20 00001bb8: PUSH2 0x1bc3 00001bbb: DUP9 00001bbc: DUP3 00001bbd: DUP10 00001bbe: ADD 00001bbf: PUSH2 0x1677 00001bc2: JUMP 00001bc3: JUMPDEST 00001bc4: SWAP5 00001bc5: POP 00001bc6: POP 00001bc7: PUSH1 0x40 00001bc9: PUSH2 0x1bd4 00001bcc: DUP9 00001bcd: DUP3 00001bce: DUP10 00001bcf: ADD 00001bd0: PUSH2 0x1688 00001bd3: JUMP 00001bd4: JUMPDEST 00001bd5: SWAP4 00001bd6: POP 00001bd7: POP 00001bd8: PUSH1 0x60 00001bda: PUSH2 0x1be5 00001bdd: DUP9 00001bde: DUP3 00001bdf: DUP10 00001be0: ADD 00001be1: PUSH2 0x1688 00001be4: JUMP 00001be5: JUMPDEST 00001be6: SWAP3 00001be7: POP 00001be8: POP 00001be9: PUSH1 0x80 00001beb: PUSH2 0x19ae 00001bee: DUP9 00001bef: DUP3 00001bf0: DUP10 00001bf1: ADD 00001bf2: PUSH2 0x1688 00001bf5: JUMP 00001bf6: JUMPDEST 00001bf7: PUSH0 00001bf8: DUP1 00001bf9: PUSH0 00001bfa: DUP1 00001bfb: PUSH1 0x80 00001bfd: DUP6 00001bfe: DUP8 00001bff: SUB 00001c00: SLT 00001c01: ISZERO 00001c02: PUSH2 0x1c0c 00001c05: JUMPI 00001c06: PUSH2 0x1c0c 00001c09: PUSH0 00001c0a: DUP1 00001c0b: REVERT 00001c0c: JUMPDEST 00001c0d: PUSH0 00001c0e: PUSH2 0x1c17 00001c11: DUP8 00001c12: DUP8 00001c13: PUSH2 0x1688 00001c16: JUMP 00001c17: JUMPDEST 00001c18: SWAP5 00001c19: POP 00001c1a: POP 00001c1b: PUSH1 0x20 00001c1d: PUSH2 0x16c5 00001c20: DUP8 00001c21: DUP3 00001c22: DUP9 00001c23: ADD 00001c24: PUSH2 0x1688 00001c27: JUMP 00001c28: JUMPDEST 00001c29: PUSH4 0x4e487b71 00001c2e: PUSH1 0xe0 00001c30: SHL 00001c31: PUSH0 00001c32: MSTORE 00001c33: PUSH1 0x11 00001c35: PUSH1 0x04 00001c37: MSTORE 00001c38: PUSH1 0x24 00001c3a: PUSH0 00001c3b: REVERT 00001c3c: JUMPDEST 00001c3d: DUP2 00001c3e: DUP2 00001c3f: SUB 00001c40: DUP2 00001c41: DUP2 00001c42: GT 00001c43: ISZERO 00001c44: PUSH2 0x0dd9 00001c47: JUMPI 00001c48: PUSH2 0x0dd9 00001c4b: PUSH2 0x1c28 00001c4e: JUMP 00001c4f: JUMPDEST 00001c50: DUP1 00001c51: MLOAD 00001c52: PUSH2 0x0dd9 00001c55: DUP2 00001c56: PUSH2 0x1682 00001c59: JUMP 00001c5a: JUMPDEST 00001c5b: PUSH0 00001c5c: PUSH1 0x20 00001c5e: DUP3 00001c5f: DUP5 00001c60: SUB 00001c61: SLT 00001c62: ISZERO 00001c63: PUSH2 0x1c6d 00001c66: JUMPI 00001c67: PUSH2 0x1c6d 00001c6a: PUSH0 00001c6b: DUP1 00001c6c: REVERT 00001c6d: JUMPDEST 00001c6e: PUSH0 00001c6f: PUSH2 0x0dd5 00001c72: DUP5 00001c73: DUP5 00001c74: PUSH2 0x1c4f 00001c77: JUMP 00001c78: JUMPDEST 00001c79: PUSH4 0x4e487b71 00001c7e: PUSH1 0xe0 00001c80: SHL 00001c81: PUSH0 00001c82: MSTORE 00001c83: PUSH1 0x32 00001c85: PUSH1 0x04 00001c87: MSTORE 00001c88: PUSH1 0x24 00001c8a: PUSH0 00001c8b: REVERT 00001c8c: JUMPDEST 00001c8d: DUP1 00001c8e: DUP3 00001c8f: ADD 00001c90: DUP1 00001c91: DUP3 00001c92: GT 00001c93: ISZERO 00001c94: PUSH2 0x0dd9 00001c97: JUMPI 00001c98: PUSH2 0x0dd9 00001c9b: PUSH2 0x1c28 00001c9e: JUMP 00001c9f: JUMPDEST 00001ca0: PUSH1 0x40 00001ca2: DUP2 00001ca3: ADD 00001ca4: PUSH2 0x1cad 00001ca7: DUP3 00001ca8: DUP6 00001ca9: PUSH2 0x1a4e 00001cac: JUMP 00001cad: JUMPDEST 00001cae: PUSH2 0x0e9a 00001cb1: PUSH1 0x20 00001cb3: DUP4 00001cb4: ADD 00001cb5: DUP5 00001cb6: PUSH2 0x1a4e 00001cb9: JUMP 00001cba: JUMPDEST 00001cbb: PUSH1 0x40 00001cbd: DUP2 00001cbe: ADD 00001cbf: PUSH2 0x1cc8 00001cc2: DUP3 00001cc3: DUP6 00001cc4: PUSH2 0x1729 00001cc7: JUMP 00001cc8: JUMPDEST 00001cc9: PUSH2 0x0e9a 00001ccc: PUSH1 0x20 00001cce: DUP4 00001ccf: ADD 00001cd0: DUP5 00001cd1: PUSH2 0x1729 00001cd4: JUMP 00001cd5: JUMPDEST 00001cd6: DUP2 00001cd7: DUP2 00001cd8: MUL 00001cd9: DUP1 00001cda: DUP3 00001cdb: ISZERO 00001cdc: DUP4 00001cdd: DUP3 00001cde: DIV 00001cdf: DUP6 00001ce0: EQ 00001ce1: OR 00001ce2: PUSH2 0x1ced 00001ce5: JUMPI 00001ce6: PUSH2 0x1ced 00001ce9: PUSH2 0x1c28 00001cec: JUMP 00001ced: JUMPDEST 00001cee: POP 00001cef: SWAP3 00001cf0: SWAP2 00001cf1: POP 00001cf2: POP 00001cf3: JUMP 00001cf4: JUMPDEST 00001cf5: PUSH4 0x4e487b71 00001cfa: PUSH1 0xe0 00001cfc: SHL 00001cfd: PUSH0 00001cfe: MSTORE 00001cff: PUSH1 0x12 00001d01: PUSH1 0x04 00001d03: MSTORE 00001d04: PUSH1 0x24 00001d06: PUSH0 00001d07: REVERT 00001d08: JUMPDEST 00001d09: PUSH0 00001d0a: DUP3 00001d0b: PUSH2 0x1d16 00001d0e: JUMPI 00001d0f: PUSH2 0x1d16 00001d12: PUSH2 0x1cf4 00001d15: JUMP 00001d16: JUMPDEST 00001d17: POP 00001d18: DIV 00001d19: SWAP1 00001d1a: JUMP 00001d1b: JUMPDEST 00001d1c: PUSH0 00001d1d: DUP2 00001d1e: PUSH2 0x0dd9 00001d21: JUMP 00001d22: JUMPDEST 00001d23: PUSH1 0x40 00001d25: DUP2 00001d26: ADD 00001d27: PUSH2 0x1cc8 00001d2a: DUP3 00001d2b: DUP6 00001d2c: PUSH2 0x1a4e 00001d2f: JUMP 00001d30: JUMPDEST 00001d31: PUSH1 0x01 00001d33: PUSH1 0x01 00001d35: PUSH1 0x70 00001d37: SHL 00001d38: SUB 00001d39: DUP2 00001d3a: AND 00001d3b: PUSH2 0x166d 00001d3e: JUMP 00001d3f: JUMPDEST 00001d40: DUP1 00001d41: MLOAD 00001d42: PUSH2 0x0dd9 00001d45: DUP2 00001d46: PUSH2 0x1d30 00001d49: JUMP 00001d4a: JUMPDEST 00001d4b: PUSH4 0xffffffff 00001d50: DUP2 00001d51: AND 00001d52: PUSH2 0x166d 00001d55: JUMP 00001d56: JUMPDEST 00001d57: DUP1 00001d58: MLOAD 00001d59: PUSH2 0x0dd9 00001d5c: DUP2 00001d5d: PUSH2 0x1d4a 00001d60: JUMP 00001d61: JUMPDEST 00001d62: PUSH0 00001d63: DUP1 00001d64: PUSH0 00001d65: PUSH1 0x60 00001d67: DUP5 00001d68: DUP7 00001d69: SUB 00001d6a: SLT 00001d6b: ISZERO 00001d6c: PUSH2 0x1d76 00001d6f: JUMPI 00001d70: PUSH2 0x1d76 00001d73: PUSH0 00001d74: DUP1 00001d75: REVERT 00001d76: JUMPDEST 00001d77: PUSH0 00001d78: PUSH2 0x1d81 00001d7b: DUP7 00001d7c: DUP7 00001d7d: PUSH2 0x1d3f 00001d80: JUMP 00001d81: JUMPDEST 00001d82: SWAP4 00001d83: POP 00001d84: POP 00001d85: PUSH1 0x20 00001d87: PUSH2 0x1d92 00001d8a: DUP7 00001d8b: DUP3 00001d8c: DUP8 00001d8d: ADD 00001d8e: PUSH2 0x1d3f 00001d91: JUMP 00001d92: JUMPDEST 00001d93: SWAP3 00001d94: POP 00001d95: POP 00001d96: PUSH1 0x40 00001d98: PUSH2 0x1da3 00001d9b: DUP7 00001d9c: DUP3 00001d9d: DUP8 00001d9e: ADD 00001d9f: PUSH2 0x1d56 00001da2: JUMP 00001da3: JUMPDEST 00001da4: SWAP2 00001da5: POP 00001da6: POP 00001da7: SWAP3 00001da8: POP 00001da9: SWAP3 00001daa: POP 00001dab: SWAP3 00001dac: JUMP 00001dad: JUMPDEST 00001dae: DUP1 00001daf: ISZERO 00001db0: ISZERO 00001db1: PUSH2 0x166d 00001db4: JUMP 00001db5: JUMPDEST 00001db6: DUP1 00001db7: MLOAD 00001db8: PUSH2 0x0dd9 00001dbb: DUP2 00001dbc: PUSH2 0x1dad 00001dbf: JUMP 00001dc0: JUMPDEST 00001dc1: PUSH0 00001dc2: PUSH1 0x20 00001dc4: DUP3 00001dc5: DUP5 00001dc6: SUB 00001dc7: SLT 00001dc8: ISZERO 00001dc9: PUSH2 0x1dd3 00001dcc: JUMPI 00001dcd: PUSH2 0x1dd3 00001dd0: PUSH0 00001dd1: DUP1 00001dd2: REVERT 00001dd3: JUMPDEST 00001dd4: PUSH0 00001dd5: PUSH2 0x0dd5 00001dd8: DUP5 00001dd9: DUP5 00001dda: PUSH2 0x1db5 00001ddd: JUMP 00001dde: JUMPDEST 00001ddf: DUP3 00001de0: DUP2 00001de1: DUP4 00001de2: MCOPY 00001de3: POP 00001de4: PUSH0 00001de5: SWAP2 00001de6: ADD 00001de7: MSTORE 00001de8: JUMP 00001de9: JUMPDEST 00001dea: PUSH0 00001deb: PUSH2 0x1df2 00001dee: DUP3 00001def: MLOAD 00001df0: SWAP1 00001df1: JUMP 00001df2: JUMPDEST 00001df3: DUP1 00001df4: DUP5 00001df5: MSTORE 00001df6: PUSH1 0x20 00001df8: DUP5 00001df9: ADD 00001dfa: SWAP4 00001dfb: POP 00001dfc: PUSH2 0x1e09 00001dff: DUP2 00001e00: DUP6 00001e01: PUSH1 0x20 00001e03: DUP7 00001e04: ADD 00001e05: PUSH2 0x1dde 00001e08: JUMP 00001e09: JUMPDEST 00001e0a: PUSH1 0x1f 00001e0c: ADD 00001e0d: PUSH1 0x1f 00001e0f: NOT 00001e10: AND 00001e11: SWAP3 00001e12: SWAP1 00001e13: SWAP3 00001e14: ADD 00001e15: SWAP3 00001e16: SWAP2 00001e17: POP 00001e18: POP 00001e19: JUMP 00001e1a: JUMPDEST 00001e1b: PUSH1 0x80 00001e1d: DUP2 00001e1e: ADD 00001e1f: PUSH2 0x1e28 00001e22: DUP3 00001e23: DUP8 00001e24: PUSH2 0x1729 00001e27: JUMP 00001e28: JUMPDEST 00001e29: PUSH2 0x1e35 00001e2c: PUSH1 0x20 00001e2e: DUP4 00001e2f: ADD 00001e30: DUP7 00001e31: PUSH2 0x1729 00001e34: JUMP 00001e35: JUMPDEST 00001e36: PUSH2 0x1e42 00001e39: PUSH1 0x40 00001e3b: DUP4 00001e3c: ADD 00001e3d: DUP6 00001e3e: PUSH2 0x1a4e 00001e41: JUMP 00001e42: JUMPDEST 00001e43: DUP2 00001e44: DUP2 00001e45: SUB 00001e46: PUSH1 0x60 00001e48: DUP4 00001e49: ADD 00001e4a: MSTORE 00001e4b: PUSH2 0x163d 00001e4e: DUP2 00001e4f: DUP5 00001e50: PUSH2 0x1de9 00001e53: JUMP 00001e54: JUMPDEST 00001e55: PUSH1 0x01 00001e57: PUSH1 0x01 00001e59: PUSH1 0xf8 00001e5b: SHL 00001e5c: SUB 00001e5d: NOT 00001e5e: DUP2 00001e5f: AND 00001e60: PUSH2 0x1715 00001e63: JUMP 00001e64: JUMPDEST 00001e65: PUSH0 00001e66: PUSH2 0x0dd9 00001e69: DUP3 00001e6a: PUSH1 0x60 00001e6c: SHL 00001e6d: SWAP1 00001e6e: JUMP 00001e6f: JUMPDEST 00001e70: PUSH0 00001e71: PUSH2 0x0dd9 00001e74: DUP3 00001e75: PUSH2 0x1e64 00001e78: JUMP 00001e79: JUMPDEST 00001e7a: PUSH2 0x1715 00001e7d: PUSH2 0x1e85 00001e80: DUP3 00001e81: PUSH2 0x1654 00001e84: JUMP 00001e85: JUMPDEST 00001e86: PUSH2 0x1e6f 00001e89: JUMP 00001e8a: JUMPDEST 00001e8b: PUSH0 00001e8c: PUSH2 0x1e95 00001e8f: DUP3 00001e90: DUP8 00001e91: PUSH2 0x1e54 00001e94: JUMP 00001e95: JUMPDEST 00001e96: PUSH1 0x01 00001e98: DUP3 00001e99: ADD 00001e9a: SWAP2 00001e9b: POP 00001e9c: PUSH2 0x1ea5 00001e9f: DUP3 00001ea0: DUP7 00001ea1: PUSH2 0x1e79 00001ea4: JUMP 00001ea5: JUMPDEST 00001ea6: PUSH1 0x14 00001ea8: DUP3 00001ea9: ADD 00001eaa: SWAP2 00001eab: POP 00001eac: PUSH2 0x1eb5 00001eaf: DUP3 00001eb0: DUP6 00001eb1: PUSH2 0x1729 00001eb4: JUMP 00001eb5: JUMPDEST 00001eb6: PUSH1 0x20 00001eb8: DUP3 00001eb9: ADD 00001eba: SWAP2 00001ebb: POP 00001ebc: PUSH2 0x1ec5 00001ebf: DUP3 00001ec0: DUP5 00001ec1: PUSH2 0x1729 00001ec4: JUMP 00001ec5: JUMPDEST 00001ec6: POP 00001ec7: PUSH1 0x20 00001ec9: ADD 00001eca: SWAP5 00001ecb: SWAP4 00001ecc: POP 00001ecd: POP 00001ece: POP 00001ecf: POP 00001ed0: JUMP 00001ed1: INVALID 00001ed2: PUSH1 0x80 00001ed4: PUSH1 0x40 00001ed6: MSTORE 00001ed7: CALLVALUE 00001ed8: DUP1 00001ed9: ISZERO 00001eda: PUSH1 0x0e 00001edc: JUMPI 00001edd: PUSH0 00001ede: DUP1 00001edf: REVERT 00001ee0: JUMPDEST 00001ee1: POP 00001ee2: PUSH2 0x0276 00001ee5: DUP1 00001ee6: PUSH2 0x001c 00001ee9: PUSH0 00001eea: CODECOPY 00001eeb: PUSH0 00001eec: RETURN 00001eed: INVALID 00001eee: PUSH1 0x80 00001ef0: PUSH1 0x40 00001ef2: MSTORE 00001ef3: CALLVALUE 00001ef4: DUP1 00001ef5: ISZERO 00001ef6: PUSH2 0x000f 00001ef9: JUMPI 00001efa: PUSH0 00001efb: DUP1 00001efc: REVERT 00001efd: JUMPDEST 00001efe: POP 00001eff: PUSH1 0x04 00001f01: CALLDATASIZE 00001f02: LT 00001f03: PUSH2 0x0029 00001f06: JUMPI 00001f07: PUSH0 00001f08: CALLDATALOAD 00001f09: PUSH1 0xe0 00001f0b: SHR 00001f0c: DUP1 00001f0d: PUSH4 0x6b76484e 00001f12: EQ 00001f13: PUSH2 0x002d 00001f16: JUMPI 00001f17: JUMPDEST 00001f18: PUSH0 00001f19: DUP1 00001f1a: REVERT 00001f1b: JUMPDEST 00001f1c: PUSH2 0x0040 00001f1f: PUSH2 0x003b 00001f22: CALLDATASIZE 00001f23: PUSH1 0x04 00001f25: PUSH2 0x0159 00001f28: JUMP 00001f29: JUMPDEST 00001f2a: PUSH2 0x0042 00001f2d: JUMP 00001f2e: JUMPDEST 00001f2f: STOP 00001f30: JUMPDEST 00001f31: PUSH1 0x40 00001f33: MLOAD 00001f34: PUSH4 0x70a08231 00001f39: PUSH1 0xe0 00001f3b: SHL 00001f3c: DUP2 00001f3d: MSTORE 00001f3e: PUSH0 00001f3f: SWAP1 00001f40: PUSH1 0x01 00001f42: PUSH1 0x01 00001f44: PUSH1 0xa0 00001f46: SHL 00001f47: SUB 00001f48: DUP4 00001f49: AND 00001f4a: SWAP1 00001f4b: PUSH4 0x70a08231 00001f50: SWAP1 00001f51: PUSH2 0x0070 00001f54: SWAP1 00001f55: ADDRESS 00001f56: SWAP1 00001f57: PUSH1 0x04 00001f59: ADD 00001f5a: PUSH2 0x01a2 00001f5d: JUMP 00001f5e: JUMPDEST 00001f5f: PUSH1 0x20 00001f61: PUSH1 0x40 00001f63: MLOAD 00001f64: DUP1 00001f65: DUP4 00001f66: SUB 00001f67: DUP2 00001f68: DUP7 00001f69: GAS 00001f6a: STATICCALL 00001f6b: ISZERO 00001f6c: DUP1 00001f6d: ISZERO 00001f6e: PUSH2 0x008b 00001f71: JUMPI 00001f72: RETURNDATASIZE 00001f73: PUSH0 00001f74: DUP1 00001f75: RETURNDATACOPY 00001f76: RETURNDATASIZE 00001f77: PUSH0 00001f78: REVERT 00001f79: JUMPDEST 00001f7a: POP 00001f7b: POP 00001f7c: POP 00001f7d: POP 00001f7e: PUSH1 0x40 00001f80: MLOAD 00001f81: RETURNDATASIZE 00001f82: PUSH1 0x1f 00001f84: NOT 00001f85: PUSH1 0x1f 00001f87: DUP3 00001f88: ADD 00001f89: AND 00001f8a: DUP3 00001f8b: ADD 00001f8c: DUP1 00001f8d: PUSH1 0x40 00001f8f: MSTORE 00001f90: POP 00001f91: DUP2 00001f92: ADD 00001f93: SWAP1 00001f94: PUSH2 0x00af 00001f97: SWAP2 00001f98: SWAP1 00001f99: PUSH2 0x01c1 00001f9c: JUMP 00001f9d: JUMPDEST 00001f9e: PUSH1 0x40 00001fa0: MLOAD 00001fa1: PUSH4 0xa9059cbb 00001fa6: PUSH1 0xe0 00001fa8: SHL 00001fa9: DUP2 00001faa: MSTORE 00001fab: SWAP1 00001fac: SWAP2 00001fad: POP 00001fae: PUSH1 0x01 00001fb0: PUSH1 0x01 00001fb2: PUSH1 0xa0 00001fb4: SHL 00001fb5: SUB 00001fb6: DUP4 00001fb7: AND 00001fb8: SWAP1 00001fb9: PUSH4 0xa9059cbb 00001fbe: SWAP1 00001fbf: PUSH2 0x00e0 00001fc2: SWAP1 00001fc3: DUP7 00001fc4: SWAP1 00001fc5: DUP6 00001fc6: SWAP1 00001fc7: PUSH1 0x04 00001fc9: ADD 00001fca: PUSH2 0x01ed 00001fcd: JUMP 00001fce: JUMPDEST 00001fcf: PUSH1 0x20 00001fd1: PUSH1 0x40 00001fd3: MLOAD 00001fd4: DUP1 00001fd5: DUP4 00001fd6: SUB 00001fd7: DUP2 00001fd8: PUSH0 00001fd9: DUP8 00001fda: GAS 00001fdb: CALL 00001fdc: ISZERO 00001fdd: DUP1 00001fde: ISZERO 00001fdf: PUSH2 0x00fc 00001fe2: JUMPI 00001fe3: RETURNDATASIZE 00001fe4: PUSH0 00001fe5: DUP1 00001fe6: RETURNDATACOPY 00001fe7: RETURNDATASIZE 00001fe8: PUSH0 00001fe9: REVERT 00001fea: JUMPDEST 00001feb: POP 00001fec: POP 00001fed: POP 00001fee: POP 00001fef: PUSH1 0x40 00001ff1: MLOAD 00001ff2: RETURNDATASIZE 00001ff3: PUSH1 0x1f 00001ff5: NOT 00001ff6: PUSH1 0x1f 00001ff8: DUP3 00001ff9: ADD 00001ffa: AND 00001ffb: DUP3 00001ffc: ADD 00001ffd: DUP1 00001ffe: PUSH1 0x40 00002000: MSTORE 00002001: POP 00002002: DUP2 00002003: ADD 00002004: SWAP1 00002005: PUSH2 0x0120 00002008: SWAP2 00002009: SWAP1 0000200a: PUSH2 0x0222 0000200d: JUMP 0000200e: JUMPDEST 0000200f: POP 00002010: POP 00002011: POP 00002012: POP 00002013: JUMP 00002014: JUMPDEST 00002015: PUSH0 00002016: PUSH1 0x01 00002018: PUSH1 0x01 0000201a: PUSH1 0xa0 0000201c: SHL 0000201d: SUB 0000201e: DUP3 0000201f: AND 00002020: JUMPDEST 00002021: SWAP3 00002022: SWAP2 00002023: POP 00002024: POP 00002025: JUMP 00002026: JUMPDEST 00002027: PUSH2 0x0141 0000202a: DUP2 0000202b: PUSH2 0x0126 0000202e: JUMP 0000202f: JUMPDEST 00002030: DUP2 00002031: EQ 00002032: PUSH2 0x014b 00002035: JUMPI 00002036: PUSH0 00002037: DUP1 00002038: REVERT 00002039: JUMPDEST 0000203a: POP 0000203b: JUMP 0000203c: JUMPDEST 0000203d: DUP1 0000203e: CALLDATALOAD 0000203f: PUSH2 0x0132 00002042: DUP2 00002043: PUSH2 0x0138 00002046: JUMP 00002047: JUMPDEST 00002048: PUSH0 00002049: DUP1 0000204a: PUSH1 0x40 0000204c: DUP4 0000204d: DUP6 0000204e: SUB 0000204f: SLT 00002050: ISZERO 00002051: PUSH2 0x016d 00002054: JUMPI 00002055: PUSH2 0x016d 00002058: PUSH0 00002059: DUP1 0000205a: REVERT 0000205b: JUMPDEST 0000205c: PUSH0 0000205d: PUSH2 0x0178 00002060: DUP6 00002061: DUP6 00002062: PUSH2 0x014e 00002065: JUMP 00002066: JUMPDEST 00002067: SWAP3 00002068: POP 00002069: POP 0000206a: PUSH1 0x20 0000206c: PUSH2 0x0189 0000206f: DUP6 00002070: DUP3 00002071: DUP7 00002072: ADD 00002073: PUSH2 0x014e 00002076: JUMP 00002077: JUMPDEST 00002078: SWAP2 00002079: POP 0000207a: POP 0000207b: SWAP3 0000207c: POP 0000207d: SWAP3 0000207e: SWAP1 0000207f: POP 00002080: JUMP 00002081: JUMPDEST 00002082: PUSH2 0x019c 00002085: DUP2 00002086: PUSH2 0x0126 00002089: JUMP 0000208a: JUMPDEST 0000208b: DUP3 0000208c: MSTORE 0000208d: POP 0000208e: POP 0000208f: JUMP 00002090: JUMPDEST 00002091: PUSH1 0x20 00002093: DUP2 00002094: ADD 00002095: PUSH2 0x0132 00002098: DUP3 00002099: DUP5 0000209a: PUSH2 0x0193 0000209d: JUMP 0000209e: JUMPDEST 0000209f: DUP1 000020a0: PUSH2 0x0141 000020a3: JUMP 000020a4: JUMPDEST 000020a5: DUP1 000020a6: MLOAD 000020a7: PUSH2 0x0132 000020aa: DUP2 000020ab: PUSH2 0x01b0 000020ae: JUMP 000020af: JUMPDEST 000020b0: PUSH0 000020b1: PUSH1 0x20 000020b3: DUP3 000020b4: DUP5 000020b5: SUB 000020b6: SLT 000020b7: ISZERO 000020b8: PUSH2 0x01d4 000020bb: JUMPI 000020bc: PUSH2 0x01d4 000020bf: PUSH0 000020c0: DUP1 000020c1: REVERT 000020c2: JUMPDEST 000020c3: PUSH0 000020c4: PUSH2 0x01df 000020c7: DUP5 000020c8: DUP5 000020c9: PUSH2 0x01b6 000020cc: JUMP 000020cd: JUMPDEST 000020ce: SWAP5 000020cf: SWAP4 000020d0: POP 000020d1: POP 000020d2: POP 000020d3: POP 000020d4: JUMP 000020d5: JUMPDEST 000020d6: DUP1 000020d7: PUSH2 0x019c 000020da: JUMP 000020db: JUMPDEST 000020dc: PUSH1 0x40 000020de: DUP2 000020df: ADD 000020e0: PUSH2 0x01fb 000020e3: DUP3 000020e4: DUP6 000020e5: PUSH2 0x0193 000020e8: JUMP 000020e9: JUMPDEST 000020ea: PUSH2 0x0208 000020ed: PUSH1 0x20 000020ef: DUP4 000020f0: ADD 000020f1: DUP5 000020f2: PUSH2 0x01e7 000020f5: JUMP 000020f6: JUMPDEST 000020f7: SWAP4 000020f8: SWAP3 000020f9: POP 000020fa: POP 000020fb: POP 000020fc: JUMP 000020fd: JUMPDEST 000020fe: DUP1 000020ff: ISZERO 00002100: ISZERO 00002101: PUSH2 0x0141 00002104: JUMP 00002105: JUMPDEST 00002106: DUP1 00002107: MLOAD 00002108: PUSH2 0x0132 0000210b: DUP2 0000210c: PUSH2 0x020f 0000210f: JUMP 00002110: JUMPDEST 00002111: PUSH0 00002112: PUSH1 0x20 00002114: DUP3 00002115: DUP5 00002116: SUB 00002117: SLT 00002118: ISZERO 00002119: PUSH2 0x0235 0000211c: JUMPI 0000211d: PUSH2 0x0235 00002120: PUSH0 00002121: DUP1 00002122: REVERT 00002123: JUMPDEST 00002124: PUSH0 00002125: PUSH2 0x01df 00002128: DUP5 00002129: DUP5 0000212a: PUSH2 0x0217 0000212d: JUMP 0000212e: INVALID 0000212f: LOG2 00002130: PUSH5 0x6970667358 00002136: UNKNOWN(0x22) 00002137: SLT 00002138: KECCAK256 00002139: CALLER 0000213a: UNKNOWN(0xCD) 0000213b: PUSH31 0x1980d5a17d2efb44df41d0d03ad8ac613dfad773c7ca9d4501b786a9426473 0000215b: PUSH16 0x6c634300081a0033a264697066735822 0000216c: SLT 0000216d: KECCAK256 0000216e: DUP1 0000216f: PUSH27 0x3f9498cf52e17b1f184db91e011862a3ab82308bf7ab1627059e7a 0000218b: UNKNOWN(0xED) 0000218c: SUB 0000218d: SHL 0000218e: PUSH5 0x736f6c6343 00002194: STOP 00002195: ADDMOD 00002196: BYTE 00002197: STOP 00002198: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x4449f63de2c4f8c4c44adc0dceb57eb9cdd6d2dbfa582754ce86060e87cacf7a
call_targets:
0x9665368f54e19e94adbd0780326871ce9660f61d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x4449f63de2c4f8c4c44adc0dceb57eb9cdd6d2dbfa582754ce86060e87cacf7a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x9665368f54e19e94adbd0780326871ce9660f61d"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xe5f9dea6",
"selector": "0xe5f9dea6",
"calldata_variants": [
"0xe5f9dea6",
"0xe5f9dea60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xee1e2bb8",
"selector": "0xee1e2bb8",
"calldata_variants": [
"0xee1e2bb8",
"0xee1e2bb80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfb7eb226",
"selector": "0xfb7eb226",
"calldata_variants": [
"0xfb7eb226",
"0xfb7eb2260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xffa1ad74",
"selector": "0xffa1ad74",
"calldata_variants": [
"0xffa1ad74",
"0xffa1ad740000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f1e7abc",
"selector": "0x8f1e7abc",
"calldata_variants": [
"0x8f1e7abc",
"0x8f1e7abc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9e281a98",
"selector": "0x9e281a98",
"calldata_variants": [
"0x9e281a98",
"0x9e281a980000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xad1b93e2",
"selector": "0xad1b93e2",
"calldata_variants": [
"0xad1b93e2",
"0xad1b93e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1327,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2143,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2524,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 11,
"guards_detected": [],
"untrusted_call_count": 11
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x4449f63de2c4f8c4c44adc0dceb57eb9cdd6d2dbfa582754ce86060e87cacf7a
call_targets:
0x9665368f54e19e94adbd0780326871ce9660f61d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x4449f63de2c4f8c4c44adc0dceb57eb9cdd6d2dbfa582754ce86060e87cacf7a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x9665368f54e19e94adbd0780326871ce9660f61d"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xe5f9dea6",
"selector": "0xe5f9dea6",
"calldata_variants": [
"0xe5f9dea6",
"0xe5f9dea60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xee1e2bb8",
"selector": "0xee1e2bb8",
"calldata_variants": [
"0xee1e2bb8",
"0xee1e2bb80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfb7eb226",
"selector": "0xfb7eb226",
"calldata_variants": [
"0xfb7eb226",
"0xfb7eb2260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xffa1ad74",
"selector": "0xffa1ad74",
"calldata_variants": [
"0xffa1ad74",
"0xffa1ad740000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f1e7abc",
"selector": "0x8f1e7abc",
"calldata_variants": [
"0x8f1e7abc",
"0x8f1e7abc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9e281a98",
"selector": "0x9e281a98",
"calldata_variants": [
"0x9e281a98",
"0x9e281a980000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xad1b93e2",
"selector": "0xad1b93e2",
"calldata_variants": [
"0xad1b93e2",
"0xad1b93e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1327,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2143,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2524,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 11,
"guards_detected": []
}
|
| medium | access_control | codex | External CALLs with computed target/value may allow arbitrary call/value forwarding | 75 | no | — |
viewevidence_json{
"evidence": "Callsites list multiple CALLs with target_expression_category/value_expression_category set to \"computed\" and returndata_checked null (pc 1327, 2143, 2524, 2920, 3222, 3631, 4739, 4915, 5134, 5510, 8155). Detector finding: \"Untrusted CALL target/value reachable\" with no guards detected.",
"locations": [
"pc:1327",
"pc:2143",
"pc:2524",
"pc:2920",
"pc:4739",
"pc:8155"
],
"recommendation": "Ensure any function that forwards calls/value is restricted (e.g., onlyOwner or allowlisted targets), or validate target/value strictly (e.g., require value == 0 unless explicitly intended). Add reentrancy protection if state is modified around these calls.",
"exploit_scenario": "If any public/external function exposes these CALL paths without strict access control, an attacker could supply target/value parameters to make the contract call arbitrary addresses and forward ETH, potentially draining contract-held ETH or invoking reentrancy via malicious targets. This is especially relevant because the dispatcher includes a payable receive/fallback path and multiple CALL sites with computed targets."
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xfcbea2a5ab434a72ceaecfd319c24a6dd0d569516a8ec840b0901ff9d858d141
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xfcbea2a5ab434a72ceaecfd319c24a6dd0d569516a8ec840b0901ff9d858d141",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xe5f9dea6",
"selector": "0xe5f9dea6",
"calldata_variants": [
"0xe5f9dea6",
"0xe5f9dea60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xee1e2bb8",
"selector": "0xee1e2bb8",
"calldata_variants": [
"0xee1e2bb8",
"0xee1e2bb80000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfb7eb226",
"selector": "0xfb7eb226",
"calldata_variants": [
"0xfb7eb226",
"0xfb7eb2260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xffa1ad74",
"selector": "0xffa1ad74",
"calldata_variants": [
"0xffa1ad74",
"0xffa1ad740000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8f1e7abc",
"selector": "0x8f1e7abc",
"calldata_variants": [
"0x8f1e7abc",
"0x8f1e7abc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9e281a98",
"selector": "0x9e281a98",
"calldata_variants": [
"0x9e281a98",
"0x9e281a980000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xad1b93e2",
"selector": "0xad1b93e2",
"calldata_variants": [
"0xad1b93e2",
"0xad1b93e20000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 1,
"create2_count": 1
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 1,
"create2_count": 1
}
|
| low | other | codex | CREATE2 result appears unchecked | 65 | no | — |
viewevidence_json{
"evidence": "Basic block shows CREATE2 followed by POPs and immediate JUMP without a zero-address check.",
"locations": [
"pc:3769"
],
"recommendation": "Check the CREATE2 return value and revert on failure (address == 0). Consider access control or salt validation if deployments should be restricted or deterministic addresses are relied on.",
"exploit_scenario": "A CREATE2 deployment can fail (salt collision, insufficient balance, invalid init code). If the contract does not verify the returned address, later logic may assume deployment succeeded, leading to incorrect state or funds locked. In permissionless deployment paths, this can also enable front-running of expected addresses."
}
|
| low | other | codex | ERC20 transfer/transferFrom calls do not appear to validate return data | 65 | no | — |
viewevidence_json{
"evidence": "Multiple CALL sites report returndata_checked null. Runtime bytecode includes direct a9059cbb calls without explicit return-data validation.",
"locations": [
"selector:0xa9059cbb",
"pc:4915"
],
"recommendation": "Use a safe ERC20 wrapper that treats missing/false return data as failure (e.g., check returndata size and decode boolean), or enforce a token allowlist with compliant behavior.",
"exploit_scenario": "If interacting with non-standard ERC20s that return false instead of reverting, the contract may treat failed transfers as success, causing accounting mismatches or stuck funds."
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 8
}
|
| info | other | cast | Heavy CALL-family usage | 55 | no | — |
viewevidence_json{
"notes": "large number of CALL/CALLCODE/STATICCALL opcodes; review external call patterns",
"call_family_count": 16
}
|