TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

e6a9694d-1da0-4b2d-a150-5c28b1f8078a

complete
Chain ID
1
Address
Block Number
Created
Tue, Dec 30, 2025 12:19 AM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Authorization based on tx.origin
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
30627 report.consolidate complete 1 / 1 3 months ago
74758 artifact.fetch complete 1 / 3 1 week ago
74759 tool.cast_disasm complete 1 / 3 1 week ago
74760 analysis.bundle complete 1 / 3 1 week ago
74761 capability.graph complete 1 / 3 1 week ago
74762 detector.run complete 1 / 3 1 week ago
74763 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
3
No findings?
no
Summary
Found 3 issues: voting weight can be reused if withdrawals are possible before a proposal ends, proposal IDs are off-by-one, and zero‑vote proposals cannot be tallied due to division by zero.
View stderr
[codex:498969] OpenAI Codex v0.77.0 (research preview)
[codex:498969] --------
[codex:498969] workdir: /tmp/codex-multi-0_kwz7wn
[codex:498969] model: gpt-5.2-codex
[codex:498969] provider: openai
[codex:498969] approval: never
[codex:498969] sandbox: read-only
[codex:498969] reasoning effort: xhigh
[codex:498969] reasoning summaries: auto
[codex:498969] session id: 019b6c98-41ec-7f31-9e57-0bf634ea1a02
[codex:498969] --------
[codex:498969] user
[codex:498969] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:498969] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:498969] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:498969] 
[codex:498969] Scope rules:
[codex:498969] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:498969] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:498969] 
[codex:498969] Output MUST be valid JSON matching the provided schema.
[codex:498969] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:498969] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:498969] 
[codex:498969] Output constraints (IMPORTANT):
[codex:498969] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:498969] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:498969] mcp startup: no servers
[codex:498969] 
[codex:498969] thinking
[codex:498969] **Preparing to read AUDIT_BUNDLE**
[codex:498969] exec
[codex:498969] /bin/bash -lc ls in /tmp/codex-multi-0_kwz7wn succeeded in 5ms:
[codex:498969] AUDIT_BUNDLE.txt
[codex:498969] codex-output-schema.json
[codex:498969] contracts
[codex:498969] 
[codex:498969] thinking
[codex:498969] **Reading AUDIT_BUNDLE**
[codex:498969] exec
[codex:498969] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-0_kwz7wn succeeded in 5ms:
[codex:498969] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:498969] 
[codex:498969] ================================================================================
[codex:498969] FILE: contracts/Contract.sol
[codex:498969] ================================================================================
[codex:498969] /*
[codex:498969]    ____            __   __        __   _
[codex:498969]   / __/__ __ ___  / /_ / /  ___  / /_ (_)__ __
[codex:498969]  _\ \ / // // _ \/ __// _ \/ -_)/ __// / \ \ /
[codex:498969] /___/ \_, //_//_/\__//_//_/\__/ \__//_/ /_\_\
[codex:498969]      /___/
[codex:498969] 
[codex:498969] * Synthetix: SwagRewards.sol
[codex:498969] *
[codex:498969] * Docs: https://docs.synthetix.io/
[codex:498969] *
[codex:498969] *
[codex:498969] * MIT License
[codex:498969] * ===========
[codex:498969] *
[codex:498969] 
[codex:498969] thinking
[codex:498969] **Preparing for audit on key contracts**
[codex:498969] exec
[codex:498969] /bin/bash -lc 'rg --files' in /tmp/codex-multi-0_kwz7wn succeeded in 9ms:
[codex:498969] codex-output-schema.json
[codex:498969] AUDIT_BUNDLE.txt
[codex:498969] contracts/Contract.sol
[codex:498969] 
[codex:498969] thinking
[codex:498969] **Checking line numbers in Contract.sol**
[codex:498969] exec
[codex:498969] /bin/bash -lc 'nl -ba contracts/Contract.sol' in /tmp/codex-multi-0_kwz7wn succeeded in 5ms:
[codex:498969]      1	/*
[codex:498969]      2	   ____            __   __        __   _
[codex:498969]      3	  / __/__ __ ___  / /_ / /  ___  / /_ (_)__ __
[codex:498969]      4	 _\ \ / // // _ \/ __// _ \/ -_)/ __// / \ \ /
[codex:498969]      5	/___/ \_, //_//_/\__//_//_/\__/ \__//_/ /_\_\
[codex:498969]      6	     /___/
[codex:498969]      7	
[codex:498969]      8	* Synthetix: SwagRewards.sol
[codex:498969]      9	*
[codex:498969]     10	* Docs: https://docs.synthetix.io/
[codex:498969]     11	*
[codex:498969]     12	*
[codex:498969]     13	* MIT License
[codex:498969]     14	* ===========
[codex:498969]     15	*
[codex:498969]     16	* Copyright (c) 2020 Synthetix
[codex:498969]     17	*
[codex:498969]     18	* Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:498969]     19	* of this software and associated documentation files (the "Software"), to deal
[codex:498969]     20	* in the Software without restriction, including without limitation the rights
[codex:498969] 
[codex:498969] Reconnecting... 1/5
[codex:498969] 
[codex:498969] 
[codex:498969] 
[codex:498969] 
[codex:498969] 
[codex:498969] thinking
[codex:498969] **Analyzing contract vulnerabilities**
[codex:498969] thinking
[codex:498969] **Evaluating governance and voting risks**
[codex:498969] 
[codex:498969] I’m exploring how vote locks interact with withdraw and reward claiming, noting that requiring an active vote lock to claim rewards can create a form of lockout unless users keep voting. I see some division-by-zero risks that could block proposal tallying and a mismatch bug in proposal IDs that might confuse voting but not break security. Also, vote tally snapshots versus dynamic vote changes reveal potential ways to manipulate quorum calculations or keep proposals open longer, all of which could affect governance effectiveness.
[codex:498969] thinking
[codex:498969] **Analyzing governance manipulation and vote accounting**
[codex:498969] 
[codex:498969] I’m noticing how dynamic updates to totalVotes and voteLock interactions let voters manipulate quorum thresholds by registering, revoking, and voting in specific sequences. This causes quorum to shift mid-proposal, potentially enabling governance manipulation through vote accounting rather than direct exploits. There are also arithmetic and logic bugs like off-by-one proposal IDs and division-by-zero in stats, which could disrupt operations but may not be critical vulnerabilities.
[codex:498969] thinking
[codex:498969] **Detailing logic bugs and reentrancy analysis**
[codex:498969] 
[codex:498969] I've carefully examined reentrancy concerns around token transfers and reward calculations, finding state updates precede external calls which likely prevents exploits. There are logic issues like the off-by-one proposal ID causing mismatch between event and storage IDs, and division-by-zero in vote tallying that could lead to denial-of-service scenarios. While these are mostly functional bugs, I'll highlight their impact and scenarios where they matter.
[codex:498969] thinking
[codex:498969] **Reporting vote accounting and ID issues**
[codex:498969] 
[codex:498969] I've identified three key issues: vote weights can be double-counted if stake is withdrawn before proposal ends when locks are short or disabled; the proposal ID uses post-increment causing event and storage ID mismatches that confuse voters; and division by zero in vote statistics prevents closing proposals with no votes. These affect governance correctness and robustness.
[codex:498969] codex
[codex:498969] {"no_findings":false,"summary":"Found 3 issues: voting weight can be reused if withdrawals are possible before a proposal ends, proposal IDs are off-by-one, and zero‑vote proposals cannot be tallied due to division by zero.","findings":[{"severity":"medium","category":"other","title":"Votes are not reduced when stake is withdrawn, enabling vote‑reuse if withdrawals occur before proposal end","exploit_scenario":"If `lock` is set shorter than `period` or `breaker` is enabled, a voter can cast a vote, wait for withdrawal to be allowed, withdraw their stake, move it to another address, register, and vote again on the same proposal. The original vote weight remains in `totalForVotes/totalAgainstVotes`, so the same tokens can be counted multiple times, allowing a minority to inflate voting power and potentially pass proposals.","recommendation":"Snapshot voting power at proposal creation and use that snapshot for the entire vote, or track per‑proposal vote weights and decrement totals when a voter’s stake decreases. Alternatively, prevent any account that has voted from withdrawing until the proposal ends regardless of `lock`/`breaker` settings.","evidence":"`voteFor`/`voteAgainst` store vote weight once in `proposals[id].forVotes/againstVotes` and update totals, but `withdraw` only reduces `votes`/`totalVotes` and never adjusts proposal totals.","locations":["contracts/Contract.sol:815","contracts/Contract.sol:826","contracts/Contract.sol:928"]},{"severity":"low","category":"other","title":"Off‑by‑one proposal IDs cause event IDs to point to the wrong proposal","exploit_scenario":"A proposer creates a proposal; the emitted `NewProposal` ID corresponds to the incremented `proposalCount`, but the proposal is stored at the previous index. Users and UIs that follow the event ID will vote on an empty proposal (reverting), effectively DoSing participation for that proposal unless they manually subtract one.","recommendation":"Increment `proposalCount` before use (pre‑increment) and use the same value consistently for storage and event emission, or store at `proposalCount` then increment afterward without reusing it in the same statement.","evidence":"`proposals[proposalCount++] = Proposal({ id: proposalCount, ...}); emit NewProposal(proposalCount, ...)` uses the post‑incremented value for the ID but the pre‑incremented value for the storage key.","locations":["contracts/Contract.sol:728","contracts/Contract.sol:733","contracts/Contract.sol:747"]},{"severity":"low","category":"math","title":"Zero‑vote proposals cannot be tallied due to division by zero","exploit_scenario":"If no one votes on a proposal, `_total` is zero. `getStats` divides by `_total`, so `tallyVotes` always reverts and the proposal remains open forever. Attackers can create proposals that can never be closed, leading to governance DoS via unbounded open proposals.","recommendation":"Guard `getStats` against `_total == 0` (and `totalVotesAvailable == 0`) by returning zeros, or allow `tallyVotes` to close proposals with zero votes without calling `getStats`.","evidence":"`getStats` calculates `_for = _for.mul(10000).div(_total)` without handling `_total == 0`, and `tallyVotes` relies on `getStats`.","locations":["contracts/Contract.sol:751","contracts/Contract.sol:755","contracts/Contract.sol:769"]}]}
[codex:498969] tokens used
[codex:498969] 34,146
[codex:498969] {"no_findings":false,"summary":"Found 3 issues: voting weight can be reused if withdrawals are possible before a proposal ends, proposal IDs are off-by-one, and zero‑vote proposals cannot be tallied due to division by zero.","findings":[{"severity":"medium","category":"other","title":"Votes are not reduced when stake is withdrawn, enabling vote‑reuse if withdrawals occur before proposal end","exploit_scenario":"If `lock` is set shorter than `period` or `breaker` is enabled, a voter can cast a vote, wait for withdrawal to be allowed, withdraw their stake, move it to another address, register, and vote again on the same proposal. The original vote weight remains in `totalForVotes/totalAgainstVotes`, so the same tokens can be counted multiple times, allowing a minority to inflate voting power and potentially pass proposals.","recommendation":"Snapshot voting power at proposal creation and use that snapshot for the entire vote, or track per‑proposal vote weights and decrement totals when a voter’s stake decreases. Alternatively, prevent any account that has voted from withdrawing until the proposal ends regardless of `lock`/`breaker` settings.","evidence":"`voteFor`/`voteAgainst` store vote weight once in `proposals[id].forVotes/againstVotes` and update totals, but `withdraw` only reduces `votes`/`totalVotes` and never adjusts proposal totals.","locations":["contracts/Contract.sol:815","contracts/Contract.sol:826","contracts/Contract.sol:928"]},{"severity":"low","category":"other","title":"Off‑by‑one proposal IDs cause event IDs to point to the wrong proposal","exploit_scenario":"A proposer creates a proposal; the emitted `NewProposal` ID corresponds to the incremented `proposalCount`, but the proposal is stored at the previous index. Users and UIs that follow the event ID will vote on an empty proposal (reverting), effectively DoSing participation for that proposal unless they manually subtract one.","recommendation":"Increment `proposalCount` before use (pre‑increment) and use the same value consistently for storage and event emission, or store at `proposalCount` then increment afterward without reusing it in the same statement.","evidence":"`proposals[proposalCount++] = Proposal({ id: proposalCount, ...}); emit NewProposal(proposalCount, ...)` uses the post‑incremented value for the ID but the pre‑incremented value for the storage key.","locations":["contracts/Contract.sol:728","contracts/Contract.sol:733","contracts/Contract.sol:747"]},{"severity":"low","category":"math","title":"Zero‑vote proposals cannot be tallied due to division by zero","exploit_scenario":"If no one votes on a proposal, `_total` is zero. `getStats` divides by `_total`, so `tallyVotes` always reverts and the proposal remains open forever. Attackers can create proposals that can never be closed, leading to governance DoS via unbounded open proposals.","recommendation":"Guard `getStats` against `_total == 0` (and `totalVotesAvailable == 0`) by returning zeros, or allow `tallyVotes` to close proposals with zero votes without calling `getStats`.","evidence":"`getStats` calculates `_for = _for.mul(10000).div(_total)` without handling `_total == 0`, and `tallyVotes` relies on `getStats`.","locations":["contracts/Contract.sol:751","contracts/Contract.sol:755","contracts/Contract.sol:769"]}]}
Metadata
{
    "codex": {
        "ran_at": "2025-12-30T00:18:59.539386+00:00",
        "returncode": 0
    },
    "summary": "Found 3 issues: voting weight can be reused if withdrawals are possible before a proposal ends, proposal IDs are off-by-one, and zero\u2011vote proposals cannot be tallied due to division by zero.",
    "raw_final": {
        "summary": "Found 3 issues: voting weight can be reused if withdrawals are possible before a proposal ends, proposal IDs are off-by-one, and zero\u2011vote proposals cannot be tallied due to division by zero.",
        "findings": [
            {
                "title": "Votes are not reduced when stake is withdrawn, enabling vote\u2011reuse if withdrawals occur before proposal end",
                "category": "other",
                "evidence": "`voteFor`/`voteAgainst` store vote weight once in `proposals[id].forVotes/againstVotes` and update totals, but `withdraw` only reduces `votes`/`totalVotes` and never adjusts proposal totals.",
                "severity": "medium",
                "locations": [
                    "contracts/Contract.sol:815",
                    "contracts/Contract.sol:826",
                    "contracts/Contract.sol:928"
                ],
                "recommendation": "Snapshot voting power at proposal creation and use that snapshot for the entire vote, or track per\u2011proposal vote weights and decrement totals when a voter\u2019s stake decreases. Alternatively, prevent any account that has voted from withdrawing until the proposal ends regardless of `lock`/`breaker` settings.",
                "exploit_scenario": "If `lock` is set shorter than `period` or `breaker` is enabled, a voter can cast a vote, wait for withdrawal to be allowed, withdraw their stake, move it to another address, register, and vote again on the same proposal. The original vote weight remains in `totalForVotes/totalAgainstVotes`, so the same tokens can be counted multiple times, allowing a minority to inflate voting power and potentially pass proposals."
            },
            {
                "title": "Off\u2011by\u2011one proposal IDs cause event IDs to point to the wrong proposal",
                "category": "other",
                "evidence": "`proposals[proposalCount++] = Proposal({ id: proposalCount, ...}); emit NewProposal(proposalCount, ...)` uses the post\u2011incremented value for the ID but the pre\u2011incremented value for the storage key.",
                "severity": "low",
                "locations": [
                    "contracts/Contract.sol:728",
                    "contracts/Contract.sol:733",
                    "contracts/Contract.sol:747"
                ],
                "recommendation": "Increment `proposalCount` before use (pre\u2011increment) and use the same value consistently for storage and event emission, or store at `proposalCount` then increment afterward without reusing it in the same statement.",
                "exploit_scenario": "A proposer creates a proposal; the emitted `NewProposal` ID corresponds to the incremented `proposalCount`, but the proposal is stored at the previous index. Users and UIs that follow the event ID will vote on an empty proposal (reverting), effectively DoSing participation for that proposal unless they manually subtract one."
            },
            {
                "title": "Zero\u2011vote proposals cannot be tallied due to division by zero",
                "category": "math",
                "evidence": "`getStats` calculates `_for = _for.mul(10000).div(_total)` without handling `_total == 0`, and `tallyVotes` relies on `getStats`.",
                "severity": "low",
                "locations": [
                    "contracts/Contract.sol:751",
                    "contracts/Contract.sol:755",
                    "contracts/Contract.sol:769"
                ],
                "recommendation": "Guard `getStats` against `_total == 0` (and `totalVotesAvailable == 0`) by returning zeros, or allow `tallyVotes` to close proposals with zero votes without calling `getStats`.",
                "exploit_scenario": "If no one votes on a proposal, `_total` is zero. `getStats` divides by `_total`, so `tallyVotes` always reverts and the proposal remains open forever. Attackers can create proposals that can never be closed, leading to governance DoS via unbounded open proposals."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
2
EXT*/BALANCE
2
Total opcodes
7510
Flags
No heuristic flags raised.
View cast disassembly output
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 0x038d
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x79ec5d3a
00000026: GT
00000027: PUSH2 0x01de
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0xc1ba4e59
00000031: GT
00000032: PUSH2 0x010f
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0xdf136d65
0000003c: GT
0000003d: PUSH2 0x00ad
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0xef78d4fd
00000047: GT
00000048: PUSH2 0x007c
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0xef78d4fd
00000052: EQ
00000053: PUSH2 0x09ff
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0xf2fde38b
0000005d: EQ
0000005e: PUSH2 0x0a07
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0xf83d08ba
00000068: EQ
00000069: PUSH2 0x0a2d
0000006c: JUMPI
0000006d: DUP1
0000006e: PUSH4 0xfc0c546a
00000073: EQ
00000074: PUSH2 0x0a35
00000077: JUMPI
00000078: PUSH2 0x038d
0000007b: JUMP
0000007c: JUMPDEST
0000007d: DUP1
0000007e: PUSH4 0xdf136d65
00000083: EQ
00000084: PUSH2 0x09bb
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0xe9fad8ee
0000008e: EQ
0000008f: PUSH2 0x09c3
00000092: JUMPI
00000093: DUP1
00000094: PUSH4 0xeb9253c0
00000099: EQ
0000009a: PUSH2 0x09cb
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0xebe2b12b
000000a4: EQ
000000a5: PUSH2 0x09f7
000000a8: JUMPI
000000a9: PUSH2 0x038d
000000ac: JUMP
000000ad: JUMPDEST
000000ae: DUP1
000000af: PUSH4 0xd3e15747
000000b4: GT
000000b5: PUSH2 0x00e9
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0xd3e15747
000000bf: EQ
000000c0: PUSH2 0x0951
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0xd8bff5a5
000000ca: EQ
000000cb: PUSH2 0x096e
000000ce: JUMPI
000000cf: DUP1
000000d0: PUSH4 0xda35c664
000000d5: EQ
000000d6: PUSH2 0x0994
000000d9: JUMPI
000000da: DUP1
000000db: PUSH4 0xdb4b1c42
000000e0: EQ
000000e1: PUSH2 0x099c
000000e4: JUMPI
000000e5: PUSH2 0x038d
000000e8: JUMP
000000e9: JUMPDEST
000000ea: DUP1
000000eb: PUSH4 0xc1ba4e59
000000f0: EQ
000000f1: PUSH2 0x0924
000000f4: JUMPI
000000f5: DUP1
000000f6: PUSH4 0xc8f33c91
000000fb: EQ
000000fc: PUSH2 0x0941
000000ff: JUMPI
00000100: DUP1
00000101: PUSH4 0xcd3daf9d
00000106: EQ
00000107: PUSH2 0x0949
0000010a: JUMPI
0000010b: PUSH2 0x038d
0000010e: JUMP
0000010f: JUMPDEST
00000110: DUP1
00000111: PUSH4 0x8f32d59b
00000116: GT
00000117: PUSH2 0x017c
0000011a: JUMPI
0000011b: DUP1
0000011c: PUSH4 0xa694fc3a
00000121: GT
00000122: PUSH2 0x0156
00000125: JUMPI
00000126: DUP1
00000127: PUSH4 0xa694fc3a
0000012c: EQ
0000012d: PUSH2 0x0833
00000130: JUMPI
00000131: DUP1
00000132: PUSH4 0xaa98df39
00000137: EQ
00000138: PUSH2 0x0850
0000013b: JUMPI
0000013c: DUP1
0000013d: PUSH4 0xab033ea9
00000142: EQ
00000143: PUSH2 0x08f6
00000146: JUMPI
00000147: DUP1
00000148: PUSH4 0xb6549f75
0000014d: EQ
0000014e: PUSH2 0x091c
00000151: JUMPI
00000152: PUSH2 0x038d
00000155: JUMP
00000156: JUMPDEST
00000157: DUP1
00000158: PUSH4 0x8f32d59b
0000015d: EQ
0000015e: PUSH2 0x07fd
00000161: JUMPI
00000162: DUP1
00000163: PUSH4 0x9b169595
00000168: EQ
00000169: PUSH2 0x0805
0000016c: JUMPI
0000016d: DUP1
0000016e: PUSH4 0xa3ec138d
00000173: EQ
00000174: PUSH2 0x080d
00000177: JUMPI
00000178: PUSH2 0x038d
0000017b: JUMP
0000017c: JUMPDEST
0000017d: DUP1
0000017e: PUSH4 0x80faa57d
00000183: GT
00000184: PUSH2 0x01b8
00000187: JUMPI
00000188: DUP1
00000189: PUSH4 0x80faa57d
0000018e: EQ
0000018f: PUSH2 0x07aa
00000192: JUMPI
00000193: DUP1
00000194: PUSH4 0x86a50535
00000199: EQ
0000019a: PUSH2 0x07b2
0000019d: JUMPI
0000019e: DUP1
0000019f: PUSH4 0x8b876347
000001a4: EQ
000001a5: PUSH2 0x07cf
000001a8: JUMPI
000001a9: DUP1
000001aa: PUSH4 0x8da5cb5b
000001af: EQ
000001b0: PUSH2 0x07f5
000001b3: JUMPI
000001b4: PUSH2 0x038d
000001b7: JUMP
000001b8: JUMPDEST
000001b9: DUP1
000001ba: PUSH4 0x79ec5d3a
000001bf: EQ
000001c0: PUSH2 0x0741
000001c3: JUMPI
000001c4: DUP1
000001c5: PUSH4 0x7b0a47ee
000001ca: EQ
000001cb: PUSH2 0x0767
000001ce: JUMPI
000001cf: DUP1
000001d0: PUSH4 0x7b303965
000001d5: EQ
000001d6: PUSH2 0x076f
000001d9: JUMPI
000001da: PUSH2 0x038d
000001dd: JUMP
000001de: JUMPDEST
000001df: DUP1
000001e0: PUSH4 0x2e1a7d4d
000001e5: GT
000001e6: PUSH2 0x02c3
000001e9: JUMPI
000001ea: DUP1
000001eb: PUSH4 0x5aa6e675
000001f0: GT
000001f1: PUSH2 0x0261
000001f4: JUMPI
000001f5: DUP1
000001f6: PUSH4 0x70a08231
000001fb: GT
000001fc: PUSH2 0x0230
000001ff: JUMPI
00000200: DUP1
00000201: PUSH4 0x70a08231
00000206: EQ
00000207: PUSH2 0x06ee
0000020a: JUMPI
0000020b: DUP1
0000020c: PUSH4 0x70dbb027
00000211: EQ
00000212: PUSH2 0x0714
00000215: JUMPI
00000216: DUP1
00000217: PUSH4 0x715018a6
0000021c: EQ
0000021d: PUSH2 0x071c
00000220: JUMPI
00000221: DUP1
00000222: PUSH4 0x750e443a
00000227: EQ
00000228: PUSH2 0x0724
0000022b: JUMPI
0000022c: PUSH2 0x038d
0000022f: JUMP
00000230: JUMPDEST
00000231: DUP1
00000232: PUSH4 0x5aa6e675
00000237: EQ
00000238: PUSH2 0x0686
0000023b: JUMPI
0000023c: DUP1
0000023d: PUSH4 0x5c0aeb0e
00000242: EQ
00000243: PUSH2 0x06aa
00000246: JUMPI
00000247: DUP1
00000248: PUSH4 0x632a9a52
0000024d: EQ
0000024e: PUSH2 0x06c9
00000251: JUMPI
00000252: DUP1
00000253: PUSH4 0x634c2d77
00000258: EQ
00000259: PUSH2 0x06d1
0000025c: JUMPI
0000025d: PUSH2 0x038d
00000260: JUMP
00000261: JUMPDEST
00000262: DUP1
00000263: PUSH4 0x4d318b0e
00000268: GT
00000269: PUSH2 0x029d
0000026c: JUMPI
0000026d: DUP1
0000026e: PUSH4 0x4d318b0e
00000273: EQ
00000274: PUSH2 0x061c
00000277: JUMPI
00000278: DUP1
00000279: PUSH4 0x4e27e916
0000027e: EQ
0000027f: PUSH2 0x0639
00000282: JUMPI
00000283: DUP1
00000284: PUSH4 0x52d6804d
00000289: EQ
0000028a: PUSH2 0x065f
0000028d: JUMPI
0000028e: DUP1
0000028f: PUSH4 0x5818d644
00000294: EQ
00000295: PUSH2 0x0667
00000298: JUMPI
00000299: PUSH2 0x038d
0000029c: JUMP
0000029d: JUMPDEST
0000029e: DUP1
0000029f: PUSH4 0x2e1a7d4d
000002a4: EQ
000002a5: PUSH2 0x05da
000002a8: JUMPI
000002a9: DUP1
000002aa: PUSH4 0x3209e9e6
000002af: EQ
000002b0: PUSH2 0x05f7
000002b3: JUMPI
000002b4: DUP1
000002b5: PUSH4 0x3d18b912
000002ba: EQ
000002bb: PUSH2 0x0614
000002be: JUMPI
000002bf: PUSH2 0x038d
000002c2: JUMP
000002c3: JUMPDEST
000002c4: DUP1
000002c5: PUSH4 0x0f41e0d2
000002ca: GT
000002cb: PUSH2 0x0330
000002ce: JUMPI
000002cf: DUP1
000002d0: PUSH4 0x18160ddd
000002d5: GT
000002d6: PUSH2 0x030a
000002d9: JUMPI
000002da: DUP1
000002db: PUSH4 0x18160ddd
000002e0: EQ
000002e1: PUSH2 0x059f
000002e4: JUMPI
000002e5: DUP1
000002e6: PUSH4 0x1aa3a008
000002eb: EQ
000002ec: PUSH2 0x05a7
000002ef: JUMPI
000002f0: DUP1
000002f1: PUSH4 0x20247ee2
000002f6: EQ
000002f7: PUSH2 0x05af
000002fa: JUMPI
000002fb: DUP1
000002fc: PUSH4 0x246132f9
00000301: EQ
00000302: PUSH2 0x05b7
00000305: JUMPI
00000306: PUSH2 0x038d
00000309: JUMP
0000030a: JUMPDEST
0000030b: DUP1
0000030c: PUSH4 0x0f41e0d2
00000311: EQ
00000312: PUSH2 0x0573
00000315: JUMPI
00000316: DUP1
00000317: PUSH4 0x0fb5a6b4
0000031c: EQ
0000031d: PUSH2 0x058f
00000320: JUMPI
00000321: DUP1
00000322: PUSH4 0x1703a018
00000327: EQ
00000328: PUSH2 0x0597
0000032b: JUMPI
0000032c: PUSH2 0x038d
0000032f: JUMP
00000330: JUMPDEST
00000331: DUP1
00000332: PUSH4 0x08db7858
00000337: GT
00000338: PUSH2 0x036c
0000033b: JUMPI
0000033c: DUP1
0000033d: PUSH4 0x08db7858
00000342: EQ
00000343: PUSH2 0x04e1
00000346: JUMPI
00000347: DUP1
00000348: PUSH4 0x0d15fd77
0000034d: EQ
0000034e: PUSH2 0x0526
00000351: JUMPI
00000352: DUP1
00000353: PUSH4 0x0d68b761
00000358: EQ
00000359: PUSH2 0x052e
0000035c: JUMPI
0000035d: DUP1
0000035e: PUSH4 0x0f3a9f65
00000363: EQ
00000364: PUSH2 0x0556
00000367: JUMPI
00000368: PUSH2 0x038d
0000036b: JUMP
0000036c: JUMPDEST
0000036d: DUP1
0000036e: PUSH3 0x8cc262
00000372: EQ
00000373: PUSH2 0x0392
00000376: JUMPI
00000377: DUP1
00000378: PUSH4 0x013cf08b
0000037d: EQ
0000037e: PUSH2 0x03ca
00000381: JUMPI
00000382: DUP1
00000383: PUSH4 0x0700037d
00000388: EQ
00000389: PUSH2 0x04bb
0000038c: JUMPI
0000038d: JUMPDEST
0000038e: PUSH1 0x00
00000390: DUP1
00000391: REVERT
00000392: JUMPDEST
00000393: PUSH2 0x03b8
00000396: PUSH1 0x04
00000398: DUP1
00000399: CALLDATASIZE
0000039a: SUB
0000039b: PUSH1 0x20
0000039d: DUP2
0000039e: LT
0000039f: ISZERO
000003a0: PUSH2 0x03a8
000003a3: JUMPI
000003a4: PUSH1 0x00
000003a6: DUP1
000003a7: REVERT
000003a8: JUMPDEST
000003a9: POP
000003aa: CALLDATALOAD
000003ab: PUSH1 0x01
000003ad: PUSH1 0x01
000003af: PUSH1 0xa0
000003b1: SHL
000003b2: SUB
000003b3: AND
000003b4: PUSH2 0x0a3d
000003b7: JUMP
000003b8: JUMPDEST
000003b9: PUSH1 0x40
000003bb: DUP1
000003bc: MLOAD
000003bd: SWAP2
000003be: DUP3
000003bf: MSTORE
000003c0: MLOAD
000003c1: SWAP1
000003c2: DUP2
000003c3: SWAP1
000003c4: SUB
000003c5: PUSH1 0x20
000003c7: ADD
000003c8: SWAP1
000003c9: RETURN
000003ca: JUMPDEST
000003cb: PUSH2 0x03e7
000003ce: PUSH1 0x04
000003d0: DUP1
000003d1: CALLDATASIZE
000003d2: SUB
000003d3: PUSH1 0x20
000003d5: DUP2
000003d6: LT
000003d7: ISZERO
000003d8: PUSH2 0x03e0
000003db: JUMPI
000003dc: PUSH1 0x00
000003de: DUP1
000003df: REVERT
000003e0: JUMPDEST
000003e1: POP
000003e2: CALLDATALOAD
000003e3: PUSH2 0x0ac3
000003e6: JUMP
000003e7: JUMPDEST
000003e8: PUSH1 0x40
000003ea: MLOAD
000003eb: DUP1
000003ec: DUP13
000003ed: DUP2
000003ee: MSTORE
000003ef: PUSH1 0x20
000003f1: ADD
000003f2: DUP12
000003f3: PUSH1 0x01
000003f5: PUSH1 0x01
000003f7: PUSH1 0xa0
000003f9: SHL
000003fa: SUB
000003fb: AND
000003fc: PUSH1 0x01
000003fe: PUSH1 0x01
00000400: PUSH1 0xa0
00000402: SHL
00000403: SUB
00000404: AND
00000405: DUP2
00000406: MSTORE
00000407: PUSH1 0x20
00000409: ADD
0000040a: DUP11
0000040b: DUP2
0000040c: MSTORE
0000040d: PUSH1 0x20
0000040f: ADD
00000410: DUP10
00000411: DUP2
00000412: MSTORE
00000413: PUSH1 0x20
00000415: ADD
00000416: DUP9
00000417: DUP2
00000418: MSTORE
00000419: PUSH1 0x20
0000041b: ADD
0000041c: DUP8
0000041d: DUP2
0000041e: MSTORE
0000041f: PUSH1 0x20
00000421: ADD
00000422: DUP1
00000423: PUSH1 0x20
00000425: ADD
00000426: DUP7
00000427: DUP2
00000428: MSTORE
00000429: PUSH1 0x20
0000042b: ADD
0000042c: DUP6
0000042d: DUP2
0000042e: MSTORE
0000042f: PUSH1 0x20
00000431: ADD
00000432: DUP5
00000433: DUP2
00000434: MSTORE
00000435: PUSH1 0x20
00000437: ADD
00000438: DUP4
00000439: ISZERO
0000043a: ISZERO
0000043b: ISZERO
0000043c: ISZERO
0000043d: DUP2
0000043e: MSTORE
0000043f: PUSH1 0x20
00000441: ADD
00000442: DUP3
00000443: DUP2
00000444: SUB
00000445: DUP3
00000446: MSTORE
00000447: DUP8
00000448: DUP2
00000449: DUP2
0000044a: MLOAD
0000044b: DUP2
0000044c: MSTORE
0000044d: PUSH1 0x20
0000044f: ADD
00000450: SWAP2
00000451: POP
00000452: DUP1
00000453: MLOAD
00000454: SWAP1
00000455: PUSH1 0x20
00000457: ADD
00000458: SWAP1
00000459: DUP1
0000045a: DUP4
0000045b: DUP4
0000045c: PUSH1 0x00
0000045e: JUMPDEST
0000045f: DUP4
00000460: DUP2
00000461: LT
00000462: ISZERO
00000463: PUSH2 0x0476
00000466: JUMPI
00000467: DUP2
00000468: DUP2
00000469: ADD
0000046a: MLOAD
0000046b: DUP4
0000046c: DUP3
0000046d: ADD
0000046e: MSTORE
0000046f: PUSH1 0x20
00000471: ADD
00000472: PUSH2 0x045e
00000475: JUMP
00000476: JUMPDEST
00000477: POP
00000478: POP
00000479: POP
0000047a: POP
0000047b: SWAP1
0000047c: POP
0000047d: SWAP1
0000047e: DUP2
0000047f: ADD
00000480: SWAP1
00000481: PUSH1 0x1f
00000483: AND
00000484: DUP1
00000485: ISZERO
00000486: PUSH2 0x04a3
00000489: JUMPI
0000048a: DUP1
0000048b: DUP3
0000048c: SUB
0000048d: DUP1
0000048e: MLOAD
0000048f: PUSH1 0x01
00000491: DUP4
00000492: PUSH1 0x20
00000494: SUB
00000495: PUSH2 0x0100
00000498: EXP
00000499: SUB
0000049a: NOT
0000049b: AND
0000049c: DUP2
0000049d: MSTORE
0000049e: PUSH1 0x20
000004a0: ADD
000004a1: SWAP2
000004a2: POP
000004a3: JUMPDEST
000004a4: POP
000004a5: SWAP13
000004a6: POP
000004a7: POP
000004a8: POP
000004a9: POP
000004aa: POP
000004ab: POP
000004ac: POP
000004ad: POP
000004ae: POP
000004af: POP
000004b0: POP
000004b1: POP
000004b2: POP
000004b3: PUSH1 0x40
000004b5: MLOAD
000004b6: DUP1
000004b7: SWAP2
000004b8: SUB
000004b9: SWAP1
000004ba: RETURN
000004bb: JUMPDEST
000004bc: PUSH2 0x03b8
000004bf: PUSH1 0x04
000004c1: DUP1
000004c2: CALLDATASIZE
000004c3: SUB
000004c4: PUSH1 0x20
000004c6: DUP2
000004c7: LT
000004c8: ISZERO
000004c9: PUSH2 0x04d1
000004cc: JUMPI
000004cd: PUSH1 0x00
000004cf: DUP1
000004d0: REVERT
000004d1: JUMPDEST
000004d2: POP
000004d3: CALLDATALOAD
000004d4: PUSH1 0x01
000004d6: PUSH1 0x01
000004d8: PUSH1 0xa0
000004da: SHL
000004db: SUB
000004dc: AND
000004dd: PUSH2 0x0bb7
000004e0: JUMP
000004e1: JUMPDEST
000004e2: PUSH2 0x050d
000004e5: PUSH1 0x04
000004e7: DUP1
000004e8: CALLDATASIZE
000004e9: SUB
000004ea: PUSH1 0x40
000004ec: DUP2
000004ed: LT
000004ee: ISZERO
000004ef: PUSH2 0x04f7
000004f2: JUMPI
000004f3: PUSH1 0x00
000004f5: DUP1
000004f6: REVERT
000004f7: JUMPDEST
000004f8: POP
000004f9: DUP1
000004fa: CALLDATALOAD
000004fb: SWAP1
000004fc: PUSH1 0x20
000004fe: ADD
000004ff: CALLDATALOAD
00000500: PUSH1 0x01
00000502: PUSH1 0x01
00000504: PUSH1 0xa0
00000506: SHL
00000507: SUB
00000508: AND
00000509: PUSH2 0x0bc9
0000050c: JUMP
0000050d: JUMPDEST
0000050e: PUSH1 0x40
00000510: DUP1
00000511: MLOAD
00000512: SWAP3
00000513: DUP4
00000514: MSTORE
00000515: PUSH1 0x20
00000517: DUP4
00000518: ADD
00000519: SWAP2
0000051a: SWAP1
0000051b: SWAP2
0000051c: MSTORE
0000051d: DUP1
0000051e: MLOAD
0000051f: SWAP2
00000520: DUP3
00000521: SWAP1
00000522: SUB
00000523: ADD
00000524: SWAP1
00000525: RETURN
00000526: JUMPDEST
00000527: PUSH2 0x03b8
0000052a: PUSH2 0x0c02
0000052d: JUMP
0000052e: JUMPDEST
0000052f: PUSH2 0x0554
00000532: PUSH1 0x04
00000534: DUP1
00000535: CALLDATASIZE
00000536: SUB
00000537: PUSH1 0x20
00000539: DUP2
0000053a: LT
0000053b: ISZERO
0000053c: PUSH2 0x0544
0000053f: JUMPI
00000540: PUSH1 0x00
00000542: DUP1
00000543: REVERT
00000544: JUMPDEST
00000545: POP
00000546: CALLDATALOAD
00000547: PUSH1 0x01
00000549: PUSH1 0x01
0000054b: PUSH1 0xa0
0000054d: SHL
0000054e: SUB
0000054f: AND
00000550: PUSH2 0x0c08
00000553: JUMP
00000554: JUMPDEST
00000555: STOP
00000556: JUMPDEST
00000557: PUSH2 0x0554
0000055a: PUSH1 0x04
0000055c: DUP1
0000055d: CALLDATASIZE
0000055e: SUB
0000055f: PUSH1 0x20
00000561: DUP2
00000562: LT
00000563: ISZERO
00000564: PUSH2 0x056c
00000567: JUMPI
00000568: PUSH1 0x00
0000056a: DUP1
0000056b: REVERT
0000056c: JUMPDEST
0000056d: POP
0000056e: CALLDATALOAD
0000056f: PUSH2 0x0c83
00000572: JUMP
00000573: JUMPDEST
00000574: PUSH2 0x057b
00000577: PUSH2 0x0cda
0000057a: JUMP
0000057b: JUMPDEST
0000057c: PUSH1 0x40
0000057e: DUP1
0000057f: MLOAD
00000580: SWAP2
00000581: ISZERO
00000582: ISZERO
00000583: DUP3
00000584: MSTORE
00000585: MLOAD
00000586: SWAP1
00000587: DUP2
00000588: SWAP1
00000589: SUB
0000058a: PUSH1 0x20
0000058c: ADD
0000058d: SWAP1
0000058e: RETURN
0000058f: JUMPDEST
00000590: PUSH2 0x03b8
00000593: PUSH2 0x0cea
00000596: JUMP
00000597: JUMPDEST
00000598: PUSH2 0x03b8
0000059b: PUSH2 0x0cf0
0000059e: JUMP
0000059f: JUMPDEST
000005a0: PUSH2 0x03b8
000005a3: PUSH2 0x0cf6
000005a6: JUMP
000005a7: JUMPDEST
000005a8: PUSH2 0x0554
000005ab: PUSH2 0x0cfd
000005ae: JUMP
000005af: JUMPDEST
000005b0: PUSH2 0x057b
000005b3: PUSH2 0x0de8
000005b6: JUMP
000005b7: JUMPDEST
000005b8: PUSH2 0x0554
000005bb: PUSH1 0x04
000005bd: DUP1
000005be: CALLDATASIZE
000005bf: SUB
000005c0: PUSH1 0x40
000005c2: DUP2
000005c3: LT
000005c4: ISZERO
000005c5: PUSH2 0x05cd
000005c8: JUMPI
000005c9: PUSH1 0x00
000005cb: DUP1
000005cc: REVERT
000005cd: JUMPDEST
000005ce: POP
000005cf: DUP1
000005d0: CALLDATALOAD
000005d1: SWAP1
000005d2: PUSH1 0x20
000005d4: ADD
000005d5: CALLDATALOAD
000005d6: PUSH2 0x0df1
000005d9: JUMP
000005da: JUMPDEST
000005db: PUSH2 0x0554
000005de: PUSH1 0x04
000005e0: DUP1
000005e1: CALLDATASIZE
000005e2: SUB
000005e3: PUSH1 0x20
000005e5: DUP2
000005e6: LT
000005e7: ISZERO
000005e8: PUSH2 0x05f0
000005eb: JUMPI
000005ec: PUSH1 0x00
000005ee: DUP1
000005ef: REVERT
000005f0: JUMPDEST
000005f1: POP
000005f2: CALLDATALOAD
000005f3: PUSH2 0x1098
000005f6: JUMP
000005f7: JUMPDEST
000005f8: PUSH2 0x0554
000005fb: PUSH1 0x04
000005fd: DUP1
000005fe: CALLDATASIZE
000005ff: SUB
00000600: PUSH1 0x20
00000602: DUP2
00000603: LT
00000604: ISZERO
00000605: PUSH2 0x060d
00000608: JUMPI
00000609: PUSH1 0x00
0000060b: DUP1
0000060c: REVERT
0000060d: JUMPDEST
0000060e: POP
0000060f: CALLDATALOAD
00000610: PUSH2 0x1241
00000613: JUMP
00000614: JUMPDEST
00000615: PUSH2 0x0554
00000618: PUSH2 0x1298
0000061b: JUMP
0000061c: JUMPDEST
0000061d: PUSH2 0x0554
00000620: PUSH1 0x04
00000622: DUP1
00000623: CALLDATASIZE
00000624: SUB
00000625: PUSH1 0x20
00000627: DUP2
00000628: LT
00000629: ISZERO
0000062a: PUSH2 0x0632
0000062d: JUMPI
0000062e: PUSH1 0x00
00000630: DUP1
00000631: REVERT
00000632: JUMPDEST
00000633: POP
00000634: CALLDATALOAD
00000635: PUSH2 0x13c6
00000638: JUMP
00000639: JUMPDEST
0000063a: PUSH2 0x03b8
0000063d: PUSH1 0x04
0000063f: DUP1
00000640: CALLDATASIZE
00000641: SUB
00000642: PUSH1 0x20
00000644: DUP2
00000645: LT
00000646: ISZERO
00000647: PUSH2 0x064f
0000064a: JUMPI
0000064b: PUSH1 0x00
0000064d: DUP1
0000064e: REVERT
0000064f: JUMPDEST
00000650: POP
00000651: CALLDATALOAD
00000652: PUSH1 0x01
00000654: PUSH1 0x01
00000656: PUSH1 0xa0
00000658: SHL
00000659: SUB
0000065a: AND
0000065b: PUSH2 0x1501
0000065e: JUMP
0000065f: JUMPDEST
00000660: PUSH2 0x03b8
00000663: PUSH2 0x1513
00000666: JUMP
00000667: JUMPDEST
00000668: PUSH2 0x0554
0000066b: PUSH1 0x04
0000066d: DUP1
0000066e: CALLDATASIZE
0000066f: SUB
00000670: PUSH1 0x20
00000672: DUP2
00000673: LT
00000674: ISZERO
00000675: PUSH2 0x067d
00000678: JUMPI
00000679: PUSH1 0x00
0000067b: DUP1
0000067c: REVERT
0000067d: JUMPDEST
0000067e: POP
0000067f: CALLDATALOAD
00000680: ISZERO
00000681: ISZERO
00000682: PUSH2 0x1519
00000685: JUMP
00000686: JUMPDEST
00000687: PUSH2 0x068e
0000068a: PUSH2 0x157e
0000068d: JUMP
0000068e: JUMPDEST
0000068f: PUSH1 0x40
00000691: DUP1
00000692: MLOAD
00000693: PUSH1 0x01
00000695: PUSH1 0x01
00000697: PUSH1 0xa0
00000699: SHL
0000069a: SUB
0000069b: SWAP1
0000069c: SWAP3
0000069d: AND
0000069e: DUP3
0000069f: MSTORE
000006a0: MLOAD
000006a1: SWAP1
000006a2: DUP2
000006a3: SWAP1
000006a4: SUB
000006a5: PUSH1 0x20
000006a7: ADD
000006a8: SWAP1
000006a9: RETURN
000006aa: JUMPDEST
000006ab: PUSH2 0x0554
000006ae: PUSH1 0x04
000006b0: DUP1
000006b1: CALLDATASIZE
000006b2: SUB
000006b3: PUSH1 0x20
000006b5: DUP2
000006b6: LT
000006b7: ISZERO
000006b8: PUSH2 0x06c0
000006bb: JUMPI
000006bc: PUSH1 0x00
000006be: DUP1
000006bf: REVERT
000006c0: JUMPDEST
000006c1: POP
000006c2: CALLDATALOAD
000006c3: ISZERO
000006c4: ISZERO
000006c5: PUSH2 0x1592
000006c8: JUMP
000006c9: JUMPDEST
000006ca: PUSH2 0x068e
000006cd: PUSH2 0x1602
000006d0: JUMP
000006d1: JUMPDEST
000006d2: PUSH2 0x0554
000006d5: PUSH1 0x04
000006d7: DUP1
000006d8: CALLDATASIZE
000006d9: SUB
000006da: PUSH1 0x20
000006dc: DUP2
000006dd: LT
000006de: ISZERO
000006df: PUSH2 0x06e7
000006e2: JUMPI
000006e3: PUSH1 0x00
000006e5: DUP1
000006e6: REVERT
000006e7: JUMPDEST
000006e8: POP
000006e9: CALLDATALOAD
000006ea: PUSH2 0x1611
000006ed: JUMP
000006ee: JUMPDEST
000006ef: PUSH2 0x03b8
000006f2: PUSH1 0x04
000006f4: DUP1
000006f5: CALLDATASIZE
000006f6: SUB
000006f7: PUSH1 0x20
000006f9: DUP2
000006fa: LT
000006fb: ISZERO
000006fc: PUSH2 0x0704
000006ff: JUMPI
00000700: PUSH1 0x00
00000702: DUP1
00000703: REVERT
00000704: JUMPDEST
00000705: POP
00000706: CALLDATALOAD
00000707: PUSH1 0x01
00000709: PUSH1 0x01
0000070b: PUSH1 0xa0
0000070d: SHL
0000070e: SUB
0000070f: AND
00000710: PUSH2 0x1668
00000713: JUMP
00000714: JUMPDEST
00000715: PUSH2 0x057b
00000718: PUSH2 0x1683
0000071b: JUMP
0000071c: JUMPDEST
0000071d: PUSH2 0x0554
00000720: PUSH2 0x168c
00000723: JUMP
00000724: JUMPDEST
00000725: PUSH2 0x0554
00000728: PUSH1 0x04
0000072a: DUP1
0000072b: CALLDATASIZE
0000072c: SUB
0000072d: PUSH1 0x20
0000072f: DUP2
00000730: LT
00000731: ISZERO
00000732: PUSH2 0x073a
00000735: JUMPI
00000736: PUSH1 0x00
00000738: DUP1
00000739: REVERT
0000073a: JUMPDEST
0000073b: POP
0000073c: CALLDATALOAD
0000073d: PUSH2 0x172f
00000740: JUMP
00000741: JUMPDEST
00000742: PUSH2 0x03b8
00000745: PUSH1 0x04
00000747: DUP1
00000748: CALLDATASIZE
00000749: SUB
0000074a: PUSH1 0x20
0000074c: DUP2
0000074d: LT
0000074e: ISZERO
0000074f: PUSH2 0x0757
00000752: JUMPI
00000753: PUSH1 0x00
00000755: DUP1
00000756: REVERT
00000757: JUMPDEST
00000758: POP
00000759: CALLDATALOAD
0000075a: PUSH1 0x01
0000075c: PUSH1 0x01
0000075e: PUSH1 0xa0
00000760: SHL
00000761: SUB
00000762: AND
00000763: PUSH2 0x19d7
00000766: JUMP
00000767: JUMPDEST
00000768: PUSH2 0x03b8
0000076b: PUSH2 0x19f2
0000076e: JUMP
0000076f: JUMPDEST
00000770: PUSH2 0x078c
00000773: PUSH1 0x04
00000775: DUP1
00000776: CALLDATASIZE
00000777: SUB
00000778: PUSH1 0x20
0000077a: DUP2
0000077b: LT
0000077c: ISZERO
0000077d: PUSH2 0x0785
00000780: JUMPI
00000781: PUSH1 0x00
00000783: DUP1
00000784: REVERT
00000785: JUMPDEST
00000786: POP
00000787: CALLDATALOAD
00000788: PUSH2 0x19f8
0000078b: JUMP
0000078c: JUMPDEST
0000078d: PUSH1 0x40
0000078f: DUP1
00000790: MLOAD
00000791: SWAP4
00000792: DUP5
00000793: MSTORE
00000794: PUSH1 0x20
00000796: DUP5
00000797: ADD
00000798: SWAP3
00000799: SWAP1
0000079a: SWAP3
0000079b: MSTORE
0000079c: DUP3
0000079d: DUP3
0000079e: ADD
0000079f: MSTORE
000007a0: MLOAD
000007a1: SWAP1
000007a2: DUP2
000007a3: SWAP1
000007a4: SUB
000007a5: PUSH1 0x60
000007a7: ADD
000007a8: SWAP1
000007a9: RETURN
000007aa: JUMPDEST
000007ab: PUSH2 0x03b8
000007ae: PUSH2 0x1a88
000007b1: JUMP
000007b2: JUMPDEST
000007b3: PUSH2 0x0554
000007b6: PUSH1 0x04
000007b8: DUP1
000007b9: CALLDATASIZE
000007ba: SUB
000007bb: PUSH1 0x20
000007bd: DUP2
000007be: LT
000007bf: ISZERO
000007c0: PUSH2 0x07c8
000007c3: JUMPI
000007c4: PUSH1 0x00
000007c6: DUP1
000007c7: REVERT
000007c8: JUMPDEST
000007c9: POP
000007ca: CALLDATALOAD
000007cb: PUSH2 0x1a9b
000007ce: JUMP
000007cf: JUMPDEST
000007d0: PUSH2 0x03b8
000007d3: PUSH1 0x04
000007d5: DUP1
000007d6: CALLDATASIZE
000007d7: SUB
000007d8: PUSH1 0x20
000007da: DUP2
000007db: LT
000007dc: ISZERO
000007dd: PUSH2 0x07e5
000007e0: JUMPI
000007e1: PUSH1 0x00
000007e3: DUP1
000007e4: REVERT
000007e5: JUMPDEST
000007e6: POP
000007e7: CALLDATALOAD
000007e8: PUSH1 0x01
000007ea: PUSH1 0x01
000007ec: PUSH1 0xa0
000007ee: SHL
000007ef: SUB
000007f0: AND
000007f1: PUSH2 0x1d47
000007f4: JUMP
000007f5: JUMPDEST
000007f6: PUSH2 0x068e
000007f9: PUSH2 0x1d59
000007fc: JUMP
000007fd: JUMPDEST
000007fe: PUSH2 0x057b
00000801: PUSH2 0x1d68
00000804: JUMP
00000805: JUMPDEST
00000806: PUSH2 0x03b8
00000809: PUSH2 0x1d8e
0000080c: JUMP
0000080d: JUMPDEST
0000080e: PUSH2 0x057b
00000811: PUSH1 0x04
00000813: DUP1
00000814: CALLDATASIZE
00000815: SUB
00000816: PUSH1 0x20
00000818: DUP2
00000819: LT
0000081a: ISZERO
0000081b: PUSH2 0x0823
0000081e: JUMPI
0000081f: PUSH1 0x00
00000821: DUP1
00000822: REVERT
00000823: JUMPDEST
00000824: POP
00000825: CALLDATALOAD
00000826: PUSH1 0x01
00000828: PUSH1 0x01
0000082a: PUSH1 0xa0
0000082c: SHL
0000082d: SUB
0000082e: AND
0000082f: PUSH2 0x1d94
00000832: JUMP
00000833: JUMPDEST
00000834: PUSH2 0x0554
00000837: PUSH1 0x04
00000839: DUP1
0000083a: CALLDATASIZE
0000083b: SUB
0000083c: PUSH1 0x20
0000083e: DUP2
0000083f: LT
00000840: ISZERO
00000841: PUSH2 0x0849
00000844: JUMPI
00000845: PUSH1 0x00
00000847: DUP1
00000848: REVERT
00000849: JUMPDEST
0000084a: POP
0000084b: CALLDATALOAD
0000084c: PUSH2 0x1da9
0000084f: JUMP
00000850: JUMPDEST
00000851: PUSH2 0x0554
00000854: PUSH1 0x04
00000856: DUP1
00000857: CALLDATASIZE
00000858: SUB
00000859: PUSH1 0x20
0000085b: DUP2
0000085c: LT
0000085d: ISZERO
0000085e: PUSH2 0x0866
00000861: JUMPI
00000862: PUSH1 0x00
00000864: DUP1
00000865: REVERT
00000866: JUMPDEST
00000867: DUP2
00000868: ADD
00000869: SWAP1
0000086a: PUSH1 0x20
0000086c: DUP2
0000086d: ADD
0000086e: DUP2
0000086f: CALLDATALOAD
00000870: PUSH5 0x0100000000
00000876: DUP2
00000877: GT
00000878: ISZERO
00000879: PUSH2 0x0881
0000087c: JUMPI
0000087d: PUSH1 0x00
0000087f: DUP1
00000880: REVERT
00000881: JUMPDEST
00000882: DUP3
00000883: ADD
00000884: DUP4
00000885: PUSH1 0x20
00000887: DUP3
00000888: ADD
00000889: GT
0000088a: ISZERO
0000088b: PUSH2 0x0893
0000088e: JUMPI
0000088f: PUSH1 0x00
00000891: DUP1
00000892: REVERT
00000893: JUMPDEST
00000894: DUP1
00000895: CALLDATALOAD
00000896: SWAP1
00000897: PUSH1 0x20
00000899: ADD
0000089a: SWAP2
0000089b: DUP5
0000089c: PUSH1 0x01
0000089e: DUP4
0000089f: MUL
000008a0: DUP5
000008a1: ADD
000008a2: GT
000008a3: PUSH5 0x0100000000
000008a9: DUP4
000008aa: GT
000008ab: OR
000008ac: ISZERO
000008ad: PUSH2 0x08b5
000008b0: JUMPI
000008b1: PUSH1 0x00
000008b3: DUP1
000008b4: REVERT
000008b5: JUMPDEST
000008b6: SWAP2
000008b7: SWAP1
000008b8: DUP1
000008b9: DUP1
000008ba: PUSH1 0x1f
000008bc: ADD
000008bd: PUSH1 0x20
000008bf: DUP1
000008c0: SWAP2
000008c1: DIV
000008c2: MUL
000008c3: PUSH1 0x20
000008c5: ADD
000008c6: PUSH1 0x40
000008c8: MLOAD
000008c9: SWAP1
000008ca: DUP2
000008cb: ADD
000008cc: PUSH1 0x40
000008ce: MSTORE
000008cf: DUP1
000008d0: SWAP4
000008d1: SWAP3
000008d2: SWAP2
000008d3: SWAP1
000008d4: DUP2
000008d5: DUP2
000008d6: MSTORE
000008d7: PUSH1 0x20
000008d9: ADD
000008da: DUP4
000008db: DUP4
000008dc: DUP1
000008dd: DUP3
000008de: DUP5
000008df: CALLDATACOPY
000008e0: PUSH1 0x00
000008e2: SWAP3
000008e3: ADD
000008e4: SWAP2
000008e5: SWAP1
000008e6: SWAP2
000008e7: MSTORE
000008e8: POP
000008e9: SWAP3
000008ea: SWAP6
000008eb: POP
000008ec: PUSH2 0x1ef1
000008ef: SWAP5
000008f0: POP
000008f1: POP
000008f2: POP
000008f3: POP
000008f4: POP
000008f5: JUMP
000008f6: JUMPDEST
000008f7: PUSH2 0x0554
000008fa: PUSH1 0x04
000008fc: DUP1
000008fd: CALLDATASIZE
000008fe: SUB
000008ff: PUSH1 0x20
00000901: DUP2
00000902: LT
00000903: ISZERO
00000904: PUSH2 0x090c
00000907: JUMPI
00000908: PUSH1 0x00
0000090a: DUP1
0000090b: REVERT
0000090c: JUMPDEST
0000090d: POP
0000090e: CALLDATALOAD
0000090f: PUSH1 0x01
00000911: PUSH1 0x01
00000913: PUSH1 0xa0
00000915: SHL
00000916: SUB
00000917: AND
00000918: PUSH2 0x213f
0000091b: JUMP
0000091c: JUMPDEST
0000091d: PUSH2 0x0554
00000920: PUSH2 0x21b9
00000923: JUMP
00000924: JUMPDEST
00000925: PUSH2 0x0554
00000928: PUSH1 0x04
0000092a: DUP1
0000092b: CALLDATASIZE
0000092c: SUB
0000092d: PUSH1 0x20
0000092f: DUP2
00000930: LT
00000931: ISZERO
00000932: PUSH2 0x093a
00000935: JUMPI
00000936: PUSH1 0x00
00000938: DUP1
00000939: REVERT
0000093a: JUMPDEST
0000093b: POP
0000093c: CALLDATALOAD
0000093d: PUSH2 0x22c6
00000940: JUMP
00000941: JUMPDEST
00000942: PUSH2 0x03b8
00000945: PUSH2 0x231d
00000948: JUMP
00000949: JUMPDEST
0000094a: PUSH2 0x03b8
0000094d: PUSH2 0x2323
00000950: JUMP
00000951: JUMPDEST
00000952: PUSH2 0x0554
00000955: PUSH1 0x04
00000957: DUP1
00000958: CALLDATASIZE
00000959: SUB
0000095a: PUSH1 0x20
0000095c: DUP2
0000095d: LT
0000095e: ISZERO
0000095f: PUSH2 0x0967
00000962: JUMPI
00000963: PUSH1 0x00
00000965: DUP1
00000966: REVERT
00000967: JUMPDEST
00000968: POP
00000969: CALLDATALOAD
0000096a: PUSH2 0x2377
0000096d: JUMP
0000096e: JUMPDEST
0000096f: PUSH2 0x03b8
00000972: PUSH1 0x04
00000974: DUP1
00000975: CALLDATASIZE
00000976: SUB
00000977: PUSH1 0x20
00000979: DUP2
0000097a: LT
0000097b: ISZERO
0000097c: PUSH2 0x0984
0000097f: JUMPI
00000980: PUSH1 0x00
00000982: DUP1
00000983: REVERT
00000984: JUMPDEST
00000985: POP
00000986: CALLDATALOAD
00000987: PUSH1 0x01
00000989: PUSH1 0x01
0000098b: PUSH1 0xa0
0000098d: SHL
0000098e: SUB
0000098f: AND
00000990: PUSH2 0x23ce
00000993: JUMP
00000994: JUMPDEST
00000995: PUSH2 0x03b8
00000998: PUSH2 0x23e0
0000099b: JUMP
0000099c: JUMPDEST
0000099d: PUSH2 0x0554
000009a0: PUSH1 0x04
000009a2: DUP1
000009a3: CALLDATASIZE
000009a4: SUB
000009a5: PUSH1 0x20
000009a7: DUP2
000009a8: LT
000009a9: ISZERO
000009aa: PUSH2 0x09b2
000009ad: JUMPI
000009ae: PUSH1 0x00
000009b0: DUP1
000009b1: REVERT
000009b2: JUMPDEST
000009b3: POP
000009b4: CALLDATALOAD
000009b5: ISZERO
000009b6: ISZERO
000009b7: PUSH2 0x23e6
000009ba: JUMP
000009bb: JUMPDEST
000009bc: PUSH2 0x03b8
000009bf: PUSH2 0x244b
000009c2: JUMP
000009c3: JUMPDEST
000009c4: PUSH2 0x0554
000009c7: PUSH2 0x2451
000009ca: JUMP
000009cb: JUMPDEST
000009cc: PUSH2 0x0554
000009cf: PUSH1 0x04
000009d1: DUP1
000009d2: CALLDATASIZE
000009d3: SUB
000009d4: PUSH1 0x40
000009d6: DUP2
000009d7: LT
000009d8: ISZERO
000009d9: PUSH2 0x09e1
000009dc: JUMPI
000009dd: PUSH1 0x00
000009df: DUP1
000009e0: REVERT
000009e1: JUMPDEST
000009e2: POP
000009e3: PUSH1 0x01
000009e5: PUSH1 0x01
000009e7: PUSH1 0xa0
000009e9: SHL
000009ea: SUB
000009eb: DUP2
000009ec: CALLDATALOAD
000009ed: AND
000009ee: SWAP1
000009ef: PUSH1 0x20
000009f1: ADD
000009f2: CALLDATALOAD
000009f3: PUSH2 0x246c
000009f6: JUMP
000009f7: JUMPDEST
000009f8: PUSH2 0x03b8
000009fb: PUSH2 0x257b
000009fe: JUMP
000009ff: JUMPDEST
00000a00: PUSH2 0x03b8
00000a03: PUSH2 0x2581
00000a06: JUMP
00000a07: JUMPDEST
00000a08: PUSH2 0x0554
00000a0b: PUSH1 0x04
00000a0d: DUP1
00000a0e: CALLDATASIZE
00000a0f: SUB
00000a10: PUSH1 0x20
00000a12: DUP2
00000a13: LT
00000a14: ISZERO
00000a15: PUSH2 0x0a1d
00000a18: JUMPI
00000a19: PUSH1 0x00
00000a1b: DUP1
00000a1c: REVERT
00000a1d: JUMPDEST
00000a1e: POP
00000a1f: CALLDATALOAD
00000a20: PUSH1 0x01
00000a22: PUSH1 0x01
00000a24: PUSH1 0xa0
00000a26: SHL
00000a27: SUB
00000a28: AND
00000a29: PUSH2 0x2587
00000a2c: JUMP
00000a2d: JUMPDEST
00000a2e: PUSH2 0x03b8
00000a31: PUSH2 0x25ec
00000a34: JUMP
00000a35: JUMPDEST
00000a36: PUSH2 0x068e
00000a39: PUSH2 0x25f2
00000a3c: JUMP
00000a3d: JUMPDEST
00000a3e: PUSH1 0x01
00000a40: PUSH1 0x01
00000a42: PUSH1 0xa0
00000a44: SHL
00000a45: SUB
00000a46: DUP2
00000a47: AND
00000a48: PUSH1 0x00
00000a4a: SWAP1
00000a4b: DUP2
00000a4c: MSTORE
00000a4d: PUSH1 0x19
00000a4f: PUSH1 0x20
00000a51: SWAP1
00000a52: DUP2
00000a53: MSTORE
00000a54: PUSH1 0x40
00000a56: DUP1
00000a57: DUP4
00000a58: KECCAK256
00000a59: SLOAD
00000a5a: PUSH1 0x18
00000a5c: SWAP1
00000a5d: SWAP3
00000a5e: MSTORE
00000a5f: DUP3
00000a60: KECCAK256
00000a61: SLOAD
00000a62: PUSH2 0x0abd
00000a65: SWAP2
00000a66: SWAP1
00000a67: PUSH2 0x0ab1
00000a6a: SWAP1
00000a6b: PUSH8 0x0de0b6b3a7640000
00000a74: SWAP1
00000a75: PUSH2 0x0aa5
00000a78: SWAP1
00000a79: PUSH2 0x0a90
00000a7c: SWAP1
00000a7d: PUSH2 0x0a84
00000a80: PUSH2 0x2323
00000a83: JUMP
00000a84: JUMPDEST
00000a85: SWAP1
00000a86: PUSH4 0xffffffff
00000a8b: PUSH2 0x2601
00000a8e: AND
00000a8f: JUMP
00000a90: JUMPDEST
00000a91: PUSH2 0x0a99
00000a94: DUP9
00000a95: PUSH2 0x1668
00000a98: JUMP
00000a99: JUMPDEST
00000a9a: SWAP1
00000a9b: PUSH4 0xffffffff
00000aa0: PUSH2 0x264a
00000aa3: AND
00000aa4: JUMP
00000aa5: JUMPDEST
00000aa6: SWAP1
00000aa7: PUSH4 0xffffffff
00000aac: PUSH2 0x26a3
00000aaf: AND
00000ab0: JUMP
00000ab1: JUMPDEST
00000ab2: SWAP1
00000ab3: PUSH4 0xffffffff
00000ab8: PUSH2 0x26e5
00000abb: AND
00000abc: JUMP
00000abd: JUMPDEST
00000abe: SWAP3
00000abf: SWAP2
00000ac0: POP
00000ac1: POP
00000ac2: JUMP
00000ac3: JUMPDEST
00000ac4: PUSH1 0x06
00000ac6: PUSH1 0x20
00000ac8: DUP2
00000ac9: DUP2
00000aca: MSTORE
00000acb: PUSH1 0x00
00000acd: SWAP3
00000ace: DUP4
00000acf: MSTORE
00000ad0: PUSH1 0x40
00000ad2: SWAP3
00000ad3: DUP4
00000ad4: SWAP1
00000ad5: KECCAK256
00000ad6: DUP1
00000ad7: SLOAD
00000ad8: PUSH1 0x01
00000ada: DUP1
00000adb: DUP4
00000adc: ADD
00000add: SLOAD
00000ade: PUSH1 0x04
00000ae0: DUP5
00000ae1: ADD
00000ae2: SLOAD
00000ae3: PUSH1 0x05
00000ae5: DUP6
00000ae6: ADD
00000ae7: SLOAD
00000ae8: SWAP7
00000ae9: DUP6
00000aea: ADD
00000aeb: SLOAD
00000aec: PUSH1 0x07
00000aee: DUP7
00000aef: ADD
00000af0: SLOAD
00000af1: PUSH1 0x08
00000af3: DUP8
00000af4: ADD
00000af5: DUP1
00000af6: SLOAD
00000af7: DUP12
00000af8: MLOAD
00000af9: PUSH1 0x02
00000afb: PUSH2 0x0100
00000afe: SWAP9
00000aff: DUP4
00000b00: AND
00000b01: ISZERO
00000b02: SWAP9
00000b03: SWAP1
00000b04: SWAP9
00000b05: MUL
00000b06: PUSH1 0x00
00000b08: NOT
00000b09: ADD
00000b0a: SWAP1
00000b0b: SWAP2
00000b0c: AND
00000b0d: SWAP7
00000b0e: SWAP1
00000b0f: SWAP7
00000b10: DIV
00000b11: PUSH1 0x1f
00000b13: DUP2
00000b14: ADD
00000b15: DUP11
00000b16: SWAP1
00000b17: DIV
00000b18: DUP11
00000b19: MUL
00000b1a: DUP8
00000b1b: ADD
00000b1c: DUP11
00000b1d: ADD
00000b1e: SWAP1
00000b1f: SWAP12
00000b20: MSTORE
00000b21: DUP11
00000b22: DUP7
00000b23: MSTORE
00000b24: SWAP6
00000b25: SWAP10
00000b26: PUSH1 0x01
00000b28: PUSH1 0x01
00000b2a: PUSH1 0xa0
00000b2c: SHL
00000b2d: SUB
00000b2e: SWAP1
00000b2f: SWAP5
00000b30: AND
00000b31: SWAP9
00000b32: SWAP3
00000b33: SWAP8
00000b34: SWAP3
00000b35: SWAP7
00000b36: SWAP2
00000b37: SWAP6
00000b38: SWAP1
00000b39: SWAP5
00000b3a: SWAP2
00000b3b: SWAP4
00000b3c: SWAP2
00000b3d: SWAP3
00000b3e: SWAP1
00000b3f: SWAP2
00000b40: SWAP1
00000b41: DUP4
00000b42: ADD
00000b43: DUP3
00000b44: DUP3
00000b45: DUP1
00000b46: ISZERO
00000b47: PUSH2 0x0b91
00000b4a: JUMPI
00000b4b: DUP1
00000b4c: PUSH1 0x1f
00000b4e: LT
00000b4f: PUSH2 0x0b66
00000b52: JUMPI
00000b53: PUSH2 0x0100
00000b56: DUP1
00000b57: DUP4
00000b58: SLOAD
00000b59: DIV
00000b5a: MUL
00000b5b: DUP4
00000b5c: MSTORE
00000b5d: SWAP2
00000b5e: PUSH1 0x20
00000b60: ADD
00000b61: SWAP2
00000b62: PUSH2 0x0b91
00000b65: JUMP
00000b66: JUMPDEST
00000b67: DUP3
00000b68: ADD
00000b69: SWAP2
00000b6a: SWAP1
00000b6b: PUSH1 0x00
00000b6d: MSTORE
00000b6e: PUSH1 0x20
00000b70: PUSH1 0x00
00000b72: KECCAK256
00000b73: SWAP1
00000b74: JUMPDEST
00000b75: DUP2
00000b76: SLOAD
00000b77: DUP2
00000b78: MSTORE
00000b79: SWAP1
00000b7a: PUSH1 0x01
00000b7c: ADD
00000b7d: SWAP1
00000b7e: PUSH1 0x20
00000b80: ADD
00000b81: DUP1
00000b82: DUP4
00000b83: GT
00000b84: PUSH2 0x0b74
00000b87: JUMPI
00000b88: DUP3
00000b89: SWAP1
00000b8a: SUB
00000b8b: PUSH1 0x1f
00000b8d: AND
00000b8e: DUP3
00000b8f: ADD
00000b90: SWAP2
00000b91: JUMPDEST
00000b92: POP
00000b93: POP
00000b94: POP
00000b95: POP
00000b96: PUSH1 0x09
00000b98: DUP4
00000b99: ADD
00000b9a: SLOAD
00000b9b: PUSH1 0x0a
00000b9d: DUP5
00000b9e: ADD
00000b9f: SLOAD
00000ba0: PUSH1 0x0b
00000ba2: DUP6
00000ba3: ADD
00000ba4: SLOAD
00000ba5: PUSH1 0x0c
00000ba7: SWAP1
00000ba8: SWAP6
00000ba9: ADD
00000baa: SLOAD
00000bab: SWAP4
00000bac: SWAP5
00000bad: SWAP2
00000bae: SWAP4
00000baf: SWAP1
00000bb0: SWAP3
00000bb1: POP
00000bb2: PUSH1 0xff
00000bb4: AND
00000bb5: DUP12
00000bb6: JUMP
00000bb7: JUMPDEST
00000bb8: PUSH1 0x19
00000bba: PUSH1 0x20
00000bbc: MSTORE
00000bbd: PUSH1 0x00
00000bbf: SWAP1
00000bc0: DUP2
00000bc1: MSTORE
00000bc2: PUSH1 0x40
00000bc4: SWAP1
00000bc5: KECCAK256
00000bc6: SLOAD
00000bc7: DUP2
00000bc8: JUMP
00000bc9: JUMPDEST
00000bca: PUSH1 0x00
00000bcc: SWAP2
00000bcd: DUP3
00000bce: MSTORE
00000bcf: PUSH1 0x06
00000bd1: PUSH1 0x20
00000bd3: SWAP1
00000bd4: DUP2
00000bd5: MSTORE
00000bd6: PUSH1 0x40
00000bd8: DUP1
00000bd9: DUP5
00000bda: KECCAK256
00000bdb: PUSH1 0x01
00000bdd: PUSH1 0x01
00000bdf: PUSH1 0xa0
00000be1: SHL
00000be2: SUB
00000be3: SWAP4
00000be4: SWAP1
00000be5: SWAP4
00000be6: AND
00000be7: DUP5
00000be8: MSTORE
00000be9: PUSH1 0x02
00000beb: DUP4
00000bec: ADD
00000bed: DUP3
00000bee: MSTORE
00000bef: DUP1
00000bf0: DUP5
00000bf1: KECCAK256
00000bf2: SLOAD
00000bf3: PUSH1 0x03
00000bf5: SWAP1
00000bf6: SWAP4
00000bf7: ADD
00000bf8: SWAP1
00000bf9: SWAP2
00000bfa: MSTORE
00000bfb: SWAP1
00000bfc: SWAP2
00000bfd: KECCAK256
00000bfe: SLOAD
00000bff: SWAP1
00000c00: SWAP2
00000c01: JUMP
00000c02: JUMPDEST
00000c03: PUSH1 0x0e
00000c05: SLOAD
00000c06: DUP2
00000c07: JUMP
00000c08: JUMPDEST
00000c09: PUSH2 0x0c10
00000c0c: PUSH2 0x1d68
00000c0f: JUMP
00000c10: JUMPDEST
00000c11: PUSH2 0x0c61
00000c14: JUMPI
00000c15: PUSH1 0x40
00000c17: DUP1
00000c18: MLOAD
00000c19: PUSH3 0x461bcd
00000c1d: PUSH1 0xe5
00000c1f: SHL
00000c20: DUP2
00000c21: MSTORE
00000c22: PUSH1 0x20
00000c24: PUSH1 0x04
00000c26: DUP3
00000c27: ADD
00000c28: DUP2
00000c29: SWAP1
00000c2a: MSTORE
00000c2b: PUSH1 0x24
00000c2d: DUP3
00000c2e: ADD
00000c2f: MSTORE
00000c30: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00000c51: PUSH1 0x44
00000c53: DUP3
00000c54: ADD
00000c55: MSTORE
00000c56: SWAP1
00000c57: MLOAD
00000c58: SWAP1
00000c59: DUP2
00000c5a: SWAP1
00000c5b: SUB
00000c5c: PUSH1 0x64
00000c5e: ADD
00000c5f: SWAP1
00000c60: REVERT
00000c61: JUMPDEST
00000c62: PUSH1 0x04
00000c64: DUP1
00000c65: SLOAD
00000c66: PUSH1 0x01
00000c68: PUSH1 0x01
00000c6a: PUSH1 0xa0
00000c6c: SHL
00000c6d: SUB
00000c6e: NOT
00000c6f: AND
00000c70: PUSH1 0x01
00000c72: PUSH1 0x01
00000c74: PUSH1 0xa0
00000c76: SHL
00000c77: SUB
00000c78: SWAP3
00000c79: SWAP1
00000c7a: SWAP3
00000c7b: AND
00000c7c: SWAP2
00000c7d: SWAP1
00000c7e: SWAP2
00000c7f: OR
00000c80: SWAP1
00000c81: SSTORE
00000c82: JUMP
00000c83: JUMPDEST
00000c84: PUSH1 0x0d
00000c86: SLOAD
00000c87: PUSH2 0x0100
00000c8a: SWAP1
00000c8b: DIV
00000c8c: PUSH1 0x01
00000c8e: PUSH1 0x01
00000c90: PUSH1 0xa0
00000c92: SHL
00000c93: SUB
00000c94: AND
00000c95: CALLER
00000c96: EQ
00000c97: PUSH2 0x0cd5
00000c9a: JUMPI
00000c9b: PUSH1 0x40
00000c9d: DUP1
00000c9e: MLOAD
00000c9f: PUSH3 0x461bcd
00000ca3: PUSH1 0xe5
00000ca5: SHL
00000ca6: DUP2
00000ca7: MSTORE
00000ca8: PUSH1 0x20
00000caa: PUSH1 0x04
00000cac: DUP3
00000cad: ADD
00000cae: MSTORE
00000caf: PUSH1 0x0b
00000cb1: PUSH1 0x24
00000cb3: DUP3
00000cb4: ADD
00000cb5: MSTORE
00000cb6: PUSH11 0x21676f7665726e616e6365
00000cc2: PUSH1 0xa8
00000cc4: SHL
00000cc5: PUSH1 0x44
00000cc7: DUP3
00000cc8: ADD
00000cc9: MSTORE
00000cca: SWAP1
00000ccb: MLOAD
00000ccc: SWAP1
00000ccd: DUP2
00000cce: SWAP1
00000ccf: SUB
00000cd0: PUSH1 0x64
00000cd2: ADD
00000cd3: SWAP1
00000cd4: REVERT
00000cd5: JUMPDEST
00000cd6: PUSH1 0x08
00000cd8: SSTORE
00000cd9: JUMP
00000cda: JUMPDEST
00000cdb: PUSH1 0x04
00000cdd: SLOAD
00000cde: PUSH1 0x01
00000ce0: PUSH1 0xa0
00000ce2: SHL
00000ce3: SWAP1
00000ce4: DIV
00000ce5: PUSH1 0xff
00000ce7: AND
00000ce8: DUP2
00000ce9: JUMP
00000cea: JUMPDEST
00000ceb: PUSH1 0x12
00000ced: SLOAD
00000cee: DUP2
00000cef: JUMP
00000cf0: JUMPDEST
00000cf1: PUSH1 0x0c
00000cf3: SLOAD
00000cf4: DUP2
00000cf5: JUMP
00000cf6: JUMPDEST
00000cf7: PUSH1 0x01
00000cf9: SLOAD
00000cfa: JUMPDEST
00000cfb: SWAP1
00000cfc: JUMP
00000cfd: JUMPDEST
00000cfe: CALLER
00000cff: PUSH1 0x00
00000d01: SWAP1
00000d02: DUP2
00000d03: MSTORE
00000d04: PUSH1 0x10
00000d06: PUSH1 0x20
00000d08: MSTORE
00000d09: PUSH1 0x40
00000d0b: SWAP1
00000d0c: KECCAK256
00000d0d: SLOAD
00000d0e: PUSH1 0xff
00000d10: AND
00000d11: ISZERO
00000d12: PUSH2 0x0d4a
00000d15: JUMPI
00000d16: PUSH1 0x40
00000d18: DUP1
00000d19: MLOAD
00000d1a: PUSH3 0x461bcd
00000d1e: PUSH1 0xe5
00000d20: SHL
00000d21: DUP2
00000d22: MSTORE
00000d23: PUSH1 0x20
00000d25: PUSH1 0x04
00000d27: DUP3
00000d28: ADD
00000d29: MSTORE
00000d2a: PUSH1 0x05
00000d2c: PUSH1 0x24
00000d2e: DUP3
00000d2f: ADD
00000d30: MSTORE
00000d31: PUSH5 0x3b37ba32b9
00000d37: PUSH1 0xd9
00000d39: SHL
00000d3a: PUSH1 0x44
00000d3c: DUP3
00000d3d: ADD
00000d3e: MSTORE
00000d3f: SWAP1
00000d40: MLOAD
00000d41: SWAP1
00000d42: DUP2
00000d43: SWAP1
00000d44: SUB
00000d45: PUSH1 0x64
00000d47: ADD
00000d48: SWAP1
00000d49: REVERT
00000d4a: JUMPDEST
00000d4b: CALLER
00000d4c: PUSH1 0x00
00000d4e: DUP2
00000d4f: DUP2
00000d50: MSTORE
00000d51: PUSH1 0x10
00000d53: PUSH1 0x20
00000d55: MSTORE
00000d56: PUSH1 0x40
00000d58: SWAP1
00000d59: KECCAK256
00000d5a: DUP1
00000d5b: SLOAD
00000d5c: PUSH1 0xff
00000d5e: NOT
00000d5f: AND
00000d60: PUSH1 0x01
00000d62: OR
00000d63: SWAP1
00000d64: SSTORE
00000d65: PUSH2 0x0d6d
00000d68: SWAP1
00000d69: PUSH2 0x1668
00000d6c: JUMP
00000d6d: JUMPDEST
00000d6e: CALLER
00000d6f: PUSH1 0x00
00000d71: SWAP1
00000d72: DUP2
00000d73: MSTORE
00000d74: PUSH1 0x0f
00000d76: PUSH1 0x20
00000d78: MSTORE
00000d79: PUSH1 0x40
00000d7b: SWAP1
00000d7c: KECCAK256
00000d7d: DUP2
00000d7e: SWAP1
00000d7f: SSTORE
00000d80: PUSH1 0x0e
00000d82: SLOAD
00000d83: PUSH2 0x0d91
00000d86: SWAP2
00000d87: PUSH4 0xffffffff
00000d8c: PUSH2 0x26e5
00000d8f: AND
00000d90: JUMP
00000d91: JUMPDEST
00000d92: PUSH1 0x0e
00000d94: DUP2
00000d95: SWAP1
00000d96: SSTORE
00000d97: CALLER
00000d98: PUSH1 0x00
00000d9a: DUP2
00000d9b: DUP2
00000d9c: MSTORE
00000d9d: PUSH1 0x0f
00000d9f: PUSH1 0x20
00000da1: SWAP1
00000da2: DUP2
00000da3: MSTORE
00000da4: PUSH1 0x40
00000da6: SWAP2
00000da7: DUP3
00000da8: SWAP1
00000da9: KECCAK256
00000daa: SLOAD
00000dab: DUP3
00000dac: MLOAD
00000dad: SWAP4
00000dae: DUP5
00000daf: MSTORE
00000db0: SWAP1
00000db1: DUP4
00000db2: ADD
00000db3: MSTORE
00000db4: DUP2
00000db5: DUP2
00000db6: ADD
00000db7: SWAP3
00000db8: SWAP1
00000db9: SWAP3
00000dba: MSTORE
00000dbb: SWAP1
00000dbc: MLOAD
00000dbd: PUSH32 0x42bd0b21218b5114f60361fe686fe499033f14f22cb728a08cf9df9b4e60f8cc
00000dde: SWAP2
00000ddf: DUP2
00000de0: SWAP1
00000de1: SUB
00000de2: PUSH1 0x60
00000de4: ADD
00000de5: SWAP1
00000de6: LOG1
00000de7: JUMP
00000de8: JUMPDEST
00000de9: PUSH1 0x17
00000deb: SLOAD
00000dec: PUSH1 0xff
00000dee: AND
00000def: DUP2
00000df0: JUMP
00000df1: JUMPDEST
00000df2: PUSH1 0x04
00000df4: SLOAD
00000df5: PUSH1 0x01
00000df7: PUSH1 0x01
00000df9: PUSH1 0xa0
00000dfb: SHL
00000dfc: SUB
00000dfd: AND
00000dfe: PUSH2 0x0e05
00000e01: PUSH2 0x273f
00000e04: JUMP
00000e05: JUMPDEST
00000e06: PUSH1 0x01
00000e08: PUSH1 0x01
00000e0a: PUSH1 0xa0
00000e0c: SHL
00000e0d: SUB
00000e0e: AND
00000e0f: EQ
00000e10: PUSH2 0x0e4a
00000e13: JUMPI
00000e14: PUSH1 0x40
00000e16: MLOAD
00000e17: PUSH3 0x461bcd
00000e1b: PUSH1 0xe5
00000e1d: SHL
00000e1e: DUP2
00000e1f: MSTORE
00000e20: PUSH1 0x04
00000e22: ADD
00000e23: DUP1
00000e24: DUP1
00000e25: PUSH1 0x20
00000e27: ADD
00000e28: DUP3
00000e29: DUP2
00000e2a: SUB
00000e2b: DUP3
00000e2c: MSTORE
00000e2d: PUSH1 0x21
00000e2f: DUP2
00000e30: MSTORE
00000e31: PUSH1 0x20
00000e33: ADD
00000e34: DUP1
00000e35: PUSH2 0x2d40
00000e38: PUSH1 0x21
00000e3a: SWAP2
00000e3b: CODECOPY
00000e3c: PUSH1 0x40
00000e3e: ADD
00000e3f: SWAP2
00000e40: POP
00000e41: POP
00000e42: PUSH1 0x40
00000e44: MLOAD
00000e45: DUP1
00000e46: SWAP2
00000e47: SUB
00000e48: SWAP1
00000e49: REVERT
00000e4a: JUMPDEST
00000e4b: PUSH1 0x00
00000e4d: PUSH2 0x0e54
00000e50: PUSH2 0x2323
00000e53: JUMP
00000e54: JUMPDEST
00000e55: PUSH1 0x16
00000e57: SSTORE
00000e58: PUSH2 0x0e5f
00000e5b: PUSH2 0x1a88
00000e5e: JUMP
00000e5f: JUMPDEST
00000e60: PUSH1 0x15
00000e62: SSTORE
00000e63: PUSH1 0x01
00000e65: PUSH1 0x01
00000e67: PUSH1 0xa0
00000e69: SHL
00000e6a: SUB
00000e6b: DUP2
00000e6c: AND
00000e6d: ISZERO
00000e6e: PUSH2 0x0ea6
00000e71: JUMPI
00000e72: PUSH2 0x0e7a
00000e75: DUP2
00000e76: PUSH2 0x0a3d
00000e79: JUMP
00000e7a: JUMPDEST
00000e7b: PUSH1 0x01
00000e7d: PUSH1 0x01
00000e7f: PUSH1 0xa0
00000e81: SHL
00000e82: SUB
00000e83: DUP3
00000e84: AND
00000e85: PUSH1 0x00
00000e87: SWAP1
00000e88: DUP2
00000e89: MSTORE
00000e8a: PUSH1 0x19
00000e8c: PUSH1 0x20
00000e8e: SWAP1
00000e8f: DUP2
00000e90: MSTORE
00000e91: PUSH1 0x40
00000e93: DUP1
00000e94: DUP4
00000e95: KECCAK256
00000e96: SWAP4
00000e97: SWAP1
00000e98: SWAP4
00000e99: SSTORE
00000e9a: PUSH1 0x16
00000e9c: SLOAD
00000e9d: PUSH1 0x18
00000e9f: SWAP1
00000ea0: SWAP2
00000ea1: MSTORE
00000ea2: SWAP2
00000ea3: SWAP1
00000ea4: KECCAK256
00000ea5: SSTORE
00000ea6: JUMPDEST
00000ea7: PUSH1 0x00
00000ea9: DUP3
00000eaa: GT
00000eab: PUSH2 0x0ee5
00000eae: JUMPI
00000eaf: PUSH1 0x40
00000eb1: DUP1
00000eb2: MLOAD
00000eb3: PUSH3 0x461bcd
00000eb7: PUSH1 0xe5
00000eb9: SHL
00000eba: DUP2
00000ebb: MSTORE
00000ebc: PUSH1 0x20
00000ebe: PUSH1 0x04
00000ec0: DUP3
00000ec1: ADD
00000ec2: MSTORE
00000ec3: PUSH1 0x07
00000ec5: PUSH1 0x24
00000ec7: DUP3
00000ec8: ADD
00000ec9: MSTORE
00000eca: PUSH7 0x646179203c2031
00000ed2: PUSH1 0xc8
00000ed4: SHL
00000ed5: PUSH1 0x44
00000ed7: DUP3
00000ed8: ADD
00000ed9: MSTORE
00000eda: SWAP1
00000edb: MLOAD
00000edc: SWAP1
00000edd: DUP2
00000ede: SWAP1
00000edf: SUB
00000ee0: PUSH1 0x64
00000ee2: ADD
00000ee3: SWAP1
00000ee4: REVERT
00000ee5: JUMPDEST
00000ee6: PUSH2 0x0ef8
00000ee9: DUP3
00000eea: PUSH3 0x015180
00000eee: PUSH4 0xffffffff
00000ef3: PUSH2 0x264a
00000ef6: AND
00000ef7: JUMP
00000ef8: JUMPDEST
00000ef9: PUSH1 0x12
00000efb: SSTORE
00000efc: PUSH1 0x13
00000efe: SLOAD
00000eff: TIMESTAMP
00000f00: LT
00000f01: PUSH2 0x0f20
00000f04: JUMPI
00000f05: PUSH1 0x12
00000f07: SLOAD
00000f08: PUSH2 0x0f18
00000f0b: SWAP1
00000f0c: DUP5
00000f0d: SWAP1
00000f0e: PUSH4 0xffffffff
00000f13: PUSH2 0x26a3
00000f16: AND
00000f17: JUMP
00000f18: JUMPDEST
00000f19: PUSH1 0x14
00000f1b: SSTORE
00000f1c: PUSH2 0x0f6f
00000f1f: JUMP
00000f20: JUMPDEST
00000f21: PUSH1 0x13
00000f23: SLOAD
00000f24: PUSH1 0x00
00000f26: SWAP1
00000f27: PUSH2 0x0f36
00000f2a: SWAP1
00000f2b: TIMESTAMP
00000f2c: PUSH4 0xffffffff
00000f31: PUSH2 0x2601
00000f34: AND
00000f35: JUMP
00000f36: JUMPDEST
00000f37: SWAP1
00000f38: POP
00000f39: PUSH1 0x00
00000f3b: PUSH2 0x0f4f
00000f3e: PUSH1 0x14
00000f40: SLOAD
00000f41: DUP4
00000f42: PUSH2 0x264a
00000f45: SWAP1
00000f46: SWAP2
00000f47: SWAP1
00000f48: PUSH4 0xffffffff
00000f4d: AND
00000f4e: JUMP
00000f4f: JUMPDEST
00000f50: PUSH1 0x12
00000f52: SLOAD
00000f53: SWAP1
00000f54: SWAP2
00000f55: POP
00000f56: PUSH2 0x0f69
00000f59: SWAP1
00000f5a: PUSH2 0x0aa5
00000f5d: DUP8
00000f5e: DUP5
00000f5f: PUSH4 0xffffffff
00000f64: PUSH2 0x26e5
00000f67: AND
00000f68: JUMP
00000f69: JUMPDEST
00000f6a: PUSH1 0x14
00000f6c: SSTORE
00000f6d: POP
00000f6e: POP
00000f6f: JUMPDEST
00000f70: TIMESTAMP
00000f71: PUSH1 0x15
00000f73: DUP2
00000f74: SWAP1
00000f75: SSTORE
00000f76: PUSH1 0x12
00000f78: SLOAD
00000f79: PUSH2 0x0f88
00000f7c: SWAP2
00000f7d: SWAP1
00000f7e: PUSH4 0xffffffff
00000f83: PUSH2 0x26e5
00000f86: AND
00000f87: JUMP
00000f88: JUMPDEST
00000f89: PUSH1 0x13
00000f8b: SSTORE
00000f8c: PUSH1 0x11
00000f8e: SLOAD
00000f8f: PUSH1 0x40
00000f91: DUP1
00000f92: MLOAD
00000f93: PUSH4 0x70a08231
00000f98: PUSH1 0xe0
00000f9a: SHL
00000f9b: DUP2
00000f9c: MSTORE
00000f9d: ADDRESS
00000f9e: PUSH1 0x04
00000fa0: DUP3
00000fa1: ADD
00000fa2: MSTORE
00000fa3: SWAP1
00000fa4: MLOAD
00000fa5: PUSH1 0x01
00000fa7: PUSH1 0x01
00000fa9: PUSH1 0xa0
00000fab: SHL
00000fac: SUB
00000fad: SWAP1
00000fae: SWAP3
00000faf: AND
00000fb0: SWAP2
00000fb1: PUSH4 0x70a08231
00000fb6: SWAP2
00000fb7: PUSH1 0x24
00000fb9: DUP1
00000fba: DUP3
00000fbb: ADD
00000fbc: SWAP3
00000fbd: PUSH1 0x20
00000fbf: SWAP3
00000fc0: SWAP1
00000fc1: SWAP2
00000fc2: SWAP1
00000fc3: DUP3
00000fc4: SWAP1
00000fc5: SUB
00000fc6: ADD
00000fc7: DUP2
00000fc8: DUP7
00000fc9: DUP1
00000fca: EXTCODESIZE
00000fcb: ISZERO
00000fcc: DUP1
00000fcd: ISZERO
00000fce: PUSH2 0x0fd6
00000fd1: JUMPI
00000fd2: PUSH1 0x00
00000fd4: DUP1
00000fd5: REVERT
00000fd6: JUMPDEST
00000fd7: POP
00000fd8: GAS
00000fd9: STATICCALL
00000fda: ISZERO
00000fdb: DUP1
00000fdc: ISZERO
00000fdd: PUSH2 0x0fea
00000fe0: JUMPI
00000fe1: RETURNDATASIZE
00000fe2: PUSH1 0x00
00000fe4: DUP1
00000fe5: RETURNDATACOPY
00000fe6: RETURNDATASIZE
00000fe7: PUSH1 0x00
00000fe9: REVERT
00000fea: JUMPDEST
00000feb: POP
00000fec: POP
00000fed: POP
00000fee: POP
00000fef: PUSH1 0x40
00000ff1: MLOAD
00000ff2: RETURNDATASIZE
00000ff3: PUSH1 0x20
00000ff5: DUP2
00000ff6: LT
00000ff7: ISZERO
00000ff8: PUSH2 0x1000
00000ffb: JUMPI
00000ffc: PUSH1 0x00
00000ffe: DUP1
00000fff: REVERT
00001000: JUMPDEST
00001001: POP
00001002: MLOAD
00001003: PUSH1 0x12
00001005: SLOAD
00001006: PUSH1 0x14
00001008: SLOAD
00001009: PUSH2 0x1017
0000100c: SWAP2
0000100d: PUSH4 0xffffffff
00001012: PUSH2 0x264a
00001015: AND
00001016: JUMP
00001017: JUMPDEST
00001018: GT
00001019: ISZERO
0000101a: PUSH2 0x1060
0000101d: JUMPI
0000101e: PUSH1 0x40
00001020: DUP1
00001021: MLOAD
00001022: PUSH3 0x461bcd
00001026: PUSH1 0xe5
00001028: SHL
00001029: DUP2
0000102a: MSTORE
0000102b: PUSH1 0x20
0000102d: PUSH1 0x04
0000102f: DUP3
00001030: ADD
00001031: MSTORE
00001032: PUSH1 0x13
00001034: PUSH1 0x24
00001036: DUP3
00001037: ADD
00001038: MSTORE
00001039: PUSH19 0x125b9cdd59999a58da595b9d081c995dd85c99
0000104d: PUSH1 0x6a
0000104f: SHL
00001050: PUSH1 0x44
00001052: DUP3
00001053: ADD
00001054: MSTORE
00001055: SWAP1
00001056: MLOAD
00001057: SWAP1
00001058: DUP2
00001059: SWAP1
0000105a: SUB
0000105b: PUSH1 0x64
0000105d: ADD
0000105e: SWAP1
0000105f: REVERT
00001060: JUMPDEST
00001061: PUSH1 0x40
00001063: DUP1
00001064: MLOAD
00001065: DUP5
00001066: DUP2
00001067: MSTORE
00001068: SWAP1
00001069: MLOAD
0000106a: PUSH32 0xde88a922e0d3b88b24e9623efeb464919c6bf9f66857a65e2bfcf2ce87a9433d
0000108b: SWAP2
0000108c: DUP2
0000108d: SWAP1
0000108e: SUB
0000108f: PUSH1 0x20
00001091: ADD
00001092: SWAP1
00001093: LOG1
00001094: POP
00001095: POP
00001096: POP
00001097: JUMP
00001098: JUMPDEST
00001099: CALLER
0000109a: PUSH2 0x10a1
0000109d: PUSH2 0x2323
000010a0: JUMP
000010a1: JUMPDEST
000010a2: PUSH1 0x16
000010a4: SSTORE
000010a5: PUSH2 0x10ac
000010a8: PUSH2 0x1a88
000010ab: JUMP
000010ac: JUMPDEST
000010ad: PUSH1 0x15
000010af: SSTORE
000010b0: PUSH1 0x01
000010b2: PUSH1 0x01
000010b4: PUSH1 0xa0
000010b6: SHL
000010b7: SUB
000010b8: DUP2
000010b9: AND
000010ba: ISZERO
000010bb: PUSH2 0x10f3
000010be: JUMPI
000010bf: PUSH2 0x10c7
000010c2: DUP2
000010c3: PUSH2 0x0a3d
000010c6: JUMP
000010c7: JUMPDEST
000010c8: PUSH1 0x01
000010ca: PUSH1 0x01
000010cc: PUSH1 0xa0
000010ce: SHL
000010cf: SUB
000010d0: DUP3
000010d1: AND
000010d2: PUSH1 0x00
000010d4: SWAP1
000010d5: DUP2
000010d6: MSTORE
000010d7: PUSH1 0x19
000010d9: PUSH1 0x20
000010db: SWAP1
000010dc: DUP2
000010dd: MSTORE
000010de: PUSH1 0x40
000010e0: DUP1
000010e1: DUP4
000010e2: KECCAK256
000010e3: SWAP4
000010e4: SWAP1
000010e5: SWAP4
000010e6: SSTORE
000010e7: PUSH1 0x16
000010e9: SLOAD
000010ea: PUSH1 0x18
000010ec: SWAP1
000010ed: SWAP2
000010ee: MSTORE
000010ef: SWAP2
000010f0: SWAP1
000010f1: KECCAK256
000010f2: SSTORE
000010f3: JUMPDEST
000010f4: PUSH1 0x00
000010f6: DUP3
000010f7: GT
000010f8: PUSH2 0x113c
000010fb: JUMPI
000010fc: PUSH1 0x40
000010fe: DUP1
000010ff: MLOAD
00001100: PUSH3 0x461bcd
00001104: PUSH1 0xe5
00001106: SHL
00001107: DUP2
00001108: MSTORE
00001109: PUSH1 0x20
0000110b: PUSH1 0x04
0000110d: DUP3
0000110e: ADD
0000110f: MSTORE
00001110: PUSH1 0x11
00001112: PUSH1 0x24
00001114: DUP3
00001115: ADD
00001116: MSTORE
00001117: PUSH17 0x043616e6e6f74207769746864726177203
00001129: PUSH1 0x7c
0000112b: SHL
0000112c: PUSH1 0x44
0000112e: DUP3
0000112f: ADD
00001130: MSTORE
00001131: SWAP1
00001132: MLOAD
00001133: SWAP1
00001134: DUP2
00001135: SWAP1
00001136: SUB
00001137: PUSH1 0x64
00001139: ADD
0000113a: SWAP1
0000113b: REVERT
0000113c: JUMPDEST
0000113d: CALLER
0000113e: PUSH1 0x00
00001140: SWAP1
00001141: DUP2
00001142: MSTORE
00001143: PUSH1 0x10
00001145: PUSH1 0x20
00001147: MSTORE
00001148: PUSH1 0x40
0000114a: SWAP1
0000114b: KECCAK256
0000114c: SLOAD
0000114d: PUSH1 0xff
0000114f: AND
00001150: ISZERO
00001151: ISZERO
00001152: PUSH1 0x01
00001154: EQ
00001155: ISZERO
00001156: PUSH2 0x11a0
00001159: JUMPI
0000115a: CALLER
0000115b: PUSH1 0x00
0000115d: SWAP1
0000115e: DUP2
0000115f: MSTORE
00001160: PUSH1 0x0f
00001162: PUSH1 0x20
00001164: MSTORE
00001165: PUSH1 0x40
00001167: SWAP1
00001168: KECCAK256
00001169: SLOAD
0000116a: PUSH2 0x1179
0000116d: SWAP1
0000116e: DUP4
0000116f: PUSH4 0xffffffff
00001174: PUSH2 0x2601
00001177: AND
00001178: JUMP
00001179: JUMPDEST
0000117a: CALLER
0000117b: PUSH1 0x00
0000117d: SWAP1
0000117e: DUP2
0000117f: MSTORE
00001180: PUSH1 0x0f
00001182: PUSH1 0x20
00001184: MSTORE
00001185: PUSH1 0x40
00001187: SWAP1
00001188: KECCAK256
00001189: SSTORE
0000118a: PUSH1 0x0e
0000118c: SLOAD
0000118d: PUSH2 0x119c
00001190: SWAP1
00001191: DUP4
00001192: PUSH4 0xffffffff
00001197: PUSH2 0x2601
0000119a: AND
0000119b: JUMP
0000119c: JUMPDEST
0000119d: PUSH1 0x0e
0000119f: SSTORE
000011a0: JUMPDEST
000011a1: PUSH1 0x04
000011a3: SLOAD
000011a4: PUSH1 0x01
000011a6: PUSH1 0xa0
000011a8: SHL
000011a9: SWAP1
000011aa: DIV
000011ab: PUSH1 0xff
000011ad: AND
000011ae: PUSH2 0x11fe
000011b1: JUMPI
000011b2: CALLER
000011b3: PUSH1 0x00
000011b5: SWAP1
000011b6: DUP2
000011b7: MSTORE
000011b8: PUSH1 0x05
000011ba: PUSH1 0x20
000011bc: MSTORE
000011bd: PUSH1 0x40
000011bf: SWAP1
000011c0: KECCAK256
000011c1: SLOAD
000011c2: NUMBER
000011c3: GT
000011c4: PUSH2 0x11fe
000011c7: JUMPI
000011c8: PUSH1 0x40
000011ca: DUP1
000011cb: MLOAD
000011cc: PUSH3 0x461bcd
000011d0: PUSH1 0xe5
000011d2: SHL
000011d3: DUP2
000011d4: MSTORE
000011d5: PUSH1 0x20
000011d7: PUSH1 0x04
000011d9: DUP3
000011da: ADD
000011db: MSTORE
000011dc: PUSH1 0x07
000011de: PUSH1 0x24
000011e0: DUP3
000011e1: ADD
000011e2: MSTORE
000011e3: PUSH7 0x085b1bd8dad959
000011eb: PUSH1 0xca
000011ed: SHL
000011ee: PUSH1 0x44
000011f0: DUP3
000011f1: ADD
000011f2: MSTORE
000011f3: SWAP1
000011f4: MLOAD
000011f5: SWAP1
000011f6: DUP2
000011f7: SWAP1
000011f8: SUB
000011f9: PUSH1 0x64
000011fb: ADD
000011fc: SWAP1
000011fd: REVERT
000011fe: JUMPDEST
000011ff: PUSH2 0x1207
00001202: DUP3
00001203: PUSH2 0x2743
00001206: JUMP
00001207: JUMPDEST
00001208: PUSH1 0x40
0000120a: DUP1
0000120b: MLOAD
0000120c: DUP4
0000120d: DUP2
0000120e: MSTORE
0000120f: SWAP1
00001210: MLOAD
00001211: CALLER
00001212: SWAP2
00001213: PUSH32 0x7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5
00001234: SWAP2
00001235: SWAP1
00001236: DUP2
00001237: SWAP1
00001238: SUB
00001239: PUSH1 0x20
0000123b: ADD
0000123c: SWAP1
0000123d: LOG2
0000123e: POP
0000123f: POP
00001240: JUMP
00001241: JUMPDEST
00001242: PUSH1 0x0d
00001244: SLOAD
00001245: PUSH2 0x0100
00001248: SWAP1
00001249: DIV
0000124a: PUSH1 0x01
0000124c: PUSH1 0x01
0000124e: PUSH1 0xa0
00001250: SHL
00001251: SUB
00001252: AND
00001253: CALLER
00001254: EQ
00001255: PUSH2 0x1293
00001258: JUMPI
00001259: PUSH1 0x40
0000125b: DUP1
0000125c: MLOAD
0000125d: PUSH3 0x461bcd
00001261: PUSH1 0xe5
00001263: SHL
00001264: DUP2
00001265: MSTORE
00001266: PUSH1 0x20
00001268: PUSH1 0x04
0000126a: DUP3
0000126b: ADD
0000126c: MSTORE
0000126d: PUSH1 0x0b
0000126f: PUSH1 0x24
00001271: DUP3
00001272: ADD
00001273: MSTORE
00001274: PUSH11 0x21676f7665726e616e6365
00001280: PUSH1 0xa8
00001282: SHL
00001283: PUSH1 0x44
00001285: DUP3
00001286: ADD
00001287: MSTORE
00001288: SWAP1
00001289: MLOAD
0000128a: SWAP1
0000128b: DUP2
0000128c: SWAP1
0000128d: SUB
0000128e: PUSH1 0x64
00001290: ADD
00001291: SWAP1
00001292: REVERT
00001293: JUMPDEST
00001294: PUSH1 0x0a
00001296: SSTORE
00001297: JUMP
00001298: JUMPDEST
00001299: CALLER
0000129a: PUSH2 0x12a1
0000129d: PUSH2 0x2323
000012a0: JUMP
000012a1: JUMPDEST
000012a2: PUSH1 0x16
000012a4: SSTORE
000012a5: PUSH2 0x12ac
000012a8: PUSH2 0x1a88
000012ab: JUMP
000012ac: JUMPDEST
000012ad: PUSH1 0x15
000012af: SSTORE
000012b0: PUSH1 0x01
000012b2: PUSH1 0x01
000012b4: PUSH1 0xa0
000012b6: SHL
000012b7: SUB
000012b8: DUP2
000012b9: AND
000012ba: ISZERO
000012bb: PUSH2 0x12f3
000012be: JUMPI
000012bf: PUSH2 0x12c7
000012c2: DUP2
000012c3: PUSH2 0x0a3d
000012c6: JUMP
000012c7: JUMPDEST
000012c8: PUSH1 0x01
000012ca: PUSH1 0x01
000012cc: PUSH1 0xa0
000012ce: SHL
000012cf: SUB
000012d0: DUP3
000012d1: AND
000012d2: PUSH1 0x00
000012d4: SWAP1
000012d5: DUP2
000012d6: MSTORE
000012d7: PUSH1 0x19
000012d9: PUSH1 0x20
000012db: SWAP1
000012dc: DUP2
000012dd: MSTORE
000012de: PUSH1 0x40
000012e0: DUP1
000012e1: DUP4
000012e2: KECCAK256
000012e3: SWAP4
000012e4: SWAP1
000012e5: SWAP4
000012e6: SSTORE
000012e7: PUSH1 0x16
000012e9: SLOAD
000012ea: PUSH1 0x18
000012ec: SWAP1
000012ed: SWAP2
000012ee: MSTORE
000012ef: SWAP2
000012f0: SWAP1
000012f1: KECCAK256
000012f2: SSTORE
000012f3: JUMPDEST
000012f4: PUSH1 0x17
000012f6: SLOAD
000012f7: PUSH1 0xff
000012f9: AND
000012fa: ISZERO
000012fb: ISZERO
000012fc: PUSH1 0x01
000012fe: EQ
000012ff: ISZERO
00001300: PUSH2 0x134f
00001303: JUMPI
00001304: CALLER
00001305: PUSH1 0x00
00001307: SWAP1
00001308: DUP2
00001309: MSTORE
0000130a: PUSH1 0x05
0000130c: PUSH1 0x20
0000130e: MSTORE
0000130f: PUSH1 0x40
00001311: SWAP1
00001312: KECCAK256
00001313: SLOAD
00001314: NUMBER
00001315: LT
00001316: PUSH2 0x134f
00001319: JUMPI
0000131a: PUSH1 0x40
0000131c: DUP1
0000131d: MLOAD
0000131e: PUSH3 0x461bcd
00001322: PUSH1 0xe5
00001324: SHL
00001325: DUP2
00001326: MSTORE
00001327: PUSH1 0x20
00001329: PUSH1 0x04
0000132b: DUP3
0000132c: ADD
0000132d: MSTORE
0000132e: PUSH1 0x06
00001330: PUSH1 0x24
00001332: DUP3
00001333: ADD
00001334: MSTORE
00001335: PUSH6 0x085d9bdd1959
0000133c: PUSH1 0xd2
0000133e: SHL
0000133f: PUSH1 0x44
00001341: DUP3
00001342: ADD
00001343: MSTORE
00001344: SWAP1
00001345: MLOAD
00001346: SWAP1
00001347: DUP2
00001348: SWAP1
00001349: SUB
0000134a: PUSH1 0x64
0000134c: ADD
0000134d: SWAP1
0000134e: REVERT
0000134f: JUMPDEST
00001350: PUSH1 0x00
00001352: PUSH2 0x135a
00001355: CALLER
00001356: PUSH2 0x0a3d
00001359: JUMP
0000135a: JUMPDEST
0000135b: SWAP1
0000135c: POP
0000135d: DUP1
0000135e: ISZERO
0000135f: PUSH2 0x13c2
00001362: JUMPI
00001363: CALLER
00001364: PUSH1 0x00
00001366: DUP2
00001367: DUP2
00001368: MSTORE
00001369: PUSH1 0x19
0000136b: PUSH1 0x20
0000136d: MSTORE
0000136e: PUSH1 0x40
00001370: DUP2
00001371: KECCAK256
00001372: SSTORE
00001373: PUSH1 0x11
00001375: SLOAD
00001376: PUSH2 0x138b
00001379: SWAP2
0000137a: PUSH1 0x01
0000137c: PUSH1 0x01
0000137e: PUSH1 0xa0
00001380: SHL
00001381: SUB
00001382: SWAP1
00001383: SWAP2
00001384: AND
00001385: SWAP1
00001386: DUP4
00001387: PUSH2 0x27a0
0000138a: JUMP
0000138b: JUMPDEST
0000138c: PUSH1 0x40
0000138e: DUP1
0000138f: MLOAD
00001390: DUP3
00001391: DUP2
00001392: MSTORE
00001393: SWAP1
00001394: MLOAD
00001395: CALLER
00001396: SWAP2
00001397: PUSH32 0xe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e0486
000013b8: SWAP2
000013b9: SWAP1
000013ba: DUP2
000013bb: SWAP1
000013bc: SUB
000013bd: PUSH1 0x20
000013bf: ADD
000013c0: SWAP1
000013c1: LOG2
000013c2: JUMPDEST
000013c3: POP
000013c4: POP
000013c5: JUMP
000013c6: JUMPDEST
000013c7: PUSH1 0x00
000013c9: DUP2
000013ca: DUP2
000013cb: MSTORE
000013cc: PUSH1 0x06
000013ce: PUSH1 0x20
000013d0: MSTORE
000013d1: PUSH1 0x40
000013d3: SWAP1
000013d4: KECCAK256
000013d5: PUSH1 0x0c
000013d7: ADD
000013d8: SLOAD
000013d9: PUSH1 0xff
000013db: AND
000013dc: ISZERO
000013dd: ISZERO
000013de: PUSH1 0x01
000013e0: EQ
000013e1: PUSH2 0x1419
000013e4: JUMPI
000013e5: PUSH1 0x40
000013e7: DUP1
000013e8: MLOAD
000013e9: PUSH3 0x461bcd
000013ed: PUSH1 0xe5
000013ef: SHL
000013f0: DUP2
000013f1: MSTORE
000013f2: PUSH1 0x20
000013f4: PUSH1 0x04
000013f6: DUP3
000013f7: ADD
000013f8: MSTORE
000013f9: PUSH1 0x05
000013fb: PUSH1 0x24
000013fd: DUP3
000013fe: ADD
000013ff: MSTORE
00001400: PUSH5 0x10b7b832b7
00001406: PUSH1 0xd9
00001408: SHL
00001409: PUSH1 0x44
0000140b: DUP3
0000140c: ADD
0000140d: MSTORE
0000140e: SWAP1
0000140f: MLOAD
00001410: SWAP1
00001411: DUP2
00001412: SWAP1
00001413: SUB
00001414: PUSH1 0x64
00001416: ADD
00001417: SWAP1
00001418: REVERT
00001419: JUMPDEST
0000141a: PUSH1 0x00
0000141c: DUP2
0000141d: DUP2
0000141e: MSTORE
0000141f: PUSH1 0x06
00001421: PUSH1 0x20
00001423: MSTORE
00001424: PUSH1 0x40
00001426: SWAP1
00001427: KECCAK256
00001428: PUSH1 0x07
0000142a: ADD
0000142b: SLOAD
0000142c: NUMBER
0000142d: GT
0000142e: PUSH2 0x1467
00001431: JUMPI
00001432: PUSH1 0x40
00001434: DUP1
00001435: MLOAD
00001436: PUSH3 0x461bcd
0000143a: PUSH1 0xe5
0000143c: SHL
0000143d: DUP2
0000143e: MSTORE
0000143f: PUSH1 0x20
00001441: PUSH1 0x04
00001443: DUP1
00001444: DUP4
00001445: ADD
00001446: SWAP2
00001447: SWAP1
00001448: SWAP2
00001449: MSTORE
0000144a: PUSH1 0x24
0000144c: DUP3
0000144d: ADD
0000144e: MSTORE
0000144f: PUSH4 0x08595b99
00001454: PUSH1 0xe2
00001456: SHL
00001457: PUSH1 0x44
00001459: DUP3
0000145a: ADD
0000145b: MSTORE
0000145c: SWAP1
0000145d: MLOAD
0000145e: SWAP1
0000145f: DUP2
00001460: SWAP1
00001461: SUB
00001462: PUSH1 0x64
00001464: ADD
00001465: SWAP1
00001466: REVERT
00001467: JUMPDEST
00001468: PUSH1 0x00
0000146a: DUP1
0000146b: PUSH2 0x1473
0000146e: DUP4
0000146f: PUSH2 0x19f8
00001472: JUMP
00001473: JUMPDEST
00001474: POP
00001475: PUSH1 0x00
00001477: DUP6
00001478: DUP2
00001479: MSTORE
0000147a: PUSH1 0x06
0000147c: PUSH1 0x20
0000147e: MSTORE
0000147f: PUSH1 0x40
00001481: DUP2
00001482: KECCAK256
00001483: PUSH1 0x0b
00001485: DUP2
00001486: ADD
00001487: SLOAD
00001488: PUSH1 0x0a
0000148a: SWAP1
0000148b: SWAP2
0000148c: ADD
0000148d: SLOAD
0000148e: SWAP4
0000148f: SWAP6
00001490: POP
00001491: SWAP2
00001492: SWAP4
00001493: POP
00001494: SWAP2
00001495: LT
00001496: PUSH2 0x149d
00001499: JUMPI
0000149a: POP
0000149b: PUSH1 0x01
0000149d: JUMPDEST
0000149e: PUSH1 0x00
000014a0: DUP5
000014a1: DUP2
000014a2: MSTORE
000014a3: PUSH1 0x06
000014a5: PUSH1 0x20
000014a7: SWAP1
000014a8: DUP2
000014a9: MSTORE
000014aa: PUSH1 0x40
000014ac: SWAP2
000014ad: DUP3
000014ae: SWAP1
000014af: KECCAK256
000014b0: PUSH1 0x0c
000014b2: ADD
000014b3: DUP1
000014b4: SLOAD
000014b5: PUSH1 0xff
000014b7: NOT
000014b8: AND
000014b9: SWAP1
000014ba: SSTORE
000014bb: DUP2
000014bc: MLOAD
000014bd: DUP6
000014be: DUP2
000014bf: MSTORE
000014c0: SWAP1
000014c1: DUP2
000014c2: ADD
000014c3: DUP5
000014c4: SWAP1
000014c5: MSTORE
000014c6: DUP3
000014c7: ISZERO
000014c8: ISZERO
000014c9: DUP2
000014ca: DUP4
000014cb: ADD
000014cc: MSTORE
000014cd: SWAP1
000014ce: MLOAD
000014cf: DUP6
000014d0: SWAP2
000014d1: PUSH32 0x66ab4d2a1f6db1c01d1d46ab61a9c333b5a4de5e75cc7a68e1495b4badbd009b
000014f2: SWAP2
000014f3: SWAP1
000014f4: DUP2
000014f5: SWAP1
000014f6: SUB
000014f7: PUSH1 0x60
000014f9: ADD
000014fa: SWAP1
000014fb: LOG2
000014fc: POP
000014fd: POP
000014fe: POP
000014ff: POP
00001500: JUMP
00001501: JUMPDEST
00001502: PUSH1 0x05
00001504: PUSH1 0x20
00001506: MSTORE
00001507: PUSH1 0x00
00001509: SWAP1
0000150a: DUP2
0000150b: MSTORE
0000150c: PUSH1 0x40
0000150e: SWAP1
0000150f: KECCAK256
00001510: SLOAD
00001511: DUP2
00001512: JUMP
00001513: JUMPDEST
00001514: PUSH1 0x0a
00001516: SLOAD
00001517: DUP2
00001518: JUMP
00001519: JUMPDEST
0000151a: PUSH1 0x0d
0000151c: SLOAD
0000151d: PUSH2 0x0100
00001520: SWAP1
00001521: DIV
00001522: PUSH1 0x01
00001524: PUSH1 0x01
00001526: PUSH1 0xa0
00001528: SHL
00001529: SUB
0000152a: AND
0000152b: CALLER
0000152c: EQ
0000152d: PUSH2 0x156b
00001530: JUMPI
00001531: PUSH1 0x40
00001533: DUP1
00001534: MLOAD
00001535: PUSH3 0x461bcd
00001539: PUSH1 0xe5
0000153b: SHL
0000153c: DUP2
0000153d: MSTORE
0000153e: PUSH1 0x20
00001540: PUSH1 0x04
00001542: DUP3
00001543: ADD
00001544: MSTORE
00001545: PUSH1 0x0b
00001547: PUSH1 0x24
00001549: DUP3
0000154a: ADD
0000154b: MSTORE
0000154c: PUSH11 0x21676f7665726e616e6365
00001558: PUSH1 0xa8
0000155a: SHL
0000155b: PUSH1 0x44
0000155d: DUP3
0000155e: ADD
0000155f: MSTORE
00001560: SWAP1
00001561: MLOAD
00001562: SWAP1
00001563: DUP2
00001564: SWAP1
00001565: SUB
00001566: PUSH1 0x64
00001568: ADD
00001569: SWAP1
0000156a: REVERT
0000156b: JUMPDEST
0000156c: PUSH1 0x17
0000156e: DUP1
0000156f: SLOAD
00001570: PUSH1 0xff
00001572: NOT
00001573: AND
00001574: SWAP2
00001575: ISZERO
00001576: ISZERO
00001577: SWAP2
00001578: SWAP1
00001579: SWAP2
0000157a: OR
0000157b: SWAP1
0000157c: SSTORE
0000157d: JUMP
0000157e: JUMPDEST
0000157f: PUSH1 0x0d
00001581: SLOAD
00001582: PUSH2 0x0100
00001585: SWAP1
00001586: DIV
00001587: PUSH1 0x01
00001589: PUSH1 0x01
0000158b: PUSH1 0xa0
0000158d: SHL
0000158e: SUB
0000158f: AND
00001590: DUP2
00001591: JUMP
00001592: JUMPDEST
00001593: PUSH1 0x0d
00001595: SLOAD
00001596: PUSH2 0x0100
00001599: SWAP1
0000159a: DIV
0000159b: PUSH1 0x01
0000159d: PUSH1 0x01
0000159f: PUSH1 0xa0
000015a1: SHL
000015a2: SUB
000015a3: AND
000015a4: CALLER
000015a5: EQ
000015a6: PUSH2 0x15e4
000015a9: JUMPI
000015aa: PUSH1 0x40
000015ac: DUP1
000015ad: MLOAD
000015ae: PUSH3 0x461bcd
000015b2: PUSH1 0xe5
000015b4: SHL
000015b5: DUP2
000015b6: MSTORE
000015b7: PUSH1 0x20
000015b9: PUSH1 0x04
000015bb: DUP3
000015bc: ADD
000015bd: MSTORE
000015be: PUSH1 0x0b
000015c0: PUSH1 0x24
000015c2: DUP3
000015c3: ADD
000015c4: MSTORE
000015c5: PUSH11 0x21676f7665726e616e6365
000015d1: PUSH1 0xa8
000015d3: SHL
000015d4: PUSH1 0x44
000015d6: DUP3
000015d7: ADD
000015d8: MSTORE
000015d9: SWAP1
000015da: MLOAD
000015db: SWAP1
000015dc: DUP2
000015dd: SWAP1
000015de: SUB
000015df: PUSH1 0x64
000015e1: ADD
000015e2: SWAP1
000015e3: REVERT
000015e4: JUMPDEST
000015e5: PUSH1 0x04
000015e7: DUP1
000015e8: SLOAD
000015e9: SWAP2
000015ea: ISZERO
000015eb: ISZERO
000015ec: PUSH1 0x01
000015ee: PUSH1 0xa0
000015f0: SHL
000015f1: MUL
000015f2: PUSH1 0xff
000015f4: PUSH1 0xa0
000015f6: SHL
000015f7: NOT
000015f8: SWAP1
000015f9: SWAP3
000015fa: AND
000015fb: SWAP2
000015fc: SWAP1
000015fd: SWAP2
000015fe: OR
000015ff: SWAP1
00001600: SSTORE
00001601: JUMP
00001602: JUMPDEST
00001603: PUSH1 0x00
00001605: SLOAD
00001606: PUSH1 0x01
00001608: PUSH1 0x01
0000160a: PUSH1 0xa0
0000160c: SHL
0000160d: SUB
0000160e: AND
0000160f: DUP2
00001610: JUMP
00001611: JUMPDEST
00001612: PUSH1 0x0d
00001614: SLOAD
00001615: PUSH2 0x0100
00001618: SWAP1
00001619: DIV
0000161a: PUSH1 0x01
0000161c: PUSH1 0x01
0000161e: PUSH1 0xa0
00001620: SHL
00001621: SUB
00001622: AND
00001623: CALLER
00001624: EQ
00001625: PUSH2 0x1663
00001628: JUMPI
00001629: PUSH1 0x40
0000162b: DUP1
0000162c: MLOAD
0000162d: PUSH3 0x461bcd
00001631: PUSH1 0xe5
00001633: SHL
00001634: DUP2
00001635: MSTORE
00001636: PUSH1 0x20
00001638: PUSH1 0x04
0000163a: DUP3
0000163b: ADD
0000163c: MSTORE
0000163d: PUSH1 0x0b
0000163f: PUSH1 0x24
00001641: DUP3
00001642: ADD
00001643: MSTORE
00001644: PUSH11 0x21676f7665726e616e6365
00001650: PUSH1 0xa8
00001652: SHL
00001653: PUSH1 0x44
00001655: DUP3
00001656: ADD
00001657: MSTORE
00001658: SWAP1
00001659: MLOAD
0000165a: SWAP1
0000165b: DUP2
0000165c: SWAP1
0000165d: SUB
0000165e: PUSH1 0x64
00001660: ADD
00001661: SWAP1
00001662: REVERT
00001663: JUMPDEST
00001664: PUSH1 0x0b
00001666: SSTORE
00001667: JUMP
00001668: JUMPDEST
00001669: PUSH1 0x01
0000166b: PUSH1 0x01
0000166d: PUSH1 0xa0
0000166f: SHL
00001670: SUB
00001671: AND
00001672: PUSH1 0x00
00001674: SWAP1
00001675: DUP2
00001676: MSTORE
00001677: PUSH1 0x02
00001679: PUSH1 0x20
0000167b: MSTORE
0000167c: PUSH1 0x40
0000167e: SWAP1
0000167f: KECCAK256
00001680: SLOAD
00001681: SWAP1
00001682: JUMP
00001683: JUMPDEST
00001684: PUSH1 0x0d
00001686: SLOAD
00001687: PUSH1 0xff
00001689: AND
0000168a: DUP2
0000168b: JUMP
0000168c: JUMPDEST
0000168d: PUSH2 0x1694
00001690: PUSH2 0x1d68
00001693: JUMP
00001694: JUMPDEST
00001695: PUSH2 0x16e5
00001698: JUMPI
00001699: PUSH1 0x40
0000169b: DUP1
0000169c: MLOAD
0000169d: PUSH3 0x461bcd
000016a1: PUSH1 0xe5
000016a3: SHL
000016a4: DUP2
000016a5: MSTORE
000016a6: PUSH1 0x20
000016a8: PUSH1 0x04
000016aa: DUP3
000016ab: ADD
000016ac: DUP2
000016ad: SWAP1
000016ae: MSTORE
000016af: PUSH1 0x24
000016b1: DUP3
000016b2: ADD
000016b3: MSTORE
000016b4: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
000016d5: PUSH1 0x44
000016d7: DUP3
000016d8: ADD
000016d9: MSTORE
000016da: SWAP1
000016db: MLOAD
000016dc: SWAP1
000016dd: DUP2
000016de: SWAP1
000016df: SUB
000016e0: PUSH1 0x64
000016e2: ADD
000016e3: SWAP1
000016e4: REVERT
000016e5: JUMPDEST
000016e6: PUSH1 0x03
000016e8: SLOAD
000016e9: PUSH1 0x40
000016eb: MLOAD
000016ec: PUSH1 0x00
000016ee: SWAP2
000016ef: PUSH1 0x01
000016f1: PUSH1 0x01
000016f3: PUSH1 0xa0
000016f5: SHL
000016f6: SUB
000016f7: AND
000016f8: SWAP1
000016f9: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
0000171a: SWAP1
0000171b: DUP4
0000171c: SWAP1
0000171d: LOG3
0000171e: PUSH1 0x03
00001720: DUP1
00001721: SLOAD
00001722: PUSH1 0x01
00001724: PUSH1 0x01
00001726: PUSH1 0xa0
00001728: SHL
00001729: SUB
0000172a: NOT
0000172b: AND
0000172c: SWAP1
0000172d: SSTORE
0000172e: JUMP
0000172f: JUMPDEST
00001730: PUSH1 0x00
00001732: DUP2
00001733: DUP2
00001734: MSTORE
00001735: PUSH1 0x06
00001737: PUSH1 0x20
00001739: DUP2
0000173a: SWAP1
0000173b: MSTORE
0000173c: PUSH1 0x40
0000173e: SWAP1
0000173f: SWAP2
00001740: KECCAK256
00001741: ADD
00001742: SLOAD
00001743: NUMBER
00001744: GT
00001745: PUSH2 0x177e
00001748: JUMPI
00001749: PUSH1 0x40
0000174b: DUP1
0000174c: MLOAD
0000174d: PUSH3 0x461bcd
00001751: PUSH1 0xe5
00001753: SHL
00001754: DUP2
00001755: MSTORE
00001756: PUSH1 0x20
00001758: PUSH1 0x04
0000175a: DUP3
0000175b: ADD
0000175c: MSTORE
0000175d: PUSH1 0x06
0000175f: PUSH1 0x24
00001761: DUP3
00001762: ADD
00001763: MSTORE
00001764: PUSH6 0x0f1cdd185c9d
0000176b: PUSH1 0xd2
0000176d: SHL
0000176e: PUSH1 0x44
00001770: DUP3
00001771: ADD
00001772: MSTORE
00001773: SWAP1
00001774: MLOAD
00001775: SWAP1
00001776: DUP2
00001777: SWAP1
00001778: SUB
00001779: PUSH1 0x64
0000177b: ADD
0000177c: SWAP1
0000177d: REVERT
0000177e: JUMPDEST
0000177f: PUSH1 0x00
00001781: DUP2
00001782: DUP2
00001783: MSTORE
00001784: PUSH1 0x06
00001786: PUSH1 0x20
00001788: MSTORE
00001789: PUSH1 0x40
0000178b: SWAP1
0000178c: KECCAK256
0000178d: PUSH1 0x07
0000178f: ADD
00001790: SLOAD
00001791: NUMBER
00001792: LT
00001793: PUSH2 0x17cc
00001796: JUMPI
00001797: PUSH1 0x40
00001799: DUP1
0000179a: MLOAD
0000179b: PUSH3 0x461bcd
0000179f: PUSH1 0xe5
000017a1: SHL
000017a2: DUP2
000017a3: MSTORE
000017a4: PUSH1 0x20
000017a6: PUSH1 0x04
000017a8: DUP1
000017a9: DUP4
000017aa: ADD
000017ab: SWAP2
000017ac: SWAP1
000017ad: SWAP2
000017ae: MSTORE
000017af: PUSH1 0x24
000017b1: DUP3
000017b2: ADD
000017b3: MSTORE
000017b4: PUSH4 0x0f995b99
000017b9: PUSH1 0xe2
000017bb: SHL
000017bc: PUSH1 0x44
000017be: DUP3
000017bf: ADD
000017c0: MSTORE
000017c1: SWAP1
000017c2: MLOAD
000017c3: SWAP1
000017c4: DUP2
000017c5: SWAP1
000017c6: SUB
000017c7: PUSH1 0x64
000017c9: ADD
000017ca: SWAP1
000017cb: REVERT
000017cc: JUMPDEST
000017cd: PUSH1 0x0b
000017cf: SLOAD
000017d0: PUSH2 0x17d8
000017d3: CALLER
000017d4: PUSH2 0x19d7
000017d7: JUMP
000017d8: JUMPDEST
000017d9: LT
000017da: ISZERO
000017db: PUSH2 0x181a
000017de: JUMPI
000017df: PUSH1 0x40
000017e1: DUP1
000017e2: MLOAD
000017e3: PUSH3 0x461bcd
000017e7: PUSH1 0xe5
000017e9: SHL
000017ea: DUP2
000017eb: MSTORE
000017ec: PUSH1 0x20
000017ee: PUSH1 0x04
000017f0: DUP3
000017f1: ADD
000017f2: MSTORE
000017f3: PUSH1 0x0c
000017f5: PUSH1 0x24
000017f7: DUP3
000017f8: ADD
000017f9: MSTORE
000017fa: PUSH12 0x3c6d696e696d756d566f7465
00001807: PUSH1 0xa0
00001809: SHL
0000180a: PUSH1 0x44
0000180c: DUP3
0000180d: ADD
0000180e: MSTORE
0000180f: SWAP1
00001810: MLOAD
00001811: SWAP1
00001812: DUP2
00001813: SWAP1
00001814: SUB
00001815: PUSH1 0x64
00001817: ADD
00001818: SWAP1
00001819: REVERT
0000181a: JUMPDEST
0000181b: PUSH1 0x00
0000181d: DUP2
0000181e: DUP2
0000181f: MSTORE
00001820: PUSH1 0x06
00001822: PUSH1 0x20
00001824: SWAP1
00001825: DUP2
00001826: MSTORE
00001827: PUSH1 0x40
00001829: DUP1
0000182a: DUP4
0000182b: KECCAK256
0000182c: CALLER
0000182d: DUP5
0000182e: MSTORE
0000182f: PUSH1 0x02
00001831: ADD
00001832: SWAP1
00001833: SWAP2
00001834: MSTORE
00001835: SWAP1
00001836: KECCAK256
00001837: SLOAD
00001838: DUP1
00001839: ISZERO
0000183a: PUSH2 0x1887
0000183d: JUMPI
0000183e: PUSH1 0x00
00001840: DUP3
00001841: DUP2
00001842: MSTORE
00001843: PUSH1 0x06
00001845: PUSH1 0x20
00001847: MSTORE
00001848: PUSH1 0x40
0000184a: SWAP1
0000184b: KECCAK256
0000184c: PUSH1 0x04
0000184e: ADD
0000184f: SLOAD
00001850: PUSH2 0x185f
00001853: SWAP1
00001854: DUP3
00001855: PUSH4 0xffffffff
0000185a: PUSH2 0x2601
0000185d: AND
0000185e: JUMP
0000185f: JUMPDEST
00001860: PUSH1 0x00
00001862: DUP4
00001863: DUP2
00001864: MSTORE
00001865: PUSH1 0x06
00001867: PUSH1 0x20
00001869: SWAP1
0000186a: DUP2
0000186b: MSTORE
0000186c: PUSH1 0x40
0000186e: DUP1
0000186f: DUP4
00001870: KECCAK256
00001871: PUSH1 0x04
00001873: DUP2
00001874: ADD
00001875: SWAP5
00001876: SWAP1
00001877: SWAP5
00001878: SSTORE
00001879: CALLER
0000187a: DUP4
0000187b: MSTORE
0000187c: PUSH1 0x02
0000187e: SWAP1
0000187f: SWAP4
00001880: ADD
00001881: SWAP1
00001882: MSTORE
00001883: SWAP1
00001884: DUP2
00001885: KECCAK256
00001886: SSTORE
00001887: JUMPDEST
00001888: PUSH1 0x00
0000188a: DUP3
0000188b: DUP2
0000188c: MSTORE
0000188d: PUSH1 0x06
0000188f: PUSH1 0x20
00001891: SWAP1
00001892: DUP2
00001893: MSTORE
00001894: PUSH1 0x40
00001896: DUP1
00001897: DUP4
00001898: KECCAK256
00001899: CALLER
0000189a: DUP1
0000189b: DUP6
0000189c: MSTORE
0000189d: PUSH1 0x03
0000189f: SWAP1
000018a0: SWAP2
000018a1: ADD
000018a2: SWAP1
000018a3: SWAP3
000018a4: MSTORE
000018a5: DUP3
000018a6: KECCAK256
000018a7: SLOAD
000018a8: PUSH2 0x18b4
000018ab: SWAP2
000018ac: PUSH2 0x0a84
000018af: SWAP1
000018b0: PUSH2 0x19d7
000018b3: JUMP
000018b4: JUMPDEST
000018b5: PUSH1 0x00
000018b7: DUP5
000018b8: DUP2
000018b9: MSTORE
000018ba: PUSH1 0x06
000018bc: PUSH1 0x20
000018be: MSTORE
000018bf: PUSH1 0x40
000018c1: SWAP1
000018c2: KECCAK256
000018c3: PUSH1 0x05
000018c5: ADD
000018c6: SLOAD
000018c7: SWAP1
000018c8: SWAP2
000018c9: POP
000018ca: PUSH2 0x18d9
000018cd: SWAP1
000018ce: DUP3
000018cf: PUSH4 0xffffffff
000018d4: PUSH2 0x26e5
000018d7: AND
000018d8: JUMP
000018d9: JUMPDEST
000018da: PUSH1 0x00
000018dc: DUP5
000018dd: DUP2
000018de: MSTORE
000018df: PUSH1 0x06
000018e1: PUSH1 0x20
000018e3: MSTORE
000018e4: PUSH1 0x40
000018e6: SWAP1
000018e7: KECCAK256
000018e8: PUSH1 0x05
000018ea: ADD
000018eb: SSTORE
000018ec: PUSH2 0x18f4
000018ef: CALLER
000018f0: PUSH2 0x19d7
000018f3: JUMP
000018f4: JUMPDEST
000018f5: PUSH1 0x00
000018f7: DUP5
000018f8: DUP2
000018f9: MSTORE
000018fa: PUSH1 0x06
000018fc: PUSH1 0x20
000018fe: DUP2
000018ff: DUP2
00001900: MSTORE
00001901: PUSH1 0x40
00001903: DUP1
00001904: DUP5
00001905: KECCAK256
00001906: CALLER
00001907: DUP6
00001908: MSTORE
00001909: PUSH1 0x03
0000190b: DUP2
0000190c: ADD
0000190d: DUP4
0000190e: MSTORE
0000190f: SWAP1
00001910: DUP5
00001911: KECCAK256
00001912: SWAP5
00001913: SWAP1
00001914: SWAP5
00001915: SSTORE
00001916: PUSH1 0x0e
00001918: SLOAD
00001919: DUP8
0000191a: DUP5
0000191b: MSTORE
0000191c: SWAP2
0000191d: SWAP1
0000191e: MSTORE
0000191f: PUSH1 0x09
00001921: DUP4
00001922: ADD
00001923: SSTORE
00001924: PUSH1 0x05
00001926: DUP3
00001927: ADD
00001928: SLOAD
00001929: PUSH1 0x04
0000192b: SWAP1
0000192c: SWAP3
0000192d: ADD
0000192e: SLOAD
0000192f: SWAP1
00001930: SWAP2
00001931: PUSH2 0x1940
00001934: SWAP2
00001935: SWAP1
00001936: PUSH4 0xffffffff
0000193b: PUSH2 0x26e5
0000193e: AND
0000193f: JUMP
00001940: JUMPDEST
00001941: PUSH1 0x0e
00001943: SLOAD
00001944: SWAP1
00001945: SWAP2
00001946: POP
00001947: PUSH2 0x195c
0000194a: SWAP1
0000194b: PUSH2 0x0aa5
0000194e: DUP4
0000194f: PUSH2 0x2710
00001952: PUSH4 0xffffffff
00001957: PUSH2 0x264a
0000195a: AND
0000195b: JUMP
0000195c: JUMPDEST
0000195d: PUSH1 0x00
0000195f: DUP6
00001960: DUP2
00001961: MSTORE
00001962: PUSH1 0x06
00001964: PUSH1 0x20
00001966: MSTORE
00001967: PUSH1 0x40
00001969: SWAP1
0000196a: KECCAK256
0000196b: PUSH1 0x0a
0000196d: ADD
0000196e: SSTORE
0000196f: PUSH1 0x09
00001971: SLOAD
00001972: PUSH2 0x1981
00001975: SWAP1
00001976: NUMBER
00001977: PUSH4 0xffffffff
0000197c: PUSH2 0x26e5
0000197f: AND
00001980: JUMP
00001981: JUMPDEST
00001982: CALLER
00001983: PUSH1 0x00
00001985: DUP2
00001986: DUP2
00001987: MSTORE
00001988: PUSH1 0x05
0000198a: PUSH1 0x20
0000198c: SWAP1
0000198d: DUP2
0000198e: MSTORE
0000198f: PUSH1 0x40
00001991: DUP1
00001992: DUP4
00001993: KECCAK256
00001994: SWAP5
00001995: SWAP1
00001996: SWAP5
00001997: SSTORE
00001998: DUP4
00001999: MLOAD
0000199a: SWAP2
0000199b: DUP3
0000199c: MSTORE
0000199d: DUP2
0000199e: ADD
0000199f: DUP6
000019a0: SWAP1
000019a1: MSTORE
000019a2: DUP3
000019a3: MLOAD
000019a4: SWAP2
000019a5: SWAP3
000019a6: DUP8
000019a7: SWAP3
000019a8: PUSH32 0x88d35328232823f54954b6627e9f732371656f6daa40cb1b01b27dc7875a7b47
000019c9: SWAP3
000019ca: DUP2
000019cb: SWAP1
000019cc: SUB
000019cd: SWAP1
000019ce: SWAP2
000019cf: ADD
000019d0: SWAP1
000019d1: LOG3
000019d2: POP
000019d3: POP
000019d4: POP
000019d5: POP
000019d6: JUMP
000019d7: JUMPDEST
000019d8: PUSH1 0x01
000019da: PUSH1 0x01
000019dc: PUSH1 0xa0
000019de: SHL
000019df: SUB
000019e0: AND
000019e1: PUSH1 0x00
000019e3: SWAP1
000019e4: DUP2
000019e5: MSTORE
000019e6: PUSH1 0x0f
000019e8: PUSH1 0x20
000019ea: MSTORE
000019eb: PUSH1 0x40
000019ed: SWAP1
000019ee: KECCAK256
000019ef: SLOAD
000019f0: SWAP1
000019f1: JUMP
000019f2: JUMPDEST
000019f3: PUSH1 0x14
000019f5: SLOAD
000019f6: DUP2
000019f7: JUMP
000019f8: JUMPDEST
000019f9: PUSH1 0x00
000019fb: DUP2
000019fc: DUP2
000019fd: MSTORE
000019fe: PUSH1 0x06
00001a00: PUSH1 0x20
00001a02: MSTORE
00001a03: PUSH1 0x40
00001a05: DUP2
00001a06: KECCAK256
00001a07: PUSH1 0x04
00001a09: DUP2
00001a0a: ADD
00001a0b: SLOAD
00001a0c: PUSH1 0x05
00001a0e: SWAP1
00001a0f: SWAP2
00001a10: ADD
00001a11: SLOAD
00001a12: SWAP1
00001a13: SWAP2
00001a14: DUP1
00001a15: PUSH2 0x1a24
00001a18: DUP5
00001a19: DUP5
00001a1a: PUSH4 0xffffffff
00001a1f: PUSH2 0x26e5
00001a22: AND
00001a23: JUMP
00001a24: JUMPDEST
00001a25: SWAP1
00001a26: POP
00001a27: PUSH2 0x1a3c
00001a2a: DUP2
00001a2b: PUSH2 0x0aa5
00001a2e: DUP7
00001a2f: PUSH2 0x2710
00001a32: PUSH4 0xffffffff
00001a37: PUSH2 0x264a
00001a3a: AND
00001a3b: JUMP
00001a3c: JUMPDEST
00001a3d: SWAP4
00001a3e: POP
00001a3f: PUSH2 0x1a54
00001a42: DUP2
00001a43: PUSH2 0x0aa5
00001a46: DUP6
00001a47: PUSH2 0x2710
00001a4a: PUSH4 0xffffffff
00001a4f: PUSH2 0x264a
00001a52: AND
00001a53: JUMP
00001a54: JUMPDEST
00001a55: PUSH1 0x00
00001a57: DUP7
00001a58: DUP2
00001a59: MSTORE
00001a5a: PUSH1 0x06
00001a5c: PUSH1 0x20
00001a5e: MSTORE
00001a5f: PUSH1 0x40
00001a61: SWAP1
00001a62: KECCAK256
00001a63: PUSH1 0x09
00001a65: ADD
00001a66: SLOAD
00001a67: SWAP1
00001a68: SWAP4
00001a69: POP
00001a6a: PUSH2 0x1a7f
00001a6d: SWAP1
00001a6e: PUSH2 0x0aa5
00001a71: DUP4
00001a72: PUSH2 0x2710
00001a75: PUSH4 0xffffffff
00001a7a: PUSH2 0x264a
00001a7d: AND
00001a7e: JUMP
00001a7f: JUMPDEST
00001a80: SWAP4
00001a81: SWAP6
00001a82: SWAP3
00001a83: SWAP5
00001a84: POP
00001a85: POP
00001a86: POP
00001a87: JUMP
00001a88: JUMPDEST
00001a89: PUSH1 0x00
00001a8b: PUSH2 0x1a96
00001a8e: TIMESTAMP
00001a8f: PUSH1 0x13
00001a91: SLOAD
00001a92: PUSH2 0x27f7
00001a95: JUMP
00001a96: JUMPDEST
00001a97: SWAP1
00001a98: POP
00001a99: SWAP1
00001a9a: JUMP
00001a9b: JUMPDEST
00001a9c: PUSH1 0x00
00001a9e: DUP2
00001a9f: DUP2
00001aa0: MSTORE
00001aa1: PUSH1 0x06
00001aa3: PUSH1 0x20
00001aa5: DUP2
00001aa6: SWAP1
00001aa7: MSTORE
00001aa8: PUSH1 0x40
00001aaa: SWAP1
00001aab: SWAP2
00001aac: KECCAK256
00001aad: ADD
00001aae: SLOAD
00001aaf: NUMBER
00001ab0: GT
00001ab1: PUSH2 0x1aea
00001ab4: JUMPI
00001ab5: PUSH1 0x40
00001ab7: DUP1
00001ab8: MLOAD
00001ab9: PUSH3 0x461bcd
00001abd: PUSH1 0xe5
00001abf: SHL
00001ac0: DUP2
00001ac1: MSTORE
00001ac2: PUSH1 0x20
00001ac4: PUSH1 0x04
00001ac6: DUP3
00001ac7: ADD
00001ac8: MSTORE
00001ac9: PUSH1 0x06
00001acb: PUSH1 0x24
00001acd: DUP3
00001ace: ADD
00001acf: MSTORE
00001ad0: PUSH6 0x0f1cdd185c9d
00001ad7: PUSH1 0xd2
00001ad9: SHL
00001ada: PUSH1 0x44
00001adc: DUP3
00001add: ADD
00001ade: MSTORE
00001adf: SWAP1
00001ae0: MLOAD
00001ae1: SWAP1
00001ae2: DUP2
00001ae3: SWAP1
00001ae4: SUB
00001ae5: PUSH1 0x64
00001ae7: ADD
00001ae8: SWAP1
00001ae9: REVERT
00001aea: JUMPDEST
00001aeb: PUSH1 0x00
00001aed: DUP2
00001aee: DUP2
00001aef: MSTORE
00001af0: PUSH1 0x06
00001af2: PUSH1 0x20
00001af4: MSTORE
00001af5: PUSH1 0x40
00001af7: SWAP1
00001af8: KECCAK256
00001af9: PUSH1 0x07
00001afb: ADD
00001afc: SLOAD
00001afd: NUMBER
00001afe: LT
00001aff: PUSH2 0x1b38
00001b02: JUMPI
00001b03: PUSH1 0x40
00001b05: DUP1
00001b06: MLOAD
00001b07: PUSH3 0x461bcd
00001b0b: PUSH1 0xe5
00001b0d: SHL
00001b0e: DUP2
00001b0f: MSTORE
00001b10: PUSH1 0x20
00001b12: PUSH1 0x04
00001b14: DUP1
00001b15: DUP4
00001b16: ADD
00001b17: SWAP2
00001b18: SWAP1
00001b19: SWAP2
00001b1a: MSTORE
00001b1b: PUSH1 0x24
00001b1d: DUP3
00001b1e: ADD
00001b1f: MSTORE
00001b20: PUSH4 0x0f995b99
00001b25: PUSH1 0xe2
00001b27: SHL
00001b28: PUSH1 0x44
00001b2a: DUP3
00001b2b: ADD
00001b2c: MSTORE
00001b2d: SWAP1
00001b2e: MLOAD
00001b2f: SWAP1
00001b30: DUP2
00001b31: SWAP1
00001b32: SUB
00001b33: PUSH1 0x64
00001b35: ADD
00001b36: SWAP1
00001b37: REVERT
00001b38: JUMPDEST
00001b39: PUSH1 0x0b
00001b3b: SLOAD
00001b3c: PUSH2 0x1b44
00001b3f: CALLER
00001b40: PUSH2 0x19d7
00001b43: JUMP
00001b44: JUMPDEST
00001b45: LT
00001b46: ISZERO
00001b47: PUSH2 0x1b86
00001b4a: JUMPI
00001b4b: PUSH1 0x40
00001b4d: DUP1
00001b4e: MLOAD
00001b4f: PUSH3 0x461bcd
00001b53: PUSH1 0xe5
00001b55: SHL
00001b56: DUP2
00001b57: MSTORE
00001b58: PUSH1 0x20
00001b5a: PUSH1 0x04
00001b5c: DUP3
00001b5d: ADD
00001b5e: MSTORE
00001b5f: PUSH1 0x0c
00001b61: PUSH1 0x24
00001b63: DUP3
00001b64: ADD
00001b65: MSTORE
00001b66: PUSH12 0x3c6d696e696d756d566f7465
00001b73: PUSH1 0xa0
00001b75: SHL
00001b76: PUSH1 0x44
00001b78: DUP3
00001b79: ADD
00001b7a: MSTORE
00001b7b: SWAP1
00001b7c: MLOAD
00001b7d: SWAP1
00001b7e: DUP2
00001b7f: SWAP1
00001b80: SUB
00001b81: PUSH1 0x64
00001b83: ADD
00001b84: SWAP1
00001b85: REVERT
00001b86: JUMPDEST
00001b87: PUSH1 0x00
00001b89: DUP2
00001b8a: DUP2
00001b8b: MSTORE
00001b8c: PUSH1 0x06
00001b8e: PUSH1 0x20
00001b90: SWAP1
00001b91: DUP2
00001b92: MSTORE
00001b93: PUSH1 0x40
00001b95: DUP1
00001b96: DUP4
00001b97: KECCAK256
00001b98: CALLER
00001b99: DUP5
00001b9a: MSTORE
00001b9b: PUSH1 0x03
00001b9d: ADD
00001b9e: SWAP1
00001b9f: SWAP2
00001ba0: MSTORE
00001ba1: SWAP1
00001ba2: KECCAK256
00001ba3: SLOAD
00001ba4: DUP1
00001ba5: ISZERO
00001ba6: PUSH2 0x1bf3
00001ba9: JUMPI
00001baa: PUSH1 0x00
00001bac: DUP3
00001bad: DUP2
00001bae: MSTORE
00001baf: PUSH1 0x06
00001bb1: PUSH1 0x20
00001bb3: MSTORE
00001bb4: PUSH1 0x40
00001bb6: SWAP1
00001bb7: KECCAK256
00001bb8: PUSH1 0x05
00001bba: ADD
00001bbb: SLOAD
00001bbc: PUSH2 0x1bcb
00001bbf: SWAP1
00001bc0: DUP3
00001bc1: PUSH4 0xffffffff
00001bc6: PUSH2 0x2601
00001bc9: AND
00001bca: JUMP
00001bcb: JUMPDEST
00001bcc: PUSH1 0x00
00001bce: DUP4
00001bcf: DUP2
00001bd0: MSTORE
00001bd1: PUSH1 0x06
00001bd3: PUSH1 0x20
00001bd5: SWAP1
00001bd6: DUP2
00001bd7: MSTORE
00001bd8: PUSH1 0x40
00001bda: DUP1
00001bdb: DUP4
00001bdc: KECCAK256
00001bdd: PUSH1 0x05
00001bdf: DUP2
00001be0: ADD
00001be1: SWAP5
00001be2: SWAP1
00001be3: SWAP5
00001be4: SSTORE
00001be5: CALLER
00001be6: DUP4
00001be7: MSTORE
00001be8: PUSH1 0x03
00001bea: SWAP1
00001beb: SWAP4
00001bec: ADD
00001bed: SWAP1
00001bee: MSTORE
00001bef: SWAP1
00001bf0: DUP2
00001bf1: KECCAK256
00001bf2: SSTORE
00001bf3: JUMPDEST
00001bf4: PUSH1 0x00
00001bf6: DUP3
00001bf7: DUP2
00001bf8: MSTORE
00001bf9: PUSH1 0x06
00001bfb: PUSH1 0x20
00001bfd: SWAP1
00001bfe: DUP2
00001bff: MSTORE
00001c00: PUSH1 0x40
00001c02: DUP1
00001c03: DUP4
00001c04: KECCAK256
00001c05: CALLER
00001c06: DUP1
00001c07: DUP6
00001c08: MSTORE
00001c09: PUSH1 0x02
00001c0b: SWAP1
00001c0c: SWAP2
00001c0d: ADD
00001c0e: SWAP1
00001c0f: SWAP3
00001c10: MSTORE
00001c11: DUP3
00001c12: KECCAK256
00001c13: SLOAD
00001c14: PUSH2 0x1c20
00001c17: SWAP2
00001c18: PUSH2 0x0a84
00001c1b: SWAP1
00001c1c: PUSH2 0x19d7
00001c1f: JUMP
00001c20: JUMPDEST
00001c21: PUSH1 0x00
00001c23: DUP5
00001c24: DUP2
00001c25: MSTORE
00001c26: PUSH1 0x06
00001c28: PUSH1 0x20
00001c2a: MSTORE
00001c2b: PUSH1 0x40
00001c2d: SWAP1
00001c2e: KECCAK256
00001c2f: PUSH1 0x04
00001c31: ADD
00001c32: SLOAD
00001c33: SWAP1
00001c34: SWAP2
00001c35: POP
00001c36: PUSH2 0x1c45
00001c39: SWAP1
00001c3a: DUP3
00001c3b: PUSH4 0xffffffff
00001c40: PUSH2 0x26e5
00001c43: AND
00001c44: JUMP
00001c45: JUMPDEST
00001c46: PUSH1 0x00
00001c48: DUP5
00001c49: DUP2
00001c4a: MSTORE
00001c4b: PUSH1 0x06
00001c4d: PUSH1 0x20
00001c4f: MSTORE
00001c50: PUSH1 0x40
00001c52: SWAP1
00001c53: KECCAK256
00001c54: PUSH1 0x04
00001c56: ADD
00001c57: SSTORE
00001c58: PUSH2 0x1c60
00001c5b: CALLER
00001c5c: PUSH2 0x19d7
00001c5f: JUMP
00001c60: JUMPDEST
00001c61: PUSH1 0x00
00001c63: DUP5
00001c64: DUP2
00001c65: MSTORE
00001c66: PUSH1 0x06
00001c68: PUSH1 0x20
00001c6a: DUP2
00001c6b: DUP2
00001c6c: MSTORE
00001c6d: PUSH1 0x40
00001c6f: DUP1
00001c70: DUP5
00001c71: KECCAK256
00001c72: CALLER
00001c73: DUP6
00001c74: MSTORE
00001c75: PUSH1 0x02
00001c77: DUP2
00001c78: ADD
00001c79: DUP4
00001c7a: MSTORE
00001c7b: SWAP1
00001c7c: DUP5
00001c7d: KECCAK256
00001c7e: SWAP5
00001c7f: SWAP1
00001c80: SWAP5
00001c81: SSTORE
00001c82: PUSH1 0x0e
00001c84: SLOAD
00001c85: DUP8
00001c86: DUP5
00001c87: MSTORE
00001c88: SWAP2
00001c89: SWAP1
00001c8a: MSTORE
00001c8b: PUSH1 0x09
00001c8d: DUP4
00001c8e: ADD
00001c8f: SSTORE
00001c90: PUSH1 0x05
00001c92: DUP3
00001c93: ADD
00001c94: SLOAD
00001c95: PUSH1 0x04
00001c97: SWAP1
00001c98: SWAP3
00001c99: ADD
00001c9a: SLOAD
00001c9b: SWAP1
00001c9c: SWAP2
00001c9d: PUSH2 0x1cac
00001ca0: SWAP2
00001ca1: SWAP1
00001ca2: PUSH4 0xffffffff
00001ca7: PUSH2 0x26e5
00001caa: AND
00001cab: JUMP
00001cac: JUMPDEST
00001cad: PUSH1 0x0e
00001caf: SLOAD
00001cb0: SWAP1
00001cb1: SWAP2
00001cb2: POP
00001cb3: PUSH2 0x1cc8
00001cb6: SWAP1
00001cb7: PUSH2 0x0aa5
00001cba: DUP4
00001cbb: PUSH2 0x2710
00001cbe: PUSH4 0xffffffff
00001cc3: PUSH2 0x264a
00001cc6: AND
00001cc7: JUMP
00001cc8: JUMPDEST
00001cc9: PUSH1 0x00
00001ccb: DUP6
00001ccc: DUP2
00001ccd: MSTORE
00001cce: PUSH1 0x06
00001cd0: PUSH1 0x20
00001cd2: MSTORE
00001cd3: PUSH1 0x40
00001cd5: SWAP1
00001cd6: KECCAK256
00001cd7: PUSH1 0x0a
00001cd9: ADD
00001cda: SSTORE
00001cdb: PUSH1 0x09
00001cdd: SLOAD
00001cde: PUSH2 0x1ced
00001ce1: SWAP1
00001ce2: NUMBER
00001ce3: PUSH4 0xffffffff
00001ce8: PUSH2 0x26e5
00001ceb: AND
00001cec: JUMP
00001ced: JUMPDEST
00001cee: CALLER
00001cef: PUSH1 0x00
00001cf1: DUP2
00001cf2: DUP2
00001cf3: MSTORE
00001cf4: PUSH1 0x05
00001cf6: PUSH1 0x20
00001cf8: SWAP1
00001cf9: DUP2
00001cfa: MSTORE
00001cfb: PUSH1 0x40
00001cfd: SWAP2
00001cfe: DUP3
00001cff: SWAP1
00001d00: KECCAK256
00001d01: SWAP4
00001d02: SWAP1
00001d03: SWAP4
00001d04: SSTORE
00001d05: DUP1
00001d06: MLOAD
00001d07: PUSH1 0x01
00001d09: DUP2
00001d0a: MSTORE
00001d0b: SWAP3
00001d0c: DUP4
00001d0d: ADD
00001d0e: DUP6
00001d0f: SWAP1
00001d10: MSTORE
00001d11: DUP1
00001d12: MLOAD
00001d13: SWAP2
00001d14: SWAP3
00001d15: DUP8
00001d16: SWAP3
00001d17: PUSH32 0x88d35328232823f54954b6627e9f732371656f6daa40cb1b01b27dc7875a7b47
00001d38: SWAP3
00001d39: SWAP2
00001d3a: DUP2
00001d3b: SWAP1
00001d3c: SUB
00001d3d: SWAP1
00001d3e: SWAP2
00001d3f: ADD
00001d40: SWAP1
00001d41: LOG3
00001d42: POP
00001d43: POP
00001d44: POP
00001d45: POP
00001d46: JUMP
00001d47: JUMPDEST
00001d48: PUSH1 0x18
00001d4a: PUSH1 0x20
00001d4c: MSTORE
00001d4d: PUSH1 0x00
00001d4f: SWAP1
00001d50: DUP2
00001d51: MSTORE
00001d52: PUSH1 0x40
00001d54: SWAP1
00001d55: KECCAK256
00001d56: SLOAD
00001d57: DUP2
00001d58: JUMP
00001d59: JUMPDEST
00001d5a: PUSH1 0x03
00001d5c: SLOAD
00001d5d: PUSH1 0x01
00001d5f: PUSH1 0x01
00001d61: PUSH1 0xa0
00001d63: SHL
00001d64: SUB
00001d65: AND
00001d66: SWAP1
00001d67: JUMP
00001d68: JUMPDEST
00001d69: PUSH1 0x03
00001d6b: SLOAD
00001d6c: PUSH1 0x00
00001d6e: SWAP1
00001d6f: PUSH1 0x01
00001d71: PUSH1 0x01
00001d73: PUSH1 0xa0
00001d75: SHL
00001d76: SUB
00001d77: AND
00001d78: PUSH2 0x1d7f
00001d7b: PUSH2 0x273f
00001d7e: JUMP
00001d7f: JUMPDEST
00001d80: PUSH1 0x01
00001d82: PUSH1 0x01
00001d84: PUSH1 0xa0
00001d86: SHL
00001d87: SUB
00001d88: AND
00001d89: EQ
00001d8a: SWAP1
00001d8b: POP
00001d8c: SWAP1
00001d8d: JUMP
00001d8e: JUMPDEST
00001d8f: PUSH1 0x0b
00001d91: SLOAD
00001d92: DUP2
00001d93: JUMP
00001d94: JUMPDEST
00001d95: PUSH1 0x10
00001d97: PUSH1 0x20
00001d99: MSTORE
00001d9a: PUSH1 0x00
00001d9c: SWAP1
00001d9d: DUP2
00001d9e: MSTORE
00001d9f: PUSH1 0x40
00001da1: SWAP1
00001da2: KECCAK256
00001da3: SLOAD
00001da4: PUSH1 0xff
00001da6: AND
00001da7: DUP2
00001da8: JUMP
00001da9: JUMPDEST
00001daa: CALLER
00001dab: PUSH2 0x1db2
00001dae: PUSH2 0x2323
00001db1: JUMP
00001db2: JUMPDEST
00001db3: PUSH1 0x16
00001db5: SSTORE
00001db6: PUSH2 0x1dbd
00001db9: PUSH2 0x1a88
00001dbc: JUMP
00001dbd: JUMPDEST
00001dbe: PUSH1 0x15
00001dc0: SSTORE
00001dc1: PUSH1 0x01
00001dc3: PUSH1 0x01
00001dc5: PUSH1 0xa0
00001dc7: SHL
00001dc8: SUB
00001dc9: DUP2
00001dca: AND
00001dcb: ISZERO
00001dcc: PUSH2 0x1e04
00001dcf: JUMPI
00001dd0: PUSH2 0x1dd8
00001dd3: DUP2
00001dd4: PUSH2 0x0a3d
00001dd7: JUMP
00001dd8: JUMPDEST
00001dd9: PUSH1 0x01
00001ddb: PUSH1 0x01
00001ddd: PUSH1 0xa0
00001ddf: SHL
00001de0: SUB
00001de1: DUP3
00001de2: AND
00001de3: PUSH1 0x00
00001de5: SWAP1
00001de6: DUP2
00001de7: MSTORE
00001de8: PUSH1 0x19
00001dea: PUSH1 0x20
00001dec: SWAP1
00001ded: DUP2
00001dee: MSTORE
00001def: PUSH1 0x40
00001df1: DUP1
00001df2: DUP4
00001df3: KECCAK256
00001df4: SWAP4
00001df5: SWAP1
00001df6: SWAP4
00001df7: SSTORE
00001df8: PUSH1 0x16
00001dfa: SLOAD
00001dfb: PUSH1 0x18
00001dfd: SWAP1
00001dfe: SWAP2
00001dff: MSTORE
00001e00: SWAP2
00001e01: SWAP1
00001e02: KECCAK256
00001e03: SSTORE
00001e04: JUMPDEST
00001e05: PUSH1 0x00
00001e07: DUP3
00001e08: GT
00001e09: PUSH2 0x1e4a
00001e0c: JUMPI
00001e0d: PUSH1 0x40
00001e0f: DUP1
00001e10: MLOAD
00001e11: PUSH3 0x461bcd
00001e15: PUSH1 0xe5
00001e17: SHL
00001e18: DUP2
00001e19: MSTORE
00001e1a: PUSH1 0x20
00001e1c: PUSH1 0x04
00001e1e: DUP3
00001e1f: ADD
00001e20: MSTORE
00001e21: PUSH1 0x0e
00001e23: PUSH1 0x24
00001e25: DUP3
00001e26: ADD
00001e27: MSTORE
00001e28: PUSH14 0x043616e6e6f74207374616b65203
00001e37: PUSH1 0x94
00001e39: SHL
00001e3a: PUSH1 0x44
00001e3c: DUP3
00001e3d: ADD
00001e3e: MSTORE
00001e3f: SWAP1
00001e40: MLOAD
00001e41: SWAP1
00001e42: DUP2
00001e43: SWAP1
00001e44: SUB
00001e45: PUSH1 0x64
00001e47: ADD
00001e48: SWAP1
00001e49: REVERT
00001e4a: JUMPDEST
00001e4b: CALLER
00001e4c: PUSH1 0x00
00001e4e: SWAP1
00001e4f: DUP2
00001e50: MSTORE
00001e51: PUSH1 0x10
00001e53: PUSH1 0x20
00001e55: MSTORE
00001e56: PUSH1 0x40
00001e58: SWAP1
00001e59: KECCAK256
00001e5a: SLOAD
00001e5b: PUSH1 0xff
00001e5d: AND
00001e5e: ISZERO
00001e5f: ISZERO
00001e60: PUSH1 0x01
00001e62: EQ
00001e63: ISZERO
00001e64: PUSH2 0x1eae
00001e67: JUMPI
00001e68: CALLER
00001e69: PUSH1 0x00
00001e6b: SWAP1
00001e6c: DUP2
00001e6d: MSTORE
00001e6e: PUSH1 0x0f
00001e70: PUSH1 0x20
00001e72: MSTORE
00001e73: PUSH1 0x40
00001e75: SWAP1
00001e76: KECCAK256
00001e77: SLOAD
00001e78: PUSH2 0x1e87
00001e7b: SWAP1
00001e7c: DUP4
00001e7d: PUSH4 0xffffffff
00001e82: PUSH2 0x26e5
00001e85: AND
00001e86: JUMP
00001e87: JUMPDEST
00001e88: CALLER
00001e89: PUSH1 0x00
00001e8b: SWAP1
00001e8c: DUP2
00001e8d: MSTORE
00001e8e: PUSH1 0x0f
00001e90: PUSH1 0x20
00001e92: MSTORE
00001e93: PUSH1 0x40
00001e95: SWAP1
00001e96: KECCAK256
00001e97: SSTORE
00001e98: PUSH1 0x0e
00001e9a: SLOAD
00001e9b: PUSH2 0x1eaa
00001e9e: SWAP1
00001e9f: DUP4
00001ea0: PUSH4 0xffffffff
00001ea5: PUSH2 0x26e5
00001ea8: AND
00001ea9: JUMP
00001eaa: JUMPDEST
00001eab: PUSH1 0x0e
00001ead: SSTORE
00001eae: JUMPDEST
00001eaf: PUSH2 0x1eb7
00001eb2: DUP3
00001eb3: PUSH2 0x280d
00001eb6: JUMP
00001eb7: JUMPDEST
00001eb8: PUSH1 0x40
00001eba: DUP1
00001ebb: MLOAD
00001ebc: DUP4
00001ebd: DUP2
00001ebe: MSTORE
00001ebf: SWAP1
00001ec0: MLOAD
00001ec1: CALLER
00001ec2: SWAP2
00001ec3: PUSH32 0x9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d
00001ee4: SWAP2
00001ee5: SWAP1
00001ee6: DUP2
00001ee7: SWAP1
00001ee8: SUB
00001ee9: PUSH1 0x20
00001eeb: ADD
00001eec: SWAP1
00001eed: LOG2
00001eee: POP
00001eef: POP
00001ef0: JUMP
00001ef1: JUMPDEST
00001ef2: PUSH1 0x0d
00001ef4: SLOAD
00001ef5: PUSH1 0xff
00001ef7: AND
00001ef8: PUSH2 0x1f4d
00001efb: JUMPI
00001efc: PUSH1 0x0d
00001efe: SLOAD
00001eff: PUSH2 0x0100
00001f02: SWAP1
00001f03: DIV
00001f04: PUSH1 0x01
00001f06: PUSH1 0x01
00001f08: PUSH1 0xa0
00001f0a: SHL
00001f0b: SUB
00001f0c: AND
00001f0d: CALLER
00001f0e: EQ
00001f0f: PUSH2 0x1f4d
00001f12: JUMPI
00001f13: PUSH1 0x40
00001f15: DUP1
00001f16: MLOAD
00001f17: PUSH3 0x461bcd
00001f1b: PUSH1 0xe5
00001f1d: SHL
00001f1e: DUP2
00001f1f: MSTORE
00001f20: PUSH1 0x20
00001f22: PUSH1 0x04
00001f24: DUP3
00001f25: ADD
00001f26: MSTORE
00001f27: PUSH1 0x0b
00001f29: PUSH1 0x24
00001f2b: DUP3
00001f2c: ADD
00001f2d: MSTORE
00001f2e: PUSH11 0x21676f7665726e616e6365
00001f3a: PUSH1 0xa8
00001f3c: SHL
00001f3d: PUSH1 0x44
00001f3f: DUP3
00001f40: ADD
00001f41: MSTORE
00001f42: SWAP1
00001f43: MLOAD
00001f44: SWAP1
00001f45: DUP2
00001f46: SWAP1
00001f47: SUB
00001f48: PUSH1 0x64
00001f4a: ADD
00001f4b: SWAP1
00001f4c: REVERT
00001f4d: JUMPDEST
00001f4e: PUSH1 0x0a
00001f50: SLOAD
00001f51: PUSH2 0x1f59
00001f54: CALLER
00001f55: PUSH2 0x19d7
00001f58: JUMP
00001f59: JUMPDEST
00001f5a: LT
00001f5b: ISZERO
00001f5c: PUSH2 0x1f97
00001f5f: JUMPI
00001f60: PUSH1 0x40
00001f62: DUP1
00001f63: MLOAD
00001f64: PUSH3 0x461bcd
00001f68: PUSH1 0xe5
00001f6a: SHL
00001f6b: DUP2
00001f6c: MSTORE
00001f6d: PUSH1 0x20
00001f6f: PUSH1 0x04
00001f71: DUP3
00001f72: ADD
00001f73: MSTORE
00001f74: PUSH1 0x08
00001f76: PUSH1 0x24
00001f78: DUP3
00001f79: ADD
00001f7a: MSTORE
00001f7b: PUSH8 0x3c6d696e696d756d
00001f84: PUSH1 0xc0
00001f86: SHL
00001f87: PUSH1 0x44
00001f89: DUP3
00001f8a: ADD
00001f8b: MSTORE
00001f8c: SWAP1
00001f8d: MLOAD
00001f8e: SWAP1
00001f8f: DUP2
00001f90: SWAP1
00001f91: SUB
00001f92: PUSH1 0x64
00001f94: ADD
00001f95: SWAP1
00001f96: REVERT
00001f97: JUMPDEST
00001f98: PUSH1 0x40
00001f9a: MLOAD
00001f9b: DUP1
00001f9c: PUSH2 0x0160
00001f9f: ADD
00001fa0: PUSH1 0x40
00001fa2: MSTORE
00001fa3: DUP1
00001fa4: PUSH1 0x07
00001fa6: SLOAD
00001fa7: DUP2
00001fa8: MSTORE
00001fa9: PUSH1 0x20
00001fab: ADD
00001fac: CALLER
00001fad: PUSH1 0x01
00001faf: PUSH1 0x01
00001fb1: PUSH1 0xa0
00001fb3: SHL
00001fb4: SUB
00001fb5: AND
00001fb6: DUP2
00001fb7: MSTORE
00001fb8: PUSH1 0x20
00001fba: ADD
00001fbb: PUSH1 0x00
00001fbd: DUP2
00001fbe: MSTORE
00001fbf: PUSH1 0x20
00001fc1: ADD
00001fc2: PUSH1 0x00
00001fc4: DUP2
00001fc5: MSTORE
00001fc6: PUSH1 0x20
00001fc8: ADD
00001fc9: NUMBER
00001fca: DUP2
00001fcb: MSTORE
00001fcc: PUSH1 0x20
00001fce: ADD
00001fcf: PUSH2 0x1fe3
00001fd2: NUMBER
00001fd3: PUSH1 0x08
00001fd5: SLOAD
00001fd6: PUSH2 0x26e5
00001fd9: SWAP1
00001fda: SWAP2
00001fdb: SWAP1
00001fdc: PUSH4 0xffffffff
00001fe1: AND
00001fe2: JUMP
00001fe3: JUMPDEST
00001fe4: DUP2
00001fe5: MSTORE
00001fe6: PUSH1 0x20
00001fe8: DUP1
00001fe9: DUP3
00001fea: ADD
00001feb: DUP5
00001fec: SWAP1
00001fed: MSTORE
00001fee: PUSH1 0x0e
00001ff0: SLOAD
00001ff1: PUSH1 0x40
00001ff3: DUP1
00001ff4: DUP5
00001ff5: ADD
00001ff6: SWAP2
00001ff7: SWAP1
00001ff8: SWAP2
00001ff9: MSTORE
00001ffa: PUSH1 0x00
00001ffc: PUSH1 0x60
00001ffe: DUP1
00001fff: DUP6
00002000: ADD
00002001: DUP3
00002002: SWAP1
00002003: MSTORE
00002004: PUSH1 0x0c
00002006: SLOAD
00002007: PUSH1 0x80
00002009: DUP1
0000200a: DUP8
0000200b: ADD
0000200c: SWAP2
0000200d: SWAP1
0000200e: SWAP2
0000200f: MSTORE
00002010: PUSH1 0x01
00002012: PUSH1 0xa0
00002014: SWAP7
00002015: DUP8
00002016: ADD
00002017: DUP2
00002018: SWAP1
00002019: MSTORE
0000201a: PUSH1 0x07
0000201c: DUP1
0000201d: SLOAD
0000201e: DUP1
0000201f: DUP4
00002020: ADD
00002021: DUP3
00002022: SSTORE
00002023: DUP6
00002024: MSTORE
00002025: PUSH1 0x06
00002027: DUP1
00002028: DUP9
00002029: MSTORE
0000202a: SWAP5
0000202b: DUP7
0000202c: SWAP1
0000202d: KECCAK256
0000202e: DUP10
0000202f: MLOAD
00002030: DUP2
00002031: SSTORE
00002032: DUP10
00002033: DUP9
00002034: ADD
00002035: MLOAD
00002036: SWAP3
00002037: DUP2
00002038: ADD
00002039: DUP1
0000203a: SLOAD
0000203b: PUSH1 0x01
0000203d: PUSH1 0x01
0000203f: PUSH1 0xa0
00002041: SHL
00002042: SUB
00002043: NOT
00002044: AND
00002045: PUSH1 0x01
00002047: PUSH1 0x01
00002049: PUSH1 0xa0
0000204b: SHL
0000204c: SUB
0000204d: SWAP1
0000204e: SWAP5
0000204f: AND
00002050: SWAP4
00002051: SWAP1
00002052: SWAP4
00002053: OR
00002054: SWAP1
00002055: SWAP3
00002056: SSTORE
00002057: SWAP5
00002058: DUP9
00002059: ADD
0000205a: MLOAD
0000205b: PUSH1 0x04
0000205d: DUP3
0000205e: ADD
0000205f: SSTORE
00002060: SWAP2
00002061: DUP8
00002062: ADD
00002063: MLOAD
00002064: PUSH1 0x05
00002066: DUP4
00002067: ADD
00002068: SSTORE
00002069: DUP7
0000206a: ADD
0000206b: MLOAD
0000206c: SWAP2
0000206d: DUP2
0000206e: ADD
0000206f: SWAP2
00002070: SWAP1
00002071: SWAP2
00002072: SSTORE
00002073: SWAP3
00002074: DUP5
00002075: ADD
00002076: MLOAD
00002077: SWAP1
00002078: DUP4
00002079: ADD
0000207a: SSTORE
0000207b: PUSH1 0xc0
0000207d: DUP4
0000207e: ADD
0000207f: MLOAD
00002080: DUP1
00002081: MLOAD
00002082: PUSH2 0x2091
00002085: SWAP3
00002086: PUSH1 0x08
00002088: DUP6
00002089: ADD
0000208a: SWAP3
0000208b: ADD
0000208c: SWAP1
0000208d: PUSH2 0x2c60
00002090: JUMP
00002091: JUMPDEST
00002092: POP
00002093: PUSH1 0xe0
00002095: DUP3
00002096: ADD
00002097: MLOAD
00002098: PUSH1 0x09
0000209a: DUP3
0000209b: ADD
0000209c: SSTORE
0000209d: PUSH2 0x0100
000020a0: DUP3
000020a1: ADD
000020a2: MLOAD
000020a3: PUSH1 0x0a
000020a5: DUP3
000020a6: ADD
000020a7: SSTORE
000020a8: PUSH2 0x0120
000020ab: DUP3
000020ac: ADD
000020ad: MLOAD
000020ae: PUSH1 0x0b
000020b0: DUP3
000020b1: ADD
000020b2: SSTORE
000020b3: PUSH2 0x0140
000020b6: SWAP1
000020b7: SWAP2
000020b8: ADD
000020b9: MLOAD
000020ba: PUSH1 0x0c
000020bc: SWAP1
000020bd: SWAP2
000020be: ADD
000020bf: DUP1
000020c0: SLOAD
000020c1: PUSH1 0xff
000020c3: NOT
000020c4: AND
000020c5: SWAP2
000020c6: ISZERO
000020c7: ISZERO
000020c8: SWAP2
000020c9: SWAP1
000020ca: SWAP2
000020cb: OR
000020cc: SWAP1
000020cd: SSTORE
000020ce: PUSH1 0x07
000020d0: SLOAD
000020d1: PUSH1 0x08
000020d3: SLOAD
000020d4: PUSH1 0x40
000020d6: DUP1
000020d7: MLOAD
000020d8: SWAP3
000020d9: DUP4
000020da: MSTORE
000020db: CALLER
000020dc: PUSH1 0x20
000020de: DUP5
000020df: ADD
000020e0: MSTORE
000020e1: NUMBER
000020e2: DUP4
000020e3: DUP3
000020e4: ADD
000020e5: MSTORE
000020e6: PUSH1 0x60
000020e8: DUP4
000020e9: ADD
000020ea: SWAP2
000020eb: SWAP1
000020ec: SWAP2
000020ed: MSTORE
000020ee: MLOAD
000020ef: PUSH32 0x1f8de4be0248298bf62c14df107474fc48d2a9ae00aebd4e404abe63f7b7433e
00002110: SWAP2
00002111: PUSH1 0x80
00002113: SWAP1
00002114: DUP3
00002115: SWAP1
00002116: SUB
00002117: ADD
00002118: SWAP1
00002119: LOG1
0000211a: PUSH1 0x09
0000211c: SLOAD
0000211d: PUSH2 0x212c
00002120: SWAP1
00002121: NUMBER
00002122: PUSH4 0xffffffff
00002127: PUSH2 0x26e5
0000212a: AND
0000212b: JUMP
0000212c: JUMPDEST
0000212d: CALLER
0000212e: PUSH1 0x00
00002130: SWAP1
00002131: DUP2
00002132: MSTORE
00002133: PUSH1 0x05
00002135: PUSH1 0x20
00002137: MSTORE
00002138: PUSH1 0x40
0000213a: SWAP1
0000213b: KECCAK256
0000213c: SSTORE
0000213d: POP
0000213e: JUMP
0000213f: JUMPDEST
00002140: PUSH1 0x0d
00002142: SLOAD
00002143: PUSH2 0x0100
00002146: SWAP1
00002147: DIV
00002148: PUSH1 0x01
0000214a: PUSH1 0x01
0000214c: PUSH1 0xa0
0000214e: SHL
0000214f: SUB
00002150: AND
00002151: CALLER
00002152: EQ
00002153: PUSH2 0x2191
00002156: JUMPI
00002157: PUSH1 0x40
00002159: DUP1
0000215a: MLOAD
0000215b: PUSH3 0x461bcd
0000215f: PUSH1 0xe5
00002161: SHL
00002162: DUP2
00002163: MSTORE
00002164: PUSH1 0x20
00002166: PUSH1 0x04
00002168: DUP3
00002169: ADD
0000216a: MSTORE
0000216b: PUSH1 0x0b
0000216d: PUSH1 0x24
0000216f: DUP3
00002170: ADD
00002171: MSTORE
00002172: PUSH11 0x21676f7665726e616e6365
0000217e: PUSH1 0xa8
00002180: SHL
00002181: PUSH1 0x44
00002183: DUP3
00002184: ADD
00002185: MSTORE
00002186: SWAP1
00002187: MLOAD
00002188: SWAP1
00002189: DUP2
0000218a: SWAP1
0000218b: SUB
0000218c: PUSH1 0x64
0000218e: ADD
0000218f: SWAP1
00002190: REVERT
00002191: JUMPDEST
00002192: PUSH1 0x0d
00002194: DUP1
00002195: SLOAD
00002196: PUSH1 0x01
00002198: PUSH1 0x01
0000219a: PUSH1 0xa0
0000219c: SHL
0000219d: SUB
0000219e: SWAP1
0000219f: SWAP3
000021a0: AND
000021a1: PUSH2 0x0100
000021a4: MUL
000021a5: PUSH2 0x0100
000021a8: PUSH1 0x01
000021aa: PUSH1 0xa8
000021ac: SHL
000021ad: SUB
000021ae: NOT
000021af: SWAP1
000021b0: SWAP3
000021b1: AND
000021b2: SWAP2
000021b3: SWAP1
000021b4: SWAP2
000021b5: OR
000021b6: SWAP1
000021b7: SSTORE
000021b8: JUMP
000021b9: JUMPDEST
000021ba: CALLER
000021bb: PUSH1 0x00
000021bd: SWAP1
000021be: DUP2
000021bf: MSTORE
000021c0: PUSH1 0x10
000021c2: PUSH1 0x20
000021c4: MSTORE
000021c5: PUSH1 0x40
000021c7: SWAP1
000021c8: KECCAK256
000021c9: SLOAD
000021ca: PUSH1 0xff
000021cc: AND
000021cd: ISZERO
000021ce: ISZERO
000021cf: PUSH1 0x01
000021d1: EQ
000021d2: PUSH2 0x220b
000021d5: JUMPI
000021d6: PUSH1 0x40
000021d8: DUP1
000021d9: MLOAD
000021da: PUSH3 0x461bcd
000021de: PUSH1 0xe5
000021e0: SHL
000021e1: DUP2
000021e2: MSTORE
000021e3: PUSH1 0x20
000021e5: PUSH1 0x04
000021e7: DUP3
000021e8: ADD
000021e9: MSTORE
000021ea: PUSH1 0x06
000021ec: PUSH1 0x24
000021ee: DUP3
000021ef: ADD
000021f0: MSTORE
000021f1: PUSH6 0x10bb37ba32b9
000021f8: PUSH1 0xd1
000021fa: SHL
000021fb: PUSH1 0x44
000021fd: DUP3
000021fe: ADD
000021ff: MSTORE
00002200: SWAP1
00002201: MLOAD
00002202: SWAP1
00002203: DUP2
00002204: SWAP1
00002205: SUB
00002206: PUSH1 0x64
00002208: ADD
00002209: SWAP1
0000220a: REVERT
0000220b: JUMPDEST
0000220c: CALLER
0000220d: PUSH1 0x00
0000220f: SWAP1
00002210: DUP2
00002211: MSTORE
00002212: PUSH1 0x10
00002214: PUSH1 0x20
00002216: SWAP1
00002217: DUP2
00002218: MSTORE
00002219: PUSH1 0x40
0000221b: DUP1
0000221c: DUP4
0000221d: KECCAK256
0000221e: DUP1
0000221f: SLOAD
00002220: PUSH1 0xff
00002222: NOT
00002223: AND
00002224: SWAP1
00002225: SSTORE
00002226: PUSH1 0x0f
00002228: SWAP1
00002229: SWAP2
0000222a: MSTORE
0000222b: SWAP1
0000222c: KECCAK256
0000222d: SLOAD
0000222e: PUSH1 0x0e
00002230: SLOAD
00002231: LT
00002232: ISZERO
00002233: PUSH2 0x2240
00002236: JUMPI
00002237: PUSH1 0x00
00002239: PUSH1 0x0e
0000223b: SSTORE
0000223c: PUSH2 0x2266
0000223f: JUMP
00002240: JUMPDEST
00002241: CALLER
00002242: PUSH1 0x00
00002244: SWAP1
00002245: DUP2
00002246: MSTORE
00002247: PUSH1 0x0f
00002249: PUSH1 0x20
0000224b: MSTORE
0000224c: PUSH1 0x40
0000224e: SWAP1
0000224f: KECCAK256
00002250: SLOAD
00002251: PUSH1 0x0e
00002253: SLOAD
00002254: PUSH2 0x2262
00002257: SWAP2
00002258: PUSH4 0xffffffff
0000225d: PUSH2 0x2601
00002260: AND
00002261: JUMP
00002262: JUMPDEST
00002263: PUSH1 0x0e
00002265: SSTORE
00002266: JUMPDEST
00002267: CALLER
00002268: PUSH1 0x00
0000226a: DUP2
0000226b: DUP2
0000226c: MSTORE
0000226d: PUSH1 0x0f
0000226f: PUSH1 0x20
00002271: SWAP1
00002272: DUP2
00002273: MSTORE
00002274: PUSH1 0x40
00002276: SWAP2
00002277: DUP3
00002278: SWAP1
00002279: KECCAK256
0000227a: SLOAD
0000227b: PUSH1 0x0e
0000227d: SLOAD
0000227e: DUP4
0000227f: MLOAD
00002280: SWAP5
00002281: DUP6
00002282: MSTORE
00002283: SWAP2
00002284: DUP5
00002285: ADD
00002286: MSTORE
00002287: DUP3
00002288: DUP3
00002289: ADD
0000228a: MSTORE
0000228b: MLOAD
0000228c: PUSH31 0x330fa0724b41c0d187cfad0aa7ff5fa2ff7e742995886f55fda6f5909914b8
000022ac: SWAP2
000022ad: DUP2
000022ae: SWAP1
000022af: SUB
000022b0: PUSH1 0x60
000022b2: ADD
000022b3: SWAP1
000022b4: LOG1
000022b5: CALLER
000022b6: PUSH1 0x00
000022b8: SWAP1
000022b9: DUP2
000022ba: MSTORE
000022bb: PUSH1 0x0f
000022bd: PUSH1 0x20
000022bf: MSTORE
000022c0: PUSH1 0x40
000022c2: DUP2
000022c3: KECCAK256
000022c4: SSTORE
000022c5: JUMP
000022c6: JUMPDEST
000022c7: PUSH1 0x0d
000022c9: SLOAD
000022ca: PUSH2 0x0100
000022cd: SWAP1
000022ce: DIV
000022cf: PUSH1 0x01
000022d1: PUSH1 0x01
000022d3: PUSH1 0xa0
000022d5: SHL
000022d6: SUB
000022d7: AND
000022d8: CALLER
000022d9: EQ
000022da: PUSH2 0x2318
000022dd: JUMPI
000022de: PUSH1 0x40
000022e0: DUP1
000022e1: MLOAD
000022e2: PUSH3 0x461bcd
000022e6: PUSH1 0xe5
000022e8: SHL
000022e9: DUP2
000022ea: MSTORE
000022eb: PUSH1 0x20
000022ed: PUSH1 0x04
000022ef: DUP3
000022f0: ADD
000022f1: MSTORE
000022f2: PUSH1 0x0b
000022f4: PUSH1 0x24
000022f6: DUP3
000022f7: ADD
000022f8: MSTORE
000022f9: PUSH11 0x21676f7665726e616e6365
00002305: PUSH1 0xa8
00002307: SHL
00002308: PUSH1 0x44
0000230a: DUP3
0000230b: ADD
0000230c: MSTORE
0000230d: SWAP1
0000230e: MLOAD
0000230f: SWAP1
00002310: DUP2
00002311: SWAP1
00002312: SUB
00002313: PUSH1 0x64
00002315: ADD
00002316: SWAP1
00002317: REVERT
00002318: JUMPDEST
00002319: PUSH1 0x0c
0000231b: SSTORE
0000231c: JUMP
0000231d: JUMPDEST
0000231e: PUSH1 0x15
00002320: SLOAD
00002321: DUP2
00002322: JUMP
00002323: JUMPDEST
00002324: PUSH1 0x00
00002326: PUSH2 0x232d
00002329: PUSH2 0x0cf6
0000232c: JUMP
0000232d: JUMPDEST
0000232e: PUSH2 0x233a
00002331: JUMPI
00002332: POP
00002333: PUSH1 0x16
00002335: SLOAD
00002336: PUSH2 0x0cfa
00002339: JUMP
0000233a: JUMPDEST
0000233b: PUSH2 0x1a96
0000233e: PUSH2 0x2368
00002341: PUSH2 0x2348
00002344: PUSH2 0x0cf6
00002347: JUMP
00002348: JUMPDEST
00002349: PUSH2 0x0aa5
0000234c: PUSH8 0x0de0b6b3a7640000
00002355: PUSH2 0x0a99
00002358: PUSH1 0x14
0000235a: SLOAD
0000235b: PUSH2 0x0a99
0000235e: PUSH1 0x15
00002360: SLOAD
00002361: PUSH2 0x0a84
00002364: PUSH2 0x1a88
00002367: JUMP
00002368: JUMPDEST
00002369: PUSH1 0x16
0000236b: SLOAD
0000236c: SWAP1
0000236d: PUSH4 0xffffffff
00002372: PUSH2 0x26e5
00002375: AND
00002376: JUMP
00002377: JUMPDEST
00002378: PUSH1 0x0d
0000237a: SLOAD
0000237b: PUSH2 0x0100
0000237e: SWAP1
0000237f: DIV
00002380: PUSH1 0x01
00002382: PUSH1 0x01
00002384: PUSH1 0xa0
00002386: SHL
00002387: SUB
00002388: AND
00002389: CALLER
0000238a: EQ
0000238b: PUSH2 0x23c9
0000238e: JUMPI
0000238f: PUSH1 0x40
00002391: DUP1
00002392: MLOAD
00002393: PUSH3 0x461bcd
00002397: PUSH1 0xe5
00002399: SHL
0000239a: DUP2
0000239b: MSTORE
0000239c: PUSH1 0x20
0000239e: PUSH1 0x04
000023a0: DUP3
000023a1: ADD
000023a2: MSTORE
000023a3: PUSH1 0x0b
000023a5: PUSH1 0x24
000023a7: DUP3
000023a8: ADD
000023a9: MSTORE
000023aa: PUSH11 0x21676f7665726e616e6365
000023b6: PUSH1 0xa8
000023b8: SHL
000023b9: PUSH1 0x44
000023bb: DUP3
000023bc: ADD
000023bd: MSTORE
000023be: SWAP1
000023bf: MLOAD
000023c0: SWAP1
000023c1: DUP2
000023c2: SWAP1
000023c3: SUB
000023c4: PUSH1 0x64
000023c6: ADD
000023c7: SWAP1
000023c8: REVERT
000023c9: JUMPDEST
000023ca: PUSH1 0x09
000023cc: SSTORE
000023cd: JUMP
000023ce: JUMPDEST
000023cf: PUSH1 0x0f
000023d1: PUSH1 0x20
000023d3: MSTORE
000023d4: PUSH1 0x00
000023d6: SWAP1
000023d7: DUP2
000023d8: MSTORE
000023d9: PUSH1 0x40
000023db: SWAP1
000023dc: KECCAK256
000023dd: SLOAD
000023de: DUP2
000023df: JUMP
000023e0: JUMPDEST
000023e1: PUSH1 0x07
000023e3: SLOAD
000023e4: DUP2
000023e5: JUMP
000023e6: JUMPDEST
000023e7: PUSH1 0x0d
000023e9: SLOAD
000023ea: PUSH2 0x0100
000023ed: SWAP1
000023ee: DIV
000023ef: PUSH1 0x01
000023f1: PUSH1 0x01
000023f3: PUSH1 0xa0
000023f5: SHL
000023f6: SUB
000023f7: AND
000023f8: CALLER
000023f9: EQ
000023fa: PUSH2 0x2438
000023fd: JUMPI
000023fe: PUSH1 0x40
00002400: DUP1
00002401: MLOAD
00002402: PUSH3 0x461bcd
00002406: PUSH1 0xe5
00002408: SHL
00002409: DUP2
0000240a: MSTORE
0000240b: PUSH1 0x20
0000240d: PUSH1 0x04
0000240f: DUP3
00002410: ADD
00002411: MSTORE
00002412: PUSH1 0x0b
00002414: PUSH1 0x24
00002416: DUP3
00002417: ADD
00002418: MSTORE
00002419: PUSH11 0x21676f7665726e616e6365
00002425: PUSH1 0xa8
00002427: SHL
00002428: PUSH1 0x44
0000242a: DUP3
0000242b: ADD
0000242c: MSTORE
0000242d: SWAP1
0000242e: MLOAD
0000242f: SWAP1
00002430: DUP2
00002431: SWAP1
00002432: SUB
00002433: PUSH1 0x64
00002435: ADD
00002436: SWAP1
00002437: REVERT
00002438: JUMPDEST
00002439: PUSH1 0x0d
0000243b: DUP1
0000243c: SLOAD
0000243d: PUSH1 0xff
0000243f: NOT
00002440: AND
00002441: SWAP2
00002442: ISZERO
00002443: ISZERO
00002444: SWAP2
00002445: SWAP1
00002446: SWAP2
00002447: OR
00002448: SWAP1
00002449: SSTORE
0000244a: JUMP
0000244b: JUMPDEST
0000244c: PUSH1 0x16
0000244e: SLOAD
0000244f: DUP2
00002450: JUMP
00002451: JUMPDEST
00002452: PUSH2 0x2462
00002455: PUSH2 0x245d
00002458: CALLER
00002459: PUSH2 0x1668
0000245c: JUMP
0000245d: JUMPDEST
0000245e: PUSH2 0x1098
00002461: JUMP
00002462: JUMPDEST
00002463: PUSH2 0x246a
00002466: PUSH2 0x1298
00002469: JUMP
0000246a: JUMPDEST
0000246b: JUMP
0000246c: JUMPDEST
0000246d: PUSH1 0x0d
0000246f: SLOAD
00002470: PUSH2 0x0100
00002473: SWAP1
00002474: DIV
00002475: PUSH1 0x01
00002477: PUSH1 0x01
00002479: PUSH1 0xa0
0000247b: SHL
0000247c: SUB
0000247d: AND
0000247e: CALLER
0000247f: EQ
00002480: PUSH2 0x24be
00002483: JUMPI
00002484: PUSH1 0x40
00002486: DUP1
00002487: MLOAD
00002488: PUSH3 0x461bcd
0000248c: PUSH1 0xe5
0000248e: SHL
0000248f: DUP2
00002490: MSTORE
00002491: PUSH1 0x20
00002493: PUSH1 0x04
00002495: DUP3
00002496: ADD
00002497: MSTORE
00002498: PUSH1 0x0b
0000249a: PUSH1 0x24
0000249c: DUP3
0000249d: ADD
0000249e: MSTORE
0000249f: PUSH11 0x21676f7665726e616e6365
000024ab: PUSH1 0xa8
000024ad: SHL
000024ae: PUSH1 0x44
000024b0: DUP3
000024b1: ADD
000024b2: MSTORE
000024b3: SWAP1
000024b4: MLOAD
000024b5: SWAP1
000024b6: DUP2
000024b7: SWAP1
000024b8: SUB
000024b9: PUSH1 0x64
000024bb: ADD
000024bc: SWAP1
000024bd: REVERT
000024be: JUMPDEST
000024bf: PUSH1 0x11
000024c1: SLOAD
000024c2: PUSH1 0x01
000024c4: PUSH1 0x01
000024c6: PUSH1 0xa0
000024c8: SHL
000024c9: SUB
000024ca: DUP4
000024cb: DUP2
000024cc: AND
000024cd: SWAP2
000024ce: AND
000024cf: EQ
000024d0: ISZERO
000024d1: PUSH2 0x250a
000024d4: JUMPI
000024d5: PUSH1 0x40
000024d7: DUP1
000024d8: MLOAD
000024d9: PUSH3 0x461bcd
000024dd: PUSH1 0xe5
000024df: SHL
000024e0: DUP2
000024e1: MSTORE
000024e2: PUSH1 0x20
000024e4: PUSH1 0x04
000024e6: DUP3
000024e7: ADD
000024e8: MSTORE
000024e9: PUSH1 0x06
000024eb: PUSH1 0x24
000024ed: DUP3
000024ee: ADD
000024ef: MSTORE
000024f0: PUSH6 0x1c995dd85c99
000024f7: PUSH1 0xd2
000024f9: SHL
000024fa: PUSH1 0x44
000024fc: DUP3
000024fd: ADD
000024fe: MSTORE
000024ff: SWAP1
00002500: MLOAD
00002501: SWAP1
00002502: DUP2
00002503: SWAP1
00002504: SUB
00002505: PUSH1 0x64
00002507: ADD
00002508: SWAP1
00002509: REVERT
0000250a: JUMPDEST
0000250b: PUSH1 0x00
0000250d: SLOAD
0000250e: PUSH1 0x01
00002510: PUSH1 0x01
00002512: PUSH1 0xa0
00002514: SHL
00002515: SUB
00002516: DUP4
00002517: DUP2
00002518: AND
00002519: SWAP2
0000251a: AND
0000251b: EQ
0000251c: ISZERO
0000251d: PUSH2 0x2556
00002520: JUMPI
00002521: PUSH1 0x40
00002523: DUP1
00002524: MLOAD
00002525: PUSH3 0x461bcd
00002529: PUSH1 0xe5
0000252b: SHL
0000252c: DUP2
0000252d: MSTORE
0000252e: PUSH1 0x20
00002530: PUSH1 0x04
00002532: DUP1
00002533: DUP4
00002534: ADD
00002535: SWAP2
00002536: SWAP1
00002537: SWAP2
00002538: MSTORE
00002539: PUSH1 0x24
0000253b: DUP3
0000253c: ADD
0000253d: MSTORE
0000253e: PUSH4 0x766f7465
00002543: PUSH1 0xe0
00002545: SHL
00002546: PUSH1 0x44
00002548: DUP3
00002549: ADD
0000254a: MSTORE
0000254b: SWAP1
0000254c: MLOAD
0000254d: SWAP1
0000254e: DUP2
0000254f: SWAP1
00002550: SUB
00002551: PUSH1 0x64
00002553: ADD
00002554: SWAP1
00002555: REVERT
00002556: JUMPDEST
00002557: PUSH1 0x0d
00002559: SLOAD
0000255a: PUSH2 0x13c2
0000255d: SWAP1
0000255e: PUSH1 0x01
00002560: PUSH1 0x01
00002562: PUSH1 0xa0
00002564: SHL
00002565: SUB
00002566: DUP5
00002567: DUP2
00002568: AND
00002569: SWAP2
0000256a: PUSH2 0x0100
0000256d: SWAP1
0000256e: DIV
0000256f: AND
00002570: DUP4
00002571: PUSH4 0xffffffff
00002576: PUSH2 0x27a0
00002579: AND
0000257a: JUMP
0000257b: JUMPDEST
0000257c: PUSH1 0x13
0000257e: SLOAD
0000257f: DUP2
00002580: JUMP
00002581: JUMPDEST
00002582: PUSH1 0x08
00002584: SLOAD
00002585: DUP2
00002586: JUMP
00002587: JUMPDEST
00002588: PUSH2 0x258f
0000258b: PUSH2 0x1d68
0000258e: JUMP
0000258f: JUMPDEST
00002590: PUSH2 0x25e0
00002593: JUMPI
00002594: PUSH1 0x40
00002596: DUP1
00002597: MLOAD
00002598: PUSH3 0x461bcd
0000259c: PUSH1 0xe5
0000259e: SHL
0000259f: DUP2
000025a0: MSTORE
000025a1: PUSH1 0x20
000025a3: PUSH1 0x04
000025a5: DUP3
000025a6: ADD
000025a7: DUP2
000025a8: SWAP1
000025a9: MSTORE
000025aa: PUSH1 0x24
000025ac: DUP3
000025ad: ADD
000025ae: MSTORE
000025af: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
000025d0: PUSH1 0x44
000025d2: DUP3
000025d3: ADD
000025d4: MSTORE
000025d5: SWAP1
000025d6: MLOAD
000025d7: SWAP1
000025d8: DUP2
000025d9: SWAP1
000025da: SUB
000025db: PUSH1 0x64
000025dd: ADD
000025de: SWAP1
000025df: REVERT
000025e0: JUMPDEST
000025e1: PUSH2 0x25e9
000025e4: DUP2
000025e5: PUSH2 0x286f
000025e8: JUMP
000025e9: JUMPDEST
000025ea: POP
000025eb: JUMP
000025ec: JUMPDEST
000025ed: PUSH1 0x09
000025ef: SLOAD
000025f0: DUP2
000025f1: JUMP
000025f2: JUMPDEST
000025f3: PUSH1 0x11
000025f5: SLOAD
000025f6: PUSH1 0x01
000025f8: PUSH1 0x01
000025fa: PUSH1 0xa0
000025fc: SHL
000025fd: SUB
000025fe: AND
000025ff: DUP2
00002600: JUMP
00002601: JUMPDEST
00002602: PUSH1 0x00
00002604: PUSH2 0x2643
00002607: DUP4
00002608: DUP4
00002609: PUSH1 0x40
0000260b: MLOAD
0000260c: DUP1
0000260d: PUSH1 0x40
0000260f: ADD
00002610: PUSH1 0x40
00002612: MSTORE
00002613: DUP1
00002614: PUSH1 0x1e
00002616: DUP2
00002617: MSTORE
00002618: PUSH1 0x20
0000261a: ADD
0000261b: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
0000263c: DUP2
0000263d: MSTORE
0000263e: POP
0000263f: PUSH2 0x2910
00002642: JUMP
00002643: JUMPDEST
00002644: SWAP4
00002645: SWAP3
00002646: POP
00002647: POP
00002648: POP
00002649: JUMP
0000264a: JUMPDEST
0000264b: PUSH1 0x00
0000264d: DUP3
0000264e: PUSH2 0x2659
00002651: JUMPI
00002652: POP
00002653: PUSH1 0x00
00002655: PUSH2 0x0abd
00002658: JUMP
00002659: JUMPDEST
0000265a: DUP3
0000265b: DUP3
0000265c: MUL
0000265d: DUP3
0000265e: DUP5
0000265f: DUP3
00002660: DUP2
00002661: PUSH2 0x2666
00002664: JUMPI
00002665: INVALID
00002666: JUMPDEST
00002667: DIV
00002668: EQ
00002669: PUSH2 0x2643
0000266c: JUMPI
0000266d: PUSH1 0x40
0000266f: MLOAD
00002670: PUSH3 0x461bcd
00002674: PUSH1 0xe5
00002676: SHL
00002677: DUP2
00002678: MSTORE
00002679: PUSH1 0x04
0000267b: ADD
0000267c: DUP1
0000267d: DUP1
0000267e: PUSH1 0x20
00002680: ADD
00002681: DUP3
00002682: DUP2
00002683: SUB
00002684: DUP3
00002685: MSTORE
00002686: PUSH1 0x21
00002688: DUP2
00002689: MSTORE
0000268a: PUSH1 0x20
0000268c: ADD
0000268d: DUP1
0000268e: PUSH2 0x2d1f
00002691: PUSH1 0x21
00002693: SWAP2
00002694: CODECOPY
00002695: PUSH1 0x40
00002697: ADD
00002698: SWAP2
00002699: POP
0000269a: POP
0000269b: PUSH1 0x40
0000269d: MLOAD
0000269e: DUP1
0000269f: SWAP2
000026a0: SUB
000026a1: SWAP1
000026a2: REVERT
000026a3: JUMPDEST
000026a4: PUSH1 0x00
000026a6: PUSH2 0x2643
000026a9: DUP4
000026aa: DUP4
000026ab: PUSH1 0x40
000026ad: MLOAD
000026ae: DUP1
000026af: PUSH1 0x40
000026b1: ADD
000026b2: PUSH1 0x40
000026b4: MSTORE
000026b5: DUP1
000026b6: PUSH1 0x1a
000026b8: DUP2
000026b9: MSTORE
000026ba: PUSH1 0x20
000026bc: ADD
000026bd: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000
000026de: DUP2
000026df: MSTORE
000026e0: POP
000026e1: PUSH2 0x29a7
000026e4: JUMP
000026e5: JUMPDEST
000026e6: PUSH1 0x00
000026e8: DUP3
000026e9: DUP3
000026ea: ADD
000026eb: DUP4
000026ec: DUP2
000026ed: LT
000026ee: ISZERO
000026ef: PUSH2 0x2643
000026f2: JUMPI
000026f3: PUSH1 0x40
000026f5: DUP1
000026f6: MLOAD
000026f7: PUSH3 0x461bcd
000026fb: PUSH1 0xe5
000026fd: SHL
000026fe: DUP2
000026ff: MSTORE
00002700: PUSH1 0x20
00002702: PUSH1 0x04
00002704: DUP3
00002705: ADD
00002706: MSTORE
00002707: PUSH1 0x1b
00002709: PUSH1 0x24
0000270b: DUP3
0000270c: ADD
0000270d: MSTORE
0000270e: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
0000272f: PUSH1 0x44
00002731: DUP3
00002732: ADD
00002733: MSTORE
00002734: SWAP1
00002735: MLOAD
00002736: SWAP1
00002737: DUP2
00002738: SWAP1
00002739: SUB
0000273a: PUSH1 0x64
0000273c: ADD
0000273d: SWAP1
0000273e: REVERT
0000273f: JUMPDEST
00002740: CALLER
00002741: SWAP1
00002742: JUMP
00002743: JUMPDEST
00002744: PUSH1 0x01
00002746: SLOAD
00002747: PUSH2 0x2756
0000274a: SWAP1
0000274b: DUP3
0000274c: PUSH4 0xffffffff
00002751: PUSH2 0x2601
00002754: AND
00002755: JUMP
00002756: JUMPDEST
00002757: PUSH1 0x01
00002759: SSTORE
0000275a: CALLER
0000275b: PUSH1 0x00
0000275d: SWAP1
0000275e: DUP2
0000275f: MSTORE
00002760: PUSH1 0x02
00002762: PUSH1 0x20
00002764: MSTORE
00002765: PUSH1 0x40
00002767: SWAP1
00002768: KECCAK256
00002769: SLOAD
0000276a: PUSH2 0x2779
0000276d: SWAP1
0000276e: DUP3
0000276f: PUSH4 0xffffffff
00002774: PUSH2 0x2601
00002777: AND
00002778: JUMP
00002779: JUMPDEST
0000277a: CALLER
0000277b: PUSH1 0x00
0000277d: DUP2
0000277e: DUP2
0000277f: MSTORE
00002780: PUSH1 0x02
00002782: PUSH1 0x20
00002784: MSTORE
00002785: PUSH1 0x40
00002787: DUP2
00002788: KECCAK256
00002789: SWAP3
0000278a: SWAP1
0000278b: SWAP3
0000278c: SSTORE
0000278d: SWAP1
0000278e: SLOAD
0000278f: PUSH2 0x25e9
00002792: SWAP2
00002793: PUSH1 0x01
00002795: PUSH1 0x01
00002797: PUSH1 0xa0
00002799: SHL
0000279a: SUB
0000279b: SWAP1
0000279c: SWAP2
0000279d: AND
0000279e: SWAP1
0000279f: DUP4
000027a0: JUMPDEST
000027a1: PUSH1 0x40
000027a3: DUP1
000027a4: MLOAD
000027a5: PUSH1 0x01
000027a7: PUSH1 0x01
000027a9: PUSH1 0xa0
000027ab: SHL
000027ac: SUB
000027ad: DUP5
000027ae: AND
000027af: PUSH1 0x24
000027b1: DUP3
000027b2: ADD
000027b3: MSTORE
000027b4: PUSH1 0x44
000027b6: DUP1
000027b7: DUP3
000027b8: ADD
000027b9: DUP5
000027ba: SWAP1
000027bb: MSTORE
000027bc: DUP3
000027bd: MLOAD
000027be: DUP1
000027bf: DUP4
000027c0: SUB
000027c1: SWAP1
000027c2: SWAP2
000027c3: ADD
000027c4: DUP2
000027c5: MSTORE
000027c6: PUSH1 0x64
000027c8: SWAP1
000027c9: SWAP2
000027ca: ADD
000027cb: SWAP1
000027cc: SWAP2
000027cd: MSTORE
000027ce: PUSH1 0x20
000027d0: DUP2
000027d1: ADD
000027d2: DUP1
000027d3: MLOAD
000027d4: PUSH1 0x01
000027d6: PUSH1 0x01
000027d8: PUSH1 0xe0
000027da: SHL
000027db: SUB
000027dc: AND
000027dd: PUSH4 0xa9059cbb
000027e2: PUSH1 0xe0
000027e4: SHL
000027e5: OR
000027e6: SWAP1
000027e7: MSTORE
000027e8: PUSH2 0x27f2
000027eb: SWAP1
000027ec: DUP5
000027ed: SWAP1
000027ee: PUSH2 0x2a0c
000027f1: JUMP
000027f2: JUMPDEST
000027f3: POP
000027f4: POP
000027f5: POP
000027f6: JUMP
000027f7: JUMPDEST
000027f8: PUSH1 0x00
000027fa: DUP2
000027fb: DUP4
000027fc: LT
000027fd: PUSH2 0x2806
00002800: JUMPI
00002801: DUP2
00002802: PUSH2 0x2643
00002805: JUMP
00002806: JUMPDEST
00002807: POP
00002808: SWAP1
00002809: SWAP2
0000280a: SWAP1
0000280b: POP
0000280c: JUMP
0000280d: JUMPDEST
0000280e: PUSH1 0x01
00002810: SLOAD
00002811: PUSH2 0x2820
00002814: SWAP1
00002815: DUP3
00002816: PUSH4 0xffffffff
0000281b: PUSH2 0x26e5
0000281e: AND
0000281f: JUMP
00002820: JUMPDEST
00002821: PUSH1 0x01
00002823: SSTORE
00002824: CALLER
00002825: PUSH1 0x00
00002827: SWAP1
00002828: DUP2
00002829: MSTORE
0000282a: PUSH1 0x02
0000282c: PUSH1 0x20
0000282e: MSTORE
0000282f: PUSH1 0x40
00002831: SWAP1
00002832: KECCAK256
00002833: SLOAD
00002834: PUSH2 0x2843
00002837: SWAP1
00002838: DUP3
00002839: PUSH4 0xffffffff
0000283e: PUSH2 0x26e5
00002841: AND
00002842: JUMP
00002843: JUMPDEST
00002844: CALLER
00002845: PUSH1 0x00
00002847: DUP2
00002848: DUP2
00002849: MSTORE
0000284a: PUSH1 0x02
0000284c: PUSH1 0x20
0000284e: MSTORE
0000284f: PUSH1 0x40
00002851: DUP2
00002852: KECCAK256
00002853: SWAP3
00002854: SWAP1
00002855: SWAP3
00002856: SSTORE
00002857: SWAP1
00002858: SLOAD
00002859: PUSH2 0x25e9
0000285c: SWAP2
0000285d: PUSH1 0x01
0000285f: PUSH1 0x01
00002861: PUSH1 0xa0
00002863: SHL
00002864: SUB
00002865: SWAP1
00002866: SWAP2
00002867: AND
00002868: SWAP1
00002869: ADDRESS
0000286a: DUP5
0000286b: PUSH2 0x2bca
0000286e: JUMP
0000286f: JUMPDEST
00002870: PUSH1 0x01
00002872: PUSH1 0x01
00002874: PUSH1 0xa0
00002876: SHL
00002877: SUB
00002878: DUP2
00002879: AND
0000287a: PUSH2 0x28b4
0000287d: JUMPI
0000287e: PUSH1 0x40
00002880: MLOAD
00002881: PUSH3 0x461bcd
00002885: PUSH1 0xe5
00002887: SHL
00002888: DUP2
00002889: MSTORE
0000288a: PUSH1 0x04
0000288c: ADD
0000288d: DUP1
0000288e: DUP1
0000288f: PUSH1 0x20
00002891: ADD
00002892: DUP3
00002893: DUP2
00002894: SUB
00002895: DUP3
00002896: MSTORE
00002897: PUSH1 0x26
00002899: DUP2
0000289a: MSTORE
0000289b: PUSH1 0x20
0000289d: ADD
0000289e: DUP1
0000289f: PUSH2 0x2cf9
000028a2: PUSH1 0x26
000028a4: SWAP2
000028a5: CODECOPY
000028a6: PUSH1 0x40
000028a8: ADD
000028a9: SWAP2
000028aa: POP
000028ab: POP
000028ac: PUSH1 0x40
000028ae: MLOAD
000028af: DUP1
000028b0: SWAP2
000028b1: SUB
000028b2: SWAP1
000028b3: REVERT
000028b4: JUMPDEST
000028b5: PUSH1 0x03
000028b7: SLOAD
000028b8: PUSH1 0x40
000028ba: MLOAD
000028bb: PUSH1 0x01
000028bd: PUSH1 0x01
000028bf: PUSH1 0xa0
000028c1: SHL
000028c2: SUB
000028c3: DUP1
000028c4: DUP5
000028c5: AND
000028c6: SWAP3
000028c7: AND
000028c8: SWAP1
000028c9: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000028ea: SWAP1
000028eb: PUSH1 0x00
000028ed: SWAP1
000028ee: LOG3
000028ef: PUSH1 0x03
000028f1: DUP1
000028f2: SLOAD
000028f3: PUSH1 0x01
000028f5: PUSH1 0x01
000028f7: PUSH1 0xa0
000028f9: SHL
000028fa: SUB
000028fb: NOT
000028fc: AND
000028fd: PUSH1 0x01
000028ff: PUSH1 0x01
00002901: PUSH1 0xa0
00002903: SHL
00002904: SUB
00002905: SWAP3
00002906: SWAP1
00002907: SWAP3
00002908: AND
00002909: SWAP2
0000290a: SWAP1
0000290b: SWAP2
0000290c: OR
0000290d: SWAP1
0000290e: SSTORE
0000290f: JUMP
00002910: JUMPDEST
00002911: PUSH1 0x00
00002913: DUP2
00002914: DUP5
00002915: DUP5
00002916: GT
00002917: ISZERO
00002918: PUSH2 0x299f
0000291b: JUMPI
0000291c: PUSH1 0x40
0000291e: MLOAD
0000291f: PUSH3 0x461bcd
00002923: PUSH1 0xe5
00002925: SHL
00002926: DUP2
00002927: MSTORE
00002928: PUSH1 0x04
0000292a: ADD
0000292b: DUP1
0000292c: DUP1
0000292d: PUSH1 0x20
0000292f: ADD
00002930: DUP3
00002931: DUP2
00002932: SUB
00002933: DUP3
00002934: MSTORE
00002935: DUP4
00002936: DUP2
00002937: DUP2
00002938: MLOAD
00002939: DUP2
0000293a: MSTORE
0000293b: PUSH1 0x20
0000293d: ADD
0000293e: SWAP2
0000293f: POP
00002940: DUP1
00002941: MLOAD
00002942: SWAP1
00002943: PUSH1 0x20
00002945: ADD
00002946: SWAP1
00002947: DUP1
00002948: DUP4
00002949: DUP4
0000294a: PUSH1 0x00
0000294c: JUMPDEST
0000294d: DUP4
0000294e: DUP2
0000294f: LT
00002950: ISZERO
00002951: PUSH2 0x2964
00002954: JUMPI
00002955: DUP2
00002956: DUP2
00002957: ADD
00002958: MLOAD
00002959: DUP4
0000295a: DUP3
0000295b: ADD
0000295c: MSTORE
0000295d: PUSH1 0x20
0000295f: ADD
00002960: PUSH2 0x294c
00002963: JUMP
00002964: JUMPDEST
00002965: POP
00002966: POP
00002967: POP
00002968: POP
00002969: SWAP1
0000296a: POP
0000296b: SWAP1
0000296c: DUP2
0000296d: ADD
0000296e: SWAP1
0000296f: PUSH1 0x1f
00002971: AND
00002972: DUP1
00002973: ISZERO
00002974: PUSH2 0x2991
00002977: JUMPI
00002978: DUP1
00002979: DUP3
0000297a: SUB
0000297b: DUP1
0000297c: MLOAD
0000297d: PUSH1 0x01
0000297f: DUP4
00002980: PUSH1 0x20
00002982: SUB
00002983: PUSH2 0x0100
00002986: EXP
00002987: SUB
00002988: NOT
00002989: AND
0000298a: DUP2
0000298b: MSTORE
0000298c: PUSH1 0x20
0000298e: ADD
0000298f: SWAP2
00002990: POP
00002991: JUMPDEST
00002992: POP
00002993: SWAP3
00002994: POP
00002995: POP
00002996: POP
00002997: PUSH1 0x40
00002999: MLOAD
0000299a: DUP1
0000299b: SWAP2
0000299c: SUB
0000299d: SWAP1
0000299e: REVERT
0000299f: JUMPDEST
000029a0: POP
000029a1: POP
000029a2: POP
000029a3: SWAP1
000029a4: SUB
000029a5: SWAP1
000029a6: JUMP
000029a7: JUMPDEST
000029a8: PUSH1 0x00
000029aa: DUP2
000029ab: DUP4
000029ac: PUSH2 0x29f6
000029af: JUMPI
000029b0: PUSH1 0x40
000029b2: MLOAD
000029b3: PUSH3 0x461bcd
000029b7: PUSH1 0xe5
000029b9: SHL
000029ba: DUP2
000029bb: MSTORE
000029bc: PUSH1 0x20
000029be: PUSH1 0x04
000029c0: DUP3
000029c1: ADD
000029c2: DUP2
000029c3: DUP2
000029c4: MSTORE
000029c5: DUP4
000029c6: MLOAD
000029c7: PUSH1 0x24
000029c9: DUP5
000029ca: ADD
000029cb: MSTORE
000029cc: DUP4
000029cd: MLOAD
000029ce: SWAP1
000029cf: SWAP3
000029d0: DUP4
000029d1: SWAP3
000029d2: PUSH1 0x44
000029d4: SWAP1
000029d5: SWAP2
000029d6: ADD
000029d7: SWAP2
000029d8: SWAP1
000029d9: DUP6
000029da: ADD
000029db: SWAP1
000029dc: DUP1
000029dd: DUP4
000029de: DUP4
000029df: PUSH1 0x00
000029e1: DUP4
000029e2: ISZERO
000029e3: PUSH2 0x2964
000029e6: JUMPI
000029e7: DUP2
000029e8: DUP2
000029e9: ADD
000029ea: MLOAD
000029eb: DUP4
000029ec: DUP3
000029ed: ADD
000029ee: MSTORE
000029ef: PUSH1 0x20
000029f1: ADD
000029f2: PUSH2 0x294c
000029f5: JUMP
000029f6: JUMPDEST
000029f7: POP
000029f8: PUSH1 0x00
000029fa: DUP4
000029fb: DUP6
000029fc: DUP2
000029fd: PUSH2 0x2a02
00002a00: JUMPI
00002a01: INVALID
00002a02: JUMPDEST
00002a03: DIV
00002a04: SWAP6
00002a05: SWAP5
00002a06: POP
00002a07: POP
00002a08: POP
00002a09: POP
00002a0a: POP
00002a0b: JUMP
00002a0c: JUMPDEST
00002a0d: PUSH2 0x2a1e
00002a10: DUP3
00002a11: PUSH1 0x01
00002a13: PUSH1 0x01
00002a15: PUSH1 0xa0
00002a17: SHL
00002a18: SUB
00002a19: AND
00002a1a: PUSH2 0x2c24
00002a1d: JUMP
00002a1e: JUMPDEST
00002a1f: PUSH2 0x2a6f
00002a22: JUMPI
00002a23: PUSH1 0x40
00002a25: DUP1
00002a26: MLOAD
00002a27: PUSH3 0x461bcd
00002a2b: PUSH1 0xe5
00002a2d: SHL
00002a2e: DUP2
00002a2f: MSTORE
00002a30: PUSH1 0x20
00002a32: PUSH1 0x04
00002a34: DUP3
00002a35: ADD
00002a36: MSTORE
00002a37: PUSH1 0x1f
00002a39: PUSH1 0x24
00002a3b: DUP3
00002a3c: ADD
00002a3d: MSTORE
00002a3e: PUSH32 0x5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400
00002a5f: PUSH1 0x44
00002a61: DUP3
00002a62: ADD
00002a63: MSTORE
00002a64: SWAP1
00002a65: MLOAD
00002a66: SWAP1
00002a67: DUP2
00002a68: SWAP1
00002a69: SUB
00002a6a: PUSH1 0x64
00002a6c: ADD
00002a6d: SWAP1
00002a6e: REVERT
00002a6f: JUMPDEST
00002a70: PUSH1 0x00
00002a72: PUSH1 0x60
00002a74: DUP4
00002a75: PUSH1 0x01
00002a77: PUSH1 0x01
00002a79: PUSH1 0xa0
00002a7b: SHL
00002a7c: SUB
00002a7d: AND
00002a7e: DUP4
00002a7f: PUSH1 0x40
00002a81: MLOAD
00002a82: DUP1
00002a83: DUP3
00002a84: DUP1
00002a85: MLOAD
00002a86: SWAP1
00002a87: PUSH1 0x20
00002a89: ADD
00002a8a: SWAP1
00002a8b: DUP1
00002a8c: DUP4
00002a8d: DUP4
00002a8e: JUMPDEST
00002a8f: PUSH1 0x20
00002a91: DUP4
00002a92: LT
00002a93: PUSH2 0x2aad
00002a96: JUMPI
00002a97: DUP1
00002a98: MLOAD
00002a99: DUP3
00002a9a: MSTORE
00002a9b: PUSH1 0x1f
00002a9d: NOT
00002a9e: SWAP1
00002a9f: SWAP3
00002aa0: ADD
00002aa1: SWAP2
00002aa2: PUSH1 0x20
00002aa4: SWAP2
00002aa5: DUP3
00002aa6: ADD
00002aa7: SWAP2
00002aa8: ADD
00002aa9: PUSH2 0x2a8e
00002aac: JUMP
00002aad: JUMPDEST
00002aae: PUSH1 0x01
00002ab0: DUP4
00002ab1: PUSH1 0x20
00002ab3: SUB
00002ab4: PUSH2 0x0100
00002ab7: EXP
00002ab8: SUB
00002ab9: DUP1
00002aba: NOT
00002abb: DUP3
00002abc: MLOAD
00002abd: AND
00002abe: DUP2
00002abf: DUP5
00002ac0: MLOAD
00002ac1: AND
00002ac2: DUP1
00002ac3: DUP3
00002ac4: OR
00002ac5: DUP6
00002ac6: MSTORE
00002ac7: POP
00002ac8: POP
00002ac9: POP
00002aca: POP
00002acb: POP
00002acc: POP
00002acd: SWAP1
00002ace: POP
00002acf: ADD
00002ad0: SWAP2
00002ad1: POP
00002ad2: POP
00002ad3: PUSH1 0x00
00002ad5: PUSH1 0x40
00002ad7: MLOAD
00002ad8: DUP1
00002ad9: DUP4
00002ada: SUB
00002adb: DUP2
00002adc: PUSH1 0x00
00002ade: DUP7
00002adf: GAS
00002ae0: CALL
00002ae1: SWAP2
00002ae2: POP
00002ae3: POP
00002ae4: RETURNDATASIZE
00002ae5: DUP1
00002ae6: PUSH1 0x00
00002ae8: DUP2
00002ae9: EQ
00002aea: PUSH2 0x2b0f
00002aed: JUMPI
00002aee: PUSH1 0x40
00002af0: MLOAD
00002af1: SWAP2
00002af2: POP
00002af3: PUSH1 0x1f
00002af5: NOT
00002af6: PUSH1 0x3f
00002af8: RETURNDATASIZE
00002af9: ADD
00002afa: AND
00002afb: DUP3
00002afc: ADD
00002afd: PUSH1 0x40
00002aff: MSTORE
00002b00: RETURNDATASIZE
00002b01: DUP3
00002b02: MSTORE
00002b03: RETURNDATASIZE
00002b04: PUSH1 0x00
00002b06: PUSH1 0x20
00002b08: DUP5
00002b09: ADD
00002b0a: RETURNDATACOPY
00002b0b: PUSH2 0x2b14
00002b0e: JUMP
00002b0f: JUMPDEST
00002b10: PUSH1 0x60
00002b12: SWAP2
00002b13: POP
00002b14: JUMPDEST
00002b15: POP
00002b16: SWAP2
00002b17: POP
00002b18: SWAP2
00002b19: POP
00002b1a: DUP2
00002b1b: PUSH2 0x2b6b
00002b1e: JUMPI
00002b1f: PUSH1 0x40
00002b21: DUP1
00002b22: MLOAD
00002b23: PUSH3 0x461bcd
00002b27: PUSH1 0xe5
00002b29: SHL
00002b2a: DUP2
00002b2b: MSTORE
00002b2c: PUSH1 0x20
00002b2e: PUSH1 0x04
00002b30: DUP3
00002b31: ADD
00002b32: DUP2
00002b33: SWAP1
00002b34: MSTORE
00002b35: PUSH1 0x24
00002b37: DUP3
00002b38: ADD
00002b39: MSTORE
00002b3a: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
00002b5b: PUSH1 0x44
00002b5d: DUP3
00002b5e: ADD
00002b5f: MSTORE
00002b60: SWAP1
00002b61: MLOAD
00002b62: SWAP1
00002b63: DUP2
00002b64: SWAP1
00002b65: SUB
00002b66: PUSH1 0x64
00002b68: ADD
00002b69: SWAP1
00002b6a: REVERT
00002b6b: JUMPDEST
00002b6c: DUP1
00002b6d: MLOAD
00002b6e: ISZERO
00002b6f: PUSH2 0x2bc4
00002b72: JUMPI
00002b73: DUP1
00002b74: DUP1
00002b75: PUSH1 0x20
00002b77: ADD
00002b78: SWAP1
00002b79: MLOAD
00002b7a: PUSH1 0x20
00002b7c: DUP2
00002b7d: LT
00002b7e: ISZERO
00002b7f: PUSH2 0x2b87
00002b82: JUMPI
00002b83: PUSH1 0x00
00002b85: DUP1
00002b86: REVERT
00002b87: JUMPDEST
00002b88: POP
00002b89: MLOAD
00002b8a: PUSH2 0x2bc4
00002b8d: JUMPI
00002b8e: PUSH1 0x40
00002b90: MLOAD
00002b91: PUSH3 0x461bcd
00002b95: PUSH1 0xe5
00002b97: SHL
00002b98: DUP2
00002b99: MSTORE
00002b9a: PUSH1 0x04
00002b9c: ADD
00002b9d: DUP1
00002b9e: DUP1
00002b9f: PUSH1 0x20
00002ba1: ADD
00002ba2: DUP3
00002ba3: DUP2
00002ba4: SUB
00002ba5: DUP3
00002ba6: MSTORE
00002ba7: PUSH1 0x2a
00002ba9: DUP2
00002baa: MSTORE
00002bab: PUSH1 0x20
00002bad: ADD
00002bae: DUP1
00002baf: PUSH2 0x2d61
00002bb2: PUSH1 0x2a
00002bb4: SWAP2
00002bb5: CODECOPY
00002bb6: PUSH1 0x40
00002bb8: ADD
00002bb9: SWAP2
00002bba: POP
00002bbb: POP
00002bbc: PUSH1 0x40
00002bbe: MLOAD
00002bbf: DUP1
00002bc0: SWAP2
00002bc1: SUB
00002bc2: SWAP1
00002bc3: REVERT
00002bc4: JUMPDEST
00002bc5: POP
00002bc6: POP
00002bc7: POP
00002bc8: POP
00002bc9: JUMP
00002bca: JUMPDEST
00002bcb: PUSH1 0x40
00002bcd: DUP1
00002bce: MLOAD
00002bcf: PUSH1 0x01
00002bd1: PUSH1 0x01
00002bd3: PUSH1 0xa0
00002bd5: SHL
00002bd6: SUB
00002bd7: DUP6
00002bd8: DUP2
00002bd9: AND
00002bda: PUSH1 0x24
00002bdc: DUP4
00002bdd: ADD
00002bde: MSTORE
00002bdf: DUP5
00002be0: AND
00002be1: PUSH1 0x44
00002be3: DUP3
00002be4: ADD
00002be5: MSTORE
00002be6: PUSH1 0x64
00002be8: DUP1
00002be9: DUP3
00002bea: ADD
00002beb: DUP5
00002bec: SWAP1
00002bed: MSTORE
00002bee: DUP3
00002bef: MLOAD
00002bf0: DUP1
00002bf1: DUP4
00002bf2: SUB
00002bf3: SWAP1
00002bf4: SWAP2
00002bf5: ADD
00002bf6: DUP2
00002bf7: MSTORE
00002bf8: PUSH1 0x84
00002bfa: SWAP1
00002bfb: SWAP2
00002bfc: ADD
00002bfd: SWAP1
00002bfe: SWAP2
00002bff: MSTORE
00002c00: PUSH1 0x20
00002c02: DUP2
00002c03: ADD
00002c04: DUP1
00002c05: MLOAD
00002c06: PUSH1 0x01
00002c08: PUSH1 0x01
00002c0a: PUSH1 0xe0
00002c0c: SHL
00002c0d: SUB
00002c0e: AND
00002c0f: PUSH4 0x23b872dd
00002c14: PUSH1 0xe0
00002c16: SHL
00002c17: OR
00002c18: SWAP1
00002c19: MSTORE
00002c1a: PUSH2 0x2bc4
00002c1d: SWAP1
00002c1e: DUP6
00002c1f: SWAP1
00002c20: PUSH2 0x2a0c
00002c23: JUMP
00002c24: JUMPDEST
00002c25: PUSH1 0x00
00002c27: DUP2
00002c28: EXTCODEHASH
00002c29: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
00002c4a: DUP2
00002c4b: ISZERO
00002c4c: DUP1
00002c4d: ISZERO
00002c4e: SWAP1
00002c4f: PUSH2 0x2c58
00002c52: JUMPI
00002c53: POP
00002c54: DUP1
00002c55: DUP3
00002c56: EQ
00002c57: ISZERO
00002c58: JUMPDEST
00002c59: SWAP5
00002c5a: SWAP4
00002c5b: POP
00002c5c: POP
00002c5d: POP
00002c5e: POP
00002c5f: JUMP
00002c60: JUMPDEST
00002c61: DUP3
00002c62: DUP1
00002c63: SLOAD
00002c64: PUSH1 0x01
00002c66: DUP2
00002c67: PUSH1 0x01
00002c69: AND
00002c6a: ISZERO
00002c6b: PUSH2 0x0100
00002c6e: MUL
00002c6f: SUB
00002c70: AND
00002c71: PUSH1 0x02
00002c73: SWAP1
00002c74: DIV
00002c75: SWAP1
00002c76: PUSH1 0x00
00002c78: MSTORE
00002c79: PUSH1 0x20
00002c7b: PUSH1 0x00
00002c7d: KECCAK256
00002c7e: SWAP1
00002c7f: PUSH1 0x1f
00002c81: ADD
00002c82: PUSH1 0x20
00002c84: SWAP1
00002c85: DIV
00002c86: DUP2
00002c87: ADD
00002c88: SWAP3
00002c89: DUP3
00002c8a: PUSH1 0x1f
00002c8c: LT
00002c8d: PUSH2 0x2ca1
00002c90: JUMPI
00002c91: DUP1
00002c92: MLOAD
00002c93: PUSH1 0xff
00002c95: NOT
00002c96: AND
00002c97: DUP4
00002c98: DUP1
00002c99: ADD
00002c9a: OR
00002c9b: DUP6
00002c9c: SSTORE
00002c9d: PUSH2 0x2cce
00002ca0: JUMP
00002ca1: JUMPDEST
00002ca2: DUP3
00002ca3: DUP1
00002ca4: ADD
00002ca5: PUSH1 0x01
00002ca7: ADD
00002ca8: DUP6
00002ca9: SSTORE
00002caa: DUP3
00002cab: ISZERO
00002cac: PUSH2 0x2cce
00002caf: JUMPI
00002cb0: SWAP2
00002cb1: DUP3
00002cb2: ADD
00002cb3: JUMPDEST
00002cb4: DUP3
00002cb5: DUP2
00002cb6: GT
00002cb7: ISZERO
00002cb8: PUSH2 0x2cce
00002cbb: JUMPI
00002cbc: DUP3
00002cbd: MLOAD
00002cbe: DUP3
00002cbf: SSTORE
00002cc0: SWAP2
00002cc1: PUSH1 0x20
00002cc3: ADD
00002cc4: SWAP2
00002cc5: SWAP1
00002cc6: PUSH1 0x01
00002cc8: ADD
00002cc9: SWAP1
00002cca: PUSH2 0x2cb3
00002ccd: JUMP
00002cce: JUMPDEST
00002ccf: POP
00002cd0: PUSH2 0x2cda
00002cd3: SWAP3
00002cd4: SWAP2
00002cd5: POP
00002cd6: PUSH2 0x2cde
00002cd9: JUMP
00002cda: JUMPDEST
00002cdb: POP
00002cdc: SWAP1
00002cdd: JUMP
00002cde: JUMPDEST
00002cdf: PUSH2 0x0cfa
00002ce2: SWAP2
00002ce3: SWAP1
00002ce4: JUMPDEST
00002ce5: DUP1
00002ce6: DUP3
00002ce7: GT
00002ce8: ISZERO
00002ce9: PUSH2 0x2cda
00002cec: JUMPI
00002ced: PUSH1 0x00
00002cef: DUP2
00002cf0: SSTORE
00002cf1: PUSH1 0x01
00002cf3: ADD
00002cf4: PUSH2 0x2ce4
00002cf7: JUMP
00002cf8: INVALID
00002cf9: UNKNOWN(0x4F)
00002cfa: PUSH24 0x6e61626c653a206e6577206f776e65722069732074686520
00002d13: PUSH27 0x65726f2061646472657373536166654d6174683a206d756c746970
00002d2f: PUSH13 0x69636174696f6e206f76657266
00002d3d: PUSH13 0x6f7743616c6c6572206973206e
00002d4b: PUSH16 0x74207265776172642064697374726962
00002d5c: PUSH22 0x74696f6e5361666545524332303a204552433230206f
00002d73: PUSH17 0x65726174696f6e20646964206e6f742073
00002d85: PUSH22 0x6363656564a265627a7a723158201e8be1a61db4a7e0
00002d9c: PUSH19 0x2c565ba3db18dddbc38c96341d3b0e6028946b
00002db0: GASPRICE
00002db1: UNKNOWN(0xD6)
00002db2: UNKNOWN(0xCB)
00002db3: DUP14
00002db4: PUSH5 0x736f6c6343
00002dba: STOP
00002dbb: SDIV
00002dbc: GT
00002dbd: STOP
00002dbe: ORIGIN

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xef78d4fd",
            "selector": "0xef78d4fd",
            "calldata_variants": [
                "0xef78d4fd",
                "0xef78d4fd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf83d08ba",
            "selector": "0xf83d08ba",
            "calldata_variants": [
                "0xf83d08ba",
                "0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfc0c546a",
            "selector": "0xfc0c546a",
            "calldata_variants": [
                "0xfc0c546a",
                "0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdf136d65",
            "selector": "0xdf136d65",
            "calldata_variants": [
                "0xdf136d65",
                "0xdf136d650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9fad8ee",
            "selector": "0xe9fad8ee",
            "calldata_variants": [
                "0xe9fad8ee",
                "0xe9fad8ee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb9253c0",
            "selector": "0xeb9253c0",
            "calldata_variants": [
                "0xeb9253c0",
                "0xeb9253c00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xebe2b12b",
            "selector": "0xebe2b12b",
            "calldata_variants": [
                "0xebe2b12b",
                "0xebe2b12b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 11710,
            "type": "tx_origin_used"
        }
    ]
}
medium other codex Votes are not reduced when stake is withdrawn, enabling vote‑reuse if withdrawals occur before proposal end 75 no
view
evidence_json
{
    "evidence": "`voteFor`/`voteAgainst` store vote weight once in `proposals[id].forVotes/againstVotes` and update totals, but `withdraw` only reduces `votes`/`totalVotes` and never adjusts proposal totals.",
    "locations": [
        "contracts/Contract.sol:815",
        "contracts/Contract.sol:826",
        "contracts/Contract.sol:928"
    ],
    "recommendation": "Snapshot voting power at proposal creation and use that snapshot for the entire vote, or track per\u2011proposal vote weights and decrement totals when a voter\u2019s stake decreases. Alternatively, prevent any account that has voted from withdrawing until the proposal ends regardless of `lock`/`breaker` settings.",
    "exploit_scenario": "If `lock` is set shorter than `period` or `breaker` is enabled, a voter can cast a vote, wait for withdrawal to be allowed, withdraw their stake, move it to another address, register, and vote again on the same proposal. The original vote weight remains in `totalForVotes/totalAgainstVotes`, so the same tokens can be counted multiple times, allowing a minority to inflate voting power and potentially pass proposals."
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xe86af7226389ce8fd1815241494429b48c010da28d2833bf9340a72f5c085d19
call_targets: 0x91e0fed1816f96652394423479537da3a4cdc929
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xe86af7226389ce8fd1815241494429b48c010da28d2833bf9340a72f5c085d19",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x91e0fed1816f96652394423479537da3a4cdc929"
    ],
    "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": "0xef78d4fd",
            "selector": "0xef78d4fd",
            "calldata_variants": [
                "0xef78d4fd",
                "0xef78d4fd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf83d08ba",
            "selector": "0xf83d08ba",
            "calldata_variants": [
                "0xf83d08ba",
                "0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfc0c546a",
            "selector": "0xfc0c546a",
            "calldata_variants": [
                "0xfc0c546a",
                "0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdf136d65",
            "selector": "0xdf136d65",
            "calldata_variants": [
                "0xdf136d65",
                "0xdf136d650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9fad8ee",
            "selector": "0xe9fad8ee",
            "calldata_variants": [
                "0xe9fad8ee",
                "0xe9fad8ee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb9253c0",
            "selector": "0xeb9253c0",
            "calldata_variants": [
                "0xeb9253c0",
                "0xeb9253c00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xebe2b12b",
            "selector": "0xebe2b12b",
            "calldata_variants": [
                "0xebe2b12b",
                "0xebe2b12b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 10976,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [
        {
            "pc": 11710,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 1
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xe86af7226389ce8fd1815241494429b48c010da28d2833bf9340a72f5c085d19
call_targets: 0x91e0fed1816f96652394423479537da3a4cdc929
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xe86af7226389ce8fd1815241494429b48c010da28d2833bf9340a72f5c085d19",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x91e0fed1816f96652394423479537da3a4cdc929"
    ],
    "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": "0xef78d4fd",
            "selector": "0xef78d4fd",
            "calldata_variants": [
                "0xef78d4fd",
                "0xef78d4fd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf83d08ba",
            "selector": "0xf83d08ba",
            "calldata_variants": [
                "0xf83d08ba",
                "0xf83d08ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfc0c546a",
            "selector": "0xfc0c546a",
            "calldata_variants": [
                "0xfc0c546a",
                "0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdf136d65",
            "selector": "0xdf136d65",
            "calldata_variants": [
                "0xdf136d65",
                "0xdf136d650000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe9fad8ee",
            "selector": "0xe9fad8ee",
            "calldata_variants": [
                "0xe9fad8ee",
                "0xe9fad8ee0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb9253c0",
            "selector": "0xeb9253c0",
            "calldata_variants": [
                "0xeb9253c0",
                "0xeb9253c00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xebe2b12b",
            "selector": "0xebe2b12b",
            "calldata_variants": [
                "0xebe2b12b",
                "0xebe2b12b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 10976,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": [
        {
            "pc": 11710,
            "type": "tx_origin_used"
        }
    ]
}
low other codex Off‑by‑one proposal IDs cause event IDs to point to the wrong proposal 65 no
view
evidence_json
{
    "evidence": "`proposals[proposalCount++] = Proposal({ id: proposalCount, ...}); emit NewProposal(proposalCount, ...)` uses the post\u2011incremented value for the ID but the pre\u2011incremented value for the storage key.",
    "locations": [
        "contracts/Contract.sol:728",
        "contracts/Contract.sol:733",
        "contracts/Contract.sol:747"
    ],
    "recommendation": "Increment `proposalCount` before use (pre\u2011increment) and use the same value consistently for storage and event emission, or store at `proposalCount` then increment afterward without reusing it in the same statement.",
    "exploit_scenario": "A proposer creates a proposal; the emitted `NewProposal` ID corresponds to the incremented `proposalCount`, but the proposal is stored at the previous index. Users and UIs that follow the event ID will vote on an empty proposal (reverting), effectively DoSing participation for that proposal unless they manually subtract one."
}
low math codex Zero‑vote proposals cannot be tallied due to division by zero 65 no
view
evidence_json
{
    "evidence": "`getStats` calculates `_for = _for.mul(10000).div(_total)` without handling `_total == 0`, and `tallyVotes` relies on `getStats`.",
    "locations": [
        "contracts/Contract.sol:751",
        "contracts/Contract.sol:755",
        "contracts/Contract.sol:769"
    ],
    "recommendation": "Guard `getStats` against `_total == 0` (and `totalVotesAvailable == 0`) by returning zeros, or allow `tallyVotes` to close proposals with zero votes without calling `getStats`.",
    "exploit_scenario": "If no one votes on a proposal, `_total` is zero. `getStats` divides by `_total`, so `tallyVotes` always reverts and the proposal remains open forever. Attackers can create proposals that can never be closed, leading to governance DoS via unbounded open proposals."
}