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

Analysis Run

019be3d6-82bf-71fe-9a54-fe0121f37b3d

complete
Chain ID
1
Address
Block Number
Created
Thu, Jan 22, 2026 3:54 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
Bytecode only
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
40715 artifact.fetch complete 1 / 3 2 months ago
40716 proxy.resolve complete 1 / 3 2 months ago
40717 tool.cast_disasm complete 1 / 3 2 months ago
40718 analysis.bundle complete 1 / 3 2 months ago
40719 capability.graph complete 1 / 3 2 months ago
40720 detector.run complete 1 / 3 2 months ago
40721 validation.fork complete 1 / 3 2 months ago
41289 report.consolidate complete 1 / 6 2 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no not_proxy
Implementation:
Verified Source: no
Proxy evidence
{
    "status": "not_proxy"
}

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Bytecode analysis shows tx.origin usage in guard logic and multiple low-level CALL sites with computed targets/values; no delegatecall/proxy patterns detected in the provided bundle.
View stdout
{"no_findings":false,"summary":"Bytecode analysis shows tx.origin usage in guard logic and multiple low-level CALL sites with computed targets/values; no delegatecall/proxy patterns detected in the provided bundle.","findings":[{"severity":"medium","category":"auth","title":"tx.origin used in guard logic (phishing/authorization risk)","exploit_scenario":"If a privileged path relies on tx.origin (e.g., owner-only or EOA-only checks), an attacker can deploy a malicious contract that the authorized user calls; the malicious contract can then invoke the target while tx.origin remains the user, bypassing intended authorization or access restrictions.","recommendation":"Avoid tx.origin for authorization. Use msg.sender for access control (or signature-based auth such as EIP-712 / ERC-1271 where needed). If the intent is to block contracts, use explicit allowlists and document the limitation rather than tx.origin.","evidence":"Detector flagged \"Authorization based on tx.origin\" with guards at pc 13114 and pc 13193; ORIGIN opcode appears at pc 13193. This is heuristic-only and not tied to a specific sink in the bundle, so impact depends on how the value is used.","locations":["pc:0x333a","pc:0x3389"]},{"severity":"low","category":"reentrancy","title":"Low-level CALLs with computed targets/value (potential untrusted external call / reentrancy)","exploit_scenario":"If any of these CALL targets or ETH values are derived from user-controlled inputs or mutable storage, a malicious callee could reenter before state updates, or cause accounting/invariant issues. This is more likely if the call sends ETH and return-data checks are missing.","recommendation":"Ensure call targets are trusted/whitelisted and apply checks-effects-interactions or a reentrancy guard around state changes. Validate low-level call success and return data where applicable.","evidence":"Callsites list shows CALL opcodes with computed target/value and returndata_checked=null at pc 4481, 5142, 7689, 8101, 12432. Detector findings include \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\"; a validation trace observed a constant target in one run, so this may be a false positive depending on actual runtime paths.","locations":["pc:0x1181","pc:0x1416","pc:0x1e09","pc:0x1fa5","pc:0x3090"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-8f48vv8h
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019be421-05db-7d92-8181-f3c3c1c62746
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.

Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".

Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
mcp startup: no servers

thinking
**Preparing to read JSON schema**

I'm planning to read the BYTECODE_BUNDLE.json file directly to inspect its JSON schema, avoiding skill usage since none are named.
exec
/bin/bash -lc ls in /tmp/codex-8f48vv8h succeeded in 8ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc 'cat BYTECODE_BUNDLE.json' in /tmp/codex-8f48vv8h succeeded in 25ms:
{
  "analysis_artifact": {
    "address": "0x9bc7a1d21a2d38ee313c911e1356c926948fcba1",
    "artifact_hash": "0xc209431f95cebd3b407da8d668373be0c0a225d7d17677259401f1afcb021998",
    "artifact_json": {
      "auth": {
        "guards": [
          {
            "pc": 13114,
            "type": "tx_origin_used"
          },
          {
            "pc": 13193,
            "type": "tx_origin_used"
          }
        ]
      },
      "basic_blocks": [
        {
          "end_pc": 12,

thinking
**Searching large file for specific PC values**

I'm focusing on locating usages around program counters 13114 and 13193 by searching the large file with targeted ripgrep queries to efficiently isolate relevant evidence.
exec
/bin/bash -lc "rg -n \"\\\"pc\\\": 13114\" -n BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h succeeded in 10ms:
9:            "pc": 13114,
10959:                "pc": 13114,
11247:                "pc": 13114,
11535:                "pc": 13114,
11823:                "pc": 13114,
12111:                "pc": 13114,
12399:                "pc": 13114,
12687:                "pc": 13114,
12975:                "pc": 13114,
13263:                "pc": 13114,
13551:                "pc": 13114,
13839:                "pc": 13114,
14127:                "pc": 13114,
14415:                "pc": 13114,
14703:                "pc": 13114,
14991:                "pc": 13114,
15279:                "pc": 13114,
15567:                "pc": 13114,
15855:                "pc": 13114,
16143:                "pc": 13114,

thinking
**Searching for relevant usage**

I'll look for occurrences of "tx_origin_used" to gather more context around the program counter in the evidence/call graph.
exec
/bin/bash -lc 'rg -n "tx_origin_used" BYTECODE_BUNDLE.json' in /tmp/codex-8f48vv8h succeeded in 6ms:
10:            "type": "tx_origin_used"
14:            "type": "tx_origin_used"
10960:                "type": "tx_origin_used"
10964:                "type": "tx_origin_used"
11248:                "type": "tx_origin_used"
11252:                "type": "tx_origin_used"
11536:                "type": "tx_origin_used"
11540:                "type": "tx_origin_used"
11824:                "type": "tx_origin_used"
11828:                "type": "tx_origin_used"
12112:                "type": "tx_origin_used"
12116:                "type": "tx_origin_used"
12400:                "type": "tx_origin_used"
12404:                "type": "tx_origin_used"
12688:                "type": "tx_origin_used"
12692:                "type": "tx_origin_used"
12976:                "type": "tx_origin_used"
12980:                "type": "tx_origin_used"
13264:                "type": "tx_origin_used"
13268:                "type": "tx_origin_used"


thinking
**Weighing severity and evidence for tx.origin detection**

The tx.origin usage suggests an auth/access control guard with potential phishing risks, but without validated detectors or clear sink mapping, severity should likely be medium or cautiously lower; calls to self imply internal logic rather than untrusted external calls, so those likely don't raise issues without further evidence. Next, I'll inspect callsites deeper to clarify findings.
thinking
**Locating callsite data for deeper analysis**

I'm searching the analysis artifact for "callsites" or "evidence_bundle" to find detailed callsite mappings, aiming to clarify tx.origin usage and call targets despite the large file size.
exec
/bin/bash -lc 'rg -n "callsite" BYTECODE_BUNDLE.json | head -n 40' in /tmp/codex-8f48vv8h succeeded in 7ms:
8990:      "callsites": [
21639:          "type": "callsite"
21645:          "type": "callsite"
21651:          "type": "callsite"
21657:          "type": "callsite"
21663:          "type": "callsite"
21669:          "type": "callsite"
21675:          "type": "callsite"
21681:          "type": "callsite"

thinking
**Exploring callsites section**
exec
/bin/bash -lc "sed -n '8970,9045p' BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h succeeded in 18ms:
        },
        {
          "end_pc": 13192,
          "hash": "0xb4dd634182618025ae2f69b8d8b889031005bdc8f9fe79ed0c2729387b4e3c40",
          "opcodes": [
            "SDIV",
            "GT",
            "STOP"
          ],
          "start_pc": 13190
        },
        {
          "end_pc": 13193,
          "hash": "0x28344e83c060719dd0410c65180f83d650a4a604ee866be53ccac80406490113",
          "opcodes": [
            "ORIGIN"
          ],
          "start_pc": 13193
        }
      ],

thinking
**Searching for evidence bundle references**

I'm looking for "evidence_bundle" in the code to check if it contains callsite mappings to functions for call analysis.
exec
/bin/bash -lc 'rg -n "evidence" BYTECODE_BUNDLE.json | head -n 40' in /tmp/codex-8f48vv8h succeeded in 32ms:
17048:      "proxy_evidence": {
21821:      "evidence_json": {
21846:      "evidence_json": {
21907:      "evidence_json": {

thinking
**Inspecting proxy-related code**
exec
/bin/bash -lc "sed -n '16980,17160p' BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h succeeded in 7ms:
          },
          {
            "op": "SLOAD",
            "pc": 9986,
            "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
          },
          {
            "op": "SLOAD",
            "pc": 10263,
            "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
          },
          {
            "op": "SLOAD",
            "pc": 10370,
            "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
          },
          {
            "op": "SLOAD",
            "pc": 10425,
            "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"


thinking
**Identifying security patterns and tx.origin usage**

The contract includes Ownable and a reentrancy guard with explicit error strings, with no delegatecall or proxy patterns detected. Tx.origin is used in runtime bytecode, suggesting possible authorization checks that warrant low-to-medium risk consideration.
thinking
**Confirming reentrancy guard and ERC20 call safety**

The contract uses a reentrancy guard stored in slot 5 with explicit error messaging, indicating awareness of reentrancy risk. It employs a safeERC20 pattern that checks low-level call success, reducing risk from unchecked external calls despite some ambiguous callsite return checks.
exec
/bin/bash -lc "rg -n \"start_pc\\\": 13114\" BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h exited 1 in 8ms:



thinking
**Clarifying address usage and guard location**

The pc 13114 appears in the guards list, not in basic blocks, so treating tx.origin usage as a medium-severity potential auth vulnerability fits given the uncertainty and lack of direct opcode evidence.
thinking
**Assessing external call target trustworthiness**

The analysis shows call targets as constant to the contract itself despite computed expressions, so external calls with untrusted targets remain uncertain; I'll treat the risk as low severity given limited confirmation.
exec
/bin/bash -lc 'rg -n "sink" BYTECODE_BUNDLE.json | head -n 40' in /tmp/codex-8f48vv8h succeeded in 11ms:
10970:          "sinks": {
11258:          "sinks": {
11546:          "sinks": {
11834:          "sinks": {
12122:          "sinks": {
12410:          "sinks": {
12698:          "sinks": {
12986:          "sinks": {
13274:          "sinks": {
13562:          "sinks": {
13850:          "sinks": {
14138:          "sinks": {
14426:          "sinks": {
14714:          "sinks": {
15002:          "sinks": {
15290:          "sinks": {
15578:          "sinks": {
15866:          "sinks": {
16154:          "sinks": {
16442:          "sinks": {

thinking
**Exploring sink sections by function**
exec
/bin/bash -lc "sed -n '10920,11020p' BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h succeeded in 8ms:
        },
        {
          "entry_pc": 2362581449,
          "selector": "0x715018a6"
        },
        {
          "entry_pc": 2376452955,
          "selector": "0x8cd221c9"
        },
        {
          "entry_pc": null,
          "selector": "0x8da5cb5b"
        },
        {
          "entry_pc": 1254591859,
          "selector": "0x4872ace5"
        },
        {
          "entry_pc": 1327380534,
          "selector": "0x4ac78d73"

thinking
**Inspecting function guards and usage**

Noticed functions are guarded by auth checks using tx_origin; planning to examine more functions and their sink calls around line 10920 for a better understanding.
exec
/bin/bash -lc "sed -n '11020,11220p' BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h succeeded in 12ms:
                "op": "SLOAD",
                "pc": 3011,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
              },
              {
                "op": "SLOAD",
                "pc": 3241,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
              },
              {
                "op": "SLOAD",
                "pc": 3409,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
              },
              {
                "op": "SLOAD",
                "pc": 3429,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
              },
              {

thinking
**Assessing function guard repetition**

I'm checking if identical guard lists appear across multiple function objects, which could indicate global use of certain guards like tx.origin or possible false positives. I'll continue examining the structure to clarify.
exec
/bin/bash -lc "sed -n '11220,11340p' BYTECODE_BUNDLE.json" in /tmp/codex-8f48vv8h succeeded in 9ms:
                "op": "SLOAD",
                "pc": 10370,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
              },
              {
                "op": "SLOAD",
                "pc": 10425,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
              },
              {
                "op": "SLOAD",
                "pc": 10977,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
              },
              {
                "op": "SLOAD",
                "pc": 11577,
                "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
              }
            ],


thinking
**Identifying possible tx.origin misuse but unclear per-function reliability**

Analysis shows repeated storage access patterns across functions, indicating misparsed or aggregated data; the key notable pattern is tx.origin usage likely for anti-bot or caller restriction rather than true ownership control, which is a design choice with trade-offs but not necessarily a security flaw.
thinking
```json
{
  "no_findings": false,
  "summary": "Detected tx.origin usage in guards and low-level CALL sites with computed targets/value; no delegatecall/proxy evidence found.",
  "findings": [
    {
      "severity": "medium",
      "category": "auth",
      "title": "tx.origin used in guard (phishing risk)",
      "description": "The contract uses tx.origin for authorization guards, which can be exploited if an owner signs a transaction to a malicious contract that then calls this contract passing the tx.origin check. This creates a phishing risk by allowing attacker contracts to bypass intended access control.",
      "exploit_scenario": "An attacker tricks the owner into interacting with a malicious contract that subsequently calls this contract, passing the tx.origin check and executing privileged actions.",
      "recommendation": "Replace tx.origin-based authorization with msg.sender or EIP-712 signature verification. If enforcing EOA restrictions, implement explicit allowlists or recognized standards instead of relying on tx.origin.",
      "evidence": [
        "Detector finding 'Authorization based on tx.origin'",
        "ORIGIN opcode usage at pc:0x3389",
        "Authorization guard bytecode at pc:0x333a and pc:0x3389"
      ],
      "locations": [
        "pc:0x333a",
        "pc:0x3389"
      ]
    },
    {
      "severity": "low",
      "category": "reentrancy",
      "title": "External CALLs with computed target/value (possible reentrancy/untrusted call)",
      "description": "The contract performs low-level CALLs with computed target addresses and ETH value transfers without guaranteed return-data checks, which can introduce reentrancy risks or fund loss if targets are user-controlled or malicious.",
      "exploit_scenario": "If the CALL target or transferred ETH value can be influenced by an attacker, a malicious contract could reenter during the call and manipulate state or trap funds.",
      "recommendation": "Ensure external call targets are fixed or validated, employ reentrancy guards around state-changing functions, follow checks-effects-interactions pattern, and verify return values of external calls.",
      "evidence": [
        "Detector findings: 'Untrusted CALL target/value reachable' and 'ETH value transfer possible'",
        "CALL opcodes at pcs: 0x1181, 0x1416, 0x1e09, 0x1fa5, 0x3090",
        "Returndata checked status: unknown"
      ],
      "locations": [
        "pc:0x1181",
        "pc:0x1416",
        "pc:0x1e09",
        "pc:0x1fa5",
        "pc:0x3090"
      ]
    }
  ]
}
```
codex
{"no_findings":false,"summary":"Bytecode analysis shows tx.origin usage in guard logic and multiple low-level CALL sites with computed targets/values; no delegatecall/proxy patterns detected in the provided bundle.","findings":[{"severity":"medium","category":"auth","title":"tx.origin used in guard logic (phishing/authorization risk)","exploit_scenario":"If a privileged path relies on tx.origin (e.g., owner-only or EOA-only checks), an attacker can deploy a malicious contract that the authorized user calls; the malicious contract can then invoke the target while tx.origin remains the user, bypassing intended authorization or access restrictions.","recommendation":"Avoid tx.origin for authorization. Use msg.sender for access control (or signature-based auth such as EIP-712 / ERC-1271 where needed). If the intent is to block contracts, use explicit allowlists and document the limitation rather than tx.origin.","evidence":"Detector flagged \"Authorization based on tx.origin\" with guards at pc 13114 and pc 13193; ORIGIN opcode appears at pc 13193. This is heuristic-only and not tied to a specific sink in the bundle, so impact depends on how the value is used.","locations":["pc:0x333a","pc:0x3389"]},{"severity":"low","category":"reentrancy","title":"Low-level CALLs with computed targets/value (potential untrusted external call / reentrancy)","exploit_scenario":"If any of these CALL targets or ETH values are derived from user-controlled inputs or mutable storage, a malicious callee could reenter before state updates, or cause accounting/invariant issues. This is more likely if the call sends ETH and return-data checks are missing.","recommendation":"Ensure call targets are trusted/whitelisted and apply checks-effects-interactions or a reentrancy guard around state changes. Validate low-level call success and return data where applicable.","evidence":"Callsites list shows CALL opcodes with computed target/value and returndata_checked=null at pc 4481, 5142, 7689, 8101, 12432. Detector findings include \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\"; a validation trace observed a constant target in one run, so this may be a false positive depending on actual runtime paths.","locations":["pc:0x1181","pc:0x1416","pc:0x1e09","pc:0x1fa5","pc:0x3090"]}]}
tokens used
62,720
Metadata
{
    "codex": {
        "ran_at": "2026-01-22T05:18:01.371610+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 26390,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": "Bytecode analysis shows tx.origin usage in guard logic and multiple low-level CALL sites with computed targets/values; no delegatecall/proxy patterns detected in the provided bundle.",
    "raw_final": {
        "summary": "Bytecode analysis shows tx.origin usage in guard logic and multiple low-level CALL sites with computed targets/values; no delegatecall/proxy patterns detected in the provided bundle.",
        "findings": [
            {
                "title": "tx.origin used in guard logic (phishing/authorization risk)",
                "category": "auth",
                "evidence": "Detector flagged \"Authorization based on tx.origin\" with guards at pc 13114 and pc 13193; ORIGIN opcode appears at pc 13193. This is heuristic-only and not tied to a specific sink in the bundle, so impact depends on how the value is used.",
                "severity": "medium",
                "locations": [
                    "pc:0x333a",
                    "pc:0x3389"
                ],
                "recommendation": "Avoid tx.origin for authorization. Use msg.sender for access control (or signature-based auth such as EIP-712 / ERC-1271 where needed). If the intent is to block contracts, use explicit allowlists and document the limitation rather than tx.origin.",
                "exploit_scenario": "If a privileged path relies on tx.origin (e.g., owner-only or EOA-only checks), an attacker can deploy a malicious contract that the authorized user calls; the malicious contract can then invoke the target while tx.origin remains the user, bypassing intended authorization or access restrictions."
            },
            {
                "title": "Low-level CALLs with computed targets/value (potential untrusted external call / reentrancy)",
                "category": "reentrancy",
                "evidence": "Callsites list shows CALL opcodes with computed target/value and returndata_checked=null at pc 4481, 5142, 7689, 8101, 12432. Detector findings include \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\"; a validation trace observed a constant target in one run, so this may be a false positive depending on actual runtime paths.",
                "severity": "low",
                "locations": [
                    "pc:0x1181",
                    "pc:0x1416",
                    "pc:0x1e09",
                    "pc:0x1fa5",
                    "pc:0x3090"
                ],
                "recommendation": "Ensure call targets are trusted/whitelisted and apply checks-effects-interactions or a reentrancy guard around state changes. Validate low-level call success and return data where applicable.",
                "exploit_scenario": "If any of these CALL targets or ETH values are derived from user-controlled inputs or mutable storage, a malicious callee could reenter before state updates, or cause accounting/invariant issues. This is more likely if the call sends ETH and return-data checks are missing."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
8
EXT*/BALANCE
7
Total opcodes
6394
Flags
heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x011f
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x8f32d59b
00000019: GT
0000001a: PUSH2 0x00a0
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xd914cd4b
00000024: GT
00000025: PUSH2 0x0064
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd914cd4b
0000002f: EQ
00000030: PUSH2 0x0609
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf2fde38b
0000003a: EQ
0000003b: PUSH2 0x065a
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf57f881b
00000045: EQ
00000046: PUSH2 0x06ab
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf662b950
00000050: EQ
00000051: PUSH2 0x0710
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xfeae0c59
0000005b: EQ
0000005c: PUSH2 0x0767
0000005f: JUMPI
00000060: PUSH2 0x011f
00000063: JUMP
00000064: JUMPDEST
00000065: DUP1
00000066: PUSH4 0x8f32d59b
0000006b: EQ
0000006c: PUSH2 0x047e
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0x95d4063f
00000076: EQ
00000077: PUSH2 0x04ad
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xa35bd591
00000081: EQ
00000082: PUSH2 0x04eb
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xa63feeef
0000008c: EQ
0000008d: PUSH2 0x0526
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xb2311dfd
00000097: EQ
00000098: PUSH2 0x05b8
0000009b: JUMPI
0000009c: PUSH2 0x011f
0000009f: JUMP
000000a0: JUMPDEST
000000a1: DUP1
000000a2: PUSH4 0x6689598f
000000a7: GT
000000a8: PUSH2 0x00e7
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0x6689598f
000000b2: EQ
000000b3: PUSH2 0x02fd
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0x673a2a1f
000000bd: EQ
000000be: PUSH2 0x0373
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0x715018a6
000000c8: EQ
000000c9: PUSH2 0x03df
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0x8cd221c9
000000d3: EQ
000000d4: PUSH2 0x03f6
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0x8da5cb5b
000000de: EQ
000000df: PUSH2 0x0427
000000e2: JUMPI
000000e3: PUSH2 0x011f
000000e6: JUMP
000000e7: JUMPDEST
000000e8: DUP1
000000e9: PUSH4 0x4872ace5
000000ee: EQ
000000ef: PUSH2 0x0124
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0x4ac78d73
000000f9: EQ
000000fa: PUSH2 0x017b
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0x4f1e3836
00000104: EQ
00000105: PUSH2 0x01f1
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0x590652ce
0000010f: EQ
00000110: PUSH2 0x0243
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0x5b16ebb7
0000011a: EQ
0000011b: PUSH2 0x0294
0000011e: JUMPI
0000011f: JUMPDEST
00000120: PUSH1 0x00
00000122: DUP1
00000123: REVERT
00000124: JUMPDEST
00000125: CALLVALUE
00000126: DUP1
00000127: ISZERO
00000128: PUSH2 0x0130
0000012b: JUMPI
0000012c: PUSH1 0x00
0000012e: DUP1
0000012f: REVERT
00000130: JUMPDEST
00000131: POP
00000132: PUSH2 0x0139
00000135: PUSH2 0x08ca
00000138: JUMP
00000139: JUMPDEST
0000013a: PUSH1 0x40
0000013c: MLOAD
0000013d: DUP1
0000013e: DUP3
0000013f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000154: AND
00000155: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000016a: AND
0000016b: DUP2
0000016c: MSTORE
0000016d: PUSH1 0x20
0000016f: ADD
00000170: SWAP2
00000171: POP
00000172: POP
00000173: PUSH1 0x40
00000175: MLOAD
00000176: DUP1
00000177: SWAP2
00000178: SUB
00000179: SWAP1
0000017a: RETURN
0000017b: JUMPDEST
0000017c: CALLVALUE
0000017d: DUP1
0000017e: ISZERO
0000017f: PUSH2 0x0187
00000182: JUMPI
00000183: PUSH1 0x00
00000185: DUP1
00000186: REVERT
00000187: JUMPDEST
00000188: POP
00000189: PUSH2 0x01d7
0000018c: PUSH1 0x04
0000018e: DUP1
0000018f: CALLDATASIZE
00000190: SUB
00000191: PUSH1 0x40
00000193: DUP2
00000194: LT
00000195: ISZERO
00000196: PUSH2 0x019e
00000199: JUMPI
0000019a: PUSH1 0x00
0000019c: DUP1
0000019d: REVERT
0000019e: JUMPDEST
0000019f: DUP2
000001a0: ADD
000001a1: SWAP1
000001a2: DUP1
000001a3: DUP1
000001a4: CALLDATALOAD
000001a5: PUSH1 0xff
000001a7: AND
000001a8: SWAP1
000001a9: PUSH1 0x20
000001ab: ADD
000001ac: SWAP1
000001ad: SWAP3
000001ae: SWAP2
000001af: SWAP1
000001b0: DUP1
000001b1: CALLDATALOAD
000001b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001c7: AND
000001c8: SWAP1
000001c9: PUSH1 0x20
000001cb: ADD
000001cc: SWAP1
000001cd: SWAP3
000001ce: SWAP2
000001cf: SWAP1
000001d0: POP
000001d1: POP
000001d2: POP
000001d3: PUSH2 0x08f0
000001d6: JUMP
000001d7: JUMPDEST
000001d8: PUSH1 0x40
000001da: MLOAD
000001db: DUP1
000001dc: DUP3
000001dd: ISZERO
000001de: ISZERO
000001df: ISZERO
000001e0: ISZERO
000001e1: DUP2
000001e2: MSTORE
000001e3: PUSH1 0x20
000001e5: ADD
000001e6: SWAP2
000001e7: POP
000001e8: POP
000001e9: PUSH1 0x40
000001eb: MLOAD
000001ec: DUP1
000001ed: SWAP2
000001ee: SUB
000001ef: SWAP1
000001f0: RETURN
000001f1: JUMPDEST
000001f2: CALLVALUE
000001f3: DUP1
000001f4: ISZERO
000001f5: PUSH2 0x01fd
000001f8: JUMPI
000001f9: PUSH1 0x00
000001fb: DUP1
000001fc: REVERT
000001fd: JUMPDEST
000001fe: POP
000001ff: PUSH2 0x022d
00000202: PUSH1 0x04
00000204: DUP1
00000205: CALLDATASIZE
00000206: SUB
00000207: PUSH1 0x20
00000209: DUP2
0000020a: LT
0000020b: ISZERO
0000020c: PUSH2 0x0214
0000020f: JUMPI
00000210: PUSH1 0x00
00000212: DUP1
00000213: REVERT
00000214: JUMPDEST
00000215: DUP2
00000216: ADD
00000217: SWAP1
00000218: DUP1
00000219: DUP1
0000021a: CALLDATALOAD
0000021b: PUSH1 0xff
0000021d: AND
0000021e: SWAP1
0000021f: PUSH1 0x20
00000221: ADD
00000222: SWAP1
00000223: SWAP3
00000224: SWAP2
00000225: SWAP1
00000226: POP
00000227: POP
00000228: POP
00000229: PUSH2 0x0a18
0000022c: JUMP
0000022d: JUMPDEST
0000022e: PUSH1 0x40
00000230: MLOAD
00000231: DUP1
00000232: DUP3
00000233: DUP2
00000234: MSTORE
00000235: PUSH1 0x20
00000237: ADD
00000238: SWAP2
00000239: POP
0000023a: POP
0000023b: PUSH1 0x40
0000023d: MLOAD
0000023e: DUP1
0000023f: SWAP2
00000240: SUB
00000241: SWAP1
00000242: RETURN
00000243: JUMPDEST
00000244: CALLVALUE
00000245: DUP1
00000246: ISZERO
00000247: PUSH2 0x024f
0000024a: JUMPI
0000024b: PUSH1 0x00
0000024d: DUP1
0000024e: REVERT
0000024f: JUMPDEST
00000250: POP
00000251: PUSH2 0x0292
00000254: PUSH1 0x04
00000256: DUP1
00000257: CALLDATASIZE
00000258: SUB
00000259: PUSH1 0x20
0000025b: DUP2
0000025c: LT
0000025d: ISZERO
0000025e: PUSH2 0x0266
00000261: JUMPI
00000262: PUSH1 0x00
00000264: DUP1
00000265: REVERT
00000266: JUMPDEST
00000267: DUP2
00000268: ADD
00000269: SWAP1
0000026a: DUP1
0000026b: DUP1
0000026c: CALLDATALOAD
0000026d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000282: AND
00000283: SWAP1
00000284: PUSH1 0x20
00000286: ADD
00000287: SWAP1
00000288: SWAP3
00000289: SWAP2
0000028a: SWAP1
0000028b: POP
0000028c: POP
0000028d: POP
0000028e: PUSH2 0x0a77
00000291: JUMP
00000292: JUMPDEST
00000293: STOP
00000294: JUMPDEST
00000295: CALLVALUE
00000296: DUP1
00000297: ISZERO
00000298: PUSH2 0x02a0
0000029b: JUMPI
0000029c: PUSH1 0x00
0000029e: DUP1
0000029f: REVERT
000002a0: JUMPDEST
000002a1: POP
000002a2: PUSH2 0x02e3
000002a5: PUSH1 0x04
000002a7: DUP1
000002a8: CALLDATASIZE
000002a9: SUB
000002aa: PUSH1 0x20
000002ac: DUP2
000002ad: LT
000002ae: ISZERO
000002af: PUSH2 0x02b7
000002b2: JUMPI
000002b3: PUSH1 0x00
000002b5: DUP1
000002b6: REVERT
000002b7: JUMPDEST
000002b8: DUP2
000002b9: ADD
000002ba: SWAP1
000002bb: DUP1
000002bc: DUP1
000002bd: CALLDATALOAD
000002be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002d3: AND
000002d4: SWAP1
000002d5: PUSH1 0x20
000002d7: ADD
000002d8: SWAP1
000002d9: SWAP3
000002da: SWAP2
000002db: SWAP1
000002dc: POP
000002dd: POP
000002de: POP
000002df: PUSH2 0x0b35
000002e2: JUMP
000002e3: JUMPDEST
000002e4: PUSH1 0x40
000002e6: MLOAD
000002e7: DUP1
000002e8: DUP3
000002e9: ISZERO
000002ea: ISZERO
000002eb: ISZERO
000002ec: ISZERO
000002ed: DUP2
000002ee: MSTORE
000002ef: PUSH1 0x20
000002f1: ADD
000002f2: SWAP2
000002f3: POP
000002f4: POP
000002f5: PUSH1 0x40
000002f7: MLOAD
000002f8: DUP1
000002f9: SWAP2
000002fa: SUB
000002fb: SWAP1
000002fc: RETURN
000002fd: JUMPDEST
000002fe: CALLVALUE
000002ff: DUP1
00000300: ISZERO
00000301: PUSH2 0x0309
00000304: JUMPI
00000305: PUSH1 0x00
00000307: DUP1
00000308: REVERT
00000309: JUMPDEST
0000030a: POP
0000030b: PUSH2 0x0359
0000030e: PUSH1 0x04
00000310: DUP1
00000311: CALLDATASIZE
00000312: SUB
00000313: PUSH1 0x40
00000315: DUP2
00000316: LT
00000317: ISZERO
00000318: PUSH2 0x0320
0000031b: JUMPI
0000031c: PUSH1 0x00
0000031e: DUP1
0000031f: REVERT
00000320: JUMPDEST
00000321: DUP2
00000322: ADD
00000323: SWAP1
00000324: DUP1
00000325: DUP1
00000326: CALLDATALOAD
00000327: PUSH1 0xff
00000329: AND
0000032a: SWAP1
0000032b: PUSH1 0x20
0000032d: ADD
0000032e: SWAP1
0000032f: SWAP3
00000330: SWAP2
00000331: SWAP1
00000332: DUP1
00000333: CALLDATALOAD
00000334: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000349: AND
0000034a: SWAP1
0000034b: PUSH1 0x20
0000034d: ADD
0000034e: SWAP1
0000034f: SWAP3
00000350: SWAP2
00000351: SWAP1
00000352: POP
00000353: POP
00000354: POP
00000355: PUSH2 0x0b55
00000358: JUMP
00000359: JUMPDEST
0000035a: PUSH1 0x40
0000035c: MLOAD
0000035d: DUP1
0000035e: DUP3
0000035f: ISZERO
00000360: ISZERO
00000361: ISZERO
00000362: ISZERO
00000363: DUP2
00000364: MSTORE
00000365: PUSH1 0x20
00000367: ADD
00000368: SWAP2
00000369: POP
0000036a: POP
0000036b: PUSH1 0x40
0000036d: MLOAD
0000036e: DUP1
0000036f: SWAP2
00000370: SUB
00000371: SWAP1
00000372: RETURN
00000373: JUMPDEST
00000374: CALLVALUE
00000375: DUP1
00000376: ISZERO
00000377: PUSH2 0x037f
0000037a: JUMPI
0000037b: PUSH1 0x00
0000037d: DUP1
0000037e: REVERT
0000037f: JUMPDEST
00000380: POP
00000381: PUSH2 0x0388
00000384: PUSH2 0x0b84
00000387: JUMP
00000388: JUMPDEST
00000389: PUSH1 0x40
0000038b: MLOAD
0000038c: DUP1
0000038d: DUP1
0000038e: PUSH1 0x20
00000390: ADD
00000391: DUP3
00000392: DUP2
00000393: SUB
00000394: DUP3
00000395: MSTORE
00000396: DUP4
00000397: DUP2
00000398: DUP2
00000399: MLOAD
0000039a: DUP2
0000039b: MSTORE
0000039c: PUSH1 0x20
0000039e: ADD
0000039f: SWAP2
000003a0: POP
000003a1: DUP1
000003a2: MLOAD
000003a3: SWAP1
000003a4: PUSH1 0x20
000003a6: ADD
000003a7: SWAP1
000003a8: PUSH1 0x20
000003aa: MUL
000003ab: DUP1
000003ac: DUP4
000003ad: DUP4
000003ae: PUSH1 0x00
000003b0: JUMPDEST
000003b1: DUP4
000003b2: DUP2
000003b3: LT
000003b4: ISZERO
000003b5: PUSH2 0x03cb
000003b8: JUMPI
000003b9: DUP1
000003ba: DUP3
000003bb: ADD
000003bc: MLOAD
000003bd: DUP2
000003be: DUP5
000003bf: ADD
000003c0: MSTORE
000003c1: PUSH1 0x20
000003c3: DUP2
000003c4: ADD
000003c5: SWAP1
000003c6: POP
000003c7: PUSH2 0x03b0
000003ca: JUMP
000003cb: JUMPDEST
000003cc: POP
000003cd: POP
000003ce: POP
000003cf: POP
000003d0: SWAP1
000003d1: POP
000003d2: ADD
000003d3: SWAP3
000003d4: POP
000003d5: POP
000003d6: POP
000003d7: PUSH1 0x40
000003d9: MLOAD
000003da: DUP1
000003db: SWAP2
000003dc: SUB
000003dd: SWAP1
000003de: RETURN
000003df: JUMPDEST
000003e0: CALLVALUE
000003e1: DUP1
000003e2: ISZERO
000003e3: PUSH2 0x03eb
000003e6: JUMPI
000003e7: PUSH1 0x00
000003e9: DUP1
000003ea: REVERT
000003eb: JUMPDEST
000003ec: POP
000003ed: PUSH2 0x03f4
000003f0: PUSH2 0x0c12
000003f3: JUMP
000003f4: JUMPDEST
000003f5: STOP
000003f6: JUMPDEST
000003f7: CALLVALUE
000003f8: DUP1
000003f9: ISZERO
000003fa: PUSH2 0x0402
000003fd: JUMPI
000003fe: PUSH1 0x00
00000400: DUP1
00000401: REVERT
00000402: JUMPDEST
00000403: POP
00000404: PUSH2 0x040b
00000407: PUSH2 0x0d4b
0000040a: JUMP
0000040b: JUMPDEST
0000040c: PUSH1 0x40
0000040e: MLOAD
0000040f: DUP1
00000410: DUP3
00000411: PUSH1 0xff
00000413: AND
00000414: PUSH1 0xff
00000416: AND
00000417: DUP2
00000418: MSTORE
00000419: PUSH1 0x20
0000041b: ADD
0000041c: SWAP2
0000041d: POP
0000041e: POP
0000041f: PUSH1 0x40
00000421: MLOAD
00000422: DUP1
00000423: SWAP2
00000424: SUB
00000425: SWAP1
00000426: RETURN
00000427: JUMPDEST
00000428: CALLVALUE
00000429: DUP1
0000042a: ISZERO
0000042b: PUSH2 0x0433
0000042e: JUMPI
0000042f: PUSH1 0x00
00000431: DUP1
00000432: REVERT
00000433: JUMPDEST
00000434: POP
00000435: PUSH2 0x043c
00000438: PUSH2 0x0d5e
0000043b: JUMP
0000043c: JUMPDEST
0000043d: PUSH1 0x40
0000043f: MLOAD
00000440: DUP1
00000441: DUP3
00000442: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000457: AND
00000458: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000046d: AND
0000046e: DUP2
0000046f: MSTORE
00000470: PUSH1 0x20
00000472: ADD
00000473: SWAP2
00000474: POP
00000475: POP
00000476: PUSH1 0x40
00000478: MLOAD
00000479: DUP1
0000047a: SWAP2
0000047b: SUB
0000047c: SWAP1
0000047d: RETURN
0000047e: JUMPDEST
0000047f: CALLVALUE
00000480: DUP1
00000481: ISZERO
00000482: PUSH2 0x048a
00000485: JUMPI
00000486: PUSH1 0x00
00000488: DUP1
00000489: REVERT
0000048a: JUMPDEST
0000048b: POP
0000048c: PUSH2 0x0493
0000048f: PUSH2 0x0d87
00000492: JUMP
00000493: JUMPDEST
00000494: PUSH1 0x40
00000496: MLOAD
00000497: DUP1
00000498: DUP3
00000499: ISZERO
0000049a: ISZERO
0000049b: ISZERO
0000049c: ISZERO
0000049d: DUP2
0000049e: MSTORE
0000049f: PUSH1 0x20
000004a1: ADD
000004a2: SWAP2
000004a3: POP
000004a4: POP
000004a5: PUSH1 0x40
000004a7: MLOAD
000004a8: DUP1
000004a9: SWAP2
000004aa: SUB
000004ab: SWAP1
000004ac: RETURN
000004ad: JUMPDEST
000004ae: CALLVALUE
000004af: DUP1
000004b0: ISZERO
000004b1: PUSH2 0x04b9
000004b4: JUMPI
000004b5: PUSH1 0x00
000004b7: DUP1
000004b8: REVERT
000004b9: JUMPDEST
000004ba: POP
000004bb: PUSH2 0x04e9
000004be: PUSH1 0x04
000004c0: DUP1
000004c1: CALLDATASIZE
000004c2: SUB
000004c3: PUSH1 0x20
000004c5: DUP2
000004c6: LT
000004c7: ISZERO
000004c8: PUSH2 0x04d0
000004cb: JUMPI
000004cc: PUSH1 0x00
000004ce: DUP1
000004cf: REVERT
000004d0: JUMPDEST
000004d1: DUP2
000004d2: ADD
000004d3: SWAP1
000004d4: DUP1
000004d5: DUP1
000004d6: CALLDATALOAD
000004d7: PUSH1 0xff
000004d9: AND
000004da: SWAP1
000004db: PUSH1 0x20
000004dd: ADD
000004de: SWAP1
000004df: SWAP3
000004e0: SWAP2
000004e1: SWAP1
000004e2: POP
000004e3: POP
000004e4: POP
000004e5: PUSH2 0x0de5
000004e8: JUMP
000004e9: JUMPDEST
000004ea: STOP
000004eb: JUMPDEST
000004ec: CALLVALUE
000004ed: DUP1
000004ee: ISZERO
000004ef: PUSH2 0x04f7
000004f2: JUMPI
000004f3: PUSH1 0x00
000004f5: DUP1
000004f6: REVERT
000004f7: JUMPDEST
000004f8: POP
000004f9: PUSH2 0x0524
000004fc: PUSH1 0x04
000004fe: DUP1
000004ff: CALLDATASIZE
00000500: SUB
00000501: PUSH1 0x20
00000503: DUP2
00000504: LT
00000505: ISZERO
00000506: PUSH2 0x050e
00000509: JUMPI
0000050a: PUSH1 0x00
0000050c: DUP1
0000050d: REVERT
0000050e: JUMPDEST
0000050f: DUP2
00000510: ADD
00000511: SWAP1
00000512: DUP1
00000513: DUP1
00000514: CALLDATALOAD
00000515: SWAP1
00000516: PUSH1 0x20
00000518: ADD
00000519: SWAP1
0000051a: SWAP3
0000051b: SWAP2
0000051c: SWAP1
0000051d: POP
0000051e: POP
0000051f: POP
00000520: PUSH2 0x14bc
00000523: JUMP
00000524: JUMPDEST
00000525: STOP
00000526: JUMPDEST
00000527: CALLVALUE
00000528: DUP1
00000529: ISZERO
0000052a: PUSH2 0x0532
0000052d: JUMPI
0000052e: PUSH1 0x00
00000530: DUP1
00000531: REVERT
00000532: JUMPDEST
00000533: POP
00000534: PUSH2 0x05a2
00000537: PUSH1 0x04
00000539: DUP1
0000053a: CALLDATASIZE
0000053b: SUB
0000053c: PUSH1 0x60
0000053e: DUP2
0000053f: LT
00000540: ISZERO
00000541: PUSH2 0x0549
00000544: JUMPI
00000545: PUSH1 0x00
00000547: DUP1
00000548: REVERT
00000549: JUMPDEST
0000054a: DUP2
0000054b: ADD
0000054c: SWAP1
0000054d: DUP1
0000054e: DUP1
0000054f: CALLDATALOAD
00000550: PUSH1 0xff
00000552: AND
00000553: SWAP1
00000554: PUSH1 0x20
00000556: ADD
00000557: SWAP1
00000558: SWAP3
00000559: SWAP2
0000055a: SWAP1
0000055b: DUP1
0000055c: CALLDATALOAD
0000055d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000572: AND
00000573: SWAP1
00000574: PUSH1 0x20
00000576: ADD
00000577: SWAP1
00000578: SWAP3
00000579: SWAP2
0000057a: SWAP1
0000057b: DUP1
0000057c: CALLDATALOAD
0000057d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000592: AND
00000593: SWAP1
00000594: PUSH1 0x20
00000596: ADD
00000597: SWAP1
00000598: SWAP3
00000599: SWAP2
0000059a: SWAP1
0000059b: POP
0000059c: POP
0000059d: POP
0000059e: PUSH2 0x166f
000005a1: JUMP
000005a2: JUMPDEST
000005a3: PUSH1 0x40
000005a5: MLOAD
000005a6: DUP1
000005a7: DUP3
000005a8: DUP2
000005a9: MSTORE
000005aa: PUSH1 0x20
000005ac: ADD
000005ad: SWAP2
000005ae: POP
000005af: POP
000005b0: PUSH1 0x40
000005b2: MLOAD
000005b3: DUP1
000005b4: SWAP2
000005b5: SUB
000005b6: SWAP1
000005b7: RETURN
000005b8: JUMPDEST
000005b9: CALLVALUE
000005ba: DUP1
000005bb: ISZERO
000005bc: PUSH2 0x05c4
000005bf: JUMPI
000005c0: PUSH1 0x00
000005c2: DUP1
000005c3: REVERT
000005c4: JUMPDEST
000005c5: POP
000005c6: PUSH2 0x0607
000005c9: PUSH1 0x04
000005cb: DUP1
000005cc: CALLDATASIZE
000005cd: SUB
000005ce: PUSH1 0x20
000005d0: DUP2
000005d1: LT
000005d2: ISZERO
000005d3: PUSH2 0x05db
000005d6: JUMPI
000005d7: PUSH1 0x00
000005d9: DUP1
000005da: REVERT
000005db: JUMPDEST
000005dc: DUP2
000005dd: ADD
000005de: SWAP1
000005df: DUP1
000005e0: DUP1
000005e1: CALLDATALOAD
000005e2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005f7: AND
000005f8: SWAP1
000005f9: PUSH1 0x20
000005fb: ADD
000005fc: SWAP1
000005fd: SWAP3
000005fe: SWAP2
000005ff: SWAP1
00000600: POP
00000601: POP
00000602: POP
00000603: PUSH2 0x173e
00000606: JUMP
00000607: JUMPDEST
00000608: STOP
00000609: JUMPDEST
0000060a: CALLVALUE
0000060b: DUP1
0000060c: ISZERO
0000060d: PUSH2 0x0615
00000610: JUMPI
00000611: PUSH1 0x00
00000613: DUP1
00000614: REVERT
00000615: JUMPDEST
00000616: POP
00000617: PUSH2 0x0658
0000061a: PUSH1 0x04
0000061c: DUP1
0000061d: CALLDATASIZE
0000061e: SUB
0000061f: PUSH1 0x20
00000621: DUP2
00000622: LT
00000623: ISZERO
00000624: PUSH2 0x062c
00000627: JUMPI
00000628: PUSH1 0x00
0000062a: DUP1
0000062b: REVERT
0000062c: JUMPDEST
0000062d: DUP2
0000062e: ADD
0000062f: SWAP1
00000630: DUP1
00000631: DUP1
00000632: CALLDATALOAD
00000633: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000648: AND
00000649: SWAP1
0000064a: PUSH1 0x20
0000064c: ADD
0000064d: SWAP1
0000064e: SWAP3
0000064f: SWAP2
00000650: SWAP1
00000651: POP
00000652: POP
00000653: POP
00000654: PUSH2 0x17fc
00000657: JUMP
00000658: JUMPDEST
00000659: STOP
0000065a: JUMPDEST
0000065b: CALLVALUE
0000065c: DUP1
0000065d: ISZERO
0000065e: PUSH2 0x0666
00000661: JUMPI
00000662: PUSH1 0x00
00000664: DUP1
00000665: REVERT
00000666: JUMPDEST
00000667: POP
00000668: PUSH2 0x06a9
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: DUP2
0000067f: ADD
00000680: SWAP1
00000681: DUP1
00000682: DUP1
00000683: CALLDATALOAD
00000684: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000699: AND
0000069a: SWAP1
0000069b: PUSH1 0x20
0000069d: ADD
0000069e: SWAP1
0000069f: SWAP3
000006a0: SWAP2
000006a1: SWAP1
000006a2: POP
000006a3: POP
000006a4: POP
000006a5: PUSH2 0x19fd
000006a8: JUMP
000006a9: JUMPDEST
000006aa: STOP
000006ab: JUMPDEST
000006ac: PUSH2 0x070e
000006af: PUSH1 0x04
000006b1: DUP1
000006b2: CALLDATASIZE
000006b3: SUB
000006b4: PUSH1 0x80
000006b6: DUP2
000006b7: LT
000006b8: ISZERO
000006b9: PUSH2 0x06c1
000006bc: JUMPI
000006bd: PUSH1 0x00
000006bf: DUP1
000006c0: REVERT
000006c1: JUMPDEST
000006c2: DUP2
000006c3: ADD
000006c4: SWAP1
000006c5: DUP1
000006c6: DUP1
000006c7: CALLDATALOAD
000006c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006dd: AND
000006de: SWAP1
000006df: PUSH1 0x20
000006e1: ADD
000006e2: SWAP1
000006e3: SWAP3
000006e4: SWAP2
000006e5: SWAP1
000006e6: DUP1
000006e7: CALLDATALOAD
000006e8: SWAP1
000006e9: PUSH1 0x20
000006eb: ADD
000006ec: SWAP1
000006ed: SWAP3
000006ee: SWAP2
000006ef: SWAP1
000006f0: DUP1
000006f1: CALLDATALOAD
000006f2: SWAP1
000006f3: PUSH1 0x20
000006f5: ADD
000006f6: SWAP1
000006f7: SWAP3
000006f8: SWAP2
000006f9: SWAP1
000006fa: DUP1
000006fb: CALLDATALOAD
000006fc: PUSH1 0xff
000006fe: AND
000006ff: SWAP1
00000700: PUSH1 0x20
00000702: ADD
00000703: SWAP1
00000704: SWAP3
00000705: SWAP2
00000706: SWAP1
00000707: POP
00000708: POP
00000709: POP
0000070a: PUSH2 0x1a83
0000070d: JUMP
0000070e: JUMPDEST
0000070f: STOP
00000710: JUMPDEST
00000711: CALLVALUE
00000712: DUP1
00000713: ISZERO
00000714: PUSH2 0x071c
00000717: JUMPI
00000718: PUSH1 0x00
0000071a: DUP1
0000071b: REVERT
0000071c: JUMPDEST
0000071d: POP
0000071e: PUSH2 0x0725
00000721: PUSH2 0x287c
00000724: JUMP
00000725: JUMPDEST
00000726: PUSH1 0x40
00000728: MLOAD
00000729: DUP1
0000072a: DUP3
0000072b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000740: AND
00000741: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000756: AND
00000757: DUP2
00000758: MSTORE
00000759: PUSH1 0x20
0000075b: ADD
0000075c: SWAP2
0000075d: POP
0000075e: POP
0000075f: PUSH1 0x40
00000761: MLOAD
00000762: DUP1
00000763: SWAP2
00000764: SUB
00000765: SWAP1
00000766: RETURN
00000767: JUMPDEST
00000768: CALLVALUE
00000769: DUP1
0000076a: ISZERO
0000076b: PUSH2 0x0773
0000076e: JUMPI
0000076f: PUSH1 0x00
00000771: DUP1
00000772: REVERT
00000773: JUMPDEST
00000774: POP
00000775: PUSH2 0x07e3
00000778: PUSH1 0x04
0000077a: DUP1
0000077b: CALLDATASIZE
0000077c: SUB
0000077d: PUSH1 0x60
0000077f: DUP2
00000780: LT
00000781: ISZERO
00000782: PUSH2 0x078a
00000785: JUMPI
00000786: PUSH1 0x00
00000788: DUP1
00000789: REVERT
0000078a: JUMPDEST
0000078b: DUP2
0000078c: ADD
0000078d: SWAP1
0000078e: DUP1
0000078f: DUP1
00000790: CALLDATALOAD
00000791: PUSH1 0xff
00000793: AND
00000794: SWAP1
00000795: PUSH1 0x20
00000797: ADD
00000798: SWAP1
00000799: SWAP3
0000079a: SWAP2
0000079b: SWAP1
0000079c: DUP1
0000079d: CALLDATALOAD
0000079e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007b3: AND
000007b4: SWAP1
000007b5: PUSH1 0x20
000007b7: ADD
000007b8: SWAP1
000007b9: SWAP3
000007ba: SWAP2
000007bb: SWAP1
000007bc: DUP1
000007bd: CALLDATALOAD
000007be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007d3: AND
000007d4: SWAP1
000007d5: PUSH1 0x20
000007d7: ADD
000007d8: SWAP1
000007d9: SWAP3
000007da: SWAP2
000007db: SWAP1
000007dc: POP
000007dd: POP
000007de: POP
000007df: PUSH2 0x28a2
000007e2: JUMP
000007e3: JUMPDEST
000007e4: PUSH1 0x40
000007e6: MLOAD
000007e7: DUP1
000007e8: DUP1
000007e9: PUSH1 0x20
000007eb: ADD
000007ec: DUP1
000007ed: PUSH1 0x20
000007ef: ADD
000007f0: DUP1
000007f1: PUSH1 0x20
000007f3: ADD
000007f4: DUP5
000007f5: DUP2
000007f6: SUB
000007f7: DUP5
000007f8: MSTORE
000007f9: DUP8
000007fa: DUP2
000007fb: DUP2
000007fc: MLOAD
000007fd: DUP2
000007fe: MSTORE
000007ff: PUSH1 0x20
00000801: ADD
00000802: SWAP2
00000803: POP
00000804: DUP1
00000805: MLOAD
00000806: SWAP1
00000807: PUSH1 0x20
00000809: ADD
0000080a: SWAP1
0000080b: PUSH1 0x20
0000080d: MUL
0000080e: DUP1
0000080f: DUP4
00000810: DUP4
00000811: PUSH1 0x00
00000813: JUMPDEST
00000814: DUP4
00000815: DUP2
00000816: LT
00000817: ISZERO
00000818: PUSH2 0x082e
0000081b: JUMPI
0000081c: DUP1
0000081d: DUP3
0000081e: ADD
0000081f: MLOAD
00000820: DUP2
00000821: DUP5
00000822: ADD
00000823: MSTORE
00000824: PUSH1 0x20
00000826: DUP2
00000827: ADD
00000828: SWAP1
00000829: POP
0000082a: PUSH2 0x0813
0000082d: JUMP
0000082e: JUMPDEST
0000082f: POP
00000830: POP
00000831: POP
00000832: POP
00000833: SWAP1
00000834: POP
00000835: ADD
00000836: DUP5
00000837: DUP2
00000838: SUB
00000839: DUP4
0000083a: MSTORE
0000083b: DUP7
0000083c: DUP2
0000083d: DUP2
0000083e: MLOAD
0000083f: DUP2
00000840: MSTORE
00000841: PUSH1 0x20
00000843: ADD
00000844: SWAP2
00000845: POP
00000846: DUP1
00000847: MLOAD
00000848: SWAP1
00000849: PUSH1 0x20
0000084b: ADD
0000084c: SWAP1
0000084d: PUSH1 0x20
0000084f: MUL
00000850: DUP1
00000851: DUP4
00000852: DUP4
00000853: PUSH1 0x00
00000855: JUMPDEST
00000856: DUP4
00000857: DUP2
00000858: LT
00000859: ISZERO
0000085a: PUSH2 0x0870
0000085d: JUMPI
0000085e: DUP1
0000085f: DUP3
00000860: ADD
00000861: MLOAD
00000862: DUP2
00000863: DUP5
00000864: ADD
00000865: MSTORE
00000866: PUSH1 0x20
00000868: DUP2
00000869: ADD
0000086a: SWAP1
0000086b: POP
0000086c: PUSH2 0x0855
0000086f: JUMP
00000870: JUMPDEST
00000871: POP
00000872: POP
00000873: POP
00000874: POP
00000875: SWAP1
00000876: POP
00000877: ADD
00000878: DUP5
00000879: DUP2
0000087a: SUB
0000087b: DUP3
0000087c: MSTORE
0000087d: DUP6
0000087e: DUP2
0000087f: DUP2
00000880: MLOAD
00000881: DUP2
00000882: MSTORE
00000883: PUSH1 0x20
00000885: ADD
00000886: SWAP2
00000887: POP
00000888: DUP1
00000889: MLOAD
0000088a: SWAP1
0000088b: PUSH1 0x20
0000088d: ADD
0000088e: SWAP1
0000088f: PUSH1 0x20
00000891: MUL
00000892: DUP1
00000893: DUP4
00000894: DUP4
00000895: PUSH1 0x00
00000897: JUMPDEST
00000898: DUP4
00000899: DUP2
0000089a: LT
0000089b: ISZERO
0000089c: PUSH2 0x08b2
0000089f: JUMPI
000008a0: DUP1
000008a1: DUP3
000008a2: ADD
000008a3: MLOAD
000008a4: DUP2
000008a5: DUP5
000008a6: ADD
000008a7: MSTORE
000008a8: PUSH1 0x20
000008aa: DUP2
000008ab: ADD
000008ac: SWAP1
000008ad: POP
000008ae: PUSH2 0x0897
000008b1: JUMP
000008b2: JUMPDEST
000008b3: POP
000008b4: POP
000008b5: POP
000008b6: POP
000008b7: SWAP1
000008b8: POP
000008b9: ADD
000008ba: SWAP7
000008bb: POP
000008bc: POP
000008bd: POP
000008be: POP
000008bf: POP
000008c0: POP
000008c1: POP
000008c2: PUSH1 0x40
000008c4: MLOAD
000008c5: DUP1
000008c6: SWAP2
000008c7: SUB
000008c8: SWAP1
000008c9: RETURN
000008ca: JUMPDEST
000008cb: PUSH1 0x08
000008cd: PUSH1 0x00
000008cf: SWAP1
000008d0: SLOAD
000008d1: SWAP1
000008d2: PUSH2 0x0100
000008d5: EXP
000008d6: SWAP1
000008d7: DIV
000008d8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008ed: AND
000008ee: DUP2
000008ef: JUMP
000008f0: JUMPDEST
000008f1: PUSH1 0x00
000008f3: DUP1
000008f4: DUP4
000008f5: PUSH1 0xff
000008f7: AND
000008f8: EQ
000008f9: ISZERO
000008fa: PUSH2 0x0910
000008fd: JUMPI
000008fe: PUSH1 0x05
00000900: PUSH1 0x01
00000902: SWAP1
00000903: SLOAD
00000904: SWAP1
00000905: PUSH2 0x0100
00000908: EXP
00000909: SWAP1
0000090a: DIV
0000090b: PUSH1 0xff
0000090d: AND
0000090e: SWAP3
0000090f: POP
00000910: JUMPDEST
00000911: TIMESTAMP
00000912: PUSH2 0x091a
00000915: DUP5
00000916: PUSH2 0x0a18
00000919: JUMP
0000091a: JUMPDEST
0000091b: GT
0000091c: DUP1
0000091d: PUSH2 0x0986
00000920: JUMPI
00000921: POP
00000922: PUSH1 0x09
00000924: PUSH1 0x00
00000926: DUP5
00000927: PUSH1 0xff
00000929: AND
0000092a: PUSH1 0xff
0000092c: AND
0000092d: DUP2
0000092e: MSTORE
0000092f: PUSH1 0x20
00000931: ADD
00000932: SWAP1
00000933: DUP2
00000934: MSTORE
00000935: PUSH1 0x20
00000937: ADD
00000938: PUSH1 0x00
0000093a: KECCAK256
0000093b: PUSH1 0x00
0000093d: DUP4
0000093e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000953: AND
00000954: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000969: AND
0000096a: DUP2
0000096b: MSTORE
0000096c: PUSH1 0x20
0000096e: ADD
0000096f: SWAP1
00000970: DUP2
00000971: MSTORE
00000972: PUSH1 0x20
00000974: ADD
00000975: PUSH1 0x00
00000977: KECCAK256
00000978: PUSH1 0x00
0000097a: SWAP1
0000097b: SLOAD
0000097c: SWAP1
0000097d: PUSH2 0x0100
00000980: EXP
00000981: SWAP1
00000982: DIV
00000983: PUSH1 0xff
00000985: AND
00000986: JUMPDEST
00000987: ISZERO
00000988: PUSH2 0x0994
0000098b: JUMPI
0000098c: PUSH1 0x00
0000098e: SWAP1
0000098f: POP
00000990: PUSH2 0x0a12
00000993: JUMP
00000994: JUMPDEST
00000995: PUSH1 0x00
00000997: DUP1
00000998: SWAP1
00000999: POP
0000099a: PUSH1 0x00
0000099c: DUP1
0000099d: SWAP1
0000099e: POP
0000099f: JUMPDEST
000009a0: PUSH1 0x03
000009a2: DUP1
000009a3: SLOAD
000009a4: SWAP1
000009a5: POP
000009a6: DUP2
000009a7: LT
000009a8: ISZERO
000009a9: PUSH2 0x0a0c
000009ac: JUMPI
000009ad: PUSH1 0x00
000009af: PUSH2 0x09f0
000009b2: DUP7
000009b3: PUSH1 0x03
000009b5: DUP5
000009b6: DUP2
000009b7: SLOAD
000009b8: DUP2
000009b9: LT
000009ba: PUSH2 0x09bf
000009bd: JUMPI
000009be: INVALID
000009bf: JUMPDEST
000009c0: SWAP1
000009c1: PUSH1 0x00
000009c3: MSTORE
000009c4: PUSH1 0x20
000009c6: PUSH1 0x00
000009c8: KECCAK256
000009c9: ADD
000009ca: PUSH1 0x00
000009cc: SWAP1
000009cd: SLOAD
000009ce: SWAP1
000009cf: PUSH2 0x0100
000009d2: EXP
000009d3: SWAP1
000009d4: DIV
000009d5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009ea: AND
000009eb: DUP8
000009ec: PUSH2 0x166f
000009ef: JUMP
000009f0: JUMPDEST
000009f1: GT
000009f2: ISZERO
000009f3: PUSH2 0x09ff
000009f6: JUMPI
000009f7: PUSH1 0x01
000009f9: SWAP2
000009fa: POP
000009fb: PUSH2 0x0a0c
000009fe: JUMP
000009ff: JUMPDEST
00000a00: DUP1
00000a01: DUP1
00000a02: PUSH1 0x01
00000a04: ADD
00000a05: SWAP2
00000a06: POP
00000a07: POP
00000a08: PUSH2 0x099f
00000a0b: JUMP
00000a0c: JUMPDEST
00000a0d: POP
00000a0e: DUP1
00000a0f: SWAP2
00000a10: POP
00000a11: POP
00000a12: JUMPDEST
00000a13: SWAP3
00000a14: SWAP2
00000a15: POP
00000a16: POP
00000a17: JUMP
00000a18: JUMPDEST
00000a19: PUSH1 0x00
00000a1b: DUP1
00000a1c: DUP3
00000a1d: PUSH1 0xff
00000a1f: AND
00000a20: EQ
00000a21: ISZERO
00000a22: PUSH2 0x0a55
00000a25: JUMPI
00000a26: PUSH1 0x04
00000a28: PUSH1 0x00
00000a2a: PUSH1 0x05
00000a2c: PUSH1 0x01
00000a2e: SWAP1
00000a2f: SLOAD
00000a30: SWAP1
00000a31: PUSH2 0x0100
00000a34: EXP
00000a35: SWAP1
00000a36: DIV
00000a37: PUSH1 0xff
00000a39: AND
00000a3a: PUSH1 0xff
00000a3c: AND
00000a3d: PUSH1 0xff
00000a3f: AND
00000a40: DUP2
00000a41: MSTORE
00000a42: PUSH1 0x20
00000a44: ADD
00000a45: SWAP1
00000a46: DUP2
00000a47: MSTORE
00000a48: PUSH1 0x20
00000a4a: ADD
00000a4b: PUSH1 0x00
00000a4d: KECCAK256
00000a4e: SLOAD
00000a4f: SWAP1
00000a50: POP
00000a51: PUSH2 0x0a72
00000a54: JUMP
00000a55: JUMPDEST
00000a56: PUSH1 0x04
00000a58: PUSH1 0x00
00000a5a: DUP4
00000a5b: PUSH1 0xff
00000a5d: AND
00000a5e: PUSH1 0xff
00000a60: AND
00000a61: DUP2
00000a62: MSTORE
00000a63: PUSH1 0x20
00000a65: ADD
00000a66: SWAP1
00000a67: DUP2
00000a68: MSTORE
00000a69: PUSH1 0x20
00000a6b: ADD
00000a6c: PUSH1 0x00
00000a6e: KECCAK256
00000a6f: SLOAD
00000a70: SWAP1
00000a71: POP
00000a72: JUMPDEST
00000a73: SWAP2
00000a74: SWAP1
00000a75: POP
00000a76: JUMP
00000a77: JUMPDEST
00000a78: PUSH2 0x0a7f
00000a7b: PUSH2 0x0d87
00000a7e: JUMP
00000a7f: JUMPDEST
00000a80: PUSH2 0x0af1
00000a83: JUMPI
00000a84: PUSH1 0x40
00000a86: MLOAD
00000a87: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000aa8: DUP2
00000aa9: MSTORE
00000aaa: PUSH1 0x04
00000aac: ADD
00000aad: DUP1
00000aae: DUP1
00000aaf: PUSH1 0x20
00000ab1: ADD
00000ab2: DUP3
00000ab3: DUP2
00000ab4: SUB
00000ab5: DUP3
00000ab6: MSTORE
00000ab7: PUSH1 0x20
00000ab9: DUP2
00000aba: MSTORE
00000abb: PUSH1 0x20
00000abd: ADD
00000abe: DUP1
00000abf: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00000ae0: DUP2
00000ae1: MSTORE
00000ae2: POP
00000ae3: PUSH1 0x20
00000ae5: ADD
00000ae6: SWAP2
00000ae7: POP
00000ae8: POP
00000ae9: PUSH1 0x40
00000aeb: MLOAD
00000aec: DUP1
00000aed: SWAP2
00000aee: SUB
00000aef: SWAP1
00000af0: REVERT
00000af1: JUMPDEST
00000af2: DUP1
00000af3: PUSH1 0x07
00000af5: PUSH1 0x00
00000af7: PUSH2 0x0100
00000afa: EXP
00000afb: DUP2
00000afc: SLOAD
00000afd: DUP2
00000afe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b13: MUL
00000b14: NOT
00000b15: AND
00000b16: SWAP1
00000b17: DUP4
00000b18: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b2d: AND
00000b2e: MUL
00000b2f: OR
00000b30: SWAP1
00000b31: SSTORE
00000b32: POP
00000b33: POP
00000b34: JUMP
00000b35: JUMPDEST
00000b36: PUSH1 0x06
00000b38: PUSH1 0x20
00000b3a: MSTORE
00000b3b: DUP1
00000b3c: PUSH1 0x00
00000b3e: MSTORE
00000b3f: PUSH1 0x40
00000b41: PUSH1 0x00
00000b43: KECCAK256
00000b44: PUSH1 0x00
00000b46: SWAP2
00000b47: POP
00000b48: SLOAD
00000b49: SWAP1
00000b4a: PUSH2 0x0100
00000b4d: EXP
00000b4e: SWAP1
00000b4f: DIV
00000b50: PUSH1 0xff
00000b52: AND
00000b53: DUP2
00000b54: JUMP
00000b55: JUMPDEST
00000b56: PUSH1 0x09
00000b58: PUSH1 0x20
00000b5a: MSTORE
00000b5b: DUP2
00000b5c: PUSH1 0x00
00000b5e: MSTORE
00000b5f: PUSH1 0x40
00000b61: PUSH1 0x00
00000b63: KECCAK256
00000b64: PUSH1 0x20
00000b66: MSTORE
00000b67: DUP1
00000b68: PUSH1 0x00
00000b6a: MSTORE
00000b6b: PUSH1 0x40
00000b6d: PUSH1 0x00
00000b6f: KECCAK256
00000b70: PUSH1 0x00
00000b72: SWAP2
00000b73: POP
00000b74: SWAP2
00000b75: POP
00000b76: SWAP1
00000b77: SLOAD
00000b78: SWAP1
00000b79: PUSH2 0x0100
00000b7c: EXP
00000b7d: SWAP1
00000b7e: DIV
00000b7f: PUSH1 0xff
00000b81: AND
00000b82: DUP2
00000b83: JUMP
00000b84: JUMPDEST
00000b85: PUSH1 0x60
00000b87: PUSH1 0x03
00000b89: DUP1
00000b8a: SLOAD
00000b8b: DUP1
00000b8c: PUSH1 0x20
00000b8e: MUL
00000b8f: PUSH1 0x20
00000b91: ADD
00000b92: PUSH1 0x40
00000b94: MLOAD
00000b95: SWAP1
00000b96: DUP2
00000b97: ADD
00000b98: PUSH1 0x40
00000b9a: MSTORE
00000b9b: DUP1
00000b9c: SWAP3
00000b9d: SWAP2
00000b9e: SWAP1
00000b9f: DUP2
00000ba0: DUP2
00000ba1: MSTORE
00000ba2: PUSH1 0x20
00000ba4: ADD
00000ba5: DUP3
00000ba6: DUP1
00000ba7: SLOAD
00000ba8: DUP1
00000ba9: ISZERO
00000baa: PUSH2 0x0c08
00000bad: JUMPI
00000bae: PUSH1 0x20
00000bb0: MUL
00000bb1: DUP3
00000bb2: ADD
00000bb3: SWAP2
00000bb4: SWAP1
00000bb5: PUSH1 0x00
00000bb7: MSTORE
00000bb8: PUSH1 0x20
00000bba: PUSH1 0x00
00000bbc: KECCAK256
00000bbd: SWAP1
00000bbe: JUMPDEST
00000bbf: DUP2
00000bc0: PUSH1 0x00
00000bc2: SWAP1
00000bc3: SLOAD
00000bc4: SWAP1
00000bc5: PUSH2 0x0100
00000bc8: EXP
00000bc9: SWAP1
00000bca: DIV
00000bcb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000be0: AND
00000be1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bf6: AND
00000bf7: DUP2
00000bf8: MSTORE
00000bf9: PUSH1 0x20
00000bfb: ADD
00000bfc: SWAP1
00000bfd: PUSH1 0x01
00000bff: ADD
00000c00: SWAP1
00000c01: DUP1
00000c02: DUP4
00000c03: GT
00000c04: PUSH2 0x0bbe
00000c07: JUMPI
00000c08: JUMPDEST
00000c09: POP
00000c0a: POP
00000c0b: POP
00000c0c: POP
00000c0d: POP
00000c0e: SWAP1
00000c0f: POP
00000c10: SWAP1
00000c11: JUMP
00000c12: JUMPDEST
00000c13: PUSH2 0x0c1a
00000c16: PUSH2 0x0d87
00000c19: JUMP
00000c1a: JUMPDEST
00000c1b: PUSH2 0x0c8c
00000c1e: JUMPI
00000c1f: PUSH1 0x40
00000c21: MLOAD
00000c22: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c43: DUP2
00000c44: MSTORE
00000c45: PUSH1 0x04
00000c47: ADD
00000c48: DUP1
00000c49: DUP1
00000c4a: PUSH1 0x20
00000c4c: ADD
00000c4d: DUP3
00000c4e: DUP2
00000c4f: SUB
00000c50: DUP3
00000c51: MSTORE
00000c52: PUSH1 0x20
00000c54: DUP2
00000c55: MSTORE
00000c56: PUSH1 0x20
00000c58: ADD
00000c59: DUP1
00000c5a: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00000c7b: DUP2
00000c7c: MSTORE
00000c7d: POP
00000c7e: PUSH1 0x20
00000c80: ADD
00000c81: SWAP2
00000c82: POP
00000c83: POP
00000c84: PUSH1 0x40
00000c86: MLOAD
00000c87: DUP1
00000c88: SWAP2
00000c89: SUB
00000c8a: SWAP1
00000c8b: REVERT
00000c8c: JUMPDEST
00000c8d: PUSH1 0x00
00000c8f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ca4: AND
00000ca5: PUSH1 0x00
00000ca7: DUP1
00000ca8: SWAP1
00000ca9: SLOAD
00000caa: SWAP1
00000cab: PUSH2 0x0100
00000cae: EXP
00000caf: SWAP1
00000cb0: DIV
00000cb1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cc6: AND
00000cc7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cdc: AND
00000cdd: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00000cfe: PUSH1 0x40
00000d00: MLOAD
00000d01: PUSH1 0x40
00000d03: MLOAD
00000d04: DUP1
00000d05: SWAP2
00000d06: SUB
00000d07: SWAP1
00000d08: LOG3
00000d09: PUSH1 0x00
00000d0b: DUP1
00000d0c: PUSH1 0x00
00000d0e: PUSH2 0x0100
00000d11: EXP
00000d12: DUP2
00000d13: SLOAD
00000d14: DUP2
00000d15: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d2a: MUL
00000d2b: NOT
00000d2c: AND
00000d2d: SWAP1
00000d2e: DUP4
00000d2f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d44: AND
00000d45: MUL
00000d46: OR
00000d47: SWAP1
00000d48: SSTORE
00000d49: POP
00000d4a: JUMP
00000d4b: JUMPDEST
00000d4c: PUSH1 0x05
00000d4e: PUSH1 0x01
00000d50: SWAP1
00000d51: SLOAD
00000d52: SWAP1
00000d53: PUSH2 0x0100
00000d56: EXP
00000d57: SWAP1
00000d58: DIV
00000d59: PUSH1 0xff
00000d5b: AND
00000d5c: DUP2
00000d5d: JUMP
00000d5e: JUMPDEST
00000d5f: PUSH1 0x00
00000d61: DUP1
00000d62: PUSH1 0x00
00000d64: SWAP1
00000d65: SLOAD
00000d66: SWAP1
00000d67: PUSH2 0x0100
00000d6a: EXP
00000d6b: SWAP1
00000d6c: DIV
00000d6d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d82: AND
00000d83: SWAP1
00000d84: POP
00000d85: SWAP1
00000d86: JUMP
00000d87: JUMPDEST
00000d88: PUSH1 0x00
00000d8a: DUP1
00000d8b: PUSH1 0x00
00000d8d: SWAP1
00000d8e: SLOAD
00000d8f: SWAP1
00000d90: PUSH2 0x0100
00000d93: EXP
00000d94: SWAP1
00000d95: DIV
00000d96: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dab: AND
00000dac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dc1: AND
00000dc2: PUSH2 0x0dc9
00000dc5: PUSH2 0x2b82
00000dc8: JUMP
00000dc9: JUMPDEST
00000dca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ddf: AND
00000de0: EQ
00000de1: SWAP1
00000de2: POP
00000de3: SWAP1
00000de4: JUMP
00000de5: JUMPDEST
00000de6: PUSH1 0x05
00000de8: PUSH1 0x00
00000dea: SWAP1
00000deb: SLOAD
00000dec: SWAP1
00000ded: PUSH2 0x0100
00000df0: EXP
00000df1: SWAP1
00000df2: DIV
00000df3: PUSH1 0xff
00000df5: AND
00000df6: ISZERO
00000df7: PUSH2 0x0e68
00000dfa: JUMPI
00000dfb: PUSH1 0x40
00000dfd: MLOAD
00000dfe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000e1f: DUP2
00000e20: MSTORE
00000e21: PUSH1 0x04
00000e23: ADD
00000e24: DUP1
00000e25: DUP1
00000e26: PUSH1 0x20
00000e28: ADD
00000e29: DUP3
00000e2a: DUP2
00000e2b: SUB
00000e2c: DUP3
00000e2d: MSTORE
00000e2e: PUSH1 0x0e
00000e30: DUP2
00000e31: MSTORE
00000e32: PUSH1 0x20
00000e34: ADD
00000e35: DUP1
00000e36: PUSH32 0x4e6f2072652d656e7472616e6379000000000000000000000000000000000000
00000e57: DUP2
00000e58: MSTORE
00000e59: POP
00000e5a: PUSH1 0x20
00000e5c: ADD
00000e5d: SWAP2
00000e5e: POP
00000e5f: POP
00000e60: PUSH1 0x40
00000e62: MLOAD
00000e63: DUP1
00000e64: SWAP2
00000e65: SUB
00000e66: SWAP1
00000e67: REVERT
00000e68: JUMPDEST
00000e69: PUSH1 0x01
00000e6b: PUSH1 0x05
00000e6d: PUSH1 0x00
00000e6f: PUSH2 0x0100
00000e72: EXP
00000e73: DUP2
00000e74: SLOAD
00000e75: DUP2
00000e76: PUSH1 0xff
00000e78: MUL
00000e79: NOT
00000e7a: AND
00000e7b: SWAP1
00000e7c: DUP4
00000e7d: ISZERO
00000e7e: ISZERO
00000e7f: MUL
00000e80: OR
00000e81: SWAP1
00000e82: SSTORE
00000e83: POP
00000e84: PUSH1 0x05
00000e86: PUSH1 0x01
00000e88: SWAP1
00000e89: SLOAD
00000e8a: SWAP1
00000e8b: PUSH2 0x0100
00000e8e: EXP
00000e8f: SWAP1
00000e90: DIV
00000e91: PUSH1 0xff
00000e93: AND
00000e94: PUSH1 0xff
00000e96: AND
00000e97: DUP2
00000e98: PUSH1 0xff
00000e9a: AND
00000e9b: GT
00000e9c: ISZERO
00000e9d: PUSH2 0x0f0e
00000ea0: JUMPI
00000ea1: PUSH1 0x40
00000ea3: MLOAD
00000ea4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000ec5: DUP2
00000ec6: MSTORE
00000ec7: PUSH1 0x04
00000ec9: ADD
00000eca: DUP1
00000ecb: DUP1
00000ecc: PUSH1 0x20
00000ece: ADD
00000ecf: DUP3
00000ed0: DUP2
00000ed1: SUB
00000ed2: DUP3
00000ed3: MSTORE
00000ed4: PUSH1 0x14
00000ed6: DUP2
00000ed7: MSTORE
00000ed8: PUSH1 0x20
00000eda: ADD
00000edb: DUP1
00000edc: PUSH32 0x4552525f494e56414c49445f524f554e445f4944000000000000000000000000
00000efd: DUP2
00000efe: MSTORE
00000eff: POP
00000f00: PUSH1 0x20
00000f02: ADD
00000f03: SWAP2
00000f04: POP
00000f05: POP
00000f06: PUSH1 0x40
00000f08: MLOAD
00000f09: DUP1
00000f0a: SWAP2
00000f0b: SUB
00000f0c: SWAP1
00000f0d: REVERT
00000f0e: JUMPDEST
00000f0f: PUSH1 0x00
00000f11: DUP2
00000f12: PUSH1 0xff
00000f14: AND
00000f15: EQ
00000f16: ISZERO
00000f17: PUSH2 0x0f2d
00000f1a: JUMPI
00000f1b: PUSH1 0x05
00000f1d: PUSH1 0x01
00000f1f: SWAP1
00000f20: SLOAD
00000f21: SWAP1
00000f22: PUSH2 0x0100
00000f25: EXP
00000f26: SWAP1
00000f27: DIV
00000f28: PUSH1 0xff
00000f2a: AND
00000f2b: SWAP1
00000f2c: POP
00000f2d: JUMPDEST
00000f2e: PUSH1 0x00
00000f30: PUSH2 0x0f38
00000f33: DUP3
00000f34: PUSH2 0x0a18
00000f37: JUMP
00000f38: JUMPDEST
00000f39: SWAP1
00000f3a: POP
00000f3b: TIMESTAMP
00000f3c: DUP2
00000f3d: LT
00000f3e: PUSH2 0x0faf
00000f41: JUMPI
00000f42: PUSH1 0x40
00000f44: MLOAD
00000f45: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000f66: DUP2
00000f67: MSTORE
00000f68: PUSH1 0x04
00000f6a: ADD
00000f6b: DUP1
00000f6c: DUP1
00000f6d: PUSH1 0x20
00000f6f: ADD
00000f70: DUP3
00000f71: DUP2
00000f72: SUB
00000f73: DUP3
00000f74: MSTORE
00000f75: PUSH1 0x14
00000f77: DUP2
00000f78: MSTORE
00000f79: PUSH1 0x20
00000f7b: ADD
00000f7c: DUP1
00000f7d: PUSH32 0x4552525f43414d504149474e5f4e4f545f454e44000000000000000000000000
00000f9e: DUP2
00000f9f: MSTORE
00000fa0: POP
00000fa1: PUSH1 0x20
00000fa3: ADD
00000fa4: SWAP2
00000fa5: POP
00000fa6: POP
00000fa7: PUSH1 0x40
00000fa9: MLOAD
00000faa: DUP1
00000fab: SWAP2
00000fac: SUB
00000fad: SWAP1
00000fae: REVERT
00000faf: JUMPDEST
00000fb0: PUSH1 0x00
00000fb2: ISZERO
00000fb3: ISZERO
00000fb4: PUSH1 0x09
00000fb6: PUSH1 0x00
00000fb8: DUP5
00000fb9: PUSH1 0xff
00000fbb: AND
00000fbc: PUSH1 0xff
00000fbe: AND
00000fbf: DUP2
00000fc0: MSTORE
00000fc1: PUSH1 0x20
00000fc3: ADD
00000fc4: SWAP1
00000fc5: DUP2
00000fc6: MSTORE
00000fc7: PUSH1 0x20
00000fc9: ADD
00000fca: PUSH1 0x00
00000fcc: KECCAK256
00000fcd: PUSH1 0x00
00000fcf: CALLER
00000fd0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000fe5: AND
00000fe6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ffb: AND
00000ffc: DUP2
00000ffd: MSTORE
00000ffe: PUSH1 0x20
00001000: ADD
00001001: SWAP1
00001002: DUP2
00001003: MSTORE
00001004: PUSH1 0x20
00001006: ADD
00001007: PUSH1 0x00
00001009: KECCAK256
0000100a: PUSH1 0x00
0000100c: SWAP1
0000100d: SLOAD
0000100e: SWAP1
0000100f: PUSH2 0x0100
00001012: EXP
00001013: SWAP1
00001014: DIV
00001015: PUSH1 0xff
00001017: AND
00001018: ISZERO
00001019: ISZERO
0000101a: EQ
0000101b: PUSH2 0x108c
0000101e: JUMPI
0000101f: PUSH1 0x40
00001021: MLOAD
00001022: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001043: DUP2
00001044: MSTORE
00001045: PUSH1 0x04
00001047: ADD
00001048: DUP1
00001049: DUP1
0000104a: PUSH1 0x20
0000104c: ADD
0000104d: DUP3
0000104e: DUP2
0000104f: SUB
00001050: DUP3
00001051: MSTORE
00001052: PUSH1 0x10
00001054: DUP2
00001055: MSTORE
00001056: PUSH1 0x20
00001058: ADD
00001059: DUP1
0000105a: PUSH32 0x4552525f555345525f434c41494d454400000000000000000000000000000000
0000107b: DUP2
0000107c: MSTORE
0000107d: POP
0000107e: PUSH1 0x20
00001080: ADD
00001081: SWAP2
00001082: POP
00001083: POP
00001084: PUSH1 0x40
00001086: MLOAD
00001087: DUP1
00001088: SWAP2
00001089: SUB
0000108a: SWAP1
0000108b: REVERT
0000108c: JUMPDEST
0000108d: PUSH1 0x00
0000108f: DUP1
00001090: SWAP1
00001091: POP
00001092: JUMPDEST
00001093: PUSH1 0x03
00001095: DUP1
00001096: SLOAD
00001097: SWAP1
00001098: POP
00001099: DUP2
0000109a: LT
0000109b: ISZERO
0000109c: PUSH2 0x1218
0000109f: JUMPI
000010a0: PUSH1 0x00
000010a2: PUSH2 0x10e3
000010a5: DUP5
000010a6: PUSH1 0x03
000010a8: DUP5
000010a9: DUP2
000010aa: SLOAD
000010ab: DUP2
000010ac: LT
000010ad: PUSH2 0x10b2
000010b0: JUMPI
000010b1: INVALID
000010b2: JUMPDEST
000010b3: SWAP1
000010b4: PUSH1 0x00
000010b6: MSTORE
000010b7: PUSH1 0x20
000010b9: PUSH1 0x00
000010bb: KECCAK256
000010bc: ADD
000010bd: PUSH1 0x00
000010bf: SWAP1
000010c0: SLOAD
000010c1: SWAP1
000010c2: PUSH2 0x0100
000010c5: EXP
000010c6: SWAP1
000010c7: DIV
000010c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010dd: AND
000010de: CALLER
000010df: PUSH2 0x166f
000010e2: JUMP
000010e3: JUMPDEST
000010e4: SWAP1
000010e5: POP
000010e6: PUSH1 0x00
000010e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000010fd: AND
000010fe: PUSH1 0x03
00001100: DUP4
00001101: DUP2
00001102: SLOAD
00001103: DUP2
00001104: LT
00001105: PUSH2 0x110a
00001108: JUMPI
00001109: INVALID
0000110a: JUMPDEST
0000110b: SWAP1
0000110c: PUSH1 0x00
0000110e: MSTORE
0000110f: PUSH1 0x20
00001111: PUSH1 0x00
00001113: KECCAK256
00001114: ADD
00001115: PUSH1 0x00
00001117: SWAP1
00001118: SLOAD
00001119: SWAP1
0000111a: PUSH2 0x0100
0000111d: EXP
0000111e: SWAP1
0000111f: DIV
00001120: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001135: AND
00001136: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000114b: AND
0000114c: EQ
0000114d: ISZERO
0000114e: PUSH2 0x119d
00001151: JUMPI
00001152: CALLER
00001153: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001168: AND
00001169: PUSH2 0x08fc
0000116c: DUP3
0000116d: SWAP1
0000116e: DUP2
0000116f: ISZERO
00001170: MUL
00001171: SWAP1
00001172: PUSH1 0x40
00001174: MLOAD
00001175: PUSH1 0x00
00001177: PUSH1 0x40
00001179: MLOAD
0000117a: DUP1
0000117b: DUP4
0000117c: SUB
0000117d: DUP2
0000117e: DUP6
0000117f: DUP9
00001180: DUP9
00001181: CALL
00001182: SWAP4
00001183: POP
00001184: POP
00001185: POP
00001186: POP
00001187: ISZERO
00001188: DUP1
00001189: ISZERO
0000118a: PUSH2 0x1197
0000118d: JUMPI
0000118e: RETURNDATASIZE
0000118f: PUSH1 0x00
00001191: DUP1
00001192: RETURNDATACOPY
00001193: RETURNDATASIZE
00001194: PUSH1 0x00
00001196: REVERT
00001197: JUMPDEST
00001198: POP
00001199: PUSH2 0x120a
0000119c: JUMP
0000119d: JUMPDEST
0000119e: PUSH1 0x00
000011a0: DUP2
000011a1: GT
000011a2: ISZERO
000011a3: PUSH2 0x1209
000011a6: JUMPI
000011a7: PUSH2 0x1208
000011aa: CALLER
000011ab: DUP3
000011ac: PUSH1 0x03
000011ae: DUP6
000011af: DUP2
000011b0: SLOAD
000011b1: DUP2
000011b2: LT
000011b3: PUSH2 0x11b8
000011b6: JUMPI
000011b7: INVALID
000011b8: JUMPDEST
000011b9: SWAP1
000011ba: PUSH1 0x00
000011bc: MSTORE
000011bd: PUSH1 0x20
000011bf: PUSH1 0x00
000011c1: KECCAK256
000011c2: ADD
000011c3: PUSH1 0x00
000011c5: SWAP1
000011c6: SLOAD
000011c7: SWAP1
000011c8: PUSH2 0x0100
000011cb: EXP
000011cc: SWAP1
000011cd: DIV
000011ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011e3: AND
000011e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000011f9: AND
000011fa: PUSH2 0x2b8a
000011fd: SWAP1
000011fe: SWAP3
000011ff: SWAP2
00001200: SWAP1
00001201: PUSH4 0xffffffff
00001206: AND
00001207: JUMP
00001208: JUMPDEST
00001209: JUMPDEST
0000120a: JUMPDEST
0000120b: POP
0000120c: DUP1
0000120d: DUP1
0000120e: PUSH1 0x01
00001210: ADD
00001211: SWAP2
00001212: POP
00001213: POP
00001214: PUSH2 0x1092
00001217: JUMP
00001218: JUMPDEST
00001219: POP
0000121a: PUSH1 0x00
0000121c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001231: AND
00001232: PUSH1 0x08
00001234: PUSH1 0x00
00001236: SWAP1
00001237: SLOAD
00001238: SWAP1
00001239: PUSH2 0x0100
0000123c: EXP
0000123d: SWAP1
0000123e: DIV
0000123f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001254: AND
00001255: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000126a: AND
0000126b: EQ
0000126c: PUSH2 0x142e
0000126f: JUMPI
00001270: PUSH1 0x00
00001272: PUSH1 0x08
00001274: PUSH1 0x00
00001276: SWAP1
00001277: SLOAD
00001278: SWAP1
00001279: PUSH2 0x0100
0000127c: EXP
0000127d: SWAP1
0000127e: DIV
0000127f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001294: AND
00001295: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012aa: AND
000012ab: PUSH4 0xd1ce5ba1
000012b0: DUP5
000012b1: CALLER
000012b2: PUSH1 0x40
000012b4: MLOAD
000012b5: DUP4
000012b6: PUSH4 0xffffffff
000012bb: AND
000012bc: PUSH1 0xe0
000012be: SHL
000012bf: DUP2
000012c0: MSTORE
000012c1: PUSH1 0x04
000012c3: ADD
000012c4: DUP1
000012c5: DUP4
000012c6: PUSH1 0xff
000012c8: AND
000012c9: PUSH1 0xff
000012cb: AND
000012cc: DUP2
000012cd: MSTORE
000012ce: PUSH1 0x20
000012d0: ADD
000012d1: DUP3
000012d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012e7: AND
000012e8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000012fd: AND
000012fe: DUP2
000012ff: MSTORE
00001300: PUSH1 0x20
00001302: ADD
00001303: SWAP3
00001304: POP
00001305: POP
00001306: POP
00001307: PUSH1 0x20
00001309: PUSH1 0x40
0000130b: MLOAD
0000130c: DUP1
0000130d: DUP4
0000130e: SUB
0000130f: DUP2
00001310: DUP7
00001311: DUP1
00001312: EXTCODESIZE
00001313: ISZERO
00001314: DUP1
00001315: ISZERO
00001316: PUSH2 0x131e
00001319: JUMPI
0000131a: PUSH1 0x00
0000131c: DUP1
0000131d: REVERT
0000131e: JUMPDEST
0000131f: POP
00001320: GAS
00001321: STATICCALL
00001322: ISZERO
00001323: DUP1
00001324: ISZERO
00001325: PUSH2 0x1332
00001328: JUMPI
00001329: RETURNDATASIZE
0000132a: PUSH1 0x00
0000132c: DUP1
0000132d: RETURNDATACOPY
0000132e: RETURNDATASIZE
0000132f: PUSH1 0x00
00001331: REVERT
00001332: JUMPDEST
00001333: POP
00001334: POP
00001335: POP
00001336: POP
00001337: PUSH1 0x40
00001339: MLOAD
0000133a: RETURNDATASIZE
0000133b: PUSH1 0x20
0000133d: DUP2
0000133e: LT
0000133f: ISZERO
00001340: PUSH2 0x1348
00001343: JUMPI
00001344: PUSH1 0x00
00001346: DUP1
00001347: REVERT
00001348: JUMPDEST
00001349: DUP2
0000134a: ADD
0000134b: SWAP1
0000134c: DUP1
0000134d: DUP1
0000134e: MLOAD
0000134f: SWAP1
00001350: PUSH1 0x20
00001352: ADD
00001353: SWAP1
00001354: SWAP3
00001355: SWAP2
00001356: SWAP1
00001357: POP
00001358: POP
00001359: POP
0000135a: SWAP1
0000135b: POP
0000135c: PUSH1 0x00
0000135e: DUP2
0000135f: GT
00001360: ISZERO
00001361: PUSH2 0x142c
00001364: JUMPI
00001365: PUSH1 0x08
00001367: PUSH1 0x00
00001369: SWAP1
0000136a: SLOAD
0000136b: SWAP1
0000136c: PUSH2 0x0100
0000136f: EXP
00001370: SWAP1
00001371: DIV
00001372: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001387: AND
00001388: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000139d: AND
0000139e: PUSH4 0xf0da6c8c
000013a3: DUP5
000013a4: CALLER
000013a5: PUSH1 0x40
000013a7: MLOAD
000013a8: DUP4
000013a9: PUSH4 0xffffffff
000013ae: AND
000013af: PUSH1 0xe0
000013b1: SHL
000013b2: DUP2
000013b3: MSTORE
000013b4: PUSH1 0x04
000013b6: ADD
000013b7: DUP1
000013b8: DUP4
000013b9: PUSH1 0xff
000013bb: AND
000013bc: PUSH1 0xff
000013be: AND
000013bf: DUP2
000013c0: MSTORE
000013c1: PUSH1 0x20
000013c3: ADD
000013c4: DUP3
000013c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000013da: AND
000013db: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000013f0: AND
000013f1: DUP2
000013f2: MSTORE
000013f3: PUSH1 0x20
000013f5: ADD
000013f6: SWAP3
000013f7: POP
000013f8: POP
000013f9: POP
000013fa: PUSH1 0x00
000013fc: PUSH1 0x40
000013fe: MLOAD
000013ff: DUP1
00001400: DUP4
00001401: SUB
00001402: DUP2
00001403: PUSH1 0x00
00001405: DUP8
00001406: DUP1
00001407: EXTCODESIZE
00001408: ISZERO
00001409: DUP1
0000140a: ISZERO
0000140b: PUSH2 0x1413
0000140e: JUMPI
0000140f: PUSH1 0x00
00001411: DUP1
00001412: REVERT
00001413: JUMPDEST
00001414: POP
00001415: GAS
00001416: CALL
00001417: ISZERO
00001418: DUP1
00001419: ISZERO
0000141a: PUSH2 0x1427
0000141d: JUMPI
0000141e: RETURNDATASIZE
0000141f: PUSH1 0x00
00001421: DUP1
00001422: RETURNDATACOPY
00001423: RETURNDATASIZE
00001424: PUSH1 0x00
00001426: REVERT
00001427: JUMPDEST
00001428: POP
00001429: POP
0000142a: POP
0000142b: POP
0000142c: JUMPDEST
0000142d: POP
0000142e: JUMPDEST
0000142f: PUSH1 0x01
00001431: PUSH1 0x09
00001433: PUSH1 0x00
00001435: DUP5
00001436: PUSH1 0xff
00001438: AND
00001439: PUSH1 0xff
0000143b: AND
0000143c: DUP2
0000143d: MSTORE
0000143e: PUSH1 0x20
00001440: ADD
00001441: SWAP1
00001442: DUP2
00001443: MSTORE
00001444: PUSH1 0x20
00001446: ADD
00001447: PUSH1 0x00
00001449: KECCAK256
0000144a: PUSH1 0x00
0000144c: CALLER
0000144d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001462: AND
00001463: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001478: AND
00001479: DUP2
0000147a: MSTORE
0000147b: PUSH1 0x20
0000147d: ADD
0000147e: SWAP1
0000147f: DUP2
00001480: MSTORE
00001481: PUSH1 0x20
00001483: ADD
00001484: PUSH1 0x00
00001486: KECCAK256
00001487: PUSH1 0x00
00001489: PUSH2 0x0100
0000148c: EXP
0000148d: DUP2
0000148e: SLOAD
0000148f: DUP2
00001490: PUSH1 0xff
00001492: MUL
00001493: NOT
00001494: AND
00001495: SWAP1
00001496: DUP4
00001497: ISZERO
00001498: ISZERO
00001499: MUL
0000149a: OR
0000149b: SWAP1
0000149c: SSTORE
0000149d: POP
0000149e: POP
0000149f: PUSH1 0x00
000014a1: PUSH1 0x05
000014a3: PUSH1 0x00
000014a5: PUSH2 0x0100
000014a8: EXP
000014a9: DUP2
000014aa: SLOAD
000014ab: DUP2
000014ac: PUSH1 0xff
000014ae: MUL
000014af: NOT
000014b0: AND
000014b1: SWAP1
000014b2: DUP4
000014b3: ISZERO
000014b4: ISZERO
000014b5: MUL
000014b6: OR
000014b7: SWAP1
000014b8: SSTORE
000014b9: POP
000014ba: POP
000014bb: JUMP
000014bc: JUMPDEST
000014bd: PUSH2 0x14c4
000014c0: PUSH2 0x0d87
000014c3: JUMP
000014c4: JUMPDEST
000014c5: PUSH2 0x1536
000014c8: JUMPI
000014c9: PUSH1 0x40
000014cb: MLOAD
000014cc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000014ed: DUP2
000014ee: MSTORE
000014ef: PUSH1 0x04
000014f1: ADD
000014f2: DUP1
000014f3: DUP1
000014f4: PUSH1 0x20
000014f6: ADD
000014f7: DUP3
000014f8: DUP2
000014f9: SUB
000014fa: DUP3
000014fb: MSTORE
000014fc: PUSH1 0x20
000014fe: DUP2
000014ff: MSTORE
00001500: PUSH1 0x20
00001502: ADD
00001503: DUP1
00001504: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00001525: DUP2
00001526: MSTORE
00001527: POP
00001528: PUSH1 0x20
0000152a: ADD
0000152b: SWAP2
0000152c: POP
0000152d: POP
0000152e: PUSH1 0x40
00001530: MLOAD
00001531: DUP1
00001532: SWAP2
00001533: SUB
00001534: SWAP1
00001535: REVERT
00001536: JUMPDEST
00001537: PUSH1 0x00
00001539: PUSH2 0x1542
0000153c: PUSH1 0x00
0000153e: PUSH2 0x0a18
00001541: JUMP
00001542: JUMPDEST
00001543: SWAP1
00001544: POP
00001545: TIMESTAMP
00001546: DUP2
00001547: LT
00001548: PUSH2 0x159c
0000154b: JUMPI
0000154c: PUSH1 0x40
0000154e: MLOAD
0000154f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001570: DUP2
00001571: MSTORE
00001572: PUSH1 0x04
00001574: ADD
00001575: DUP1
00001576: DUP1
00001577: PUSH1 0x20
00001579: ADD
0000157a: DUP3
0000157b: DUP2
0000157c: SUB
0000157d: DUP3
0000157e: MSTORE
0000157f: PUSH1 0x24
00001581: DUP2
00001582: MSTORE
00001583: PUSH1 0x20
00001585: ADD
00001586: DUP1
00001587: PUSH2 0x3308
0000158a: PUSH1 0x24
0000158c: SWAP2
0000158d: CODECOPY
0000158e: PUSH1 0x40
00001590: ADD
00001591: SWAP2
00001592: POP
00001593: POP
00001594: PUSH1 0x40
00001596: MLOAD
00001597: DUP1
00001598: SWAP2
00001599: SUB
0000159a: SWAP1
0000159b: REVERT
0000159c: JUMPDEST
0000159d: TIMESTAMP
0000159e: DUP3
0000159f: GT
000015a0: PUSH2 0x1611
000015a3: JUMPI
000015a4: PUSH1 0x40
000015a6: MLOAD
000015a7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000015c8: DUP2
000015c9: MSTORE
000015ca: PUSH1 0x04
000015cc: ADD
000015cd: DUP1
000015ce: DUP1
000015cf: PUSH1 0x20
000015d1: ADD
000015d2: DUP3
000015d3: DUP2
000015d4: SUB
000015d5: DUP3
000015d6: MSTORE
000015d7: PUSH1 0x19
000015d9: DUP2
000015da: MSTORE
000015db: PUSH1 0x20
000015dd: ADD
000015de: DUP1
000015df: PUSH32 0x4c6f636b44726f703a20456e6474696d6520496e76616c696400000000000000
00001600: DUP2
00001601: MSTORE
00001602: POP
00001603: PUSH1 0x20
00001605: ADD
00001606: SWAP2
00001607: POP
00001608: POP
00001609: PUSH1 0x40
0000160b: MLOAD
0000160c: DUP1
0000160d: SWAP2
0000160e: SUB
0000160f: SWAP1
00001610: REVERT
00001611: JUMPDEST
00001612: PUSH1 0x01
00001614: PUSH1 0x05
00001616: PUSH1 0x01
00001618: SWAP1
00001619: SLOAD
0000161a: SWAP1
0000161b: PUSH2 0x0100
0000161e: EXP
0000161f: SWAP1
00001620: DIV
00001621: PUSH1 0xff
00001623: AND
00001624: ADD
00001625: PUSH1 0x05
00001627: PUSH1 0x01
00001629: PUSH2 0x0100
0000162c: EXP
0000162d: DUP2
0000162e: SLOAD
0000162f: DUP2
00001630: PUSH1 0xff
00001632: MUL
00001633: NOT
00001634: AND
00001635: SWAP1
00001636: DUP4
00001637: PUSH1 0xff
00001639: AND
0000163a: MUL
0000163b: OR
0000163c: SWAP1
0000163d: SSTORE
0000163e: POP
0000163f: DUP2
00001640: PUSH1 0x04
00001642: PUSH1 0x00
00001644: PUSH1 0x05
00001646: PUSH1 0x01
00001648: SWAP1
00001649: SLOAD
0000164a: SWAP1
0000164b: PUSH2 0x0100
0000164e: EXP
0000164f: SWAP1
00001650: DIV
00001651: PUSH1 0xff
00001653: AND
00001654: PUSH1 0xff
00001656: AND
00001657: PUSH1 0xff
00001659: AND
0000165a: DUP2
0000165b: MSTORE
0000165c: PUSH1 0x20
0000165e: ADD
0000165f: SWAP1
00001660: DUP2
00001661: MSTORE
00001662: PUSH1 0x20
00001664: ADD
00001665: PUSH1 0x00
00001667: KECCAK256
00001668: DUP2
00001669: SWAP1
0000166a: SSTORE
0000166b: POP
0000166c: POP
0000166d: POP
0000166e: JUMP
0000166f: JUMPDEST
00001670: PUSH1 0x00
00001672: DUP1
00001673: DUP5
00001674: PUSH1 0xff
00001676: AND
00001677: EQ
00001678: ISZERO
00001679: PUSH2 0x168f
0000167c: JUMPI
0000167d: PUSH1 0x05
0000167f: PUSH1 0x01
00001681: SWAP1
00001682: SLOAD
00001683: SWAP1
00001684: PUSH2 0x0100
00001687: EXP
00001688: SWAP1
00001689: DIV
0000168a: PUSH1 0xff
0000168c: AND
0000168d: SWAP4
0000168e: POP
0000168f: JUMPDEST
00001690: PUSH1 0x00
00001692: DUP1
00001693: PUSH2 0x172e
00001696: PUSH1 0x02
00001698: PUSH1 0x00
0000169a: DUP9
0000169b: PUSH1 0xff
0000169d: AND
0000169e: PUSH1 0xff
000016a0: AND
000016a1: DUP2
000016a2: MSTORE
000016a3: PUSH1 0x20
000016a5: ADD
000016a6: SWAP1
000016a7: DUP2
000016a8: MSTORE
000016a9: PUSH1 0x20
000016ab: ADD
000016ac: PUSH1 0x00
000016ae: KECCAK256
000016af: PUSH1 0x00
000016b1: DUP8
000016b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016c7: AND
000016c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000016dd: AND
000016de: DUP2
000016df: MSTORE
000016e0: PUSH1 0x20
000016e2: ADD
000016e3: SWAP1
000016e4: DUP2
000016e5: MSTORE
000016e6: PUSH1 0x20
000016e8: ADD
000016e9: PUSH1 0x00
000016eb: KECCAK256
000016ec: PUSH1 0x00
000016ee: DUP7
000016ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001704: AND
00001705: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000171a: AND
0000171b: DUP2
0000171c: MSTORE
0000171d: PUSH1 0x20
0000171f: ADD
00001720: SWAP1
00001721: DUP2
00001722: MSTORE
00001723: PUSH1 0x20
00001725: ADD
00001726: PUSH1 0x00
00001728: KECCAK256
00001729: SLOAD
0000172a: PUSH2 0x2c5b
0000172d: JUMP
0000172e: JUMPDEST
0000172f: SWAP2
00001730: POP
00001731: SWAP2
00001732: POP
00001733: DUP2
00001734: SWAP3
00001735: POP
00001736: POP
00001737: POP
00001738: SWAP4
00001739: SWAP3
0000173a: POP
0000173b: POP
0000173c: POP
0000173d: JUMP
0000173e: JUMPDEST
0000173f: PUSH2 0x1746
00001742: PUSH2 0x0d87
00001745: JUMP
00001746: JUMPDEST
00001747: PUSH2 0x17b8
0000174a: JUMPI
0000174b: PUSH1 0x40
0000174d: MLOAD
0000174e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000176f: DUP2
00001770: MSTORE
00001771: PUSH1 0x04
00001773: ADD
00001774: DUP1
00001775: DUP1
00001776: PUSH1 0x20
00001778: ADD
00001779: DUP3
0000177a: DUP2
0000177b: SUB
0000177c: DUP3
0000177d: MSTORE
0000177e: PUSH1 0x20
00001780: DUP2
00001781: MSTORE
00001782: PUSH1 0x20
00001784: ADD
00001785: DUP1
00001786: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
000017a7: DUP2
000017a8: MSTORE
000017a9: POP
000017aa: PUSH1 0x20
000017ac: ADD
000017ad: SWAP2
000017ae: POP
000017af: POP
000017b0: PUSH1 0x40
000017b2: MLOAD
000017b3: DUP1
000017b4: SWAP2
000017b5: SUB
000017b6: SWAP1
000017b7: REVERT
000017b8: JUMPDEST
000017b9: DUP1
000017ba: PUSH1 0x08
000017bc: PUSH1 0x00
000017be: PUSH2 0x0100
000017c1: EXP
000017c2: DUP2
000017c3: SLOAD
000017c4: DUP2
000017c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017da: MUL
000017db: NOT
000017dc: AND
000017dd: SWAP1
000017de: DUP4
000017df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000017f4: AND
000017f5: MUL
000017f6: OR
000017f7: SWAP1
000017f8: SSTORE
000017f9: POP
000017fa: POP
000017fb: JUMP
000017fc: JUMPDEST
000017fd: PUSH2 0x1804
00001800: PUSH2 0x0d87
00001803: JUMP
00001804: JUMPDEST
00001805: PUSH2 0x1876
00001808: JUMPI
00001809: PUSH1 0x40
0000180b: MLOAD
0000180c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000182d: DUP2
0000182e: MSTORE
0000182f: PUSH1 0x04
00001831: ADD
00001832: DUP1
00001833: DUP1
00001834: PUSH1 0x20
00001836: ADD
00001837: DUP3
00001838: DUP2
00001839: SUB
0000183a: DUP3
0000183b: MSTORE
0000183c: PUSH1 0x20
0000183e: DUP2
0000183f: MSTORE
00001840: PUSH1 0x20
00001842: ADD
00001843: DUP1
00001844: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00001865: DUP2
00001866: MSTORE
00001867: POP
00001868: PUSH1 0x20
0000186a: ADD
0000186b: SWAP2
0000186c: POP
0000186d: POP
0000186e: PUSH1 0x40
00001870: MLOAD
00001871: DUP1
00001872: SWAP2
00001873: SUB
00001874: SWAP1
00001875: REVERT
00001876: JUMPDEST
00001877: PUSH1 0x00
00001879: ISZERO
0000187a: ISZERO
0000187b: PUSH1 0x06
0000187d: PUSH1 0x00
0000187f: DUP4
00001880: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001895: AND
00001896: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000018ab: AND
000018ac: DUP2
000018ad: MSTORE
000018ae: PUSH1 0x20
000018b0: ADD
000018b1: SWAP1
000018b2: DUP2
000018b3: MSTORE
000018b4: PUSH1 0x20
000018b6: ADD
000018b7: PUSH1 0x00
000018b9: KECCAK256
000018ba: PUSH1 0x00
000018bc: SWAP1
000018bd: SLOAD
000018be: SWAP1
000018bf: PUSH2 0x0100
000018c2: EXP
000018c3: SWAP1
000018c4: DIV
000018c5: PUSH1 0xff
000018c7: AND
000018c8: ISZERO
000018c9: ISZERO
000018ca: EQ
000018cb: PUSH2 0x193c
000018ce: JUMPI
000018cf: PUSH1 0x40
000018d1: MLOAD
000018d2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000018f3: DUP2
000018f4: MSTORE
000018f5: PUSH1 0x04
000018f7: ADD
000018f8: DUP1
000018f9: DUP1
000018fa: PUSH1 0x20
000018fc: ADD
000018fd: DUP3
000018fe: DUP2
000018ff: SUB
00001900: DUP3
00001901: MSTORE
00001902: PUSH1 0x15
00001904: DUP2
00001905: MSTORE
00001906: PUSH1 0x20
00001908: ADD
00001909: DUP1
0000190a: PUSH32 0x4c6f636b44726f703a20506f6f6c204578697374730000000000000000000000
0000192b: DUP2
0000192c: MSTORE
0000192d: POP
0000192e: PUSH1 0x20
00001930: ADD
00001931: SWAP2
00001932: POP
00001933: POP
00001934: PUSH1 0x40
00001936: MLOAD
00001937: DUP1
00001938: SWAP2
00001939: SUB
0000193a: SWAP1
0000193b: REVERT
0000193c: JUMPDEST
0000193d: PUSH1 0x01
0000193f: PUSH1 0x06
00001941: PUSH1 0x00
00001943: DUP4
00001944: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001959: AND
0000195a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000196f: AND
00001970: DUP2
00001971: MSTORE
00001972: PUSH1 0x20
00001974: ADD
00001975: SWAP1
00001976: DUP2
00001977: MSTORE
00001978: PUSH1 0x20
0000197a: ADD
0000197b: PUSH1 0x00
0000197d: KECCAK256
0000197e: PUSH1 0x00
00001980: PUSH2 0x0100
00001983: EXP
00001984: DUP2
00001985: SLOAD
00001986: DUP2
00001987: PUSH1 0xff
00001989: MUL
0000198a: NOT
0000198b: AND
0000198c: SWAP1
0000198d: DUP4
0000198e: ISZERO
0000198f: ISZERO
00001990: MUL
00001991: OR
00001992: SWAP1
00001993: SSTORE
00001994: POP
00001995: PUSH1 0x03
00001997: DUP2
00001998: SWAP1
00001999: DUP1
0000199a: PUSH1 0x01
0000199c: DUP2
0000199d: SLOAD
0000199e: ADD
0000199f: DUP1
000019a0: DUP3
000019a1: SSTORE
000019a2: DUP1
000019a3: SWAP2
000019a4: POP
000019a5: POP
000019a6: SWAP1
000019a7: PUSH1 0x01
000019a9: DUP3
000019aa: SUB
000019ab: SWAP1
000019ac: PUSH1 0x00
000019ae: MSTORE
000019af: PUSH1 0x20
000019b1: PUSH1 0x00
000019b3: KECCAK256
000019b4: ADD
000019b5: PUSH1 0x00
000019b7: SWAP1
000019b8: SWAP2
000019b9: SWAP3
000019ba: SWAP1
000019bb: SWAP2
000019bc: SWAP1
000019bd: SWAP2
000019be: PUSH2 0x0100
000019c1: EXP
000019c2: DUP2
000019c3: SLOAD
000019c4: DUP2
000019c5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019da: MUL
000019db: NOT
000019dc: AND
000019dd: SWAP1
000019de: DUP4
000019df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000019f4: AND
000019f5: MUL
000019f6: OR
000019f7: SWAP1
000019f8: SSTORE
000019f9: POP
000019fa: POP
000019fb: POP
000019fc: JUMP
000019fd: JUMPDEST
000019fe: PUSH2 0x1a05
00001a01: PUSH2 0x0d87
00001a04: JUMP
00001a05: JUMPDEST
00001a06: PUSH2 0x1a77
00001a09: JUMPI
00001a0a: PUSH1 0x40
00001a0c: MLOAD
00001a0d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001a2e: DUP2
00001a2f: MSTORE
00001a30: PUSH1 0x04
00001a32: ADD
00001a33: DUP1
00001a34: DUP1
00001a35: PUSH1 0x20
00001a37: ADD
00001a38: DUP3
00001a39: DUP2
00001a3a: SUB
00001a3b: DUP3
00001a3c: MSTORE
00001a3d: PUSH1 0x20
00001a3f: DUP2
00001a40: MSTORE
00001a41: PUSH1 0x20
00001a43: ADD
00001a44: DUP1
00001a45: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00001a66: DUP2
00001a67: MSTORE
00001a68: POP
00001a69: PUSH1 0x20
00001a6b: ADD
00001a6c: SWAP2
00001a6d: POP
00001a6e: POP
00001a6f: PUSH1 0x40
00001a71: MLOAD
00001a72: DUP1
00001a73: SWAP2
00001a74: SUB
00001a75: SWAP1
00001a76: REVERT
00001a77: JUMPDEST
00001a78: PUSH2 0x1a80
00001a7b: DUP2
00001a7c: PUSH2 0x2c97
00001a7f: JUMP
00001a80: JUMPDEST
00001a81: POP
00001a82: JUMP
00001a83: JUMPDEST
00001a84: PUSH1 0x00
00001a86: PUSH2 0x1a8f
00001a89: PUSH1 0x00
00001a8b: PUSH2 0x0a18
00001a8e: JUMP
00001a8f: JUMPDEST
00001a90: SWAP1
00001a91: POP
00001a92: DUP1
00001a93: TIMESTAMP
00001a94: LT
00001a95: PUSH2 0x1b06
00001a98: JUMPI
00001a99: PUSH1 0x40
00001a9b: MLOAD
00001a9c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001abd: DUP2
00001abe: MSTORE
00001abf: PUSH1 0x04
00001ac1: ADD
00001ac2: DUP1
00001ac3: DUP1
00001ac4: PUSH1 0x20
00001ac6: ADD
00001ac7: DUP3
00001ac8: DUP2
00001ac9: SUB
00001aca: DUP3
00001acb: MSTORE
00001acc: PUSH1 0x1b
00001ace: DUP2
00001acf: MSTORE
00001ad0: PUSH1 0x20
00001ad2: ADD
00001ad3: DUP1
00001ad4: PUSH32 0x4c6f636b44726f703a2043616d706169676e2046696e69736865640000000000
00001af5: DUP2
00001af6: MSTORE
00001af7: POP
00001af8: PUSH1 0x20
00001afa: ADD
00001afb: SWAP2
00001afc: POP
00001afd: POP
00001afe: PUSH1 0x40
00001b00: MLOAD
00001b01: DUP1
00001b02: SWAP2
00001b03: SUB
00001b04: SWAP1
00001b05: REVERT
00001b06: JUMPDEST
00001b07: PUSH1 0x06
00001b09: PUSH1 0x00
00001b0b: DUP7
00001b0c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b21: AND
00001b22: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001b37: AND
00001b38: DUP2
00001b39: MSTORE
00001b3a: PUSH1 0x20
00001b3c: ADD
00001b3d: SWAP1
00001b3e: DUP2
00001b3f: MSTORE
00001b40: PUSH1 0x20
00001b42: ADD
00001b43: PUSH1 0x00
00001b45: KECCAK256
00001b46: PUSH1 0x00
00001b48: SWAP1
00001b49: SLOAD
00001b4a: SWAP1
00001b4b: PUSH2 0x0100
00001b4e: EXP
00001b4f: SWAP1
00001b50: DIV
00001b51: PUSH1 0xff
00001b53: AND
00001b54: PUSH2 0x1bc5
00001b57: JUMPI
00001b58: PUSH1 0x40
00001b5a: MLOAD
00001b5b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001b7c: DUP2
00001b7d: MSTORE
00001b7e: PUSH1 0x04
00001b80: ADD
00001b81: DUP1
00001b82: DUP1
00001b83: PUSH1 0x20
00001b85: ADD
00001b86: DUP3
00001b87: DUP2
00001b88: SUB
00001b89: DUP3
00001b8a: MSTORE
00001b8b: PUSH1 0x19
00001b8d: DUP2
00001b8e: MSTORE
00001b8f: PUSH1 0x20
00001b91: ADD
00001b92: DUP1
00001b93: PUSH32 0x4c6f636b44726f703a20506f6f6c204e6f742045786973747300000000000000
00001bb4: DUP2
00001bb5: MSTORE
00001bb6: POP
00001bb7: PUSH1 0x20
00001bb9: ADD
00001bba: SWAP2
00001bbb: POP
00001bbc: POP
00001bbd: PUSH1 0x40
00001bbf: MLOAD
00001bc0: DUP1
00001bc1: SWAP2
00001bc2: SUB
00001bc3: SWAP1
00001bc4: REVERT
00001bc5: JUMPDEST
00001bc6: PUSH1 0x00
00001bc8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001bdd: AND
00001bde: PUSH1 0x07
00001be0: PUSH1 0x00
00001be2: SWAP1
00001be3: SLOAD
00001be4: SWAP1
00001be5: PUSH2 0x0100
00001be8: EXP
00001be9: SWAP1
00001bea: DIV
00001beb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c00: AND
00001c01: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c16: AND
00001c17: EQ
00001c18: ISZERO
00001c19: PUSH2 0x1c6d
00001c1c: JUMPI
00001c1d: PUSH1 0x40
00001c1f: MLOAD
00001c20: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00001c41: DUP2
00001c42: MSTORE
00001c43: PUSH1 0x04
00001c45: ADD
00001c46: DUP1
00001c47: DUP1
00001c48: PUSH1 0x20
00001c4a: ADD
00001c4b: DUP3
00001c4c: DUP2
00001c4d: SUB
00001c4e: DUP3
00001c4f: MSTORE
00001c50: PUSH1 0x22
00001c52: DUP2
00001c53: MSTORE
00001c54: PUSH1 0x20
00001c56: ADD
00001c57: DUP1
00001c58: PUSH2 0x32c0
00001c5b: PUSH1 0x22
00001c5d: SWAP2
00001c5e: CODECOPY
00001c5f: PUSH1 0x40
00001c61: ADD
00001c62: SWAP2
00001c63: POP
00001c64: POP
00001c65: PUSH1 0x40
00001c67: MLOAD
00001c68: DUP1
00001c69: SWAP2
00001c6a: SUB
00001c6b: SWAP1
00001c6c: REVERT
00001c6d: JUMPDEST
00001c6e: PUSH1 0x00
00001c70: DUP4
00001c71: GT
00001c72: ISZERO
00001c73: PUSH2 0x1fe0
00001c76: JUMPI
00001c77: PUSH1 0x07
00001c79: PUSH1 0x00
00001c7b: SWAP1
00001c7c: SLOAD
00001c7d: SWAP1
00001c7e: PUSH2 0x0100
00001c81: EXP
00001c82: SWAP1
00001c83: DIV
00001c84: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001c99: AND
00001c9a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001caf: AND
00001cb0: PUSH4 0xcfc1e620
00001cb5: CALLER
00001cb6: DUP6
00001cb7: PUSH1 0x40
00001cb9: MLOAD
00001cba: DUP4
00001cbb: PUSH4 0xffffffff
00001cc0: AND
00001cc1: PUSH1 0xe0
00001cc3: SHL
00001cc4: DUP2
00001cc5: MSTORE
00001cc6: PUSH1 0x04
00001cc8: ADD
00001cc9: DUP1
00001cca: DUP4
00001ccb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ce0: AND
00001ce1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001cf6: AND
00001cf7: DUP2
00001cf8: MSTORE
00001cf9: PUSH1 0x20
00001cfb: ADD
00001cfc: DUP3
00001cfd: DUP2
00001cfe: MSTORE
00001cff: PUSH1 0x20
00001d01: ADD
00001d02: SWAP3
00001d03: POP
00001d04: POP
00001d05: POP
00001d06: PUSH1 0x20
00001d08: PUSH1 0x40
00001d0a: MLOAD
00001d0b: DUP1
00001d0c: DUP4
00001d0d: SUB
00001d0e: DUP2
00001d0f: DUP7
00001d10: DUP1
00001d11: EXTCODESIZE
00001d12: ISZERO
00001d13: DUP1
00001d14: ISZERO
00001d15: PUSH2 0x1d1d
00001d18: JUMPI
00001d19: PUSH1 0x00
00001d1b: DUP1
00001d1c: REVERT
00001d1d: JUMPDEST
00001d1e: POP
00001d1f: GAS
00001d20: STATICCALL
00001d21: ISZERO
00001d22: DUP1
00001d23: ISZERO
00001d24: PUSH2 0x1d31
00001d27: JUMPI
00001d28: RETURNDATASIZE
00001d29: PUSH1 0x00
00001d2b: DUP1
00001d2c: RETURNDATACOPY
00001d2d: RETURNDATASIZE
00001d2e: PUSH1 0x00
00001d30: REVERT
00001d31: JUMPDEST
00001d32: POP
00001d33: POP
00001d34: POP
00001d35: POP
00001d36: PUSH1 0x40
00001d38: MLOAD
00001d39: RETURNDATASIZE
00001d3a: PUSH1 0x20
00001d3c: DUP2
00001d3d: LT
00001d3e: ISZERO
00001d3f: PUSH2 0x1d47
00001d42: JUMPI
00001d43: PUSH1 0x00
00001d45: DUP1
00001d46: REVERT
00001d47: JUMPDEST
00001d48: DUP2
00001d49: ADD
00001d4a: SWAP1
00001d4b: DUP1
00001d4c: DUP1
00001d4d: MLOAD
00001d4e: SWAP1
00001d4f: PUSH1 0x20
00001d51: ADD
00001d52: SWAP1
00001d53: SWAP3
00001d54: SWAP2
00001d55: SWAP1
00001d56: POP
00001d57: POP
00001d58: POP
00001d59: ISZERO
00001d5a: PUSH2 0x1e1f
00001d5d: JUMPI
00001d5e: PUSH1 0x07
00001d60: PUSH1 0x00
00001d62: SWAP1
00001d63: SLOAD
00001d64: SWAP1
00001d65: PUSH2 0x0100
00001d68: EXP
00001d69: SWAP1
00001d6a: DIV
00001d6b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d80: AND
00001d81: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001d96: AND
00001d97: PUSH4 0x5dff4143
00001d9c: CALLER
00001d9d: DUP6
00001d9e: PUSH1 0x40
00001da0: MLOAD
00001da1: DUP4
00001da2: PUSH4 0xffffffff
00001da7: AND
00001da8: PUSH1 0xe0
00001daa: SHL
00001dab: DUP2
00001dac: MSTORE
00001dad: PUSH1 0x04
00001daf: ADD
00001db0: DUP1
00001db1: DUP4
00001db2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001dc7: AND
00001dc8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ddd: AND
00001dde: DUP2
00001ddf: MSTORE
00001de0: PUSH1 0x20
00001de2: ADD
00001de3: DUP3
00001de4: DUP2
00001de5: MSTORE
00001de6: PUSH1 0x20
00001de8: ADD
00001de9: SWAP3
00001dea: POP
00001deb: POP
00001dec: POP
00001ded: PUSH1 0x00
00001def: PUSH1 0x40
00001df1: MLOAD
00001df2: DUP1
00001df3: DUP4
00001df4: SUB
00001df5: DUP2
00001df6: PUSH1 0x00
00001df8: DUP8
00001df9: DUP1
00001dfa: EXTCODESIZE
00001dfb: ISZERO
00001dfc: DUP1
00001dfd: ISZERO
00001dfe: PUSH2 0x1e06
00001e01: JUMPI
00001e02: PUSH1 0x00
00001e04: DUP1
00001e05: REVERT
00001e06: JUMPDEST
00001e07: POP
00001e08: GAS
00001e09: CALL
00001e0a: ISZERO
00001e0b: DUP1
00001e0c: ISZERO
00001e0d: PUSH2 0x1e1a
00001e10: JUMPI
00001e11: RETURNDATASIZE
00001e12: PUSH1 0x00
00001e14: DUP1
00001e15: RETURNDATACOPY
00001e16: RETURNDATASIZE
00001e17: PUSH1 0x00
00001e19: REVERT
00001e1a: JUMPDEST
00001e1b: POP
00001e1c: POP
00001e1d: POP
00001e1e: POP
00001e1f: JUMPDEST
00001e20: PUSH1 0x00
00001e22: PUSH1 0x07
00001e24: PUSH1 0x00
00001e26: SWAP1
00001e27: SLOAD
00001e28: SWAP1
00001e29: PUSH2 0x0100
00001e2c: EXP
00001e2d: SWAP1
00001e2e: DIV
00001e2f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e44: AND
00001e45: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e5a: AND
00001e5b: PUSH4 0x51338ee3
00001e60: CALLER
00001e61: PUSH1 0x40
00001e63: MLOAD
00001e64: DUP3
00001e65: PUSH4 0xffffffff
00001e6a: AND
00001e6b: PUSH1 0xe0
00001e6d: SHL
00001e6e: DUP2
00001e6f: MSTORE
00001e70: PUSH1 0x04
00001e72: ADD
00001e73: DUP1
00001e74: DUP3
00001e75: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001e8a: AND
00001e8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ea0: AND
00001ea1: DUP2
00001ea2: MSTORE
00001ea3: PUSH1 0x20
00001ea5: ADD
00001ea6: SWAP2
00001ea7: POP
00001ea8: POP
00001ea9: PUSH1 0x20
00001eab: PUSH1 0x40
00001ead: MLOAD
00001eae: DUP1
00001eaf: DUP4
00001eb0: SUB
00001eb1: DUP2
00001eb2: DUP7
00001eb3: DUP1
00001eb4: EXTCODESIZE
00001eb5: ISZERO
00001eb6: DUP1
00001eb7: ISZERO
00001eb8: PUSH2 0x1ec0
00001ebb: JUMPI
00001ebc: PUSH1 0x00
00001ebe: DUP1
00001ebf: REVERT
00001ec0: JUMPDEST
00001ec1: POP
00001ec2: GAS
00001ec3: STATICCALL
00001ec4: ISZERO
00001ec5: DUP1
00001ec6: ISZERO
00001ec7: PUSH2 0x1ed4
00001eca: JUMPI
00001ecb: RETURNDATASIZE
00001ecc: PUSH1 0x00
00001ece: DUP1
00001ecf: RETURNDATACOPY
00001ed0: RETURNDATASIZE
00001ed1: PUSH1 0x00
00001ed3: REVERT
00001ed4: JUMPDEST
00001ed5: POP
00001ed6: POP
00001ed7: POP
00001ed8: POP
00001ed9: PUSH1 0x40
00001edb: MLOAD
00001edc: RETURNDATASIZE
00001edd: PUSH1 0x20
00001edf: DUP2
00001ee0: LT
00001ee1: ISZERO
00001ee2: PUSH2 0x1eea
00001ee5: JUMPI
00001ee6: PUSH1 0x00
00001ee8: DUP1
00001ee9: REVERT
00001eea: JUMPDEST
00001eeb: DUP2
00001eec: ADD
00001eed: SWAP1
00001eee: DUP1
00001eef: DUP1
00001ef0: MLOAD
00001ef1: SWAP1
00001ef2: PUSH1 0x20
00001ef4: ADD
00001ef5: SWAP1
00001ef6: SWAP3
00001ef7: SWAP2
00001ef8: SWAP1
00001ef9: POP
00001efa: POP
00001efb: POP
00001efc: EQ
00001efd: ISZERO
00001efe: PUSH2 0x1fdf
00001f01: JUMPI
00001f02: PUSH1 0x07
00001f04: PUSH1 0x00
00001f06: SWAP1
00001f07: SLOAD
00001f08: SWAP1
00001f09: PUSH2 0x0100
00001f0c: EXP
00001f0d: SWAP1
00001f0e: DIV
00001f0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f24: AND
00001f25: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f3a: AND
00001f3b: PUSH4 0x2da0cd00
00001f40: CALLER
00001f41: PUSH1 0x40
00001f43: MLOAD
00001f44: DUP3
00001f45: PUSH4 0xffffffff
00001f4a: AND
00001f4b: PUSH1 0xe0
00001f4d: SHL
00001f4e: DUP2
00001f4f: MSTORE
00001f50: PUSH1 0x04
00001f52: ADD
00001f53: DUP1
00001f54: DUP3
00001f55: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f6a: AND
00001f6b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001f80: AND
00001f81: DUP2
00001f82: MSTORE
00001f83: PUSH1 0x20
00001f85: ADD
00001f86: SWAP2
00001f87: POP
00001f88: POP
00001f89: PUSH1 0x20
00001f8b: PUSH1 0x40
00001f8d: MLOAD
00001f8e: DUP1
00001f8f: DUP4
00001f90: SUB
00001f91: DUP2
00001f92: PUSH1 0x00
00001f94: DUP8
00001f95: DUP1
00001f96: EXTCODESIZE
00001f97: ISZERO
00001f98: DUP1
00001f99: ISZERO
00001f9a: PUSH2 0x1fa2
00001f9d: JUMPI
00001f9e: PUSH1 0x00
00001fa0: DUP1
00001fa1: REVERT
00001fa2: JUMPDEST
00001fa3: POP
00001fa4: GAS
00001fa5: CALL
00001fa6: ISZERO
00001fa7: DUP1
00001fa8: ISZERO
00001fa9: PUSH2 0x1fb6
00001fac: JUMPI
00001fad: RETURNDATASIZE
00001fae: PUSH1 0x00
00001fb0: DUP1
00001fb1: RETURNDATACOPY
00001fb2: RETURNDATASIZE
00001fb3: PUSH1 0x00
00001fb5: REVERT
00001fb6: JUMPDEST
00001fb7: POP
00001fb8: POP
00001fb9: POP
00001fba: POP
00001fbb: PUSH1 0x40
00001fbd: MLOAD
00001fbe: RETURNDATASIZE
00001fbf: PUSH1 0x20
00001fc1: DUP2
00001fc2: LT
00001fc3: ISZERO
00001fc4: PUSH2 0x1fcc
00001fc7: JUMPI
00001fc8: PUSH1 0x00
00001fca: DUP1
00001fcb: REVERT
00001fcc: JUMPDEST
00001fcd: DUP2
00001fce: ADD
00001fcf: SWAP1
00001fd0: DUP1
00001fd1: DUP1
00001fd2: MLOAD
00001fd3: SWAP1
00001fd4: PUSH1 0x20
00001fd6: ADD
00001fd7: SWAP1
00001fd8: SWAP3
00001fd9: SWAP2
00001fda: SWAP1
00001fdb: POP
00001fdc: POP
00001fdd: POP
00001fde: POP
00001fdf: JUMPDEST
00001fe0: JUMPDEST
00001fe1: PUSH1 0x00
00001fe3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00001ff8: AND
00001ff9: DUP6
00001ffa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000200f: AND
00002010: EQ
00002011: ISZERO
00002012: PUSH2 0x242e
00002015: JUMPI
00002016: PUSH1 0x00
00002018: CALLVALUE
00002019: GT
0000201a: PUSH2 0x208b
0000201d: JUMPI
0000201e: PUSH1 0x40
00002020: MLOAD
00002021: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002042: DUP2
00002043: MSTORE
00002044: PUSH1 0x04
00002046: ADD
00002047: DUP1
00002048: DUP1
00002049: PUSH1 0x20
0000204b: ADD
0000204c: DUP3
0000204d: DUP2
0000204e: SUB
0000204f: DUP3
00002050: MSTORE
00002051: PUSH1 0x1c
00002053: DUP2
00002054: MSTORE
00002055: PUSH1 0x20
00002057: ADD
00002058: DUP1
00002059: PUSH32 0x4c6f636b44726f70204554483a20496e76616c696420416d6f756e7400000000
0000207a: DUP2
0000207b: MSTORE
0000207c: POP
0000207d: PUSH1 0x20
0000207f: ADD
00002080: SWAP2
00002081: POP
00002082: POP
00002083: PUSH1 0x40
00002085: MLOAD
00002086: DUP1
00002087: SWAP2
00002088: SUB
00002089: SWAP1
0000208a: REVERT
0000208b: JUMPDEST
0000208c: PUSH2 0x2137
0000208f: PUSH1 0x02
00002091: PUSH1 0x00
00002093: PUSH1 0x05
00002095: PUSH1 0x01
00002097: SWAP1
00002098: SLOAD
00002099: SWAP1
0000209a: PUSH2 0x0100
0000209d: EXP
0000209e: SWAP1
0000209f: DIV
000020a0: PUSH1 0xff
000020a2: AND
000020a3: PUSH1 0xff
000020a5: AND
000020a6: PUSH1 0xff
000020a8: AND
000020a9: DUP2
000020aa: MSTORE
000020ab: PUSH1 0x20
000020ad: ADD
000020ae: SWAP1
000020af: DUP2
000020b0: MSTORE
000020b1: PUSH1 0x20
000020b3: ADD
000020b4: PUSH1 0x00
000020b6: KECCAK256
000020b7: PUSH1 0x00
000020b9: DUP1
000020ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000020cf: AND
000020d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000020e5: AND
000020e6: DUP2
000020e7: MSTORE
000020e8: PUSH1 0x20
000020ea: ADD
000020eb: SWAP1
000020ec: DUP2
000020ed: MSTORE
000020ee: PUSH1 0x20
000020f0: ADD
000020f1: PUSH1 0x00
000020f3: KECCAK256
000020f4: PUSH1 0x00
000020f6: CALLER
000020f7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000210c: AND
0000210d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002122: AND
00002123: DUP2
00002124: MSTORE
00002125: PUSH1 0x20
00002127: ADD
00002128: SWAP1
00002129: DUP2
0000212a: MSTORE
0000212b: PUSH1 0x20
0000212d: ADD
0000212e: PUSH1 0x00
00002130: KECCAK256
00002131: SLOAD
00002132: CALLVALUE
00002133: PUSH2 0x2ddb
00002136: JUMP
00002137: JUMPDEST
00002138: PUSH1 0x02
0000213a: PUSH1 0x00
0000213c: PUSH1 0x05
0000213e: PUSH1 0x01
00002140: SWAP1
00002141: SLOAD
00002142: SWAP1
00002143: PUSH2 0x0100
00002146: EXP
00002147: SWAP1
00002148: DIV
00002149: PUSH1 0xff
0000214b: AND
0000214c: PUSH1 0xff
0000214e: AND
0000214f: PUSH1 0xff
00002151: AND
00002152: DUP2
00002153: MSTORE
00002154: PUSH1 0x20
00002156: ADD
00002157: SWAP1
00002158: DUP2
00002159: MSTORE
0000215a: PUSH1 0x20
0000215c: ADD
0000215d: PUSH1 0x00
0000215f: KECCAK256
00002160: PUSH1 0x00
00002162: DUP1
00002163: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002178: AND
00002179: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000218e: AND
0000218f: DUP2
00002190: MSTORE
00002191: PUSH1 0x20
00002193: ADD
00002194: SWAP1
00002195: DUP2
00002196: MSTORE
00002197: PUSH1 0x20
00002199: ADD
0000219a: PUSH1 0x00
0000219c: KECCAK256
0000219d: PUSH1 0x00
0000219f: CALLER
000021a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021b5: AND
000021b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000021cb: AND
000021cc: DUP2
000021cd: MSTORE
000021ce: PUSH1 0x20
000021d0: ADD
000021d1: SWAP1
000021d2: DUP2
000021d3: MSTORE
000021d4: PUSH1 0x20
000021d6: ADD
000021d7: PUSH1 0x00
000021d9: KECCAK256
000021da: DUP2
000021db: SWAP1
000021dc: SSTORE
000021dd: POP
000021de: PUSH1 0x00
000021e0: DUP1
000021e1: PUSH2 0x228b
000021e4: PUSH1 0x02
000021e6: PUSH1 0x00
000021e8: PUSH1 0x05
000021ea: PUSH1 0x01
000021ec: SWAP1
000021ed: SLOAD
000021ee: SWAP1
000021ef: PUSH2 0x0100
000021f2: EXP
000021f3: SWAP1
000021f4: DIV
000021f5: PUSH1 0xff
000021f7: AND
000021f8: PUSH1 0xff
000021fa: AND
000021fb: PUSH1 0xff
000021fd: AND
000021fe: DUP2
000021ff: MSTORE
00002200: PUSH1 0x20
00002202: ADD
00002203: SWAP1
00002204: DUP2
00002205: MSTORE
00002206: PUSH1 0x20
00002208: ADD
00002209: PUSH1 0x00
0000220b: KECCAK256
0000220c: PUSH1 0x00
0000220e: DUP1
0000220f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002224: AND
00002225: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000223a: AND
0000223b: DUP2
0000223c: MSTORE
0000223d: PUSH1 0x20
0000223f: ADD
00002240: SWAP1
00002241: DUP2
00002242: MSTORE
00002243: PUSH1 0x20
00002245: ADD
00002246: PUSH1 0x00
00002248: KECCAK256
00002249: PUSH1 0x00
0000224b: CALLER
0000224c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002261: AND
00002262: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002277: AND
00002278: DUP2
00002279: MSTORE
0000227a: PUSH1 0x20
0000227c: ADD
0000227d: SWAP1
0000227e: DUP2
0000227f: MSTORE
00002280: PUSH1 0x20
00002282: ADD
00002283: PUSH1 0x00
00002285: KECCAK256
00002286: SLOAD
00002287: PUSH2 0x2c5b
0000228a: JUMP
0000228b: JUMPDEST
0000228c: SWAP2
0000228d: POP
0000228e: SWAP2
0000228f: POP
00002290: PUSH1 0x40
00002292: MLOAD
00002293: DUP1
00002294: PUSH1 0x60
00002296: ADD
00002297: PUSH1 0x40
00002299: MSTORE
0000229a: DUP1
0000229b: TIMESTAMP
0000229c: DUP2
0000229d: MSTORE
0000229e: PUSH1 0x20
000022a0: ADD
000022a1: CALLVALUE
000022a2: DUP2
000022a3: MSTORE
000022a4: PUSH1 0x20
000022a6: ADD
000022a7: DUP6
000022a8: PUSH1 0xff
000022aa: AND
000022ab: DUP2
000022ac: MSTORE
000022ad: POP
000022ae: PUSH1 0x01
000022b0: PUSH1 0x00
000022b2: PUSH1 0x05
000022b4: PUSH1 0x01
000022b6: SWAP1
000022b7: SLOAD
000022b8: SWAP1
000022b9: PUSH2 0x0100
000022bc: EXP
000022bd: SWAP1
000022be: DIV
000022bf: PUSH1 0xff
000022c1: AND
000022c2: PUSH1 0xff
000022c4: AND
000022c5: PUSH1 0xff
000022c7: AND
000022c8: DUP2
000022c9: MSTORE
000022ca: PUSH1 0x20
000022cc: ADD
000022cd: SWAP1
000022ce: DUP2
000022cf: MSTORE
000022d0: PUSH1 0x20
000022d2: ADD
000022d3: PUSH1 0x00
000022d5: KECCAK256
000022d6: PUSH1 0x00
000022d8: DUP1
000022d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000022ee: AND
000022ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002304: AND
00002305: DUP2
00002306: MSTORE
00002307: PUSH1 0x20
00002309: ADD
0000230a: SWAP1
0000230b: DUP2
0000230c: MSTORE
0000230d: PUSH1 0x20
0000230f: ADD
00002310: PUSH1 0x00
00002312: KECCAK256
00002313: PUSH1 0x00
00002315: CALLER
00002316: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000232b: AND
0000232c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002341: AND
00002342: DUP2
00002343: MSTORE
00002344: PUSH1 0x20
00002346: ADD
00002347: SWAP1
00002348: DUP2
00002349: MSTORE
0000234a: PUSH1 0x20
0000234c: ADD
0000234d: PUSH1 0x00
0000234f: KECCAK256
00002350: PUSH1 0x00
00002352: DUP4
00002353: DUP2
00002354: MSTORE
00002355: PUSH1 0x20
00002357: ADD
00002358: SWAP1
00002359: DUP2
0000235a: MSTORE
0000235b: PUSH1 0x20
0000235d: ADD
0000235e: PUSH1 0x00
00002360: KECCAK256
00002361: PUSH1 0x00
00002363: DUP3
00002364: ADD
00002365: MLOAD
00002366: DUP2
00002367: PUSH1 0x00
00002369: ADD
0000236a: SSTORE
0000236b: PUSH1 0x20
0000236d: DUP3
0000236e: ADD
0000236f: MLOAD
00002370: DUP2
00002371: PUSH1 0x01
00002373: ADD
00002374: SSTORE
00002375: PUSH1 0x40
00002377: DUP3
00002378: ADD
00002379: MLOAD
0000237a: DUP2
0000237b: PUSH1 0x02
0000237d: ADD
0000237e: PUSH1 0x00
00002380: PUSH2 0x0100
00002383: EXP
00002384: DUP2
00002385: SLOAD
00002386: DUP2
00002387: PUSH1 0xff
00002389: MUL
0000238a: NOT
0000238b: AND
0000238c: SWAP1
0000238d: DUP4
0000238e: PUSH1 0xff
00002390: AND
00002391: MUL
00002392: OR
00002393: SWAP1
00002394: SSTORE
00002395: POP
00002396: SWAP1
00002397: POP
00002398: POP
00002399: PUSH1 0x00
0000239b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000023b0: AND
000023b1: CALLER
000023b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000023c7: AND
000023c8: PUSH1 0x05
000023ca: PUSH1 0x01
000023cc: SWAP1
000023cd: SLOAD
000023ce: SWAP1
000023cf: PUSH2 0x0100
000023d2: EXP
000023d3: SWAP1
000023d4: DIV
000023d5: PUSH1 0xff
000023d7: AND
000023d8: PUSH1 0xff
000023da: AND
000023db: PUSH32 0x80eba70f034771265c51570ec2388cfb519c2e4975faa37aec8265fe292e596b
000023fc: DUP8
000023fd: CALLVALUE
000023fe: TIMESTAMP
000023ff: PUSH1 0x40
00002401: MLOAD
00002402: DUP1
00002403: DUP5
00002404: PUSH1 0xff
00002406: AND
00002407: PUSH1 0xff
00002409: AND
0000240a: DUP2
0000240b: MSTORE
0000240c: PUSH1 0x20
0000240e: ADD
0000240f: DUP4
00002410: DUP2
00002411: MSTORE
00002412: PUSH1 0x20
00002414: ADD
00002415: DUP3
00002416: DUP2
00002417: MSTORE
00002418: PUSH1 0x20
0000241a: ADD
0000241b: SWAP4
0000241c: POP
0000241d: POP
0000241e: POP
0000241f: POP
00002420: PUSH1 0x40
00002422: MLOAD
00002423: DUP1
00002424: SWAP2
00002425: SUB
00002426: SWAP1
00002427: LOG4
00002428: POP
00002429: POP
0000242a: PUSH2 0x2875
0000242d: JUMP
0000242e: JUMPDEST
0000242f: PUSH1 0x00
00002431: DUP5
00002432: GT
00002433: PUSH2 0x24a4
00002436: JUMPI
00002437: PUSH1 0x40
00002439: MLOAD
0000243a: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000245b: DUP2
0000245c: MSTORE
0000245d: PUSH1 0x04
0000245f: ADD
00002460: DUP1
00002461: DUP1
00002462: PUSH1 0x20
00002464: ADD
00002465: DUP3
00002466: DUP2
00002467: SUB
00002468: DUP3
00002469: MSTORE
0000246a: PUSH1 0x1e
0000246c: DUP2
0000246d: MSTORE
0000246e: PUSH1 0x20
00002470: ADD
00002471: DUP1
00002472: PUSH32 0x4c6f636b44726f702045524332303a20496e76616c696420416d6f756e740000
00002493: DUP2
00002494: MSTORE
00002495: POP
00002496: PUSH1 0x20
00002498: ADD
00002499: SWAP2
0000249a: POP
0000249b: POP
0000249c: PUSH1 0x40
0000249e: MLOAD
0000249f: DUP1
000024a0: SWAP2
000024a1: SUB
000024a2: SWAP1
000024a3: REVERT
000024a4: JUMPDEST
000024a5: PUSH1 0x00
000024a7: DUP6
000024a8: SWAP1
000024a9: POP
000024aa: PUSH2 0x24d6
000024ad: CALLER
000024ae: ADDRESS
000024af: DUP8
000024b0: DUP5
000024b1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000024c6: AND
000024c7: PUSH2 0x2e77
000024ca: SWAP1
000024cb: SWAP4
000024cc: SWAP3
000024cd: SWAP2
000024ce: SWAP1
000024cf: PUSH4 0xffffffff
000024d4: AND
000024d5: JUMP
000024d6: JUMPDEST
000024d7: PUSH2 0x2582
000024da: PUSH1 0x02
000024dc: PUSH1 0x00
000024de: PUSH1 0x05
000024e0: PUSH1 0x01
000024e2: SWAP1
000024e3: SLOAD
000024e4: SWAP1
000024e5: PUSH2 0x0100
000024e8: EXP
000024e9: SWAP1
000024ea: DIV
000024eb: PUSH1 0xff
000024ed: AND
000024ee: PUSH1 0xff
000024f0: AND
000024f1: PUSH1 0xff
000024f3: AND
000024f4: DUP2
000024f5: MSTORE
000024f6: PUSH1 0x20
000024f8: ADD
000024f9: SWAP1
000024fa: DUP2
000024fb: MSTORE
000024fc: PUSH1 0x20
000024fe: ADD
000024ff: PUSH1 0x00
00002501: KECCAK256
00002502: PUSH1 0x00
00002504: DUP9
00002505: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000251a: AND
0000251b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002530: AND
00002531: DUP2
00002532: MSTORE
00002533: PUSH1 0x20
00002535: ADD
00002536: SWAP1
00002537: DUP2
00002538: MSTORE
00002539: PUSH1 0x20
0000253b: ADD
0000253c: PUSH1 0x00
0000253e: KECCAK256
0000253f: PUSH1 0x00
00002541: CALLER
00002542: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002557: AND
00002558: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000256d: AND
0000256e: DUP2
0000256f: MSTORE
00002570: PUSH1 0x20
00002572: ADD
00002573: SWAP1
00002574: DUP2
00002575: MSTORE
00002576: PUSH1 0x20
00002578: ADD
00002579: PUSH1 0x00
0000257b: KECCAK256
0000257c: SLOAD
0000257d: DUP7
0000257e: PUSH2 0x2ddb
00002581: JUMP
00002582: JUMPDEST
00002583: PUSH1 0x02
00002585: PUSH1 0x00
00002587: PUSH1 0x05
00002589: PUSH1 0x01
0000258b: SWAP1
0000258c: SLOAD
0000258d: SWAP1
0000258e: PUSH2 0x0100
00002591: EXP
00002592: SWAP1
00002593: DIV
00002594: PUSH1 0xff
00002596: AND
00002597: PUSH1 0xff
00002599: AND
0000259a: PUSH1 0xff
0000259c: AND
0000259d: DUP2
0000259e: MSTORE
0000259f: PUSH1 0x20
000025a1: ADD
000025a2: SWAP1
000025a3: DUP2
000025a4: MSTORE
000025a5: PUSH1 0x20
000025a7: ADD
000025a8: PUSH1 0x00
000025aa: KECCAK256
000025ab: PUSH1 0x00
000025ad: DUP9
000025ae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025c3: AND
000025c4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000025d9: AND
000025da: DUP2
000025db: MSTORE
000025dc: PUSH1 0x20
000025de: ADD
000025df: SWAP1
000025e0: DUP2
000025e1: MSTORE
000025e2: PUSH1 0x20
000025e4: ADD
000025e5: PUSH1 0x00
000025e7: KECCAK256
000025e8: PUSH1 0x00
000025ea: CALLER
000025eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002600: AND
00002601: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002616: AND
00002617: DUP2
00002618: MSTORE
00002619: PUSH1 0x20
0000261b: ADD
0000261c: SWAP1
0000261d: DUP2
0000261e: MSTORE
0000261f: PUSH1 0x20
00002621: ADD
00002622: PUSH1 0x00
00002624: KECCAK256
00002625: DUP2
00002626: SWAP1
00002627: SSTORE
00002628: POP
00002629: PUSH1 0x00
0000262b: DUP1
0000262c: PUSH2 0x26d6
0000262f: PUSH1 0x02
00002631: PUSH1 0x00
00002633: PUSH1 0x05
00002635: PUSH1 0x01
00002637: SWAP1
00002638: SLOAD
00002639: SWAP1
0000263a: PUSH2 0x0100
0000263d: EXP
0000263e: SWAP1
0000263f: DIV
00002640: PUSH1 0xff
00002642: AND
00002643: PUSH1 0xff
00002645: AND
00002646: PUSH1 0xff
00002648: AND
00002649: DUP2
0000264a: MSTORE
0000264b: PUSH1 0x20
0000264d: ADD
0000264e: SWAP1
0000264f: DUP2
00002650: MSTORE
00002651: PUSH1 0x20
00002653: ADD
00002654: PUSH1 0x00
00002656: KECCAK256
00002657: PUSH1 0x00
00002659: DUP11
0000265a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000266f: AND
00002670: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002685: AND
00002686: DUP2
00002687: MSTORE
00002688: PUSH1 0x20
0000268a: ADD
0000268b: SWAP1
0000268c: DUP2
0000268d: MSTORE
0000268e: PUSH1 0x20
00002690: ADD
00002691: PUSH1 0x00
00002693: KECCAK256
00002694: PUSH1 0x00
00002696: CALLER
00002697: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026ac: AND
000026ad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000026c2: AND
000026c3: DUP2
000026c4: MSTORE
000026c5: PUSH1 0x20
000026c7: ADD
000026c8: SWAP1
000026c9: DUP2
000026ca: MSTORE
000026cb: PUSH1 0x20
000026cd: ADD
000026ce: PUSH1 0x00
000026d0: KECCAK256
000026d1: SLOAD
000026d2: PUSH2 0x2c5b
000026d5: JUMP
000026d6: JUMPDEST
000026d7: SWAP2
000026d8: POP
000026d9: SWAP2
000026da: POP
000026db: PUSH1 0x40
000026dd: MLOAD
000026de: DUP1
000026df: PUSH1 0x60
000026e1: ADD
000026e2: PUSH1 0x40
000026e4: MSTORE
000026e5: DUP1
000026e6: TIMESTAMP
000026e7: DUP2
000026e8: MSTORE
000026e9: PUSH1 0x20
000026eb: ADD
000026ec: DUP9
000026ed: DUP2
000026ee: MSTORE
000026ef: PUSH1 0x20
000026f1: ADD
000026f2: DUP7
000026f3: PUSH1 0xff
000026f5: AND
000026f6: DUP2
000026f7: MSTORE
000026f8: POP
000026f9: PUSH1 0x01
000026fb: PUSH1 0x00
000026fd: PUSH1 0x05
000026ff: PUSH1 0x01
00002701: SWAP1
00002702: SLOAD
00002703: SWAP1
00002704: PUSH2 0x0100
00002707: EXP
00002708: SWAP1
00002709: DIV
0000270a: PUSH1 0xff
0000270c: AND
0000270d: PUSH1 0xff
0000270f: AND
00002710: PUSH1 0xff
00002712: AND
00002713: DUP2
00002714: MSTORE
00002715: PUSH1 0x20
00002717: ADD
00002718: SWAP1
00002719: DUP2
0000271a: MSTORE
0000271b: PUSH1 0x20
0000271d: ADD
0000271e: PUSH1 0x00
00002720: KECCAK256
00002721: PUSH1 0x00
00002723: DUP11
00002724: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002739: AND
0000273a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000274f: AND
00002750: DUP2
00002751: MSTORE
00002752: PUSH1 0x20
00002754: ADD
00002755: SWAP1
00002756: DUP2
00002757: MSTORE
00002758: PUSH1 0x20
0000275a: ADD
0000275b: PUSH1 0x00
0000275d: KECCAK256
0000275e: PUSH1 0x00
00002760: CALLER
00002761: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002776: AND
00002777: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000278c: AND
0000278d: DUP2
0000278e: MSTORE
0000278f: PUSH1 0x20
00002791: ADD
00002792: SWAP1
00002793: DUP2
00002794: MSTORE
00002795: PUSH1 0x20
00002797: ADD
00002798: PUSH1 0x00
0000279a: KECCAK256
0000279b: PUSH1 0x00
0000279d: DUP4
0000279e: DUP2
0000279f: MSTORE
000027a0: PUSH1 0x20
000027a2: ADD
000027a3: SWAP1
000027a4: DUP2
000027a5: MSTORE
000027a6: PUSH1 0x20
000027a8: ADD
000027a9: PUSH1 0x00
000027ab: KECCAK256
000027ac: PUSH1 0x00
000027ae: DUP3
000027af: ADD
000027b0: MLOAD
000027b1: DUP2
000027b2: PUSH1 0x00
000027b4: ADD
000027b5: SSTORE
000027b6: PUSH1 0x20
000027b8: DUP3
000027b9: ADD
000027ba: MLOAD
000027bb: DUP2
000027bc: PUSH1 0x01
000027be: ADD
000027bf: SSTORE
000027c0: PUSH1 0x40
000027c2: DUP3
000027c3: ADD
000027c4: MLOAD
000027c5: DUP2
000027c6: PUSH1 0x02
000027c8: ADD
000027c9: PUSH1 0x00
000027cb: PUSH2 0x0100
000027ce: EXP
000027cf: DUP2
000027d0: SLOAD
000027d1: DUP2
000027d2: PUSH1 0xff
000027d4: MUL
000027d5: NOT
000027d6: AND
000027d7: SWAP1
000027d8: DUP4
000027d9: PUSH1 0xff
000027db: AND
000027dc: MUL
000027dd: OR
000027de: SWAP1
000027df: SSTORE
000027e0: POP
000027e1: SWAP1
000027e2: POP
000027e3: POP
000027e4: DUP8
000027e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000027fa: AND
000027fb: CALLER
000027fc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002811: AND
00002812: PUSH1 0x05
00002814: PUSH1 0x01
00002816: SWAP1
00002817: SLOAD
00002818: SWAP1
00002819: PUSH2 0x0100
0000281c: EXP
0000281d: SWAP1
0000281e: DIV
0000281f: PUSH1 0xff
00002821: AND
00002822: PUSH1 0xff
00002824: AND
00002825: PUSH32 0x80eba70f034771265c51570ec2388cfb519c2e4975faa37aec8265fe292e596b
00002846: DUP9
00002847: DUP12
00002848: TIMESTAMP
00002849: PUSH1 0x40
0000284b: MLOAD
0000284c: DUP1
0000284d: DUP5
0000284e: PUSH1 0xff
00002850: AND
00002851: PUSH1 0xff
00002853: AND
00002854: DUP2
00002855: MSTORE
00002856: PUSH1 0x20
00002858: ADD
00002859: DUP4
0000285a: DUP2
0000285b: MSTORE
0000285c: PUSH1 0x20
0000285e: ADD
0000285f: DUP3
00002860: DUP2
00002861: MSTORE
00002862: PUSH1 0x20
00002864: ADD
00002865: SWAP4
00002866: POP
00002867: POP
00002868: POP
00002869: POP
0000286a: PUSH1 0x40
0000286c: MLOAD
0000286d: DUP1
0000286e: SWAP2
0000286f: SUB
00002870: SWAP1
00002871: LOG4
00002872: POP
00002873: POP
00002874: POP
00002875: JUMPDEST
00002876: POP
00002877: POP
00002878: POP
00002879: POP
0000287a: POP
0000287b: JUMP
0000287c: JUMPDEST
0000287d: PUSH1 0x07
0000287f: PUSH1 0x00
00002881: SWAP1
00002882: SLOAD
00002883: SWAP1
00002884: PUSH2 0x0100
00002887: EXP
00002888: SWAP1
00002889: DIV
0000288a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000289f: AND
000028a0: DUP2
000028a1: JUMP
000028a2: JUMPDEST
000028a3: PUSH1 0x60
000028a5: DUP1
000028a6: PUSH1 0x60
000028a8: PUSH1 0x00
000028aa: DUP7
000028ab: PUSH1 0xff
000028ad: AND
000028ae: EQ
000028af: ISZERO
000028b0: PUSH2 0x28c6
000028b3: JUMPI
000028b4: PUSH1 0x05
000028b6: PUSH1 0x01
000028b8: SWAP1
000028b9: SLOAD
000028ba: SWAP1
000028bb: PUSH2 0x0100
000028be: EXP
000028bf: SWAP1
000028c0: DIV
000028c1: PUSH1 0xff
000028c3: AND
000028c4: SWAP6
000028c5: POP
000028c6: JUMPDEST
000028c7: PUSH1 0x00
000028c9: DUP1
000028ca: PUSH2 0x2965
000028cd: PUSH1 0x02
000028cf: PUSH1 0x00
000028d1: DUP11
000028d2: PUSH1 0xff
000028d4: AND
000028d5: PUSH1 0xff
000028d7: AND
000028d8: DUP2
000028d9: MSTORE
000028da: PUSH1 0x20
000028dc: ADD
000028dd: SWAP1
000028de: DUP2
000028df: MSTORE
000028e0: PUSH1 0x20
000028e2: ADD
000028e3: PUSH1 0x00
000028e5: KECCAK256
000028e6: PUSH1 0x00
000028e8: DUP10
000028e9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000028fe: AND
000028ff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002914: AND
00002915: DUP2
00002916: MSTORE
00002917: PUSH1 0x20
00002919: ADD
0000291a: SWAP1
0000291b: DUP2
0000291c: MSTORE
0000291d: PUSH1 0x20
0000291f: ADD
00002920: PUSH1 0x00
00002922: KECCAK256
00002923: PUSH1 0x00
00002925: DUP9
00002926: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000293b: AND
0000293c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002951: AND
00002952: DUP2
00002953: MSTORE
00002954: PUSH1 0x20
00002956: ADD
00002957: SWAP1
00002958: DUP2
00002959: MSTORE
0000295a: PUSH1 0x20
0000295c: ADD
0000295d: PUSH1 0x00
0000295f: KECCAK256
00002960: SLOAD
00002961: PUSH2 0x2c5b
00002964: JUMP
00002965: JUMPDEST
00002966: SWAP2
00002967: POP
00002968: SWAP2
00002969: POP
0000296a: DUP1
0000296b: PUSH1 0x40
0000296d: MLOAD
0000296e: SWAP1
0000296f: DUP1
00002970: DUP3
00002971: MSTORE
00002972: DUP1
00002973: PUSH1 0x20
00002975: MUL
00002976: PUSH1 0x20
00002978: ADD
00002979: DUP3
0000297a: ADD
0000297b: PUSH1 0x40
0000297d: MSTORE
0000297e: DUP1
0000297f: ISZERO
00002980: PUSH2 0x2998
00002983: JUMPI
00002984: DUP2
00002985: PUSH1 0x20
00002987: ADD
00002988: PUSH1 0x20
0000298a: DUP3
0000298b: MUL
0000298c: DUP1
0000298d: CODESIZE
0000298e: DUP4
0000298f: CODECOPY
00002990: DUP1
00002991: DUP3
00002992: ADD
00002993: SWAP2
00002994: POP
00002995: POP
00002996: SWAP1
00002997: POP
00002998: JUMPDEST
00002999: POP
0000299a: SWAP5
0000299b: POP
0000299c: DUP1
0000299d: PUSH1 0x40
0000299f: MLOAD
000029a0: SWAP1
000029a1: DUP1
000029a2: DUP3
000029a3: MSTORE
000029a4: DUP1
000029a5: PUSH1 0x20
000029a7: MUL
000029a8: PUSH1 0x20
000029aa: ADD
000029ab: DUP3
000029ac: ADD
000029ad: PUSH1 0x40
000029af: MSTORE
000029b0: DUP1
000029b1: ISZERO
000029b2: PUSH2 0x29ca
000029b5: JUMPI
000029b6: DUP2
000029b7: PUSH1 0x20
000029b9: ADD
000029ba: PUSH1 0x20
000029bc: DUP3
000029bd: MUL
000029be: DUP1
000029bf: CODESIZE
000029c0: DUP4
000029c1: CODECOPY
000029c2: DUP1
000029c3: DUP3
000029c4: ADD
000029c5: SWAP2
000029c6: POP
000029c7: POP
000029c8: SWAP1
000029c9: POP
000029ca: JUMPDEST
000029cb: POP
000029cc: SWAP4
000029cd: POP
000029ce: DUP1
000029cf: PUSH1 0x40
000029d1: MLOAD
000029d2: SWAP1
000029d3: DUP1
000029d4: DUP3
000029d5: MSTORE
000029d6: DUP1
000029d7: PUSH1 0x20
000029d9: MUL
000029da: PUSH1 0x20
000029dc: ADD
000029dd: DUP3
000029de: ADD
000029df: PUSH1 0x40
000029e1: MSTORE
000029e2: DUP1
000029e3: ISZERO
000029e4: PUSH2 0x29fc
000029e7: JUMPI
000029e8: DUP2
000029e9: PUSH1 0x20
000029eb: ADD
000029ec: PUSH1 0x20
000029ee: DUP3
000029ef: MUL
000029f0: DUP1
000029f1: CODESIZE
000029f2: DUP4
000029f3: CODECOPY
000029f4: DUP1
000029f5: DUP3
000029f6: ADD
000029f7: SWAP2
000029f8: POP
000029f9: POP
000029fa: SWAP1
000029fb: POP
000029fc: JUMPDEST
000029fd: POP
000029fe: SWAP3
000029ff: POP
00002a00: PUSH1 0x00
00002a02: PUSH1 0x01
00002a04: SWAP1
00002a05: POP
00002a06: JUMPDEST
00002a07: DUP2
00002a08: DUP2
00002a09: GT
00002a0a: PUSH2 0x2b6d
00002a0d: JUMPI
00002a0e: PUSH2 0x2a15
00002a11: PUSH2 0x329b
00002a14: JUMP
00002a15: JUMPDEST
00002a16: PUSH1 0x01
00002a18: PUSH1 0x00
00002a1a: DUP12
00002a1b: PUSH1 0xff
00002a1d: AND
00002a1e: PUSH1 0xff
00002a20: AND
00002a21: DUP2
00002a22: MSTORE
00002a23: PUSH1 0x20
00002a25: ADD
00002a26: SWAP1
00002a27: DUP2
00002a28: MSTORE
00002a29: PUSH1 0x20
00002a2b: ADD
00002a2c: PUSH1 0x00
00002a2e: KECCAK256
00002a2f: PUSH1 0x00
00002a31: DUP11
00002a32: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a47: AND
00002a48: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a5d: AND
00002a5e: DUP2
00002a5f: MSTORE
00002a60: PUSH1 0x20
00002a62: ADD
00002a63: SWAP1
00002a64: DUP2
00002a65: MSTORE
00002a66: PUSH1 0x20
00002a68: ADD
00002a69: PUSH1 0x00
00002a6b: KECCAK256
00002a6c: PUSH1 0x00
00002a6e: DUP10
00002a6f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a84: AND
00002a85: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002a9a: AND
00002a9b: DUP2
00002a9c: MSTORE
00002a9d: PUSH1 0x20
00002a9f: ADD
00002aa0: SWAP1
00002aa1: DUP2
00002aa2: MSTORE
00002aa3: PUSH1 0x20
00002aa5: ADD
00002aa6: PUSH1 0x00
00002aa8: KECCAK256
00002aa9: PUSH1 0x00
00002aab: DUP4
00002aac: DUP2
00002aad: MSTORE
00002aae: PUSH1 0x20
00002ab0: ADD
00002ab1: SWAP1
00002ab2: DUP2
00002ab3: MSTORE
00002ab4: PUSH1 0x20
00002ab6: ADD
00002ab7: PUSH1 0x00
00002ab9: KECCAK256
00002aba: PUSH1 0x40
00002abc: MLOAD
00002abd: DUP1
00002abe: PUSH1 0x60
00002ac0: ADD
00002ac1: PUSH1 0x40
00002ac3: MSTORE
00002ac4: SWAP1
00002ac5: DUP2
00002ac6: PUSH1 0x00
00002ac8: DUP3
00002ac9: ADD
00002aca: SLOAD
00002acb: DUP2
00002acc: MSTORE
00002acd: PUSH1 0x20
00002acf: ADD
00002ad0: PUSH1 0x01
00002ad2: DUP3
00002ad3: ADD
00002ad4: SLOAD
00002ad5: DUP2
00002ad6: MSTORE
00002ad7: PUSH1 0x20
00002ad9: ADD
00002ada: PUSH1 0x02
00002adc: DUP3
00002add: ADD
00002ade: PUSH1 0x00
00002ae0: SWAP1
00002ae1: SLOAD
00002ae2: SWAP1
00002ae3: PUSH2 0x0100
00002ae6: EXP
00002ae7: SWAP1
00002ae8: DIV
00002ae9: PUSH1 0xff
00002aeb: AND
00002aec: PUSH1 0xff
00002aee: AND
00002aef: PUSH1 0xff
00002af1: AND
00002af2: DUP2
00002af3: MSTORE
00002af4: POP
00002af5: POP
00002af6: SWAP1
00002af7: POP
00002af8: DUP1
00002af9: PUSH1 0x00
00002afb: ADD
00002afc: MLOAD
00002afd: DUP8
00002afe: PUSH1 0x01
00002b00: DUP5
00002b01: SUB
00002b02: DUP2
00002b03: MLOAD
00002b04: DUP2
00002b05: LT
00002b06: PUSH2 0x2b0b
00002b09: JUMPI
00002b0a: INVALID
00002b0b: JUMPDEST
00002b0c: PUSH1 0x20
00002b0e: MUL
00002b0f: PUSH1 0x20
00002b11: ADD
00002b12: ADD
00002b13: DUP2
00002b14: DUP2
00002b15: MSTORE
00002b16: POP
00002b17: POP
00002b18: DUP1
00002b19: PUSH1 0x20
00002b1b: ADD
00002b1c: MLOAD
00002b1d: DUP7
00002b1e: PUSH1 0x01
00002b20: DUP5
00002b21: SUB
00002b22: DUP2
00002b23: MLOAD
00002b24: DUP2
00002b25: LT
00002b26: PUSH2 0x2b2b
00002b29: JUMPI
00002b2a: INVALID
00002b2b: JUMPDEST
00002b2c: PUSH1 0x20
00002b2e: MUL
00002b2f: PUSH1 0x20
00002b31: ADD
00002b32: ADD
00002b33: DUP2
00002b34: DUP2
00002b35: MSTORE
00002b36: POP
00002b37: POP
00002b38: DUP1
00002b39: PUSH1 0x40
00002b3b: ADD
00002b3c: MLOAD
00002b3d: DUP6
00002b3e: PUSH1 0x01
00002b40: DUP5
00002b41: SUB
00002b42: DUP2
00002b43: MLOAD
00002b44: DUP2
00002b45: LT
00002b46: PUSH2 0x2b4b
00002b49: JUMPI
00002b4a: INVALID
00002b4b: JUMPDEST
00002b4c: PUSH1 0x20
00002b4e: MUL
00002b4f: PUSH1 0x20
00002b51: ADD
00002b52: ADD
00002b53: SWAP1
00002b54: PUSH1 0xff
00002b56: AND
00002b57: SWAP1
00002b58: DUP2
00002b59: PUSH1 0xff
00002b5b: AND
00002b5c: DUP2
00002b5d: MSTORE
00002b5e: POP
00002b5f: POP
00002b60: POP
00002b61: DUP1
00002b62: DUP1
00002b63: PUSH1 0x01
00002b65: ADD
00002b66: SWAP2
00002b67: POP
00002b68: POP
00002b69: PUSH2 0x2a06
00002b6c: JUMP
00002b6d: JUMPDEST
00002b6e: POP
00002b6f: DUP5
00002b70: DUP5
00002b71: DUP5
00002b72: SWAP5
00002b73: POP
00002b74: SWAP5
00002b75: POP
00002b76: SWAP5
00002b77: POP
00002b78: POP
00002b79: POP
00002b7a: SWAP4
00002b7b: POP
00002b7c: SWAP4
00002b7d: POP
00002b7e: SWAP4
00002b7f: SWAP1
00002b80: POP
00002b81: JUMP
00002b82: JUMPDEST
00002b83: PUSH1 0x00
00002b85: CALLER
00002b86: SWAP1
00002b87: POP
00002b88: SWAP1
00002b89: JUMP
00002b8a: JUMPDEST
00002b8b: PUSH2 0x2c56
00002b8e: DUP4
00002b8f: DUP5
00002b90: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ba5: AND
00002ba6: PUSH4 0xa9059cbb
00002bab: SWAP1
00002bac: POP
00002bad: PUSH1 0xe0
00002baf: SHL
00002bb0: DUP5
00002bb1: DUP5
00002bb2: PUSH1 0x40
00002bb4: MLOAD
00002bb5: PUSH1 0x24
00002bb7: ADD
00002bb8: DUP1
00002bb9: DUP4
00002bba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002bcf: AND
00002bd0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002be5: AND
00002be6: DUP2
00002be7: MSTORE
00002be8: PUSH1 0x20
00002bea: ADD
00002beb: DUP3
00002bec: DUP2
00002bed: MSTORE
00002bee: PUSH1 0x20
00002bf0: ADD
00002bf1: SWAP3
00002bf2: POP
00002bf3: POP
00002bf4: POP
00002bf5: PUSH1 0x40
00002bf7: MLOAD
00002bf8: PUSH1 0x20
00002bfa: DUP2
00002bfb: DUP4
00002bfc: SUB
00002bfd: SUB
00002bfe: DUP2
00002bff: MSTORE
00002c00: SWAP1
00002c01: PUSH1 0x40
00002c03: MSTORE
00002c04: SWAP1
00002c05: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002c22: NOT
00002c23: AND
00002c24: PUSH1 0x20
00002c26: DUP3
00002c27: ADD
00002c28: DUP1
00002c29: MLOAD
00002c2a: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002c47: DUP4
00002c48: DUP2
00002c49: DUP4
00002c4a: AND
00002c4b: OR
00002c4c: DUP4
00002c4d: MSTORE
00002c4e: POP
00002c4f: POP
00002c50: POP
00002c51: POP
00002c52: PUSH2 0x2f7d
00002c55: JUMP
00002c56: JUMPDEST
00002c57: POP
00002c58: POP
00002c59: POP
00002c5a: JUMP
00002c5b: JUMPDEST
00002c5c: PUSH1 0x00
00002c5e: DUP1
00002c5f: DUP3
00002c60: PUSH1 0xff
00002c62: AND
00002c63: SWAP1
00002c64: POP
00002c65: PUSH1 0x08
00002c67: DUP4
00002c68: SWAP1
00002c69: SHR
00002c6a: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002c8a: AND
00002c8b: SWAP2
00002c8c: POP
00002c8d: DUP2
00002c8e: DUP2
00002c8f: SWAP2
00002c90: POP
00002c91: SWAP2
00002c92: POP
00002c93: SWAP2
00002c94: POP
00002c95: SWAP2
00002c96: JUMP
00002c97: JUMPDEST
00002c98: PUSH1 0x00
00002c9a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002caf: AND
00002cb0: DUP2
00002cb1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002cc6: AND
00002cc7: EQ
00002cc8: ISZERO
00002cc9: PUSH2 0x2d1d
00002ccc: JUMPI
00002ccd: PUSH1 0x40
00002ccf: MLOAD
00002cd0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002cf1: DUP2
00002cf2: MSTORE
00002cf3: PUSH1 0x04
00002cf5: ADD
00002cf6: DUP1
00002cf7: DUP1
00002cf8: PUSH1 0x20
00002cfa: ADD
00002cfb: DUP3
00002cfc: DUP2
00002cfd: SUB
00002cfe: DUP3
00002cff: MSTORE
00002d00: PUSH1 0x26
00002d02: DUP2
00002d03: MSTORE
00002d04: PUSH1 0x20
00002d06: ADD
00002d07: DUP1
00002d08: PUSH2 0x32e2
00002d0b: PUSH1 0x26
00002d0d: SWAP2
00002d0e: CODECOPY
00002d0f: PUSH1 0x40
00002d11: ADD
00002d12: SWAP2
00002d13: POP
00002d14: POP
00002d15: PUSH1 0x40
00002d17: MLOAD
00002d18: DUP1
00002d19: SWAP2
00002d1a: SUB
00002d1b: SWAP1
00002d1c: REVERT
00002d1d: JUMPDEST
00002d1e: DUP1
00002d1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d34: AND
00002d35: PUSH1 0x00
00002d37: DUP1
00002d38: SWAP1
00002d39: SLOAD
00002d3a: SWAP1
00002d3b: PUSH2 0x0100
00002d3e: EXP
00002d3f: SWAP1
00002d40: DIV
00002d41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d56: AND
00002d57: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002d6c: AND
00002d6d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00002d8e: PUSH1 0x40
00002d90: MLOAD
00002d91: PUSH1 0x40
00002d93: MLOAD
00002d94: DUP1
00002d95: SWAP2
00002d96: SUB
00002d97: SWAP1
00002d98: LOG3
00002d99: DUP1
00002d9a: PUSH1 0x00
00002d9c: DUP1
00002d9d: PUSH2 0x0100
00002da0: EXP
00002da1: DUP2
00002da2: SLOAD
00002da3: DUP2
00002da4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002db9: MUL
00002dba: NOT
00002dbb: AND
00002dbc: SWAP1
00002dbd: DUP4
00002dbe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002dd3: AND
00002dd4: MUL
00002dd5: OR
00002dd6: SWAP1
00002dd7: SSTORE
00002dd8: POP
00002dd9: POP
00002dda: JUMP
00002ddb: JUMPDEST
00002ddc: PUSH1 0x00
00002dde: DUP1
00002ddf: DUP4
00002de0: PUSH1 0xff
00002de2: AND
00002de3: SWAP1
00002de4: POP
00002de5: PUSH1 0x00
00002de7: PUSH1 0x08
00002de9: DUP6
00002dea: SWAP1
00002deb: SHR
00002dec: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002e0c: AND
00002e0d: SWAP1
00002e0e: POP
00002e0f: PUSH2 0x2e22
00002e12: PUSH1 0x01
00002e14: DUP4
00002e15: PUSH2 0x31c8
00002e18: SWAP1
00002e19: SWAP2
00002e1a: SWAP1
00002e1b: PUSH4 0xffffffff
00002e20: AND
00002e21: JUMP
00002e22: JUMPDEST
00002e23: SWAP2
00002e24: POP
00002e25: PUSH2 0x2e37
00002e28: DUP5
00002e29: DUP3
00002e2a: PUSH2 0x31c8
00002e2d: SWAP1
00002e2e: SWAP2
00002e2f: SWAP1
00002e30: PUSH4 0xffffffff
00002e35: AND
00002e36: JUMP
00002e37: JUMPDEST
00002e38: SWAP1
00002e39: POP
00002e3a: PUSH1 0x00
00002e3c: DUP2
00002e3d: PUSH31 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002e5d: AND
00002e5e: SWAP1
00002e5f: POP
00002e60: DUP3
00002e61: PUSH1 0xff
00002e63: AND
00002e64: PUSH1 0x08
00002e66: DUP3
00002e67: SWAP1
00002e68: SHL
00002e69: OR
00002e6a: SWAP1
00002e6b: POP
00002e6c: DUP1
00002e6d: SWAP4
00002e6e: POP
00002e6f: POP
00002e70: POP
00002e71: POP
00002e72: SWAP3
00002e73: SWAP2
00002e74: POP
00002e75: POP
00002e76: JUMP
00002e77: JUMPDEST
00002e78: PUSH2 0x2f77
00002e7b: DUP5
00002e7c: DUP6
00002e7d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002e92: AND
00002e93: PUSH4 0x23b872dd
00002e98: SWAP1
00002e99: POP
00002e9a: PUSH1 0xe0
00002e9c: SHL
00002e9d: DUP6
00002e9e: DUP6
00002e9f: DUP6
00002ea0: PUSH1 0x40
00002ea2: MLOAD
00002ea3: PUSH1 0x24
00002ea5: ADD
00002ea6: DUP1
00002ea7: DUP5
00002ea8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ebd: AND
00002ebe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002ed3: AND
00002ed4: DUP2
00002ed5: MSTORE
00002ed6: PUSH1 0x20
00002ed8: ADD
00002ed9: DUP4
00002eda: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002eef: AND
00002ef0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002f05: AND
00002f06: DUP2
00002f07: MSTORE
00002f08: PUSH1 0x20
00002f0a: ADD
00002f0b: DUP3
00002f0c: DUP2
00002f0d: MSTORE
00002f0e: PUSH1 0x20
00002f10: ADD
00002f11: SWAP4
00002f12: POP
00002f13: POP
00002f14: POP
00002f15: POP
00002f16: PUSH1 0x40
00002f18: MLOAD
00002f19: PUSH1 0x20
00002f1b: DUP2
00002f1c: DUP4
00002f1d: SUB
00002f1e: SUB
00002f1f: DUP2
00002f20: MSTORE
00002f21: SWAP1
00002f22: PUSH1 0x40
00002f24: MSTORE
00002f25: SWAP1
00002f26: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002f43: NOT
00002f44: AND
00002f45: PUSH1 0x20
00002f47: DUP3
00002f48: ADD
00002f49: DUP1
00002f4a: MLOAD
00002f4b: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00002f68: DUP4
00002f69: DUP2
00002f6a: DUP4
00002f6b: AND
00002f6c: OR
00002f6d: DUP4
00002f6e: MSTORE
00002f6f: POP
00002f70: POP
00002f71: POP
00002f72: POP
00002f73: PUSH2 0x2f7d
00002f76: JUMP
00002f77: JUMPDEST
00002f78: POP
00002f79: POP
00002f7a: POP
00002f7b: POP
00002f7c: JUMP
00002f7d: JUMPDEST
00002f7e: PUSH2 0x2f9c
00002f81: DUP3
00002f82: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00002f97: AND
00002f98: PUSH2 0x3250
00002f9b: JUMP
00002f9c: JUMPDEST
00002f9d: PUSH2 0x300e
00002fa0: JUMPI
00002fa1: PUSH1 0x40
00002fa3: MLOAD
00002fa4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00002fc5: DUP2
00002fc6: MSTORE
00002fc7: PUSH1 0x04
00002fc9: ADD
00002fca: DUP1
00002fcb: DUP1
00002fcc: PUSH1 0x20
00002fce: ADD
00002fcf: DUP3
00002fd0: DUP2
00002fd1: SUB
00002fd2: DUP3
00002fd3: MSTORE
00002fd4: PUSH1 0x1f
00002fd6: DUP2
00002fd7: MSTORE
00002fd8: PUSH1 0x20
00002fda: ADD
00002fdb: DUP1
00002fdc: PUSH32 0x5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400
00002ffd: DUP2
00002ffe: MSTORE
00002fff: POP
00003000: PUSH1 0x20
00003002: ADD
00003003: SWAP2
00003004: POP
00003005: POP
00003006: PUSH1 0x40
00003008: MLOAD
00003009: DUP1
0000300a: SWAP2
0000300b: SUB
0000300c: SWAP1
0000300d: REVERT
0000300e: JUMPDEST
0000300f: PUSH1 0x00
00003011: PUSH1 0x60
00003013: DUP4
00003014: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00003029: AND
0000302a: DUP4
0000302b: PUSH1 0x40
0000302d: MLOAD
0000302e: DUP1
0000302f: DUP3
00003030: DUP1
00003031: MLOAD
00003032: SWAP1
00003033: PUSH1 0x20
00003035: ADD
00003036: SWAP1
00003037: DUP1
00003038: DUP4
00003039: DUP4
0000303a: JUMPDEST
0000303b: PUSH1 0x20
0000303d: DUP4
0000303e: LT
0000303f: PUSH2 0x305d
00003042: JUMPI
00003043: DUP1
00003044: MLOAD
00003045: DUP3
00003046: MSTORE
00003047: PUSH1 0x20
00003049: DUP3
0000304a: ADD
0000304b: SWAP2
0000304c: POP
0000304d: PUSH1 0x20
0000304f: DUP2
00003050: ADD
00003051: SWAP1
00003052: POP
00003053: PUSH1 0x20
00003055: DUP4
00003056: SUB
00003057: SWAP3
00003058: POP
00003059: PUSH2 0x303a
0000305c: JUMP
0000305d: JUMPDEST
0000305e: PUSH1 0x01
00003060: DUP4
00003061: PUSH1 0x20
00003063: SUB
00003064: PUSH2 0x0100
00003067: EXP
00003068: SUB
00003069: DUP1
0000306a: NOT
0000306b: DUP3
0000306c: MLOAD
0000306d: AND
0000306e: DUP2
0000306f: DUP5
00003070: MLOAD
00003071: AND
00003072: DUP1
00003073: DUP3
00003074: OR
00003075: DUP6
00003076: MSTORE
00003077: POP
00003078: POP
00003079: POP
0000307a: POP
0000307b: POP
0000307c: POP
0000307d: SWAP1
0000307e: POP
0000307f: ADD
00003080: SWAP2
00003081: POP
00003082: POP
00003083: PUSH1 0x00
00003085: PUSH1 0x40
00003087: MLOAD
00003088: DUP1
00003089: DUP4
0000308a: SUB
0000308b: DUP2
0000308c: PUSH1 0x00
0000308e: DUP7
0000308f: GAS
00003090: CALL
00003091: SWAP2
00003092: POP
00003093: POP
00003094: RETURNDATASIZE
00003095: DUP1
00003096: PUSH1 0x00
00003098: DUP2
00003099: EQ
0000309a: PUSH2 0x30bf
0000309d: JUMPI
0000309e: PUSH1 0x40
000030a0: MLOAD
000030a1: SWAP2
000030a2: POP
000030a3: PUSH1 0x1f
000030a5: NOT
000030a6: PUSH1 0x3f
000030a8: RETURNDATASIZE
000030a9: ADD
000030aa: AND
000030ab: DUP3
000030ac: ADD
000030ad: PUSH1 0x40
000030af: MSTORE
000030b0: RETURNDATASIZE
000030b1: DUP3
000030b2: MSTORE
000030b3: RETURNDATASIZE
000030b4: PUSH1 0x00
000030b6: PUSH1 0x20
000030b8: DUP5
000030b9: ADD
000030ba: RETURNDATACOPY
000030bb: PUSH2 0x30c4
000030be: JUMP
000030bf: JUMPDEST
000030c0: PUSH1 0x60
000030c2: SWAP2
000030c3: POP
000030c4: JUMPDEST
000030c5: POP
000030c6: SWAP2
000030c7: POP
000030c8: SWAP2
000030c9: POP
000030ca: DUP2
000030cb: PUSH2 0x313c
000030ce: JUMPI
000030cf: PUSH1 0x40
000030d1: MLOAD
000030d2: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000030f3: DUP2
000030f4: MSTORE
000030f5: PUSH1 0x04
000030f7: ADD
000030f8: DUP1
000030f9: DUP1
000030fa: PUSH1 0x20
000030fc: ADD
000030fd: DUP3
000030fe: DUP2
000030ff: SUB
00003100: DUP3
00003101: MSTORE
00003102: PUSH1 0x20
00003104: DUP2
00003105: MSTORE
00003106: PUSH1 0x20
00003108: ADD
00003109: DUP1
0000310a: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
0000312b: DUP2
0000312c: MSTORE
0000312d: POP
0000312e: PUSH1 0x20
00003130: ADD
00003131: SWAP2
00003132: POP
00003133: POP
00003134: PUSH1 0x40
00003136: MLOAD
00003137: DUP1
00003138: SWAP2
00003139: SUB
0000313a: SWAP1
0000313b: REVERT
0000313c: JUMPDEST
0000313d: PUSH1 0x00
0000313f: DUP2
00003140: MLOAD
00003141: GT
00003142: ISZERO
00003143: PUSH2 0x31c2
00003146: JUMPI
00003147: DUP1
00003148: DUP1
00003149: PUSH1 0x20
0000314b: ADD
0000314c: SWAP1
0000314d: MLOAD
0000314e: PUSH1 0x20
00003150: DUP2
00003151: LT
00003152: ISZERO
00003153: PUSH2 0x315b
00003156: JUMPI
00003157: PUSH1 0x00
00003159: DUP1
0000315a: REVERT
0000315b: JUMPDEST
0000315c: DUP2
0000315d: ADD
0000315e: SWAP1
0000315f: DUP1
00003160: DUP1
00003161: MLOAD
00003162: SWAP1
00003163: PUSH1 0x20
00003165: ADD
00003166: SWAP1
00003167: SWAP3
00003168: SWAP2
00003169: SWAP1
0000316a: POP
0000316b: POP
0000316c: POP
0000316d: PUSH2 0x31c1
00003170: JUMPI
00003171: PUSH1 0x40
00003173: MLOAD
00003174: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00003195: DUP2
00003196: MSTORE
00003197: PUSH1 0x04
00003199: ADD
0000319a: DUP1
0000319b: DUP1
0000319c: PUSH1 0x20
0000319e: ADD
0000319f: DUP3
000031a0: DUP2
000031a1: SUB
000031a2: DUP3
000031a3: MSTORE
000031a4: PUSH1 0x2a
000031a6: DUP2
000031a7: MSTORE
000031a8: PUSH1 0x20
000031aa: ADD
000031ab: DUP1
000031ac: PUSH2 0x332c
000031af: PUSH1 0x2a
000031b1: SWAP2
000031b2: CODECOPY
000031b3: PUSH1 0x40
000031b5: ADD
000031b6: SWAP2
000031b7: POP
000031b8: POP
000031b9: PUSH1 0x40
000031bb: MLOAD
000031bc: DUP1
000031bd: SWAP2
000031be: SUB
000031bf: SWAP1
000031c0: REVERT
000031c1: JUMPDEST
000031c2: JUMPDEST
000031c3: POP
000031c4: POP
000031c5: POP
000031c6: POP
000031c7: JUMP
000031c8: JUMPDEST
000031c9: PUSH1 0x00
000031cb: DUP1
000031cc: DUP3
000031cd: DUP5
000031ce: ADD
000031cf: SWAP1
000031d0: POP
000031d1: DUP4
000031d2: DUP2
000031d3: LT
000031d4: ISZERO
000031d5: PUSH2 0x3246
000031d8: JUMPI
000031d9: PUSH1 0x40
000031db: MLOAD
000031dc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000031fd: DUP2
000031fe: MSTORE
000031ff: PUSH1 0x04
00003201: ADD
00003202: DUP1
00003203: DUP1
00003204: PUSH1 0x20
00003206: ADD
00003207: DUP3
00003208: DUP2
00003209: SUB
0000320a: DUP3
0000320b: MSTORE
0000320c: PUSH1 0x1b
0000320e: DUP2
0000320f: MSTORE
00003210: PUSH1 0x20
00003212: ADD
00003213: DUP1
00003214: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
00003235: DUP2
00003236: MSTORE
00003237: POP
00003238: PUSH1 0x20
0000323a: ADD
0000323b: SWAP2
0000323c: POP
0000323d: POP
0000323e: PUSH1 0x40
00003240: MLOAD
00003241: DUP1
00003242: SWAP2
00003243: SUB
00003244: SWAP1
00003245: REVERT
00003246: JUMPDEST
00003247: DUP1
00003248: SWAP2
00003249: POP
0000324a: POP
0000324b: SWAP3
0000324c: SWAP2
0000324d: POP
0000324e: POP
0000324f: JUMP
00003250: JUMPDEST
00003251: PUSH1 0x00
00003253: DUP1
00003254: PUSH1 0x00
00003256: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
00003277: PUSH1 0x00
00003279: SHL
0000327a: SWAP1
0000327b: POP
0000327c: DUP4
0000327d: EXTCODEHASH
0000327e: SWAP2
0000327f: POP
00003280: DUP1
00003281: DUP3
00003282: EQ
00003283: ISZERO
00003284: DUP1
00003285: ISZERO
00003286: PUSH2 0x3292
00003289: JUMPI
0000328a: POP
0000328b: PUSH1 0x00
0000328d: DUP1
0000328e: SHL
0000328f: DUP3
00003290: EQ
00003291: ISZERO
00003292: JUMPDEST
00003293: SWAP3
00003294: POP
00003295: POP
00003296: POP
00003297: SWAP2
00003298: SWAP1
00003299: POP
0000329a: JUMP
0000329b: JUMPDEST
0000329c: PUSH1 0x40
0000329e: MLOAD
0000329f: DUP1
000032a0: PUSH1 0x60
000032a2: ADD
000032a3: PUSH1 0x40
000032a5: MSTORE
000032a6: DUP1
000032a7: PUSH1 0x00
000032a9: DUP2
000032aa: MSTORE
000032ab: PUSH1 0x20
000032ad: ADD
000032ae: PUSH1 0x00
000032b0: DUP2
000032b1: MSTORE
000032b2: PUSH1 0x20
000032b4: ADD
000032b5: PUSH1 0x00
000032b7: PUSH1 0xff
000032b9: AND
000032ba: DUP2
000032bb: MSTORE
000032bc: POP
000032bd: SWAP1
000032be: JUMP
000032bf: INVALID
000032c0: UNKNOWN(0x4C)
000032c1: PUSH16 0x636b44726f703a204e6f7420466f756e
000032d2: PUSH5 0x204c6f636b
000032d8: KECCAK256
000032d9: COINBASE
000032da: PUSH7 0x66696c69617465
000032e2: UNKNOWN(0x4F)
000032e3: PUSH24 0x6e61626c653a206e6577206f776e65722069732074686520
000032fc: PUSH27 0x65726f20616464726573734c6f636b44726f703a2043757272656e
00003318: PUSH21 0x20526f756e64204e6f742046696e69736865645361
0000332e: PUSH7 0x6545524332303a
00003336: KECCAK256
00003337: GASLIMIT
00003338: MSTORE
00003339: NUMBER
0000333a: ORIGIN
0000333b: ADDRESS
0000333c: KECCAK256
0000333d: PUSH16 0x7065726174696f6e20646964206e6f74
0000334e: KECCAK256
0000334f: PUSH20 0x756363656564a265627a7a723158204bdbe1b201
00003364: UNKNOWN(0xB6)
00003365: UNKNOWN(0xC7)
00003366: UNKNOWN(0x4E)
00003367: UNKNOWN(0xD0)
00003368: PUSH5 0x59549630b1
0000336e: UNKNOWN(0xC9)
0000336f: JUMPDEST
00003370: UNKNOWN(0x2C)
00003371: UNKNOWN(0xB6)
00003372: REVERT
00003373: UNKNOWN(0xDA)
00003374: UNKNOWN(0xA7)
00003375: UNKNOWN(0x2F)
00003376: DUP6
00003377: UNKNOWN(0xC2)
00003378: SWAP6
00003379: UNKNOWN(0xEC)
0000337a: DUP14
0000337b: UNKNOWN(0xDE)
0000337c: UNKNOWN(0xE6)
0000337d: COINBASE
0000337e: UNKNOWN(0xD8)
0000337f: PUSH5 0x736f6c6343
00003385: STOP
00003386: SDIV
00003387: GT
00003388: STOP
00003389: 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": "0xd914cd4b",
            "selector": "0xd914cd4b",
            "calldata_variants": [
                "0xd914cd4b",
                "0xd914cd4b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf57f881b",
            "selector": "0xf57f881b",
            "calldata_variants": [
                "0xf57f881b",
                "0xf57f881b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf662b950",
            "selector": "0xf662b950",
            "calldata_variants": [
                "0xf662b950",
                "0xf662b9500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfeae0c59",
            "selector": "0xfeae0c59",
            "calldata_variants": [
                "0xfeae0c59",
                "0xfeae0c590000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8f32d59b",
            "selector": "0x8f32d59b",
            "calldata_variants": [
                "0x8f32d59b",
                "0x8f32d59b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d4063f",
            "selector": "0x95d4063f",
            "calldata_variants": [
                "0x95d4063f",
                "0x95d4063f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa35bd591",
            "selector": "0xa35bd591",
            "calldata_variants": [
                "0xa35bd591",
                "0xa35bd5910000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 13114,
            "type": "tx_origin_used"
        },
        {
            "pc": 13193,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x3bc9619b841a289d8aa62c724f58a6b690447a2da53be2bc2a668652f704d956
call_targets: 0x9bc7a1d21a2d38ee313c911e1356c926948fcba1
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x3bc9619b841a289d8aa62c724f58a6b690447a2da53be2bc2a668652f704d956",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x9bc7a1d21a2d38ee313c911e1356c926948fcba1"
    ],
    "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": "0xd914cd4b",
            "selector": "0xd914cd4b",
            "calldata_variants": [
                "0xd914cd4b",
                "0xd914cd4b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf57f881b",
            "selector": "0xf57f881b",
            "calldata_variants": [
                "0xf57f881b",
                "0xf57f881b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf662b950",
            "selector": "0xf662b950",
            "calldata_variants": [
                "0xf662b950",
                "0xf662b9500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfeae0c59",
            "selector": "0xfeae0c59",
            "calldata_variants": [
                "0xfeae0c59",
                "0xfeae0c590000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8f32d59b",
            "selector": "0x8f32d59b",
            "calldata_variants": [
                "0x8f32d59b",
                "0x8f32d59b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d4063f",
            "selector": "0x95d4063f",
            "calldata_variants": [
                "0x95d4063f",
                "0x95d4063f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa35bd591",
            "selector": "0xa35bd591",
            "calldata_variants": [
                "0xa35bd591",
                "0xa35bd5910000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4481,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5142,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 7689,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [
        {
            "pc": 13114,
            "type": "tx_origin_used"
        },
        {
            "pc": 13193,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 5
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x3bc9619b841a289d8aa62c724f58a6b690447a2da53be2bc2a668652f704d956
call_targets: 0x9bc7a1d21a2d38ee313c911e1356c926948fcba1
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x3bc9619b841a289d8aa62c724f58a6b690447a2da53be2bc2a668652f704d956",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x9bc7a1d21a2d38ee313c911e1356c926948fcba1"
    ],
    "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": "0xd914cd4b",
            "selector": "0xd914cd4b",
            "calldata_variants": [
                "0xd914cd4b",
                "0xd914cd4b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf57f881b",
            "selector": "0xf57f881b",
            "calldata_variants": [
                "0xf57f881b",
                "0xf57f881b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf662b950",
            "selector": "0xf662b950",
            "calldata_variants": [
                "0xf662b950",
                "0xf662b9500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfeae0c59",
            "selector": "0xfeae0c59",
            "calldata_variants": [
                "0xfeae0c59",
                "0xfeae0c590000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8f32d59b",
            "selector": "0x8f32d59b",
            "calldata_variants": [
                "0x8f32d59b",
                "0x8f32d59b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d4063f",
            "selector": "0x95d4063f",
            "calldata_variants": [
                "0x95d4063f",
                "0x95d4063f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa35bd591",
            "selector": "0xa35bd591",
            "calldata_variants": [
                "0xa35bd591",
                "0xa35bd5910000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 4481,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 5142,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 7689,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": [
        {
            "pc": 13114,
            "type": "tx_origin_used"
        },
        {
            "pc": 13193,
            "type": "tx_origin_used"
        }
    ]
}
medium auth codex tx.origin used in guard logic (phishing/authorization risk) 75 no
view
evidence_json
{
    "evidence": "Detector flagged \"Authorization based on tx.origin\" with guards at pc 13114 and pc 13193; ORIGIN opcode appears at pc 13193. This is heuristic-only and not tied to a specific sink in the bundle, so impact depends on how the value is used.",
    "locations": [
        "pc:0x333a",
        "pc:0x3389"
    ],
    "recommendation": "Avoid tx.origin for authorization. Use msg.sender for access control (or signature-based auth such as EIP-712 / ERC-1271 where needed). If the intent is to block contracts, use explicit allowlists and document the limitation rather than tx.origin.",
    "exploit_scenario": "If a privileged path relies on tx.origin (e.g., owner-only or EOA-only checks), an attacker can deploy a malicious contract that the authorized user calls; the malicious contract can then invoke the target while tx.origin remains the user, bypassing intended authorization or access restrictions."
}
low reentrancy codex Low-level CALLs with computed targets/value (potential untrusted external call / reentrancy) 65 no
view
evidence_json
{
    "evidence": "Callsites list shows CALL opcodes with computed target/value and returndata_checked=null at pc 4481, 5142, 7689, 8101, 12432. Detector findings include \"Untrusted CALL target/value reachable\" and \"ETH value transfer possible\"; a validation trace observed a constant target in one run, so this may be a false positive depending on actual runtime paths.",
    "locations": [
        "pc:0x1181",
        "pc:0x1416",
        "pc:0x1e09",
        "pc:0x1fa5",
        "pc:0x3090"
    ],
    "recommendation": "Ensure call targets are trusted/whitelisted and apply checks-effects-interactions or a reentrancy guard around state changes. Validate low-level call success and return data where applicable.",
    "exploit_scenario": "If any of these CALL targets or ETH values are derived from user-controlled inputs or mutable storage, a malicious callee could reenter before state updates, or cause accounting/invariant issues. This is more likely if the call sends ETH and return-data checks are missing."
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 7
}