1dc04ed1-c1b7-4ebb-b3fe-8281128c54fb
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 |
|---|---|---|---|---|
| 31085 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 76324 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 76325 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 76326 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 76327 | capability.graph | complete | 1 / 3 | 1 week ago |
| 76328 | detector.run | complete | 1 / 3 | 1 week ago |
| 76329 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:449478] OpenAI Codex v0.77.0 (research preview)
[codex:449478] --------
[codex:449478] workdir: /tmp/codex-multi-tqcaf5el
[codex:449478] model: gpt-5.2-codex
[codex:449478] provider: openai
[codex:449478] approval: never
[codex:449478] sandbox: read-only
[codex:449478] reasoning effort: xhigh
[codex:449478] reasoning summaries: auto
[codex:449478] session id: 019b7a80-73f5-7132-9dd1-2e3bed3150f7
[codex:449478] --------
[codex:449478] user
[codex:449478] You are a profit-focused exploit hunter analyzing EVM bytecode. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:449478]
[codex:449478] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:449478]
[codex:449478] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:449478] - Gas inefficiency, code quality, or best practices
[codex:449478] - Theoretical vulnerabilities without a clear extraction path
[codex:449478] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:449478] - Issues requiring social engineering or off-chain coordination
[codex:449478]
[codex:449478] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:449478] - CALL/DELEGATECALL with controllable destination or calldata
[codex:449478] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:449478] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:449478] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:449478] - External calls before state updates (reentrancy)
[codex:449478] - SELFDESTRUCT with controllable beneficiary
[codex:449478] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:449478]
[codex:449478] For each finding, you MUST explain:
[codex:449478] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:449478] 2. The concrete sequence of transactions to extract value
[codex:449478] 3. Why you believe this is exploitable (not just suspicious)
[codex:449478]
[codex:449478] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:449478] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:449478]
[codex:449478] Output MUST be valid JSON matching the provided schema.
[codex:449478] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:449478] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:449478] mcp startup: no servers
[codex:449478]
[codex:449478] thinking
[codex:449478] **Looking for bytecode file**
[codex:449478] exec
[codex:449478] /bin/bash -lc ls in /tmp/codex-multi-tqcaf5el succeeded in 6ms:
[codex:449478] BYTECODE_BUNDLE.txt
[codex:449478] codex-output-schema.json
[codex:449478] exec
[codex:449478] /bin/bash -lc 'wc -l BYTECODE_BUNDLE.txt' in /tmp/codex-multi-tqcaf5el succeeded in 6ms:
[codex:449478] 5 BYTECODE_BUNDLE.txt
[codex:449478] exec
[codex:449478] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-tqcaf5el succeeded in 5ms:
[codex:449478] Runtime bytecode bundle for best-effort auditing.
[codex:449478] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:449478]
[codex:449478] FILE: runtime_bytecode.hex
[codex:449478] 0x6060604052361561011a5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663025e7c278114610165578063173825d91461019757806320ea8d86146101b85780632f54bf6e146101d05780633411c81c1461020357806354741525146102395780637065cb4814610268578063784547a7146102895780638b51d13f146102b35780639ace38c2146102db578063a0e67e2b1461039a578063a8abe69a14610401578063b5dc40c314610478578063b77bf600146104e2578063ba51a6df14610507578063c01a8c841461051f578063c642747414610537578063d74f8edd146105ae578063dc8452cd146105d3578063e20056e6146105f8578063ee22610b1461061f575b5b60003411156101625733600160a060020a03167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3460405190815260200160405180910390a25b5b005b341561017057600080fd5b61017b600435610637565b604051600160a060020a03909116815260200160405180910390f35b34156101a257600080fd5b610162600160a060020a0360043516610669565b005b34156101c357600080fd5b61016260043561081a565b005b34156101db57600080fd5b6101ef600160a060020a03600435166108fc565b604051901515815260200160405180910390f35b341561020e57600080fd5b6101ef600435600160a060020a0360243516610911565b604051901515815260200160405180910390f35b341561024457600080fd5b61025660043515156024351515610931565b60405190815260200160405180910390f35b341561027357600080fd5b610162600160a060020a03600435166109a0565b005b341561029457600080fd5b6101ef600435610add565b604051901515815260200160405180910390f35b34156102be57600080fd5b610256600435610b71565b60405190815260200160405180910390f35b34156102e657600080fd5b6102f1600435610bf0565b604051600160a060020a03851681526020810184905281151560608201526080604082018181528454600260001961010060018416150201909116049183018290529060a0830190859080156103885780601f1061035d57610100808354040283529160200191610388565b820191906000526020600020905b81548152906001019060200180831161036b57829003601f168201915b50509550505050505060405180910390f35b34156103a557600080fd5b6103ad610c24565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156103ed5780820151818401525b6020016103d4565b505050509050019250505060405180910390f35b341561040c57600080fd5b6103ad60043560243560443515156064351515610c8d565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156103ed5780820151818401525b6020016103d4565b505050509050019250505060405180910390f35b341561048357600080fd5b6103ad600435610dbb565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156103ed5780820151818401525b6020016103d4565b505050509050019250505060405180910390f35b34156104ed57600080fd5b610256610f3d565b60405190815260200160405180910390f35b341561051257600080fd5b610162600435610f43565b005b341561052a57600080fd5b610162600435610fd9565b005b341561054257600080fd5b61025660048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506110cb95505050505050565b60405190815260200160405180910390f35b34156105b957600080fd5b6102566110eb565b60405190815260200160405180910390f35b34156105de57600080fd5b6102566110f0565b60405190815260200160405180910390f35b341561060357600080fd5b610162600160a060020a03600435811690602435166110f6565b005b341561062a57600080fd5b6101626004356112b7565b005b600380548290811061064557fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600030600160a060020a031633600160a060020a031614151561068b57600080fd5b600160a060020a038216600090815260026020526040902054829060ff1615156106b457600080fd5b600160a060020a0383166000908152600260205260408120805460ff1916905591505b600354600019018210156107af5782600160a060020a03166003838154811015156106fe57fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a031614156107a35760038054600019810190811061073f57fe5b906000526020600020900160005b9054906101000a9004600160a060020a031660038381548110151561076e57fe5b906000526020600020900160005b6101000a815481600160a060020a030219169083600160a060020a031602179055506107af565b5b6001909101906106d7565b6003805460001901906107c290826115cd565b5060035460045411156107db576003546107db90610f43565b5b82600160a060020a03167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a25b5b505b5050565b33600160a060020a03811660009081526002602052604090205460ff16151561084257600080fd5b600082815260016020908152604080832033600160a060020a038116855292529091205483919060ff16151561087757600080fd5b600084815260208190526040902060030154849060ff161561089857600080fd5b6000858152600160209081526040808320600160a060020a033316808552925291829020805460ff1916905586917ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e9905160405180910390a35b5b505b50505b5050565b60026020526000908152604090205460ff1681565b600160209081526000928352604080842090915290825290205460ff1681565b6000805b6005548110156109985783801561095e575060008181526020819052604090206003015460ff16155b806109825750828015610982575060008181526020819052604090206003015460ff165b5b1561098f576001820191505b5b600101610935565b5b5092915050565b30600160a060020a031633600160a060020a03161415156109c057600080fd5b600160a060020a038116600090815260026020526040902054819060ff16156109e857600080fd5b81600160a060020a03811615156109fe57600080fd5b60038054905060010160045460328211158015610a1b5750818111155b8015610a2657508015155b8015610a3157508115155b1515610a3c57600080fd5b600160a060020a0385166000908152600260205260409020805460ff191660019081179091556003805490918101610a7483826115cd565b916000526020600020900160005b8154600160a060020a03808a166101009390930a8381029102199091161790915590507ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25b5b50505b505b505b50565b600080805b600354811015610b695760008481526001602052604081206003805491929184908110610b0b57fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000205460ff1615610b4d576001820191505b600454821415610b605760019250610b69565b5b600101610ae2565b5b5050919050565b6000805b600354811015610be95760008381526001602052604081206003805491929184908110610b9e57fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000205460ff1615610be0576001820191505b5b600101610b75565b5b50919050565b6000602081905290815260409020805460018201546003830154600160a060020a0390921692909160029091019060ff1684565b610c2c611621565b6003805480602002602001604051908101604052809291908181526020018280548015610c8257602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610c64575b505050505090505b90565b610c95611621565b610c9d611621565b600080600554604051805910610cb05750595b908082528060200260200182016040525b50925060009150600090505b600554811015610d4857858015610cf6575060008181526020819052604090206003015460ff16155b80610d1a5750848015610d1a575060008181526020819052604090206003015460ff165b5b15610d3f5780838381518110610d2d57fe5b60209081029091010152600191909101905b5b600101610ccd565b878703604051805910610d585750595b908082528060200260200182016040525b5093508790505b86811015610daf57828181518110610d8457fe5b906020019060200201518489830381518110610d9c57fe5b602090810290910101525b600101610d70565b5b505050949350505050565b610dc3611621565b610dcb611621565b6003546000908190604051805910610de05750595b908082528060200260200182016040525b50925060009150600090505b600354811015610ec35760008581526001602052604081206003805491929184908110610e2657fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000205460ff1615610eba576003805482908110610e6f57fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316838381518110610e9b57fe5b600160a060020a03909216602092830290910190910152600191909101905b5b600101610dfd565b81604051805910610ed15750595b908082528060200260200182016040525b509350600090505b81811015610f3457828181518110610efe57fe5b90602001906020020151848281518110610f1457fe5b600160a060020a039092166020928302909101909101525b600101610eea565b5b505050919050565b60055481565b30600160a060020a031633600160a060020a0316141515610f6357600080fd5b6003548160328211801590610f785750818111155b8015610f8357508015155b8015610f8e57508115155b1515610f9957600080fd5b60048390557fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a8360405190815260200160405180910390a15b5b50505b50565b33600160a060020a03811660009081526002602052604090205460ff16151561100157600080fd5b6000828152602081905260409020548290600160a060020a0316151561102657600080fd5b600083815260016020908152604080832033600160a060020a038116855292529091205484919060ff161561105a57600080fd5b6000858152600160208181526040808420600160a060020a033316808652925292839020805460ff191690921790915586917f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef905160405180910390a36108f2856112b7565b5b5b50505b505b5050565b60006110d88484846114a6565b90506110e381610fd9565b5b9392505050565b603281565b60045481565b600030600160a060020a031633600160a060020a031614151561111857600080fd5b600160a060020a038316600090815260026020526040902054839060ff16151561114157600080fd5b600160a060020a038316600090815260026020526040902054839060ff161561116957600080fd5b600092505b6003548310156112115784600160a060020a031660038481548110151561119157fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316600160a060020a0316141561120557836003848154811015156111d057fe5b906000526020600020900160005b6101000a815481600160a060020a030219169083600160a060020a03160217905550611211565b5b60019092019161116e565b600160a060020a03808616600081815260026020526040808220805460ff199081169091559388168252908190208054909316600117909255907f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90905160405180910390a283600160a060020a03167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25b5b505b505b505050565b33600160a060020a03811660009081526002602052604081205490919060ff1615156112e257600080fd5b600083815260016020908152604080832033600160a060020a038116855292529091205484919060ff16151561131757600080fd5b600085815260208190526040902060030154859060ff161561133857600080fd5b61134186610add565b15611499576000868152602081815260409182902060038101805460ff1916600190811790915581548183015460028085018054959c5061142897600160a060020a039094169692956000199581161561010002959095019094160492918391601f83018190048102019051908101604052809291908181526020018280546001816001161561010002031660029004801561141e5780601f106113f35761010080835404028352916020019161141e565b820191906000526020600020905b81548152906001019060200180831161140157829003601f168201915b50505050506115a5565b1561145f57857f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7560405160405180910390a2611499565b857f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923660405160405180910390a260038501805460ff191690555b5b5b5b505b50505b505050565b600083600160a060020a03811615156114be57600080fd5b600554915060806040519081016040908152600160a060020a0387168252602080830187905281830186905260006060840181905285815290819052208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039190911617815560208201518160010155604082015181600201908051611549929160200190611645565b506060820151600391909101805460ff191691151591909117905550600580546001019055817fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5160405160405180910390a25b5b509392505050565b6000806040516020840160008287838a8c6187965a03f1925050508091505b50949350505050565b815481835581811511610813576000838152602090206108139181019083016116c4565b5b505050565b815481835581811511610813576000838152602090206108139181019083016116c4565b5b505050565b60206040519081016040526000815290565b60206040519081016040526000815290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061168657805160ff19168380011785556116b3565b828001600101855582156116b3579182015b828111156116b3578251825591602001919060010190611698565b5b506116c09291506116c4565b5090565b610c8a91905b808211156116c057600081556001016116ca565b5090565b905600a165627a7a72305820bb50b57380a5c91951c410be1c0fee3232edd0869fa5ab4ee3c3ba194125ece60029
[codex:449478]
[codex:449478] thinking
[codex:449478] **Preparing exploit analysis report**
[codex:449478] codex
[codex:449478] {"no_findings":true,"summary":"Reviewed runtime bytecode in BYTECODE_BUNDLE.txt; could not identify a concrete, exploitable value-extraction path from bytecode alone (no clearly controllable CALL/DELEGATECALL targets, value-transfer bypass, selfdestruct beneficiary control, or unprotected upgrade slot patterns were evident).","findings":[]}
[codex:449478] tokens used
[codex:449478] 6,946
[codex:449478] {"no_findings":true,"summary":"Reviewed runtime bytecode in BYTECODE_BUNDLE.txt; could not identify a concrete, exploitable value-extraction path from bytecode alone (no clearly controllable CALL/DELEGATECALL targets, value-transfer bypass, selfdestruct beneficiary control, or unprotected upgrade slot patterns were evident).","findings":[]}
{
"codex": {
"ran_at": "2026-01-01T17:00:07.232201+00:00",
"returncode": 0
},
"summary": "Reviewed runtime bytecode in BYTECODE_BUNDLE.txt; could not identify a concrete, exploitable value-extraction path from bytecode alone (no clearly controllable CALL/DELEGATECALL targets, value-transfer bypass, selfdestruct beneficiary control, or unprotected upgrade slot patterns were evident).",
"raw_final": {
"summary": "Reviewed runtime bytecode in BYTECODE_BUNDLE.txt; could not identify a concrete, exploitable value-extraction path from bytecode alone (no clearly controllable CALL/DELEGATECALL targets, value-transfer bypass, selfdestruct beneficiary control, or unprotected upgrade slot patterns were evident).",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x011a 0000000a: JUMPI 0000000b: PUSH4 0xffffffff 00000010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 0000002e: PUSH1 0x00 00000030: CALLDATALOAD 00000031: DIV 00000032: AND 00000033: PUSH4 0x025e7c27 00000038: DUP2 00000039: EQ 0000003a: PUSH2 0x0165 0000003d: JUMPI 0000003e: DUP1 0000003f: PUSH4 0x173825d9 00000044: EQ 00000045: PUSH2 0x0197 00000048: JUMPI 00000049: DUP1 0000004a: PUSH4 0x20ea8d86 0000004f: EQ 00000050: PUSH2 0x01b8 00000053: JUMPI 00000054: DUP1 00000055: PUSH4 0x2f54bf6e 0000005a: EQ 0000005b: PUSH2 0x01d0 0000005e: JUMPI 0000005f: DUP1 00000060: PUSH4 0x3411c81c 00000065: EQ 00000066: PUSH2 0x0203 00000069: JUMPI 0000006a: DUP1 0000006b: PUSH4 0x54741525 00000070: EQ 00000071: PUSH2 0x0239 00000074: JUMPI 00000075: DUP1 00000076: PUSH4 0x7065cb48 0000007b: EQ 0000007c: PUSH2 0x0268 0000007f: JUMPI 00000080: DUP1 00000081: PUSH4 0x784547a7 00000086: EQ 00000087: PUSH2 0x0289 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0x8b51d13f 00000091: EQ 00000092: PUSH2 0x02b3 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0x9ace38c2 0000009c: EQ 0000009d: PUSH2 0x02db 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0xa0e67e2b 000000a7: EQ 000000a8: PUSH2 0x039a 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0xa8abe69a 000000b2: EQ 000000b3: PUSH2 0x0401 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0xb5dc40c3 000000bd: EQ 000000be: PUSH2 0x0478 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0xb77bf600 000000c8: EQ 000000c9: PUSH2 0x04e2 000000cc: JUMPI 000000cd: DUP1 000000ce: PUSH4 0xba51a6df 000000d3: EQ 000000d4: PUSH2 0x0507 000000d7: JUMPI 000000d8: DUP1 000000d9: PUSH4 0xc01a8c84 000000de: EQ 000000df: PUSH2 0x051f 000000e2: JUMPI 000000e3: DUP1 000000e4: PUSH4 0xc6427474 000000e9: EQ 000000ea: PUSH2 0x0537 000000ed: JUMPI 000000ee: DUP1 000000ef: PUSH4 0xd74f8edd 000000f4: EQ 000000f5: PUSH2 0x05ae 000000f8: JUMPI 000000f9: DUP1 000000fa: PUSH4 0xdc8452cd 000000ff: EQ 00000100: PUSH2 0x05d3 00000103: JUMPI 00000104: DUP1 00000105: PUSH4 0xe20056e6 0000010a: EQ 0000010b: PUSH2 0x05f8 0000010e: JUMPI 0000010f: DUP1 00000110: PUSH4 0xee22610b 00000115: EQ 00000116: PUSH2 0x061f 00000119: JUMPI 0000011a: JUMPDEST 0000011b: JUMPDEST 0000011c: PUSH1 0x00 0000011e: CALLVALUE 0000011f: GT 00000120: ISZERO 00000121: PUSH2 0x0162 00000124: JUMPI 00000125: CALLER 00000126: PUSH1 0x01 00000128: PUSH1 0xa0 0000012a: PUSH1 0x02 0000012c: EXP 0000012d: SUB 0000012e: AND 0000012f: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c 00000150: CALLVALUE 00000151: PUSH1 0x40 00000153: MLOAD 00000154: SWAP1 00000155: DUP2 00000156: MSTORE 00000157: PUSH1 0x20 00000159: ADD 0000015a: PUSH1 0x40 0000015c: MLOAD 0000015d: DUP1 0000015e: SWAP2 0000015f: SUB 00000160: SWAP1 00000161: LOG2 00000162: JUMPDEST 00000163: JUMPDEST 00000164: STOP 00000165: JUMPDEST 00000166: CALLVALUE 00000167: ISZERO 00000168: PUSH2 0x0170 0000016b: JUMPI 0000016c: PUSH1 0x00 0000016e: DUP1 0000016f: REVERT 00000170: JUMPDEST 00000171: PUSH2 0x017b 00000174: PUSH1 0x04 00000176: CALLDATALOAD 00000177: PUSH2 0x0637 0000017a: JUMP 0000017b: JUMPDEST 0000017c: PUSH1 0x40 0000017e: MLOAD 0000017f: PUSH1 0x01 00000181: PUSH1 0xa0 00000183: PUSH1 0x02 00000185: EXP 00000186: SUB 00000187: SWAP1 00000188: SWAP2 00000189: AND 0000018a: DUP2 0000018b: MSTORE 0000018c: PUSH1 0x20 0000018e: ADD 0000018f: PUSH1 0x40 00000191: MLOAD 00000192: DUP1 00000193: SWAP2 00000194: SUB 00000195: SWAP1 00000196: RETURN 00000197: JUMPDEST 00000198: CALLVALUE 00000199: ISZERO 0000019a: PUSH2 0x01a2 0000019d: JUMPI 0000019e: PUSH1 0x00 000001a0: DUP1 000001a1: REVERT 000001a2: JUMPDEST 000001a3: PUSH2 0x0162 000001a6: PUSH1 0x01 000001a8: PUSH1 0xa0 000001aa: PUSH1 0x02 000001ac: EXP 000001ad: SUB 000001ae: PUSH1 0x04 000001b0: CALLDATALOAD 000001b1: AND 000001b2: PUSH2 0x0669 000001b5: JUMP 000001b6: JUMPDEST 000001b7: STOP 000001b8: JUMPDEST 000001b9: CALLVALUE 000001ba: ISZERO 000001bb: PUSH2 0x01c3 000001be: JUMPI 000001bf: PUSH1 0x00 000001c1: DUP1 000001c2: REVERT 000001c3: JUMPDEST 000001c4: PUSH2 0x0162 000001c7: PUSH1 0x04 000001c9: CALLDATALOAD 000001ca: PUSH2 0x081a 000001cd: JUMP 000001ce: JUMPDEST 000001cf: STOP 000001d0: JUMPDEST 000001d1: CALLVALUE 000001d2: ISZERO 000001d3: PUSH2 0x01db 000001d6: JUMPI 000001d7: PUSH1 0x00 000001d9: DUP1 000001da: REVERT 000001db: JUMPDEST 000001dc: PUSH2 0x01ef 000001df: PUSH1 0x01 000001e1: PUSH1 0xa0 000001e3: PUSH1 0x02 000001e5: EXP 000001e6: SUB 000001e7: PUSH1 0x04 000001e9: CALLDATALOAD 000001ea: AND 000001eb: PUSH2 0x08fc 000001ee: JUMP 000001ef: JUMPDEST 000001f0: PUSH1 0x40 000001f2: MLOAD 000001f3: SWAP1 000001f4: ISZERO 000001f5: ISZERO 000001f6: DUP2 000001f7: MSTORE 000001f8: PUSH1 0x20 000001fa: ADD 000001fb: PUSH1 0x40 000001fd: MLOAD 000001fe: DUP1 000001ff: SWAP2 00000200: SUB 00000201: SWAP1 00000202: RETURN 00000203: JUMPDEST 00000204: CALLVALUE 00000205: ISZERO 00000206: PUSH2 0x020e 00000209: JUMPI 0000020a: PUSH1 0x00 0000020c: DUP1 0000020d: REVERT 0000020e: JUMPDEST 0000020f: PUSH2 0x01ef 00000212: PUSH1 0x04 00000214: CALLDATALOAD 00000215: PUSH1 0x01 00000217: PUSH1 0xa0 00000219: PUSH1 0x02 0000021b: EXP 0000021c: SUB 0000021d: PUSH1 0x24 0000021f: CALLDATALOAD 00000220: AND 00000221: PUSH2 0x0911 00000224: JUMP 00000225: JUMPDEST 00000226: PUSH1 0x40 00000228: MLOAD 00000229: SWAP1 0000022a: ISZERO 0000022b: ISZERO 0000022c: DUP2 0000022d: MSTORE 0000022e: PUSH1 0x20 00000230: ADD 00000231: PUSH1 0x40 00000233: MLOAD 00000234: DUP1 00000235: SWAP2 00000236: SUB 00000237: SWAP1 00000238: RETURN 00000239: JUMPDEST 0000023a: CALLVALUE 0000023b: ISZERO 0000023c: PUSH2 0x0244 0000023f: JUMPI 00000240: PUSH1 0x00 00000242: DUP1 00000243: REVERT 00000244: JUMPDEST 00000245: PUSH2 0x0256 00000248: PUSH1 0x04 0000024a: CALLDATALOAD 0000024b: ISZERO 0000024c: ISZERO 0000024d: PUSH1 0x24 0000024f: CALLDATALOAD 00000250: ISZERO 00000251: ISZERO 00000252: PUSH2 0x0931 00000255: JUMP 00000256: JUMPDEST 00000257: PUSH1 0x40 00000259: MLOAD 0000025a: SWAP1 0000025b: DUP2 0000025c: MSTORE 0000025d: PUSH1 0x20 0000025f: ADD 00000260: PUSH1 0x40 00000262: MLOAD 00000263: DUP1 00000264: SWAP2 00000265: SUB 00000266: SWAP1 00000267: RETURN 00000268: JUMPDEST 00000269: CALLVALUE 0000026a: ISZERO 0000026b: PUSH2 0x0273 0000026e: JUMPI 0000026f: PUSH1 0x00 00000271: DUP1 00000272: REVERT 00000273: JUMPDEST 00000274: PUSH2 0x0162 00000277: PUSH1 0x01 00000279: PUSH1 0xa0 0000027b: PUSH1 0x02 0000027d: EXP 0000027e: SUB 0000027f: PUSH1 0x04 00000281: CALLDATALOAD 00000282: AND 00000283: PUSH2 0x09a0 00000286: JUMP 00000287: JUMPDEST 00000288: STOP 00000289: JUMPDEST 0000028a: CALLVALUE 0000028b: ISZERO 0000028c: PUSH2 0x0294 0000028f: JUMPI 00000290: PUSH1 0x00 00000292: DUP1 00000293: REVERT 00000294: JUMPDEST 00000295: PUSH2 0x01ef 00000298: PUSH1 0x04 0000029a: CALLDATALOAD 0000029b: PUSH2 0x0add 0000029e: JUMP 0000029f: JUMPDEST 000002a0: PUSH1 0x40 000002a2: MLOAD 000002a3: SWAP1 000002a4: ISZERO 000002a5: ISZERO 000002a6: DUP2 000002a7: MSTORE 000002a8: PUSH1 0x20 000002aa: ADD 000002ab: PUSH1 0x40 000002ad: MLOAD 000002ae: DUP1 000002af: SWAP2 000002b0: SUB 000002b1: SWAP1 000002b2: RETURN 000002b3: JUMPDEST 000002b4: CALLVALUE 000002b5: ISZERO 000002b6: PUSH2 0x02be 000002b9: JUMPI 000002ba: PUSH1 0x00 000002bc: DUP1 000002bd: REVERT 000002be: JUMPDEST 000002bf: PUSH2 0x0256 000002c2: PUSH1 0x04 000002c4: CALLDATALOAD 000002c5: PUSH2 0x0b71 000002c8: JUMP 000002c9: JUMPDEST 000002ca: PUSH1 0x40 000002cc: MLOAD 000002cd: SWAP1 000002ce: DUP2 000002cf: MSTORE 000002d0: PUSH1 0x20 000002d2: ADD 000002d3: PUSH1 0x40 000002d5: MLOAD 000002d6: DUP1 000002d7: SWAP2 000002d8: SUB 000002d9: SWAP1 000002da: RETURN 000002db: JUMPDEST 000002dc: CALLVALUE 000002dd: ISZERO 000002de: PUSH2 0x02e6 000002e1: JUMPI 000002e2: PUSH1 0x00 000002e4: DUP1 000002e5: REVERT 000002e6: JUMPDEST 000002e7: PUSH2 0x02f1 000002ea: PUSH1 0x04 000002ec: CALLDATALOAD 000002ed: PUSH2 0x0bf0 000002f0: JUMP 000002f1: JUMPDEST 000002f2: PUSH1 0x40 000002f4: MLOAD 000002f5: PUSH1 0x01 000002f7: PUSH1 0xa0 000002f9: PUSH1 0x02 000002fb: EXP 000002fc: SUB 000002fd: DUP6 000002fe: AND 000002ff: DUP2 00000300: MSTORE 00000301: PUSH1 0x20 00000303: DUP2 00000304: ADD 00000305: DUP5 00000306: SWAP1 00000307: MSTORE 00000308: DUP2 00000309: ISZERO 0000030a: ISZERO 0000030b: PUSH1 0x60 0000030d: DUP3 0000030e: ADD 0000030f: MSTORE 00000310: PUSH1 0x80 00000312: PUSH1 0x40 00000314: DUP3 00000315: ADD 00000316: DUP2 00000317: DUP2 00000318: MSTORE 00000319: DUP5 0000031a: SLOAD 0000031b: PUSH1 0x02 0000031d: PUSH1 0x00 0000031f: NOT 00000320: PUSH2 0x0100 00000323: PUSH1 0x01 00000325: DUP5 00000326: AND 00000327: ISZERO 00000328: MUL 00000329: ADD 0000032a: SWAP1 0000032b: SWAP2 0000032c: AND 0000032d: DIV 0000032e: SWAP2 0000032f: DUP4 00000330: ADD 00000331: DUP3 00000332: SWAP1 00000333: MSTORE 00000334: SWAP1 00000335: PUSH1 0xa0 00000337: DUP4 00000338: ADD 00000339: SWAP1 0000033a: DUP6 0000033b: SWAP1 0000033c: DUP1 0000033d: ISZERO 0000033e: PUSH2 0x0388 00000341: JUMPI 00000342: DUP1 00000343: PUSH1 0x1f 00000345: LT 00000346: PUSH2 0x035d 00000349: JUMPI 0000034a: PUSH2 0x0100 0000034d: DUP1 0000034e: DUP4 0000034f: SLOAD 00000350: DIV 00000351: MUL 00000352: DUP4 00000353: MSTORE 00000354: SWAP2 00000355: PUSH1 0x20 00000357: ADD 00000358: SWAP2 00000359: PUSH2 0x0388 0000035c: JUMP 0000035d: JUMPDEST 0000035e: DUP3 0000035f: ADD 00000360: SWAP2 00000361: SWAP1 00000362: PUSH1 0x00 00000364: MSTORE 00000365: PUSH1 0x20 00000367: PUSH1 0x00 00000369: KECCAK256 0000036a: SWAP1 0000036b: JUMPDEST 0000036c: DUP2 0000036d: SLOAD 0000036e: DUP2 0000036f: MSTORE 00000370: SWAP1 00000371: PUSH1 0x01 00000373: ADD 00000374: SWAP1 00000375: PUSH1 0x20 00000377: ADD 00000378: DUP1 00000379: DUP4 0000037a: GT 0000037b: PUSH2 0x036b 0000037e: JUMPI 0000037f: DUP3 00000380: SWAP1 00000381: SUB 00000382: PUSH1 0x1f 00000384: AND 00000385: DUP3 00000386: ADD 00000387: SWAP2 00000388: JUMPDEST 00000389: POP 0000038a: POP 0000038b: SWAP6 0000038c: POP 0000038d: POP 0000038e: POP 0000038f: POP 00000390: POP 00000391: POP 00000392: PUSH1 0x40 00000394: MLOAD 00000395: DUP1 00000396: SWAP2 00000397: SUB 00000398: SWAP1 00000399: RETURN 0000039a: JUMPDEST 0000039b: CALLVALUE 0000039c: ISZERO 0000039d: PUSH2 0x03a5 000003a0: JUMPI 000003a1: PUSH1 0x00 000003a3: DUP1 000003a4: REVERT 000003a5: JUMPDEST 000003a6: PUSH2 0x03ad 000003a9: PUSH2 0x0c24 000003ac: JUMP 000003ad: JUMPDEST 000003ae: PUSH1 0x40 000003b0: MLOAD 000003b1: PUSH1 0x20 000003b3: DUP1 000003b4: DUP3 000003b5: MSTORE 000003b6: DUP2 000003b7: SWAP1 000003b8: DUP2 000003b9: ADD 000003ba: DUP4 000003bb: DUP2 000003bc: DUP2 000003bd: MLOAD 000003be: DUP2 000003bf: MSTORE 000003c0: PUSH1 0x20 000003c2: ADD 000003c3: SWAP2 000003c4: POP 000003c5: DUP1 000003c6: MLOAD 000003c7: SWAP1 000003c8: PUSH1 0x20 000003ca: ADD 000003cb: SWAP1 000003cc: PUSH1 0x20 000003ce: MUL 000003cf: DUP1 000003d0: DUP4 000003d1: DUP4 000003d2: PUSH1 0x00 000003d4: JUMPDEST 000003d5: DUP4 000003d6: DUP2 000003d7: LT 000003d8: ISZERO 000003d9: PUSH2 0x03ed 000003dc: JUMPI 000003dd: DUP1 000003de: DUP3 000003df: ADD 000003e0: MLOAD 000003e1: DUP2 000003e2: DUP5 000003e3: ADD 000003e4: MSTORE 000003e5: JUMPDEST 000003e6: PUSH1 0x20 000003e8: ADD 000003e9: PUSH2 0x03d4 000003ec: JUMP 000003ed: JUMPDEST 000003ee: POP 000003ef: POP 000003f0: POP 000003f1: POP 000003f2: SWAP1 000003f3: POP 000003f4: ADD 000003f5: SWAP3 000003f6: POP 000003f7: POP 000003f8: POP 000003f9: PUSH1 0x40 000003fb: MLOAD 000003fc: DUP1 000003fd: SWAP2 000003fe: SUB 000003ff: SWAP1 00000400: RETURN 00000401: JUMPDEST 00000402: CALLVALUE 00000403: ISZERO 00000404: PUSH2 0x040c 00000407: JUMPI 00000408: PUSH1 0x00 0000040a: DUP1 0000040b: REVERT 0000040c: JUMPDEST 0000040d: PUSH2 0x03ad 00000410: PUSH1 0x04 00000412: CALLDATALOAD 00000413: PUSH1 0x24 00000415: CALLDATALOAD 00000416: PUSH1 0x44 00000418: CALLDATALOAD 00000419: ISZERO 0000041a: ISZERO 0000041b: PUSH1 0x64 0000041d: CALLDATALOAD 0000041e: ISZERO 0000041f: ISZERO 00000420: PUSH2 0x0c8d 00000423: JUMP 00000424: JUMPDEST 00000425: PUSH1 0x40 00000427: MLOAD 00000428: PUSH1 0x20 0000042a: DUP1 0000042b: DUP3 0000042c: MSTORE 0000042d: DUP2 0000042e: SWAP1 0000042f: DUP2 00000430: ADD 00000431: DUP4 00000432: DUP2 00000433: DUP2 00000434: MLOAD 00000435: DUP2 00000436: MSTORE 00000437: PUSH1 0x20 00000439: ADD 0000043a: SWAP2 0000043b: POP 0000043c: DUP1 0000043d: MLOAD 0000043e: SWAP1 0000043f: PUSH1 0x20 00000441: ADD 00000442: SWAP1 00000443: PUSH1 0x20 00000445: MUL 00000446: DUP1 00000447: DUP4 00000448: DUP4 00000449: PUSH1 0x00 0000044b: JUMPDEST 0000044c: DUP4 0000044d: DUP2 0000044e: LT 0000044f: ISZERO 00000450: PUSH2 0x03ed 00000453: JUMPI 00000454: DUP1 00000455: DUP3 00000456: ADD 00000457: MLOAD 00000458: DUP2 00000459: DUP5 0000045a: ADD 0000045b: MSTORE 0000045c: JUMPDEST 0000045d: PUSH1 0x20 0000045f: ADD 00000460: PUSH2 0x03d4 00000463: JUMP 00000464: JUMPDEST 00000465: POP 00000466: POP 00000467: POP 00000468: POP 00000469: SWAP1 0000046a: POP 0000046b: ADD 0000046c: SWAP3 0000046d: POP 0000046e: POP 0000046f: POP 00000470: PUSH1 0x40 00000472: MLOAD 00000473: DUP1 00000474: SWAP2 00000475: SUB 00000476: SWAP1 00000477: RETURN 00000478: JUMPDEST 00000479: CALLVALUE 0000047a: ISZERO 0000047b: PUSH2 0x0483 0000047e: JUMPI 0000047f: PUSH1 0x00 00000481: DUP1 00000482: REVERT 00000483: JUMPDEST 00000484: PUSH2 0x03ad 00000487: PUSH1 0x04 00000489: CALLDATALOAD 0000048a: PUSH2 0x0dbb 0000048d: JUMP 0000048e: JUMPDEST 0000048f: PUSH1 0x40 00000491: MLOAD 00000492: PUSH1 0x20 00000494: DUP1 00000495: DUP3 00000496: MSTORE 00000497: DUP2 00000498: SWAP1 00000499: DUP2 0000049a: ADD 0000049b: DUP4 0000049c: DUP2 0000049d: DUP2 0000049e: MLOAD 0000049f: DUP2 000004a0: MSTORE 000004a1: PUSH1 0x20 000004a3: ADD 000004a4: SWAP2 000004a5: POP 000004a6: DUP1 000004a7: MLOAD 000004a8: SWAP1 000004a9: PUSH1 0x20 000004ab: ADD 000004ac: SWAP1 000004ad: PUSH1 0x20 000004af: MUL 000004b0: DUP1 000004b1: DUP4 000004b2: DUP4 000004b3: PUSH1 0x00 000004b5: JUMPDEST 000004b6: DUP4 000004b7: DUP2 000004b8: LT 000004b9: ISZERO 000004ba: PUSH2 0x03ed 000004bd: JUMPI 000004be: DUP1 000004bf: DUP3 000004c0: ADD 000004c1: MLOAD 000004c2: DUP2 000004c3: DUP5 000004c4: ADD 000004c5: MSTORE 000004c6: JUMPDEST 000004c7: PUSH1 0x20 000004c9: ADD 000004ca: PUSH2 0x03d4 000004cd: JUMP 000004ce: JUMPDEST 000004cf: POP 000004d0: POP 000004d1: POP 000004d2: POP 000004d3: SWAP1 000004d4: POP 000004d5: ADD 000004d6: SWAP3 000004d7: POP 000004d8: POP 000004d9: POP 000004da: PUSH1 0x40 000004dc: MLOAD 000004dd: DUP1 000004de: SWAP2 000004df: SUB 000004e0: SWAP1 000004e1: RETURN 000004e2: JUMPDEST 000004e3: CALLVALUE 000004e4: ISZERO 000004e5: PUSH2 0x04ed 000004e8: JUMPI 000004e9: PUSH1 0x00 000004eb: DUP1 000004ec: REVERT 000004ed: JUMPDEST 000004ee: PUSH2 0x0256 000004f1: PUSH2 0x0f3d 000004f4: JUMP 000004f5: JUMPDEST 000004f6: PUSH1 0x40 000004f8: MLOAD 000004f9: SWAP1 000004fa: DUP2 000004fb: MSTORE 000004fc: PUSH1 0x20 000004fe: ADD 000004ff: PUSH1 0x40 00000501: MLOAD 00000502: DUP1 00000503: SWAP2 00000504: SUB 00000505: SWAP1 00000506: RETURN 00000507: JUMPDEST 00000508: CALLVALUE 00000509: ISZERO 0000050a: PUSH2 0x0512 0000050d: JUMPI 0000050e: PUSH1 0x00 00000510: DUP1 00000511: REVERT 00000512: JUMPDEST 00000513: PUSH2 0x0162 00000516: PUSH1 0x04 00000518: CALLDATALOAD 00000519: PUSH2 0x0f43 0000051c: JUMP 0000051d: JUMPDEST 0000051e: STOP 0000051f: JUMPDEST 00000520: CALLVALUE 00000521: ISZERO 00000522: PUSH2 0x052a 00000525: JUMPI 00000526: PUSH1 0x00 00000528: DUP1 00000529: REVERT 0000052a: JUMPDEST 0000052b: PUSH2 0x0162 0000052e: PUSH1 0x04 00000530: CALLDATALOAD 00000531: PUSH2 0x0fd9 00000534: JUMP 00000535: JUMPDEST 00000536: STOP 00000537: JUMPDEST 00000538: CALLVALUE 00000539: ISZERO 0000053a: PUSH2 0x0542 0000053d: JUMPI 0000053e: PUSH1 0x00 00000540: DUP1 00000541: REVERT 00000542: JUMPDEST 00000543: PUSH2 0x0256 00000546: PUSH1 0x04 00000548: DUP1 00000549: CALLDATALOAD 0000054a: PUSH1 0x01 0000054c: PUSH1 0xa0 0000054e: PUSH1 0x02 00000550: EXP 00000551: SUB 00000552: AND 00000553: SWAP1 00000554: PUSH1 0x24 00000556: DUP1 00000557: CALLDATALOAD 00000558: SWAP2 00000559: SWAP1 0000055a: PUSH1 0x64 0000055c: SWAP1 0000055d: PUSH1 0x44 0000055f: CALLDATALOAD 00000560: SWAP1 00000561: DUP2 00000562: ADD 00000563: SWAP1 00000564: DUP4 00000565: ADD 00000566: CALLDATALOAD 00000567: DUP1 00000568: PUSH1 0x20 0000056a: PUSH1 0x1f 0000056c: DUP3 0000056d: ADD 0000056e: DUP2 0000056f: SWAP1 00000570: DIV 00000571: DUP2 00000572: MUL 00000573: ADD 00000574: PUSH1 0x40 00000576: MLOAD 00000577: SWAP1 00000578: DUP2 00000579: ADD 0000057a: PUSH1 0x40 0000057c: MSTORE 0000057d: DUP2 0000057e: DUP2 0000057f: MSTORE 00000580: SWAP3 00000581: SWAP2 00000582: SWAP1 00000583: PUSH1 0x20 00000585: DUP5 00000586: ADD 00000587: DUP4 00000588: DUP4 00000589: DUP1 0000058a: DUP3 0000058b: DUP5 0000058c: CALLDATACOPY 0000058d: POP 0000058e: SWAP5 0000058f: SWAP7 00000590: POP 00000591: PUSH2 0x10cb 00000594: SWAP6 00000595: POP 00000596: POP 00000597: POP 00000598: POP 00000599: POP 0000059a: POP 0000059b: JUMP 0000059c: JUMPDEST 0000059d: PUSH1 0x40 0000059f: MLOAD 000005a0: SWAP1 000005a1: DUP2 000005a2: MSTORE 000005a3: PUSH1 0x20 000005a5: ADD 000005a6: PUSH1 0x40 000005a8: MLOAD 000005a9: DUP1 000005aa: SWAP2 000005ab: SUB 000005ac: SWAP1 000005ad: RETURN 000005ae: JUMPDEST 000005af: CALLVALUE 000005b0: ISZERO 000005b1: PUSH2 0x05b9 000005b4: JUMPI 000005b5: PUSH1 0x00 000005b7: DUP1 000005b8: REVERT 000005b9: JUMPDEST 000005ba: PUSH2 0x0256 000005bd: PUSH2 0x10eb 000005c0: JUMP 000005c1: JUMPDEST 000005c2: PUSH1 0x40 000005c4: MLOAD 000005c5: SWAP1 000005c6: DUP2 000005c7: MSTORE 000005c8: PUSH1 0x20 000005ca: ADD 000005cb: PUSH1 0x40 000005cd: MLOAD 000005ce: DUP1 000005cf: SWAP2 000005d0: SUB 000005d1: SWAP1 000005d2: RETURN 000005d3: JUMPDEST 000005d4: CALLVALUE 000005d5: ISZERO 000005d6: PUSH2 0x05de 000005d9: JUMPI 000005da: PUSH1 0x00 000005dc: DUP1 000005dd: REVERT 000005de: JUMPDEST 000005df: PUSH2 0x0256 000005e2: PUSH2 0x10f0 000005e5: JUMP 000005e6: JUMPDEST 000005e7: PUSH1 0x40 000005e9: MLOAD 000005ea: SWAP1 000005eb: DUP2 000005ec: MSTORE 000005ed: PUSH1 0x20 000005ef: ADD 000005f0: PUSH1 0x40 000005f2: MLOAD 000005f3: DUP1 000005f4: SWAP2 000005f5: SUB 000005f6: SWAP1 000005f7: RETURN 000005f8: JUMPDEST 000005f9: CALLVALUE 000005fa: ISZERO 000005fb: PUSH2 0x0603 000005fe: JUMPI 000005ff: PUSH1 0x00 00000601: DUP1 00000602: REVERT 00000603: JUMPDEST 00000604: PUSH2 0x0162 00000607: PUSH1 0x01 00000609: PUSH1 0xa0 0000060b: PUSH1 0x02 0000060d: EXP 0000060e: SUB 0000060f: PUSH1 0x04 00000611: CALLDATALOAD 00000612: DUP2 00000613: AND 00000614: SWAP1 00000615: PUSH1 0x24 00000617: CALLDATALOAD 00000618: AND 00000619: PUSH2 0x10f6 0000061c: JUMP 0000061d: JUMPDEST 0000061e: STOP 0000061f: JUMPDEST 00000620: CALLVALUE 00000621: ISZERO 00000622: PUSH2 0x062a 00000625: JUMPI 00000626: PUSH1 0x00 00000628: DUP1 00000629: REVERT 0000062a: JUMPDEST 0000062b: PUSH2 0x0162 0000062e: PUSH1 0x04 00000630: CALLDATALOAD 00000631: PUSH2 0x12b7 00000634: JUMP 00000635: JUMPDEST 00000636: STOP 00000637: JUMPDEST 00000638: PUSH1 0x03 0000063a: DUP1 0000063b: SLOAD 0000063c: DUP3 0000063d: SWAP1 0000063e: DUP2 0000063f: LT 00000640: PUSH2 0x0645 00000643: JUMPI 00000644: INVALID 00000645: JUMPDEST 00000646: SWAP1 00000647: PUSH1 0x00 00000649: MSTORE 0000064a: PUSH1 0x20 0000064c: PUSH1 0x00 0000064e: KECCAK256 0000064f: SWAP1 00000650: ADD 00000651: PUSH1 0x00 00000653: JUMPDEST 00000654: SWAP2 00000655: POP 00000656: SLOAD 00000657: SWAP1 00000658: PUSH2 0x0100 0000065b: EXP 0000065c: SWAP1 0000065d: DIV 0000065e: PUSH1 0x01 00000660: PUSH1 0xa0 00000662: PUSH1 0x02 00000664: EXP 00000665: SUB 00000666: AND 00000667: DUP2 00000668: JUMP 00000669: JUMPDEST 0000066a: PUSH1 0x00 0000066c: ADDRESS 0000066d: PUSH1 0x01 0000066f: PUSH1 0xa0 00000671: PUSH1 0x02 00000673: EXP 00000674: SUB 00000675: AND 00000676: CALLER 00000677: PUSH1 0x01 00000679: PUSH1 0xa0 0000067b: PUSH1 0x02 0000067d: EXP 0000067e: SUB 0000067f: AND 00000680: EQ 00000681: ISZERO 00000682: ISZERO 00000683: PUSH2 0x068b 00000686: JUMPI 00000687: PUSH1 0x00 00000689: DUP1 0000068a: REVERT 0000068b: JUMPDEST 0000068c: PUSH1 0x01 0000068e: PUSH1 0xa0 00000690: PUSH1 0x02 00000692: EXP 00000693: SUB 00000694: DUP3 00000695: AND 00000696: PUSH1 0x00 00000698: SWAP1 00000699: DUP2 0000069a: MSTORE 0000069b: PUSH1 0x02 0000069d: PUSH1 0x20 0000069f: MSTORE 000006a0: PUSH1 0x40 000006a2: SWAP1 000006a3: KECCAK256 000006a4: SLOAD 000006a5: DUP3 000006a6: SWAP1 000006a7: PUSH1 0xff 000006a9: AND 000006aa: ISZERO 000006ab: ISZERO 000006ac: PUSH2 0x06b4 000006af: JUMPI 000006b0: PUSH1 0x00 000006b2: DUP1 000006b3: REVERT 000006b4: JUMPDEST 000006b5: PUSH1 0x01 000006b7: PUSH1 0xa0 000006b9: PUSH1 0x02 000006bb: EXP 000006bc: SUB 000006bd: DUP4 000006be: AND 000006bf: PUSH1 0x00 000006c1: SWAP1 000006c2: DUP2 000006c3: MSTORE 000006c4: PUSH1 0x02 000006c6: PUSH1 0x20 000006c8: MSTORE 000006c9: PUSH1 0x40 000006cb: DUP2 000006cc: KECCAK256 000006cd: DUP1 000006ce: SLOAD 000006cf: PUSH1 0xff 000006d1: NOT 000006d2: AND 000006d3: SWAP1 000006d4: SSTORE 000006d5: SWAP2 000006d6: POP 000006d7: JUMPDEST 000006d8: PUSH1 0x03 000006da: SLOAD 000006db: PUSH1 0x00 000006dd: NOT 000006de: ADD 000006df: DUP3 000006e0: LT 000006e1: ISZERO 000006e2: PUSH2 0x07af 000006e5: JUMPI 000006e6: DUP3 000006e7: PUSH1 0x01 000006e9: PUSH1 0xa0 000006eb: PUSH1 0x02 000006ed: EXP 000006ee: SUB 000006ef: AND 000006f0: PUSH1 0x03 000006f2: DUP4 000006f3: DUP2 000006f4: SLOAD 000006f5: DUP2 000006f6: LT 000006f7: ISZERO 000006f8: ISZERO 000006f9: PUSH2 0x06fe 000006fc: JUMPI 000006fd: INVALID 000006fe: JUMPDEST 000006ff: SWAP1 00000700: PUSH1 0x00 00000702: MSTORE 00000703: PUSH1 0x20 00000705: PUSH1 0x00 00000707: KECCAK256 00000708: SWAP1 00000709: ADD 0000070a: PUSH1 0x00 0000070c: JUMPDEST 0000070d: SWAP1 0000070e: SLOAD 0000070f: SWAP1 00000710: PUSH2 0x0100 00000713: EXP 00000714: SWAP1 00000715: DIV 00000716: PUSH1 0x01 00000718: PUSH1 0xa0 0000071a: PUSH1 0x02 0000071c: EXP 0000071d: SUB 0000071e: AND 0000071f: PUSH1 0x01 00000721: PUSH1 0xa0 00000723: PUSH1 0x02 00000725: EXP 00000726: SUB 00000727: AND 00000728: EQ 00000729: ISZERO 0000072a: PUSH2 0x07a3 0000072d: JUMPI 0000072e: PUSH1 0x03 00000730: DUP1 00000731: SLOAD 00000732: PUSH1 0x00 00000734: NOT 00000735: DUP2 00000736: ADD 00000737: SWAP1 00000738: DUP2 00000739: LT 0000073a: PUSH2 0x073f 0000073d: JUMPI 0000073e: INVALID 0000073f: JUMPDEST 00000740: SWAP1 00000741: PUSH1 0x00 00000743: MSTORE 00000744: PUSH1 0x20 00000746: PUSH1 0x00 00000748: KECCAK256 00000749: SWAP1 0000074a: ADD 0000074b: PUSH1 0x00 0000074d: JUMPDEST 0000074e: SWAP1 0000074f: SLOAD 00000750: SWAP1 00000751: PUSH2 0x0100 00000754: EXP 00000755: SWAP1 00000756: DIV 00000757: PUSH1 0x01 00000759: PUSH1 0xa0 0000075b: PUSH1 0x02 0000075d: EXP 0000075e: SUB 0000075f: AND 00000760: PUSH1 0x03 00000762: DUP4 00000763: DUP2 00000764: SLOAD 00000765: DUP2 00000766: LT 00000767: ISZERO 00000768: ISZERO 00000769: PUSH2 0x076e 0000076c: JUMPI 0000076d: INVALID 0000076e: JUMPDEST 0000076f: SWAP1 00000770: PUSH1 0x00 00000772: MSTORE 00000773: PUSH1 0x20 00000775: PUSH1 0x00 00000777: KECCAK256 00000778: SWAP1 00000779: ADD 0000077a: PUSH1 0x00 0000077c: JUMPDEST 0000077d: PUSH2 0x0100 00000780: EXP 00000781: DUP2 00000782: SLOAD 00000783: DUP2 00000784: PUSH1 0x01 00000786: PUSH1 0xa0 00000788: PUSH1 0x02 0000078a: EXP 0000078b: SUB 0000078c: MUL 0000078d: NOT 0000078e: AND 0000078f: SWAP1 00000790: DUP4 00000791: PUSH1 0x01 00000793: PUSH1 0xa0 00000795: PUSH1 0x02 00000797: EXP 00000798: SUB 00000799: AND 0000079a: MUL 0000079b: OR 0000079c: SWAP1 0000079d: SSTORE 0000079e: POP 0000079f: PUSH2 0x07af 000007a2: JUMP 000007a3: JUMPDEST 000007a4: JUMPDEST 000007a5: PUSH1 0x01 000007a7: SWAP1 000007a8: SWAP2 000007a9: ADD 000007aa: SWAP1 000007ab: PUSH2 0x06d7 000007ae: JUMP 000007af: JUMPDEST 000007b0: PUSH1 0x03 000007b2: DUP1 000007b3: SLOAD 000007b4: PUSH1 0x00 000007b6: NOT 000007b7: ADD 000007b8: SWAP1 000007b9: PUSH2 0x07c2 000007bc: SWAP1 000007bd: DUP3 000007be: PUSH2 0x15cd 000007c1: JUMP 000007c2: JUMPDEST 000007c3: POP 000007c4: PUSH1 0x03 000007c6: SLOAD 000007c7: PUSH1 0x04 000007c9: SLOAD 000007ca: GT 000007cb: ISZERO 000007cc: PUSH2 0x07db 000007cf: JUMPI 000007d0: PUSH1 0x03 000007d2: SLOAD 000007d3: PUSH2 0x07db 000007d6: SWAP1 000007d7: PUSH2 0x0f43 000007da: JUMP 000007db: JUMPDEST 000007dc: JUMPDEST 000007dd: DUP3 000007de: PUSH1 0x01 000007e0: PUSH1 0xa0 000007e2: PUSH1 0x02 000007e4: EXP 000007e5: SUB 000007e6: AND 000007e7: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90 00000808: PUSH1 0x40 0000080a: MLOAD 0000080b: PUSH1 0x40 0000080d: MLOAD 0000080e: DUP1 0000080f: SWAP2 00000810: SUB 00000811: SWAP1 00000812: LOG2 00000813: JUMPDEST 00000814: JUMPDEST 00000815: POP 00000816: JUMPDEST 00000817: POP 00000818: POP 00000819: JUMP 0000081a: JUMPDEST 0000081b: CALLER 0000081c: PUSH1 0x01 0000081e: PUSH1 0xa0 00000820: PUSH1 0x02 00000822: EXP 00000823: SUB 00000824: DUP2 00000825: AND 00000826: PUSH1 0x00 00000828: SWAP1 00000829: DUP2 0000082a: MSTORE 0000082b: PUSH1 0x02 0000082d: PUSH1 0x20 0000082f: MSTORE 00000830: PUSH1 0x40 00000832: SWAP1 00000833: KECCAK256 00000834: SLOAD 00000835: PUSH1 0xff 00000837: AND 00000838: ISZERO 00000839: ISZERO 0000083a: PUSH2 0x0842 0000083d: JUMPI 0000083e: PUSH1 0x00 00000840: DUP1 00000841: REVERT 00000842: JUMPDEST 00000843: PUSH1 0x00 00000845: DUP3 00000846: DUP2 00000847: MSTORE 00000848: PUSH1 0x01 0000084a: PUSH1 0x20 0000084c: SWAP1 0000084d: DUP2 0000084e: MSTORE 0000084f: PUSH1 0x40 00000851: DUP1 00000852: DUP4 00000853: KECCAK256 00000854: CALLER 00000855: PUSH1 0x01 00000857: PUSH1 0xa0 00000859: PUSH1 0x02 0000085b: EXP 0000085c: SUB 0000085d: DUP2 0000085e: AND 0000085f: DUP6 00000860: MSTORE 00000861: SWAP3 00000862: MSTORE 00000863: SWAP1 00000864: SWAP2 00000865: KECCAK256 00000866: SLOAD 00000867: DUP4 00000868: SWAP2 00000869: SWAP1 0000086a: PUSH1 0xff 0000086c: AND 0000086d: ISZERO 0000086e: ISZERO 0000086f: PUSH2 0x0877 00000872: JUMPI 00000873: PUSH1 0x00 00000875: DUP1 00000876: REVERT 00000877: JUMPDEST 00000878: PUSH1 0x00 0000087a: DUP5 0000087b: DUP2 0000087c: MSTORE 0000087d: PUSH1 0x20 0000087f: DUP2 00000880: SWAP1 00000881: MSTORE 00000882: PUSH1 0x40 00000884: SWAP1 00000885: KECCAK256 00000886: PUSH1 0x03 00000888: ADD 00000889: SLOAD 0000088a: DUP5 0000088b: SWAP1 0000088c: PUSH1 0xff 0000088e: AND 0000088f: ISZERO 00000890: PUSH2 0x0898 00000893: JUMPI 00000894: PUSH1 0x00 00000896: DUP1 00000897: REVERT 00000898: JUMPDEST 00000899: PUSH1 0x00 0000089b: DUP6 0000089c: DUP2 0000089d: MSTORE 0000089e: PUSH1 0x01 000008a0: PUSH1 0x20 000008a2: SWAP1 000008a3: DUP2 000008a4: MSTORE 000008a5: PUSH1 0x40 000008a7: DUP1 000008a8: DUP4 000008a9: KECCAK256 000008aa: PUSH1 0x01 000008ac: PUSH1 0xa0 000008ae: PUSH1 0x02 000008b0: EXP 000008b1: SUB 000008b2: CALLER 000008b3: AND 000008b4: DUP1 000008b5: DUP6 000008b6: MSTORE 000008b7: SWAP3 000008b8: MSTORE 000008b9: SWAP2 000008ba: DUP3 000008bb: SWAP1 000008bc: KECCAK256 000008bd: DUP1 000008be: SLOAD 000008bf: PUSH1 0xff 000008c1: NOT 000008c2: AND 000008c3: SWAP1 000008c4: SSTORE 000008c5: DUP7 000008c6: SWAP2 000008c7: PUSH32 0xf6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e9 000008e8: SWAP1 000008e9: MLOAD 000008ea: PUSH1 0x40 000008ec: MLOAD 000008ed: DUP1 000008ee: SWAP2 000008ef: SUB 000008f0: SWAP1 000008f1: LOG3 000008f2: JUMPDEST 000008f3: JUMPDEST 000008f4: POP 000008f5: JUMPDEST 000008f6: POP 000008f7: POP 000008f8: JUMPDEST 000008f9: POP 000008fa: POP 000008fb: JUMP 000008fc: JUMPDEST 000008fd: PUSH1 0x02 000008ff: PUSH1 0x20 00000901: MSTORE 00000902: PUSH1 0x00 00000904: SWAP1 00000905: DUP2 00000906: MSTORE 00000907: PUSH1 0x40 00000909: SWAP1 0000090a: KECCAK256 0000090b: SLOAD 0000090c: PUSH1 0xff 0000090e: AND 0000090f: DUP2 00000910: JUMP 00000911: JUMPDEST 00000912: PUSH1 0x01 00000914: PUSH1 0x20 00000916: SWAP1 00000917: DUP2 00000918: MSTORE 00000919: PUSH1 0x00 0000091b: SWAP3 0000091c: DUP4 0000091d: MSTORE 0000091e: PUSH1 0x40 00000920: DUP1 00000921: DUP5 00000922: KECCAK256 00000923: SWAP1 00000924: SWAP2 00000925: MSTORE 00000926: SWAP1 00000927: DUP3 00000928: MSTORE 00000929: SWAP1 0000092a: KECCAK256 0000092b: SLOAD 0000092c: PUSH1 0xff 0000092e: AND 0000092f: DUP2 00000930: JUMP 00000931: JUMPDEST 00000932: PUSH1 0x00 00000934: DUP1 00000935: JUMPDEST 00000936: PUSH1 0x05 00000938: SLOAD 00000939: DUP2 0000093a: LT 0000093b: ISZERO 0000093c: PUSH2 0x0998 0000093f: JUMPI 00000940: DUP4 00000941: DUP1 00000942: ISZERO 00000943: PUSH2 0x095e 00000946: JUMPI 00000947: POP 00000948: PUSH1 0x00 0000094a: DUP2 0000094b: DUP2 0000094c: MSTORE 0000094d: PUSH1 0x20 0000094f: DUP2 00000950: SWAP1 00000951: MSTORE 00000952: PUSH1 0x40 00000954: SWAP1 00000955: KECCAK256 00000956: PUSH1 0x03 00000958: ADD 00000959: SLOAD 0000095a: PUSH1 0xff 0000095c: AND 0000095d: ISZERO 0000095e: JUMPDEST 0000095f: DUP1 00000960: PUSH2 0x0982 00000963: JUMPI 00000964: POP 00000965: DUP3 00000966: DUP1 00000967: ISZERO 00000968: PUSH2 0x0982 0000096b: JUMPI 0000096c: POP 0000096d: PUSH1 0x00 0000096f: DUP2 00000970: DUP2 00000971: MSTORE 00000972: PUSH1 0x20 00000974: DUP2 00000975: SWAP1 00000976: MSTORE 00000977: PUSH1 0x40 00000979: SWAP1 0000097a: KECCAK256 0000097b: PUSH1 0x03 0000097d: ADD 0000097e: SLOAD 0000097f: PUSH1 0xff 00000981: AND 00000982: JUMPDEST 00000983: JUMPDEST 00000984: ISZERO 00000985: PUSH2 0x098f 00000988: JUMPI 00000989: PUSH1 0x01 0000098b: DUP3 0000098c: ADD 0000098d: SWAP2 0000098e: POP 0000098f: JUMPDEST 00000990: JUMPDEST 00000991: PUSH1 0x01 00000993: ADD 00000994: PUSH2 0x0935 00000997: JUMP 00000998: JUMPDEST 00000999: JUMPDEST 0000099a: POP 0000099b: SWAP3 0000099c: SWAP2 0000099d: POP 0000099e: POP 0000099f: JUMP 000009a0: JUMPDEST 000009a1: ADDRESS 000009a2: PUSH1 0x01 000009a4: PUSH1 0xa0 000009a6: PUSH1 0x02 000009a8: EXP 000009a9: SUB 000009aa: AND 000009ab: CALLER 000009ac: PUSH1 0x01 000009ae: PUSH1 0xa0 000009b0: PUSH1 0x02 000009b2: EXP 000009b3: SUB 000009b4: AND 000009b5: EQ 000009b6: ISZERO 000009b7: ISZERO 000009b8: PUSH2 0x09c0 000009bb: JUMPI 000009bc: PUSH1 0x00 000009be: DUP1 000009bf: REVERT 000009c0: JUMPDEST 000009c1: PUSH1 0x01 000009c3: PUSH1 0xa0 000009c5: PUSH1 0x02 000009c7: EXP 000009c8: SUB 000009c9: DUP2 000009ca: AND 000009cb: PUSH1 0x00 000009cd: SWAP1 000009ce: DUP2 000009cf: MSTORE 000009d0: PUSH1 0x02 000009d2: PUSH1 0x20 000009d4: MSTORE 000009d5: PUSH1 0x40 000009d7: SWAP1 000009d8: KECCAK256 000009d9: SLOAD 000009da: DUP2 000009db: SWAP1 000009dc: PUSH1 0xff 000009de: AND 000009df: ISZERO 000009e0: PUSH2 0x09e8 000009e3: JUMPI 000009e4: PUSH1 0x00 000009e6: DUP1 000009e7: REVERT 000009e8: JUMPDEST 000009e9: DUP2 000009ea: PUSH1 0x01 000009ec: PUSH1 0xa0 000009ee: PUSH1 0x02 000009f0: EXP 000009f1: SUB 000009f2: DUP2 000009f3: AND 000009f4: ISZERO 000009f5: ISZERO 000009f6: PUSH2 0x09fe 000009f9: JUMPI 000009fa: PUSH1 0x00 000009fc: DUP1 000009fd: REVERT 000009fe: JUMPDEST 000009ff: PUSH1 0x03 00000a01: DUP1 00000a02: SLOAD 00000a03: SWAP1 00000a04: POP 00000a05: PUSH1 0x01 00000a07: ADD 00000a08: PUSH1 0x04 00000a0a: SLOAD 00000a0b: PUSH1 0x32 00000a0d: DUP3 00000a0e: GT 00000a0f: ISZERO 00000a10: DUP1 00000a11: ISZERO 00000a12: PUSH2 0x0a1b 00000a15: JUMPI 00000a16: POP 00000a17: DUP2 00000a18: DUP2 00000a19: GT 00000a1a: ISZERO 00000a1b: JUMPDEST 00000a1c: DUP1 00000a1d: ISZERO 00000a1e: PUSH2 0x0a26 00000a21: JUMPI 00000a22: POP 00000a23: DUP1 00000a24: ISZERO 00000a25: ISZERO 00000a26: JUMPDEST 00000a27: DUP1 00000a28: ISZERO 00000a29: PUSH2 0x0a31 00000a2c: JUMPI 00000a2d: POP 00000a2e: DUP2 00000a2f: ISZERO 00000a30: ISZERO 00000a31: JUMPDEST 00000a32: ISZERO 00000a33: ISZERO 00000a34: PUSH2 0x0a3c 00000a37: JUMPI 00000a38: PUSH1 0x00 00000a3a: DUP1 00000a3b: REVERT 00000a3c: JUMPDEST 00000a3d: PUSH1 0x01 00000a3f: PUSH1 0xa0 00000a41: PUSH1 0x02 00000a43: EXP 00000a44: SUB 00000a45: DUP6 00000a46: AND 00000a47: PUSH1 0x00 00000a49: SWAP1 00000a4a: DUP2 00000a4b: MSTORE 00000a4c: PUSH1 0x02 00000a4e: PUSH1 0x20 00000a50: MSTORE 00000a51: PUSH1 0x40 00000a53: SWAP1 00000a54: KECCAK256 00000a55: DUP1 00000a56: SLOAD 00000a57: PUSH1 0xff 00000a59: NOT 00000a5a: AND 00000a5b: PUSH1 0x01 00000a5d: SWAP1 00000a5e: DUP2 00000a5f: OR 00000a60: SWAP1 00000a61: SWAP2 00000a62: SSTORE 00000a63: PUSH1 0x03 00000a65: DUP1 00000a66: SLOAD 00000a67: SWAP1 00000a68: SWAP2 00000a69: DUP2 00000a6a: ADD 00000a6b: PUSH2 0x0a74 00000a6e: DUP4 00000a6f: DUP3 00000a70: PUSH2 0x15cd 00000a73: JUMP 00000a74: JUMPDEST 00000a75: SWAP2 00000a76: PUSH1 0x00 00000a78: MSTORE 00000a79: PUSH1 0x20 00000a7b: PUSH1 0x00 00000a7d: KECCAK256 00000a7e: SWAP1 00000a7f: ADD 00000a80: PUSH1 0x00 00000a82: JUMPDEST 00000a83: DUP2 00000a84: SLOAD 00000a85: PUSH1 0x01 00000a87: PUSH1 0xa0 00000a89: PUSH1 0x02 00000a8b: EXP 00000a8c: SUB 00000a8d: DUP1 00000a8e: DUP11 00000a8f: AND 00000a90: PUSH2 0x0100 00000a93: SWAP4 00000a94: SWAP1 00000a95: SWAP4 00000a96: EXP 00000a97: DUP4 00000a98: DUP2 00000a99: MUL 00000a9a: SWAP2 00000a9b: MUL 00000a9c: NOT 00000a9d: SWAP1 00000a9e: SWAP2 00000a9f: AND 00000aa0: OR 00000aa1: SWAP1 00000aa2: SWAP2 00000aa3: SSTORE 00000aa4: SWAP1 00000aa5: POP 00000aa6: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d 00000ac7: PUSH1 0x40 00000ac9: MLOAD 00000aca: PUSH1 0x40 00000acc: MLOAD 00000acd: DUP1 00000ace: SWAP2 00000acf: SUB 00000ad0: SWAP1 00000ad1: LOG2 00000ad2: JUMPDEST 00000ad3: JUMPDEST 00000ad4: POP 00000ad5: POP 00000ad6: JUMPDEST 00000ad7: POP 00000ad8: JUMPDEST 00000ad9: POP 00000ada: JUMPDEST 00000adb: POP 00000adc: JUMP 00000add: JUMPDEST 00000ade: PUSH1 0x00 00000ae0: DUP1 00000ae1: DUP1 00000ae2: JUMPDEST 00000ae3: PUSH1 0x03 00000ae5: SLOAD 00000ae6: DUP2 00000ae7: LT 00000ae8: ISZERO 00000ae9: PUSH2 0x0b69 00000aec: JUMPI 00000aed: PUSH1 0x00 00000aef: DUP5 00000af0: DUP2 00000af1: MSTORE 00000af2: PUSH1 0x01 00000af4: PUSH1 0x20 00000af6: MSTORE 00000af7: PUSH1 0x40 00000af9: DUP2 00000afa: KECCAK256 00000afb: PUSH1 0x03 00000afd: DUP1 00000afe: SLOAD 00000aff: SWAP2 00000b00: SWAP3 00000b01: SWAP2 00000b02: DUP5 00000b03: SWAP1 00000b04: DUP2 00000b05: LT 00000b06: PUSH2 0x0b0b 00000b09: JUMPI 00000b0a: INVALID 00000b0b: JUMPDEST 00000b0c: SWAP1 00000b0d: PUSH1 0x00 00000b0f: MSTORE 00000b10: PUSH1 0x20 00000b12: PUSH1 0x00 00000b14: KECCAK256 00000b15: SWAP1 00000b16: ADD 00000b17: PUSH1 0x00 00000b19: JUMPDEST 00000b1a: SWAP1 00000b1b: SLOAD 00000b1c: PUSH1 0x01 00000b1e: PUSH1 0xa0 00000b20: PUSH1 0x02 00000b22: EXP 00000b23: SUB 00000b24: PUSH2 0x0100 00000b27: SWAP3 00000b28: SWAP1 00000b29: SWAP3 00000b2a: EXP 00000b2b: SWAP1 00000b2c: DIV 00000b2d: AND 00000b2e: DUP2 00000b2f: MSTORE 00000b30: PUSH1 0x20 00000b32: DUP2 00000b33: ADD 00000b34: SWAP2 00000b35: SWAP1 00000b36: SWAP2 00000b37: MSTORE 00000b38: PUSH1 0x40 00000b3a: ADD 00000b3b: PUSH1 0x00 00000b3d: KECCAK256 00000b3e: SLOAD 00000b3f: PUSH1 0xff 00000b41: AND 00000b42: ISZERO 00000b43: PUSH2 0x0b4d 00000b46: JUMPI 00000b47: PUSH1 0x01 00000b49: DUP3 00000b4a: ADD 00000b4b: SWAP2 00000b4c: POP 00000b4d: JUMPDEST 00000b4e: PUSH1 0x04 00000b50: SLOAD 00000b51: DUP3 00000b52: EQ 00000b53: ISZERO 00000b54: PUSH2 0x0b60 00000b57: JUMPI 00000b58: PUSH1 0x01 00000b5a: SWAP3 00000b5b: POP 00000b5c: PUSH2 0x0b69 00000b5f: JUMP 00000b60: JUMPDEST 00000b61: JUMPDEST 00000b62: PUSH1 0x01 00000b64: ADD 00000b65: PUSH2 0x0ae2 00000b68: JUMP 00000b69: JUMPDEST 00000b6a: JUMPDEST 00000b6b: POP 00000b6c: POP 00000b6d: SWAP2 00000b6e: SWAP1 00000b6f: POP 00000b70: JUMP 00000b71: JUMPDEST 00000b72: PUSH1 0x00 00000b74: DUP1 00000b75: JUMPDEST 00000b76: PUSH1 0x03 00000b78: SLOAD 00000b79: DUP2 00000b7a: LT 00000b7b: ISZERO 00000b7c: PUSH2 0x0be9 00000b7f: JUMPI 00000b80: PUSH1 0x00 00000b82: DUP4 00000b83: DUP2 00000b84: MSTORE 00000b85: PUSH1 0x01 00000b87: PUSH1 0x20 00000b89: MSTORE 00000b8a: PUSH1 0x40 00000b8c: DUP2 00000b8d: KECCAK256 00000b8e: PUSH1 0x03 00000b90: DUP1 00000b91: SLOAD 00000b92: SWAP2 00000b93: SWAP3 00000b94: SWAP2 00000b95: DUP5 00000b96: SWAP1 00000b97: DUP2 00000b98: LT 00000b99: PUSH2 0x0b9e 00000b9c: JUMPI 00000b9d: INVALID 00000b9e: JUMPDEST 00000b9f: SWAP1 00000ba0: PUSH1 0x00 00000ba2: MSTORE 00000ba3: PUSH1 0x20 00000ba5: PUSH1 0x00 00000ba7: KECCAK256 00000ba8: SWAP1 00000ba9: ADD 00000baa: PUSH1 0x00 00000bac: JUMPDEST 00000bad: SWAP1 00000bae: SLOAD 00000baf: PUSH1 0x01 00000bb1: PUSH1 0xa0 00000bb3: PUSH1 0x02 00000bb5: EXP 00000bb6: SUB 00000bb7: PUSH2 0x0100 00000bba: SWAP3 00000bbb: SWAP1 00000bbc: SWAP3 00000bbd: EXP 00000bbe: SWAP1 00000bbf: DIV 00000bc0: AND 00000bc1: DUP2 00000bc2: MSTORE 00000bc3: PUSH1 0x20 00000bc5: DUP2 00000bc6: ADD 00000bc7: SWAP2 00000bc8: SWAP1 00000bc9: SWAP2 00000bca: MSTORE 00000bcb: PUSH1 0x40 00000bcd: ADD 00000bce: PUSH1 0x00 00000bd0: KECCAK256 00000bd1: SLOAD 00000bd2: PUSH1 0xff 00000bd4: AND 00000bd5: ISZERO 00000bd6: PUSH2 0x0be0 00000bd9: JUMPI 00000bda: PUSH1 0x01 00000bdc: DUP3 00000bdd: ADD 00000bde: SWAP2 00000bdf: POP 00000be0: JUMPDEST 00000be1: JUMPDEST 00000be2: PUSH1 0x01 00000be4: ADD 00000be5: PUSH2 0x0b75 00000be8: JUMP 00000be9: JUMPDEST 00000bea: JUMPDEST 00000beb: POP 00000bec: SWAP2 00000bed: SWAP1 00000bee: POP 00000bef: JUMP 00000bf0: JUMPDEST 00000bf1: PUSH1 0x00 00000bf3: PUSH1 0x20 00000bf5: DUP2 00000bf6: SWAP1 00000bf7: MSTORE 00000bf8: SWAP1 00000bf9: DUP2 00000bfa: MSTORE 00000bfb: PUSH1 0x40 00000bfd: SWAP1 00000bfe: KECCAK256 00000bff: DUP1 00000c00: SLOAD 00000c01: PUSH1 0x01 00000c03: DUP3 00000c04: ADD 00000c05: SLOAD 00000c06: PUSH1 0x03 00000c08: DUP4 00000c09: ADD 00000c0a: SLOAD 00000c0b: PUSH1 0x01 00000c0d: PUSH1 0xa0 00000c0f: PUSH1 0x02 00000c11: EXP 00000c12: SUB 00000c13: SWAP1 00000c14: SWAP3 00000c15: AND 00000c16: SWAP3 00000c17: SWAP1 00000c18: SWAP2 00000c19: PUSH1 0x02 00000c1b: SWAP1 00000c1c: SWAP2 00000c1d: ADD 00000c1e: SWAP1 00000c1f: PUSH1 0xff 00000c21: AND 00000c22: DUP5 00000c23: JUMP 00000c24: JUMPDEST 00000c25: PUSH2 0x0c2c 00000c28: PUSH2 0x1621 00000c2b: JUMP 00000c2c: JUMPDEST 00000c2d: PUSH1 0x03 00000c2f: DUP1 00000c30: SLOAD 00000c31: DUP1 00000c32: PUSH1 0x20 00000c34: MUL 00000c35: PUSH1 0x20 00000c37: ADD 00000c38: PUSH1 0x40 00000c3a: MLOAD 00000c3b: SWAP1 00000c3c: DUP2 00000c3d: ADD 00000c3e: PUSH1 0x40 00000c40: MSTORE 00000c41: DUP1 00000c42: SWAP3 00000c43: SWAP2 00000c44: SWAP1 00000c45: DUP2 00000c46: DUP2 00000c47: MSTORE 00000c48: PUSH1 0x20 00000c4a: ADD 00000c4b: DUP3 00000c4c: DUP1 00000c4d: SLOAD 00000c4e: DUP1 00000c4f: ISZERO 00000c50: PUSH2 0x0c82 00000c53: JUMPI 00000c54: PUSH1 0x20 00000c56: MUL 00000c57: DUP3 00000c58: ADD 00000c59: SWAP2 00000c5a: SWAP1 00000c5b: PUSH1 0x00 00000c5d: MSTORE 00000c5e: PUSH1 0x20 00000c60: PUSH1 0x00 00000c62: KECCAK256 00000c63: SWAP1 00000c64: JUMPDEST 00000c65: DUP2 00000c66: SLOAD 00000c67: PUSH1 0x01 00000c69: PUSH1 0xa0 00000c6b: PUSH1 0x02 00000c6d: EXP 00000c6e: SUB 00000c6f: AND 00000c70: DUP2 00000c71: MSTORE 00000c72: PUSH1 0x01 00000c74: SWAP1 00000c75: SWAP2 00000c76: ADD 00000c77: SWAP1 00000c78: PUSH1 0x20 00000c7a: ADD 00000c7b: DUP1 00000c7c: DUP4 00000c7d: GT 00000c7e: PUSH2 0x0c64 00000c81: JUMPI 00000c82: JUMPDEST 00000c83: POP 00000c84: POP 00000c85: POP 00000c86: POP 00000c87: POP 00000c88: SWAP1 00000c89: POP 00000c8a: JUMPDEST 00000c8b: SWAP1 00000c8c: JUMP 00000c8d: JUMPDEST 00000c8e: PUSH2 0x0c95 00000c91: PUSH2 0x1621 00000c94: JUMP 00000c95: JUMPDEST 00000c96: PUSH2 0x0c9d 00000c99: PUSH2 0x1621 00000c9c: JUMP 00000c9d: JUMPDEST 00000c9e: PUSH1 0x00 00000ca0: DUP1 00000ca1: PUSH1 0x05 00000ca3: SLOAD 00000ca4: PUSH1 0x40 00000ca6: MLOAD 00000ca7: DUP1 00000ca8: MSIZE 00000ca9: LT 00000caa: PUSH2 0x0cb0 00000cad: JUMPI 00000cae: POP 00000caf: MSIZE 00000cb0: JUMPDEST 00000cb1: SWAP1 00000cb2: DUP1 00000cb3: DUP3 00000cb4: MSTORE 00000cb5: DUP1 00000cb6: PUSH1 0x20 00000cb8: MUL 00000cb9: PUSH1 0x20 00000cbb: ADD 00000cbc: DUP3 00000cbd: ADD 00000cbe: PUSH1 0x40 00000cc0: MSTORE 00000cc1: JUMPDEST 00000cc2: POP 00000cc3: SWAP3 00000cc4: POP 00000cc5: PUSH1 0x00 00000cc7: SWAP2 00000cc8: POP 00000cc9: PUSH1 0x00 00000ccb: SWAP1 00000ccc: POP 00000ccd: JUMPDEST 00000cce: PUSH1 0x05 00000cd0: SLOAD 00000cd1: DUP2 00000cd2: LT 00000cd3: ISZERO 00000cd4: PUSH2 0x0d48 00000cd7: JUMPI 00000cd8: DUP6 00000cd9: DUP1 00000cda: ISZERO 00000cdb: PUSH2 0x0cf6 00000cde: JUMPI 00000cdf: POP 00000ce0: PUSH1 0x00 00000ce2: DUP2 00000ce3: DUP2 00000ce4: MSTORE 00000ce5: PUSH1 0x20 00000ce7: DUP2 00000ce8: SWAP1 00000ce9: MSTORE 00000cea: PUSH1 0x40 00000cec: SWAP1 00000ced: KECCAK256 00000cee: PUSH1 0x03 00000cf0: ADD 00000cf1: SLOAD 00000cf2: PUSH1 0xff 00000cf4: AND 00000cf5: ISZERO 00000cf6: JUMPDEST 00000cf7: DUP1 00000cf8: PUSH2 0x0d1a 00000cfb: JUMPI 00000cfc: POP 00000cfd: DUP5 00000cfe: DUP1 00000cff: ISZERO 00000d00: PUSH2 0x0d1a 00000d03: JUMPI 00000d04: POP 00000d05: PUSH1 0x00 00000d07: DUP2 00000d08: DUP2 00000d09: MSTORE 00000d0a: PUSH1 0x20 00000d0c: DUP2 00000d0d: SWAP1 00000d0e: MSTORE 00000d0f: PUSH1 0x40 00000d11: SWAP1 00000d12: KECCAK256 00000d13: PUSH1 0x03 00000d15: ADD 00000d16: SLOAD 00000d17: PUSH1 0xff 00000d19: AND 00000d1a: JUMPDEST 00000d1b: JUMPDEST 00000d1c: ISZERO 00000d1d: PUSH2 0x0d3f 00000d20: JUMPI 00000d21: DUP1 00000d22: DUP4 00000d23: DUP4 00000d24: DUP2 00000d25: MLOAD 00000d26: DUP2 00000d27: LT 00000d28: PUSH2 0x0d2d 00000d2b: JUMPI 00000d2c: INVALID 00000d2d: JUMPDEST 00000d2e: PUSH1 0x20 00000d30: SWAP1 00000d31: DUP2 00000d32: MUL 00000d33: SWAP1 00000d34: SWAP2 00000d35: ADD 00000d36: ADD 00000d37: MSTORE 00000d38: PUSH1 0x01 00000d3a: SWAP2 00000d3b: SWAP1 00000d3c: SWAP2 00000d3d: ADD 00000d3e: SWAP1 00000d3f: JUMPDEST 00000d40: JUMPDEST 00000d41: PUSH1 0x01 00000d43: ADD 00000d44: PUSH2 0x0ccd 00000d47: JUMP 00000d48: JUMPDEST 00000d49: DUP8 00000d4a: DUP8 00000d4b: SUB 00000d4c: PUSH1 0x40 00000d4e: MLOAD 00000d4f: DUP1 00000d50: MSIZE 00000d51: LT 00000d52: PUSH2 0x0d58 00000d55: JUMPI 00000d56: POP 00000d57: MSIZE 00000d58: JUMPDEST 00000d59: SWAP1 00000d5a: DUP1 00000d5b: DUP3 00000d5c: MSTORE 00000d5d: DUP1 00000d5e: PUSH1 0x20 00000d60: MUL 00000d61: PUSH1 0x20 00000d63: ADD 00000d64: DUP3 00000d65: ADD 00000d66: PUSH1 0x40 00000d68: MSTORE 00000d69: JUMPDEST 00000d6a: POP 00000d6b: SWAP4 00000d6c: POP 00000d6d: DUP8 00000d6e: SWAP1 00000d6f: POP 00000d70: JUMPDEST 00000d71: DUP7 00000d72: DUP2 00000d73: LT 00000d74: ISZERO 00000d75: PUSH2 0x0daf 00000d78: JUMPI 00000d79: DUP3 00000d7a: DUP2 00000d7b: DUP2 00000d7c: MLOAD 00000d7d: DUP2 00000d7e: LT 00000d7f: PUSH2 0x0d84 00000d82: JUMPI 00000d83: INVALID 00000d84: JUMPDEST 00000d85: SWAP1 00000d86: PUSH1 0x20 00000d88: ADD 00000d89: SWAP1 00000d8a: PUSH1 0x20 00000d8c: MUL 00000d8d: ADD 00000d8e: MLOAD 00000d8f: DUP5 00000d90: DUP10 00000d91: DUP4 00000d92: SUB 00000d93: DUP2 00000d94: MLOAD 00000d95: DUP2 00000d96: LT 00000d97: PUSH2 0x0d9c 00000d9a: JUMPI 00000d9b: INVALID 00000d9c: JUMPDEST 00000d9d: PUSH1 0x20 00000d9f: SWAP1 00000da0: DUP2 00000da1: MUL 00000da2: SWAP1 00000da3: SWAP2 00000da4: ADD 00000da5: ADD 00000da6: MSTORE 00000da7: JUMPDEST 00000da8: PUSH1 0x01 00000daa: ADD 00000dab: PUSH2 0x0d70 00000dae: JUMP 00000daf: JUMPDEST 00000db0: JUMPDEST 00000db1: POP 00000db2: POP 00000db3: POP 00000db4: SWAP5 00000db5: SWAP4 00000db6: POP 00000db7: POP 00000db8: POP 00000db9: POP 00000dba: JUMP 00000dbb: JUMPDEST 00000dbc: PUSH2 0x0dc3 00000dbf: PUSH2 0x1621 00000dc2: JUMP 00000dc3: JUMPDEST 00000dc4: PUSH2 0x0dcb 00000dc7: PUSH2 0x1621 00000dca: JUMP 00000dcb: JUMPDEST 00000dcc: PUSH1 0x03 00000dce: SLOAD 00000dcf: PUSH1 0x00 00000dd1: SWAP1 00000dd2: DUP2 00000dd3: SWAP1 00000dd4: PUSH1 0x40 00000dd6: MLOAD 00000dd7: DUP1 00000dd8: MSIZE 00000dd9: LT 00000dda: PUSH2 0x0de0 00000ddd: JUMPI 00000dde: POP 00000ddf: MSIZE 00000de0: JUMPDEST 00000de1: SWAP1 00000de2: DUP1 00000de3: DUP3 00000de4: MSTORE 00000de5: DUP1 00000de6: PUSH1 0x20 00000de8: MUL 00000de9: PUSH1 0x20 00000deb: ADD 00000dec: DUP3 00000ded: ADD 00000dee: PUSH1 0x40 00000df0: MSTORE 00000df1: JUMPDEST 00000df2: POP 00000df3: SWAP3 00000df4: POP 00000df5: PUSH1 0x00 00000df7: SWAP2 00000df8: POP 00000df9: PUSH1 0x00 00000dfb: SWAP1 00000dfc: POP 00000dfd: JUMPDEST 00000dfe: PUSH1 0x03 00000e00: SLOAD 00000e01: DUP2 00000e02: LT 00000e03: ISZERO 00000e04: PUSH2 0x0ec3 00000e07: JUMPI 00000e08: PUSH1 0x00 00000e0a: DUP6 00000e0b: DUP2 00000e0c: MSTORE 00000e0d: PUSH1 0x01 00000e0f: PUSH1 0x20 00000e11: MSTORE 00000e12: PUSH1 0x40 00000e14: DUP2 00000e15: KECCAK256 00000e16: PUSH1 0x03 00000e18: DUP1 00000e19: SLOAD 00000e1a: SWAP2 00000e1b: SWAP3 00000e1c: SWAP2 00000e1d: DUP5 00000e1e: SWAP1 00000e1f: DUP2 00000e20: LT 00000e21: PUSH2 0x0e26 00000e24: JUMPI 00000e25: INVALID 00000e26: JUMPDEST 00000e27: SWAP1 00000e28: PUSH1 0x00 00000e2a: MSTORE 00000e2b: PUSH1 0x20 00000e2d: PUSH1 0x00 00000e2f: KECCAK256 00000e30: SWAP1 00000e31: ADD 00000e32: PUSH1 0x00 00000e34: JUMPDEST 00000e35: SWAP1 00000e36: SLOAD 00000e37: PUSH1 0x01 00000e39: PUSH1 0xa0 00000e3b: PUSH1 0x02 00000e3d: EXP 00000e3e: SUB 00000e3f: PUSH2 0x0100 00000e42: SWAP3 00000e43: SWAP1 00000e44: SWAP3 00000e45: EXP 00000e46: SWAP1 00000e47: DIV 00000e48: AND 00000e49: DUP2 00000e4a: MSTORE 00000e4b: PUSH1 0x20 00000e4d: DUP2 00000e4e: ADD 00000e4f: SWAP2 00000e50: SWAP1 00000e51: SWAP2 00000e52: MSTORE 00000e53: PUSH1 0x40 00000e55: ADD 00000e56: PUSH1 0x00 00000e58: KECCAK256 00000e59: SLOAD 00000e5a: PUSH1 0xff 00000e5c: AND 00000e5d: ISZERO 00000e5e: PUSH2 0x0eba 00000e61: JUMPI 00000e62: PUSH1 0x03 00000e64: DUP1 00000e65: SLOAD 00000e66: DUP3 00000e67: SWAP1 00000e68: DUP2 00000e69: LT 00000e6a: PUSH2 0x0e6f 00000e6d: JUMPI 00000e6e: INVALID 00000e6f: JUMPDEST 00000e70: SWAP1 00000e71: PUSH1 0x00 00000e73: MSTORE 00000e74: PUSH1 0x20 00000e76: PUSH1 0x00 00000e78: KECCAK256 00000e79: SWAP1 00000e7a: ADD 00000e7b: PUSH1 0x00 00000e7d: JUMPDEST 00000e7e: SWAP1 00000e7f: SLOAD 00000e80: SWAP1 00000e81: PUSH2 0x0100 00000e84: EXP 00000e85: SWAP1 00000e86: DIV 00000e87: PUSH1 0x01 00000e89: PUSH1 0xa0 00000e8b: PUSH1 0x02 00000e8d: EXP 00000e8e: SUB 00000e8f: AND 00000e90: DUP4 00000e91: DUP4 00000e92: DUP2 00000e93: MLOAD 00000e94: DUP2 00000e95: LT 00000e96: PUSH2 0x0e9b 00000e99: JUMPI 00000e9a: INVALID 00000e9b: JUMPDEST 00000e9c: PUSH1 0x01 00000e9e: PUSH1 0xa0 00000ea0: PUSH1 0x02 00000ea2: EXP 00000ea3: SUB 00000ea4: SWAP1 00000ea5: SWAP3 00000ea6: AND 00000ea7: PUSH1 0x20 00000ea9: SWAP3 00000eaa: DUP4 00000eab: MUL 00000eac: SWAP1 00000ead: SWAP2 00000eae: ADD 00000eaf: SWAP1 00000eb0: SWAP2 00000eb1: ADD 00000eb2: MSTORE 00000eb3: PUSH1 0x01 00000eb5: SWAP2 00000eb6: SWAP1 00000eb7: SWAP2 00000eb8: ADD 00000eb9: SWAP1 00000eba: JUMPDEST 00000ebb: JUMPDEST 00000ebc: PUSH1 0x01 00000ebe: ADD 00000ebf: PUSH2 0x0dfd 00000ec2: JUMP 00000ec3: JUMPDEST 00000ec4: DUP2 00000ec5: PUSH1 0x40 00000ec7: MLOAD 00000ec8: DUP1 00000ec9: MSIZE 00000eca: LT 00000ecb: PUSH2 0x0ed1 00000ece: JUMPI 00000ecf: POP 00000ed0: MSIZE 00000ed1: JUMPDEST 00000ed2: SWAP1 00000ed3: DUP1 00000ed4: DUP3 00000ed5: MSTORE 00000ed6: DUP1 00000ed7: PUSH1 0x20 00000ed9: MUL 00000eda: PUSH1 0x20 00000edc: ADD 00000edd: DUP3 00000ede: ADD 00000edf: PUSH1 0x40 00000ee1: MSTORE 00000ee2: JUMPDEST 00000ee3: POP 00000ee4: SWAP4 00000ee5: POP 00000ee6: PUSH1 0x00 00000ee8: SWAP1 00000ee9: POP 00000eea: JUMPDEST 00000eeb: DUP2 00000eec: DUP2 00000eed: LT 00000eee: ISZERO 00000eef: PUSH2 0x0f34 00000ef2: JUMPI 00000ef3: DUP3 00000ef4: DUP2 00000ef5: DUP2 00000ef6: MLOAD 00000ef7: DUP2 00000ef8: LT 00000ef9: PUSH2 0x0efe 00000efc: JUMPI 00000efd: INVALID 00000efe: JUMPDEST 00000eff: SWAP1 00000f00: PUSH1 0x20 00000f02: ADD 00000f03: SWAP1 00000f04: PUSH1 0x20 00000f06: MUL 00000f07: ADD 00000f08: MLOAD 00000f09: DUP5 00000f0a: DUP3 00000f0b: DUP2 00000f0c: MLOAD 00000f0d: DUP2 00000f0e: LT 00000f0f: PUSH2 0x0f14 00000f12: JUMPI 00000f13: INVALID 00000f14: JUMPDEST 00000f15: PUSH1 0x01 00000f17: PUSH1 0xa0 00000f19: PUSH1 0x02 00000f1b: EXP 00000f1c: SUB 00000f1d: SWAP1 00000f1e: SWAP3 00000f1f: AND 00000f20: PUSH1 0x20 00000f22: SWAP3 00000f23: DUP4 00000f24: MUL 00000f25: SWAP1 00000f26: SWAP2 00000f27: ADD 00000f28: SWAP1 00000f29: SWAP2 00000f2a: ADD 00000f2b: MSTORE 00000f2c: JUMPDEST 00000f2d: PUSH1 0x01 00000f2f: ADD 00000f30: PUSH2 0x0eea 00000f33: JUMP 00000f34: JUMPDEST 00000f35: JUMPDEST 00000f36: POP 00000f37: POP 00000f38: POP 00000f39: SWAP2 00000f3a: SWAP1 00000f3b: POP 00000f3c: JUMP 00000f3d: JUMPDEST 00000f3e: PUSH1 0x05 00000f40: SLOAD 00000f41: DUP2 00000f42: JUMP 00000f43: JUMPDEST 00000f44: ADDRESS 00000f45: PUSH1 0x01 00000f47: PUSH1 0xa0 00000f49: PUSH1 0x02 00000f4b: EXP 00000f4c: SUB 00000f4d: AND 00000f4e: CALLER 00000f4f: PUSH1 0x01 00000f51: PUSH1 0xa0 00000f53: PUSH1 0x02 00000f55: EXP 00000f56: SUB 00000f57: AND 00000f58: EQ 00000f59: ISZERO 00000f5a: ISZERO 00000f5b: PUSH2 0x0f63 00000f5e: JUMPI 00000f5f: PUSH1 0x00 00000f61: DUP1 00000f62: REVERT 00000f63: JUMPDEST 00000f64: PUSH1 0x03 00000f66: SLOAD 00000f67: DUP2 00000f68: PUSH1 0x32 00000f6a: DUP3 00000f6b: GT 00000f6c: DUP1 00000f6d: ISZERO 00000f6e: SWAP1 00000f6f: PUSH2 0x0f78 00000f72: JUMPI 00000f73: POP 00000f74: DUP2 00000f75: DUP2 00000f76: GT 00000f77: ISZERO 00000f78: JUMPDEST 00000f79: DUP1 00000f7a: ISZERO 00000f7b: PUSH2 0x0f83 00000f7e: JUMPI 00000f7f: POP 00000f80: DUP1 00000f81: ISZERO 00000f82: ISZERO 00000f83: JUMPDEST 00000f84: DUP1 00000f85: ISZERO 00000f86: PUSH2 0x0f8e 00000f89: JUMPI 00000f8a: POP 00000f8b: DUP2 00000f8c: ISZERO 00000f8d: ISZERO 00000f8e: JUMPDEST 00000f8f: ISZERO 00000f90: ISZERO 00000f91: PUSH2 0x0f99 00000f94: JUMPI 00000f95: PUSH1 0x00 00000f97: DUP1 00000f98: REVERT 00000f99: JUMPDEST 00000f9a: PUSH1 0x04 00000f9c: DUP4 00000f9d: SWAP1 00000f9e: SSTORE 00000f9f: PUSH32 0xa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a 00000fc0: DUP4 00000fc1: PUSH1 0x40 00000fc3: MLOAD 00000fc4: SWAP1 00000fc5: DUP2 00000fc6: MSTORE 00000fc7: PUSH1 0x20 00000fc9: ADD 00000fca: PUSH1 0x40 00000fcc: MLOAD 00000fcd: DUP1 00000fce: SWAP2 00000fcf: SUB 00000fd0: SWAP1 00000fd1: LOG1 00000fd2: JUMPDEST 00000fd3: JUMPDEST 00000fd4: POP 00000fd5: POP 00000fd6: JUMPDEST 00000fd7: POP 00000fd8: JUMP 00000fd9: JUMPDEST 00000fda: CALLER 00000fdb: PUSH1 0x01 00000fdd: PUSH1 0xa0 00000fdf: PUSH1 0x02 00000fe1: EXP 00000fe2: SUB 00000fe3: DUP2 00000fe4: AND 00000fe5: PUSH1 0x00 00000fe7: SWAP1 00000fe8: DUP2 00000fe9: MSTORE 00000fea: PUSH1 0x02 00000fec: PUSH1 0x20 00000fee: MSTORE 00000fef: PUSH1 0x40 00000ff1: SWAP1 00000ff2: KECCAK256 00000ff3: SLOAD 00000ff4: PUSH1 0xff 00000ff6: AND 00000ff7: ISZERO 00000ff8: ISZERO 00000ff9: PUSH2 0x1001 00000ffc: JUMPI 00000ffd: PUSH1 0x00 00000fff: DUP1 00001000: REVERT 00001001: JUMPDEST 00001002: PUSH1 0x00 00001004: DUP3 00001005: DUP2 00001006: MSTORE 00001007: PUSH1 0x20 00001009: DUP2 0000100a: SWAP1 0000100b: MSTORE 0000100c: PUSH1 0x40 0000100e: SWAP1 0000100f: KECCAK256 00001010: SLOAD 00001011: DUP3 00001012: SWAP1 00001013: PUSH1 0x01 00001015: PUSH1 0xa0 00001017: PUSH1 0x02 00001019: EXP 0000101a: SUB 0000101b: AND 0000101c: ISZERO 0000101d: ISZERO 0000101e: PUSH2 0x1026 00001021: JUMPI 00001022: PUSH1 0x00 00001024: DUP1 00001025: REVERT 00001026: JUMPDEST 00001027: PUSH1 0x00 00001029: DUP4 0000102a: DUP2 0000102b: MSTORE 0000102c: PUSH1 0x01 0000102e: PUSH1 0x20 00001030: SWAP1 00001031: DUP2 00001032: MSTORE 00001033: PUSH1 0x40 00001035: DUP1 00001036: DUP4 00001037: KECCAK256 00001038: CALLER 00001039: PUSH1 0x01 0000103b: PUSH1 0xa0 0000103d: PUSH1 0x02 0000103f: EXP 00001040: SUB 00001041: DUP2 00001042: AND 00001043: DUP6 00001044: MSTORE 00001045: SWAP3 00001046: MSTORE 00001047: SWAP1 00001048: SWAP2 00001049: KECCAK256 0000104a: SLOAD 0000104b: DUP5 0000104c: SWAP2 0000104d: SWAP1 0000104e: PUSH1 0xff 00001050: AND 00001051: ISZERO 00001052: PUSH2 0x105a 00001055: JUMPI 00001056: PUSH1 0x00 00001058: DUP1 00001059: REVERT 0000105a: JUMPDEST 0000105b: PUSH1 0x00 0000105d: DUP6 0000105e: DUP2 0000105f: MSTORE 00001060: PUSH1 0x01 00001062: PUSH1 0x20 00001064: DUP2 00001065: DUP2 00001066: MSTORE 00001067: PUSH1 0x40 00001069: DUP1 0000106a: DUP5 0000106b: KECCAK256 0000106c: PUSH1 0x01 0000106e: PUSH1 0xa0 00001070: PUSH1 0x02 00001072: EXP 00001073: SUB 00001074: CALLER 00001075: AND 00001076: DUP1 00001077: DUP7 00001078: MSTORE 00001079: SWAP3 0000107a: MSTORE 0000107b: SWAP3 0000107c: DUP4 0000107d: SWAP1 0000107e: KECCAK256 0000107f: DUP1 00001080: SLOAD 00001081: PUSH1 0xff 00001083: NOT 00001084: AND 00001085: SWAP1 00001086: SWAP3 00001087: OR 00001088: SWAP1 00001089: SWAP2 0000108a: SSTORE 0000108b: DUP7 0000108c: SWAP2 0000108d: PUSH32 0x4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef 000010ae: SWAP1 000010af: MLOAD 000010b0: PUSH1 0x40 000010b2: MLOAD 000010b3: DUP1 000010b4: SWAP2 000010b5: SUB 000010b6: SWAP1 000010b7: LOG3 000010b8: PUSH2 0x08f2 000010bb: DUP6 000010bc: PUSH2 0x12b7 000010bf: JUMP 000010c0: JUMPDEST 000010c1: JUMPDEST 000010c2: JUMPDEST 000010c3: POP 000010c4: POP 000010c5: JUMPDEST 000010c6: POP 000010c7: JUMPDEST 000010c8: POP 000010c9: POP 000010ca: JUMP 000010cb: JUMPDEST 000010cc: PUSH1 0x00 000010ce: PUSH2 0x10d8 000010d1: DUP5 000010d2: DUP5 000010d3: DUP5 000010d4: PUSH2 0x14a6 000010d7: JUMP 000010d8: JUMPDEST 000010d9: SWAP1 000010da: POP 000010db: PUSH2 0x10e3 000010de: DUP2 000010df: PUSH2 0x0fd9 000010e2: JUMP 000010e3: JUMPDEST 000010e4: JUMPDEST 000010e5: SWAP4 000010e6: SWAP3 000010e7: POP 000010e8: POP 000010e9: POP 000010ea: JUMP 000010eb: JUMPDEST 000010ec: PUSH1 0x32 000010ee: DUP2 000010ef: JUMP 000010f0: JUMPDEST 000010f1: PUSH1 0x04 000010f3: SLOAD 000010f4: DUP2 000010f5: JUMP 000010f6: JUMPDEST 000010f7: PUSH1 0x00 000010f9: ADDRESS 000010fa: PUSH1 0x01 000010fc: PUSH1 0xa0 000010fe: PUSH1 0x02 00001100: EXP 00001101: SUB 00001102: AND 00001103: CALLER 00001104: PUSH1 0x01 00001106: PUSH1 0xa0 00001108: PUSH1 0x02 0000110a: EXP 0000110b: SUB 0000110c: AND 0000110d: EQ 0000110e: ISZERO 0000110f: ISZERO 00001110: PUSH2 0x1118 00001113: JUMPI 00001114: PUSH1 0x00 00001116: DUP1 00001117: REVERT 00001118: JUMPDEST 00001119: PUSH1 0x01 0000111b: PUSH1 0xa0 0000111d: PUSH1 0x02 0000111f: EXP 00001120: SUB 00001121: DUP4 00001122: AND 00001123: PUSH1 0x00 00001125: SWAP1 00001126: DUP2 00001127: MSTORE 00001128: PUSH1 0x02 0000112a: PUSH1 0x20 0000112c: MSTORE 0000112d: PUSH1 0x40 0000112f: SWAP1 00001130: KECCAK256 00001131: SLOAD 00001132: DUP4 00001133: SWAP1 00001134: PUSH1 0xff 00001136: AND 00001137: ISZERO 00001138: ISZERO 00001139: PUSH2 0x1141 0000113c: JUMPI 0000113d: PUSH1 0x00 0000113f: DUP1 00001140: REVERT 00001141: JUMPDEST 00001142: PUSH1 0x01 00001144: PUSH1 0xa0 00001146: PUSH1 0x02 00001148: EXP 00001149: SUB 0000114a: DUP4 0000114b: AND 0000114c: PUSH1 0x00 0000114e: SWAP1 0000114f: DUP2 00001150: MSTORE 00001151: PUSH1 0x02 00001153: PUSH1 0x20 00001155: MSTORE 00001156: PUSH1 0x40 00001158: SWAP1 00001159: KECCAK256 0000115a: SLOAD 0000115b: DUP4 0000115c: SWAP1 0000115d: PUSH1 0xff 0000115f: AND 00001160: ISZERO 00001161: PUSH2 0x1169 00001164: JUMPI 00001165: PUSH1 0x00 00001167: DUP1 00001168: REVERT 00001169: JUMPDEST 0000116a: PUSH1 0x00 0000116c: SWAP3 0000116d: POP 0000116e: JUMPDEST 0000116f: PUSH1 0x03 00001171: SLOAD 00001172: DUP4 00001173: LT 00001174: ISZERO 00001175: PUSH2 0x1211 00001178: JUMPI 00001179: DUP5 0000117a: PUSH1 0x01 0000117c: PUSH1 0xa0 0000117e: PUSH1 0x02 00001180: EXP 00001181: SUB 00001182: AND 00001183: PUSH1 0x03 00001185: DUP5 00001186: DUP2 00001187: SLOAD 00001188: DUP2 00001189: LT 0000118a: ISZERO 0000118b: ISZERO 0000118c: PUSH2 0x1191 0000118f: JUMPI 00001190: INVALID 00001191: JUMPDEST 00001192: SWAP1 00001193: PUSH1 0x00 00001195: MSTORE 00001196: PUSH1 0x20 00001198: PUSH1 0x00 0000119a: KECCAK256 0000119b: SWAP1 0000119c: ADD 0000119d: PUSH1 0x00 0000119f: JUMPDEST 000011a0: SWAP1 000011a1: SLOAD 000011a2: SWAP1 000011a3: PUSH2 0x0100 000011a6: EXP 000011a7: SWAP1 000011a8: DIV 000011a9: PUSH1 0x01 000011ab: PUSH1 0xa0 000011ad: PUSH1 0x02 000011af: EXP 000011b0: SUB 000011b1: AND 000011b2: PUSH1 0x01 000011b4: PUSH1 0xa0 000011b6: PUSH1 0x02 000011b8: EXP 000011b9: SUB 000011ba: AND 000011bb: EQ 000011bc: ISZERO 000011bd: PUSH2 0x1205 000011c0: JUMPI 000011c1: DUP4 000011c2: PUSH1 0x03 000011c4: DUP5 000011c5: DUP2 000011c6: SLOAD 000011c7: DUP2 000011c8: LT 000011c9: ISZERO 000011ca: ISZERO 000011cb: PUSH2 0x11d0 000011ce: JUMPI 000011cf: INVALID 000011d0: JUMPDEST 000011d1: SWAP1 000011d2: PUSH1 0x00 000011d4: MSTORE 000011d5: PUSH1 0x20 000011d7: PUSH1 0x00 000011d9: KECCAK256 000011da: SWAP1 000011db: ADD 000011dc: PUSH1 0x00 000011de: JUMPDEST 000011df: PUSH2 0x0100 000011e2: EXP 000011e3: DUP2 000011e4: SLOAD 000011e5: DUP2 000011e6: PUSH1 0x01 000011e8: PUSH1 0xa0 000011ea: PUSH1 0x02 000011ec: EXP 000011ed: SUB 000011ee: MUL 000011ef: NOT 000011f0: AND 000011f1: SWAP1 000011f2: DUP4 000011f3: PUSH1 0x01 000011f5: PUSH1 0xa0 000011f7: PUSH1 0x02 000011f9: EXP 000011fa: SUB 000011fb: AND 000011fc: MUL 000011fd: OR 000011fe: SWAP1 000011ff: SSTORE 00001200: POP 00001201: PUSH2 0x1211 00001204: JUMP 00001205: JUMPDEST 00001206: JUMPDEST 00001207: PUSH1 0x01 00001209: SWAP1 0000120a: SWAP3 0000120b: ADD 0000120c: SWAP2 0000120d: PUSH2 0x116e 00001210: JUMP 00001211: JUMPDEST 00001212: PUSH1 0x01 00001214: PUSH1 0xa0 00001216: PUSH1 0x02 00001218: EXP 00001219: SUB 0000121a: DUP1 0000121b: DUP7 0000121c: AND 0000121d: PUSH1 0x00 0000121f: DUP2 00001220: DUP2 00001221: MSTORE 00001222: PUSH1 0x02 00001224: PUSH1 0x20 00001226: MSTORE 00001227: PUSH1 0x40 00001229: DUP1 0000122a: DUP3 0000122b: KECCAK256 0000122c: DUP1 0000122d: SLOAD 0000122e: PUSH1 0xff 00001230: NOT 00001231: SWAP1 00001232: DUP2 00001233: AND 00001234: SWAP1 00001235: SWAP2 00001236: SSTORE 00001237: SWAP4 00001238: DUP9 00001239: AND 0000123a: DUP3 0000123b: MSTORE 0000123c: SWAP1 0000123d: DUP2 0000123e: SWAP1 0000123f: KECCAK256 00001240: DUP1 00001241: SLOAD 00001242: SWAP1 00001243: SWAP4 00001244: AND 00001245: PUSH1 0x01 00001247: OR 00001248: SWAP1 00001249: SWAP3 0000124a: SSTORE 0000124b: SWAP1 0000124c: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90 0000126d: SWAP1 0000126e: MLOAD 0000126f: PUSH1 0x40 00001271: MLOAD 00001272: DUP1 00001273: SWAP2 00001274: SUB 00001275: SWAP1 00001276: LOG2 00001277: DUP4 00001278: PUSH1 0x01 0000127a: PUSH1 0xa0 0000127c: PUSH1 0x02 0000127e: EXP 0000127f: SUB 00001280: AND 00001281: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d 000012a2: PUSH1 0x40 000012a4: MLOAD 000012a5: PUSH1 0x40 000012a7: MLOAD 000012a8: DUP1 000012a9: SWAP2 000012aa: SUB 000012ab: SWAP1 000012ac: LOG2 000012ad: JUMPDEST 000012ae: JUMPDEST 000012af: POP 000012b0: JUMPDEST 000012b1: POP 000012b2: JUMPDEST 000012b3: POP 000012b4: POP 000012b5: POP 000012b6: JUMP 000012b7: JUMPDEST 000012b8: CALLER 000012b9: PUSH1 0x01 000012bb: PUSH1 0xa0 000012bd: PUSH1 0x02 000012bf: EXP 000012c0: SUB 000012c1: DUP2 000012c2: AND 000012c3: PUSH1 0x00 000012c5: SWAP1 000012c6: DUP2 000012c7: MSTORE 000012c8: PUSH1 0x02 000012ca: PUSH1 0x20 000012cc: MSTORE 000012cd: PUSH1 0x40 000012cf: DUP2 000012d0: KECCAK256 000012d1: SLOAD 000012d2: SWAP1 000012d3: SWAP2 000012d4: SWAP1 000012d5: PUSH1 0xff 000012d7: AND 000012d8: ISZERO 000012d9: ISZERO 000012da: PUSH2 0x12e2 000012dd: JUMPI 000012de: PUSH1 0x00 000012e0: DUP1 000012e1: REVERT 000012e2: JUMPDEST 000012e3: PUSH1 0x00 000012e5: DUP4 000012e6: DUP2 000012e7: MSTORE 000012e8: PUSH1 0x01 000012ea: PUSH1 0x20 000012ec: SWAP1 000012ed: DUP2 000012ee: MSTORE 000012ef: PUSH1 0x40 000012f1: DUP1 000012f2: DUP4 000012f3: KECCAK256 000012f4: CALLER 000012f5: PUSH1 0x01 000012f7: PUSH1 0xa0 000012f9: PUSH1 0x02 000012fb: EXP 000012fc: SUB 000012fd: DUP2 000012fe: AND 000012ff: DUP6 00001300: MSTORE 00001301: SWAP3 00001302: MSTORE 00001303: SWAP1 00001304: SWAP2 00001305: KECCAK256 00001306: SLOAD 00001307: DUP5 00001308: SWAP2 00001309: SWAP1 0000130a: PUSH1 0xff 0000130c: AND 0000130d: ISZERO 0000130e: ISZERO 0000130f: PUSH2 0x1317 00001312: JUMPI 00001313: PUSH1 0x00 00001315: DUP1 00001316: REVERT 00001317: JUMPDEST 00001318: PUSH1 0x00 0000131a: DUP6 0000131b: DUP2 0000131c: MSTORE 0000131d: PUSH1 0x20 0000131f: DUP2 00001320: SWAP1 00001321: MSTORE 00001322: PUSH1 0x40 00001324: SWAP1 00001325: KECCAK256 00001326: PUSH1 0x03 00001328: ADD 00001329: SLOAD 0000132a: DUP6 0000132b: SWAP1 0000132c: PUSH1 0xff 0000132e: AND 0000132f: ISZERO 00001330: PUSH2 0x1338 00001333: JUMPI 00001334: PUSH1 0x00 00001336: DUP1 00001337: REVERT 00001338: JUMPDEST 00001339: PUSH2 0x1341 0000133c: DUP7 0000133d: PUSH2 0x0add 00001340: JUMP 00001341: JUMPDEST 00001342: ISZERO 00001343: PUSH2 0x1499 00001346: JUMPI 00001347: PUSH1 0x00 00001349: DUP7 0000134a: DUP2 0000134b: MSTORE 0000134c: PUSH1 0x20 0000134e: DUP2 0000134f: DUP2 00001350: MSTORE 00001351: PUSH1 0x40 00001353: SWAP2 00001354: DUP3 00001355: SWAP1 00001356: KECCAK256 00001357: PUSH1 0x03 00001359: DUP2 0000135a: ADD 0000135b: DUP1 0000135c: SLOAD 0000135d: PUSH1 0xff 0000135f: NOT 00001360: AND 00001361: PUSH1 0x01 00001363: SWAP1 00001364: DUP2 00001365: OR 00001366: SWAP1 00001367: SWAP2 00001368: SSTORE 00001369: DUP2 0000136a: SLOAD 0000136b: DUP2 0000136c: DUP4 0000136d: ADD 0000136e: SLOAD 0000136f: PUSH1 0x02 00001371: DUP1 00001372: DUP6 00001373: ADD 00001374: DUP1 00001375: SLOAD 00001376: SWAP6 00001377: SWAP13 00001378: POP 00001379: PUSH2 0x1428 0000137c: SWAP8 0000137d: PUSH1 0x01 0000137f: PUSH1 0xa0 00001381: PUSH1 0x02 00001383: EXP 00001384: SUB 00001385: SWAP1 00001386: SWAP5 00001387: AND 00001388: SWAP7 00001389: SWAP3 0000138a: SWAP6 0000138b: PUSH1 0x00 0000138d: NOT 0000138e: SWAP6 0000138f: DUP2 00001390: AND 00001391: ISZERO 00001392: PUSH2 0x0100 00001395: MUL 00001396: SWAP6 00001397: SWAP1 00001398: SWAP6 00001399: ADD 0000139a: SWAP1 0000139b: SWAP5 0000139c: AND 0000139d: DIV 0000139e: SWAP3 0000139f: SWAP2 000013a0: DUP4 000013a1: SWAP2 000013a2: PUSH1 0x1f 000013a4: DUP4 000013a5: ADD 000013a6: DUP2 000013a7: SWAP1 000013a8: DIV 000013a9: DUP2 000013aa: MUL 000013ab: ADD 000013ac: SWAP1 000013ad: MLOAD 000013ae: SWAP1 000013af: DUP2 000013b0: ADD 000013b1: PUSH1 0x40 000013b3: MSTORE 000013b4: DUP1 000013b5: SWAP3 000013b6: SWAP2 000013b7: SWAP1 000013b8: DUP2 000013b9: DUP2 000013ba: MSTORE 000013bb: PUSH1 0x20 000013bd: ADD 000013be: DUP3 000013bf: DUP1 000013c0: SLOAD 000013c1: PUSH1 0x01 000013c3: DUP2 000013c4: PUSH1 0x01 000013c6: AND 000013c7: ISZERO 000013c8: PUSH2 0x0100 000013cb: MUL 000013cc: SUB 000013cd: AND 000013ce: PUSH1 0x02 000013d0: SWAP1 000013d1: DIV 000013d2: DUP1 000013d3: ISZERO 000013d4: PUSH2 0x141e 000013d7: JUMPI 000013d8: DUP1 000013d9: PUSH1 0x1f 000013db: LT 000013dc: PUSH2 0x13f3 000013df: JUMPI 000013e0: PUSH2 0x0100 000013e3: DUP1 000013e4: DUP4 000013e5: SLOAD 000013e6: DIV 000013e7: MUL 000013e8: DUP4 000013e9: MSTORE 000013ea: SWAP2 000013eb: PUSH1 0x20 000013ed: ADD 000013ee: SWAP2 000013ef: PUSH2 0x141e 000013f2: JUMP 000013f3: JUMPDEST 000013f4: DUP3 000013f5: ADD 000013f6: SWAP2 000013f7: SWAP1 000013f8: PUSH1 0x00 000013fa: MSTORE 000013fb: PUSH1 0x20 000013fd: PUSH1 0x00 000013ff: KECCAK256 00001400: SWAP1 00001401: JUMPDEST 00001402: DUP2 00001403: SLOAD 00001404: DUP2 00001405: MSTORE 00001406: SWAP1 00001407: PUSH1 0x01 00001409: ADD 0000140a: SWAP1 0000140b: PUSH1 0x20 0000140d: ADD 0000140e: DUP1 0000140f: DUP4 00001410: GT 00001411: PUSH2 0x1401 00001414: JUMPI 00001415: DUP3 00001416: SWAP1 00001417: SUB 00001418: PUSH1 0x1f 0000141a: AND 0000141b: DUP3 0000141c: ADD 0000141d: SWAP2 0000141e: JUMPDEST 0000141f: POP 00001420: POP 00001421: POP 00001422: POP 00001423: POP 00001424: PUSH2 0x15a5 00001427: JUMP 00001428: JUMPDEST 00001429: ISZERO 0000142a: PUSH2 0x145f 0000142d: JUMPI 0000142e: DUP6 0000142f: PUSH32 0x33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed75 00001450: PUSH1 0x40 00001452: MLOAD 00001453: PUSH1 0x40 00001455: MLOAD 00001456: DUP1 00001457: SWAP2 00001458: SUB 00001459: SWAP1 0000145a: LOG2 0000145b: PUSH2 0x1499 0000145e: JUMP 0000145f: JUMPDEST 00001460: DUP6 00001461: PUSH32 0x526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b79236 00001482: PUSH1 0x40 00001484: MLOAD 00001485: PUSH1 0x40 00001487: MLOAD 00001488: DUP1 00001489: SWAP2 0000148a: SUB 0000148b: SWAP1 0000148c: LOG2 0000148d: PUSH1 0x03 0000148f: DUP6 00001490: ADD 00001491: DUP1 00001492: SLOAD 00001493: PUSH1 0xff 00001495: NOT 00001496: AND 00001497: SWAP1 00001498: SSTORE 00001499: JUMPDEST 0000149a: JUMPDEST 0000149b: JUMPDEST 0000149c: JUMPDEST 0000149d: POP 0000149e: JUMPDEST 0000149f: POP 000014a0: POP 000014a1: JUMPDEST 000014a2: POP 000014a3: POP 000014a4: POP 000014a5: JUMP 000014a6: JUMPDEST 000014a7: PUSH1 0x00 000014a9: DUP4 000014aa: PUSH1 0x01 000014ac: PUSH1 0xa0 000014ae: PUSH1 0x02 000014b0: EXP 000014b1: SUB 000014b2: DUP2 000014b3: AND 000014b4: ISZERO 000014b5: ISZERO 000014b6: PUSH2 0x14be 000014b9: JUMPI 000014ba: PUSH1 0x00 000014bc: DUP1 000014bd: REVERT 000014be: JUMPDEST 000014bf: PUSH1 0x05 000014c1: SLOAD 000014c2: SWAP2 000014c3: POP 000014c4: PUSH1 0x80 000014c6: PUSH1 0x40 000014c8: MLOAD 000014c9: SWAP1 000014ca: DUP2 000014cb: ADD 000014cc: PUSH1 0x40 000014ce: SWAP1 000014cf: DUP2 000014d0: MSTORE 000014d1: PUSH1 0x01 000014d3: PUSH1 0xa0 000014d5: PUSH1 0x02 000014d7: EXP 000014d8: SUB 000014d9: DUP8 000014da: AND 000014db: DUP3 000014dc: MSTORE 000014dd: PUSH1 0x20 000014df: DUP1 000014e0: DUP4 000014e1: ADD 000014e2: DUP8 000014e3: SWAP1 000014e4: MSTORE 000014e5: DUP2 000014e6: DUP4 000014e7: ADD 000014e8: DUP7 000014e9: SWAP1 000014ea: MSTORE 000014eb: PUSH1 0x00 000014ed: PUSH1 0x60 000014ef: DUP5 000014f0: ADD 000014f1: DUP2 000014f2: SWAP1 000014f3: MSTORE 000014f4: DUP6 000014f5: DUP2 000014f6: MSTORE 000014f7: SWAP1 000014f8: DUP2 000014f9: SWAP1 000014fa: MSTORE 000014fb: KECCAK256 000014fc: DUP2 000014fd: MLOAD 000014fe: DUP2 000014ff: SLOAD 00001500: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001515: NOT 00001516: AND 00001517: PUSH1 0x01 00001519: PUSH1 0xa0 0000151b: PUSH1 0x02 0000151d: EXP 0000151e: SUB 0000151f: SWAP2 00001520: SWAP1 00001521: SWAP2 00001522: AND 00001523: OR 00001524: DUP2 00001525: SSTORE 00001526: PUSH1 0x20 00001528: DUP3 00001529: ADD 0000152a: MLOAD 0000152b: DUP2 0000152c: PUSH1 0x01 0000152e: ADD 0000152f: SSTORE 00001530: PUSH1 0x40 00001532: DUP3 00001533: ADD 00001534: MLOAD 00001535: DUP2 00001536: PUSH1 0x02 00001538: ADD 00001539: SWAP1 0000153a: DUP1 0000153b: MLOAD 0000153c: PUSH2 0x1549 0000153f: SWAP3 00001540: SWAP2 00001541: PUSH1 0x20 00001543: ADD 00001544: SWAP1 00001545: PUSH2 0x1645 00001548: JUMP 00001549: JUMPDEST 0000154a: POP 0000154b: PUSH1 0x60 0000154d: DUP3 0000154e: ADD 0000154f: MLOAD 00001550: PUSH1 0x03 00001552: SWAP2 00001553: SWAP1 00001554: SWAP2 00001555: ADD 00001556: DUP1 00001557: SLOAD 00001558: PUSH1 0xff 0000155a: NOT 0000155b: AND 0000155c: SWAP2 0000155d: ISZERO 0000155e: ISZERO 0000155f: SWAP2 00001560: SWAP1 00001561: SWAP2 00001562: OR 00001563: SWAP1 00001564: SSTORE 00001565: POP 00001566: PUSH1 0x05 00001568: DUP1 00001569: SLOAD 0000156a: PUSH1 0x01 0000156c: ADD 0000156d: SWAP1 0000156e: SSTORE 0000156f: DUP2 00001570: PUSH32 0xc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e51 00001591: PUSH1 0x40 00001593: MLOAD 00001594: PUSH1 0x40 00001596: MLOAD 00001597: DUP1 00001598: SWAP2 00001599: SUB 0000159a: SWAP1 0000159b: LOG2 0000159c: JUMPDEST 0000159d: JUMPDEST 0000159e: POP 0000159f: SWAP4 000015a0: SWAP3 000015a1: POP 000015a2: POP 000015a3: POP 000015a4: JUMP 000015a5: JUMPDEST 000015a6: PUSH1 0x00 000015a8: DUP1 000015a9: PUSH1 0x40 000015ab: MLOAD 000015ac: PUSH1 0x20 000015ae: DUP5 000015af: ADD 000015b0: PUSH1 0x00 000015b2: DUP3 000015b3: DUP8 000015b4: DUP4 000015b5: DUP11 000015b6: DUP13 000015b7: PUSH2 0x8796 000015ba: GAS 000015bb: SUB 000015bc: CALL 000015bd: SWAP3 000015be: POP 000015bf: POP 000015c0: POP 000015c1: DUP1 000015c2: SWAP2 000015c3: POP 000015c4: JUMPDEST 000015c5: POP 000015c6: SWAP5 000015c7: SWAP4 000015c8: POP 000015c9: POP 000015ca: POP 000015cb: POP 000015cc: JUMP 000015cd: JUMPDEST 000015ce: DUP2 000015cf: SLOAD 000015d0: DUP2 000015d1: DUP4 000015d2: SSTORE 000015d3: DUP2 000015d4: DUP2 000015d5: ISZERO 000015d6: GT 000015d7: PUSH2 0x0813 000015da: JUMPI 000015db: PUSH1 0x00 000015dd: DUP4 000015de: DUP2 000015df: MSTORE 000015e0: PUSH1 0x20 000015e2: SWAP1 000015e3: KECCAK256 000015e4: PUSH2 0x0813 000015e7: SWAP2 000015e8: DUP2 000015e9: ADD 000015ea: SWAP1 000015eb: DUP4 000015ec: ADD 000015ed: PUSH2 0x16c4 000015f0: JUMP 000015f1: JUMPDEST 000015f2: JUMPDEST 000015f3: POP 000015f4: POP 000015f5: POP 000015f6: JUMP 000015f7: JUMPDEST 000015f8: DUP2 000015f9: SLOAD 000015fa: DUP2 000015fb: DUP4 000015fc: SSTORE 000015fd: DUP2 000015fe: DUP2 000015ff: ISZERO 00001600: GT 00001601: PUSH2 0x0813 00001604: JUMPI 00001605: PUSH1 0x00 00001607: DUP4 00001608: DUP2 00001609: MSTORE 0000160a: PUSH1 0x20 0000160c: SWAP1 0000160d: KECCAK256 0000160e: PUSH2 0x0813 00001611: SWAP2 00001612: DUP2 00001613: ADD 00001614: SWAP1 00001615: DUP4 00001616: ADD 00001617: PUSH2 0x16c4 0000161a: JUMP 0000161b: JUMPDEST 0000161c: JUMPDEST 0000161d: POP 0000161e: POP 0000161f: POP 00001620: JUMP 00001621: JUMPDEST 00001622: PUSH1 0x20 00001624: PUSH1 0x40 00001626: MLOAD 00001627: SWAP1 00001628: DUP2 00001629: ADD 0000162a: PUSH1 0x40 0000162c: MSTORE 0000162d: PUSH1 0x00 0000162f: DUP2 00001630: MSTORE 00001631: SWAP1 00001632: JUMP 00001633: JUMPDEST 00001634: PUSH1 0x20 00001636: PUSH1 0x40 00001638: MLOAD 00001639: SWAP1 0000163a: DUP2 0000163b: ADD 0000163c: PUSH1 0x40 0000163e: MSTORE 0000163f: PUSH1 0x00 00001641: DUP2 00001642: MSTORE 00001643: SWAP1 00001644: JUMP 00001645: JUMPDEST 00001646: DUP3 00001647: DUP1 00001648: SLOAD 00001649: PUSH1 0x01 0000164b: DUP2 0000164c: PUSH1 0x01 0000164e: AND 0000164f: ISZERO 00001650: PUSH2 0x0100 00001653: MUL 00001654: SUB 00001655: AND 00001656: PUSH1 0x02 00001658: SWAP1 00001659: DIV 0000165a: SWAP1 0000165b: PUSH1 0x00 0000165d: MSTORE 0000165e: PUSH1 0x20 00001660: PUSH1 0x00 00001662: KECCAK256 00001663: SWAP1 00001664: PUSH1 0x1f 00001666: ADD 00001667: PUSH1 0x20 00001669: SWAP1 0000166a: DIV 0000166b: DUP2 0000166c: ADD 0000166d: SWAP3 0000166e: DUP3 0000166f: PUSH1 0x1f 00001671: LT 00001672: PUSH2 0x1686 00001675: JUMPI 00001676: DUP1 00001677: MLOAD 00001678: PUSH1 0xff 0000167a: NOT 0000167b: AND 0000167c: DUP4 0000167d: DUP1 0000167e: ADD 0000167f: OR 00001680: DUP6 00001681: SSTORE 00001682: PUSH2 0x16b3 00001685: JUMP 00001686: JUMPDEST 00001687: DUP3 00001688: DUP1 00001689: ADD 0000168a: PUSH1 0x01 0000168c: ADD 0000168d: DUP6 0000168e: SSTORE 0000168f: DUP3 00001690: ISZERO 00001691: PUSH2 0x16b3 00001694: JUMPI 00001695: SWAP2 00001696: DUP3 00001697: ADD 00001698: JUMPDEST 00001699: DUP3 0000169a: DUP2 0000169b: GT 0000169c: ISZERO 0000169d: PUSH2 0x16b3 000016a0: JUMPI 000016a1: DUP3 000016a2: MLOAD 000016a3: DUP3 000016a4: SSTORE 000016a5: SWAP2 000016a6: PUSH1 0x20 000016a8: ADD 000016a9: SWAP2 000016aa: SWAP1 000016ab: PUSH1 0x01 000016ad: ADD 000016ae: SWAP1 000016af: PUSH2 0x1698 000016b2: JUMP 000016b3: JUMPDEST 000016b4: JUMPDEST 000016b5: POP 000016b6: PUSH2 0x16c0 000016b9: SWAP3 000016ba: SWAP2 000016bb: POP 000016bc: PUSH2 0x16c4 000016bf: JUMP 000016c0: JUMPDEST 000016c1: POP 000016c2: SWAP1 000016c3: JUMP 000016c4: JUMPDEST 000016c5: PUSH2 0x0c8a 000016c8: SWAP2 000016c9: SWAP1 000016ca: JUMPDEST 000016cb: DUP1 000016cc: DUP3 000016cd: GT 000016ce: ISZERO 000016cf: PUSH2 0x16c0 000016d2: JUMPI 000016d3: PUSH1 0x00 000016d5: DUP2 000016d6: SSTORE 000016d7: PUSH1 0x01 000016d9: ADD 000016da: PUSH2 0x16ca 000016dd: JUMP 000016de: JUMPDEST 000016df: POP 000016e0: SWAP1 000016e1: JUMP 000016e2: JUMPDEST 000016e3: SWAP1 000016e4: JUMP 000016e5: STOP 000016e6: LOG1 000016e7: PUSH6 0x627a7a723058 000016ee: KECCAK256 000016ef: UNKNOWN(0xBB) 000016f0: POP 000016f1: UNKNOWN(0xB5) 000016f2: PUSH20 0x80a5c91951c410be1c0fee3232edd0869fa5ab4e 00001707: UNKNOWN(0xE3) 00001708: UNKNOWN(0xC3) 00001709: UNKNOWN(0xBA) 0000170a: NOT 0000170b: COINBASE 0000170c: UNKNOWN(0x25) 0000170d: UNKNOWN(0xEC) 0000170e: UNKNOWN(0xE6) 0000170f: STOP 00001710: UNKNOWN(0x29)
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x29b9f8b135a9fc9b6b861871895c9cb9d81eb4258f0372e087e60f94f756a8b1
call_targets:
0x111cff45948819988857bbf1966a0399e0d1141e
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x29b9f8b135a9fc9b6b861871895c9cb9d81eb4258f0372e087e60f94f756a8b1",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x111cff45948819988857bbf1966a0399e0d1141e"
],
"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": "0x025e7c27",
"selector": "0x025e7c27",
"calldata_variants": [
"0x025e7c27",
"0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x173825d9",
"selector": "0x173825d9",
"calldata_variants": [
"0x173825d9",
"0x173825d90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x20ea8d86",
"selector": "0x20ea8d86",
"calldata_variants": [
"0x20ea8d86",
"0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2f54bf6e",
"selector": "0x2f54bf6e",
"calldata_variants": [
"0x2f54bf6e",
"0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3411c81c",
"selector": "0x3411c81c",
"calldata_variants": [
"0x3411c81c",
"0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x54741525",
"selector": "0x54741525",
"calldata_variants": [
"0x54741525",
"0x547415250000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7065cb48",
"selector": "0x7065cb48",
"calldata_variants": [
"0x7065cb48",
"0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x784547a7",
"selector": "0x784547a7",
"calldata_variants": [
"0x784547a7",
"0x784547a70000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5564,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x29b9f8b135a9fc9b6b861871895c9cb9d81eb4258f0372e087e60f94f756a8b1
call_targets:
0x111cff45948819988857bbf1966a0399e0d1141e
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x29b9f8b135a9fc9b6b861871895c9cb9d81eb4258f0372e087e60f94f756a8b1",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x111cff45948819988857bbf1966a0399e0d1141e"
],
"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": "0x025e7c27",
"selector": "0x025e7c27",
"calldata_variants": [
"0x025e7c27",
"0x025e7c270000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x173825d9",
"selector": "0x173825d9",
"calldata_variants": [
"0x173825d9",
"0x173825d90000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x20ea8d86",
"selector": "0x20ea8d86",
"calldata_variants": [
"0x20ea8d86",
"0x20ea8d860000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2f54bf6e",
"selector": "0x2f54bf6e",
"calldata_variants": [
"0x2f54bf6e",
"0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x3411c81c",
"selector": "0x3411c81c",
"calldata_variants": [
"0x3411c81c",
"0x3411c81c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x54741525",
"selector": "0x54741525",
"calldata_variants": [
"0x54741525",
"0x547415250000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7065cb48",
"selector": "0x7065cb48",
"calldata_variants": [
"0x7065cb48",
"0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x784547a7",
"selector": "0x784547a7",
"calldata_variants": [
"0x784547a7",
"0x784547a70000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 5564,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|