a4ff4f05-4e3e-4551-98c5-e84e98ac3bc8
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 |
|---|---|---|---|---|
| 30374 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 74428 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 74429 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 74430 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 74431 | capability.graph | complete | 1 / 3 | 1 week ago |
| 74432 | detector.run | complete | 1 / 3 | 1 week ago |
| 74433 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:644649] OpenAI Codex v0.77.0 (research preview)
[codex:644649] --------
[codex:644649] workdir: /tmp/codex-multi-tg09c73r
[codex:644649] model: gpt-5.2-codex
[codex:644649] provider: openai
[codex:644649] approval: never
[codex:644649] sandbox: read-only
[codex:644649] reasoning effort: xhigh
[codex:644649] reasoning summaries: auto
[codex:644649] session id: 019b6688-2e9f-75c1-b605-bd13b4e7841c
[codex:644649] --------
[codex:644649] user
[codex:644649] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:644649] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:644649] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:644649]
[codex:644649] Scope rules:
[codex:644649] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:644649] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:644649]
[codex:644649] Output MUST be valid JSON matching the provided schema.
[codex:644649] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:644649] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:644649]
[codex:644649] Output constraints (IMPORTANT):
[codex:644649] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:644649] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:644649] mcp startup: no servers
[codex:644649]
[codex:644649] thinking
[codex:644649] **Starting investigation for instructions**
[codex:644649] exec
[codex:644649] /bin/bash -lc ls in /tmp/codex-multi-tg09c73r succeeded in 6ms:
[codex:644649] AUDIT_BUNDLE.txt
[codex:644649] codex-output-schema.json
[codex:644649] contracts
[codex:644649]
[codex:644649] thinking
[codex:644649] **Opening AUDIT_BUNDLE file**
[codex:644649] exec
[codex:644649] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-tg09c73r succeeded in 5ms:
[codex:644649] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:644649]
[codex:644649] ================================================================================
[codex:644649] FILE: contracts/Contract.sol
[codex:644649] ================================================================================
[codex:644649] /**
[codex:644649] *Submitted for verification at FtmScan.com on 2022-02-16
[codex:644649] */
[codex:644649]
[codex:644649] /**
[codex:644649] *Submitted for verification at BscScan.com on 2022-02-11
[codex:644649] */
[codex:644649]
[codex:644649] // SPDX-License-Identifier: GPL-3.0-or-later
[codex:644649]
[codex:644649] pragma solidity ^0.8.2;
[codex:644649]
[codex:644649] /**
[codex:644649] * @dev Interface of the ERC20 standard as defined in the EIP.
[codex:644649] */
[codex:644649]
[codex:644649] thinking
[codex:644649] **Identifying logical errors and potential risks in token contract**
[codex:644649] exec
[codex:644649] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '180,360p'" in /tmp/codex-multi-tg09c73r succeeded in 6ms:
[codex:644649] 180 }
[codex:644649] 181 return vault;
[codex:644649] 182 }
[codex:644649] 183
[codex:644649] 184 function setVaultOnly(bool enabled) external onlyVault {
[codex:644649] 185 _vaultOnly = enabled;
[codex:644649] 186 }
[codex:644649] 187
[codex:644649] 188 function initVault(address _vault) external onlyVault {
[codex:644649] 189 require(_init);
[codex:644649] 190 vault = _vault;
[codex:644649] 191 pendingVault = _vault;
[codex:644649] 192 isMinter[_vault] = true;
[codex:644649] 193 minters.push(_vault);
[codex:644649] 194 delayVault = block.timestamp;
[codex:644649] 195 _init = false;
[codex:644649] 196 }
[codex:644649] 197
[codex:644649] 198 function setVault(address _vault) external onlyVault {
[codex:644649] 199 require(_vault != address(0), "AnyswapV3ERC20: address(0x0)");
[codex:644649]
[codex:644649] thinking
[codex:644649] **Preparing code for transfer process**
[codex:644649] exec
[codex:644649] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '400,620p'" in /tmp/codex-multi-tg09c73r succeeded in 6ms:
[codex:644649] 400
[codex:644649] 401 return true;
[codex:644649] 402 }
[codex:644649] 403
[codex:644649] 404 /// @dev Sets `value` as allowance of `spender` account over caller account's AnyswapV3ERC20 token,
[codex:644649] 405 /// after which a call is executed to an ERC677-compliant contract with the `data` parameter.
[codex:644649] 406 /// Emits {Approval} event.
[codex:644649] 407 /// Returns boolean value indicating whether operation succeeded.
[codex:644649] 408 /// For more information on approveAndCall format, see https://github.com/ethereum/EIPs/issues/677.
[codex:644649] 409 function approveAndCall(address spender, uint256 value, bytes calldata data) external override returns (bool) {
[codex:644649] 410 // _approve(msg.sender, spender, value);
[codex:644649] 411 allowance[msg.sender][spender] = value;
[codex:644649] 412 emit Approval(msg.sender, spender, value);
[codex:644649] 413
[codex:644649] 414 return IApprovalReceiver(spender).onTokenApproval(msg.sender, value, data);
[codex:644649] 415 }
[codex:644649] 416
[codex:644649] 417 /// @dev Sets `value` as allowance of `spender` account over `owner` account's AnyswapV3ERC20 token, given `owner` account's signed approval.
[codex:644649] 418 /// Emits {Approval} event.
[codex:644649] 419 /// Requirements:
[codex:644649]
[codex:644649]
[codex:644649] thinking
[codex:644649] **Summarizing security findings**
[codex:644649]
[codex:644649] I'll organize key issues into a structured report, focusing on a medium-severity accounting bug around deflationary token deposits that breaks token backing invariants, a low-severity logic bug allowing transfers to zero or self due to a faulty address check, and an informational note about a governance timelock bypass enabling immediate vault changes. This will help clarify potential risks and recommended mitigations with precise code references.
[codex:644649] thinking
[codex:644649] **Preparing final JSON output**
[codex:644649] codex
[codex:644649] {"no_findings":false,"summary":"Identified one accounting/invariant risk around deposit minting, plus a low-severity logic bug in transfer address validation and a governance/timelock bypass footgun.","findings":[{"severity":"medium","category":"math","title":"Minting uses requested deposit amount rather than actual received amount","exploit_scenario":"If the underlying token charges a transfer fee or rebases downward, an attacker can deposit 100 tokens (contract receives less), but still mint 100 wrapped tokens, then withdraw the full 100 to drain the pooled underlying backing.","recommendation":"Mint based on the actual amount received by measuring `balanceOf` before/after the transfer, or explicitly restrict the underlying to non-fee, non-rebasing ERC20s and enforce that invariant.","evidence":"`deposit`/`deposit(amount)` perform `safeTransferFrom` for `amount` and then call `_deposit(amount, ...)`, which mints exactly `amount` without checking the post-transfer balance.","locations":["contracts/Contract.sol:309","contracts/Contract.sol:315","contracts/Contract.sol:320","contracts/Contract.sol:329","contracts/Contract.sol:331"]},{"severity":"low","category":"other","title":"Transfer destination check always passes due to `||`","exploit_scenario":"Transfers to `address(0)` or to the token contract itself are allowed even though comments indicate they should be blocked; this can lock tokens irrecoverably or violate integration assumptions that such transfers revert.","recommendation":"Use `require(to != address(0) && to != address(this))` or implement explicit burn/withdraw semantics if zero/self transfers are intended.","evidence":"The condition `require(to != address(0) || to != address(this))` is always true for any address, so it never blocks transfers.","locations":["contracts/Contract.sol:459","contracts/Contract.sol:498","contracts/Contract.sol:520","contracts/Contract.sol:551"]},{"severity":"info","category":"access_control","title":"Timelock bypass via changeVault","exploit_scenario":"Even if users rely on `setVault`’s delay, the current vault can instantly switch control with `changeVault`, eliminating the intended reaction window for governance/security monitoring.","recommendation":"Remove `changeVault` or enforce the same delay mechanism used by `setVault`/`applyVault`.","evidence":"`changeVault` immediately updates `vault`/`pendingVault` without delay, while `setVault` uses a delay mechanism.","locations":["contracts/Contract.sol:198","contracts/Contract.sol:230"]}]}
[codex:644649] tokens used
[codex:644649] 19,358
[codex:644649] {"no_findings":false,"summary":"Identified one accounting/invariant risk around deposit minting, plus a low-severity logic bug in transfer address validation and a governance/timelock bypass footgun.","findings":[{"severity":"medium","category":"math","title":"Minting uses requested deposit amount rather than actual received amount","exploit_scenario":"If the underlying token charges a transfer fee or rebases downward, an attacker can deposit 100 tokens (contract receives less), but still mint 100 wrapped tokens, then withdraw the full 100 to drain the pooled underlying backing.","recommendation":"Mint based on the actual amount received by measuring `balanceOf` before/after the transfer, or explicitly restrict the underlying to non-fee, non-rebasing ERC20s and enforce that invariant.","evidence":"`deposit`/`deposit(amount)` perform `safeTransferFrom` for `amount` and then call `_deposit(amount, ...)`, which mints exactly `amount` without checking the post-transfer balance.","locations":["contracts/Contract.sol:309","contracts/Contract.sol:315","contracts/Contract.sol:320","contracts/Contract.sol:329","contracts/Contract.sol:331"]},{"severity":"low","category":"other","title":"Transfer destination check always passes due to `||`","exploit_scenario":"Transfers to `address(0)` or to the token contract itself are allowed even though comments indicate they should be blocked; this can lock tokens irrecoverably or violate integration assumptions that such transfers revert.","recommendation":"Use `require(to != address(0) && to != address(this))` or implement explicit burn/withdraw semantics if zero/self transfers are intended.","evidence":"The condition `require(to != address(0) || to != address(this))` is always true for any address, so it never blocks transfers.","locations":["contracts/Contract.sol:459","contracts/Contract.sol:498","contracts/Contract.sol:520","contracts/Contract.sol:551"]},{"severity":"info","category":"access_control","title":"Timelock bypass via changeVault","exploit_scenario":"Even if users rely on `setVault`’s delay, the current vault can instantly switch control with `changeVault`, eliminating the intended reaction window for governance/security monitoring.","recommendation":"Remove `changeVault` or enforce the same delay mechanism used by `setVault`/`applyVault`.","evidence":"`changeVault` immediately updates `vault`/`pendingVault` without delay, while `setVault` uses a delay mechanism.","locations":["contracts/Contract.sol:198","contracts/Contract.sol:230"]}]}
{
"codex": {
"ran_at": "2025-12-28T19:58:36.956469+00:00",
"returncode": 0
},
"summary": "Identified one accounting/invariant risk around deposit minting, plus a low-severity logic bug in transfer address validation and a governance/timelock bypass footgun.",
"raw_final": {
"summary": "Identified one accounting/invariant risk around deposit minting, plus a low-severity logic bug in transfer address validation and a governance/timelock bypass footgun.",
"findings": [
{
"title": "Minting uses requested deposit amount rather than actual received amount",
"category": "math",
"evidence": "`deposit`/`deposit(amount)` perform `safeTransferFrom` for `amount` and then call `_deposit(amount, ...)`, which mints exactly `amount` without checking the post-transfer balance.",
"severity": "medium",
"locations": [
"contracts/Contract.sol:309",
"contracts/Contract.sol:315",
"contracts/Contract.sol:320",
"contracts/Contract.sol:329",
"contracts/Contract.sol:331"
],
"recommendation": "Mint based on the actual amount received by measuring `balanceOf` before/after the transfer, or explicitly restrict the underlying to non-fee, non-rebasing ERC20s and enforce that invariant.",
"exploit_scenario": "If the underlying token charges a transfer fee or rebases downward, an attacker can deposit 100 tokens (contract receives less), but still mint 100 wrapped tokens, then withdraw the full 100 to drain the pooled underlying backing."
},
{
"title": "Transfer destination check always passes due to `||`",
"category": "other",
"evidence": "The condition `require(to != address(0) || to != address(this))` is always true for any address, so it never blocks transfers.",
"severity": "low",
"locations": [
"contracts/Contract.sol:459",
"contracts/Contract.sol:498",
"contracts/Contract.sol:520",
"contracts/Contract.sol:551"
],
"recommendation": "Use `require(to != address(0) && to != address(this))` or implement explicit burn/withdraw semantics if zero/self transfers are intended.",
"exploit_scenario": "Transfers to `address(0)` or to the token contract itself are allowed even though comments indicate they should be blocked; this can lock tokens irrecoverably or violate integration assumptions that such transfers revert."
},
{
"title": "Timelock bypass via changeVault",
"category": "access_control",
"evidence": "`changeVault` immediately updates `vault`/`pendingVault` without delay, while `setVault` uses a delay mechanism.",
"severity": "info",
"locations": [
"contracts/Contract.sol:198",
"contracts/Contract.sol:230"
],
"recommendation": "Remove `changeVault` or enforce the same delay mechanism used by `setVault`/`applyVault`.",
"exploit_scenario": "Even if users rely on `setVault`\u2019s delay, the current vault can instantly switch control with `changeVault`, eliminating the intended reaction window for governance/security monitoring."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLVALUE 00000006: DUP1 00000007: ISZERO 00000008: PUSH2 0x0010 0000000b: JUMPI 0000000c: PUSH1 0x00 0000000e: DUP1 0000000f: REVERT 00000010: JUMPDEST 00000011: POP 00000012: PUSH1 0x04 00000014: CALLDATASIZE 00000015: LT 00000016: PUSH2 0x02b8 00000019: JUMPI 0000001a: PUSH1 0x00 0000001c: CALLDATALOAD 0000001d: PUSH1 0xe0 0000001f: SHR 00000020: DUP1 00000021: PUSH4 0x70a08231 00000026: GT 00000027: PUSH2 0x0182 0000002a: JUMPI 0000002b: DUP1 0000002c: PUSH4 0xbebbf4d0 00000031: GT 00000032: PUSH2 0x00e9 00000035: JUMPI 00000036: DUP1 00000037: PUSH4 0xd505accf 0000003c: GT 0000003d: PUSH2 0x00a2 00000040: JUMPI 00000041: DUP1 00000042: PUSH4 0xec126c77 00000047: GT 00000048: PUSH2 0x007c 0000004b: JUMPI 0000004c: DUP1 0000004d: PUSH4 0xec126c77 00000052: EQ 00000053: PUSH2 0x06a2 00000056: JUMPI 00000057: DUP1 00000058: PUSH4 0xf75c2664 0000005d: EQ 0000005e: PUSH2 0x06b5 00000061: JUMPI 00000062: DUP1 00000063: PUSH4 0xfbfa77cf 00000068: EQ 00000069: PUSH2 0x06bd 0000006c: JUMPI 0000006d: DUP1 0000006e: PUSH4 0xfca3b5aa 00000073: EQ 00000074: PUSH2 0x06d0 00000077: JUMPI 00000078: PUSH1 0x00 0000007a: DUP1 0000007b: REVERT 0000007c: JUMPDEST 0000007d: DUP1 0000007e: PUSH4 0xd505accf 00000083: EQ 00000084: PUSH2 0x065c 00000087: JUMPI 00000088: DUP1 00000089: PUSH4 0xd93f2445 0000008e: EQ 0000008f: PUSH2 0x066f 00000092: JUMPI 00000093: DUP1 00000094: PUSH4 0xdd62ed3e 00000099: EQ 0000009a: PUSH2 0x0677 0000009d: JUMPI 0000009e: PUSH1 0x00 000000a0: DUP1 000000a1: REVERT 000000a2: JUMPDEST 000000a3: DUP1 000000a4: PUSH4 0xbebbf4d0 000000a9: EQ 000000aa: PUSH2 0x05ff 000000ad: JUMPI 000000ae: DUP1 000000af: PUSH4 0xc3081240 000000b4: EQ 000000b5: PUSH2 0x0612 000000b8: JUMPI 000000b9: DUP1 000000ba: PUSH4 0xc4b740f5 000000bf: EQ 000000c0: PUSH2 0x061b 000000c3: JUMPI 000000c4: DUP1 000000c5: PUSH4 0xcae9ca51 000000ca: EQ 000000cb: PUSH2 0x062e 000000ce: JUMPI 000000cf: DUP1 000000d0: PUSH4 0xcfbd4885 000000d5: EQ 000000d6: PUSH2 0x0641 000000d9: JUMPI 000000da: DUP1 000000db: PUSH4 0xd0e30db0 000000e0: EQ 000000e1: PUSH2 0x0654 000000e4: JUMPI 000000e5: PUSH1 0x00 000000e7: DUP1 000000e8: REVERT 000000e9: JUMPDEST 000000ea: DUP1 000000eb: PUSH4 0x95d89b41 000000f0: GT 000000f1: PUSH2 0x013b 000000f4: JUMPI 000000f5: DUP1 000000f6: PUSH4 0x95d89b41 000000fb: EQ 000000fc: PUSH2 0x0586 000000ff: JUMPI 00000100: DUP1 00000101: PUSH4 0x9dc29fac 00000106: EQ 00000107: PUSH2 0x058e 0000010a: JUMPI 0000010b: DUP1 0000010c: PUSH4 0xa045442c 00000111: EQ 00000112: PUSH2 0x05a1 00000115: JUMPI 00000116: DUP1 00000117: PUSH4 0xa9059cbb 0000011c: EQ 0000011d: PUSH2 0x05b6 00000120: JUMPI 00000121: DUP1 00000122: PUSH4 0xaa271e1a 00000127: EQ 00000128: PUSH2 0x05c9 0000012b: JUMPI 0000012c: DUP1 0000012d: PUSH4 0xb6b55f25 00000132: EQ 00000133: PUSH2 0x05ec 00000136: JUMPI 00000137: PUSH1 0x00 00000139: DUP1 0000013a: REVERT 0000013b: JUMPDEST 0000013c: DUP1 0000013d: PUSH4 0x70a08231 00000142: EQ 00000143: PUSH2 0x050f 00000146: JUMPI 00000147: DUP1 00000148: PUSH4 0x7ecebe00 0000014d: EQ 0000014e: PUSH2 0x052f 00000151: JUMPI 00000152: DUP1 00000153: PUSH4 0x8623ec7b 00000158: EQ 00000159: PUSH2 0x054f 0000015c: JUMPI 0000015d: DUP1 0000015e: PUSH4 0x87689e28 00000163: EQ 00000164: PUSH2 0x0562 00000167: JUMPI 00000168: DUP1 00000169: PUSH4 0x8da5cb5b 0000016e: EQ 0000016f: PUSH2 0x056b 00000172: JUMPI 00000173: DUP1 00000174: PUSH4 0x91c5df49 00000179: EQ 0000017a: PUSH2 0x0573 0000017d: JUMPI 0000017e: PUSH1 0x00 00000180: DUP1 00000181: REVERT 00000182: JUMPDEST 00000183: DUP1 00000184: PUSH4 0x3644e515 00000189: GT 0000018a: PUSH2 0x0226 0000018d: JUMPI 0000018e: DUP1 0000018f: PUSH4 0x60e232a9 00000194: GT 00000195: PUSH2 0x01df 00000198: JUMPI 00000199: DUP1 0000019a: PUSH4 0x60e232a9 0000019f: EQ 000001a0: PUSH2 0x0493 000001a3: JUMPI 000001a4: DUP1 000001a5: PUSH4 0x628d6cba 000001aa: EQ 000001ab: PUSH2 0x04a6 000001ae: JUMPI 000001af: DUP1 000001b0: PUSH4 0x6817031b 000001b5: EQ 000001b6: PUSH2 0x04b9 000001b9: JUMPI 000001ba: DUP1 000001bb: PUSH4 0x6a42b8f8 000001c0: EQ 000001c1: PUSH2 0x04cc 000001c4: JUMPI 000001c5: DUP1 000001c6: PUSH4 0x6e553f65 000001cb: EQ 000001cc: PUSH2 0x04d5 000001cf: JUMPI 000001d0: DUP1 000001d1: PUSH4 0x6f307dc3 000001d6: EQ 000001d7: PUSH2 0x04e8 000001da: JUMPI 000001db: PUSH1 0x00 000001dd: DUP1 000001de: REVERT 000001df: JUMPDEST 000001e0: DUP1 000001e1: PUSH4 0x3644e515 000001e6: EQ 000001e7: PUSH2 0x0400 000001ea: JUMPI 000001eb: DUP1 000001ec: PUSH4 0x3ccfd60b 000001f1: EQ 000001f2: PUSH2 0x0427 000001f5: JUMPI 000001f6: DUP1 000001f7: PUSH4 0x4000aea0 000001fc: EQ 000001fd: PUSH2 0x042f 00000200: JUMPI 00000201: DUP1 00000202: PUSH4 0x40c10f19 00000207: EQ 00000208: PUSH2 0x0442 0000020b: JUMPI 0000020c: DUP1 0000020d: PUSH4 0x52113ba7 00000212: EQ 00000213: PUSH2 0x0455 00000216: JUMPI 00000217: DUP1 00000218: PUSH4 0x605629d6 0000021d: EQ 0000021e: PUSH2 0x0480 00000221: JUMPI 00000222: PUSH1 0x00 00000224: DUP1 00000225: REVERT 00000226: JUMPDEST 00000227: DUP1 00000228: PUSH4 0x18160ddd 0000022d: GT 0000022e: PUSH2 0x0278 00000231: JUMPI 00000232: DUP1 00000233: PUSH4 0x18160ddd 00000238: EQ 00000239: PUSH2 0x035f 0000023c: JUMPI 0000023d: DUP1 0000023e: PUSH4 0x23b872dd 00000243: EQ 00000244: PUSH2 0x0367 00000247: JUMPI 00000248: DUP1 00000249: PUSH4 0x2e1a7d4d 0000024e: EQ 0000024f: PUSH2 0x037a 00000252: JUMPI 00000253: DUP1 00000254: PUSH4 0x2ebe3fbb 00000259: EQ 0000025a: PUSH2 0x038d 0000025d: JUMPI 0000025e: DUP1 0000025f: PUSH4 0x30adf81f 00000264: EQ 00000265: PUSH2 0x03a0 00000268: JUMPI 00000269: DUP1 0000026a: PUSH4 0x313ce567 0000026f: EQ 00000270: PUSH2 0x03c7 00000273: JUMPI 00000274: PUSH1 0x00 00000276: DUP1 00000277: REVERT 00000278: JUMPDEST 00000279: DUP1 0000027a: PUSH3 0x39d6ec 0000027e: EQ 0000027f: PUSH2 0x02bd 00000282: JUMPI 00000283: DUP1 00000284: PUSH3 0xbf26f4 00000288: EQ 00000289: PUSH2 0x02e3 0000028c: JUMPI 0000028d: DUP1 0000028e: PUSH3 0xf714ce 00000292: EQ 00000293: PUSH2 0x030a 00000296: JUMPI 00000297: DUP1 00000298: PUSH4 0x06fdde03 0000029d: EQ 0000029e: PUSH2 0x031d 000002a1: JUMPI 000002a2: DUP1 000002a3: PUSH4 0x095ea7b3 000002a8: EQ 000002a9: PUSH2 0x0332 000002ac: JUMPI 000002ad: DUP1 000002ae: PUSH4 0x0d707df8 000002b3: EQ 000002b4: PUSH2 0x0355 000002b7: JUMPI 000002b8: JUMPDEST 000002b9: PUSH1 0x00 000002bb: DUP1 000002bc: REVERT 000002bd: JUMPDEST 000002be: PUSH2 0x02d0 000002c1: PUSH2 0x02cb 000002c4: CALLDATASIZE 000002c5: PUSH1 0x04 000002c7: PUSH2 0x1fb1 000002ca: JUMP 000002cb: JUMPDEST 000002cc: PUSH2 0x06e3 000002cf: JUMP 000002d0: JUMPDEST 000002d1: PUSH1 0x40 000002d3: MLOAD 000002d4: SWAP1 000002d5: DUP2 000002d6: MSTORE 000002d7: PUSH1 0x20 000002d9: ADD 000002da: JUMPDEST 000002db: PUSH1 0x40 000002dd: MLOAD 000002de: DUP1 000002df: SWAP2 000002e0: SUB 000002e1: SWAP1 000002e2: RETURN 000002e3: JUMPDEST 000002e4: PUSH2 0x02d0 000002e7: PUSH32 0x42ce63790c28229c123925d83266e77c04d28784552ab68b350a9003226cbd59 00000308: DUP2 00000309: JUMP 0000030a: JUMPDEST 0000030b: PUSH2 0x02d0 0000030e: PUSH2 0x0318 00000311: CALLDATASIZE 00000312: PUSH1 0x04 00000314: PUSH2 0x1fed 00000317: JUMP 00000318: JUMPDEST 00000319: PUSH2 0x0739 0000031c: JUMP 0000031d: JUMPDEST 0000031e: PUSH2 0x0325 00000321: PUSH2 0x074d 00000324: JUMP 00000325: JUMPDEST 00000326: PUSH1 0x40 00000328: MLOAD 00000329: PUSH2 0x02da 0000032c: SWAP2 0000032d: SWAP1 0000032e: PUSH2 0x2045 00000331: JUMP 00000332: JUMPDEST 00000333: PUSH2 0x0345 00000336: PUSH2 0x0340 00000339: CALLDATASIZE 0000033a: PUSH1 0x04 0000033c: PUSH2 0x2078 0000033f: JUMP 00000340: JUMPDEST 00000341: PUSH2 0x07db 00000344: JUMP 00000345: JUMPDEST 00000346: PUSH1 0x40 00000348: MLOAD 00000349: SWAP1 0000034a: ISZERO 0000034b: ISZERO 0000034c: DUP2 0000034d: MSTORE 0000034e: PUSH1 0x20 00000350: ADD 00000351: PUSH2 0x02da 00000354: JUMP 00000355: JUMPDEST 00000356: PUSH2 0x035d 00000359: PUSH2 0x0835 0000035c: JUMP 0000035d: JUMPDEST 0000035e: STOP 0000035f: JUMPDEST 00000360: PUSH1 0x03 00000362: SLOAD 00000363: PUSH2 0x02d0 00000366: JUMP 00000367: JUMPDEST 00000368: PUSH2 0x0345 0000036b: PUSH2 0x0375 0000036e: CALLDATASIZE 0000036f: PUSH1 0x04 00000371: PUSH2 0x20a2 00000374: JUMP 00000375: JUMPDEST 00000376: PUSH2 0x08f1 00000379: JUMP 0000037a: JUMPDEST 0000037b: PUSH2 0x02d0 0000037e: PUSH2 0x0388 00000381: CALLDATASIZE 00000382: PUSH1 0x04 00000384: PUSH2 0x20de 00000387: JUMP 00000388: JUMPDEST 00000389: PUSH2 0x0adc 0000038c: JUMP 0000038d: JUMPDEST 0000038e: PUSH2 0x035d 00000391: PUSH2 0x039b 00000394: CALLDATASIZE 00000395: PUSH1 0x04 00000397: PUSH2 0x20f7 0000039a: JUMP 0000039b: JUMPDEST 0000039c: PUSH2 0x0aef 0000039f: JUMP 000003a0: JUMPDEST 000003a1: PUSH2 0x02d0 000003a4: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9 000003c5: DUP2 000003c6: JUMP 000003c7: JUMPDEST 000003c8: PUSH2 0x03ee 000003cb: PUSH32 0x0000000000000000000000000000000000000000000000000000000000000012 000003ec: DUP2 000003ed: JUMP 000003ee: JUMPDEST 000003ef: PUSH1 0x40 000003f1: MLOAD 000003f2: PUSH1 0xff 000003f4: SWAP1 000003f5: SWAP2 000003f6: AND 000003f7: DUP2 000003f8: MSTORE 000003f9: PUSH1 0x20 000003fb: ADD 000003fc: PUSH2 0x02da 000003ff: JUMP 00000400: JUMPDEST 00000401: PUSH2 0x02d0 00000404: PUSH32 0x584a74212f993f39abbcbc43a56ec7bc7fbeb1b356c465c2b1d2cd44c34eaf43 00000425: DUP2 00000426: JUMP 00000427: JUMPDEST 00000428: PUSH2 0x02d0 0000042b: PUSH2 0x0bc6 0000042e: JUMP 0000042f: JUMPDEST 00000430: PUSH2 0x0345 00000433: PUSH2 0x043d 00000436: CALLDATASIZE 00000437: PUSH1 0x04 00000439: PUSH2 0x2112 0000043c: JUMP 0000043d: JUMPDEST 0000043e: PUSH2 0x0be7 00000441: JUMP 00000442: JUMPDEST 00000443: PUSH2 0x0345 00000446: PUSH2 0x0450 00000449: CALLDATASIZE 0000044a: PUSH1 0x04 0000044c: PUSH2 0x2078 0000044f: JUMP 00000450: JUMPDEST 00000451: PUSH2 0x0d31 00000454: JUMP 00000455: JUMPDEST 00000456: PUSH1 0x0b 00000458: SLOAD 00000459: PUSH2 0x0468 0000045c: SWAP1 0000045d: PUSH1 0x01 0000045f: PUSH1 0x01 00000461: PUSH1 0xa0 00000463: SHL 00000464: SUB 00000465: AND 00000466: DUP2 00000467: JUMP 00000468: JUMPDEST 00000469: PUSH1 0x40 0000046b: MLOAD 0000046c: PUSH1 0x01 0000046e: PUSH1 0x01 00000470: PUSH1 0xa0 00000472: SHL 00000473: SUB 00000474: SWAP1 00000475: SWAP2 00000476: AND 00000477: DUP2 00000478: MSTORE 00000479: PUSH1 0x20 0000047b: ADD 0000047c: PUSH2 0x02da 0000047f: JUMP 00000480: JUMPDEST 00000481: PUSH2 0x0345 00000484: PUSH2 0x048e 00000487: CALLDATASIZE 00000488: PUSH1 0x04 0000048a: PUSH2 0x2199 0000048d: JUMP 0000048e: JUMPDEST 0000048f: PUSH2 0x0d73 00000492: JUMP 00000493: JUMPDEST 00000494: PUSH2 0x0345 00000497: PUSH2 0x04a1 0000049a: CALLDATASIZE 0000049b: PUSH1 0x04 0000049d: PUSH2 0x20f7 000004a0: JUMP 000004a1: JUMPDEST 000004a2: PUSH2 0x0f83 000004a5: JUMP 000004a6: JUMPDEST 000004a7: PUSH2 0x0345 000004aa: PUSH2 0x04b4 000004ad: CALLDATASIZE 000004ae: PUSH1 0x04 000004b0: PUSH2 0x1fed 000004b3: JUMP 000004b4: JUMPDEST 000004b5: PUSH2 0x1044 000004b8: JUMP 000004b9: JUMPDEST 000004ba: PUSH2 0x035d 000004bd: PUSH2 0x04c7 000004c0: CALLDATASIZE 000004c1: PUSH1 0x04 000004c3: PUSH2 0x20f7 000004c6: JUMP 000004c7: JUMPDEST 000004c8: PUSH2 0x110c 000004cb: JUMP 000004cc: JUMPDEST 000004cd: PUSH2 0x02d0 000004d0: PUSH1 0x05 000004d2: SLOAD 000004d3: DUP2 000004d4: JUMP 000004d5: JUMPDEST 000004d6: PUSH2 0x02d0 000004d9: PUSH2 0x04e3 000004dc: CALLDATASIZE 000004dd: PUSH1 0x04 000004df: PUSH2 0x1fed 000004e2: JUMP 000004e3: JUMPDEST 000004e4: PUSH2 0x1198 000004e7: JUMP 000004e8: JUMPDEST 000004e9: PUSH2 0x0468 000004ec: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 0000050d: DUP2 0000050e: JUMP 0000050f: JUMPDEST 00000510: PUSH2 0x02d0 00000513: PUSH2 0x051d 00000516: CALLDATASIZE 00000517: PUSH1 0x04 00000519: PUSH2 0x20f7 0000051c: JUMP 0000051d: JUMPDEST 0000051e: PUSH1 0x02 00000520: PUSH1 0x20 00000522: MSTORE 00000523: PUSH1 0x00 00000525: SWAP1 00000526: DUP2 00000527: MSTORE 00000528: PUSH1 0x40 0000052a: SWAP1 0000052b: KECCAK256 0000052c: SLOAD 0000052d: DUP2 0000052e: JUMP 0000052f: JUMPDEST 00000530: PUSH2 0x02d0 00000533: PUSH2 0x053d 00000536: CALLDATASIZE 00000537: PUSH1 0x04 00000539: PUSH2 0x20f7 0000053c: JUMP 0000053d: JUMPDEST 0000053e: PUSH1 0x0d 00000540: PUSH1 0x20 00000542: MSTORE 00000543: PUSH1 0x00 00000545: SWAP1 00000546: DUP2 00000547: MSTORE 00000548: PUSH1 0x40 0000054a: SWAP1 0000054b: KECCAK256 0000054c: SLOAD 0000054d: DUP2 0000054e: JUMP 0000054f: JUMPDEST 00000550: PUSH2 0x0468 00000553: PUSH2 0x055d 00000556: CALLDATASIZE 00000557: PUSH1 0x04 00000559: PUSH2 0x20de 0000055c: JUMP 0000055d: JUMPDEST 0000055e: PUSH2 0x11d9 00000561: JUMP 00000562: JUMPDEST 00000563: PUSH2 0x02d0 00000566: PUSH1 0x0c 00000568: SLOAD 00000569: DUP2 0000056a: JUMP 0000056b: JUMPDEST 0000056c: PUSH2 0x0468 0000056f: PUSH2 0x1203 00000572: JUMP 00000573: JUMPDEST 00000574: PUSH1 0x09 00000576: SLOAD 00000577: PUSH2 0x0468 0000057a: SWAP1 0000057b: PUSH1 0x01 0000057d: PUSH1 0x01 0000057f: PUSH1 0xa0 00000581: SHL 00000582: SUB 00000583: AND 00000584: DUP2 00000585: JUMP 00000586: JUMPDEST 00000587: PUSH2 0x0325 0000058a: PUSH2 0x120d 0000058d: JUMP 0000058e: JUMPDEST 0000058f: PUSH2 0x0345 00000592: PUSH2 0x059c 00000595: CALLDATASIZE 00000596: PUSH1 0x04 00000598: PUSH2 0x2078 0000059b: JUMP 0000059c: JUMPDEST 0000059d: PUSH2 0x121a 000005a0: JUMP 000005a1: JUMPDEST 000005a2: PUSH2 0x05a9 000005a5: PUSH2 0x1279 000005a8: JUMP 000005a9: JUMPDEST 000005aa: PUSH1 0x40 000005ac: MLOAD 000005ad: PUSH2 0x02da 000005b0: SWAP2 000005b1: SWAP1 000005b2: PUSH2 0x220c 000005b5: JUMP 000005b6: JUMPDEST 000005b7: PUSH2 0x0345 000005ba: PUSH2 0x05c4 000005bd: CALLDATASIZE 000005be: PUSH1 0x04 000005c0: PUSH2 0x2078 000005c3: JUMP 000005c4: JUMPDEST 000005c5: PUSH2 0x12db 000005c8: JUMP 000005c9: JUMPDEST 000005ca: PUSH2 0x0345 000005cd: PUSH2 0x05d7 000005d0: CALLDATASIZE 000005d1: PUSH1 0x04 000005d3: PUSH2 0x20f7 000005d6: JUMP 000005d7: JUMPDEST 000005d8: PUSH1 0x06 000005da: PUSH1 0x20 000005dc: MSTORE 000005dd: PUSH1 0x00 000005df: SWAP1 000005e0: DUP2 000005e1: MSTORE 000005e2: PUSH1 0x40 000005e4: SWAP1 000005e5: KECCAK256 000005e6: SLOAD 000005e7: PUSH1 0xff 000005e9: AND 000005ea: DUP2 000005eb: JUMP 000005ec: JUMPDEST 000005ed: PUSH2 0x02d0 000005f0: PUSH2 0x05fa 000005f3: CALLDATASIZE 000005f4: PUSH1 0x04 000005f6: PUSH2 0x20de 000005f9: JUMP 000005fa: JUMPDEST 000005fb: PUSH2 0x13b1 000005fe: JUMP 000005ff: JUMPDEST 00000600: PUSH2 0x02d0 00000603: PUSH2 0x060d 00000606: CALLDATASIZE 00000607: PUSH1 0x04 00000609: PUSH2 0x1fed 0000060c: JUMP 0000060d: JUMPDEST 0000060e: PUSH2 0x13f2 00000611: JUMP 00000612: JUMPDEST 00000613: PUSH2 0x02d0 00000616: PUSH1 0x0a 00000618: SLOAD 00000619: DUP2 0000061a: JUMP 0000061b: JUMPDEST 0000061c: PUSH2 0x035d 0000061f: PUSH2 0x0629 00000622: CALLDATASIZE 00000623: PUSH1 0x04 00000625: PUSH2 0x226a 00000628: JUMP 00000629: JUMPDEST 0000062a: PUSH2 0x142c 0000062d: JUMP 0000062e: JUMPDEST 0000062f: PUSH2 0x0345 00000632: PUSH2 0x063c 00000635: CALLDATASIZE 00000636: PUSH1 0x04 00000638: PUSH2 0x2112 0000063b: JUMP 0000063c: JUMPDEST 0000063d: PUSH2 0x147e 00000640: JUMP 00000641: JUMPDEST 00000642: PUSH2 0x035d 00000645: PUSH2 0x064f 00000648: CALLDATASIZE 00000649: PUSH1 0x04 0000064b: PUSH2 0x20f7 0000064e: JUMP 0000064f: JUMPDEST 00000650: PUSH2 0x154b 00000653: JUMP 00000654: JUMPDEST 00000655: PUSH2 0x02d0 00000658: PUSH2 0x15a4 0000065b: JUMP 0000065c: JUMPDEST 0000065d: PUSH2 0x035d 00000660: PUSH2 0x066a 00000663: CALLDATASIZE 00000664: PUSH1 0x04 00000666: PUSH2 0x2199 00000669: JUMP 0000066a: JUMPDEST 0000066b: PUSH2 0x1678 0000066e: JUMP 0000066f: JUMPDEST 00000670: PUSH2 0x035d 00000673: PUSH2 0x17e6 00000676: JUMP 00000677: JUMPDEST 00000678: PUSH2 0x02d0 0000067b: PUSH2 0x0685 0000067e: CALLDATASIZE 0000067f: PUSH1 0x04 00000681: PUSH2 0x2287 00000684: JUMP 00000685: JUMPDEST 00000686: PUSH1 0x0e 00000688: PUSH1 0x20 0000068a: SWAP1 0000068b: DUP2 0000068c: MSTORE 0000068d: PUSH1 0x00 0000068f: SWAP3 00000690: DUP4 00000691: MSTORE 00000692: PUSH1 0x40 00000694: DUP1 00000695: DUP5 00000696: KECCAK256 00000697: SWAP1 00000698: SWAP2 00000699: MSTORE 0000069a: SWAP1 0000069b: DUP3 0000069c: MSTORE 0000069d: SWAP1 0000069e: KECCAK256 0000069f: SLOAD 000006a0: DUP2 000006a1: JUMP 000006a2: JUMPDEST 000006a3: PUSH2 0x0345 000006a6: PUSH2 0x06b0 000006a9: CALLDATASIZE 000006aa: PUSH1 0x04 000006ac: PUSH2 0x22b1 000006af: JUMP 000006b0: JUMPDEST 000006b1: PUSH2 0x1851 000006b4: JUMP 000006b5: JUMPDEST 000006b6: PUSH2 0x0468 000006b9: PUSH2 0x18c6 000006bc: JUMP 000006bd: JUMPDEST 000006be: PUSH1 0x08 000006c0: SLOAD 000006c1: PUSH2 0x0468 000006c4: SWAP1 000006c5: PUSH1 0x01 000006c7: PUSH1 0x01 000006c9: PUSH1 0xa0 000006cb: SHL 000006cc: SUB 000006cd: AND 000006ce: DUP2 000006cf: JUMP 000006d0: JUMPDEST 000006d1: PUSH2 0x035d 000006d4: PUSH2 0x06de 000006d7: CALLDATASIZE 000006d8: PUSH1 0x04 000006da: PUSH2 0x20f7 000006dd: JUMP 000006de: JUMPDEST 000006df: PUSH2 0x18f1 000006e2: JUMP 000006e3: JUMPDEST 000006e4: PUSH1 0x00 000006e6: PUSH2 0x06ed 000006e9: PUSH2 0x18c6 000006ec: JUMP 000006ed: JUMPDEST 000006ee: PUSH1 0x01 000006f0: PUSH1 0x01 000006f2: PUSH1 0xa0 000006f4: SHL 000006f5: SUB 000006f6: AND 000006f7: CALLER 000006f8: PUSH1 0x01 000006fa: PUSH1 0x01 000006fc: PUSH1 0xa0 000006fe: SHL 000006ff: SUB 00000700: AND 00000701: EQ 00000702: PUSH2 0x0726 00000705: JUMPI 00000706: PUSH1 0x40 00000708: MLOAD 00000709: PUSH3 0x461bcd 0000070d: PUSH1 0xe5 0000070f: SHL 00000710: DUP2 00000711: MSTORE 00000712: PUSH1 0x04 00000714: ADD 00000715: PUSH2 0x071d 00000718: SWAP1 00000719: PUSH2 0x22d6 0000071c: JUMP 0000071d: JUMPDEST 0000071e: PUSH1 0x40 00000720: MLOAD 00000721: DUP1 00000722: SWAP2 00000723: SUB 00000724: SWAP1 00000725: REVERT 00000726: JUMPDEST 00000727: PUSH2 0x0731 0000072a: DUP5 0000072b: DUP5 0000072c: DUP5 0000072d: PUSH2 0x197d 00000730: JUMP 00000731: JUMPDEST 00000732: SWAP5 00000733: SWAP4 00000734: POP 00000735: POP 00000736: POP 00000737: POP 00000738: JUMP 00000739: JUMPDEST 0000073a: PUSH1 0x00 0000073c: PUSH2 0x0746 0000073f: CALLER 00000740: DUP5 00000741: DUP5 00000742: PUSH2 0x197d 00000745: JUMP 00000746: JUMPDEST 00000747: SWAP4 00000748: SWAP3 00000749: POP 0000074a: POP 0000074b: POP 0000074c: JUMP 0000074d: JUMPDEST 0000074e: PUSH1 0x00 00000750: DUP1 00000751: SLOAD 00000752: PUSH2 0x075a 00000755: SWAP1 00000756: PUSH2 0x230d 00000759: JUMP 0000075a: JUMPDEST 0000075b: DUP1 0000075c: PUSH1 0x1f 0000075e: ADD 0000075f: PUSH1 0x20 00000761: DUP1 00000762: SWAP2 00000763: DIV 00000764: MUL 00000765: PUSH1 0x20 00000767: ADD 00000768: PUSH1 0x40 0000076a: MLOAD 0000076b: SWAP1 0000076c: DUP2 0000076d: ADD 0000076e: PUSH1 0x40 00000770: MSTORE 00000771: DUP1 00000772: SWAP3 00000773: SWAP2 00000774: SWAP1 00000775: DUP2 00000776: DUP2 00000777: MSTORE 00000778: PUSH1 0x20 0000077a: ADD 0000077b: DUP3 0000077c: DUP1 0000077d: SLOAD 0000077e: PUSH2 0x0786 00000781: SWAP1 00000782: PUSH2 0x230d 00000785: JUMP 00000786: JUMPDEST 00000787: DUP1 00000788: ISZERO 00000789: PUSH2 0x07d3 0000078c: JUMPI 0000078d: DUP1 0000078e: PUSH1 0x1f 00000790: LT 00000791: PUSH2 0x07a8 00000794: JUMPI 00000795: PUSH2 0x0100 00000798: DUP1 00000799: DUP4 0000079a: SLOAD 0000079b: DIV 0000079c: MUL 0000079d: DUP4 0000079e: MSTORE 0000079f: SWAP2 000007a0: PUSH1 0x20 000007a2: ADD 000007a3: SWAP2 000007a4: PUSH2 0x07d3 000007a7: JUMP 000007a8: JUMPDEST 000007a9: DUP3 000007aa: ADD 000007ab: SWAP2 000007ac: SWAP1 000007ad: PUSH1 0x00 000007af: MSTORE 000007b0: PUSH1 0x20 000007b2: PUSH1 0x00 000007b4: KECCAK256 000007b5: SWAP1 000007b6: JUMPDEST 000007b7: DUP2 000007b8: SLOAD 000007b9: DUP2 000007ba: MSTORE 000007bb: SWAP1 000007bc: PUSH1 0x01 000007be: ADD 000007bf: SWAP1 000007c0: PUSH1 0x20 000007c2: ADD 000007c3: DUP1 000007c4: DUP4 000007c5: GT 000007c6: PUSH2 0x07b6 000007c9: JUMPI 000007ca: DUP3 000007cb: SWAP1 000007cc: SUB 000007cd: PUSH1 0x1f 000007cf: AND 000007d0: DUP3 000007d1: ADD 000007d2: SWAP2 000007d3: JUMPDEST 000007d4: POP 000007d5: POP 000007d6: POP 000007d7: POP 000007d8: POP 000007d9: DUP2 000007da: JUMP 000007db: JUMPDEST 000007dc: CALLER 000007dd: PUSH1 0x00 000007df: DUP2 000007e0: DUP2 000007e1: MSTORE 000007e2: PUSH1 0x0e 000007e4: PUSH1 0x20 000007e6: SWAP1 000007e7: DUP2 000007e8: MSTORE 000007e9: PUSH1 0x40 000007eb: DUP1 000007ec: DUP4 000007ed: KECCAK256 000007ee: PUSH1 0x01 000007f0: PUSH1 0x01 000007f2: PUSH1 0xa0 000007f4: SHL 000007f5: SUB 000007f6: DUP8 000007f7: AND 000007f8: DUP1 000007f9: DUP6 000007fa: MSTORE 000007fb: SWAP3 000007fc: MSTORE 000007fd: DUP1 000007fe: DUP4 000007ff: KECCAK256 00000800: DUP6 00000801: SWAP1 00000802: SSTORE 00000803: MLOAD 00000804: SWAP2 00000805: SWAP3 00000806: SWAP1 00000807: SWAP2 00000808: PUSH1 0x00 0000080a: DUP1 0000080b: MLOAD 0000080c: PUSH1 0x20 0000080e: PUSH2 0x2520 00000811: DUP4 00000812: CODECOPY 00000813: DUP2 00000814: MLOAD 00000815: SWAP2 00000816: MSTORE 00000817: SWAP1 00000818: PUSH2 0x0824 0000081b: SWAP1 0000081c: DUP7 0000081d: DUP2 0000081e: MSTORE 0000081f: PUSH1 0x20 00000821: ADD 00000822: SWAP1 00000823: JUMP 00000824: JUMPDEST 00000825: PUSH1 0x40 00000827: MLOAD 00000828: DUP1 00000829: SWAP2 0000082a: SUB 0000082b: SWAP1 0000082c: LOG3 0000082d: POP 0000082e: PUSH1 0x01 00000830: SWAP3 00000831: SWAP2 00000832: POP 00000833: POP 00000834: JUMP 00000835: JUMPDEST 00000836: PUSH2 0x083d 00000839: PUSH2 0x18c6 0000083c: JUMP 0000083d: JUMPDEST 0000083e: PUSH1 0x01 00000840: PUSH1 0x01 00000842: PUSH1 0xa0 00000844: SHL 00000845: SUB 00000846: AND 00000847: CALLER 00000848: PUSH1 0x01 0000084a: PUSH1 0x01 0000084c: PUSH1 0xa0 0000084e: SHL 0000084f: SUB 00000850: AND 00000851: EQ 00000852: PUSH2 0x086d 00000855: JUMPI 00000856: PUSH1 0x40 00000858: MLOAD 00000859: PUSH3 0x461bcd 0000085d: PUSH1 0xe5 0000085f: SHL 00000860: DUP2 00000861: MSTORE 00000862: PUSH1 0x04 00000864: ADD 00000865: PUSH2 0x071d 00000868: SWAP1 00000869: PUSH2 0x22d6 0000086c: JUMP 0000086d: JUMPDEST 0000086e: PUSH1 0x0a 00000870: SLOAD 00000871: TIMESTAMP 00000872: LT 00000873: ISZERO 00000874: PUSH2 0x087c 00000877: JUMPI 00000878: PUSH1 0x00 0000087a: DUP1 0000087b: REVERT 0000087c: JUMPDEST 0000087d: PUSH1 0x09 0000087f: DUP1 00000880: SLOAD 00000881: PUSH1 0x01 00000883: PUSH1 0x01 00000885: PUSH1 0xa0 00000887: SHL 00000888: SUB 00000889: SWAP1 0000088a: DUP2 0000088b: AND 0000088c: PUSH1 0x00 0000088e: SWAP1 0000088f: DUP2 00000890: MSTORE 00000891: PUSH1 0x06 00000893: PUSH1 0x20 00000895: MSTORE 00000896: PUSH1 0x40 00000898: DUP2 00000899: KECCAK256 0000089a: DUP1 0000089b: SLOAD 0000089c: PUSH1 0xff 0000089e: NOT 0000089f: AND 000008a0: PUSH1 0x01 000008a2: SWAP1 000008a3: DUP2 000008a4: OR 000008a5: SWAP1 000008a6: SWAP2 000008a7: SSTORE 000008a8: SWAP3 000008a9: SLOAD 000008aa: PUSH1 0x07 000008ac: DUP1 000008ad: SLOAD 000008ae: SWAP5 000008af: DUP6 000008b0: ADD 000008b1: DUP2 000008b2: SSTORE 000008b3: SWAP1 000008b4: SWAP2 000008b5: MSTORE 000008b6: PUSH32 0xa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688 000008d7: SWAP1 000008d8: SWAP3 000008d9: ADD 000008da: DUP1 000008db: SLOAD 000008dc: PUSH1 0x01 000008de: PUSH1 0x01 000008e0: PUSH1 0xa0 000008e2: SHL 000008e3: SUB 000008e4: NOT 000008e5: AND 000008e6: SWAP3 000008e7: SWAP1 000008e8: SWAP2 000008e9: AND 000008ea: SWAP2 000008eb: SWAP1 000008ec: SWAP2 000008ed: OR 000008ee: SWAP1 000008ef: SSTORE 000008f0: JUMP 000008f1: JUMPDEST 000008f2: PUSH1 0x00 000008f4: PUSH1 0x01 000008f6: PUSH1 0x01 000008f8: PUSH1 0xa0 000008fa: SHL 000008fb: SUB 000008fc: DUP4 000008fd: AND 000008fe: ISZERO 000008ff: ISZERO 00000900: DUP1 00000901: PUSH2 0x0913 00000904: JUMPI 00000905: POP 00000906: PUSH1 0x01 00000908: PUSH1 0x01 0000090a: PUSH1 0xa0 0000090c: SHL 0000090d: SUB 0000090e: DUP4 0000090f: AND 00000910: ADDRESS 00000911: EQ 00000912: ISZERO 00000913: JUMPDEST 00000914: PUSH2 0x091c 00000917: JUMPI 00000918: PUSH1 0x00 0000091a: DUP1 0000091b: REVERT 0000091c: JUMPDEST 0000091d: PUSH1 0x01 0000091f: PUSH1 0x01 00000921: PUSH1 0xa0 00000923: SHL 00000924: SUB 00000925: DUP5 00000926: AND 00000927: CALLER 00000928: EQ 00000929: PUSH2 0x0a16 0000092c: JUMPI 0000092d: PUSH1 0x01 0000092f: PUSH1 0x01 00000931: PUSH1 0xa0 00000933: SHL 00000934: SUB 00000935: DUP5 00000936: AND 00000937: PUSH1 0x00 00000939: SWAP1 0000093a: DUP2 0000093b: MSTORE 0000093c: PUSH1 0x0e 0000093e: PUSH1 0x20 00000940: SWAP1 00000941: DUP2 00000942: MSTORE 00000943: PUSH1 0x40 00000945: DUP1 00000946: DUP4 00000947: KECCAK256 00000948: CALLER 00000949: DUP5 0000094a: MSTORE 0000094b: SWAP1 0000094c: SWAP2 0000094d: MSTORE 0000094e: SWAP1 0000094f: KECCAK256 00000950: SLOAD 00000951: PUSH1 0x00 00000953: NOT 00000954: DUP2 00000955: EQ 00000956: PUSH2 0x0a14 00000959: JUMPI 0000095a: DUP3 0000095b: DUP2 0000095c: LT 0000095d: ISZERO 0000095e: PUSH2 0x09bb 00000961: JUMPI 00000962: PUSH1 0x40 00000964: MLOAD 00000965: PUSH3 0x461bcd 00000969: PUSH1 0xe5 0000096b: SHL 0000096c: DUP2 0000096d: MSTORE 0000096e: PUSH1 0x20 00000970: PUSH1 0x04 00000972: DUP3 00000973: ADD 00000974: MSTORE 00000975: PUSH1 0x29 00000977: PUSH1 0x24 00000979: DUP3 0000097a: ADD 0000097b: MSTORE 0000097c: PUSH32 0x416e7973776170563345524332303a2072657175657374206578636565647320 0000099d: PUSH1 0x44 0000099f: DUP3 000009a0: ADD 000009a1: MSTORE 000009a2: PUSH9 0x616c6c6f77616e6365 000009ac: PUSH1 0xb8 000009ae: SHL 000009af: PUSH1 0x64 000009b1: DUP3 000009b2: ADD 000009b3: MSTORE 000009b4: PUSH1 0x84 000009b6: ADD 000009b7: PUSH2 0x071d 000009ba: JUMP 000009bb: JUMPDEST 000009bc: PUSH1 0x00 000009be: PUSH2 0x09c7 000009c1: DUP5 000009c2: DUP4 000009c3: PUSH2 0x235e 000009c6: JUMP 000009c7: JUMPDEST 000009c8: PUSH1 0x01 000009ca: PUSH1 0x01 000009cc: PUSH1 0xa0 000009ce: SHL 000009cf: SUB 000009d0: DUP8 000009d1: AND 000009d2: PUSH1 0x00 000009d4: DUP2 000009d5: DUP2 000009d6: MSTORE 000009d7: PUSH1 0x0e 000009d9: PUSH1 0x20 000009db: SWAP1 000009dc: DUP2 000009dd: MSTORE 000009de: PUSH1 0x40 000009e0: DUP1 000009e1: DUP4 000009e2: KECCAK256 000009e3: CALLER 000009e4: DUP1 000009e5: DUP6 000009e6: MSTORE 000009e7: SWAP1 000009e8: DUP4 000009e9: MSTORE 000009ea: SWAP3 000009eb: DUP2 000009ec: SWAP1 000009ed: KECCAK256 000009ee: DUP6 000009ef: SWAP1 000009f0: SSTORE 000009f1: MLOAD 000009f2: DUP5 000009f3: DUP2 000009f4: MSTORE 000009f5: SWAP4 000009f6: SWAP5 000009f7: POP 000009f8: SWAP1 000009f9: SWAP3 000009fa: PUSH1 0x00 000009fc: DUP1 000009fd: MLOAD 000009fe: PUSH1 0x20 00000a00: PUSH2 0x2520 00000a03: DUP4 00000a04: CODECOPY 00000a05: DUP2 00000a06: MLOAD 00000a07: SWAP2 00000a08: MSTORE 00000a09: SWAP2 00000a0a: ADD 00000a0b: PUSH1 0x40 00000a0d: MLOAD 00000a0e: DUP1 00000a0f: SWAP2 00000a10: SUB 00000a11: SWAP1 00000a12: LOG3 00000a13: POP 00000a14: JUMPDEST 00000a15: POP 00000a16: JUMPDEST 00000a17: PUSH1 0x01 00000a19: PUSH1 0x01 00000a1b: PUSH1 0xa0 00000a1d: SHL 00000a1e: SUB 00000a1f: DUP5 00000a20: AND 00000a21: PUSH1 0x00 00000a23: SWAP1 00000a24: DUP2 00000a25: MSTORE 00000a26: PUSH1 0x02 00000a28: PUSH1 0x20 00000a2a: MSTORE 00000a2b: PUSH1 0x40 00000a2d: SWAP1 00000a2e: KECCAK256 00000a2f: SLOAD 00000a30: DUP3 00000a31: DUP2 00000a32: LT 00000a33: ISZERO 00000a34: PUSH2 0x0a4f 00000a37: JUMPI 00000a38: PUSH1 0x40 00000a3a: MLOAD 00000a3b: PUSH3 0x461bcd 00000a3f: PUSH1 0xe5 00000a41: SHL 00000a42: DUP2 00000a43: MSTORE 00000a44: PUSH1 0x04 00000a46: ADD 00000a47: PUSH2 0x071d 00000a4a: SWAP1 00000a4b: PUSH2 0x2375 00000a4e: JUMP 00000a4f: JUMPDEST 00000a50: PUSH2 0x0a59 00000a53: DUP4 00000a54: DUP3 00000a55: PUSH2 0x235e 00000a58: JUMP 00000a59: JUMPDEST 00000a5a: PUSH1 0x01 00000a5c: PUSH1 0x01 00000a5e: PUSH1 0xa0 00000a60: SHL 00000a61: SUB 00000a62: DUP1 00000a63: DUP8 00000a64: AND 00000a65: PUSH1 0x00 00000a67: SWAP1 00000a68: DUP2 00000a69: MSTORE 00000a6a: PUSH1 0x02 00000a6c: PUSH1 0x20 00000a6e: MSTORE 00000a6f: PUSH1 0x40 00000a71: DUP1 00000a72: DUP3 00000a73: KECCAK256 00000a74: SWAP4 00000a75: SWAP1 00000a76: SWAP4 00000a77: SSTORE 00000a78: SWAP1 00000a79: DUP7 00000a7a: AND 00000a7b: DUP2 00000a7c: MSTORE 00000a7d: SWAP1 00000a7e: DUP2 00000a7f: KECCAK256 00000a80: DUP1 00000a81: SLOAD 00000a82: DUP6 00000a83: SWAP3 00000a84: SWAP1 00000a85: PUSH2 0x0a8f 00000a88: SWAP1 00000a89: DUP5 00000a8a: SWAP1 00000a8b: PUSH2 0x23c4 00000a8e: JUMP 00000a8f: JUMPDEST 00000a90: SWAP3 00000a91: POP 00000a92: POP 00000a93: DUP2 00000a94: SWAP1 00000a95: SSTORE 00000a96: POP 00000a97: DUP4 00000a98: PUSH1 0x01 00000a9a: PUSH1 0x01 00000a9c: PUSH1 0xa0 00000a9e: SHL 00000a9f: SUB 00000aa0: AND 00000aa1: DUP6 00000aa2: PUSH1 0x01 00000aa4: PUSH1 0x01 00000aa6: PUSH1 0xa0 00000aa8: SHL 00000aa9: SUB 00000aaa: AND 00000aab: PUSH1 0x00 00000aad: DUP1 00000aae: MLOAD 00000aaf: PUSH1 0x20 00000ab1: PUSH2 0x2500 00000ab4: DUP4 00000ab5: CODECOPY 00000ab6: DUP2 00000ab7: MLOAD 00000ab8: SWAP2 00000ab9: MSTORE 00000aba: DUP6 00000abb: PUSH1 0x40 00000abd: MLOAD 00000abe: PUSH2 0x0ac9 00000ac1: SWAP2 00000ac2: DUP2 00000ac3: MSTORE 00000ac4: PUSH1 0x20 00000ac6: ADD 00000ac7: SWAP1 00000ac8: JUMP 00000ac9: JUMPDEST 00000aca: PUSH1 0x40 00000acc: MLOAD 00000acd: DUP1 00000ace: SWAP2 00000acf: SUB 00000ad0: SWAP1 00000ad1: LOG3 00000ad2: POP 00000ad3: PUSH1 0x01 00000ad5: SWAP5 00000ad6: SWAP4 00000ad7: POP 00000ad8: POP 00000ad9: POP 00000ada: POP 00000adb: JUMP 00000adc: JUMPDEST 00000add: PUSH1 0x00 00000adf: PUSH2 0x0ae9 00000ae2: CALLER 00000ae3: DUP4 00000ae4: CALLER 00000ae5: PUSH2 0x197d 00000ae8: JUMP 00000ae9: JUMPDEST 00000aea: SWAP3 00000aeb: SWAP2 00000aec: POP 00000aed: POP 00000aee: JUMP 00000aef: JUMPDEST 00000af0: PUSH2 0x0af7 00000af3: PUSH2 0x18c6 00000af6: JUMP 00000af7: JUMPDEST 00000af8: PUSH1 0x01 00000afa: PUSH1 0x01 00000afc: PUSH1 0xa0 00000afe: SHL 00000aff: SUB 00000b00: AND 00000b01: CALLER 00000b02: PUSH1 0x01 00000b04: PUSH1 0x01 00000b06: PUSH1 0xa0 00000b08: SHL 00000b09: SUB 00000b0a: AND 00000b0b: EQ 00000b0c: PUSH2 0x0b27 00000b0f: JUMPI 00000b10: PUSH1 0x40 00000b12: MLOAD 00000b13: PUSH3 0x461bcd 00000b17: PUSH1 0xe5 00000b19: SHL 00000b1a: DUP2 00000b1b: MSTORE 00000b1c: PUSH1 0x04 00000b1e: ADD 00000b1f: PUSH2 0x071d 00000b22: SWAP1 00000b23: PUSH2 0x22d6 00000b26: JUMP 00000b27: JUMPDEST 00000b28: PUSH1 0x04 00000b2a: SLOAD 00000b2b: PUSH1 0xff 00000b2d: AND 00000b2e: PUSH2 0x0b36 00000b31: JUMPI 00000b32: PUSH1 0x00 00000b34: DUP1 00000b35: REVERT 00000b36: JUMPDEST 00000b37: PUSH1 0x08 00000b39: DUP1 00000b3a: SLOAD 00000b3b: PUSH1 0x01 00000b3d: PUSH1 0x01 00000b3f: PUSH1 0xa0 00000b41: SHL 00000b42: SUB 00000b43: SWAP1 00000b44: SWAP3 00000b45: AND 00000b46: PUSH1 0x01 00000b48: PUSH1 0x01 00000b4a: PUSH1 0xa0 00000b4c: SHL 00000b4d: SUB 00000b4e: NOT 00000b4f: SWAP3 00000b50: DUP4 00000b51: AND 00000b52: DUP2 00000b53: OR 00000b54: SWAP1 00000b55: SWAP2 00000b56: SSTORE 00000b57: PUSH1 0x0b 00000b59: DUP1 00000b5a: SLOAD 00000b5b: DUP4 00000b5c: AND 00000b5d: DUP3 00000b5e: OR 00000b5f: SWAP1 00000b60: SSTORE 00000b61: PUSH1 0x00 00000b63: DUP2 00000b64: DUP2 00000b65: MSTORE 00000b66: PUSH1 0x06 00000b68: PUSH1 0x20 00000b6a: MSTORE 00000b6b: PUSH1 0x40 00000b6d: DUP2 00000b6e: KECCAK256 00000b6f: DUP1 00000b70: SLOAD 00000b71: PUSH1 0xff 00000b73: NOT 00000b74: SWAP1 00000b75: DUP2 00000b76: AND 00000b77: PUSH1 0x01 00000b79: SWAP1 00000b7a: DUP2 00000b7b: OR 00000b7c: SWAP1 00000b7d: SWAP3 00000b7e: SSTORE 00000b7f: PUSH1 0x07 00000b81: DUP1 00000b82: SLOAD 00000b83: SWAP3 00000b84: DUP4 00000b85: ADD 00000b86: DUP2 00000b87: SSTORE 00000b88: SWAP1 00000b89: SWAP3 00000b8a: MSTORE 00000b8b: PUSH32 0xa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688 00000bac: ADD 00000bad: DUP1 00000bae: SLOAD 00000baf: SWAP1 00000bb0: SWAP4 00000bb1: AND 00000bb2: SWAP1 00000bb3: SWAP2 00000bb4: OR 00000bb5: SWAP1 00000bb6: SWAP2 00000bb7: SSTORE 00000bb8: TIMESTAMP 00000bb9: PUSH1 0x0c 00000bbb: SSTORE 00000bbc: PUSH1 0x04 00000bbe: DUP1 00000bbf: SLOAD 00000bc0: SWAP1 00000bc1: SWAP2 00000bc2: AND 00000bc3: SWAP1 00000bc4: SSTORE 00000bc5: JUMP 00000bc6: JUMPDEST 00000bc7: CALLER 00000bc8: PUSH1 0x00 00000bca: DUP2 00000bcb: DUP2 00000bcc: MSTORE 00000bcd: PUSH1 0x02 00000bcf: PUSH1 0x20 00000bd1: MSTORE 00000bd2: PUSH1 0x40 00000bd4: DUP2 00000bd5: KECCAK256 00000bd6: SLOAD 00000bd7: SWAP1 00000bd8: SWAP2 00000bd9: PUSH2 0x0be2 00000bdc: SWAP2 00000bdd: DUP2 00000bde: PUSH2 0x197d 00000be1: JUMP 00000be2: JUMPDEST 00000be3: SWAP1 00000be4: POP 00000be5: SWAP1 00000be6: JUMP 00000be7: JUMPDEST 00000be8: PUSH1 0x00 00000bea: PUSH1 0x01 00000bec: PUSH1 0x01 00000bee: PUSH1 0xa0 00000bf0: SHL 00000bf1: SUB 00000bf2: DUP6 00000bf3: AND 00000bf4: ISZERO 00000bf5: ISZERO 00000bf6: DUP1 00000bf7: PUSH2 0x0c09 00000bfa: JUMPI 00000bfb: POP 00000bfc: PUSH1 0x01 00000bfe: PUSH1 0x01 00000c00: PUSH1 0xa0 00000c02: SHL 00000c03: SUB 00000c04: DUP6 00000c05: AND 00000c06: ADDRESS 00000c07: EQ 00000c08: ISZERO 00000c09: JUMPDEST 00000c0a: PUSH2 0x0c12 00000c0d: JUMPI 00000c0e: PUSH1 0x00 00000c10: DUP1 00000c11: REVERT 00000c12: JUMPDEST 00000c13: CALLER 00000c14: PUSH1 0x00 00000c16: SWAP1 00000c17: DUP2 00000c18: MSTORE 00000c19: PUSH1 0x02 00000c1b: PUSH1 0x20 00000c1d: MSTORE 00000c1e: PUSH1 0x40 00000c20: SWAP1 00000c21: KECCAK256 00000c22: SLOAD 00000c23: DUP5 00000c24: DUP2 00000c25: LT 00000c26: ISZERO 00000c27: PUSH2 0x0c42 00000c2a: JUMPI 00000c2b: PUSH1 0x40 00000c2d: MLOAD 00000c2e: PUSH3 0x461bcd 00000c32: PUSH1 0xe5 00000c34: SHL 00000c35: DUP2 00000c36: MSTORE 00000c37: PUSH1 0x04 00000c39: ADD 00000c3a: PUSH2 0x071d 00000c3d: SWAP1 00000c3e: PUSH2 0x2375 00000c41: JUMP 00000c42: JUMPDEST 00000c43: PUSH2 0x0c4c 00000c46: DUP6 00000c47: DUP3 00000c48: PUSH2 0x235e 00000c4b: JUMP 00000c4c: JUMPDEST 00000c4d: CALLER 00000c4e: PUSH1 0x00 00000c50: SWAP1 00000c51: DUP2 00000c52: MSTORE 00000c53: PUSH1 0x02 00000c55: PUSH1 0x20 00000c57: MSTORE 00000c58: PUSH1 0x40 00000c5a: DUP1 00000c5b: DUP3 00000c5c: KECCAK256 00000c5d: SWAP3 00000c5e: SWAP1 00000c5f: SWAP3 00000c60: SSTORE 00000c61: PUSH1 0x01 00000c63: PUSH1 0x01 00000c65: PUSH1 0xa0 00000c67: SHL 00000c68: SUB 00000c69: DUP9 00000c6a: AND 00000c6b: DUP2 00000c6c: MSTORE 00000c6d: SWAP1 00000c6e: DUP2 00000c6f: KECCAK256 00000c70: DUP1 00000c71: SLOAD 00000c72: DUP8 00000c73: SWAP3 00000c74: SWAP1 00000c75: PUSH2 0x0c7f 00000c78: SWAP1 00000c79: DUP5 00000c7a: SWAP1 00000c7b: PUSH2 0x23c4 00000c7e: JUMP 00000c7f: JUMPDEST 00000c80: SWAP1 00000c81: SWAP2 00000c82: SSTORE 00000c83: POP 00000c84: POP 00000c85: PUSH1 0x40 00000c87: MLOAD 00000c88: DUP6 00000c89: DUP2 00000c8a: MSTORE 00000c8b: PUSH1 0x01 00000c8d: PUSH1 0x01 00000c8f: PUSH1 0xa0 00000c91: SHL 00000c92: SUB 00000c93: DUP8 00000c94: AND 00000c95: SWAP1 00000c96: CALLER 00000c97: SWAP1 00000c98: PUSH1 0x00 00000c9a: DUP1 00000c9b: MLOAD 00000c9c: PUSH1 0x20 00000c9e: PUSH2 0x2500 00000ca1: DUP4 00000ca2: CODECOPY 00000ca3: DUP2 00000ca4: MLOAD 00000ca5: SWAP2 00000ca6: MSTORE 00000ca7: SWAP1 00000ca8: PUSH1 0x20 00000caa: ADD 00000cab: PUSH1 0x40 00000cad: MLOAD 00000cae: DUP1 00000caf: SWAP2 00000cb0: SUB 00000cb1: SWAP1 00000cb2: LOG3 00000cb3: PUSH1 0x40 00000cb5: MLOAD 00000cb6: PUSH4 0x5260769b 00000cbb: PUSH1 0xe1 00000cbd: SHL 00000cbe: DUP2 00000cbf: MSTORE 00000cc0: PUSH1 0x01 00000cc2: PUSH1 0x01 00000cc4: PUSH1 0xa0 00000cc6: SHL 00000cc7: SUB 00000cc8: DUP8 00000cc9: AND 00000cca: SWAP1 00000ccb: PUSH4 0xa4c0ed36 00000cd0: SWAP1 00000cd1: PUSH2 0x0ce4 00000cd4: SWAP1 00000cd5: CALLER 00000cd6: SWAP1 00000cd7: DUP10 00000cd8: SWAP1 00000cd9: DUP10 00000cda: SWAP1 00000cdb: DUP10 00000cdc: SWAP1 00000cdd: PUSH1 0x04 00000cdf: ADD 00000ce0: PUSH2 0x23dc 00000ce3: JUMP 00000ce4: JUMPDEST 00000ce5: PUSH1 0x20 00000ce7: PUSH1 0x40 00000ce9: MLOAD 00000cea: DUP1 00000ceb: DUP4 00000cec: SUB 00000ced: DUP2 00000cee: PUSH1 0x00 00000cf0: DUP8 00000cf1: GAS 00000cf2: CALL 00000cf3: ISZERO 00000cf4: DUP1 00000cf5: ISZERO 00000cf6: PUSH2 0x0d03 00000cf9: JUMPI 00000cfa: RETURNDATASIZE 00000cfb: PUSH1 0x00 00000cfd: DUP1 00000cfe: RETURNDATACOPY 00000cff: RETURNDATASIZE 00000d00: PUSH1 0x00 00000d02: REVERT 00000d03: JUMPDEST 00000d04: POP 00000d05: POP 00000d06: POP 00000d07: POP 00000d08: PUSH1 0x40 00000d0a: MLOAD 00000d0b: RETURNDATASIZE 00000d0c: PUSH1 0x1f 00000d0e: NOT 00000d0f: PUSH1 0x1f 00000d11: DUP3 00000d12: ADD 00000d13: AND 00000d14: DUP3 00000d15: ADD 00000d16: DUP1 00000d17: PUSH1 0x40 00000d19: MSTORE 00000d1a: POP 00000d1b: DUP2 00000d1c: ADD 00000d1d: SWAP1 00000d1e: PUSH2 0x0d27 00000d21: SWAP2 00000d22: SWAP1 00000d23: PUSH2 0x2424 00000d26: JUMP 00000d27: JUMPDEST 00000d28: SWAP7 00000d29: SWAP6 00000d2a: POP 00000d2b: POP 00000d2c: POP 00000d2d: POP 00000d2e: POP 00000d2f: POP 00000d30: JUMP 00000d31: JUMPDEST 00000d32: CALLER 00000d33: PUSH1 0x00 00000d35: SWAP1 00000d36: DUP2 00000d37: MSTORE 00000d38: PUSH1 0x06 00000d3a: PUSH1 0x20 00000d3c: MSTORE 00000d3d: PUSH1 0x40 00000d3f: DUP2 00000d40: KECCAK256 00000d41: SLOAD 00000d42: PUSH1 0xff 00000d44: AND 00000d45: PUSH2 0x0d60 00000d48: JUMPI 00000d49: PUSH1 0x40 00000d4b: MLOAD 00000d4c: PUSH3 0x461bcd 00000d50: PUSH1 0xe5 00000d52: SHL 00000d53: DUP2 00000d54: MSTORE 00000d55: PUSH1 0x04 00000d57: ADD 00000d58: PUSH2 0x071d 00000d5b: SWAP1 00000d5c: PUSH2 0x2441 00000d5f: JUMP 00000d60: JUMPDEST 00000d61: PUSH2 0x0d6a 00000d64: DUP4 00000d65: DUP4 00000d66: PUSH2 0x19c5 00000d69: JUMP 00000d6a: JUMPDEST 00000d6b: POP 00000d6c: PUSH1 0x01 00000d6e: SWAP3 00000d6f: SWAP2 00000d70: POP 00000d71: POP 00000d72: JUMP 00000d73: JUMPDEST 00000d74: PUSH1 0x00 00000d76: DUP5 00000d77: TIMESTAMP 00000d78: GT 00000d79: ISZERO 00000d7a: PUSH2 0x0dc5 00000d7d: JUMPI 00000d7e: PUSH1 0x40 00000d80: MLOAD 00000d81: PUSH3 0x461bcd 00000d85: PUSH1 0xe5 00000d87: SHL 00000d88: DUP2 00000d89: MSTORE 00000d8a: PUSH1 0x20 00000d8c: PUSH1 0x04 00000d8e: DUP3 00000d8f: ADD 00000d90: MSTORE 00000d91: PUSH1 0x1e 00000d93: PUSH1 0x24 00000d95: DUP3 00000d96: ADD 00000d97: MSTORE 00000d98: PUSH32 0x416e7973776170563345524332303a2045787069726564207065726d69740000 00000db9: PUSH1 0x44 00000dbb: DUP3 00000dbc: ADD 00000dbd: MSTORE 00000dbe: PUSH1 0x64 00000dc0: ADD 00000dc1: PUSH2 0x071d 00000dc4: JUMP 00000dc5: JUMPDEST 00000dc6: PUSH1 0x01 00000dc8: PUSH1 0x01 00000dca: PUSH1 0xa0 00000dcc: SHL 00000dcd: SUB 00000dce: DUP9 00000dcf: AND 00000dd0: PUSH1 0x00 00000dd2: SWAP1 00000dd3: DUP2 00000dd4: MSTORE 00000dd5: PUSH1 0x0d 00000dd7: PUSH1 0x20 00000dd9: MSTORE 00000dda: PUSH1 0x40 00000ddc: DUP2 00000ddd: KECCAK256 00000dde: DUP1 00000ddf: SLOAD 00000de0: PUSH32 0x42ce63790c28229c123925d83266e77c04d28784552ab68b350a9003226cbd59 00000e01: SWAP2 00000e02: DUP12 00000e03: SWAP2 00000e04: DUP12 00000e05: SWAP2 00000e06: DUP12 00000e07: SWAP2 00000e08: SWAP1 00000e09: DUP7 00000e0a: PUSH2 0x0e12 00000e0d: DUP4 00000e0e: PUSH2 0x2478 00000e11: JUMP 00000e12: JUMPDEST 00000e13: SWAP1 00000e14: SWAP2 00000e15: SSTORE 00000e16: POP 00000e17: PUSH1 0x40 00000e19: DUP1 00000e1a: MLOAD 00000e1b: PUSH1 0x20 00000e1d: DUP2 00000e1e: ADD 00000e1f: SWAP7 00000e20: SWAP1 00000e21: SWAP7 00000e22: MSTORE 00000e23: PUSH1 0x01 00000e25: PUSH1 0x01 00000e27: PUSH1 0xa0 00000e29: SHL 00000e2a: SUB 00000e2b: SWAP5 00000e2c: DUP6 00000e2d: AND 00000e2e: SWAP1 00000e2f: DUP7 00000e30: ADD 00000e31: MSTORE 00000e32: SWAP3 00000e33: SWAP1 00000e34: SWAP2 00000e35: AND 00000e36: PUSH1 0x60 00000e38: DUP5 00000e39: ADD 00000e3a: MSTORE 00000e3b: PUSH1 0x80 00000e3d: DUP4 00000e3e: ADD 00000e3f: MSTORE 00000e40: PUSH1 0xa0 00000e42: DUP3 00000e43: ADD 00000e44: MSTORE 00000e45: PUSH1 0xc0 00000e47: DUP2 00000e48: ADD 00000e49: DUP8 00000e4a: SWAP1 00000e4b: MSTORE 00000e4c: PUSH1 0xe0 00000e4e: ADD 00000e4f: PUSH1 0x40 00000e51: MLOAD 00000e52: PUSH1 0x20 00000e54: DUP2 00000e55: DUP4 00000e56: SUB 00000e57: SUB 00000e58: DUP2 00000e59: MSTORE 00000e5a: SWAP1 00000e5b: PUSH1 0x40 00000e5d: MSTORE 00000e5e: DUP1 00000e5f: MLOAD 00000e60: SWAP1 00000e61: PUSH1 0x20 00000e63: ADD 00000e64: KECCAK256 00000e65: SWAP1 00000e66: POP 00000e67: PUSH2 0x0e73 00000e6a: DUP10 00000e6b: DUP3 00000e6c: DUP8 00000e6d: DUP8 00000e6e: DUP8 00000e6f: PUSH2 0x1a93 00000e72: JUMP 00000e73: JUMPDEST 00000e74: DUP1 00000e75: PUSH2 0x0e86 00000e78: JUMPI 00000e79: POP 00000e7a: PUSH2 0x0e86 00000e7d: DUP10 00000e7e: DUP3 00000e7f: DUP8 00000e80: DUP8 00000e81: DUP8 00000e82: PUSH2 0x1b84 00000e85: JUMP 00000e86: JUMPDEST 00000e87: PUSH2 0x0e8f 00000e8a: JUMPI 00000e8b: PUSH1 0x00 00000e8d: DUP1 00000e8e: REVERT 00000e8f: JUMPDEST 00000e90: PUSH1 0x01 00000e92: PUSH1 0x01 00000e94: PUSH1 0xa0 00000e96: SHL 00000e97: SUB 00000e98: DUP9 00000e99: AND 00000e9a: ISZERO 00000e9b: ISZERO 00000e9c: DUP1 00000e9d: PUSH2 0x0eaf 00000ea0: JUMPI 00000ea1: POP 00000ea2: PUSH1 0x01 00000ea4: PUSH1 0x01 00000ea6: PUSH1 0xa0 00000ea8: SHL 00000ea9: SUB 00000eaa: DUP9 00000eab: AND 00000eac: ADDRESS 00000ead: EQ 00000eae: ISZERO 00000eaf: JUMPDEST 00000eb0: PUSH2 0x0eb8 00000eb3: JUMPI 00000eb4: PUSH1 0x00 00000eb6: DUP1 00000eb7: REVERT 00000eb8: JUMPDEST 00000eb9: PUSH1 0x01 00000ebb: PUSH1 0x01 00000ebd: PUSH1 0xa0 00000ebf: SHL 00000ec0: SUB 00000ec1: DUP10 00000ec2: AND 00000ec3: PUSH1 0x00 00000ec5: SWAP1 00000ec6: DUP2 00000ec7: MSTORE 00000ec8: PUSH1 0x02 00000eca: PUSH1 0x20 00000ecc: MSTORE 00000ecd: PUSH1 0x40 00000ecf: SWAP1 00000ed0: KECCAK256 00000ed1: SLOAD 00000ed2: DUP8 00000ed3: DUP2 00000ed4: LT 00000ed5: ISZERO 00000ed6: PUSH2 0x0ef1 00000ed9: JUMPI 00000eda: PUSH1 0x40 00000edc: MLOAD 00000edd: PUSH3 0x461bcd 00000ee1: PUSH1 0xe5 00000ee3: SHL 00000ee4: DUP2 00000ee5: MSTORE 00000ee6: PUSH1 0x04 00000ee8: ADD 00000ee9: PUSH2 0x071d 00000eec: SWAP1 00000eed: PUSH2 0x2375 00000ef0: JUMP 00000ef1: JUMPDEST 00000ef2: PUSH2 0x0efb 00000ef5: DUP9 00000ef6: DUP3 00000ef7: PUSH2 0x235e 00000efa: JUMP 00000efb: JUMPDEST 00000efc: PUSH1 0x01 00000efe: PUSH1 0x01 00000f00: PUSH1 0xa0 00000f02: SHL 00000f03: SUB 00000f04: DUP1 00000f05: DUP13 00000f06: AND 00000f07: PUSH1 0x00 00000f09: SWAP1 00000f0a: DUP2 00000f0b: MSTORE 00000f0c: PUSH1 0x02 00000f0e: PUSH1 0x20 00000f10: MSTORE 00000f11: PUSH1 0x40 00000f13: DUP1 00000f14: DUP3 00000f15: KECCAK256 00000f16: SWAP4 00000f17: SWAP1 00000f18: SWAP4 00000f19: SSTORE 00000f1a: SWAP1 00000f1b: DUP12 00000f1c: AND 00000f1d: DUP2 00000f1e: MSTORE 00000f1f: SWAP1 00000f20: DUP2 00000f21: KECCAK256 00000f22: DUP1 00000f23: SLOAD 00000f24: DUP11 00000f25: SWAP3 00000f26: SWAP1 00000f27: PUSH2 0x0f31 00000f2a: SWAP1 00000f2b: DUP5 00000f2c: SWAP1 00000f2d: PUSH2 0x23c4 00000f30: JUMP 00000f31: JUMPDEST 00000f32: SWAP3 00000f33: POP 00000f34: POP 00000f35: DUP2 00000f36: SWAP1 00000f37: SSTORE 00000f38: POP 00000f39: DUP9 00000f3a: PUSH1 0x01 00000f3c: PUSH1 0x01 00000f3e: PUSH1 0xa0 00000f40: SHL 00000f41: SUB 00000f42: AND 00000f43: DUP11 00000f44: PUSH1 0x01 00000f46: PUSH1 0x01 00000f48: PUSH1 0xa0 00000f4a: SHL 00000f4b: SUB 00000f4c: AND 00000f4d: PUSH1 0x00 00000f4f: DUP1 00000f50: MLOAD 00000f51: PUSH1 0x20 00000f53: PUSH2 0x2500 00000f56: DUP4 00000f57: CODECOPY 00000f58: DUP2 00000f59: MLOAD 00000f5a: SWAP2 00000f5b: MSTORE 00000f5c: DUP11 00000f5d: PUSH1 0x40 00000f5f: MLOAD 00000f60: PUSH2 0x0f6b 00000f63: SWAP2 00000f64: DUP2 00000f65: MSTORE 00000f66: PUSH1 0x20 00000f68: ADD 00000f69: SWAP1 00000f6a: JUMP 00000f6b: JUMPDEST 00000f6c: PUSH1 0x40 00000f6e: MLOAD 00000f6f: DUP1 00000f70: SWAP2 00000f71: SUB 00000f72: SWAP1 00000f73: LOG3 00000f74: POP 00000f75: PUSH1 0x01 00000f77: SWAP10 00000f78: SWAP9 00000f79: POP 00000f7a: POP 00000f7b: POP 00000f7c: POP 00000f7d: POP 00000f7e: POP 00000f7f: POP 00000f80: POP 00000f81: POP 00000f82: JUMP 00000f83: JUMPDEST 00000f84: PUSH1 0x00 00000f86: PUSH2 0x0f8d 00000f89: PUSH2 0x18c6 00000f8c: JUMP 00000f8d: JUMPDEST 00000f8e: PUSH1 0x01 00000f90: PUSH1 0x01 00000f92: PUSH1 0xa0 00000f94: SHL 00000f95: SUB 00000f96: AND 00000f97: CALLER 00000f98: PUSH1 0x01 00000f9a: PUSH1 0x01 00000f9c: PUSH1 0xa0 00000f9e: SHL 00000f9f: SUB 00000fa0: AND 00000fa1: EQ 00000fa2: PUSH2 0x0fbd 00000fa5: JUMPI 00000fa6: PUSH1 0x40 00000fa8: MLOAD 00000fa9: PUSH3 0x461bcd 00000fad: PUSH1 0xe5 00000faf: SHL 00000fb0: DUP2 00000fb1: MSTORE 00000fb2: PUSH1 0x04 00000fb4: ADD 00000fb5: PUSH2 0x071d 00000fb8: SWAP1 00000fb9: PUSH2 0x22d6 00000fbc: JUMP 00000fbd: JUMPDEST 00000fbe: PUSH1 0x01 00000fc0: PUSH1 0x01 00000fc2: PUSH1 0xa0 00000fc4: SHL 00000fc5: SUB 00000fc6: DUP3 00000fc7: AND 00000fc8: PUSH2 0x0fe3 00000fcb: JUMPI 00000fcc: PUSH1 0x40 00000fce: MLOAD 00000fcf: PUSH3 0x461bcd 00000fd3: PUSH1 0xe5 00000fd5: SHL 00000fd6: DUP2 00000fd7: MSTORE 00000fd8: PUSH1 0x04 00000fda: ADD 00000fdb: PUSH2 0x071d 00000fde: SWAP1 00000fdf: PUSH2 0x2493 00000fe2: JUMP 00000fe3: JUMPDEST 00000fe4: PUSH1 0x08 00000fe6: DUP1 00000fe7: SLOAD 00000fe8: PUSH1 0x01 00000fea: PUSH1 0x01 00000fec: PUSH1 0xa0 00000fee: SHL 00000fef: SUB 00000ff0: DUP5 00000ff1: AND 00000ff2: PUSH1 0x01 00000ff4: PUSH1 0x01 00000ff6: PUSH1 0xa0 00000ff8: SHL 00000ff9: SUB 00000ffa: NOT 00000ffb: SWAP2 00000ffc: DUP3 00000ffd: AND 00000ffe: DUP2 00000fff: OR 00001000: SWAP1 00001001: SWAP3 00001002: SSTORE 00001003: PUSH1 0x0b 00001005: DUP1 00001006: SLOAD 00001007: SWAP1 00001008: SWAP2 00001009: AND 0000100a: DUP3 0000100b: OR 0000100c: SWAP1 0000100d: SSTORE 0000100e: PUSH1 0x40 00001010: MLOAD 00001011: TIMESTAMP 00001012: SWAP2 00001013: SWAP1 00001014: DUP2 00001015: SWAP1 00001016: PUSH32 0x5c364079e7102c27c608f9b237c735a1b7bfa0b67f27c2ad26bad447bf965cac 00001037: SWAP1 00001038: PUSH1 0x00 0000103a: SWAP1 0000103b: LOG4 0000103c: POP 0000103d: PUSH1 0x01 0000103f: JUMPDEST 00001040: SWAP2 00001041: SWAP1 00001042: POP 00001043: JUMP 00001044: JUMPDEST 00001045: PUSH1 0x04 00001047: SLOAD 00001048: PUSH1 0x00 0000104a: SWAP1 0000104b: PUSH2 0x0100 0000104e: SWAP1 0000104f: DIV 00001050: PUSH1 0xff 00001052: AND 00001053: ISZERO 00001054: PUSH2 0x109f 00001057: JUMPI 00001058: PUSH1 0x40 0000105a: MLOAD 0000105b: PUSH3 0x461bcd 0000105f: PUSH1 0xe5 00001061: SHL 00001062: DUP2 00001063: MSTORE 00001064: PUSH1 0x20 00001066: PUSH1 0x04 00001068: DUP3 00001069: ADD 0000106a: MSTORE 0000106b: PUSH1 0x18 0000106d: PUSH1 0x24 0000106f: DUP3 00001070: ADD 00001071: MSTORE 00001072: PUSH32 0x416e7973776170563445524332303a206f6e6c79417574680000000000000000 00001093: PUSH1 0x44 00001095: DUP3 00001096: ADD 00001097: MSTORE 00001098: PUSH1 0x64 0000109a: ADD 0000109b: PUSH2 0x071d 0000109e: JUMP 0000109f: JUMPDEST 000010a0: PUSH1 0x01 000010a2: PUSH1 0x01 000010a4: PUSH1 0xa0 000010a6: SHL 000010a7: SUB 000010a8: DUP3 000010a9: AND 000010aa: PUSH2 0x10c5 000010ad: JUMPI 000010ae: PUSH1 0x40 000010b0: MLOAD 000010b1: PUSH3 0x461bcd 000010b5: PUSH1 0xe5 000010b7: SHL 000010b8: DUP2 000010b9: MSTORE 000010ba: PUSH1 0x04 000010bc: ADD 000010bd: PUSH2 0x071d 000010c0: SWAP1 000010c1: PUSH2 0x2493 000010c4: JUMP 000010c5: JUMPDEST 000010c6: PUSH2 0x10cf 000010c9: CALLER 000010ca: DUP5 000010cb: PUSH2 0x1be7 000010ce: JUMP 000010cf: JUMPDEST 000010d0: PUSH1 0x40 000010d2: MLOAD 000010d3: DUP4 000010d4: DUP2 000010d5: MSTORE 000010d6: PUSH1 0x01 000010d8: PUSH1 0x01 000010da: PUSH1 0xa0 000010dc: SHL 000010dd: SUB 000010de: DUP4 000010df: AND 000010e0: SWAP1 000010e1: CALLER 000010e2: SWAP1 000010e3: PUSH32 0x6b616089d04950dc06c45c6dd787d657980543f89651aec47924752c7d16c888 00001104: SWAP1 00001105: PUSH1 0x20 00001107: ADD 00001108: PUSH2 0x0824 0000110b: JUMP 0000110c: JUMPDEST 0000110d: PUSH2 0x1114 00001110: PUSH2 0x18c6 00001113: JUMP 00001114: JUMPDEST 00001115: PUSH1 0x01 00001117: PUSH1 0x01 00001119: PUSH1 0xa0 0000111b: SHL 0000111c: SUB 0000111d: AND 0000111e: CALLER 0000111f: PUSH1 0x01 00001121: PUSH1 0x01 00001123: PUSH1 0xa0 00001125: SHL 00001126: SUB 00001127: AND 00001128: EQ 00001129: PUSH2 0x1144 0000112c: JUMPI 0000112d: PUSH1 0x40 0000112f: MLOAD 00001130: PUSH3 0x461bcd 00001134: PUSH1 0xe5 00001136: SHL 00001137: DUP2 00001138: MSTORE 00001139: PUSH1 0x04 0000113b: ADD 0000113c: PUSH2 0x071d 0000113f: SWAP1 00001140: PUSH2 0x22d6 00001143: JUMP 00001144: JUMPDEST 00001145: PUSH1 0x01 00001147: PUSH1 0x01 00001149: PUSH1 0xa0 0000114b: SHL 0000114c: SUB 0000114d: DUP2 0000114e: AND 0000114f: PUSH2 0x116a 00001152: JUMPI 00001153: PUSH1 0x40 00001155: MLOAD 00001156: PUSH3 0x461bcd 0000115a: PUSH1 0xe5 0000115c: SHL 0000115d: DUP2 0000115e: MSTORE 0000115f: PUSH1 0x04 00001161: ADD 00001162: PUSH2 0x071d 00001165: SWAP1 00001166: PUSH2 0x2493 00001169: JUMP 0000116a: JUMPDEST 0000116b: PUSH1 0x0b 0000116d: DUP1 0000116e: SLOAD 0000116f: PUSH1 0x01 00001171: PUSH1 0x01 00001173: PUSH1 0xa0 00001175: SHL 00001176: SUB 00001177: NOT 00001178: AND 00001179: PUSH1 0x01 0000117b: PUSH1 0x01 0000117d: PUSH1 0xa0 0000117f: SHL 00001180: SUB 00001181: DUP4 00001182: AND 00001183: OR 00001184: SWAP1 00001185: SSTORE 00001186: PUSH1 0x05 00001188: SLOAD 00001189: PUSH2 0x1192 0000118c: SWAP1 0000118d: TIMESTAMP 0000118e: PUSH2 0x23c4 00001191: JUMP 00001192: JUMPDEST 00001193: PUSH1 0x0c 00001195: SSTORE 00001196: POP 00001197: JUMP 00001198: JUMPDEST 00001199: PUSH1 0x00 0000119b: PUSH2 0x11cf 0000119e: PUSH1 0x01 000011a0: PUSH1 0x01 000011a2: PUSH1 0xa0 000011a4: SHL 000011a5: SUB 000011a6: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000011c7: AND 000011c8: CALLER 000011c9: ADDRESS 000011ca: DUP7 000011cb: PUSH2 0x1cb9 000011ce: JUMP 000011cf: JUMPDEST 000011d0: PUSH2 0x0746 000011d3: DUP4 000011d4: DUP4 000011d5: PUSH2 0x1d2a 000011d8: JUMP 000011d9: JUMPDEST 000011da: PUSH1 0x07 000011dc: DUP2 000011dd: DUP2 000011de: SLOAD 000011df: DUP2 000011e0: LT 000011e1: PUSH2 0x11e9 000011e4: JUMPI 000011e5: PUSH1 0x00 000011e7: DUP1 000011e8: REVERT 000011e9: JUMPDEST 000011ea: PUSH1 0x00 000011ec: SWAP2 000011ed: DUP3 000011ee: MSTORE 000011ef: PUSH1 0x20 000011f1: SWAP1 000011f2: SWAP2 000011f3: KECCAK256 000011f4: ADD 000011f5: SLOAD 000011f6: PUSH1 0x01 000011f8: PUSH1 0x01 000011fa: PUSH1 0xa0 000011fc: SHL 000011fd: SUB 000011fe: AND 000011ff: SWAP1 00001200: POP 00001201: DUP2 00001202: JUMP 00001203: JUMPDEST 00001204: PUSH1 0x00 00001206: PUSH2 0x0be2 00001209: PUSH2 0x18c6 0000120c: JUMP 0000120d: JUMPDEST 0000120e: PUSH1 0x01 00001210: DUP1 00001211: SLOAD 00001212: PUSH2 0x075a 00001215: SWAP1 00001216: PUSH2 0x230d 00001219: JUMP 0000121a: JUMPDEST 0000121b: CALLER 0000121c: PUSH1 0x00 0000121e: SWAP1 0000121f: DUP2 00001220: MSTORE 00001221: PUSH1 0x06 00001223: PUSH1 0x20 00001225: MSTORE 00001226: PUSH1 0x40 00001228: DUP2 00001229: KECCAK256 0000122a: SLOAD 0000122b: PUSH1 0xff 0000122d: AND 0000122e: PUSH2 0x1249 00001231: JUMPI 00001232: PUSH1 0x40 00001234: MLOAD 00001235: PUSH3 0x461bcd 00001239: PUSH1 0xe5 0000123b: SHL 0000123c: DUP2 0000123d: MSTORE 0000123e: PUSH1 0x04 00001240: ADD 00001241: PUSH2 0x071d 00001244: SWAP1 00001245: PUSH2 0x2441 00001248: JUMP 00001249: JUMPDEST 0000124a: PUSH1 0x01 0000124c: PUSH1 0x01 0000124e: PUSH1 0xa0 00001250: SHL 00001251: SUB 00001252: DUP4 00001253: AND 00001254: PUSH2 0x126f 00001257: JUMPI 00001258: PUSH1 0x40 0000125a: MLOAD 0000125b: PUSH3 0x461bcd 0000125f: PUSH1 0xe5 00001261: SHL 00001262: DUP2 00001263: MSTORE 00001264: PUSH1 0x04 00001266: ADD 00001267: PUSH2 0x071d 0000126a: SWAP1 0000126b: PUSH2 0x2493 0000126e: JUMP 0000126f: JUMPDEST 00001270: PUSH2 0x0d6a 00001273: DUP4 00001274: DUP4 00001275: PUSH2 0x1be7 00001278: JUMP 00001279: JUMPDEST 0000127a: PUSH1 0x60 0000127c: PUSH1 0x07 0000127e: DUP1 0000127f: SLOAD 00001280: DUP1 00001281: PUSH1 0x20 00001283: MUL 00001284: PUSH1 0x20 00001286: ADD 00001287: PUSH1 0x40 00001289: MLOAD 0000128a: SWAP1 0000128b: DUP2 0000128c: ADD 0000128d: PUSH1 0x40 0000128f: MSTORE 00001290: DUP1 00001291: SWAP3 00001292: SWAP2 00001293: SWAP1 00001294: DUP2 00001295: DUP2 00001296: MSTORE 00001297: PUSH1 0x20 00001299: ADD 0000129a: DUP3 0000129b: DUP1 0000129c: SLOAD 0000129d: DUP1 0000129e: ISZERO 0000129f: PUSH2 0x12d1 000012a2: JUMPI 000012a3: PUSH1 0x20 000012a5: MUL 000012a6: DUP3 000012a7: ADD 000012a8: SWAP2 000012a9: SWAP1 000012aa: PUSH1 0x00 000012ac: MSTORE 000012ad: PUSH1 0x20 000012af: PUSH1 0x00 000012b1: KECCAK256 000012b2: SWAP1 000012b3: JUMPDEST 000012b4: DUP2 000012b5: SLOAD 000012b6: PUSH1 0x01 000012b8: PUSH1 0x01 000012ba: PUSH1 0xa0 000012bc: SHL 000012bd: SUB 000012be: AND 000012bf: DUP2 000012c0: MSTORE 000012c1: PUSH1 0x01 000012c3: SWAP1 000012c4: SWAP2 000012c5: ADD 000012c6: SWAP1 000012c7: PUSH1 0x20 000012c9: ADD 000012ca: DUP1 000012cb: DUP4 000012cc: GT 000012cd: PUSH2 0x12b3 000012d0: JUMPI 000012d1: JUMPDEST 000012d2: POP 000012d3: POP 000012d4: POP 000012d5: POP 000012d6: POP 000012d7: SWAP1 000012d8: POP 000012d9: SWAP1 000012da: JUMP 000012db: JUMPDEST 000012dc: PUSH1 0x00 000012de: PUSH1 0x01 000012e0: PUSH1 0x01 000012e2: PUSH1 0xa0 000012e4: SHL 000012e5: SUB 000012e6: DUP4 000012e7: AND 000012e8: ISZERO 000012e9: ISZERO 000012ea: DUP1 000012eb: PUSH2 0x12fd 000012ee: JUMPI 000012ef: POP 000012f0: PUSH1 0x01 000012f2: PUSH1 0x01 000012f4: PUSH1 0xa0 000012f6: SHL 000012f7: SUB 000012f8: DUP4 000012f9: AND 000012fa: ADDRESS 000012fb: EQ 000012fc: ISZERO 000012fd: JUMPDEST 000012fe: PUSH2 0x1306 00001301: JUMPI 00001302: PUSH1 0x00 00001304: DUP1 00001305: REVERT 00001306: JUMPDEST 00001307: CALLER 00001308: PUSH1 0x00 0000130a: SWAP1 0000130b: DUP2 0000130c: MSTORE 0000130d: PUSH1 0x02 0000130f: PUSH1 0x20 00001311: MSTORE 00001312: PUSH1 0x40 00001314: SWAP1 00001315: KECCAK256 00001316: SLOAD 00001317: DUP3 00001318: DUP2 00001319: LT 0000131a: ISZERO 0000131b: PUSH2 0x1336 0000131e: JUMPI 0000131f: PUSH1 0x40 00001321: MLOAD 00001322: PUSH3 0x461bcd 00001326: PUSH1 0xe5 00001328: SHL 00001329: DUP2 0000132a: MSTORE 0000132b: PUSH1 0x04 0000132d: ADD 0000132e: PUSH2 0x071d 00001331: SWAP1 00001332: PUSH2 0x2375 00001335: JUMP 00001336: JUMPDEST 00001337: PUSH2 0x1340 0000133a: DUP4 0000133b: DUP3 0000133c: PUSH2 0x235e 0000133f: JUMP 00001340: JUMPDEST 00001341: CALLER 00001342: PUSH1 0x00 00001344: SWAP1 00001345: DUP2 00001346: MSTORE 00001347: PUSH1 0x02 00001349: PUSH1 0x20 0000134b: MSTORE 0000134c: PUSH1 0x40 0000134e: DUP1 0000134f: DUP3 00001350: KECCAK256 00001351: SWAP3 00001352: SWAP1 00001353: SWAP3 00001354: SSTORE 00001355: PUSH1 0x01 00001357: PUSH1 0x01 00001359: PUSH1 0xa0 0000135b: SHL 0000135c: SUB 0000135d: DUP7 0000135e: AND 0000135f: DUP2 00001360: MSTORE 00001361: SWAP1 00001362: DUP2 00001363: KECCAK256 00001364: DUP1 00001365: SLOAD 00001366: DUP6 00001367: SWAP3 00001368: SWAP1 00001369: PUSH2 0x1373 0000136c: SWAP1 0000136d: DUP5 0000136e: SWAP1 0000136f: PUSH2 0x23c4 00001372: JUMP 00001373: JUMPDEST 00001374: SWAP1 00001375: SWAP2 00001376: SSTORE 00001377: POP 00001378: POP 00001379: PUSH1 0x40 0000137b: MLOAD 0000137c: DUP4 0000137d: DUP2 0000137e: MSTORE 0000137f: PUSH1 0x01 00001381: PUSH1 0x01 00001383: PUSH1 0xa0 00001385: SHL 00001386: SUB 00001387: DUP6 00001388: AND 00001389: SWAP1 0000138a: CALLER 0000138b: SWAP1 0000138c: PUSH1 0x00 0000138e: DUP1 0000138f: MLOAD 00001390: PUSH1 0x20 00001392: PUSH2 0x2500 00001395: DUP4 00001396: CODECOPY 00001397: DUP2 00001398: MLOAD 00001399: SWAP2 0000139a: MSTORE 0000139b: SWAP1 0000139c: PUSH1 0x20 0000139e: ADD 0000139f: JUMPDEST 000013a0: PUSH1 0x40 000013a2: MLOAD 000013a3: DUP1 000013a4: SWAP2 000013a5: SUB 000013a6: SWAP1 000013a7: LOG3 000013a8: POP 000013a9: PUSH1 0x01 000013ab: SWAP4 000013ac: SWAP3 000013ad: POP 000013ae: POP 000013af: POP 000013b0: JUMP 000013b1: JUMPDEST 000013b2: PUSH1 0x00 000013b4: PUSH2 0x13e8 000013b7: PUSH1 0x01 000013b9: PUSH1 0x01 000013bb: PUSH1 0xa0 000013bd: SHL 000013be: SUB 000013bf: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000013e0: AND 000013e1: CALLER 000013e2: ADDRESS 000013e3: DUP6 000013e4: PUSH2 0x1cb9 000013e7: JUMP 000013e8: JUMPDEST 000013e9: PUSH2 0x0ae9 000013ec: DUP3 000013ed: CALLER 000013ee: PUSH2 0x1d2a 000013f1: JUMP 000013f2: JUMPDEST 000013f3: PUSH1 0x00 000013f5: PUSH2 0x13fc 000013f8: PUSH2 0x18c6 000013fb: JUMP 000013fc: JUMPDEST 000013fd: PUSH1 0x01 000013ff: PUSH1 0x01 00001401: PUSH1 0xa0 00001403: SHL 00001404: SUB 00001405: AND 00001406: CALLER 00001407: PUSH1 0x01 00001409: PUSH1 0x01 0000140b: PUSH1 0xa0 0000140d: SHL 0000140e: SUB 0000140f: AND 00001410: EQ 00001411: PUSH2 0x11cf 00001414: JUMPI 00001415: PUSH1 0x40 00001417: MLOAD 00001418: PUSH3 0x461bcd 0000141c: PUSH1 0xe5 0000141e: SHL 0000141f: DUP2 00001420: MSTORE 00001421: PUSH1 0x04 00001423: ADD 00001424: PUSH2 0x071d 00001427: SWAP1 00001428: PUSH2 0x22d6 0000142b: JUMP 0000142c: JUMPDEST 0000142d: PUSH2 0x1434 00001430: PUSH2 0x18c6 00001433: JUMP 00001434: JUMPDEST 00001435: PUSH1 0x01 00001437: PUSH1 0x01 00001439: PUSH1 0xa0 0000143b: SHL 0000143c: SUB 0000143d: AND 0000143e: CALLER 0000143f: PUSH1 0x01 00001441: PUSH1 0x01 00001443: PUSH1 0xa0 00001445: SHL 00001446: SUB 00001447: AND 00001448: EQ 00001449: PUSH2 0x1464 0000144c: JUMPI 0000144d: PUSH1 0x40 0000144f: MLOAD 00001450: PUSH3 0x461bcd 00001454: PUSH1 0xe5 00001456: SHL 00001457: DUP2 00001458: MSTORE 00001459: PUSH1 0x04 0000145b: ADD 0000145c: PUSH2 0x071d 0000145f: SWAP1 00001460: PUSH2 0x22d6 00001463: JUMP 00001464: JUMPDEST 00001465: PUSH1 0x04 00001467: DUP1 00001468: SLOAD 00001469: SWAP2 0000146a: ISZERO 0000146b: ISZERO 0000146c: PUSH2 0x0100 0000146f: MUL 00001470: PUSH2 0xff00 00001473: NOT 00001474: SWAP1 00001475: SWAP3 00001476: AND 00001477: SWAP2 00001478: SWAP1 00001479: SWAP2 0000147a: OR 0000147b: SWAP1 0000147c: SSTORE 0000147d: JUMP 0000147e: JUMPDEST 0000147f: CALLER 00001480: PUSH1 0x00 00001482: DUP2 00001483: DUP2 00001484: MSTORE 00001485: PUSH1 0x0e 00001487: PUSH1 0x20 00001489: SWAP1 0000148a: DUP2 0000148b: MSTORE 0000148c: PUSH1 0x40 0000148e: DUP1 0000148f: DUP4 00001490: KECCAK256 00001491: PUSH1 0x01 00001493: PUSH1 0x01 00001495: PUSH1 0xa0 00001497: SHL 00001498: SUB 00001499: DUP10 0000149a: AND 0000149b: DUP1 0000149c: DUP6 0000149d: MSTORE 0000149e: SWAP3 0000149f: MSTORE 000014a0: DUP1 000014a1: DUP4 000014a2: KECCAK256 000014a3: DUP8 000014a4: SWAP1 000014a5: SSTORE 000014a6: MLOAD 000014a7: SWAP2 000014a8: SWAP3 000014a9: SWAP1 000014aa: SWAP2 000014ab: PUSH1 0x00 000014ad: DUP1 000014ae: MLOAD 000014af: PUSH1 0x20 000014b1: PUSH2 0x2520 000014b4: DUP4 000014b5: CODECOPY 000014b6: DUP2 000014b7: MLOAD 000014b8: SWAP2 000014b9: MSTORE 000014ba: SWAP1 000014bb: PUSH2 0x14c7 000014be: SWAP1 000014bf: DUP9 000014c0: DUP2 000014c1: MSTORE 000014c2: PUSH1 0x20 000014c4: ADD 000014c5: SWAP1 000014c6: JUMP 000014c7: JUMPDEST 000014c8: PUSH1 0x40 000014ca: MLOAD 000014cb: DUP1 000014cc: SWAP2 000014cd: SUB 000014ce: SWAP1 000014cf: LOG3 000014d0: PUSH1 0x40 000014d2: MLOAD 000014d3: PUSH3 0xba451f 000014d7: PUSH1 0xe0 000014d9: SHL 000014da: DUP2 000014db: MSTORE 000014dc: PUSH1 0x01 000014de: PUSH1 0x01 000014e0: PUSH1 0xa0 000014e2: SHL 000014e3: SUB 000014e4: DUP7 000014e5: AND 000014e6: SWAP1 000014e7: PUSH3 0xba451f 000014eb: SWAP1 000014ec: PUSH2 0x14ff 000014ef: SWAP1 000014f0: CALLER 000014f1: SWAP1 000014f2: DUP9 000014f3: SWAP1 000014f4: DUP9 000014f5: SWAP1 000014f6: DUP9 000014f7: SWAP1 000014f8: PUSH1 0x04 000014fa: ADD 000014fb: PUSH2 0x23dc 000014fe: JUMP 000014ff: JUMPDEST 00001500: PUSH1 0x20 00001502: PUSH1 0x40 00001504: MLOAD 00001505: DUP1 00001506: DUP4 00001507: SUB 00001508: DUP2 00001509: PUSH1 0x00 0000150b: DUP8 0000150c: GAS 0000150d: CALL 0000150e: ISZERO 0000150f: DUP1 00001510: ISZERO 00001511: PUSH2 0x151e 00001514: JUMPI 00001515: RETURNDATASIZE 00001516: PUSH1 0x00 00001518: DUP1 00001519: RETURNDATACOPY 0000151a: RETURNDATASIZE 0000151b: PUSH1 0x00 0000151d: REVERT 0000151e: JUMPDEST 0000151f: POP 00001520: POP 00001521: POP 00001522: POP 00001523: PUSH1 0x40 00001525: MLOAD 00001526: RETURNDATASIZE 00001527: PUSH1 0x1f 00001529: NOT 0000152a: PUSH1 0x1f 0000152c: DUP3 0000152d: ADD 0000152e: AND 0000152f: DUP3 00001530: ADD 00001531: DUP1 00001532: PUSH1 0x40 00001534: MSTORE 00001535: POP 00001536: DUP2 00001537: ADD 00001538: SWAP1 00001539: PUSH2 0x1542 0000153c: SWAP2 0000153d: SWAP1 0000153e: PUSH2 0x2424 00001541: JUMP 00001542: JUMPDEST 00001543: SWAP6 00001544: SWAP5 00001545: POP 00001546: POP 00001547: POP 00001548: POP 00001549: POP 0000154a: JUMP 0000154b: JUMPDEST 0000154c: PUSH2 0x1553 0000154f: PUSH2 0x18c6 00001552: JUMP 00001553: JUMPDEST 00001554: PUSH1 0x01 00001556: PUSH1 0x01 00001558: PUSH1 0xa0 0000155a: SHL 0000155b: SUB 0000155c: AND 0000155d: CALLER 0000155e: PUSH1 0x01 00001560: PUSH1 0x01 00001562: PUSH1 0xa0 00001564: SHL 00001565: SUB 00001566: AND 00001567: EQ 00001568: PUSH2 0x1583 0000156b: JUMPI 0000156c: PUSH1 0x40 0000156e: MLOAD 0000156f: PUSH3 0x461bcd 00001573: PUSH1 0xe5 00001575: SHL 00001576: DUP2 00001577: MSTORE 00001578: PUSH1 0x04 0000157a: ADD 0000157b: PUSH2 0x071d 0000157e: SWAP1 0000157f: PUSH2 0x22d6 00001582: JUMP 00001583: JUMPDEST 00001584: PUSH1 0x01 00001586: PUSH1 0x01 00001588: PUSH1 0xa0 0000158a: SHL 0000158b: SUB 0000158c: AND 0000158d: PUSH1 0x00 0000158f: SWAP1 00001590: DUP2 00001591: MSTORE 00001592: PUSH1 0x06 00001594: PUSH1 0x20 00001596: MSTORE 00001597: PUSH1 0x40 00001599: SWAP1 0000159a: KECCAK256 0000159b: DUP1 0000159c: SLOAD 0000159d: PUSH1 0xff 0000159f: NOT 000015a0: AND 000015a1: SWAP1 000015a2: SSTORE 000015a3: JUMP 000015a4: JUMPDEST 000015a5: PUSH1 0x40 000015a7: MLOAD 000015a8: PUSH4 0x70a08231 000015ad: PUSH1 0xe0 000015af: SHL 000015b0: DUP2 000015b1: MSTORE 000015b2: CALLER 000015b3: PUSH1 0x04 000015b5: DUP3 000015b6: ADD 000015b7: MSTORE 000015b8: PUSH1 0x00 000015ba: SWAP1 000015bb: DUP2 000015bc: SWAP1 000015bd: PUSH1 0x01 000015bf: PUSH1 0x01 000015c1: PUSH1 0xa0 000015c3: SHL 000015c4: SUB 000015c5: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000015e6: AND 000015e7: SWAP1 000015e8: PUSH4 0x70a08231 000015ed: SWAP1 000015ee: PUSH1 0x24 000015f0: ADD 000015f1: PUSH1 0x20 000015f3: PUSH1 0x40 000015f5: MLOAD 000015f6: DUP1 000015f7: DUP4 000015f8: SUB 000015f9: DUP2 000015fa: DUP7 000015fb: GAS 000015fc: STATICCALL 000015fd: ISZERO 000015fe: DUP1 000015ff: ISZERO 00001600: PUSH2 0x160d 00001603: JUMPI 00001604: RETURNDATASIZE 00001605: PUSH1 0x00 00001607: DUP1 00001608: RETURNDATACOPY 00001609: RETURNDATASIZE 0000160a: PUSH1 0x00 0000160c: REVERT 0000160d: JUMPDEST 0000160e: POP 0000160f: POP 00001610: POP 00001611: POP 00001612: PUSH1 0x40 00001614: MLOAD 00001615: RETURNDATASIZE 00001616: PUSH1 0x1f 00001618: NOT 00001619: PUSH1 0x1f 0000161b: DUP3 0000161c: ADD 0000161d: AND 0000161e: DUP3 0000161f: ADD 00001620: DUP1 00001621: PUSH1 0x40 00001623: MSTORE 00001624: POP 00001625: DUP2 00001626: ADD 00001627: SWAP1 00001628: PUSH2 0x1631 0000162b: SWAP2 0000162c: SWAP1 0000162d: PUSH2 0x24ca 00001630: JUMP 00001631: JUMPDEST 00001632: SWAP1 00001633: POP 00001634: PUSH2 0x1668 00001637: PUSH1 0x01 00001639: PUSH1 0x01 0000163b: PUSH1 0xa0 0000163d: SHL 0000163e: SUB 0000163f: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00001660: AND 00001661: CALLER 00001662: ADDRESS 00001663: DUP5 00001664: PUSH2 0x1cb9 00001667: JUMP 00001668: JUMPDEST 00001669: PUSH2 0x1672 0000166c: DUP2 0000166d: CALLER 0000166e: PUSH2 0x1d2a 00001671: JUMP 00001672: JUMPDEST 00001673: SWAP2 00001674: POP 00001675: POP 00001676: SWAP1 00001677: JUMP 00001678: JUMPDEST 00001679: DUP4 0000167a: TIMESTAMP 0000167b: GT 0000167c: ISZERO 0000167d: PUSH2 0x16c8 00001680: JUMPI 00001681: PUSH1 0x40 00001683: MLOAD 00001684: PUSH3 0x461bcd 00001688: PUSH1 0xe5 0000168a: SHL 0000168b: DUP2 0000168c: MSTORE 0000168d: PUSH1 0x20 0000168f: PUSH1 0x04 00001691: DUP3 00001692: ADD 00001693: MSTORE 00001694: PUSH1 0x1e 00001696: PUSH1 0x24 00001698: DUP3 00001699: ADD 0000169a: MSTORE 0000169b: PUSH32 0x416e7973776170563345524332303a2045787069726564207065726d69740000 000016bc: PUSH1 0x44 000016be: DUP3 000016bf: ADD 000016c0: MSTORE 000016c1: PUSH1 0x64 000016c3: ADD 000016c4: PUSH2 0x071d 000016c7: JUMP 000016c8: JUMPDEST 000016c9: PUSH1 0x01 000016cb: PUSH1 0x01 000016cd: PUSH1 0xa0 000016cf: SHL 000016d0: SUB 000016d1: DUP8 000016d2: AND 000016d3: PUSH1 0x00 000016d5: SWAP1 000016d6: DUP2 000016d7: MSTORE 000016d8: PUSH1 0x0d 000016da: PUSH1 0x20 000016dc: MSTORE 000016dd: PUSH1 0x40 000016df: DUP2 000016e0: KECCAK256 000016e1: DUP1 000016e2: SLOAD 000016e3: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9 00001704: SWAP2 00001705: DUP11 00001706: SWAP2 00001707: DUP11 00001708: SWAP2 00001709: DUP11 0000170a: SWAP2 0000170b: SWAP1 0000170c: DUP7 0000170d: PUSH2 0x1715 00001710: DUP4 00001711: PUSH2 0x2478 00001714: JUMP 00001715: JUMPDEST 00001716: SWAP1 00001717: SWAP2 00001718: SSTORE 00001719: POP 0000171a: PUSH1 0x40 0000171c: DUP1 0000171d: MLOAD 0000171e: PUSH1 0x20 00001720: DUP2 00001721: ADD 00001722: SWAP7 00001723: SWAP1 00001724: SWAP7 00001725: MSTORE 00001726: PUSH1 0x01 00001728: PUSH1 0x01 0000172a: PUSH1 0xa0 0000172c: SHL 0000172d: SUB 0000172e: SWAP5 0000172f: DUP6 00001730: AND 00001731: SWAP1 00001732: DUP7 00001733: ADD 00001734: MSTORE 00001735: SWAP3 00001736: SWAP1 00001737: SWAP2 00001738: AND 00001739: PUSH1 0x60 0000173b: DUP5 0000173c: ADD 0000173d: MSTORE 0000173e: PUSH1 0x80 00001740: DUP4 00001741: ADD 00001742: MSTORE 00001743: PUSH1 0xa0 00001745: DUP3 00001746: ADD 00001747: MSTORE 00001748: PUSH1 0xc0 0000174a: DUP2 0000174b: ADD 0000174c: DUP7 0000174d: SWAP1 0000174e: MSTORE 0000174f: PUSH1 0xe0 00001751: ADD 00001752: PUSH1 0x40 00001754: MLOAD 00001755: PUSH1 0x20 00001757: DUP2 00001758: DUP4 00001759: SUB 0000175a: SUB 0000175b: DUP2 0000175c: MSTORE 0000175d: SWAP1 0000175e: PUSH1 0x40 00001760: MSTORE 00001761: DUP1 00001762: MLOAD 00001763: SWAP1 00001764: PUSH1 0x20 00001766: ADD 00001767: KECCAK256 00001768: SWAP1 00001769: POP 0000176a: PUSH2 0x1776 0000176d: DUP9 0000176e: DUP3 0000176f: DUP7 00001770: DUP7 00001771: DUP7 00001772: PUSH2 0x1a93 00001775: JUMP 00001776: JUMPDEST 00001777: DUP1 00001778: PUSH2 0x1789 0000177b: JUMPI 0000177c: POP 0000177d: PUSH2 0x1789 00001780: DUP9 00001781: DUP3 00001782: DUP7 00001783: DUP7 00001784: DUP7 00001785: PUSH2 0x1b84 00001788: JUMP 00001789: JUMPDEST 0000178a: PUSH2 0x1792 0000178d: JUMPI 0000178e: PUSH1 0x00 00001790: DUP1 00001791: REVERT 00001792: JUMPDEST 00001793: PUSH1 0x01 00001795: PUSH1 0x01 00001797: PUSH1 0xa0 00001799: SHL 0000179a: SUB 0000179b: DUP9 0000179c: DUP2 0000179d: AND 0000179e: PUSH1 0x00 000017a0: DUP2 000017a1: DUP2 000017a2: MSTORE 000017a3: PUSH1 0x0e 000017a5: PUSH1 0x20 000017a7: SWAP1 000017a8: DUP2 000017a9: MSTORE 000017aa: PUSH1 0x40 000017ac: DUP1 000017ad: DUP4 000017ae: KECCAK256 000017af: SWAP5 000017b0: DUP13 000017b1: AND 000017b2: DUP1 000017b3: DUP5 000017b4: MSTORE 000017b5: SWAP5 000017b6: DUP3 000017b7: MSTORE 000017b8: SWAP2 000017b9: DUP3 000017ba: SWAP1 000017bb: KECCAK256 000017bc: DUP11 000017bd: SWAP1 000017be: SSTORE 000017bf: SWAP1 000017c0: MLOAD 000017c1: DUP10 000017c2: DUP2 000017c3: MSTORE 000017c4: PUSH1 0x00 000017c6: DUP1 000017c7: MLOAD 000017c8: PUSH1 0x20 000017ca: PUSH2 0x2520 000017cd: DUP4 000017ce: CODECOPY 000017cf: DUP2 000017d0: MLOAD 000017d1: SWAP2 000017d2: MSTORE 000017d3: SWAP2 000017d4: ADD 000017d5: PUSH1 0x40 000017d7: MLOAD 000017d8: DUP1 000017d9: SWAP2 000017da: SUB 000017db: SWAP1 000017dc: LOG3 000017dd: POP 000017de: POP 000017df: POP 000017e0: POP 000017e1: POP 000017e2: POP 000017e3: POP 000017e4: POP 000017e5: JUMP 000017e6: JUMPDEST 000017e7: PUSH2 0x17ee 000017ea: PUSH2 0x18c6 000017ed: JUMP 000017ee: JUMPDEST 000017ef: PUSH1 0x01 000017f1: PUSH1 0x01 000017f3: PUSH1 0xa0 000017f5: SHL 000017f6: SUB 000017f7: AND 000017f8: CALLER 000017f9: PUSH1 0x01 000017fb: PUSH1 0x01 000017fd: PUSH1 0xa0 000017ff: SHL 00001800: SUB 00001801: AND 00001802: EQ 00001803: PUSH2 0x181e 00001806: JUMPI 00001807: PUSH1 0x40 00001809: MLOAD 0000180a: PUSH3 0x461bcd 0000180e: PUSH1 0xe5 00001810: SHL 00001811: DUP2 00001812: MSTORE 00001813: PUSH1 0x04 00001815: ADD 00001816: PUSH2 0x071d 00001819: SWAP1 0000181a: PUSH2 0x22d6 0000181d: JUMP 0000181e: JUMPDEST 0000181f: PUSH1 0x0c 00001821: SLOAD 00001822: TIMESTAMP 00001823: LT 00001824: ISZERO 00001825: PUSH2 0x182d 00001828: JUMPI 00001829: PUSH1 0x00 0000182b: DUP1 0000182c: REVERT 0000182d: JUMPDEST 0000182e: PUSH1 0x0b 00001830: SLOAD 00001831: PUSH1 0x08 00001833: DUP1 00001834: SLOAD 00001835: PUSH1 0x01 00001837: PUSH1 0x01 00001839: PUSH1 0xa0 0000183b: SHL 0000183c: SUB 0000183d: NOT 0000183e: AND 0000183f: PUSH1 0x01 00001841: PUSH1 0x01 00001843: PUSH1 0xa0 00001845: SHL 00001846: SUB 00001847: SWAP1 00001848: SWAP3 00001849: AND 0000184a: SWAP2 0000184b: SWAP1 0000184c: SWAP2 0000184d: OR 0000184e: SWAP1 0000184f: SSTORE 00001850: JUMP 00001851: JUMPDEST 00001852: CALLER 00001853: PUSH1 0x00 00001855: SWAP1 00001856: DUP2 00001857: MSTORE 00001858: PUSH1 0x06 0000185a: PUSH1 0x20 0000185c: MSTORE 0000185d: PUSH1 0x40 0000185f: DUP2 00001860: KECCAK256 00001861: SLOAD 00001862: PUSH1 0xff 00001864: AND 00001865: PUSH2 0x1880 00001868: JUMPI 00001869: PUSH1 0x40 0000186b: MLOAD 0000186c: PUSH3 0x461bcd 00001870: PUSH1 0xe5 00001872: SHL 00001873: DUP2 00001874: MSTORE 00001875: PUSH1 0x04 00001877: ADD 00001878: PUSH2 0x071d 0000187b: SWAP1 0000187c: PUSH2 0x2441 0000187f: JUMP 00001880: JUMPDEST 00001881: PUSH2 0x188a 00001884: DUP4 00001885: DUP4 00001886: PUSH2 0x19c5 00001889: JUMP 0000188a: JUMPDEST 0000188b: DUP3 0000188c: PUSH1 0x01 0000188e: PUSH1 0x01 00001890: PUSH1 0xa0 00001892: SHL 00001893: SUB 00001894: AND 00001895: DUP5 00001896: PUSH32 0x05d0634fe981be85c22e2942a880821b70095d84e152c3ea3c17a4e4250d9d61 000018b7: DUP5 000018b8: PUSH1 0x40 000018ba: MLOAD 000018bb: PUSH2 0x139f 000018be: SWAP2 000018bf: DUP2 000018c0: MSTORE 000018c1: PUSH1 0x20 000018c3: ADD 000018c4: SWAP1 000018c5: JUMP 000018c6: JUMPDEST 000018c7: PUSH1 0x00 000018c9: PUSH1 0x0c 000018cb: SLOAD 000018cc: TIMESTAMP 000018cd: LT 000018ce: PUSH2 0x18e1 000018d1: JUMPI 000018d2: POP 000018d3: PUSH1 0x0b 000018d5: SLOAD 000018d6: PUSH1 0x01 000018d8: PUSH1 0x01 000018da: PUSH1 0xa0 000018dc: SHL 000018dd: SUB 000018de: AND 000018df: SWAP1 000018e0: JUMP 000018e1: JUMPDEST 000018e2: POP 000018e3: PUSH1 0x08 000018e5: SLOAD 000018e6: PUSH1 0x01 000018e8: PUSH1 0x01 000018ea: PUSH1 0xa0 000018ec: SHL 000018ed: SUB 000018ee: AND 000018ef: SWAP1 000018f0: JUMP 000018f1: JUMPDEST 000018f2: PUSH2 0x18f9 000018f5: PUSH2 0x18c6 000018f8: JUMP 000018f9: JUMPDEST 000018fa: PUSH1 0x01 000018fc: PUSH1 0x01 000018fe: PUSH1 0xa0 00001900: SHL 00001901: SUB 00001902: AND 00001903: CALLER 00001904: PUSH1 0x01 00001906: PUSH1 0x01 00001908: PUSH1 0xa0 0000190a: SHL 0000190b: SUB 0000190c: AND 0000190d: EQ 0000190e: PUSH2 0x1929 00001911: JUMPI 00001912: PUSH1 0x40 00001914: MLOAD 00001915: PUSH3 0x461bcd 00001919: PUSH1 0xe5 0000191b: SHL 0000191c: DUP2 0000191d: MSTORE 0000191e: PUSH1 0x04 00001920: ADD 00001921: PUSH2 0x071d 00001924: SWAP1 00001925: PUSH2 0x22d6 00001928: JUMP 00001929: JUMPDEST 0000192a: PUSH1 0x01 0000192c: PUSH1 0x01 0000192e: PUSH1 0xa0 00001930: SHL 00001931: SUB 00001932: DUP2 00001933: AND 00001934: PUSH2 0x194f 00001937: JUMPI 00001938: PUSH1 0x40 0000193a: MLOAD 0000193b: PUSH3 0x461bcd 0000193f: PUSH1 0xe5 00001941: SHL 00001942: DUP2 00001943: MSTORE 00001944: PUSH1 0x04 00001946: ADD 00001947: PUSH2 0x071d 0000194a: SWAP1 0000194b: PUSH2 0x2493 0000194e: JUMP 0000194f: JUMPDEST 00001950: PUSH1 0x09 00001952: DUP1 00001953: SLOAD 00001954: PUSH1 0x01 00001956: PUSH1 0x01 00001958: PUSH1 0xa0 0000195a: SHL 0000195b: SUB 0000195c: NOT 0000195d: AND 0000195e: PUSH1 0x01 00001960: PUSH1 0x01 00001962: PUSH1 0xa0 00001964: SHL 00001965: SUB 00001966: DUP4 00001967: AND 00001968: OR 00001969: SWAP1 0000196a: SSTORE 0000196b: PUSH1 0x05 0000196d: SLOAD 0000196e: PUSH2 0x1977 00001971: SWAP1 00001972: TIMESTAMP 00001973: PUSH2 0x23c4 00001976: JUMP 00001977: JUMPDEST 00001978: PUSH1 0x0a 0000197a: SSTORE 0000197b: POP 0000197c: JUMP 0000197d: JUMPDEST 0000197e: PUSH1 0x00 00001980: PUSH2 0x1989 00001983: DUP5 00001984: DUP5 00001985: PUSH2 0x1be7 00001988: JUMP 00001989: JUMPDEST 0000198a: PUSH2 0x19bd 0000198d: PUSH1 0x01 0000198f: PUSH1 0x01 00001991: PUSH1 0xa0 00001993: SHL 00001994: SUB 00001995: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 000019b6: AND 000019b7: DUP4 000019b8: DUP6 000019b9: PUSH2 0x1da7 000019bc: JUMP 000019bd: JUMPDEST 000019be: POP 000019bf: SWAP1 000019c0: SWAP3 000019c1: SWAP2 000019c2: POP 000019c3: POP 000019c4: JUMP 000019c5: JUMPDEST 000019c6: PUSH1 0x01 000019c8: PUSH1 0x01 000019ca: PUSH1 0xa0 000019cc: SHL 000019cd: SUB 000019ce: DUP3 000019cf: AND 000019d0: PUSH2 0x1a1b 000019d3: JUMPI 000019d4: PUSH1 0x40 000019d6: MLOAD 000019d7: PUSH3 0x461bcd 000019db: PUSH1 0xe5 000019dd: SHL 000019de: DUP2 000019df: MSTORE 000019e0: PUSH1 0x20 000019e2: PUSH1 0x04 000019e4: DUP3 000019e5: ADD 000019e6: MSTORE 000019e7: PUSH1 0x1f 000019e9: PUSH1 0x24 000019eb: DUP3 000019ec: ADD 000019ed: MSTORE 000019ee: PUSH32 0x45524332303a206d696e7420746f20746865207a65726f206164647265737300 00001a0f: PUSH1 0x44 00001a11: DUP3 00001a12: ADD 00001a13: MSTORE 00001a14: PUSH1 0x64 00001a16: ADD 00001a17: PUSH2 0x071d 00001a1a: JUMP 00001a1b: JUMPDEST 00001a1c: DUP1 00001a1d: PUSH1 0x03 00001a1f: PUSH1 0x00 00001a21: DUP3 00001a22: DUP3 00001a23: SLOAD 00001a24: PUSH2 0x1a2d 00001a27: SWAP2 00001a28: SWAP1 00001a29: PUSH2 0x23c4 00001a2c: JUMP 00001a2d: JUMPDEST 00001a2e: SWAP1 00001a2f: SWAP2 00001a30: SSTORE 00001a31: POP 00001a32: POP 00001a33: PUSH1 0x01 00001a35: PUSH1 0x01 00001a37: PUSH1 0xa0 00001a39: SHL 00001a3a: SUB 00001a3b: DUP3 00001a3c: AND 00001a3d: PUSH1 0x00 00001a3f: SWAP1 00001a40: DUP2 00001a41: MSTORE 00001a42: PUSH1 0x02 00001a44: PUSH1 0x20 00001a46: MSTORE 00001a47: PUSH1 0x40 00001a49: DUP2 00001a4a: KECCAK256 00001a4b: DUP1 00001a4c: SLOAD 00001a4d: DUP4 00001a4e: SWAP3 00001a4f: SWAP1 00001a50: PUSH2 0x1a5a 00001a53: SWAP1 00001a54: DUP5 00001a55: SWAP1 00001a56: PUSH2 0x23c4 00001a59: JUMP 00001a5a: JUMPDEST 00001a5b: SWAP1 00001a5c: SWAP2 00001a5d: SSTORE 00001a5e: POP 00001a5f: POP 00001a60: PUSH1 0x40 00001a62: MLOAD 00001a63: DUP2 00001a64: DUP2 00001a65: MSTORE 00001a66: PUSH1 0x01 00001a68: PUSH1 0x01 00001a6a: PUSH1 0xa0 00001a6c: SHL 00001a6d: SUB 00001a6e: DUP4 00001a6f: AND 00001a70: SWAP1 00001a71: PUSH1 0x00 00001a73: SWAP1 00001a74: PUSH1 0x00 00001a76: DUP1 00001a77: MLOAD 00001a78: PUSH1 0x20 00001a7a: PUSH2 0x2500 00001a7d: DUP4 00001a7e: CODECOPY 00001a7f: DUP2 00001a80: MLOAD 00001a81: SWAP2 00001a82: MSTORE 00001a83: SWAP1 00001a84: PUSH1 0x20 00001a86: ADD 00001a87: JUMPDEST 00001a88: PUSH1 0x40 00001a8a: MLOAD 00001a8b: DUP1 00001a8c: SWAP2 00001a8d: SUB 00001a8e: SWAP1 00001a8f: LOG3 00001a90: POP 00001a91: POP 00001a92: JUMP 00001a93: JUMPDEST 00001a94: PUSH1 0x40 00001a96: MLOAD 00001a97: PUSH2 0x1901 00001a9a: PUSH1 0xf0 00001a9c: SHL 00001a9d: PUSH1 0x20 00001a9f: DUP3 00001aa0: ADD 00001aa1: MSTORE 00001aa2: PUSH32 0x584a74212f993f39abbcbc43a56ec7bc7fbeb1b356c465c2b1d2cd44c34eaf43 00001ac3: PUSH1 0x22 00001ac5: DUP3 00001ac6: ADD 00001ac7: MSTORE 00001ac8: PUSH1 0x42 00001aca: DUP2 00001acb: ADD 00001acc: DUP6 00001acd: SWAP1 00001ace: MSTORE 00001acf: PUSH1 0x00 00001ad1: SWAP1 00001ad2: DUP2 00001ad3: SWAP1 00001ad4: PUSH1 0x62 00001ad6: ADD 00001ad7: JUMPDEST 00001ad8: PUSH1 0x40 00001ada: DUP1 00001adb: MLOAD 00001adc: PUSH1 0x1f 00001ade: NOT 00001adf: DUP2 00001ae0: DUP5 00001ae1: SUB 00001ae2: ADD 00001ae3: DUP2 00001ae4: MSTORE 00001ae5: DUP3 00001ae6: DUP3 00001ae7: MSTORE 00001ae8: DUP1 00001ae9: MLOAD 00001aea: PUSH1 0x20 00001aec: SWAP2 00001aed: DUP3 00001aee: ADD 00001aef: KECCAK256 00001af0: PUSH1 0x00 00001af2: DUP1 00001af3: DUP6 00001af4: MSTORE 00001af5: SWAP2 00001af6: DUP5 00001af7: ADD 00001af8: DUP1 00001af9: DUP5 00001afa: MSTORE 00001afb: DUP2 00001afc: SWAP1 00001afd: MSTORE 00001afe: PUSH1 0xff 00001b00: DUP10 00001b01: AND 00001b02: SWAP3 00001b03: DUP5 00001b04: ADD 00001b05: SWAP3 00001b06: SWAP1 00001b07: SWAP3 00001b08: MSTORE 00001b09: PUSH1 0x60 00001b0b: DUP4 00001b0c: ADD 00001b0d: DUP8 00001b0e: SWAP1 00001b0f: MSTORE 00001b10: PUSH1 0x80 00001b12: DUP4 00001b13: ADD 00001b14: DUP7 00001b15: SWAP1 00001b16: MSTORE 00001b17: SWAP1 00001b18: SWAP3 00001b19: POP 00001b1a: SWAP1 00001b1b: PUSH1 0x01 00001b1d: SWAP1 00001b1e: PUSH1 0xa0 00001b20: ADD 00001b21: PUSH1 0x20 00001b23: PUSH1 0x40 00001b25: MLOAD 00001b26: PUSH1 0x20 00001b28: DUP2 00001b29: SUB 00001b2a: SWAP1 00001b2b: DUP1 00001b2c: DUP5 00001b2d: SUB 00001b2e: SWAP1 00001b2f: DUP6 00001b30: GAS 00001b31: STATICCALL 00001b32: ISZERO 00001b33: DUP1 00001b34: ISZERO 00001b35: PUSH2 0x1b42 00001b38: JUMPI 00001b39: RETURNDATASIZE 00001b3a: PUSH1 0x00 00001b3c: DUP1 00001b3d: RETURNDATACOPY 00001b3e: RETURNDATASIZE 00001b3f: PUSH1 0x00 00001b41: REVERT 00001b42: JUMPDEST 00001b43: POP 00001b44: POP 00001b45: PUSH1 0x40 00001b47: MLOAD 00001b48: PUSH1 0x1f 00001b4a: NOT 00001b4b: ADD 00001b4c: MLOAD 00001b4d: SWAP2 00001b4e: POP 00001b4f: POP 00001b50: PUSH1 0x01 00001b52: PUSH1 0x01 00001b54: PUSH1 0xa0 00001b56: SHL 00001b57: SUB 00001b58: DUP2 00001b59: AND 00001b5a: ISZERO 00001b5b: DUP1 00001b5c: ISZERO 00001b5d: SWAP1 00001b5e: PUSH2 0x1b78 00001b61: JUMPI 00001b62: POP 00001b63: DUP8 00001b64: PUSH1 0x01 00001b66: PUSH1 0x01 00001b68: PUSH1 0xa0 00001b6a: SHL 00001b6b: SUB 00001b6c: AND 00001b6d: DUP2 00001b6e: PUSH1 0x01 00001b70: PUSH1 0x01 00001b72: PUSH1 0xa0 00001b74: SHL 00001b75: SUB 00001b76: AND 00001b77: EQ 00001b78: JUMPDEST 00001b79: SWAP9 00001b7a: SWAP8 00001b7b: POP 00001b7c: POP 00001b7d: POP 00001b7e: POP 00001b7f: POP 00001b80: POP 00001b81: POP 00001b82: POP 00001b83: JUMP 00001b84: JUMPDEST 00001b85: PUSH1 0x40 00001b87: MLOAD 00001b88: PUSH32 0x19457468657265756d205369676e6564204d6573736167653a0a333200000000 00001ba9: PUSH1 0x20 00001bab: DUP3 00001bac: ADD 00001bad: MSTORE 00001bae: PUSH32 0x584a74212f993f39abbcbc43a56ec7bc7fbeb1b356c465c2b1d2cd44c34eaf43 00001bcf: PUSH1 0x3c 00001bd1: DUP3 00001bd2: ADD 00001bd3: MSTORE 00001bd4: PUSH1 0x5c 00001bd6: DUP2 00001bd7: ADD 00001bd8: DUP6 00001bd9: SWAP1 00001bda: MSTORE 00001bdb: PUSH1 0x00 00001bdd: SWAP1 00001bde: DUP2 00001bdf: SWAP1 00001be0: PUSH1 0x7c 00001be2: ADD 00001be3: PUSH2 0x1ad7 00001be6: JUMP 00001be7: JUMPDEST 00001be8: PUSH1 0x01 00001bea: PUSH1 0x01 00001bec: PUSH1 0xa0 00001bee: SHL 00001bef: SUB 00001bf0: DUP3 00001bf1: AND 00001bf2: PUSH2 0x1c47 00001bf5: JUMPI 00001bf6: PUSH1 0x40 00001bf8: MLOAD 00001bf9: PUSH3 0x461bcd 00001bfd: PUSH1 0xe5 00001bff: SHL 00001c00: DUP2 00001c01: MSTORE 00001c02: PUSH1 0x20 00001c04: PUSH1 0x04 00001c06: DUP3 00001c07: ADD 00001c08: MSTORE 00001c09: PUSH1 0x21 00001c0b: PUSH1 0x24 00001c0d: DUP3 00001c0e: ADD 00001c0f: MSTORE 00001c10: PUSH32 0x45524332303a206275726e2066726f6d20746865207a65726f20616464726573 00001c31: PUSH1 0x44 00001c33: DUP3 00001c34: ADD 00001c35: MSTORE 00001c36: PUSH1 0x73 00001c38: PUSH1 0xf8 00001c3a: SHL 00001c3b: PUSH1 0x64 00001c3d: DUP3 00001c3e: ADD 00001c3f: MSTORE 00001c40: PUSH1 0x84 00001c42: ADD 00001c43: PUSH2 0x071d 00001c46: JUMP 00001c47: JUMPDEST 00001c48: PUSH1 0x01 00001c4a: PUSH1 0x01 00001c4c: PUSH1 0xa0 00001c4e: SHL 00001c4f: SUB 00001c50: DUP3 00001c51: AND 00001c52: PUSH1 0x00 00001c54: SWAP1 00001c55: DUP2 00001c56: MSTORE 00001c57: PUSH1 0x02 00001c59: PUSH1 0x20 00001c5b: MSTORE 00001c5c: PUSH1 0x40 00001c5e: DUP2 00001c5f: KECCAK256 00001c60: DUP1 00001c61: SLOAD 00001c62: DUP4 00001c63: SWAP3 00001c64: SWAP1 00001c65: PUSH2 0x1c6f 00001c68: SWAP1 00001c69: DUP5 00001c6a: SWAP1 00001c6b: PUSH2 0x235e 00001c6e: JUMP 00001c6f: JUMPDEST 00001c70: SWAP3 00001c71: POP 00001c72: POP 00001c73: DUP2 00001c74: SWAP1 00001c75: SSTORE 00001c76: POP 00001c77: DUP1 00001c78: PUSH1 0x03 00001c7a: PUSH1 0x00 00001c7c: DUP3 00001c7d: DUP3 00001c7e: SLOAD 00001c7f: PUSH2 0x1c88 00001c82: SWAP2 00001c83: SWAP1 00001c84: PUSH2 0x235e 00001c87: JUMP 00001c88: JUMPDEST 00001c89: SWAP1 00001c8a: SWAP2 00001c8b: SSTORE 00001c8c: POP 00001c8d: POP 00001c8e: PUSH1 0x40 00001c90: MLOAD 00001c91: DUP2 00001c92: DUP2 00001c93: MSTORE 00001c94: PUSH1 0x00 00001c96: SWAP1 00001c97: PUSH1 0x01 00001c99: PUSH1 0x01 00001c9b: PUSH1 0xa0 00001c9d: SHL 00001c9e: SUB 00001c9f: DUP5 00001ca0: AND 00001ca1: SWAP1 00001ca2: PUSH1 0x00 00001ca4: DUP1 00001ca5: MLOAD 00001ca6: PUSH1 0x20 00001ca8: PUSH2 0x2500 00001cab: DUP4 00001cac: CODECOPY 00001cad: DUP2 00001cae: MLOAD 00001caf: SWAP2 00001cb0: MSTORE 00001cb1: SWAP1 00001cb2: PUSH1 0x20 00001cb4: ADD 00001cb5: PUSH2 0x1a87 00001cb8: JUMP 00001cb9: JUMPDEST 00001cba: PUSH1 0x40 00001cbc: MLOAD 00001cbd: PUSH1 0x01 00001cbf: PUSH1 0x01 00001cc1: PUSH1 0xa0 00001cc3: SHL 00001cc4: SUB 00001cc5: DUP1 00001cc6: DUP6 00001cc7: AND 00001cc8: PUSH1 0x24 00001cca: DUP4 00001ccb: ADD 00001ccc: MSTORE 00001ccd: DUP4 00001cce: AND 00001ccf: PUSH1 0x44 00001cd1: DUP3 00001cd2: ADD 00001cd3: MSTORE 00001cd4: PUSH1 0x64 00001cd6: DUP2 00001cd7: ADD 00001cd8: DUP3 00001cd9: SWAP1 00001cda: MSTORE 00001cdb: PUSH2 0x1d24 00001cde: SWAP1 00001cdf: DUP6 00001ce0: SWAP1 00001ce1: PUSH4 0x23b872dd 00001ce6: PUSH1 0xe0 00001ce8: SHL 00001ce9: SWAP1 00001cea: PUSH1 0x84 00001cec: ADD 00001ced: JUMPDEST 00001cee: PUSH1 0x40 00001cf0: DUP1 00001cf1: MLOAD 00001cf2: PUSH1 0x1f 00001cf4: NOT 00001cf5: DUP2 00001cf6: DUP5 00001cf7: SUB 00001cf8: ADD 00001cf9: DUP2 00001cfa: MSTORE 00001cfb: SWAP2 00001cfc: SWAP1 00001cfd: MSTORE 00001cfe: PUSH1 0x20 00001d00: DUP2 00001d01: ADD 00001d02: DUP1 00001d03: MLOAD 00001d04: PUSH1 0x01 00001d06: PUSH1 0x01 00001d08: PUSH1 0xe0 00001d0a: SHL 00001d0b: SUB 00001d0c: AND 00001d0d: PUSH1 0x01 00001d0f: PUSH1 0x01 00001d11: PUSH1 0xe0 00001d13: SHL 00001d14: SUB 00001d15: NOT 00001d16: SWAP1 00001d17: SWAP4 00001d18: AND 00001d19: SWAP3 00001d1a: SWAP1 00001d1b: SWAP3 00001d1c: OR 00001d1d: SWAP1 00001d1e: SWAP2 00001d1f: MSTORE 00001d20: PUSH2 0x1ddc 00001d23: JUMP 00001d24: JUMPDEST 00001d25: POP 00001d26: POP 00001d27: POP 00001d28: POP 00001d29: JUMP 00001d2a: JUMPDEST 00001d2b: PUSH1 0x00 00001d2d: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00001d4e: PUSH1 0x01 00001d50: PUSH1 0x01 00001d52: PUSH1 0xa0 00001d54: SHL 00001d55: SUB 00001d56: AND 00001d57: ISZERO 00001d58: DUP1 00001d59: ISZERO 00001d5a: SWAP1 00001d5b: PUSH2 0x1d8d 00001d5e: JUMPI 00001d5f: POP 00001d60: PUSH32 0x000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 00001d81: PUSH1 0x01 00001d83: PUSH1 0x01 00001d85: PUSH1 0xa0 00001d87: SHL 00001d88: SUB 00001d89: AND 00001d8a: ADDRESS 00001d8b: EQ 00001d8c: ISZERO 00001d8d: JUMPDEST 00001d8e: PUSH2 0x1d96 00001d91: JUMPI 00001d92: PUSH1 0x00 00001d94: DUP1 00001d95: REVERT 00001d96: JUMPDEST 00001d97: PUSH2 0x1da0 00001d9a: DUP3 00001d9b: DUP5 00001d9c: PUSH2 0x19c5 00001d9f: JUMP 00001da0: JUMPDEST 00001da1: POP 00001da2: SWAP1 00001da3: SWAP2 00001da4: SWAP1 00001da5: POP 00001da6: JUMP 00001da7: JUMPDEST 00001da8: PUSH1 0x40 00001daa: MLOAD 00001dab: PUSH1 0x01 00001dad: PUSH1 0x01 00001daf: PUSH1 0xa0 00001db1: SHL 00001db2: SUB 00001db3: DUP4 00001db4: AND 00001db5: PUSH1 0x24 00001db7: DUP3 00001db8: ADD 00001db9: MSTORE 00001dba: PUSH1 0x44 00001dbc: DUP2 00001dbd: ADD 00001dbe: DUP3 00001dbf: SWAP1 00001dc0: MSTORE 00001dc1: PUSH2 0x1dd7 00001dc4: SWAP1 00001dc5: DUP5 00001dc6: SWAP1 00001dc7: PUSH4 0xa9059cbb 00001dcc: PUSH1 0xe0 00001dce: SHL 00001dcf: SWAP1 00001dd0: PUSH1 0x64 00001dd2: ADD 00001dd3: PUSH2 0x1ced 00001dd6: JUMP 00001dd7: JUMPDEST 00001dd8: POP 00001dd9: POP 00001dda: POP 00001ddb: JUMP 00001ddc: JUMPDEST 00001ddd: PUSH2 0x1dee 00001de0: DUP3 00001de1: PUSH1 0x01 00001de3: PUSH1 0x01 00001de5: PUSH1 0xa0 00001de7: SHL 00001de8: SUB 00001de9: AND 00001dea: PUSH2 0x1f63 00001ded: JUMP 00001dee: JUMPDEST 00001def: PUSH2 0x1e3a 00001df2: JUMPI 00001df3: PUSH1 0x40 00001df5: MLOAD 00001df6: PUSH3 0x461bcd 00001dfa: PUSH1 0xe5 00001dfc: SHL 00001dfd: DUP2 00001dfe: MSTORE 00001dff: PUSH1 0x20 00001e01: PUSH1 0x04 00001e03: DUP3 00001e04: ADD 00001e05: MSTORE 00001e06: PUSH1 0x1f 00001e08: PUSH1 0x24 00001e0a: DUP3 00001e0b: ADD 00001e0c: MSTORE 00001e0d: PUSH32 0x5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400 00001e2e: PUSH1 0x44 00001e30: DUP3 00001e31: ADD 00001e32: MSTORE 00001e33: PUSH1 0x64 00001e35: ADD 00001e36: PUSH2 0x071d 00001e39: JUMP 00001e3a: JUMPDEST 00001e3b: PUSH1 0x00 00001e3d: DUP1 00001e3e: DUP4 00001e3f: PUSH1 0x01 00001e41: PUSH1 0x01 00001e43: PUSH1 0xa0 00001e45: SHL 00001e46: SUB 00001e47: AND 00001e48: DUP4 00001e49: PUSH1 0x40 00001e4b: MLOAD 00001e4c: PUSH2 0x1e55 00001e4f: SWAP2 00001e50: SWAP1 00001e51: PUSH2 0x24e3 00001e54: JUMP 00001e55: JUMPDEST 00001e56: PUSH1 0x00 00001e58: PUSH1 0x40 00001e5a: MLOAD 00001e5b: DUP1 00001e5c: DUP4 00001e5d: SUB 00001e5e: DUP2 00001e5f: PUSH1 0x00 00001e61: DUP7 00001e62: GAS 00001e63: CALL 00001e64: SWAP2 00001e65: POP 00001e66: POP 00001e67: RETURNDATASIZE 00001e68: DUP1 00001e69: PUSH1 0x00 00001e6b: DUP2 00001e6c: EQ 00001e6d: PUSH2 0x1e92 00001e70: JUMPI 00001e71: PUSH1 0x40 00001e73: MLOAD 00001e74: SWAP2 00001e75: POP 00001e76: PUSH1 0x1f 00001e78: NOT 00001e79: PUSH1 0x3f 00001e7b: RETURNDATASIZE 00001e7c: ADD 00001e7d: AND 00001e7e: DUP3 00001e7f: ADD 00001e80: PUSH1 0x40 00001e82: MSTORE 00001e83: RETURNDATASIZE 00001e84: DUP3 00001e85: MSTORE 00001e86: RETURNDATASIZE 00001e87: PUSH1 0x00 00001e89: PUSH1 0x20 00001e8b: DUP5 00001e8c: ADD 00001e8d: RETURNDATACOPY 00001e8e: PUSH2 0x1e97 00001e91: JUMP 00001e92: JUMPDEST 00001e93: PUSH1 0x60 00001e95: SWAP2 00001e96: POP 00001e97: JUMPDEST 00001e98: POP 00001e99: SWAP2 00001e9a: POP 00001e9b: SWAP2 00001e9c: POP 00001e9d: DUP2 00001e9e: PUSH2 0x1ee9 00001ea1: JUMPI 00001ea2: PUSH1 0x40 00001ea4: MLOAD 00001ea5: PUSH3 0x461bcd 00001ea9: PUSH1 0xe5 00001eab: SHL 00001eac: DUP2 00001ead: MSTORE 00001eae: PUSH1 0x20 00001eb0: PUSH1 0x04 00001eb2: DUP3 00001eb3: ADD 00001eb4: DUP2 00001eb5: SWAP1 00001eb6: MSTORE 00001eb7: PUSH1 0x24 00001eb9: DUP3 00001eba: ADD 00001ebb: MSTORE 00001ebc: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00001edd: PUSH1 0x44 00001edf: DUP3 00001ee0: ADD 00001ee1: MSTORE 00001ee2: PUSH1 0x64 00001ee4: ADD 00001ee5: PUSH2 0x071d 00001ee8: JUMP 00001ee9: JUMPDEST 00001eea: DUP1 00001eeb: MLOAD 00001eec: ISZERO 00001eed: PUSH2 0x1d24 00001ef0: JUMPI 00001ef1: DUP1 00001ef2: DUP1 00001ef3: PUSH1 0x20 00001ef5: ADD 00001ef6: SWAP1 00001ef7: MLOAD 00001ef8: DUP2 00001ef9: ADD 00001efa: SWAP1 00001efb: PUSH2 0x1f04 00001efe: SWAP2 00001eff: SWAP1 00001f00: PUSH2 0x2424 00001f03: JUMP 00001f04: JUMPDEST 00001f05: PUSH2 0x1d24 00001f08: JUMPI 00001f09: PUSH1 0x40 00001f0b: MLOAD 00001f0c: PUSH3 0x461bcd 00001f10: PUSH1 0xe5 00001f12: SHL 00001f13: DUP2 00001f14: MSTORE 00001f15: PUSH1 0x20 00001f17: PUSH1 0x04 00001f19: DUP3 00001f1a: ADD 00001f1b: MSTORE 00001f1c: PUSH1 0x2a 00001f1e: PUSH1 0x24 00001f20: DUP3 00001f21: ADD 00001f22: MSTORE 00001f23: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 00001f44: PUSH1 0x44 00001f46: DUP3 00001f47: ADD 00001f48: MSTORE 00001f49: PUSH10 0x1bdd081cdd58d8d95959 00001f54: PUSH1 0xb2 00001f56: SHL 00001f57: PUSH1 0x64 00001f59: DUP3 00001f5a: ADD 00001f5b: MSTORE 00001f5c: PUSH1 0x84 00001f5e: ADD 00001f5f: PUSH2 0x071d 00001f62: JUMP 00001f63: JUMPDEST 00001f64: PUSH1 0x00 00001f66: DUP2 00001f67: EXTCODEHASH 00001f68: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 00001f89: DUP2 00001f8a: ISZERO 00001f8b: DUP1 00001f8c: ISZERO 00001f8d: SWAP1 00001f8e: PUSH2 0x0731 00001f91: JUMPI 00001f92: POP 00001f93: EQ 00001f94: ISZERO 00001f95: SWAP3 00001f96: SWAP2 00001f97: POP 00001f98: POP 00001f99: JUMP 00001f9a: JUMPDEST 00001f9b: DUP1 00001f9c: CALLDATALOAD 00001f9d: PUSH1 0x01 00001f9f: PUSH1 0x01 00001fa1: PUSH1 0xa0 00001fa3: SHL 00001fa4: SUB 00001fa5: DUP2 00001fa6: AND 00001fa7: DUP2 00001fa8: EQ 00001fa9: PUSH2 0x103f 00001fac: JUMPI 00001fad: PUSH1 0x00 00001faf: DUP1 00001fb0: REVERT 00001fb1: JUMPDEST 00001fb2: PUSH1 0x00 00001fb4: DUP1 00001fb5: PUSH1 0x00 00001fb7: PUSH1 0x60 00001fb9: DUP5 00001fba: DUP7 00001fbb: SUB 00001fbc: SLT 00001fbd: ISZERO 00001fbe: PUSH2 0x1fc6 00001fc1: JUMPI 00001fc2: PUSH1 0x00 00001fc4: DUP1 00001fc5: REVERT 00001fc6: JUMPDEST 00001fc7: PUSH2 0x1fcf 00001fca: DUP5 00001fcb: PUSH2 0x1f9a 00001fce: JUMP 00001fcf: JUMPDEST 00001fd0: SWAP3 00001fd1: POP 00001fd2: PUSH1 0x20 00001fd4: DUP5 00001fd5: ADD 00001fd6: CALLDATALOAD 00001fd7: SWAP2 00001fd8: POP 00001fd9: PUSH2 0x1fe4 00001fdc: PUSH1 0x40 00001fde: DUP6 00001fdf: ADD 00001fe0: PUSH2 0x1f9a 00001fe3: JUMP 00001fe4: JUMPDEST 00001fe5: SWAP1 00001fe6: POP 00001fe7: SWAP3 00001fe8: POP 00001fe9: SWAP3 00001fea: POP 00001feb: SWAP3 00001fec: JUMP 00001fed: JUMPDEST 00001fee: PUSH1 0x00 00001ff0: DUP1 00001ff1: PUSH1 0x40 00001ff3: DUP4 00001ff4: DUP6 00001ff5: SUB 00001ff6: SLT 00001ff7: ISZERO 00001ff8: PUSH2 0x2000 00001ffb: JUMPI 00001ffc: PUSH1 0x00 00001ffe: DUP1 00001fff: REVERT 00002000: JUMPDEST 00002001: DUP3 00002002: CALLDATALOAD 00002003: SWAP2 00002004: POP 00002005: PUSH2 0x2010 00002008: PUSH1 0x20 0000200a: DUP5 0000200b: ADD 0000200c: PUSH2 0x1f9a 0000200f: JUMP 00002010: JUMPDEST 00002011: SWAP1 00002012: POP 00002013: SWAP3 00002014: POP 00002015: SWAP3 00002016: SWAP1 00002017: POP 00002018: JUMP 00002019: JUMPDEST 0000201a: PUSH1 0x00 0000201c: JUMPDEST 0000201d: DUP4 0000201e: DUP2 0000201f: LT 00002020: ISZERO 00002021: PUSH2 0x2034 00002024: JUMPI 00002025: DUP2 00002026: DUP2 00002027: ADD 00002028: MLOAD 00002029: DUP4 0000202a: DUP3 0000202b: ADD 0000202c: MSTORE 0000202d: PUSH1 0x20 0000202f: ADD 00002030: PUSH2 0x201c 00002033: JUMP 00002034: JUMPDEST 00002035: DUP4 00002036: DUP2 00002037: GT 00002038: ISZERO 00002039: PUSH2 0x1d24 0000203c: JUMPI 0000203d: POP 0000203e: POP 0000203f: PUSH1 0x00 00002041: SWAP2 00002042: ADD 00002043: MSTORE 00002044: JUMP 00002045: JUMPDEST 00002046: PUSH1 0x20 00002048: DUP2 00002049: MSTORE 0000204a: PUSH1 0x00 0000204c: DUP3 0000204d: MLOAD 0000204e: DUP1 0000204f: PUSH1 0x20 00002051: DUP5 00002052: ADD 00002053: MSTORE 00002054: PUSH2 0x2064 00002057: DUP2 00002058: PUSH1 0x40 0000205a: DUP6 0000205b: ADD 0000205c: PUSH1 0x20 0000205e: DUP8 0000205f: ADD 00002060: PUSH2 0x2019 00002063: JUMP 00002064: JUMPDEST 00002065: PUSH1 0x1f 00002067: ADD 00002068: PUSH1 0x1f 0000206a: NOT 0000206b: AND 0000206c: SWAP2 0000206d: SWAP1 0000206e: SWAP2 0000206f: ADD 00002070: PUSH1 0x40 00002072: ADD 00002073: SWAP3 00002074: SWAP2 00002075: POP 00002076: POP 00002077: JUMP 00002078: JUMPDEST 00002079: PUSH1 0x00 0000207b: DUP1 0000207c: PUSH1 0x40 0000207e: DUP4 0000207f: DUP6 00002080: SUB 00002081: SLT 00002082: ISZERO 00002083: PUSH2 0x208b 00002086: JUMPI 00002087: PUSH1 0x00 00002089: DUP1 0000208a: REVERT 0000208b: JUMPDEST 0000208c: PUSH2 0x2094 0000208f: DUP4 00002090: PUSH2 0x1f9a 00002093: JUMP 00002094: JUMPDEST 00002095: SWAP5 00002096: PUSH1 0x20 00002098: SWAP4 00002099: SWAP1 0000209a: SWAP4 0000209b: ADD 0000209c: CALLDATALOAD 0000209d: SWAP4 0000209e: POP 0000209f: POP 000020a0: POP 000020a1: JUMP 000020a2: JUMPDEST 000020a3: PUSH1 0x00 000020a5: DUP1 000020a6: PUSH1 0x00 000020a8: PUSH1 0x60 000020aa: DUP5 000020ab: DUP7 000020ac: SUB 000020ad: SLT 000020ae: ISZERO 000020af: PUSH2 0x20b7 000020b2: JUMPI 000020b3: PUSH1 0x00 000020b5: DUP1 000020b6: REVERT 000020b7: JUMPDEST 000020b8: PUSH2 0x20c0 000020bb: DUP5 000020bc: PUSH2 0x1f9a 000020bf: JUMP 000020c0: JUMPDEST 000020c1: SWAP3 000020c2: POP 000020c3: PUSH2 0x20ce 000020c6: PUSH1 0x20 000020c8: DUP6 000020c9: ADD 000020ca: PUSH2 0x1f9a 000020cd: JUMP 000020ce: JUMPDEST 000020cf: SWAP2 000020d0: POP 000020d1: PUSH1 0x40 000020d3: DUP5 000020d4: ADD 000020d5: CALLDATALOAD 000020d6: SWAP1 000020d7: POP 000020d8: SWAP3 000020d9: POP 000020da: SWAP3 000020db: POP 000020dc: SWAP3 000020dd: JUMP 000020de: JUMPDEST 000020df: PUSH1 0x00 000020e1: PUSH1 0x20 000020e3: DUP3 000020e4: DUP5 000020e5: SUB 000020e6: SLT 000020e7: ISZERO 000020e8: PUSH2 0x20f0 000020eb: JUMPI 000020ec: PUSH1 0x00 000020ee: DUP1 000020ef: REVERT 000020f0: JUMPDEST 000020f1: POP 000020f2: CALLDATALOAD 000020f3: SWAP2 000020f4: SWAP1 000020f5: POP 000020f6: JUMP 000020f7: JUMPDEST 000020f8: PUSH1 0x00 000020fa: PUSH1 0x20 000020fc: DUP3 000020fd: DUP5 000020fe: SUB 000020ff: SLT 00002100: ISZERO 00002101: PUSH2 0x2109 00002104: JUMPI 00002105: PUSH1 0x00 00002107: DUP1 00002108: REVERT 00002109: JUMPDEST 0000210a: PUSH2 0x0746 0000210d: DUP3 0000210e: PUSH2 0x1f9a 00002111: JUMP 00002112: JUMPDEST 00002113: PUSH1 0x00 00002115: DUP1 00002116: PUSH1 0x00 00002118: DUP1 00002119: PUSH1 0x60 0000211b: DUP6 0000211c: DUP8 0000211d: SUB 0000211e: SLT 0000211f: ISZERO 00002120: PUSH2 0x2128 00002123: JUMPI 00002124: PUSH1 0x00 00002126: DUP1 00002127: REVERT 00002128: JUMPDEST 00002129: PUSH2 0x2131 0000212c: DUP6 0000212d: PUSH2 0x1f9a 00002130: JUMP 00002131: JUMPDEST 00002132: SWAP4 00002133: POP 00002134: PUSH1 0x20 00002136: DUP6 00002137: ADD 00002138: CALLDATALOAD 00002139: SWAP3 0000213a: POP 0000213b: PUSH1 0x40 0000213d: DUP6 0000213e: ADD 0000213f: CALLDATALOAD 00002140: PUSH8 0xffffffffffffffff 00002149: DUP1 0000214a: DUP3 0000214b: GT 0000214c: ISZERO 0000214d: PUSH2 0x2155 00002150: JUMPI 00002151: PUSH1 0x00 00002153: DUP1 00002154: REVERT 00002155: JUMPDEST 00002156: DUP2 00002157: DUP8 00002158: ADD 00002159: SWAP2 0000215a: POP 0000215b: DUP8 0000215c: PUSH1 0x1f 0000215e: DUP4 0000215f: ADD 00002160: SLT 00002161: PUSH2 0x2169 00002164: JUMPI 00002165: PUSH1 0x00 00002167: DUP1 00002168: REVERT 00002169: JUMPDEST 0000216a: DUP2 0000216b: CALLDATALOAD 0000216c: DUP2 0000216d: DUP2 0000216e: GT 0000216f: ISZERO 00002170: PUSH2 0x2178 00002173: JUMPI 00002174: PUSH1 0x00 00002176: DUP1 00002177: REVERT 00002178: JUMPDEST 00002179: DUP9 0000217a: PUSH1 0x20 0000217c: DUP3 0000217d: DUP6 0000217e: ADD 0000217f: ADD 00002180: GT 00002181: ISZERO 00002182: PUSH2 0x218a 00002185: JUMPI 00002186: PUSH1 0x00 00002188: DUP1 00002189: REVERT 0000218a: JUMPDEST 0000218b: SWAP6 0000218c: SWAP9 0000218d: SWAP5 0000218e: SWAP8 0000218f: POP 00002190: POP 00002191: PUSH1 0x20 00002193: ADD 00002194: SWAP5 00002195: POP 00002196: POP 00002197: POP 00002198: JUMP 00002199: JUMPDEST 0000219a: PUSH1 0x00 0000219c: DUP1 0000219d: PUSH1 0x00 0000219f: DUP1 000021a0: PUSH1 0x00 000021a2: DUP1 000021a3: PUSH1 0x00 000021a5: PUSH1 0xe0 000021a7: DUP9 000021a8: DUP11 000021a9: SUB 000021aa: SLT 000021ab: ISZERO 000021ac: PUSH2 0x21b4 000021af: JUMPI 000021b0: PUSH1 0x00 000021b2: DUP1 000021b3: REVERT 000021b4: JUMPDEST 000021b5: PUSH2 0x21bd 000021b8: DUP9 000021b9: PUSH2 0x1f9a 000021bc: JUMP 000021bd: JUMPDEST 000021be: SWAP7 000021bf: POP 000021c0: PUSH2 0x21cb 000021c3: PUSH1 0x20 000021c5: DUP10 000021c6: ADD 000021c7: PUSH2 0x1f9a 000021ca: JUMP 000021cb: JUMPDEST 000021cc: SWAP6 000021cd: POP 000021ce: PUSH1 0x40 000021d0: DUP9 000021d1: ADD 000021d2: CALLDATALOAD 000021d3: SWAP5 000021d4: POP 000021d5: PUSH1 0x60 000021d7: DUP9 000021d8: ADD 000021d9: CALLDATALOAD 000021da: SWAP4 000021db: POP 000021dc: PUSH1 0x80 000021de: DUP9 000021df: ADD 000021e0: CALLDATALOAD 000021e1: PUSH1 0xff 000021e3: DUP2 000021e4: AND 000021e5: DUP2 000021e6: EQ 000021e7: PUSH2 0x21ef 000021ea: JUMPI 000021eb: PUSH1 0x00 000021ed: DUP1 000021ee: REVERT 000021ef: JUMPDEST 000021f0: SWAP7 000021f1: SWAP10 000021f2: SWAP6 000021f3: SWAP9 000021f4: POP 000021f5: SWAP4 000021f6: SWAP7 000021f7: SWAP3 000021f8: SWAP6 000021f9: SWAP5 000021fa: PUSH1 0xa0 000021fc: DUP5 000021fd: ADD 000021fe: CALLDATALOAD 000021ff: SWAP5 00002200: POP 00002201: PUSH1 0xc0 00002203: SWAP1 00002204: SWAP4 00002205: ADD 00002206: CALLDATALOAD 00002207: SWAP3 00002208: SWAP2 00002209: POP 0000220a: POP 0000220b: JUMP 0000220c: JUMPDEST 0000220d: PUSH1 0x20 0000220f: DUP1 00002210: DUP3 00002211: MSTORE 00002212: DUP3 00002213: MLOAD 00002214: DUP3 00002215: DUP3 00002216: ADD 00002217: DUP2 00002218: SWAP1 00002219: MSTORE 0000221a: PUSH1 0x00 0000221c: SWAP2 0000221d: SWAP1 0000221e: DUP5 0000221f: DUP3 00002220: ADD 00002221: SWAP1 00002222: PUSH1 0x40 00002224: DUP6 00002225: ADD 00002226: SWAP1 00002227: DUP5 00002228: JUMPDEST 00002229: DUP2 0000222a: DUP2 0000222b: LT 0000222c: ISZERO 0000222d: PUSH2 0x224d 00002230: JUMPI 00002231: DUP4 00002232: MLOAD 00002233: PUSH1 0x01 00002235: PUSH1 0x01 00002237: PUSH1 0xa0 00002239: SHL 0000223a: SUB 0000223b: AND 0000223c: DUP4 0000223d: MSTORE 0000223e: SWAP3 0000223f: DUP5 00002240: ADD 00002241: SWAP3 00002242: SWAP2 00002243: DUP5 00002244: ADD 00002245: SWAP2 00002246: PUSH1 0x01 00002248: ADD 00002249: PUSH2 0x2228 0000224c: JUMP 0000224d: JUMPDEST 0000224e: POP 0000224f: SWAP1 00002250: SWAP7 00002251: SWAP6 00002252: POP 00002253: POP 00002254: POP 00002255: POP 00002256: POP 00002257: POP 00002258: JUMP 00002259: JUMPDEST 0000225a: DUP1 0000225b: ISZERO 0000225c: ISZERO 0000225d: DUP2 0000225e: EQ 0000225f: PUSH2 0x2267 00002262: JUMPI 00002263: PUSH1 0x00 00002265: DUP1 00002266: REVERT 00002267: JUMPDEST 00002268: POP 00002269: JUMP 0000226a: JUMPDEST 0000226b: PUSH1 0x00 0000226d: PUSH1 0x20 0000226f: DUP3 00002270: DUP5 00002271: SUB 00002272: SLT 00002273: ISZERO 00002274: PUSH2 0x227c 00002277: JUMPI 00002278: PUSH1 0x00 0000227a: DUP1 0000227b: REVERT 0000227c: JUMPDEST 0000227d: DUP2 0000227e: CALLDATALOAD 0000227f: PUSH2 0x0746 00002282: DUP2 00002283: PUSH2 0x2259 00002286: JUMP 00002287: JUMPDEST 00002288: PUSH1 0x00 0000228a: DUP1 0000228b: PUSH1 0x40 0000228d: DUP4 0000228e: DUP6 0000228f: SUB 00002290: SLT 00002291: ISZERO 00002292: PUSH2 0x229a 00002295: JUMPI 00002296: PUSH1 0x00 00002298: DUP1 00002299: REVERT 0000229a: JUMPDEST 0000229b: PUSH2 0x22a3 0000229e: DUP4 0000229f: PUSH2 0x1f9a 000022a2: JUMP 000022a3: JUMPDEST 000022a4: SWAP2 000022a5: POP 000022a6: PUSH2 0x2010 000022a9: PUSH1 0x20 000022ab: DUP5 000022ac: ADD 000022ad: PUSH2 0x1f9a 000022b0: JUMP 000022b1: JUMPDEST 000022b2: PUSH1 0x00 000022b4: DUP1 000022b5: PUSH1 0x00 000022b7: PUSH1 0x60 000022b9: DUP5 000022ba: DUP7 000022bb: SUB 000022bc: SLT 000022bd: ISZERO 000022be: PUSH2 0x22c6 000022c1: JUMPI 000022c2: PUSH1 0x00 000022c4: DUP1 000022c5: REVERT 000022c6: JUMPDEST 000022c7: DUP4 000022c8: CALLDATALOAD 000022c9: SWAP3 000022ca: POP 000022cb: PUSH2 0x20ce 000022ce: PUSH1 0x20 000022d0: DUP6 000022d1: ADD 000022d2: PUSH2 0x1f9a 000022d5: JUMP 000022d6: JUMPDEST 000022d7: PUSH1 0x20 000022d9: DUP1 000022da: DUP3 000022db: MSTORE 000022dc: PUSH1 0x19 000022de: SWAP1 000022df: DUP3 000022e0: ADD 000022e1: MSTORE 000022e2: PUSH32 0x416e7973776170563345524332303a20464f5242494444454e00000000000000 00002303: PUSH1 0x40 00002305: DUP3 00002306: ADD 00002307: MSTORE 00002308: PUSH1 0x60 0000230a: ADD 0000230b: SWAP1 0000230c: JUMP 0000230d: JUMPDEST 0000230e: PUSH1 0x01 00002310: DUP2 00002311: DUP2 00002312: SHR 00002313: SWAP1 00002314: DUP3 00002315: AND 00002316: DUP1 00002317: PUSH2 0x2321 0000231a: JUMPI 0000231b: PUSH1 0x7f 0000231d: DUP3 0000231e: AND 0000231f: SWAP2 00002320: POP 00002321: JUMPDEST 00002322: PUSH1 0x20 00002324: DUP3 00002325: LT 00002326: DUP2 00002327: EQ 00002328: ISZERO 00002329: PUSH2 0x2342 0000232c: JUMPI 0000232d: PUSH4 0x4e487b71 00002332: PUSH1 0xe0 00002334: SHL 00002335: PUSH1 0x00 00002337: MSTORE 00002338: PUSH1 0x22 0000233a: PUSH1 0x04 0000233c: MSTORE 0000233d: PUSH1 0x24 0000233f: PUSH1 0x00 00002341: REVERT 00002342: JUMPDEST 00002343: POP 00002344: SWAP2 00002345: SWAP1 00002346: POP 00002347: JUMP 00002348: JUMPDEST 00002349: PUSH4 0x4e487b71 0000234e: PUSH1 0xe0 00002350: SHL 00002351: PUSH1 0x00 00002353: MSTORE 00002354: PUSH1 0x11 00002356: PUSH1 0x04 00002358: MSTORE 00002359: PUSH1 0x24 0000235b: PUSH1 0x00 0000235d: REVERT 0000235e: JUMPDEST 0000235f: PUSH1 0x00 00002361: DUP3 00002362: DUP3 00002363: LT 00002364: ISZERO 00002365: PUSH2 0x2370 00002368: JUMPI 00002369: PUSH2 0x2370 0000236c: PUSH2 0x2348 0000236f: JUMP 00002370: JUMPDEST 00002371: POP 00002372: SUB 00002373: SWAP1 00002374: JUMP 00002375: JUMPDEST 00002376: PUSH1 0x20 00002378: DUP1 00002379: DUP3 0000237a: MSTORE 0000237b: PUSH1 0x2f 0000237d: SWAP1 0000237e: DUP3 0000237f: ADD 00002380: MSTORE 00002381: PUSH32 0x416e7973776170563345524332303a207472616e7366657220616d6f756e7420 000023a2: PUSH1 0x40 000023a4: DUP3 000023a5: ADD 000023a6: MSTORE 000023a7: PUSH15 0x657863656564732062616c616e6365 000023b7: PUSH1 0x88 000023b9: SHL 000023ba: PUSH1 0x60 000023bc: DUP3 000023bd: ADD 000023be: MSTORE 000023bf: PUSH1 0x80 000023c1: ADD 000023c2: SWAP1 000023c3: JUMP 000023c4: JUMPDEST 000023c5: PUSH1 0x00 000023c7: DUP3 000023c8: NOT 000023c9: DUP3 000023ca: GT 000023cb: ISZERO 000023cc: PUSH2 0x23d7 000023cf: JUMPI 000023d0: PUSH2 0x23d7 000023d3: PUSH2 0x2348 000023d6: JUMP 000023d7: JUMPDEST 000023d8: POP 000023d9: ADD 000023da: SWAP1 000023db: JUMP 000023dc: JUMPDEST 000023dd: PUSH1 0x01 000023df: PUSH1 0x01 000023e1: PUSH1 0xa0 000023e3: SHL 000023e4: SUB 000023e5: DUP6 000023e6: AND 000023e7: DUP2 000023e8: MSTORE 000023e9: PUSH1 0x20 000023eb: DUP2 000023ec: ADD 000023ed: DUP5 000023ee: SWAP1 000023ef: MSTORE 000023f0: PUSH1 0x60 000023f2: PUSH1 0x40 000023f4: DUP3 000023f5: ADD 000023f6: DUP2 000023f7: SWAP1 000023f8: MSTORE 000023f9: DUP2 000023fa: ADD 000023fb: DUP3 000023fc: SWAP1 000023fd: MSTORE 000023fe: DUP2 000023ff: DUP4 00002400: PUSH1 0x80 00002402: DUP4 00002403: ADD 00002404: CALLDATACOPY 00002405: PUSH1 0x00 00002407: DUP2 00002408: DUP4 00002409: ADD 0000240a: PUSH1 0x80 0000240c: SWAP1 0000240d: DUP2 0000240e: ADD 0000240f: SWAP2 00002410: SWAP1 00002411: SWAP2 00002412: MSTORE 00002413: PUSH1 0x1f 00002415: SWAP1 00002416: SWAP3 00002417: ADD 00002418: PUSH1 0x1f 0000241a: NOT 0000241b: AND 0000241c: ADD 0000241d: ADD 0000241e: SWAP4 0000241f: SWAP3 00002420: POP 00002421: POP 00002422: POP 00002423: JUMP 00002424: JUMPDEST 00002425: PUSH1 0x00 00002427: PUSH1 0x20 00002429: DUP3 0000242a: DUP5 0000242b: SUB 0000242c: SLT 0000242d: ISZERO 0000242e: PUSH2 0x2436 00002431: JUMPI 00002432: PUSH1 0x00 00002434: DUP1 00002435: REVERT 00002436: JUMPDEST 00002437: DUP2 00002438: MLOAD 00002439: PUSH2 0x0746 0000243c: DUP2 0000243d: PUSH2 0x2259 00002440: JUMP 00002441: JUMPDEST 00002442: PUSH1 0x20 00002444: DUP1 00002445: DUP3 00002446: MSTORE 00002447: PUSH1 0x19 00002449: SWAP1 0000244a: DUP3 0000244b: ADD 0000244c: MSTORE 0000244d: PUSH32 0x416e7973776170563445524332303a20464f5242494444454e00000000000000 0000246e: PUSH1 0x40 00002470: DUP3 00002471: ADD 00002472: MSTORE 00002473: PUSH1 0x60 00002475: ADD 00002476: SWAP1 00002477: JUMP 00002478: JUMPDEST 00002479: PUSH1 0x00 0000247b: PUSH1 0x00 0000247d: NOT 0000247e: DUP3 0000247f: EQ 00002480: ISZERO 00002481: PUSH2 0x248c 00002484: JUMPI 00002485: PUSH2 0x248c 00002488: PUSH2 0x2348 0000248b: JUMP 0000248c: JUMPDEST 0000248d: POP 0000248e: PUSH1 0x01 00002490: ADD 00002491: SWAP1 00002492: JUMP 00002493: JUMPDEST 00002494: PUSH1 0x20 00002496: DUP1 00002497: DUP3 00002498: MSTORE 00002499: PUSH1 0x1c 0000249b: SWAP1 0000249c: DUP3 0000249d: ADD 0000249e: MSTORE 0000249f: PUSH32 0x416e7973776170563345524332303a2061646472657373283078302900000000 000024c0: PUSH1 0x40 000024c2: DUP3 000024c3: ADD 000024c4: MSTORE 000024c5: PUSH1 0x60 000024c7: ADD 000024c8: SWAP1 000024c9: JUMP 000024ca: JUMPDEST 000024cb: PUSH1 0x00 000024cd: PUSH1 0x20 000024cf: DUP3 000024d0: DUP5 000024d1: SUB 000024d2: SLT 000024d3: ISZERO 000024d4: PUSH2 0x24dc 000024d7: JUMPI 000024d8: PUSH1 0x00 000024da: DUP1 000024db: REVERT 000024dc: JUMPDEST 000024dd: POP 000024de: MLOAD 000024df: SWAP2 000024e0: SWAP1 000024e1: POP 000024e2: JUMP 000024e3: JUMPDEST 000024e4: PUSH1 0x00 000024e6: DUP3 000024e7: MLOAD 000024e8: PUSH2 0x24f5 000024eb: DUP2 000024ec: DUP5 000024ed: PUSH1 0x20 000024ef: DUP8 000024f0: ADD 000024f1: PUSH2 0x2019 000024f4: JUMP 000024f5: JUMPDEST 000024f6: SWAP2 000024f7: SWAP1 000024f8: SWAP2 000024f9: ADD 000024fa: SWAP3 000024fb: SWAP2 000024fc: POP 000024fd: POP 000024fe: JUMP 000024ff: INVALID 00002500: UNKNOWN(0xDD) 00002501: CALLCODE 00002502: MSTORE 00002503: UNKNOWN(0xAD) 00002504: SHL 00002505: UNKNOWN(0xE2) 00002506: UNKNOWN(0xC8) 00002507: SWAP12 00002508: PUSH10 0xc2b068fc378daa952ba7 00002513: CALL 00002514: PUSH4 0xc4a11628 00002519: CREATE2 0000251a: GAS 0000251b: UNKNOWN(0x4D) 0000251c: CREATE2 0000251d: UNKNOWN(0x23) 0000251e: UNKNOWN(0xB3) 0000251f: UNKNOWN(0xEF) 00002520: DUP13 00002521: JUMPDEST 00002522: UNKNOWN(0xE1) 00002523: UNKNOWN(0xE5) 00002524: UNKNOWN(0xEB) 00002525: UNKNOWN(0xEC) 00002526: PUSH30 0x5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a264697066 00002545: PUSH20 0x582212204db622a89335a7f516edf22bc6964bb0 0000255a: UNKNOWN(0xD3) 0000255b: UNKNOWN(0xDA) 0000255c: UNKNOWN(0xE4) 0000255d: RETURNDATASIZE 0000255e: UNKNOWN(0xB2) 0000255f: MSTORE8 00002560: BLOCKHASH 00002561: DUP5 00002562: DUP5 00002563: ORIGIN 00002564: RETURNDATASIZE 00002565: DUP1 00002566: UNKNOWN(0x4B) 00002567: SWAP9 00002568: UNKNOWN(0x2D) 00002569: UNKNOWN(0x4C) 0000256a: PUSH5 0x736f6c6343 00002570: STOP 00002571: ADDMOD 00002572: EXP 00002573: STOP 00002574: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xec126c77",
"selector": "0xec126c77",
"calldata_variants": [
"0xec126c77",
"0xec126c770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf75c2664",
"selector": "0xf75c2664",
"calldata_variants": [
"0xf75c2664",
"0xf75c26640000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbfa77cf",
"selector": "0xfbfa77cf",
"calldata_variants": [
"0xfbfa77cf",
"0xfbfa77cf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfca3b5aa",
"selector": "0xfca3b5aa",
"calldata_variants": [
"0xfca3b5aa",
"0xfca3b5aa0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd93f2445",
"selector": "0xd93f2445",
"calldata_variants": [
"0xd93f2445",
"0xd93f24450000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbebbf4d0",
"selector": "0xbebbf4d0",
"calldata_variants": [
"0xbebbf4d0",
"0xbebbf4d00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 9571,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xab1a52e59d59b72fb873fdcb903c777f3f2ab858e3e439b0adab25f0ef270fdf
call_targets:
0x0615dbba33fe61a31c7ed131bda6655ed76748b1
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xab1a52e59d59b72fb873fdcb903c777f3f2ab858e3e439b0adab25f0ef270fdf",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x0615dbba33fe61a31c7ed131bda6655ed76748b1"
],
"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": "0xec126c77",
"selector": "0xec126c77",
"calldata_variants": [
"0xec126c77",
"0xec126c770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf75c2664",
"selector": "0xf75c2664",
"calldata_variants": [
"0xf75c2664",
"0xf75c26640000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbfa77cf",
"selector": "0xfbfa77cf",
"calldata_variants": [
"0xfbfa77cf",
"0xfbfa77cf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfca3b5aa",
"selector": "0xfca3b5aa",
"calldata_variants": [
"0xfca3b5aa",
"0xfca3b5aa0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd93f2445",
"selector": "0xd93f2445",
"calldata_variants": [
"0xd93f2445",
"0xd93f24450000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbebbf4d0",
"selector": "0xbebbf4d0",
"calldata_variants": [
"0xbebbf4d0",
"0xbebbf4d00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 3314,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5389,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7779,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 5,
"guards_detected": [
{
"pc": 9571,
"type": "tx_origin_used"
}
]
}
|
| medium | math | codex | Minting uses requested deposit amount rather than actual received amount | 75 | no | — |
viewevidence_json{
"evidence": "`deposit`/`deposit(amount)` perform `safeTransferFrom` for `amount` and then call `_deposit(amount, ...)`, which mints exactly `amount` without checking the post-transfer balance.",
"locations": [
"contracts/Contract.sol:309",
"contracts/Contract.sol:315",
"contracts/Contract.sol:320",
"contracts/Contract.sol:329",
"contracts/Contract.sol:331"
],
"recommendation": "Mint based on the actual amount received by measuring `balanceOf` before/after the transfer, or explicitly restrict the underlying to non-fee, non-rebasing ERC20s and enforce that invariant.",
"exploit_scenario": "If the underlying token charges a transfer fee or rebases downward, an attacker can deposit 100 tokens (contract receives less), but still mint 100 wrapped tokens, then withdraw the full 100 to drain the pooled underlying backing."
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0xb432000579d32e061f3ff327325c0c981517cd4be4222baf199c3da3c05b2dba
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0xb432000579d32e061f3ff327325c0c981517cd4be4222baf199c3da3c05b2dba",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xec126c77",
"selector": "0xec126c77",
"calldata_variants": [
"0xec126c77",
"0xec126c770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf75c2664",
"selector": "0xf75c2664",
"calldata_variants": [
"0xf75c2664",
"0xf75c26640000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbfa77cf",
"selector": "0xfbfa77cf",
"calldata_variants": [
"0xfbfa77cf",
"0xfbfa77cf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfca3b5aa",
"selector": "0xfca3b5aa",
"calldata_variants": [
"0xfca3b5aa",
"0xfca3b5aa0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd93f2445",
"selector": "0xd93f2445",
"calldata_variants": [
"0xd93f2445",
"0xd93f24450000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbebbf4d0",
"selector": "0xbebbf4d0",
"calldata_variants": [
"0xbebbf4d0",
"0xbebbf4d00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 2
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xab1a52e59d59b72fb873fdcb903c777f3f2ab858e3e439b0adab25f0ef270fdf
call_targets:
0x0615dbba33fe61a31c7ed131bda6655ed76748b1
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xab1a52e59d59b72fb873fdcb903c777f3f2ab858e3e439b0adab25f0ef270fdf",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x0615dbba33fe61a31c7ed131bda6655ed76748b1"
],
"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": "0xec126c77",
"selector": "0xec126c77",
"calldata_variants": [
"0xec126c77",
"0xec126c770000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf75c2664",
"selector": "0xf75c2664",
"calldata_variants": [
"0xf75c2664",
"0xf75c26640000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfbfa77cf",
"selector": "0xfbfa77cf",
"calldata_variants": [
"0xfbfa77cf",
"0xfbfa77cf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfca3b5aa",
"selector": "0xfca3b5aa",
"calldata_variants": [
"0xfca3b5aa",
"0xfca3b5aa0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd505accf",
"selector": "0xd505accf",
"calldata_variants": [
"0xd505accf",
"0xd505accf0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd93f2445",
"selector": "0xd93f2445",
"calldata_variants": [
"0xd93f2445",
"0xd93f24450000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdd62ed3e",
"selector": "0xdd62ed3e",
"calldata_variants": [
"0xdd62ed3e",
"0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbebbf4d0",
"selector": "0xbebbf4d0",
"calldata_variants": [
"0xbebbf4d0",
"0xbebbf4d00000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 3314,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5389,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7779,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 5,
"guards_detected": [
{
"pc": 9571,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 5
}
|
| low | other | codex | Transfer destination check always passes due to `||` | 65 | no | — |
viewevidence_json{
"evidence": "The condition `require(to != address(0) || to != address(this))` is always true for any address, so it never blocks transfers.",
"locations": [
"contracts/Contract.sol:459",
"contracts/Contract.sol:498",
"contracts/Contract.sol:520",
"contracts/Contract.sol:551"
],
"recommendation": "Use `require(to != address(0) && to != address(this))` or implement explicit burn/withdraw semantics if zero/self transfers are intended.",
"exploit_scenario": "Transfers to `address(0)` or to the token contract itself are allowed even though comments indicate they should be blocked; this can lock tokens irrecoverably or violate integration assumptions that such transfers revert."
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"create2_count": 2
}
|
| info | access_control | codex | Timelock bypass via changeVault | 60 | no | — |
viewevidence_json{
"evidence": "`changeVault` immediately updates `vault`/`pendingVault` without delay, while `setVault` uses a delay mechanism.",
"locations": [
"contracts/Contract.sol:198",
"contracts/Contract.sol:230"
],
"recommendation": "Remove `changeVault` or enforce the same delay mechanism used by `setVault`/`applyVault`.",
"exploit_scenario": "Even if users rely on `setVault`\u2019s delay, the current vault can instantly switch control with `changeVault`, eliminating the intended reaction window for governance/security monitoring."
}
|