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

Analysis Run

019c0ea9-0991-73a8-9d8e-2bfc551e719c

complete
Chain ID
1
Address
Block Number
Created
Fri, Jan 30, 2026 11:28 AM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Initializer is publicly callable, enabling admin takeover if proxy is left uninitialized
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
42110 artifact.fetch complete 1 / 3 2 months ago
42111 proxy.resolve complete 1 / 3 2 months ago
42112 tool.cast_disasm complete 1 / 3 2 months ago
42113 analysis.bundle complete 1 / 3 2 months ago
42114 capability.graph complete 1 / 3 2 months ago
42115 detector.run complete 1 / 3 2 months ago
42116 validation.fork complete 1 / 3 2 months ago
42455 report.consolidate complete 1 / 6 2 months ago
42456 tool.slither complete 1 / 2 2 months ago

Artifact

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

Slither

tool.slither
Status
complete
Attempts
1 / 2
Findings
0
Solc
0.6.0 (solc-select)
View stderr
'forge clean' running (wd: /tmp/slither-aiwrjz0i)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-aiwrjz0i)

Proxiable.updateCodeAddress(address) (contracts/Contract.sol#157-170) uses assembly
	- INLINE ASM (contracts/Contract.sol#165-169)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#assembly-usage

LibraryLock.delegatedOnly() (contracts/Contract.sol#139-143) compares to a boolean constant:
	-require(bool,string)(initialized == true,The library is locked. No direct 'call' is allowed.) (contracts/Contract.sol#140-141)
FLEXCoin.ispaused() (contracts/Contract.sol#592-594) compares to a boolean constant:
	-require(bool,string)(getpause == false,the contract is paused) (contracts/Contract.sol#593)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#boolean-equality

Context._msgData() (contracts/Contract.sol#12-17) is never used and should be removed
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#dead-code

Version constraint ^0.6.0 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- AbiReencodingHeadOverflowWithStaticArrayCleanup
	- DirtyBytesArrayToStorage
	- NestedCalldataArrayAbiReencodingSizeValidation
	- ABIDecodeTwoDimensionalArrayMemory
	- KeccakCaching
	- EmptyByteArrayCopy
	- DynamicArrayCleanup
	- MissingEscapingInFormatting
	- ArraySliceDynamicallyEncodedBaseType
	- ImplicitConstructorCallvalueCheck
	- TupleAssignmentMultiStackSlotComponents
	- MemoryArrayCreationOverflow
	- YulOptimizerRedundantAssignmentBreakContinue.
It is used by:
	- ^0.6.0 (contracts/Contract.sol#3-4)
solc-0.6.0 is an outdated solc version. Use a more recent version (at least 0.8.0), if possible.
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-versions-of-solidity

Constant Storage.deci (contracts/Contract.sol#122-124) is not in UPPER_CASE_WITH_UNDERSCORES
Parameter FLEXCoin.initialize(uint256)._totalsupply (contracts/Contract.sol#340) is not in mixedCase
Parameter FLEXCoin.setMultiplier(uint256)._multiplier (contracts/Contract.sol#352-353) is not in mixedCase
Function FLEXCoin.TransferOwnership(address) (contracts/Contract.sol#580-589) is not in mixedCase
Function FLEXCoin.AddToBlacklist(address) (contracts/Contract.sol#598-600) is not in mixedCase
Function FLEXCoin.RemoveFromBlacklist(address) (contracts/Contract.sol#600-605) is not in mixedCase
Modifier FLEXCoin.Notblacklist(address) (contracts/Contract.sol#605-613) is not in mixedCase
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions

Redundant expression "this (contracts/Contract.sol#15)" inContext (contracts/Contract.sol#4-17)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#redundant-statements
. analyzed (7 contracts with 100 detectors), 14 result(s) found
Metadata
{
    "solc": {
        "status": "ok",
        "use_rc": 0,
        "version": "0.6.0",
        "strategy": "solc-select",
        "solc_path": "/var/www/tripwire/.venv/bin/solc",
        "install_rc": 0,
        "use_stderr": null,
        "use_stdout": "Switched global version to 0.6.0",
        "install_stderr": null,
        "install_stdout": "Version '0.6.0' is already installed, skipping..."
    },
    "solc_args": "--base-path /tmp/slither-aiwrjz0i --allow-paths /tmp/slither-aiwrjz0i,/tmp/slither-aiwrjz0i/lib,/tmp/slither-aiwrjz0i/src",
    "remappings": [],
    "source_files": [
        "contracts/Contract.sol"
    ],
    "contract_count": 0,
    "contract_names": [],
    "detector_count": 14,
    "workspace_hash": "da072a573c2691340d296afdd313ba87f82cdbbecf122b39d5f6582c53ff22f6",
    "duration_seconds": 0.8628859519958496,
    "solc_version_requested": "0.6.12"
}

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Two issues: an unprotected initializer can let anyone seize admin/supply if deployment isn’t initialized immediately, and rounding in external↔internal conversions allows transfers/allowances to exceed displayed balances, breaking accounting expectations.
View stdout
{"no_findings":false,"summary":"Two issues: an unprotected initializer can let anyone seize admin/supply if deployment isn’t initialized immediately, and rounding in external↔internal conversions allows transfers/allowances to exceed displayed balances, breaking accounting expectations.","findings":[{"severity":"high","category":"access_control","title":"Initializer is publicly callable, enabling admin takeover if proxy is left uninitialized","exploit_scenario":"A proxy is deployed but `initialize` is not called in the same transaction. An attacker calls `initialize`, becomes `admin`, receives the full initial supply, and can later call `updateCode` or mint/burn at will.","recommendation":"Restrict initialization (e.g., pass admin in constructor for non-proxy, or use an `initializer` modifier with an authorized deployer/manager) and ensure initialization is performed atomically during proxy deployment.","evidence":"`function initialize(uint256 _totalsupply) public { ... admin = msg.sender; ... _balances[msg.sender] = _totalSupply; }`","locations":["contracts/Contract.sol"]},{"severity":"medium","category":"other","title":"Rounding in external↔internal unit conversion allows transfers exceeding displayed balance and misleading Transfer events","exploit_scenario":"With `multiplier > deci`, `internalAmt = amount * deci / multiplier` floors. A user can call `transfer` or `transferFrom` with an `amount` larger than their displayed `balanceOf`, yet `internalAmt` still fits their internal balance. The transfer succeeds, events report the larger amount, while recipient receives less. Integrations that trust the `amount` (or Transfer event) can be over-credited.","recommendation":"Enforce `amount <= balanceOf(sender)` using external units, or compute `internalAmt` then derive a canonical external amount (`internalAmt * multiplier / deci`) and use that for checks/events; document minimum transferable unit when `multiplier` changes.","evidence":"`internalAmt = externalAmt.mul(deci).div(multiplier); _balances[sender] = _balances[sender].sub(internalAmt, ...)` and `emit Transfer(sender, recipient, externalAmt);`","locations":["contracts/Contract.sol"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-na82caid
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019c0f8a-5f02-7e73-bc90-29724836cacf
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.

Scope rules:
- You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party Solidity sources in this workspace.
- Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
- If there are only dependency files and no first-party sources, set no_findings=true and explain in summary.

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 and file/line locations when possible.

Output constraints (IMPORTANT):
- severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
- category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
Keep summary short and concrete.
mcp startup: no servers
exec
/bin/bash -lc 'cat /tmp/codex-na82caid/AUDIT_BUNDLE.txt' in /tmp/codex-na82caid succeeded in 6ms:
This file concatenates the full contents of first-party Solidity sources for auditing.
Do not treat dependency code under lib/ or @openzeppelin/ as first-party.

================================================================================
FILE: contracts/Contract.sol
================================================================================
// File contracts/CoinFLEX/Context.sol

// SPDX-License-Identifier: MIT
pragma solidity ^0.6.0;

abstract contract Context {
  // Empty internal constructor, to prevent people from mistakenly deploying
  // an instance of this contract, which should be used via inheritance.
  constructor() internal {}

  function _msgSender() internal view returns (address payable) {
    return msg.sender;
  }

codex
{"no_findings":false,"summary":"Two issues: an unprotected initializer can let anyone seize admin/supply if deployment isn’t initialized immediately, and rounding in external↔internal conversions allows transfers/allowances to exceed displayed balances, breaking accounting expectations.","findings":[{"severity":"high","category":"access_control","title":"Initializer is publicly callable, enabling admin takeover if proxy is left uninitialized","exploit_scenario":"A proxy is deployed but `initialize` is not called in the same transaction. An attacker calls `initialize`, becomes `admin`, receives the full initial supply, and can later call `updateCode` or mint/burn at will.","recommendation":"Restrict initialization (e.g., pass admin in constructor for non-proxy, or use an `initializer` modifier with an authorized deployer/manager) and ensure initialization is performed atomically during proxy deployment.","evidence":"`function initialize(uint256 _totalsupply) public { ... admin = msg.sender; ... _balances[msg.sender] = _totalSupply; }`","locations":["contracts/Contract.sol"]},{"severity":"medium","category":"other","title":"Rounding in external↔internal unit conversion allows transfers exceeding displayed balance and misleading Transfer events","exploit_scenario":"With `multiplier > deci`, `internalAmt = amount * deci / multiplier` floors. A user can call `transfer` or `transferFrom` with an `amount` larger than their displayed `balanceOf`, yet `internalAmt` still fits their internal balance. The transfer succeeds, events report the larger amount, while recipient receives less. Integrations that trust the `amount` (or Transfer event) can be over-credited.","recommendation":"Enforce `amount <= balanceOf(sender)` using external units, or compute `internalAmt` then derive a canonical external amount (`internalAmt * multiplier / deci`) and use that for checks/events; document minimum transferable unit when `multiplier` changes.","evidence":"`internalAmt = externalAmt.mul(deci).div(multiplier); _balances[sender] = _balances[sender].sub(internalAmt, ...)` and `emit Transfer(sender, recipient, externalAmt);`","locations":["contracts/Contract.sol"]}]}
tokens used
9,259
Metadata
{
    "codex": {
        "ran_at": "2026-01-30T15:35:22.665634+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 1,
        "import_count": 0,
        "first_party_contracts_count": 1
    },
    "summary": "Two issues: an unprotected initializer can let anyone seize admin/supply if deployment isn\u2019t initialized immediately, and rounding in external\u2194internal conversions allows transfers/allowances to exceed displayed balances, breaking accounting expectations.",
    "raw_final": {
        "summary": "Two issues: an unprotected initializer can let anyone seize admin/supply if deployment isn\u2019t initialized immediately, and rounding in external\u2194internal conversions allows transfers/allowances to exceed displayed balances, breaking accounting expectations.",
        "findings": [
            {
                "title": "Initializer is publicly callable, enabling admin takeover if proxy is left uninitialized",
                "category": "access_control",
                "evidence": "`function initialize(uint256 _totalsupply) public { ... admin = msg.sender; ... _balances[msg.sender] = _totalSupply; }`",
                "severity": "high",
                "locations": [
                    "contracts/Contract.sol"
                ],
                "recommendation": "Restrict initialization (e.g., pass admin in constructor for non-proxy, or use an `initializer` modifier with an authorized deployer/manager) and ensure initialization is performed atomically during proxy deployment.",
                "exploit_scenario": "A proxy is deployed but `initialize` is not called in the same transaction. An attacker calls `initialize`, becomes `admin`, receives the full initial supply, and can later call `updateCode` or mint/burn at will."
            },
            {
                "title": "Rounding in external\u2194internal unit conversion allows transfers exceeding displayed balance and misleading Transfer events",
                "category": "other",
                "evidence": "`internalAmt = externalAmt.mul(deci).div(multiplier); _balances[sender] = _balances[sender].sub(internalAmt, ...)` and `emit Transfer(sender, recipient, externalAmt);`",
                "severity": "medium",
                "locations": [
                    "contracts/Contract.sol"
                ],
                "recommendation": "Enforce `amount <= balanceOf(sender)` using external units, or compute `internalAmt` then derive a canonical external amount (`internalAmt * multiplier / deci`) and use that for checks/events; document minimum transferable unit when `multiplier` changes.",
                "exploit_scenario": "With `multiplier > deci`, `internalAmt = amount * deci / multiplier` floors. A user can call `transfer` or `transferFrom` with an `amount` larger than their displayed `balanceOf`, yet `internalAmt` still fits their internal balance. The transfer succeeds, events report the larger amount, while recipient receives less. Integrations that trust the `amount` (or Transfer event) can be over-credited."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
1
EXT*/BALANCE
1
Total opcodes
5159
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLVALUE
00000006: DUP1
00000007: ISZERO
00000008: PUSH2 0x0010
0000000b: JUMPI
0000000c: PUSH1 0x00
0000000e: DUP1
0000000f: REVERT
00000010: JUMPDEST
00000011: POP
00000012: PUSH1 0x04
00000014: CALLDATASIZE
00000015: LT
00000016: PUSH2 0x01a9
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x641579a6
00000026: GT
00000027: PUSH2 0x00f9
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0xa9059cbb
00000031: GT
00000032: PUSH2 0x0097
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0xf7ea7a3d
0000003c: GT
0000003d: PUSH2 0x0071
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0xf7ea7a3d
00000047: EQ
00000048: PUSH2 0x04f0
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0xf851a440
00000052: EQ
00000053: PUSH2 0x050d
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0xf9f92be4
0000005d: EQ
0000005e: PUSH2 0x0531
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0xfe4b84df
00000068: EQ
00000069: PUSH2 0x0557
0000006c: JUMPI
0000006d: PUSH2 0x01a9
00000070: JUMP
00000071: JUMPDEST
00000072: DUP1
00000073: PUSH4 0xa9059cbb
00000078: EQ
00000079: PUSH2 0x0470
0000007c: JUMPI
0000007d: DUP1
0000007e: PUSH4 0xcfaaa266
00000083: EQ
00000084: PUSH2 0x049c
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0xdd62ed3e
0000008e: EQ
0000008f: PUSH2 0x04c2
00000092: JUMPI
00000093: PUSH2 0x01a9
00000096: JUMP
00000097: JUMPDEST
00000098: DUP1
00000099: PUSH4 0x8456cb59
0000009e: GT
0000009f: PUSH2 0x00d3
000000a2: JUMPI
000000a3: DUP1
000000a4: PUSH4 0x8456cb59
000000a9: EQ
000000aa: PUSH2 0x0408
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0x95d89b41
000000b4: EQ
000000b5: PUSH2 0x0410
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0x9dc29fac
000000bf: EQ
000000c0: PUSH2 0x0418
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0xa457c2d7
000000ca: EQ
000000cb: PUSH2 0x0444
000000ce: JUMPI
000000cf: PUSH2 0x01a9
000000d2: JUMP
000000d3: JUMPDEST
000000d4: DUP1
000000d5: PUSH4 0x641579a6
000000da: EQ
000000db: PUSH2 0x039f
000000de: JUMPI
000000df: DUP1
000000e0: PUSH4 0x6b713f4f
000000e5: EQ
000000e6: PUSH2 0x03bc
000000e9: JUMPI
000000ea: DUP1
000000eb: PUSH4 0x70a08231
000000f0: EQ
000000f1: PUSH2 0x03e2
000000f4: JUMPI
000000f5: PUSH2 0x01a9
000000f8: JUMP
000000f9: JUMPDEST
000000fa: DUP1
000000fb: PUSH4 0x313ce567
00000100: GT
00000101: PUSH2 0x0166
00000104: JUMPI
00000105: DUP1
00000106: PUSH4 0x3f4ba83a
0000010b: GT
0000010c: PUSH2 0x0140
0000010f: JUMPI
00000110: DUP1
00000111: PUSH4 0x3f4ba83a
00000116: EQ
00000117: PUSH2 0x033d
0000011a: JUMPI
0000011b: DUP1
0000011c: PUSH4 0x40c10f19
00000121: EQ
00000122: PUSH2 0x0345
00000125: JUMPI
00000126: DUP1
00000127: PUSH4 0x46951954
0000012c: EQ
0000012d: PUSH2 0x0371
00000130: JUMPI
00000131: DUP1
00000132: PUSH4 0x52d1902d
00000137: EQ
00000138: PUSH2 0x0397
0000013b: JUMPI
0000013c: PUSH2 0x01a9
0000013f: JUMP
00000140: JUMPDEST
00000141: DUP1
00000142: PUSH4 0x313ce567
00000147: EQ
00000148: PUSH2 0x02cb
0000014b: JUMPI
0000014c: DUP1
0000014d: PUSH4 0x39509351
00000152: EQ
00000153: PUSH2 0x02e9
00000156: JUMPI
00000157: DUP1
00000158: PUSH4 0x3afada39
0000015d: EQ
0000015e: PUSH2 0x0315
00000161: JUMPI
00000162: PUSH2 0x01a9
00000165: JUMP
00000166: JUMPDEST
00000167: DUP1
00000168: PUSH4 0x06fdde03
0000016d: EQ
0000016e: PUSH2 0x01ae
00000171: JUMPI
00000172: DUP1
00000173: PUSH4 0x095ea7b3
00000178: EQ
00000179: PUSH2 0x022b
0000017c: JUMPI
0000017d: DUP1
0000017e: PUSH4 0x158ef93e
00000183: EQ
00000184: PUSH2 0x026b
00000187: JUMPI
00000188: DUP1
00000189: PUSH4 0x18160ddd
0000018e: EQ
0000018f: PUSH2 0x0273
00000192: JUMPI
00000193: DUP1
00000194: PUSH4 0x1b3ed722
00000199: EQ
0000019a: PUSH2 0x028d
0000019d: JUMPI
0000019e: DUP1
0000019f: PUSH4 0x23b872dd
000001a4: EQ
000001a5: PUSH2 0x0295
000001a8: JUMPI
000001a9: JUMPDEST
000001aa: PUSH1 0x00
000001ac: DUP1
000001ad: REVERT
000001ae: JUMPDEST
000001af: PUSH2 0x01b6
000001b2: PUSH2 0x0574
000001b5: JUMP
000001b6: JUMPDEST
000001b7: PUSH1 0x40
000001b9: DUP1
000001ba: MLOAD
000001bb: PUSH1 0x20
000001bd: DUP1
000001be: DUP3
000001bf: MSTORE
000001c0: DUP4
000001c1: MLOAD
000001c2: DUP2
000001c3: DUP4
000001c4: ADD
000001c5: MSTORE
000001c6: DUP4
000001c7: MLOAD
000001c8: SWAP2
000001c9: SWAP3
000001ca: DUP4
000001cb: SWAP3
000001cc: SWAP1
000001cd: DUP4
000001ce: ADD
000001cf: SWAP2
000001d0: DUP6
000001d1: ADD
000001d2: SWAP1
000001d3: DUP1
000001d4: DUP4
000001d5: DUP4
000001d6: PUSH1 0x00
000001d8: JUMPDEST
000001d9: DUP4
000001da: DUP2
000001db: LT
000001dc: ISZERO
000001dd: PUSH2 0x01f0
000001e0: JUMPI
000001e1: DUP2
000001e2: DUP2
000001e3: ADD
000001e4: MLOAD
000001e5: DUP4
000001e6: DUP3
000001e7: ADD
000001e8: MSTORE
000001e9: PUSH1 0x20
000001eb: ADD
000001ec: PUSH2 0x01d8
000001ef: JUMP
000001f0: JUMPDEST
000001f1: POP
000001f2: POP
000001f3: POP
000001f4: POP
000001f5: SWAP1
000001f6: POP
000001f7: SWAP1
000001f8: DUP2
000001f9: ADD
000001fa: SWAP1
000001fb: PUSH1 0x1f
000001fd: AND
000001fe: DUP1
000001ff: ISZERO
00000200: PUSH2 0x021d
00000203: JUMPI
00000204: DUP1
00000205: DUP3
00000206: SUB
00000207: DUP1
00000208: MLOAD
00000209: PUSH1 0x01
0000020b: DUP4
0000020c: PUSH1 0x20
0000020e: SUB
0000020f: PUSH2 0x0100
00000212: EXP
00000213: SUB
00000214: NOT
00000215: AND
00000216: DUP2
00000217: MSTORE
00000218: PUSH1 0x20
0000021a: ADD
0000021b: SWAP2
0000021c: POP
0000021d: JUMPDEST
0000021e: POP
0000021f: SWAP3
00000220: POP
00000221: POP
00000222: POP
00000223: PUSH1 0x40
00000225: MLOAD
00000226: DUP1
00000227: SWAP2
00000228: SUB
00000229: SWAP1
0000022a: RETURN
0000022b: JUMPDEST
0000022c: PUSH2 0x0257
0000022f: PUSH1 0x04
00000231: DUP1
00000232: CALLDATASIZE
00000233: SUB
00000234: PUSH1 0x40
00000236: DUP2
00000237: LT
00000238: ISZERO
00000239: PUSH2 0x0241
0000023c: JUMPI
0000023d: PUSH1 0x00
0000023f: DUP1
00000240: REVERT
00000241: JUMPDEST
00000242: POP
00000243: PUSH1 0x01
00000245: PUSH1 0x01
00000247: PUSH1 0xa0
00000249: SHL
0000024a: SUB
0000024b: DUP2
0000024c: CALLDATALOAD
0000024d: AND
0000024e: SWAP1
0000024f: PUSH1 0x20
00000251: ADD
00000252: CALLDATALOAD
00000253: PUSH2 0x0602
00000256: JUMP
00000257: JUMPDEST
00000258: PUSH1 0x40
0000025a: DUP1
0000025b: MLOAD
0000025c: SWAP2
0000025d: ISZERO
0000025e: ISZERO
0000025f: DUP3
00000260: MSTORE
00000261: MLOAD
00000262: SWAP1
00000263: DUP2
00000264: SWAP1
00000265: SUB
00000266: PUSH1 0x20
00000268: ADD
00000269: SWAP1
0000026a: RETURN
0000026b: JUMPDEST
0000026c: PUSH2 0x0257
0000026f: PUSH2 0x073e
00000272: JUMP
00000273: JUMPDEST
00000274: PUSH2 0x027b
00000277: PUSH2 0x0747
0000027a: JUMP
0000027b: JUMPDEST
0000027c: PUSH1 0x40
0000027e: DUP1
0000027f: MLOAD
00000280: SWAP2
00000281: DUP3
00000282: MSTORE
00000283: MLOAD
00000284: SWAP1
00000285: DUP2
00000286: SWAP1
00000287: SUB
00000288: PUSH1 0x20
0000028a: ADD
0000028b: SWAP1
0000028c: RETURN
0000028d: JUMPDEST
0000028e: PUSH2 0x027b
00000291: PUSH2 0x0771
00000294: JUMP
00000295: JUMPDEST
00000296: PUSH2 0x0257
00000299: PUSH1 0x04
0000029b: DUP1
0000029c: CALLDATASIZE
0000029d: SUB
0000029e: PUSH1 0x60
000002a0: DUP2
000002a1: LT
000002a2: ISZERO
000002a3: PUSH2 0x02ab
000002a6: JUMPI
000002a7: PUSH1 0x00
000002a9: DUP1
000002aa: REVERT
000002ab: JUMPDEST
000002ac: POP
000002ad: PUSH1 0x01
000002af: PUSH1 0x01
000002b1: PUSH1 0xa0
000002b3: SHL
000002b4: SUB
000002b5: DUP2
000002b6: CALLDATALOAD
000002b7: DUP2
000002b8: AND
000002b9: SWAP2
000002ba: PUSH1 0x20
000002bc: DUP2
000002bd: ADD
000002be: CALLDATALOAD
000002bf: SWAP1
000002c0: SWAP2
000002c1: AND
000002c2: SWAP1
000002c3: PUSH1 0x40
000002c5: ADD
000002c6: CALLDATALOAD
000002c7: PUSH2 0x0777
000002ca: JUMP
000002cb: JUMPDEST
000002cc: PUSH2 0x02d3
000002cf: PUSH2 0x0937
000002d2: JUMP
000002d3: JUMPDEST
000002d4: PUSH1 0x40
000002d6: DUP1
000002d7: MLOAD
000002d8: PUSH1 0xff
000002da: SWAP1
000002db: SWAP3
000002dc: AND
000002dd: DUP3
000002de: MSTORE
000002df: MLOAD
000002e0: SWAP1
000002e1: DUP2
000002e2: SWAP1
000002e3: SUB
000002e4: PUSH1 0x20
000002e6: ADD
000002e7: SWAP1
000002e8: RETURN
000002e9: JUMPDEST
000002ea: PUSH2 0x0257
000002ed: PUSH1 0x04
000002ef: DUP1
000002f0: CALLDATASIZE
000002f1: SUB
000002f2: PUSH1 0x40
000002f4: DUP2
000002f5: LT
000002f6: ISZERO
000002f7: PUSH2 0x02ff
000002fa: JUMPI
000002fb: PUSH1 0x00
000002fd: DUP1
000002fe: REVERT
000002ff: JUMPDEST
00000300: POP
00000301: PUSH1 0x01
00000303: PUSH1 0x01
00000305: PUSH1 0xa0
00000307: SHL
00000308: SUB
00000309: DUP2
0000030a: CALLDATALOAD
0000030b: AND
0000030c: SWAP1
0000030d: PUSH1 0x20
0000030f: ADD
00000310: CALLDATALOAD
00000311: PUSH2 0x093c
00000314: JUMP
00000315: JUMPDEST
00000316: PUSH2 0x033b
00000319: PUSH1 0x04
0000031b: DUP1
0000031c: CALLDATASIZE
0000031d: SUB
0000031e: PUSH1 0x20
00000320: DUP2
00000321: LT
00000322: ISZERO
00000323: PUSH2 0x032b
00000326: JUMPI
00000327: PUSH1 0x00
00000329: DUP1
0000032a: REVERT
0000032b: JUMPDEST
0000032c: POP
0000032d: CALLDATALOAD
0000032e: PUSH1 0x01
00000330: PUSH1 0x01
00000332: PUSH1 0xa0
00000334: SHL
00000335: SUB
00000336: AND
00000337: PUSH2 0x0a71
0000033a: JUMP
0000033b: JUMPDEST
0000033c: STOP
0000033d: JUMPDEST
0000033e: PUSH2 0x033b
00000341: PUSH2 0x0b14
00000344: JUMP
00000345: JUMPDEST
00000346: PUSH2 0x0257
00000349: PUSH1 0x04
0000034b: DUP1
0000034c: CALLDATASIZE
0000034d: SUB
0000034e: PUSH1 0x40
00000350: DUP2
00000351: LT
00000352: ISZERO
00000353: PUSH2 0x035b
00000356: JUMPI
00000357: PUSH1 0x00
00000359: DUP1
0000035a: REVERT
0000035b: JUMPDEST
0000035c: POP
0000035d: PUSH1 0x01
0000035f: PUSH1 0x01
00000361: PUSH1 0xa0
00000363: SHL
00000364: SUB
00000365: DUP2
00000366: CALLDATALOAD
00000367: AND
00000368: SWAP1
00000369: PUSH1 0x20
0000036b: ADD
0000036c: CALLDATALOAD
0000036d: PUSH2 0x0b70
00000370: JUMP
00000371: JUMPDEST
00000372: PUSH2 0x033b
00000375: PUSH1 0x04
00000377: DUP1
00000378: CALLDATASIZE
00000379: SUB
0000037a: PUSH1 0x20
0000037c: DUP2
0000037d: LT
0000037e: ISZERO
0000037f: PUSH2 0x0387
00000382: JUMPI
00000383: PUSH1 0x00
00000385: DUP1
00000386: REVERT
00000387: JUMPDEST
00000388: POP
00000389: CALLDATALOAD
0000038a: PUSH1 0x01
0000038c: PUSH1 0x01
0000038e: PUSH1 0xa0
00000390: SHL
00000391: SUB
00000392: AND
00000393: PUSH2 0x0c45
00000396: JUMP
00000397: JUMPDEST
00000398: PUSH2 0x027b
0000039b: PUSH2 0x0d18
0000039e: JUMP
0000039f: JUMPDEST
000003a0: PUSH2 0x033b
000003a3: PUSH1 0x04
000003a5: DUP1
000003a6: CALLDATASIZE
000003a7: SUB
000003a8: PUSH1 0x20
000003aa: DUP2
000003ab: LT
000003ac: ISZERO
000003ad: PUSH2 0x03b5
000003b0: JUMPI
000003b1: PUSH1 0x00
000003b3: DUP1
000003b4: REVERT
000003b5: JUMPDEST
000003b6: POP
000003b7: CALLDATALOAD
000003b8: PUSH2 0x0d3c
000003bb: JUMP
000003bc: JUMPDEST
000003bd: PUSH2 0x033b
000003c0: PUSH1 0x04
000003c2: DUP1
000003c3: CALLDATASIZE
000003c4: SUB
000003c5: PUSH1 0x20
000003c7: DUP2
000003c8: LT
000003c9: ISZERO
000003ca: PUSH2 0x03d2
000003cd: JUMPI
000003ce: PUSH1 0x00
000003d0: DUP1
000003d1: REVERT
000003d2: JUMPDEST
000003d3: POP
000003d4: CALLDATALOAD
000003d5: PUSH1 0x01
000003d7: PUSH1 0x01
000003d9: PUSH1 0xa0
000003db: SHL
000003dc: SUB
000003dd: AND
000003de: PUSH2 0x0e51
000003e1: JUMP
000003e2: JUMPDEST
000003e3: PUSH2 0x027b
000003e6: PUSH1 0x04
000003e8: DUP1
000003e9: CALLDATASIZE
000003ea: SUB
000003eb: PUSH1 0x20
000003ed: DUP2
000003ee: LT
000003ef: ISZERO
000003f0: PUSH2 0x03f8
000003f3: JUMPI
000003f4: PUSH1 0x00
000003f6: DUP1
000003f7: REVERT
000003f8: JUMPDEST
000003f9: POP
000003fa: CALLDATALOAD
000003fb: PUSH1 0x01
000003fd: PUSH1 0x01
000003ff: PUSH1 0xa0
00000401: SHL
00000402: SUB
00000403: AND
00000404: PUSH2 0x0efc
00000407: JUMP
00000408: JUMPDEST
00000409: PUSH2 0x033b
0000040c: PUSH2 0x0f3a
0000040f: JUMP
00000410: JUMPDEST
00000411: PUSH2 0x01b6
00000414: PUSH2 0x0f9c
00000417: JUMP
00000418: JUMPDEST
00000419: PUSH2 0x0257
0000041c: PUSH1 0x04
0000041e: DUP1
0000041f: CALLDATASIZE
00000420: SUB
00000421: PUSH1 0x40
00000423: DUP2
00000424: LT
00000425: ISZERO
00000426: PUSH2 0x042e
00000429: JUMPI
0000042a: PUSH1 0x00
0000042c: DUP1
0000042d: REVERT
0000042e: JUMPDEST
0000042f: POP
00000430: PUSH1 0x01
00000432: PUSH1 0x01
00000434: PUSH1 0xa0
00000436: SHL
00000437: SUB
00000438: DUP2
00000439: CALLDATALOAD
0000043a: AND
0000043b: SWAP1
0000043c: PUSH1 0x20
0000043e: ADD
0000043f: CALLDATALOAD
00000440: PUSH2 0x0ff7
00000443: JUMP
00000444: JUMPDEST
00000445: PUSH2 0x0257
00000448: PUSH1 0x04
0000044a: DUP1
0000044b: CALLDATASIZE
0000044c: SUB
0000044d: PUSH1 0x40
0000044f: DUP2
00000450: LT
00000451: ISZERO
00000452: PUSH2 0x045a
00000455: JUMPI
00000456: PUSH1 0x00
00000458: DUP1
00000459: REVERT
0000045a: JUMPDEST
0000045b: POP
0000045c: PUSH1 0x01
0000045e: PUSH1 0x01
00000460: PUSH1 0xa0
00000462: SHL
00000463: SUB
00000464: DUP2
00000465: CALLDATALOAD
00000466: AND
00000467: SWAP1
00000468: PUSH1 0x20
0000046a: ADD
0000046b: CALLDATALOAD
0000046c: PUSH2 0x10bf
0000046f: JUMP
00000470: JUMPDEST
00000471: PUSH2 0x0257
00000474: PUSH1 0x04
00000476: DUP1
00000477: CALLDATASIZE
00000478: SUB
00000479: PUSH1 0x40
0000047b: DUP2
0000047c: LT
0000047d: ISZERO
0000047e: PUSH2 0x0486
00000481: JUMPI
00000482: PUSH1 0x00
00000484: DUP1
00000485: REVERT
00000486: JUMPDEST
00000487: POP
00000488: PUSH1 0x01
0000048a: PUSH1 0x01
0000048c: PUSH1 0xa0
0000048e: SHL
0000048f: SUB
00000490: DUP2
00000491: CALLDATALOAD
00000492: AND
00000493: SWAP1
00000494: PUSH1 0x20
00000496: ADD
00000497: CALLDATALOAD
00000498: PUSH2 0x11fd
0000049b: JUMP
0000049c: JUMPDEST
0000049d: PUSH2 0x033b
000004a0: PUSH1 0x04
000004a2: DUP1
000004a3: CALLDATASIZE
000004a4: SUB
000004a5: PUSH1 0x20
000004a7: DUP2
000004a8: LT
000004a9: ISZERO
000004aa: PUSH2 0x04b2
000004ad: JUMPI
000004ae: PUSH1 0x00
000004b0: DUP1
000004b1: REVERT
000004b2: JUMPDEST
000004b3: POP
000004b4: CALLDATALOAD
000004b5: PUSH1 0x01
000004b7: PUSH1 0x01
000004b9: PUSH1 0xa0
000004bb: SHL
000004bc: SUB
000004bd: AND
000004be: PUSH2 0x1329
000004c1: JUMP
000004c2: JUMPDEST
000004c3: PUSH2 0x027b
000004c6: PUSH1 0x04
000004c8: DUP1
000004c9: CALLDATASIZE
000004ca: SUB
000004cb: PUSH1 0x40
000004cd: DUP2
000004ce: LT
000004cf: ISZERO
000004d0: PUSH2 0x04d8
000004d3: JUMPI
000004d4: PUSH1 0x00
000004d6: DUP1
000004d7: REVERT
000004d8: JUMPDEST
000004d9: POP
000004da: PUSH1 0x01
000004dc: PUSH1 0x01
000004de: PUSH1 0xa0
000004e0: SHL
000004e1: SUB
000004e2: DUP2
000004e3: CALLDATALOAD
000004e4: DUP2
000004e5: AND
000004e6: SWAP2
000004e7: PUSH1 0x20
000004e9: ADD
000004ea: CALLDATALOAD
000004eb: AND
000004ec: PUSH2 0x1478
000004ef: JUMP
000004f0: JUMPDEST
000004f1: PUSH2 0x033b
000004f4: PUSH1 0x04
000004f6: DUP1
000004f7: CALLDATASIZE
000004f8: SUB
000004f9: PUSH1 0x20
000004fb: DUP2
000004fc: LT
000004fd: ISZERO
000004fe: PUSH2 0x0506
00000501: JUMPI
00000502: PUSH1 0x00
00000504: DUP1
00000505: REVERT
00000506: JUMPDEST
00000507: POP
00000508: CALLDATALOAD
00000509: PUSH2 0x14c6
0000050c: JUMP
0000050d: JUMPDEST
0000050e: PUSH2 0x0515
00000511: PUSH2 0x15ab
00000514: JUMP
00000515: JUMPDEST
00000516: PUSH1 0x40
00000518: DUP1
00000519: MLOAD
0000051a: PUSH1 0x01
0000051c: PUSH1 0x01
0000051e: PUSH1 0xa0
00000520: SHL
00000521: SUB
00000522: SWAP1
00000523: SWAP3
00000524: AND
00000525: DUP3
00000526: MSTORE
00000527: MLOAD
00000528: SWAP1
00000529: DUP2
0000052a: SWAP1
0000052b: SUB
0000052c: PUSH1 0x20
0000052e: ADD
0000052f: SWAP1
00000530: RETURN
00000531: JUMPDEST
00000532: PUSH2 0x0257
00000535: PUSH1 0x04
00000537: DUP1
00000538: CALLDATASIZE
00000539: SUB
0000053a: PUSH1 0x20
0000053c: DUP2
0000053d: LT
0000053e: ISZERO
0000053f: PUSH2 0x0547
00000542: JUMPI
00000543: PUSH1 0x00
00000545: DUP1
00000546: REVERT
00000547: JUMPDEST
00000548: POP
00000549: CALLDATALOAD
0000054a: PUSH1 0x01
0000054c: PUSH1 0x01
0000054e: PUSH1 0xa0
00000550: SHL
00000551: SUB
00000552: AND
00000553: PUSH2 0x15ba
00000556: JUMP
00000557: JUMPDEST
00000558: PUSH2 0x033b
0000055b: PUSH1 0x04
0000055d: DUP1
0000055e: CALLDATASIZE
0000055f: SUB
00000560: PUSH1 0x20
00000562: DUP2
00000563: LT
00000564: ISZERO
00000565: PUSH2 0x056d
00000568: JUMPI
00000569: PUSH1 0x00
0000056b: DUP1
0000056c: REVERT
0000056d: JUMPDEST
0000056e: POP
0000056f: CALLDATALOAD
00000570: PUSH2 0x15cf
00000573: JUMP
00000574: JUMPDEST
00000575: PUSH1 0x05
00000577: DUP1
00000578: SLOAD
00000579: PUSH1 0x40
0000057b: DUP1
0000057c: MLOAD
0000057d: PUSH1 0x20
0000057f: PUSH1 0x02
00000581: PUSH1 0x01
00000583: DUP6
00000584: AND
00000585: ISZERO
00000586: PUSH2 0x0100
00000589: MUL
0000058a: PUSH1 0x00
0000058c: NOT
0000058d: ADD
0000058e: SWAP1
0000058f: SWAP5
00000590: AND
00000591: SWAP4
00000592: SWAP1
00000593: SWAP4
00000594: DIV
00000595: PUSH1 0x1f
00000597: DUP2
00000598: ADD
00000599: DUP5
0000059a: SWAP1
0000059b: DIV
0000059c: DUP5
0000059d: MUL
0000059e: DUP3
0000059f: ADD
000005a0: DUP5
000005a1: ADD
000005a2: SWAP1
000005a3: SWAP3
000005a4: MSTORE
000005a5: DUP2
000005a6: DUP2
000005a7: MSTORE
000005a8: SWAP3
000005a9: SWAP2
000005aa: DUP4
000005ab: ADD
000005ac: DUP3
000005ad: DUP3
000005ae: DUP1
000005af: ISZERO
000005b0: PUSH2 0x05fa
000005b3: JUMPI
000005b4: DUP1
000005b5: PUSH1 0x1f
000005b7: LT
000005b8: PUSH2 0x05cf
000005bb: JUMPI
000005bc: PUSH2 0x0100
000005bf: DUP1
000005c0: DUP4
000005c1: SLOAD
000005c2: DIV
000005c3: MUL
000005c4: DUP4
000005c5: MSTORE
000005c6: SWAP2
000005c7: PUSH1 0x20
000005c9: ADD
000005ca: SWAP2
000005cb: PUSH2 0x05fa
000005ce: JUMP
000005cf: JUMPDEST
000005d0: DUP3
000005d1: ADD
000005d2: SWAP2
000005d3: SWAP1
000005d4: PUSH1 0x00
000005d6: MSTORE
000005d7: PUSH1 0x20
000005d9: PUSH1 0x00
000005db: KECCAK256
000005dc: SWAP1
000005dd: JUMPDEST
000005de: DUP2
000005df: SLOAD
000005e0: DUP2
000005e1: MSTORE
000005e2: SWAP1
000005e3: PUSH1 0x01
000005e5: ADD
000005e6: SWAP1
000005e7: PUSH1 0x20
000005e9: ADD
000005ea: DUP1
000005eb: DUP4
000005ec: GT
000005ed: PUSH2 0x05dd
000005f0: JUMPI
000005f1: DUP3
000005f2: SWAP1
000005f3: SUB
000005f4: PUSH1 0x1f
000005f6: AND
000005f7: DUP3
000005f8: ADD
000005f9: SWAP2
000005fa: JUMPDEST
000005fb: POP
000005fc: POP
000005fd: POP
000005fe: POP
000005ff: POP
00000600: DUP2
00000601: JUMP
00000602: JUMPDEST
00000603: PUSH1 0x01
00000605: PUSH1 0x01
00000607: PUSH1 0xa0
00000609: SHL
0000060a: SUB
0000060b: DUP3
0000060c: AND
0000060d: PUSH1 0x00
0000060f: SWAP1
00000610: DUP2
00000611: MSTORE
00000612: PUSH1 0x03
00000614: PUSH1 0x20
00000616: MSTORE
00000617: PUSH1 0x40
00000619: DUP2
0000061a: KECCAK256
0000061b: SLOAD
0000061c: DUP4
0000061d: SWAP1
0000061e: PUSH1 0xff
00000620: AND
00000621: ISZERO
00000622: PUSH2 0x0660
00000625: JUMPI
00000626: PUSH1 0x40
00000628: DUP1
00000629: MLOAD
0000062a: PUSH3 0x461bcd
0000062e: PUSH1 0xe5
00000630: SHL
00000631: DUP2
00000632: MSTORE
00000633: PUSH1 0x20
00000635: PUSH1 0x04
00000637: DUP3
00000638: ADD
00000639: MSTORE
0000063a: PUSH1 0x16
0000063c: PUSH1 0x24
0000063e: DUP3
0000063f: ADD
00000640: MSTORE
00000641: PUSH1 0x00
00000643: DUP1
00000644: MLOAD
00000645: PUSH1 0x20
00000647: PUSH2 0x1ebb
0000064a: DUP4
0000064b: CODECOPY
0000064c: DUP2
0000064d: MLOAD
0000064e: SWAP2
0000064f: MSTORE
00000650: PUSH1 0x44
00000652: DUP3
00000653: ADD
00000654: MSTORE
00000655: SWAP1
00000656: MLOAD
00000657: SWAP1
00000658: DUP2
00000659: SWAP1
0000065a: SUB
0000065b: PUSH1 0x64
0000065d: ADD
0000065e: SWAP1
0000065f: REVERT
00000660: JUMPDEST
00000661: CALLER
00000662: PUSH1 0x00
00000664: DUP2
00000665: DUP2
00000666: MSTORE
00000667: PUSH1 0x03
00000669: PUSH1 0x20
0000066b: MSTORE
0000066c: PUSH1 0x40
0000066e: SWAP1
0000066f: KECCAK256
00000670: SLOAD
00000671: PUSH1 0xff
00000673: AND
00000674: ISZERO
00000675: PUSH2 0x06b3
00000678: JUMPI
00000679: PUSH1 0x40
0000067b: DUP1
0000067c: MLOAD
0000067d: PUSH3 0x461bcd
00000681: PUSH1 0xe5
00000683: SHL
00000684: DUP2
00000685: MSTORE
00000686: PUSH1 0x20
00000688: PUSH1 0x04
0000068a: DUP3
0000068b: ADD
0000068c: MSTORE
0000068d: PUSH1 0x16
0000068f: PUSH1 0x24
00000691: DUP3
00000692: ADD
00000693: MSTORE
00000694: PUSH1 0x00
00000696: DUP1
00000697: MLOAD
00000698: PUSH1 0x20
0000069a: PUSH2 0x1ebb
0000069d: DUP4
0000069e: CODECOPY
0000069f: DUP2
000006a0: MLOAD
000006a1: SWAP2
000006a2: MSTORE
000006a3: PUSH1 0x44
000006a5: DUP3
000006a6: ADD
000006a7: MSTORE
000006a8: SWAP1
000006a9: MLOAD
000006aa: SWAP1
000006ab: DUP2
000006ac: SWAP1
000006ad: SUB
000006ae: PUSH1 0x64
000006b0: ADD
000006b1: SWAP1
000006b2: REVERT
000006b3: JUMPDEST
000006b4: PUSH1 0x08
000006b6: SLOAD
000006b7: PUSH1 0x01
000006b9: PUSH1 0xa0
000006bb: SHL
000006bc: SWAP1
000006bd: DIV
000006be: PUSH1 0xff
000006c0: AND
000006c1: ISZERO
000006c2: PUSH2 0x0700
000006c5: JUMPI
000006c6: PUSH1 0x40
000006c8: DUP1
000006c9: MLOAD
000006ca: PUSH3 0x461bcd
000006ce: PUSH1 0xe5
000006d0: SHL
000006d1: DUP2
000006d2: MSTORE
000006d3: PUSH1 0x20
000006d5: PUSH1 0x04
000006d7: DUP3
000006d8: ADD
000006d9: MSTORE
000006da: PUSH1 0x16
000006dc: PUSH1 0x24
000006de: DUP3
000006df: ADD
000006e0: MSTORE
000006e1: PUSH1 0x00
000006e3: DUP1
000006e4: MLOAD
000006e5: PUSH1 0x20
000006e7: PUSH2 0x1dff
000006ea: DUP4
000006eb: CODECOPY
000006ec: DUP2
000006ed: MLOAD
000006ee: SWAP2
000006ef: MSTORE
000006f0: PUSH1 0x44
000006f2: DUP3
000006f3: ADD
000006f4: MSTORE
000006f5: SWAP1
000006f6: MLOAD
000006f7: SWAP1
000006f8: DUP2
000006f9: SWAP1
000006fa: SUB
000006fb: PUSH1 0x64
000006fd: ADD
000006fe: SWAP1
000006ff: REVERT
00000700: JUMPDEST
00000701: PUSH1 0x07
00000703: SLOAD
00000704: PUSH1 0x00
00000706: SWAP1
00000707: DUP6
00000708: SWAP1
00000709: PUSH2 0x0724
0000070c: SWAP1
0000070d: PUSH2 0x071e
00000710: DUP4
00000711: PUSH8 0x0de0b6b3a7640000
0000071a: PUSH2 0x1650
0000071d: JUMP
0000071e: JUMPDEST
0000071f: SWAP1
00000720: PUSH2 0x16a9
00000723: JUMP
00000724: JUMPDEST
00000725: SWAP2
00000726: POP
00000727: PUSH2 0x0731
0000072a: CALLER
0000072b: DUP9
0000072c: DUP4
0000072d: PUSH2 0x16eb
00000730: JUMP
00000731: JUMPDEST
00000732: POP
00000733: PUSH1 0x01
00000735: SWAP7
00000736: SWAP6
00000737: POP
00000738: POP
00000739: POP
0000073a: POP
0000073b: POP
0000073c: POP
0000073d: JUMP
0000073e: JUMPDEST
0000073f: PUSH1 0x00
00000741: SLOAD
00000742: PUSH1 0xff
00000744: AND
00000745: DUP2
00000746: JUMP
00000747: JUMPDEST
00000748: PUSH1 0x00
0000074a: PUSH2 0x076c
0000074d: PUSH8 0x0de0b6b3a7640000
00000756: PUSH2 0x071e
00000759: PUSH1 0x07
0000075b: SLOAD
0000075c: PUSH1 0x04
0000075e: SLOAD
0000075f: PUSH2 0x1650
00000762: SWAP1
00000763: SWAP2
00000764: SWAP1
00000765: PUSH4 0xffffffff
0000076a: AND
0000076b: JUMP
0000076c: JUMPDEST
0000076d: SWAP1
0000076e: POP
0000076f: SWAP1
00000770: JUMP
00000771: JUMPDEST
00000772: PUSH1 0x07
00000774: SLOAD
00000775: DUP2
00000776: JUMP
00000777: JUMPDEST
00000778: PUSH1 0x01
0000077a: PUSH1 0x01
0000077c: PUSH1 0xa0
0000077e: SHL
0000077f: SUB
00000780: DUP4
00000781: AND
00000782: PUSH1 0x00
00000784: SWAP1
00000785: DUP2
00000786: MSTORE
00000787: PUSH1 0x03
00000789: PUSH1 0x20
0000078b: MSTORE
0000078c: PUSH1 0x40
0000078e: DUP2
0000078f: KECCAK256
00000790: SLOAD
00000791: DUP5
00000792: SWAP1
00000793: PUSH1 0xff
00000795: AND
00000796: ISZERO
00000797: PUSH2 0x07d5
0000079a: JUMPI
0000079b: PUSH1 0x40
0000079d: DUP1
0000079e: MLOAD
0000079f: PUSH3 0x461bcd
000007a3: PUSH1 0xe5
000007a5: SHL
000007a6: DUP2
000007a7: MSTORE
000007a8: PUSH1 0x20
000007aa: PUSH1 0x04
000007ac: DUP3
000007ad: ADD
000007ae: MSTORE
000007af: PUSH1 0x16
000007b1: PUSH1 0x24
000007b3: DUP3
000007b4: ADD
000007b5: MSTORE
000007b6: PUSH1 0x00
000007b8: DUP1
000007b9: MLOAD
000007ba: PUSH1 0x20
000007bc: PUSH2 0x1ebb
000007bf: DUP4
000007c0: CODECOPY
000007c1: DUP2
000007c2: MLOAD
000007c3: SWAP2
000007c4: MSTORE
000007c5: PUSH1 0x44
000007c7: DUP3
000007c8: ADD
000007c9: MSTORE
000007ca: SWAP1
000007cb: MLOAD
000007cc: SWAP1
000007cd: DUP2
000007ce: SWAP1
000007cf: SUB
000007d0: PUSH1 0x64
000007d2: ADD
000007d3: SWAP1
000007d4: REVERT
000007d5: JUMPDEST
000007d6: CALLER
000007d7: PUSH1 0x00
000007d9: DUP2
000007da: DUP2
000007db: MSTORE
000007dc: PUSH1 0x03
000007de: PUSH1 0x20
000007e0: MSTORE
000007e1: PUSH1 0x40
000007e3: SWAP1
000007e4: KECCAK256
000007e5: SLOAD
000007e6: PUSH1 0xff
000007e8: AND
000007e9: ISZERO
000007ea: PUSH2 0x0828
000007ed: JUMPI
000007ee: PUSH1 0x40
000007f0: DUP1
000007f1: MLOAD
000007f2: PUSH3 0x461bcd
000007f6: PUSH1 0xe5
000007f8: SHL
000007f9: DUP2
000007fa: MSTORE
000007fb: PUSH1 0x20
000007fd: PUSH1 0x04
000007ff: DUP3
00000800: ADD
00000801: MSTORE
00000802: PUSH1 0x16
00000804: PUSH1 0x24
00000806: DUP3
00000807: ADD
00000808: MSTORE
00000809: PUSH1 0x00
0000080b: DUP1
0000080c: MLOAD
0000080d: PUSH1 0x20
0000080f: PUSH2 0x1ebb
00000812: DUP4
00000813: CODECOPY
00000814: DUP2
00000815: MLOAD
00000816: SWAP2
00000817: MSTORE
00000818: PUSH1 0x44
0000081a: DUP3
0000081b: ADD
0000081c: MSTORE
0000081d: SWAP1
0000081e: MLOAD
0000081f: SWAP1
00000820: DUP2
00000821: SWAP1
00000822: SUB
00000823: PUSH1 0x64
00000825: ADD
00000826: SWAP1
00000827: REVERT
00000828: JUMPDEST
00000829: PUSH1 0x01
0000082b: PUSH1 0x01
0000082d: PUSH1 0xa0
0000082f: SHL
00000830: SUB
00000831: DUP6
00000832: AND
00000833: PUSH1 0x00
00000835: SWAP1
00000836: DUP2
00000837: MSTORE
00000838: PUSH1 0x03
0000083a: PUSH1 0x20
0000083c: MSTORE
0000083d: PUSH1 0x40
0000083f: SWAP1
00000840: KECCAK256
00000841: SLOAD
00000842: DUP6
00000843: SWAP1
00000844: PUSH1 0xff
00000846: AND
00000847: ISZERO
00000848: PUSH2 0x0886
0000084b: JUMPI
0000084c: PUSH1 0x40
0000084e: DUP1
0000084f: MLOAD
00000850: PUSH3 0x461bcd
00000854: PUSH1 0xe5
00000856: SHL
00000857: DUP2
00000858: MSTORE
00000859: PUSH1 0x20
0000085b: PUSH1 0x04
0000085d: DUP3
0000085e: ADD
0000085f: MSTORE
00000860: PUSH1 0x16
00000862: PUSH1 0x24
00000864: DUP3
00000865: ADD
00000866: MSTORE
00000867: PUSH1 0x00
00000869: DUP1
0000086a: MLOAD
0000086b: PUSH1 0x20
0000086d: PUSH2 0x1ebb
00000870: DUP4
00000871: CODECOPY
00000872: DUP2
00000873: MLOAD
00000874: SWAP2
00000875: MSTORE
00000876: PUSH1 0x44
00000878: DUP3
00000879: ADD
0000087a: MSTORE
0000087b: SWAP1
0000087c: MLOAD
0000087d: SWAP1
0000087e: DUP2
0000087f: SWAP1
00000880: SUB
00000881: PUSH1 0x64
00000883: ADD
00000884: SWAP1
00000885: REVERT
00000886: JUMPDEST
00000887: PUSH1 0x08
00000889: SLOAD
0000088a: PUSH1 0x01
0000088c: PUSH1 0xa0
0000088e: SHL
0000088f: SWAP1
00000890: DIV
00000891: PUSH1 0xff
00000893: AND
00000894: ISZERO
00000895: PUSH2 0x08d3
00000898: JUMPI
00000899: PUSH1 0x40
0000089b: DUP1
0000089c: MLOAD
0000089d: PUSH3 0x461bcd
000008a1: PUSH1 0xe5
000008a3: SHL
000008a4: DUP2
000008a5: MSTORE
000008a6: PUSH1 0x20
000008a8: PUSH1 0x04
000008aa: DUP3
000008ab: ADD
000008ac: MSTORE
000008ad: PUSH1 0x16
000008af: PUSH1 0x24
000008b1: DUP3
000008b2: ADD
000008b3: MSTORE
000008b4: PUSH1 0x00
000008b6: DUP1
000008b7: MLOAD
000008b8: PUSH1 0x20
000008ba: PUSH2 0x1dff
000008bd: DUP4
000008be: CODECOPY
000008bf: DUP2
000008c0: MLOAD
000008c1: SWAP2
000008c2: MSTORE
000008c3: PUSH1 0x44
000008c5: DUP3
000008c6: ADD
000008c7: MSTORE
000008c8: SWAP1
000008c9: MLOAD
000008ca: SWAP1
000008cb: DUP2
000008cc: SWAP1
000008cd: SUB
000008ce: PUSH1 0x64
000008d0: ADD
000008d1: SWAP1
000008d2: REVERT
000008d3: JUMPDEST
000008d4: PUSH1 0x00
000008d6: PUSH2 0x08e6
000008d9: DUP9
000008da: PUSH2 0x08e1
000008dd: PUSH2 0x17fa
000008e0: JUMP
000008e1: JUMPDEST
000008e2: PUSH2 0x1478
000008e5: JUMP
000008e6: JUMPDEST
000008e7: SWAP1
000008e8: POP
000008e9: PUSH2 0x08f3
000008ec: DUP9
000008ed: DUP9
000008ee: DUP9
000008ef: PUSH2 0x17fe
000008f2: JUMP
000008f3: JUMPDEST
000008f4: PUSH2 0x0929
000008f7: DUP9
000008f8: PUSH2 0x08ff
000008fb: PUSH2 0x17fa
000008fe: JUMP
000008ff: JUMPDEST
00000900: PUSH2 0x0924
00000903: DUP10
00000904: PUSH1 0x40
00000906: MLOAD
00000907: DUP1
00000908: PUSH1 0x60
0000090a: ADD
0000090b: PUSH1 0x40
0000090d: MSTORE
0000090e: DUP1
0000090f: PUSH1 0x28
00000911: DUP2
00000912: MSTORE
00000913: PUSH1 0x20
00000915: ADD
00000916: PUSH2 0x1efc
00000919: PUSH1 0x28
0000091b: SWAP2
0000091c: CODECOPY
0000091d: DUP7
0000091e: SWAP2
0000091f: SWAP1
00000920: PUSH2 0x196f
00000923: JUMP
00000924: JUMPDEST
00000925: PUSH2 0x16eb
00000928: JUMP
00000929: JUMPDEST
0000092a: POP
0000092b: PUSH1 0x01
0000092d: SWAP8
0000092e: SWAP7
0000092f: POP
00000930: POP
00000931: POP
00000932: POP
00000933: POP
00000934: POP
00000935: POP
00000936: JUMP
00000937: JUMPDEST
00000938: PUSH1 0x12
0000093a: DUP2
0000093b: JUMP
0000093c: JUMPDEST
0000093d: PUSH1 0x01
0000093f: PUSH1 0x01
00000941: PUSH1 0xa0
00000943: SHL
00000944: SUB
00000945: DUP3
00000946: AND
00000947: PUSH1 0x00
00000949: SWAP1
0000094a: DUP2
0000094b: MSTORE
0000094c: PUSH1 0x03
0000094e: PUSH1 0x20
00000950: MSTORE
00000951: PUSH1 0x40
00000953: DUP2
00000954: KECCAK256
00000955: SLOAD
00000956: DUP4
00000957: SWAP1
00000958: PUSH1 0xff
0000095a: AND
0000095b: ISZERO
0000095c: PUSH2 0x099a
0000095f: JUMPI
00000960: PUSH1 0x40
00000962: DUP1
00000963: MLOAD
00000964: PUSH3 0x461bcd
00000968: PUSH1 0xe5
0000096a: SHL
0000096b: DUP2
0000096c: MSTORE
0000096d: PUSH1 0x20
0000096f: PUSH1 0x04
00000971: DUP3
00000972: ADD
00000973: MSTORE
00000974: PUSH1 0x16
00000976: PUSH1 0x24
00000978: DUP3
00000979: ADD
0000097a: MSTORE
0000097b: PUSH1 0x00
0000097d: DUP1
0000097e: MLOAD
0000097f: PUSH1 0x20
00000981: PUSH2 0x1ebb
00000984: DUP4
00000985: CODECOPY
00000986: DUP2
00000987: MLOAD
00000988: SWAP2
00000989: MSTORE
0000098a: PUSH1 0x44
0000098c: DUP3
0000098d: ADD
0000098e: MSTORE
0000098f: SWAP1
00000990: MLOAD
00000991: SWAP1
00000992: DUP2
00000993: SWAP1
00000994: SUB
00000995: PUSH1 0x64
00000997: ADD
00000998: SWAP1
00000999: REVERT
0000099a: JUMPDEST
0000099b: CALLER
0000099c: PUSH1 0x00
0000099e: DUP2
0000099f: DUP2
000009a0: MSTORE
000009a1: PUSH1 0x03
000009a3: PUSH1 0x20
000009a5: MSTORE
000009a6: PUSH1 0x40
000009a8: SWAP1
000009a9: KECCAK256
000009aa: SLOAD
000009ab: PUSH1 0xff
000009ad: AND
000009ae: ISZERO
000009af: PUSH2 0x09ed
000009b2: JUMPI
000009b3: PUSH1 0x40
000009b5: DUP1
000009b6: MLOAD
000009b7: PUSH3 0x461bcd
000009bb: PUSH1 0xe5
000009bd: SHL
000009be: DUP2
000009bf: MSTORE
000009c0: PUSH1 0x20
000009c2: PUSH1 0x04
000009c4: DUP3
000009c5: ADD
000009c6: MSTORE
000009c7: PUSH1 0x16
000009c9: PUSH1 0x24
000009cb: DUP3
000009cc: ADD
000009cd: MSTORE
000009ce: PUSH1 0x00
000009d0: DUP1
000009d1: MLOAD
000009d2: PUSH1 0x20
000009d4: PUSH2 0x1ebb
000009d7: DUP4
000009d8: CODECOPY
000009d9: DUP2
000009da: MLOAD
000009db: SWAP2
000009dc: MSTORE
000009dd: PUSH1 0x44
000009df: DUP3
000009e0: ADD
000009e1: MSTORE
000009e2: SWAP1
000009e3: MLOAD
000009e4: SWAP1
000009e5: DUP2
000009e6: SWAP1
000009e7: SUB
000009e8: PUSH1 0x64
000009ea: ADD
000009eb: SWAP1
000009ec: REVERT
000009ed: JUMPDEST
000009ee: PUSH1 0x08
000009f0: SLOAD
000009f1: PUSH1 0x01
000009f3: PUSH1 0xa0
000009f5: SHL
000009f6: SWAP1
000009f7: DIV
000009f8: PUSH1 0xff
000009fa: AND
000009fb: ISZERO
000009fc: PUSH2 0x0a3a
000009ff: JUMPI
00000a00: PUSH1 0x40
00000a02: DUP1
00000a03: MLOAD
00000a04: PUSH3 0x461bcd
00000a08: PUSH1 0xe5
00000a0a: SHL
00000a0b: DUP2
00000a0c: MSTORE
00000a0d: PUSH1 0x20
00000a0f: PUSH1 0x04
00000a11: DUP3
00000a12: ADD
00000a13: MSTORE
00000a14: PUSH1 0x16
00000a16: PUSH1 0x24
00000a18: DUP3
00000a19: ADD
00000a1a: MSTORE
00000a1b: PUSH1 0x00
00000a1d: DUP1
00000a1e: MLOAD
00000a1f: PUSH1 0x20
00000a21: PUSH2 0x1dff
00000a24: DUP4
00000a25: CODECOPY
00000a26: DUP2
00000a27: MLOAD
00000a28: SWAP2
00000a29: MSTORE
00000a2a: PUSH1 0x44
00000a2c: DUP3
00000a2d: ADD
00000a2e: MSTORE
00000a2f: SWAP1
00000a30: MLOAD
00000a31: SWAP1
00000a32: DUP2
00000a33: SWAP1
00000a34: SUB
00000a35: PUSH1 0x64
00000a37: ADD
00000a38: SWAP1
00000a39: REVERT
00000a3a: JUMPDEST
00000a3b: PUSH1 0x00
00000a3d: PUSH2 0x0a4d
00000a40: PUSH2 0x0a47
00000a43: PUSH2 0x17fa
00000a46: JUMP
00000a47: JUMPDEST
00000a48: DUP8
00000a49: PUSH2 0x1478
00000a4c: JUMP
00000a4d: JUMPDEST
00000a4e: SWAP1
00000a4f: POP
00000a50: PUSH2 0x0a65
00000a53: PUSH2 0x0a5a
00000a56: PUSH2 0x17fa
00000a59: JUMP
00000a5a: JUMPDEST
00000a5b: DUP8
00000a5c: PUSH2 0x0924
00000a5f: DUP5
00000a60: DUP10
00000a61: PUSH2 0x1a06
00000a64: JUMP
00000a65: JUMPDEST
00000a66: POP
00000a67: PUSH1 0x01
00000a69: SWAP6
00000a6a: SWAP5
00000a6b: POP
00000a6c: POP
00000a6d: POP
00000a6e: POP
00000a6f: POP
00000a70: JUMP
00000a71: JUMPDEST
00000a72: PUSH1 0x08
00000a74: SLOAD
00000a75: PUSH1 0x01
00000a77: PUSH1 0x01
00000a79: PUSH1 0xa0
00000a7b: SHL
00000a7c: SUB
00000a7d: AND
00000a7e: CALLER
00000a7f: EQ
00000a80: PUSH2 0x0abe
00000a83: JUMPI
00000a84: PUSH1 0x40
00000a86: DUP1
00000a87: MLOAD
00000a88: PUSH3 0x461bcd
00000a8c: PUSH1 0xe5
00000a8e: SHL
00000a8f: DUP2
00000a90: MSTORE
00000a91: PUSH1 0x20
00000a93: PUSH1 0x04
00000a95: DUP3
00000a96: ADD
00000a97: MSTORE
00000a98: PUSH1 0x15
00000a9a: PUSH1 0x24
00000a9c: DUP3
00000a9d: ADD
00000a9e: MSTORE
00000a9f: PUSH1 0x00
00000aa1: DUP1
00000aa2: MLOAD
00000aa3: PUSH1 0x20
00000aa5: PUSH2 0x1ffa
00000aa8: DUP4
00000aa9: CODECOPY
00000aaa: DUP2
00000aab: MLOAD
00000aac: SWAP2
00000aad: MSTORE
00000aae: PUSH1 0x44
00000ab0: DUP3
00000ab1: ADD
00000ab2: MSTORE
00000ab3: SWAP1
00000ab4: MLOAD
00000ab5: SWAP1
00000ab6: DUP2
00000ab7: SWAP1
00000ab8: SUB
00000ab9: PUSH1 0x64
00000abb: ADD
00000abc: SWAP1
00000abd: REVERT
00000abe: JUMPDEST
00000abf: PUSH1 0x01
00000ac1: PUSH1 0x01
00000ac3: PUSH1 0xa0
00000ac5: SHL
00000ac6: SUB
00000ac7: DUP2
00000ac8: AND
00000ac9: PUSH1 0x00
00000acb: DUP2
00000acc: DUP2
00000acd: MSTORE
00000ace: PUSH1 0x03
00000ad0: PUSH1 0x20
00000ad2: SWAP1
00000ad3: DUP2
00000ad4: MSTORE
00000ad5: PUSH1 0x40
00000ad7: DUP1
00000ad8: DUP4
00000ad9: KECCAK256
00000ada: DUP1
00000adb: SLOAD
00000adc: PUSH1 0xff
00000ade: NOT
00000adf: AND
00000ae0: SWAP1
00000ae1: SSTORE
00000ae2: DUP1
00000ae3: MLOAD
00000ae4: SWAP3
00000ae5: DUP4
00000ae6: MSTORE
00000ae7: MLOAD
00000ae8: PUSH32 0xa901296c036b6de8ffbc2c88ea69148c9af9fe1e370cb31f77f3e377d6e68039
00000b09: SWAP3
00000b0a: DUP2
00000b0b: SWAP1
00000b0c: SUB
00000b0d: SWAP1
00000b0e: SWAP2
00000b0f: ADD
00000b10: SWAP1
00000b11: LOG2
00000b12: POP
00000b13: JUMP
00000b14: JUMPDEST
00000b15: PUSH1 0x08
00000b17: SLOAD
00000b18: PUSH1 0x01
00000b1a: PUSH1 0x01
00000b1c: PUSH1 0xa0
00000b1e: SHL
00000b1f: SUB
00000b20: AND
00000b21: CALLER
00000b22: EQ
00000b23: PUSH2 0x0b61
00000b26: JUMPI
00000b27: PUSH1 0x40
00000b29: DUP1
00000b2a: MLOAD
00000b2b: PUSH3 0x461bcd
00000b2f: PUSH1 0xe5
00000b31: SHL
00000b32: DUP2
00000b33: MSTORE
00000b34: PUSH1 0x20
00000b36: PUSH1 0x04
00000b38: DUP3
00000b39: ADD
00000b3a: MSTORE
00000b3b: PUSH1 0x15
00000b3d: PUSH1 0x24
00000b3f: DUP3
00000b40: ADD
00000b41: MSTORE
00000b42: PUSH1 0x00
00000b44: DUP1
00000b45: MLOAD
00000b46: PUSH1 0x20
00000b48: PUSH2 0x1ffa
00000b4b: DUP4
00000b4c: CODECOPY
00000b4d: DUP2
00000b4e: MLOAD
00000b4f: SWAP2
00000b50: MSTORE
00000b51: PUSH1 0x44
00000b53: DUP3
00000b54: ADD
00000b55: MSTORE
00000b56: SWAP1
00000b57: MLOAD
00000b58: SWAP1
00000b59: DUP2
00000b5a: SWAP1
00000b5b: SUB
00000b5c: PUSH1 0x64
00000b5e: ADD
00000b5f: SWAP1
00000b60: REVERT
00000b61: JUMPDEST
00000b62: PUSH1 0x08
00000b64: DUP1
00000b65: SLOAD
00000b66: PUSH1 0xff
00000b68: PUSH1 0xa0
00000b6a: SHL
00000b6b: NOT
00000b6c: AND
00000b6d: SWAP1
00000b6e: SSTORE
00000b6f: JUMP
00000b70: JUMPDEST
00000b71: PUSH1 0x08
00000b73: SLOAD
00000b74: PUSH1 0x00
00000b76: SWAP1
00000b77: PUSH1 0x01
00000b79: PUSH1 0x01
00000b7b: PUSH1 0xa0
00000b7d: SHL
00000b7e: SUB
00000b7f: AND
00000b80: CALLER
00000b81: EQ
00000b82: PUSH2 0x0bc0
00000b85: JUMPI
00000b86: PUSH1 0x40
00000b88: DUP1
00000b89: MLOAD
00000b8a: PUSH3 0x461bcd
00000b8e: PUSH1 0xe5
00000b90: SHL
00000b91: DUP2
00000b92: MSTORE
00000b93: PUSH1 0x20
00000b95: PUSH1 0x04
00000b97: DUP3
00000b98: ADD
00000b99: MSTORE
00000b9a: PUSH1 0x15
00000b9c: PUSH1 0x24
00000b9e: DUP3
00000b9f: ADD
00000ba0: MSTORE
00000ba1: PUSH1 0x00
00000ba3: DUP1
00000ba4: MLOAD
00000ba5: PUSH1 0x20
00000ba7: PUSH2 0x1ffa
00000baa: DUP4
00000bab: CODECOPY
00000bac: DUP2
00000bad: MLOAD
00000bae: SWAP2
00000baf: MSTORE
00000bb0: PUSH1 0x44
00000bb2: DUP3
00000bb3: ADD
00000bb4: MSTORE
00000bb5: SWAP1
00000bb6: MLOAD
00000bb7: SWAP1
00000bb8: DUP2
00000bb9: SWAP1
00000bba: SUB
00000bbb: PUSH1 0x64
00000bbd: ADD
00000bbe: SWAP1
00000bbf: REVERT
00000bc0: JUMPDEST
00000bc1: PUSH1 0x08
00000bc3: SLOAD
00000bc4: PUSH1 0x01
00000bc6: PUSH1 0xa0
00000bc8: SHL
00000bc9: SWAP1
00000bca: DIV
00000bcb: PUSH1 0xff
00000bcd: AND
00000bce: ISZERO
00000bcf: PUSH2 0x0c0d
00000bd2: JUMPI
00000bd3: PUSH1 0x40
00000bd5: DUP1
00000bd6: MLOAD
00000bd7: PUSH3 0x461bcd
00000bdb: PUSH1 0xe5
00000bdd: SHL
00000bde: DUP2
00000bdf: MSTORE
00000be0: PUSH1 0x20
00000be2: PUSH1 0x04
00000be4: DUP3
00000be5: ADD
00000be6: MSTORE
00000be7: PUSH1 0x16
00000be9: PUSH1 0x24
00000beb: DUP3
00000bec: ADD
00000bed: MSTORE
00000bee: PUSH1 0x00
00000bf0: DUP1
00000bf1: MLOAD
00000bf2: PUSH1 0x20
00000bf4: PUSH2 0x1dff
00000bf7: DUP4
00000bf8: CODECOPY
00000bf9: DUP2
00000bfa: MLOAD
00000bfb: SWAP2
00000bfc: MSTORE
00000bfd: PUSH1 0x44
00000bff: DUP3
00000c00: ADD
00000c01: MSTORE
00000c02: SWAP1
00000c03: MLOAD
00000c04: SWAP1
00000c05: DUP2
00000c06: SWAP1
00000c07: SUB
00000c08: PUSH1 0x64
00000c0a: ADD
00000c0b: SWAP1
00000c0c: REVERT
00000c0d: JUMPDEST
00000c0e: PUSH1 0x07
00000c10: SLOAD
00000c11: DUP3
00000c12: SWAP1
00000c13: PUSH1 0x00
00000c15: SWAP1
00000c16: PUSH2 0x0c2b
00000c19: SWAP1
00000c1a: PUSH2 0x071e
00000c1d: DUP5
00000c1e: PUSH8 0x0de0b6b3a7640000
00000c27: PUSH2 0x1650
00000c2a: JUMP
00000c2b: JUMPDEST
00000c2c: SWAP1
00000c2d: POP
00000c2e: PUSH2 0x0c38
00000c31: DUP6
00000c32: DUP3
00000c33: DUP5
00000c34: PUSH2 0x1a60
00000c37: JUMP
00000c38: JUMPDEST
00000c39: PUSH1 0x01
00000c3b: SWAP3
00000c3c: POP
00000c3d: POP
00000c3e: POP
00000c3f: JUMPDEST
00000c40: SWAP3
00000c41: SWAP2
00000c42: POP
00000c43: POP
00000c44: JUMP
00000c45: JUMPDEST
00000c46: PUSH1 0x08
00000c48: SLOAD
00000c49: PUSH1 0x01
00000c4b: PUSH1 0x01
00000c4d: PUSH1 0xa0
00000c4f: SHL
00000c50: SUB
00000c51: AND
00000c52: CALLER
00000c53: EQ
00000c54: PUSH2 0x0c92
00000c57: JUMPI
00000c58: PUSH1 0x40
00000c5a: DUP1
00000c5b: MLOAD
00000c5c: PUSH3 0x461bcd
00000c60: PUSH1 0xe5
00000c62: SHL
00000c63: DUP2
00000c64: MSTORE
00000c65: PUSH1 0x20
00000c67: PUSH1 0x04
00000c69: DUP3
00000c6a: ADD
00000c6b: MSTORE
00000c6c: PUSH1 0x15
00000c6e: PUSH1 0x24
00000c70: DUP3
00000c71: ADD
00000c72: MSTORE
00000c73: PUSH1 0x00
00000c75: DUP1
00000c76: MLOAD
00000c77: PUSH1 0x20
00000c79: PUSH2 0x1ffa
00000c7c: DUP4
00000c7d: CODECOPY
00000c7e: DUP2
00000c7f: MLOAD
00000c80: SWAP2
00000c81: MSTORE
00000c82: PUSH1 0x44
00000c84: DUP3
00000c85: ADD
00000c86: MSTORE
00000c87: SWAP1
00000c88: MLOAD
00000c89: SWAP1
00000c8a: DUP2
00000c8b: SWAP1
00000c8c: SUB
00000c8d: PUSH1 0x64
00000c8f: ADD
00000c90: SWAP1
00000c91: REVERT
00000c92: JUMPDEST
00000c93: PUSH1 0x00
00000c95: SLOAD
00000c96: PUSH1 0xff
00000c98: AND
00000c99: ISZERO
00000c9a: ISZERO
00000c9b: PUSH1 0x01
00000c9d: EQ
00000c9e: PUSH2 0x0cd8
00000ca1: JUMPI
00000ca2: PUSH1 0x40
00000ca4: MLOAD
00000ca5: PUSH3 0x461bcd
00000ca9: PUSH1 0xe5
00000cab: SHL
00000cac: DUP2
00000cad: MSTORE
00000cae: PUSH1 0x04
00000cb0: ADD
00000cb1: DUP1
00000cb2: DUP1
00000cb3: PUSH1 0x20
00000cb5: ADD
00000cb6: DUP3
00000cb7: DUP2
00000cb8: SUB
00000cb9: DUP3
00000cba: MSTORE
00000cbb: PUSH1 0x33
00000cbd: DUP2
00000cbe: MSTORE
00000cbf: PUSH1 0x20
00000cc1: ADD
00000cc2: DUP1
00000cc3: PUSH2 0x1fa3
00000cc6: PUSH1 0x33
00000cc8: SWAP2
00000cc9: CODECOPY
00000cca: PUSH1 0x40
00000ccc: ADD
00000ccd: SWAP2
00000cce: POP
00000ccf: POP
00000cd0: PUSH1 0x40
00000cd2: MLOAD
00000cd3: DUP1
00000cd4: SWAP2
00000cd5: SUB
00000cd6: SWAP1
00000cd7: REVERT
00000cd8: JUMPDEST
00000cd9: PUSH2 0x0ce1
00000cdc: DUP2
00000cdd: PUSH2 0x1b47
00000ce0: JUMP
00000ce1: JUMPDEST
00000ce2: PUSH1 0x40
00000ce4: MLOAD
00000ce5: PUSH1 0x01
00000ce7: PUSH1 0x01
00000ce9: PUSH1 0xa0
00000ceb: SHL
00000cec: SUB
00000ced: DUP3
00000cee: AND
00000cef: SWAP1
00000cf0: PUSH32 0x34459cf4c63f38e9b4af4ff8f74035bad6157484e669ffde70188afdf9917c68
00000d11: SWAP1
00000d12: PUSH1 0x00
00000d14: SWAP1
00000d15: LOG2
00000d16: POP
00000d17: JUMP
00000d18: JUMPDEST
00000d19: PUSH32 0xc5f16f0fcc639fa48a6947836d9850f504798523bf8c9a3a87d5876cf622bcf7
00000d3a: SWAP1
00000d3b: JUMP
00000d3c: JUMPDEST
00000d3d: PUSH1 0x08
00000d3f: SLOAD
00000d40: PUSH1 0x01
00000d42: PUSH1 0x01
00000d44: PUSH1 0xa0
00000d46: SHL
00000d47: SUB
00000d48: AND
00000d49: CALLER
00000d4a: EQ
00000d4b: PUSH2 0x0d89
00000d4e: JUMPI
00000d4f: PUSH1 0x40
00000d51: DUP1
00000d52: MLOAD
00000d53: PUSH3 0x461bcd
00000d57: PUSH1 0xe5
00000d59: SHL
00000d5a: DUP2
00000d5b: MSTORE
00000d5c: PUSH1 0x20
00000d5e: PUSH1 0x04
00000d60: DUP3
00000d61: ADD
00000d62: MSTORE
00000d63: PUSH1 0x15
00000d65: PUSH1 0x24
00000d67: DUP3
00000d68: ADD
00000d69: MSTORE
00000d6a: PUSH1 0x00
00000d6c: DUP1
00000d6d: MLOAD
00000d6e: PUSH1 0x20
00000d70: PUSH2 0x1ffa
00000d73: DUP4
00000d74: CODECOPY
00000d75: DUP2
00000d76: MLOAD
00000d77: SWAP2
00000d78: MSTORE
00000d79: PUSH1 0x44
00000d7b: DUP3
00000d7c: ADD
00000d7d: MSTORE
00000d7e: SWAP1
00000d7f: MLOAD
00000d80: SWAP1
00000d81: DUP2
00000d82: SWAP1
00000d83: SUB
00000d84: PUSH1 0x64
00000d86: ADD
00000d87: SWAP1
00000d88: REVERT
00000d89: JUMPDEST
00000d8a: PUSH1 0x08
00000d8c: SLOAD
00000d8d: PUSH1 0x01
00000d8f: PUSH1 0xa0
00000d91: SHL
00000d92: SWAP1
00000d93: DIV
00000d94: PUSH1 0xff
00000d96: AND
00000d97: ISZERO
00000d98: PUSH2 0x0dd6
00000d9b: JUMPI
00000d9c: PUSH1 0x40
00000d9e: DUP1
00000d9f: MLOAD
00000da0: PUSH3 0x461bcd
00000da4: PUSH1 0xe5
00000da6: SHL
00000da7: DUP2
00000da8: MSTORE
00000da9: PUSH1 0x20
00000dab: PUSH1 0x04
00000dad: DUP3
00000dae: ADD
00000daf: MSTORE
00000db0: PUSH1 0x16
00000db2: PUSH1 0x24
00000db4: DUP3
00000db5: ADD
00000db6: MSTORE
00000db7: PUSH1 0x00
00000db9: DUP1
00000dba: MLOAD
00000dbb: PUSH1 0x20
00000dbd: PUSH2 0x1dff
00000dc0: DUP4
00000dc1: CODECOPY
00000dc2: DUP2
00000dc3: MLOAD
00000dc4: SWAP2
00000dc5: MSTORE
00000dc6: PUSH1 0x44
00000dc8: DUP3
00000dc9: ADD
00000dca: MSTORE
00000dcb: SWAP1
00000dcc: MLOAD
00000dcd: SWAP1
00000dce: DUP2
00000dcf: SWAP1
00000dd0: SUB
00000dd1: PUSH1 0x64
00000dd3: ADD
00000dd4: SWAP1
00000dd5: REVERT
00000dd6: JUMPDEST
00000dd7: PUSH1 0x07
00000dd9: SLOAD
00000dda: DUP2
00000ddb: GT
00000ddc: PUSH2 0x0e16
00000ddf: JUMPI
00000de0: PUSH1 0x40
00000de2: MLOAD
00000de3: PUSH3 0x461bcd
00000de7: PUSH1 0xe5
00000de9: SHL
00000dea: DUP2
00000deb: MSTORE
00000dec: PUSH1 0x04
00000dee: ADD
00000def: DUP1
00000df0: DUP1
00000df1: PUSH1 0x20
00000df3: ADD
00000df4: DUP3
00000df5: DUP2
00000df6: SUB
00000df7: DUP3
00000df8: MSTORE
00000df9: PUSH1 0x39
00000dfb: DUP2
00000dfc: MSTORE
00000dfd: PUSH1 0x20
00000dff: ADD
00000e00: DUP1
00000e01: PUSH2 0x1f24
00000e04: PUSH1 0x39
00000e06: SWAP2
00000e07: CODECOPY
00000e08: PUSH1 0x40
00000e0a: ADD
00000e0b: SWAP2
00000e0c: POP
00000e0d: POP
00000e0e: PUSH1 0x40
00000e10: MLOAD
00000e11: DUP1
00000e12: SWAP2
00000e13: SUB
00000e14: SWAP1
00000e15: REVERT
00000e16: JUMPDEST
00000e17: PUSH1 0x07
00000e19: DUP2
00000e1a: SWAP1
00000e1b: SSTORE
00000e1c: PUSH1 0x40
00000e1e: DUP1
00000e1f: MLOAD
00000e20: DUP3
00000e21: DUP2
00000e22: MSTORE
00000e23: SWAP1
00000e24: MLOAD
00000e25: PUSH32 0xd1ac89bfc464ce49c894c4e2379f1ca2b062aff1a640e929764ac1157fa13f0f
00000e46: SWAP2
00000e47: DUP2
00000e48: SWAP1
00000e49: SUB
00000e4a: PUSH1 0x20
00000e4c: ADD
00000e4d: SWAP1
00000e4e: LOG1
00000e4f: POP
00000e50: JUMP
00000e51: JUMPDEST
00000e52: PUSH1 0x08
00000e54: SLOAD
00000e55: PUSH1 0x01
00000e57: PUSH1 0x01
00000e59: PUSH1 0xa0
00000e5b: SHL
00000e5c: SUB
00000e5d: AND
00000e5e: CALLER
00000e5f: EQ
00000e60: PUSH2 0x0e9e
00000e63: JUMPI
00000e64: PUSH1 0x40
00000e66: DUP1
00000e67: MLOAD
00000e68: PUSH3 0x461bcd
00000e6c: PUSH1 0xe5
00000e6e: SHL
00000e6f: DUP2
00000e70: MSTORE
00000e71: PUSH1 0x20
00000e73: PUSH1 0x04
00000e75: DUP3
00000e76: ADD
00000e77: MSTORE
00000e78: PUSH1 0x15
00000e7a: PUSH1 0x24
00000e7c: DUP3
00000e7d: ADD
00000e7e: MSTORE
00000e7f: PUSH1 0x00
00000e81: DUP1
00000e82: MLOAD
00000e83: PUSH1 0x20
00000e85: PUSH2 0x1ffa
00000e88: DUP4
00000e89: CODECOPY
00000e8a: DUP2
00000e8b: MLOAD
00000e8c: SWAP2
00000e8d: MSTORE
00000e8e: PUSH1 0x44
00000e90: DUP3
00000e91: ADD
00000e92: MSTORE
00000e93: SWAP1
00000e94: MLOAD
00000e95: SWAP1
00000e96: DUP2
00000e97: SWAP1
00000e98: SUB
00000e99: PUSH1 0x64
00000e9b: ADD
00000e9c: SWAP1
00000e9d: REVERT
00000e9e: JUMPDEST
00000e9f: PUSH1 0x01
00000ea1: PUSH1 0x01
00000ea3: PUSH1 0xa0
00000ea5: SHL
00000ea6: SUB
00000ea7: DUP2
00000ea8: AND
00000ea9: PUSH1 0x00
00000eab: DUP2
00000eac: DUP2
00000ead: MSTORE
00000eae: PUSH1 0x03
00000eb0: PUSH1 0x20
00000eb2: SWAP1
00000eb3: DUP2
00000eb4: MSTORE
00000eb5: PUSH1 0x40
00000eb7: SWAP2
00000eb8: DUP3
00000eb9: SWAP1
00000eba: KECCAK256
00000ebb: DUP1
00000ebc: SLOAD
00000ebd: PUSH1 0xff
00000ebf: NOT
00000ec0: AND
00000ec1: PUSH1 0x01
00000ec3: SWAP1
00000ec4: DUP2
00000ec5: OR
00000ec6: SWAP1
00000ec7: SWAP2
00000ec8: SSTORE
00000ec9: DUP3
00000eca: MLOAD
00000ecb: SWAP1
00000ecc: DUP2
00000ecd: MSTORE
00000ece: SWAP2
00000ecf: MLOAD
00000ed0: PUSH32 0xa901296c036b6de8ffbc2c88ea69148c9af9fe1e370cb31f77f3e377d6e68039
00000ef1: SWAP3
00000ef2: DUP2
00000ef3: SWAP1
00000ef4: SUB
00000ef5: SWAP1
00000ef6: SWAP2
00000ef7: ADD
00000ef8: SWAP1
00000ef9: LOG2
00000efa: POP
00000efb: JUMP
00000efc: JUMPDEST
00000efd: PUSH1 0x07
00000eff: SLOAD
00000f00: PUSH1 0x01
00000f02: PUSH1 0x01
00000f04: PUSH1 0xa0
00000f06: SHL
00000f07: SUB
00000f08: DUP3
00000f09: AND
00000f0a: PUSH1 0x00
00000f0c: SWAP1
00000f0d: DUP2
00000f0e: MSTORE
00000f0f: PUSH1 0x01
00000f11: PUSH1 0x20
00000f13: MSTORE
00000f14: PUSH1 0x40
00000f16: DUP2
00000f17: KECCAK256
00000f18: SLOAD
00000f19: SWAP1
00000f1a: SWAP2
00000f1b: DUP3
00000f1c: SWAP2
00000f1d: PUSH2 0x0f33
00000f20: SWAP2
00000f21: PUSH8 0x0de0b6b3a7640000
00000f2a: SWAP2
00000f2b: PUSH2 0x071e
00000f2e: SWAP2
00000f2f: PUSH2 0x1650
00000f32: JUMP
00000f33: JUMPDEST
00000f34: SWAP4
00000f35: SWAP3
00000f36: POP
00000f37: POP
00000f38: POP
00000f39: JUMP
00000f3a: JUMPDEST
00000f3b: PUSH1 0x08
00000f3d: SLOAD
00000f3e: PUSH1 0x01
00000f40: PUSH1 0x01
00000f42: PUSH1 0xa0
00000f44: SHL
00000f45: SUB
00000f46: AND
00000f47: CALLER
00000f48: EQ
00000f49: PUSH2 0x0f87
00000f4c: JUMPI
00000f4d: PUSH1 0x40
00000f4f: DUP1
00000f50: MLOAD
00000f51: PUSH3 0x461bcd
00000f55: PUSH1 0xe5
00000f57: SHL
00000f58: DUP2
00000f59: MSTORE
00000f5a: PUSH1 0x20
00000f5c: PUSH1 0x04
00000f5e: DUP3
00000f5f: ADD
00000f60: MSTORE
00000f61: PUSH1 0x15
00000f63: PUSH1 0x24
00000f65: DUP3
00000f66: ADD
00000f67: MSTORE
00000f68: PUSH1 0x00
00000f6a: DUP1
00000f6b: MLOAD
00000f6c: PUSH1 0x20
00000f6e: PUSH2 0x1ffa
00000f71: DUP4
00000f72: CODECOPY
00000f73: DUP2
00000f74: MLOAD
00000f75: SWAP2
00000f76: MSTORE
00000f77: PUSH1 0x44
00000f79: DUP3
00000f7a: ADD
00000f7b: MSTORE
00000f7c: SWAP1
00000f7d: MLOAD
00000f7e: SWAP1
00000f7f: DUP2
00000f80: SWAP1
00000f81: SUB
00000f82: PUSH1 0x64
00000f84: ADD
00000f85: SWAP1
00000f86: REVERT
00000f87: JUMPDEST
00000f88: PUSH1 0x08
00000f8a: DUP1
00000f8b: SLOAD
00000f8c: PUSH1 0xff
00000f8e: PUSH1 0xa0
00000f90: SHL
00000f91: NOT
00000f92: AND
00000f93: PUSH1 0x01
00000f95: PUSH1 0xa0
00000f97: SHL
00000f98: OR
00000f99: SWAP1
00000f9a: SSTORE
00000f9b: JUMP
00000f9c: JUMPDEST
00000f9d: PUSH1 0x06
00000f9f: DUP1
00000fa0: SLOAD
00000fa1: PUSH1 0x40
00000fa3: DUP1
00000fa4: MLOAD
00000fa5: PUSH1 0x20
00000fa7: PUSH1 0x02
00000fa9: PUSH1 0x01
00000fab: DUP6
00000fac: AND
00000fad: ISZERO
00000fae: PUSH2 0x0100
00000fb1: MUL
00000fb2: PUSH1 0x00
00000fb4: NOT
00000fb5: ADD
00000fb6: SWAP1
00000fb7: SWAP5
00000fb8: AND
00000fb9: SWAP4
00000fba: SWAP1
00000fbb: SWAP4
00000fbc: DIV
00000fbd: PUSH1 0x1f
00000fbf: DUP2
00000fc0: ADD
00000fc1: DUP5
00000fc2: SWAP1
00000fc3: DIV
00000fc4: DUP5
00000fc5: MUL
00000fc6: DUP3
00000fc7: ADD
00000fc8: DUP5
00000fc9: ADD
00000fca: SWAP1
00000fcb: SWAP3
00000fcc: MSTORE
00000fcd: DUP2
00000fce: DUP2
00000fcf: MSTORE
00000fd0: SWAP3
00000fd1: SWAP2
00000fd2: DUP4
00000fd3: ADD
00000fd4: DUP3
00000fd5: DUP3
00000fd6: DUP1
00000fd7: ISZERO
00000fd8: PUSH2 0x05fa
00000fdb: JUMPI
00000fdc: DUP1
00000fdd: PUSH1 0x1f
00000fdf: LT
00000fe0: PUSH2 0x05cf
00000fe3: JUMPI
00000fe4: PUSH2 0x0100
00000fe7: DUP1
00000fe8: DUP4
00000fe9: SLOAD
00000fea: DIV
00000feb: MUL
00000fec: DUP4
00000fed: MSTORE
00000fee: SWAP2
00000fef: PUSH1 0x20
00000ff1: ADD
00000ff2: SWAP2
00000ff3: PUSH2 0x05fa
00000ff6: JUMP
00000ff7: JUMPDEST
00000ff8: PUSH1 0x08
00000ffa: SLOAD
00000ffb: PUSH1 0x00
00000ffd: SWAP1
00000ffe: PUSH1 0x01
00001000: PUSH1 0x01
00001002: PUSH1 0xa0
00001004: SHL
00001005: SUB
00001006: AND
00001007: CALLER
00001008: EQ
00001009: PUSH2 0x1047
0000100c: JUMPI
0000100d: PUSH1 0x40
0000100f: DUP1
00001010: MLOAD
00001011: PUSH3 0x461bcd
00001015: PUSH1 0xe5
00001017: SHL
00001018: DUP2
00001019: MSTORE
0000101a: PUSH1 0x20
0000101c: PUSH1 0x04
0000101e: DUP3
0000101f: ADD
00001020: MSTORE
00001021: PUSH1 0x15
00001023: PUSH1 0x24
00001025: DUP3
00001026: ADD
00001027: MSTORE
00001028: PUSH1 0x00
0000102a: DUP1
0000102b: MLOAD
0000102c: PUSH1 0x20
0000102e: PUSH2 0x1ffa
00001031: DUP4
00001032: CODECOPY
00001033: DUP2
00001034: MLOAD
00001035: SWAP2
00001036: MSTORE
00001037: PUSH1 0x44
00001039: DUP3
0000103a: ADD
0000103b: MSTORE
0000103c: SWAP1
0000103d: MLOAD
0000103e: SWAP1
0000103f: DUP2
00001040: SWAP1
00001041: SUB
00001042: PUSH1 0x64
00001044: ADD
00001045: SWAP1
00001046: REVERT
00001047: JUMPDEST
00001048: PUSH1 0x08
0000104a: SLOAD
0000104b: PUSH1 0x01
0000104d: PUSH1 0xa0
0000104f: SHL
00001050: SWAP1
00001051: DIV
00001052: PUSH1 0xff
00001054: AND
00001055: ISZERO
00001056: PUSH2 0x1094
00001059: JUMPI
0000105a: PUSH1 0x40
0000105c: DUP1
0000105d: MLOAD
0000105e: PUSH3 0x461bcd
00001062: PUSH1 0xe5
00001064: SHL
00001065: DUP2
00001066: MSTORE
00001067: PUSH1 0x20
00001069: PUSH1 0x04
0000106b: DUP3
0000106c: ADD
0000106d: MSTORE
0000106e: PUSH1 0x16
00001070: PUSH1 0x24
00001072: DUP3
00001073: ADD
00001074: MSTORE
00001075: PUSH1 0x00
00001077: DUP1
00001078: MLOAD
00001079: PUSH1 0x20
0000107b: PUSH2 0x1dff
0000107e: DUP4
0000107f: CODECOPY
00001080: DUP2
00001081: MLOAD
00001082: SWAP2
00001083: MSTORE
00001084: PUSH1 0x44
00001086: DUP3
00001087: ADD
00001088: MSTORE
00001089: SWAP1
0000108a: MLOAD
0000108b: SWAP1
0000108c: DUP2
0000108d: SWAP1
0000108e: SUB
0000108f: PUSH1 0x64
00001091: ADD
00001092: SWAP1
00001093: REVERT
00001094: JUMPDEST
00001095: PUSH1 0x07
00001097: SLOAD
00001098: PUSH1 0x00
0000109a: SWAP1
0000109b: DUP4
0000109c: SWAP1
0000109d: PUSH2 0x10b2
000010a0: SWAP1
000010a1: PUSH2 0x071e
000010a4: DUP4
000010a5: PUSH8 0x0de0b6b3a7640000
000010ae: PUSH2 0x1650
000010b1: JUMP
000010b2: JUMPDEST
000010b3: SWAP2
000010b4: POP
000010b5: PUSH2 0x0c38
000010b8: DUP6
000010b9: DUP4
000010ba: DUP4
000010bb: PUSH2 0x1c34
000010be: JUMP
000010bf: JUMPDEST
000010c0: PUSH1 0x01
000010c2: PUSH1 0x01
000010c4: PUSH1 0xa0
000010c6: SHL
000010c7: SUB
000010c8: DUP3
000010c9: AND
000010ca: PUSH1 0x00
000010cc: SWAP1
000010cd: DUP2
000010ce: MSTORE
000010cf: PUSH1 0x03
000010d1: PUSH1 0x20
000010d3: MSTORE
000010d4: PUSH1 0x40
000010d6: DUP2
000010d7: KECCAK256
000010d8: SLOAD
000010d9: DUP4
000010da: SWAP1
000010db: PUSH1 0xff
000010dd: AND
000010de: ISZERO
000010df: PUSH2 0x111d
000010e2: JUMPI
000010e3: PUSH1 0x40
000010e5: DUP1
000010e6: MLOAD
000010e7: PUSH3 0x461bcd
000010eb: PUSH1 0xe5
000010ed: SHL
000010ee: DUP2
000010ef: MSTORE
000010f0: PUSH1 0x20
000010f2: PUSH1 0x04
000010f4: DUP3
000010f5: ADD
000010f6: MSTORE
000010f7: PUSH1 0x16
000010f9: PUSH1 0x24
000010fb: DUP3
000010fc: ADD
000010fd: MSTORE
000010fe: PUSH1 0x00
00001100: DUP1
00001101: MLOAD
00001102: PUSH1 0x20
00001104: PUSH2 0x1ebb
00001107: DUP4
00001108: CODECOPY
00001109: DUP2
0000110a: MLOAD
0000110b: SWAP2
0000110c: MSTORE
0000110d: PUSH1 0x44
0000110f: DUP3
00001110: ADD
00001111: MSTORE
00001112: SWAP1
00001113: MLOAD
00001114: SWAP1
00001115: DUP2
00001116: SWAP1
00001117: SUB
00001118: PUSH1 0x64
0000111a: ADD
0000111b: SWAP1
0000111c: REVERT
0000111d: JUMPDEST
0000111e: CALLER
0000111f: PUSH1 0x00
00001121: DUP2
00001122: DUP2
00001123: MSTORE
00001124: PUSH1 0x03
00001126: PUSH1 0x20
00001128: MSTORE
00001129: PUSH1 0x40
0000112b: SWAP1
0000112c: KECCAK256
0000112d: SLOAD
0000112e: PUSH1 0xff
00001130: AND
00001131: ISZERO
00001132: PUSH2 0x1170
00001135: JUMPI
00001136: PUSH1 0x40
00001138: DUP1
00001139: MLOAD
0000113a: PUSH3 0x461bcd
0000113e: PUSH1 0xe5
00001140: SHL
00001141: DUP2
00001142: MSTORE
00001143: PUSH1 0x20
00001145: PUSH1 0x04
00001147: DUP3
00001148: ADD
00001149: MSTORE
0000114a: PUSH1 0x16
0000114c: PUSH1 0x24
0000114e: DUP3
0000114f: ADD
00001150: MSTORE
00001151: PUSH1 0x00
00001153: DUP1
00001154: MLOAD
00001155: PUSH1 0x20
00001157: PUSH2 0x1ebb
0000115a: DUP4
0000115b: CODECOPY
0000115c: DUP2
0000115d: MLOAD
0000115e: SWAP2
0000115f: MSTORE
00001160: PUSH1 0x44
00001162: DUP3
00001163: ADD
00001164: MSTORE
00001165: SWAP1
00001166: MLOAD
00001167: SWAP1
00001168: DUP2
00001169: SWAP1
0000116a: SUB
0000116b: PUSH1 0x64
0000116d: ADD
0000116e: SWAP1
0000116f: REVERT
00001170: JUMPDEST
00001171: PUSH1 0x08
00001173: SLOAD
00001174: PUSH1 0x01
00001176: PUSH1 0xa0
00001178: SHL
00001179: SWAP1
0000117a: DIV
0000117b: PUSH1 0xff
0000117d: AND
0000117e: ISZERO
0000117f: PUSH2 0x11bd
00001182: JUMPI
00001183: PUSH1 0x40
00001185: DUP1
00001186: MLOAD
00001187: PUSH3 0x461bcd
0000118b: PUSH1 0xe5
0000118d: SHL
0000118e: DUP2
0000118f: MSTORE
00001190: PUSH1 0x20
00001192: PUSH1 0x04
00001194: DUP3
00001195: ADD
00001196: MSTORE
00001197: PUSH1 0x16
00001199: PUSH1 0x24
0000119b: DUP3
0000119c: ADD
0000119d: MSTORE
0000119e: PUSH1 0x00
000011a0: DUP1
000011a1: MLOAD
000011a2: PUSH1 0x20
000011a4: PUSH2 0x1dff
000011a7: DUP4
000011a8: CODECOPY
000011a9: DUP2
000011aa: MLOAD
000011ab: SWAP2
000011ac: MSTORE
000011ad: PUSH1 0x44
000011af: DUP3
000011b0: ADD
000011b1: MSTORE
000011b2: SWAP1
000011b3: MLOAD
000011b4: SWAP1
000011b5: DUP2
000011b6: SWAP1
000011b7: SUB
000011b8: PUSH1 0x64
000011ba: ADD
000011bb: SWAP1
000011bc: REVERT
000011bd: JUMPDEST
000011be: PUSH1 0x00
000011c0: PUSH2 0x11ca
000011c3: PUSH2 0x0a47
000011c6: PUSH2 0x17fa
000011c9: JUMP
000011ca: JUMPDEST
000011cb: SWAP1
000011cc: POP
000011cd: PUSH2 0x0a65
000011d0: PUSH2 0x11d7
000011d3: PUSH2 0x17fa
000011d6: JUMP
000011d7: JUMPDEST
000011d8: DUP8
000011d9: PUSH2 0x0924
000011dc: DUP9
000011dd: PUSH1 0x40
000011df: MLOAD
000011e0: DUP1
000011e1: PUSH1 0x60
000011e3: ADD
000011e4: PUSH1 0x40
000011e6: MSTORE
000011e7: DUP1
000011e8: PUSH1 0x25
000011ea: DUP2
000011eb: MSTORE
000011ec: PUSH1 0x20
000011ee: ADD
000011ef: PUSH2 0x2059
000011f2: PUSH1 0x25
000011f4: SWAP2
000011f5: CODECOPY
000011f6: DUP7
000011f7: SWAP2
000011f8: SWAP1
000011f9: PUSH2 0x196f
000011fc: JUMP
000011fd: JUMPDEST
000011fe: CALLER
000011ff: PUSH1 0x00
00001201: DUP2
00001202: DUP2
00001203: MSTORE
00001204: PUSH1 0x03
00001206: PUSH1 0x20
00001208: MSTORE
00001209: PUSH1 0x40
0000120b: DUP2
0000120c: KECCAK256
0000120d: SLOAD
0000120e: SWAP1
0000120f: SWAP2
00001210: SWAP1
00001211: PUSH1 0xff
00001213: AND
00001214: ISZERO
00001215: PUSH2 0x1253
00001218: JUMPI
00001219: PUSH1 0x40
0000121b: DUP1
0000121c: MLOAD
0000121d: PUSH3 0x461bcd
00001221: PUSH1 0xe5
00001223: SHL
00001224: DUP2
00001225: MSTORE
00001226: PUSH1 0x20
00001228: PUSH1 0x04
0000122a: DUP3
0000122b: ADD
0000122c: MSTORE
0000122d: PUSH1 0x16
0000122f: PUSH1 0x24
00001231: DUP3
00001232: ADD
00001233: MSTORE
00001234: PUSH1 0x00
00001236: DUP1
00001237: MLOAD
00001238: PUSH1 0x20
0000123a: PUSH2 0x1ebb
0000123d: DUP4
0000123e: CODECOPY
0000123f: DUP2
00001240: MLOAD
00001241: SWAP2
00001242: MSTORE
00001243: PUSH1 0x44
00001245: DUP3
00001246: ADD
00001247: MSTORE
00001248: SWAP1
00001249: MLOAD
0000124a: SWAP1
0000124b: DUP2
0000124c: SWAP1
0000124d: SUB
0000124e: PUSH1 0x64
00001250: ADD
00001251: SWAP1
00001252: REVERT
00001253: JUMPDEST
00001254: PUSH1 0x01
00001256: PUSH1 0x01
00001258: PUSH1 0xa0
0000125a: SHL
0000125b: SUB
0000125c: DUP5
0000125d: AND
0000125e: PUSH1 0x00
00001260: SWAP1
00001261: DUP2
00001262: MSTORE
00001263: PUSH1 0x03
00001265: PUSH1 0x20
00001267: MSTORE
00001268: PUSH1 0x40
0000126a: SWAP1
0000126b: KECCAK256
0000126c: SLOAD
0000126d: DUP5
0000126e: SWAP1
0000126f: PUSH1 0xff
00001271: AND
00001272: ISZERO
00001273: PUSH2 0x12b1
00001276: JUMPI
00001277: PUSH1 0x40
00001279: DUP1
0000127a: MLOAD
0000127b: PUSH3 0x461bcd
0000127f: PUSH1 0xe5
00001281: SHL
00001282: DUP2
00001283: MSTORE
00001284: PUSH1 0x20
00001286: PUSH1 0x04
00001288: DUP3
00001289: ADD
0000128a: MSTORE
0000128b: PUSH1 0x16
0000128d: PUSH1 0x24
0000128f: DUP3
00001290: ADD
00001291: MSTORE
00001292: PUSH1 0x00
00001294: DUP1
00001295: MLOAD
00001296: PUSH1 0x20
00001298: PUSH2 0x1ebb
0000129b: DUP4
0000129c: CODECOPY
0000129d: DUP2
0000129e: MLOAD
0000129f: SWAP2
000012a0: MSTORE
000012a1: PUSH1 0x44
000012a3: DUP3
000012a4: ADD
000012a5: MSTORE
000012a6: SWAP1
000012a7: MLOAD
000012a8: SWAP1
000012a9: DUP2
000012aa: SWAP1
000012ab: SUB
000012ac: PUSH1 0x64
000012ae: ADD
000012af: SWAP1
000012b0: REVERT
000012b1: JUMPDEST
000012b2: PUSH1 0x08
000012b4: SLOAD
000012b5: PUSH1 0x01
000012b7: PUSH1 0xa0
000012b9: SHL
000012ba: SWAP1
000012bb: DIV
000012bc: PUSH1 0xff
000012be: AND
000012bf: ISZERO
000012c0: PUSH2 0x12fe
000012c3: JUMPI
000012c4: PUSH1 0x40
000012c6: DUP1
000012c7: MLOAD
000012c8: PUSH3 0x461bcd
000012cc: PUSH1 0xe5
000012ce: SHL
000012cf: DUP2
000012d0: MSTORE
000012d1: PUSH1 0x20
000012d3: PUSH1 0x04
000012d5: DUP3
000012d6: ADD
000012d7: MSTORE
000012d8: PUSH1 0x16
000012da: PUSH1 0x24
000012dc: DUP3
000012dd: ADD
000012de: MSTORE
000012df: PUSH1 0x00
000012e1: DUP1
000012e2: MLOAD
000012e3: PUSH1 0x20
000012e5: PUSH2 0x1dff
000012e8: DUP4
000012e9: CODECOPY
000012ea: DUP2
000012eb: MLOAD
000012ec: SWAP2
000012ed: MSTORE
000012ee: PUSH1 0x44
000012f0: DUP3
000012f1: ADD
000012f2: MSTORE
000012f3: SWAP1
000012f4: MLOAD
000012f5: SWAP1
000012f6: DUP2
000012f7: SWAP1
000012f8: SUB
000012f9: PUSH1 0x64
000012fb: ADD
000012fc: SWAP1
000012fd: REVERT
000012fe: JUMPDEST
000012ff: PUSH1 0x07
00001301: SLOAD
00001302: PUSH1 0x00
00001304: SWAP1
00001305: DUP6
00001306: SWAP1
00001307: PUSH2 0x131c
0000130a: SWAP1
0000130b: PUSH2 0x071e
0000130e: DUP4
0000130f: PUSH8 0x0de0b6b3a7640000
00001318: PUSH2 0x1650
0000131b: JUMP
0000131c: JUMPDEST
0000131d: SWAP2
0000131e: POP
0000131f: PUSH2 0x0731
00001322: CALLER
00001323: DUP9
00001324: DUP4
00001325: PUSH2 0x17fe
00001328: JUMP
00001329: JUMPDEST
0000132a: PUSH1 0x08
0000132c: SLOAD
0000132d: PUSH1 0x01
0000132f: PUSH1 0x01
00001331: PUSH1 0xa0
00001333: SHL
00001334: SUB
00001335: AND
00001336: CALLER
00001337: EQ
00001338: PUSH2 0x1376
0000133b: JUMPI
0000133c: PUSH1 0x40
0000133e: DUP1
0000133f: MLOAD
00001340: PUSH3 0x461bcd
00001344: PUSH1 0xe5
00001346: SHL
00001347: DUP2
00001348: MSTORE
00001349: PUSH1 0x20
0000134b: PUSH1 0x04
0000134d: DUP3
0000134e: ADD
0000134f: MSTORE
00001350: PUSH1 0x15
00001352: PUSH1 0x24
00001354: DUP3
00001355: ADD
00001356: MSTORE
00001357: PUSH1 0x00
00001359: DUP1
0000135a: MLOAD
0000135b: PUSH1 0x20
0000135d: PUSH2 0x1ffa
00001360: DUP4
00001361: CODECOPY
00001362: DUP2
00001363: MLOAD
00001364: SWAP2
00001365: MSTORE
00001366: PUSH1 0x44
00001368: DUP3
00001369: ADD
0000136a: MSTORE
0000136b: SWAP1
0000136c: MLOAD
0000136d: SWAP1
0000136e: DUP2
0000136f: SWAP1
00001370: SUB
00001371: PUSH1 0x64
00001373: ADD
00001374: SWAP1
00001375: REVERT
00001376: JUMPDEST
00001377: PUSH1 0x01
00001379: PUSH1 0x01
0000137b: PUSH1 0xa0
0000137d: SHL
0000137e: SUB
0000137f: DUP2
00001380: AND
00001381: PUSH2 0x13d1
00001384: JUMPI
00001385: PUSH1 0x40
00001387: DUP1
00001388: MLOAD
00001389: PUSH3 0x461bcd
0000138d: PUSH1 0xe5
0000138f: SHL
00001390: DUP2
00001391: MSTORE
00001392: PUSH1 0x20
00001394: PUSH1 0x04
00001396: DUP3
00001397: ADD
00001398: MSTORE
00001399: PUSH1 0x1e
0000139b: PUSH1 0x24
0000139d: DUP3
0000139e: ADD
0000139f: MSTORE
000013a0: PUSH32 0x6163636f756e742063616e6e6f74206265207a65726f20616464726573730000
000013c1: PUSH1 0x44
000013c3: DUP3
000013c4: ADD
000013c5: MSTORE
000013c6: SWAP1
000013c7: MLOAD
000013c8: SWAP1
000013c9: DUP2
000013ca: SWAP1
000013cb: SUB
000013cc: PUSH1 0x64
000013ce: ADD
000013cf: SWAP1
000013d0: REVERT
000013d1: JUMPDEST
000013d2: PUSH1 0x08
000013d4: SLOAD
000013d5: PUSH1 0x01
000013d7: PUSH1 0x01
000013d9: PUSH1 0xa0
000013db: SHL
000013dc: SUB
000013dd: AND
000013de: CALLER
000013df: EQ
000013e0: PUSH2 0x141e
000013e3: JUMPI
000013e4: PUSH1 0x40
000013e6: DUP1
000013e7: MLOAD
000013e8: PUSH3 0x461bcd
000013ec: PUSH1 0xe5
000013ee: SHL
000013ef: DUP2
000013f0: MSTORE
000013f1: PUSH1 0x20
000013f3: PUSH1 0x04
000013f5: DUP3
000013f6: ADD
000013f7: MSTORE
000013f8: PUSH1 0x15
000013fa: PUSH1 0x24
000013fc: DUP3
000013fd: ADD
000013fe: MSTORE
000013ff: PUSH1 0x00
00001401: DUP1
00001402: MLOAD
00001403: PUSH1 0x20
00001405: PUSH2 0x1ffa
00001408: DUP4
00001409: CODECOPY
0000140a: DUP2
0000140b: MLOAD
0000140c: SWAP2
0000140d: MSTORE
0000140e: PUSH1 0x44
00001410: DUP3
00001411: ADD
00001412: MSTORE
00001413: SWAP1
00001414: MLOAD
00001415: SWAP1
00001416: DUP2
00001417: SWAP1
00001418: SUB
00001419: PUSH1 0x64
0000141b: ADD
0000141c: SWAP1
0000141d: REVERT
0000141e: JUMPDEST
0000141f: PUSH1 0x08
00001421: DUP1
00001422: SLOAD
00001423: PUSH1 0x01
00001425: PUSH1 0x01
00001427: PUSH1 0xa0
00001429: SHL
0000142a: SUB
0000142b: NOT
0000142c: AND
0000142d: PUSH1 0x01
0000142f: PUSH1 0x01
00001431: PUSH1 0xa0
00001433: SHL
00001434: SUB
00001435: DUP4
00001436: DUP2
00001437: AND
00001438: SWAP2
00001439: SWAP1
0000143a: SWAP2
0000143b: OR
0000143c: SWAP2
0000143d: DUP3
0000143e: SWAP1
0000143f: SSTORE
00001440: PUSH1 0x40
00001442: DUP1
00001443: MLOAD
00001444: SWAP3
00001445: SWAP1
00001446: SWAP2
00001447: AND
00001448: DUP3
00001449: MSTORE
0000144a: MLOAD
0000144b: PUSH32 0x7ce7ec0b50378fb6c0186ffb5f48325f6593fcb4ca4386f21861af3129188f5c
0000146c: SWAP2
0000146d: PUSH1 0x20
0000146f: SWAP1
00001470: DUP3
00001471: SWAP1
00001472: SUB
00001473: ADD
00001474: SWAP1
00001475: LOG1
00001476: POP
00001477: JUMP
00001478: JUMPDEST
00001479: PUSH1 0x07
0000147b: SLOAD
0000147c: PUSH1 0x01
0000147e: PUSH1 0x01
00001480: PUSH1 0xa0
00001482: SHL
00001483: SUB
00001484: DUP1
00001485: DUP5
00001486: AND
00001487: PUSH1 0x00
00001489: SWAP1
0000148a: DUP2
0000148b: MSTORE
0000148c: PUSH1 0x02
0000148e: PUSH1 0x20
00001490: SWAP1
00001491: DUP2
00001492: MSTORE
00001493: PUSH1 0x40
00001495: DUP1
00001496: DUP4
00001497: KECCAK256
00001498: SWAP4
00001499: DUP7
0000149a: AND
0000149b: DUP4
0000149c: MSTORE
0000149d: SWAP3
0000149e: SWAP1
0000149f: MSTORE
000014a0: SWAP1
000014a1: DUP2
000014a2: KECCAK256
000014a3: SLOAD
000014a4: SWAP1
000014a5: SWAP2
000014a6: DUP3
000014a7: SWAP2
000014a8: PUSH2 0x14be
000014ab: SWAP2
000014ac: PUSH8 0x0de0b6b3a7640000
000014b5: SWAP2
000014b6: PUSH2 0x071e
000014b9: SWAP2
000014ba: PUSH2 0x1650
000014bd: JUMP
000014be: JUMPDEST
000014bf: SWAP5
000014c0: SWAP4
000014c1: POP
000014c2: POP
000014c3: POP
000014c4: POP
000014c5: JUMP
000014c6: JUMPDEST
000014c7: PUSH1 0x08
000014c9: SLOAD
000014ca: PUSH1 0x01
000014cc: PUSH1 0x01
000014ce: PUSH1 0xa0
000014d0: SHL
000014d1: SUB
000014d2: AND
000014d3: CALLER
000014d4: EQ
000014d5: PUSH2 0x1513
000014d8: JUMPI
000014d9: PUSH1 0x40
000014db: DUP1
000014dc: MLOAD
000014dd: PUSH3 0x461bcd
000014e1: PUSH1 0xe5
000014e3: SHL
000014e4: DUP2
000014e5: MSTORE
000014e6: PUSH1 0x20
000014e8: PUSH1 0x04
000014ea: DUP3
000014eb: ADD
000014ec: MSTORE
000014ed: PUSH1 0x15
000014ef: PUSH1 0x24
000014f1: DUP3
000014f2: ADD
000014f3: MSTORE
000014f4: PUSH1 0x00
000014f6: DUP1
000014f7: MLOAD
000014f8: PUSH1 0x20
000014fa: PUSH2 0x1ffa
000014fd: DUP4
000014fe: CODECOPY
000014ff: DUP2
00001500: MLOAD
00001501: SWAP2
00001502: MSTORE
00001503: PUSH1 0x44
00001505: DUP3
00001506: ADD
00001507: MSTORE
00001508: SWAP1
00001509: MLOAD
0000150a: SWAP1
0000150b: DUP2
0000150c: SWAP1
0000150d: SUB
0000150e: PUSH1 0x64
00001510: ADD
00001511: SWAP1
00001512: REVERT
00001513: JUMPDEST
00001514: PUSH2 0x151b
00001517: PUSH2 0x0747
0000151a: JUMP
0000151b: JUMPDEST
0000151c: DUP2
0000151d: GT
0000151e: PUSH2 0x1558
00001521: JUMPI
00001522: PUSH1 0x40
00001524: MLOAD
00001525: PUSH3 0x461bcd
00001529: PUSH1 0xe5
0000152b: SHL
0000152c: DUP2
0000152d: MSTORE
0000152e: PUSH1 0x04
00001530: ADD
00001531: DUP1
00001532: DUP1
00001533: PUSH1 0x20
00001535: ADD
00001536: DUP3
00001537: DUP2
00001538: SUB
00001539: DUP3
0000153a: MSTORE
0000153b: PUSH1 0x3f
0000153d: DUP2
0000153e: MSTORE
0000153f: PUSH1 0x20
00001541: ADD
00001542: DUP1
00001543: PUSH2 0x201a
00001546: PUSH1 0x3f
00001548: SWAP2
00001549: CODECOPY
0000154a: PUSH1 0x40
0000154c: ADD
0000154d: SWAP2
0000154e: POP
0000154f: POP
00001550: PUSH1 0x40
00001552: MLOAD
00001553: DUP1
00001554: SWAP2
00001555: SUB
00001556: SWAP1
00001557: REVERT
00001558: JUMPDEST
00001559: PUSH1 0x04
0000155b: SLOAD
0000155c: PUSH2 0x1571
0000155f: SWAP1
00001560: PUSH2 0x071e
00001563: DUP4
00001564: PUSH8 0x0de0b6b3a7640000
0000156d: PUSH2 0x1650
00001570: JUMP
00001571: JUMPDEST
00001572: PUSH1 0x07
00001574: DUP2
00001575: SWAP1
00001576: SSTORE
00001577: PUSH1 0x40
00001579: DUP1
0000157a: MLOAD
0000157b: SWAP2
0000157c: DUP3
0000157d: MSTORE
0000157e: MLOAD
0000157f: PUSH32 0xd1ac89bfc464ce49c894c4e2379f1ca2b062aff1a640e929764ac1157fa13f0f
000015a0: SWAP2
000015a1: DUP2
000015a2: SWAP1
000015a3: SUB
000015a4: PUSH1 0x20
000015a6: ADD
000015a7: SWAP1
000015a8: LOG1
000015a9: POP
000015aa: JUMP
000015ab: JUMPDEST
000015ac: PUSH1 0x08
000015ae: SLOAD
000015af: PUSH1 0x01
000015b1: PUSH1 0x01
000015b3: PUSH1 0xa0
000015b5: SHL
000015b6: SUB
000015b7: AND
000015b8: DUP2
000015b9: JUMP
000015ba: JUMPDEST
000015bb: PUSH1 0x03
000015bd: PUSH1 0x20
000015bf: MSTORE
000015c0: PUSH1 0x00
000015c2: SWAP1
000015c3: DUP2
000015c4: MSTORE
000015c5: PUSH1 0x40
000015c7: SWAP1
000015c8: KECCAK256
000015c9: SLOAD
000015ca: PUSH1 0xff
000015cc: AND
000015cd: DUP2
000015ce: JUMP
000015cf: JUMPDEST
000015d0: PUSH1 0x00
000015d2: SLOAD
000015d3: PUSH1 0xff
000015d5: AND
000015d6: ISZERO
000015d7: PUSH2 0x1611
000015da: JUMPI
000015db: PUSH1 0x40
000015dd: MLOAD
000015de: PUSH3 0x461bcd
000015e2: PUSH1 0xe5
000015e4: SHL
000015e5: DUP2
000015e6: MSTORE
000015e7: PUSH1 0x04
000015e9: ADD
000015ea: DUP1
000015eb: DUP1
000015ec: PUSH1 0x20
000015ee: ADD
000015ef: DUP3
000015f0: DUP2
000015f1: SUB
000015f2: DUP3
000015f3: MSTORE
000015f4: PUSH1 0x29
000015f6: DUP2
000015f7: MSTORE
000015f8: PUSH1 0x20
000015fa: ADD
000015fb: DUP1
000015fc: PUSH2 0x1e92
000015ff: PUSH1 0x29
00001601: SWAP2
00001602: CODECOPY
00001603: PUSH1 0x40
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: PUSH2 0x1619
00001615: PUSH2 0x1d25
00001618: JUMP
00001619: JUMPDEST
0000161a: PUSH1 0x08
0000161c: DUP1
0000161d: SLOAD
0000161e: PUSH1 0x01
00001620: PUSH1 0x01
00001622: PUSH1 0xa0
00001624: SHL
00001625: SUB
00001626: NOT
00001627: AND
00001628: CALLER
00001629: SWAP1
0000162a: DUP2
0000162b: OR
0000162c: SWAP1
0000162d: SWAP2
0000162e: SSTORE
0000162f: PUSH8 0x0de0b6b3a7640000
00001638: PUSH1 0x07
0000163a: SSTORE
0000163b: PUSH1 0x04
0000163d: DUP3
0000163e: SWAP1
0000163f: SSTORE
00001640: PUSH1 0x00
00001642: SWAP1
00001643: DUP2
00001644: MSTORE
00001645: PUSH1 0x01
00001647: PUSH1 0x20
00001649: MSTORE
0000164a: PUSH1 0x40
0000164c: SWAP1
0000164d: KECCAK256
0000164e: SSTORE
0000164f: JUMP
00001650: JUMPDEST
00001651: PUSH1 0x00
00001653: DUP3
00001654: PUSH2 0x165f
00001657: JUMPI
00001658: POP
00001659: PUSH1 0x00
0000165b: PUSH2 0x0c3f
0000165e: JUMP
0000165f: JUMPDEST
00001660: DUP3
00001661: DUP3
00001662: MUL
00001663: DUP3
00001664: DUP5
00001665: DUP3
00001666: DUP2
00001667: PUSH2 0x166c
0000166a: JUMPI
0000166b: INVALID
0000166c: JUMPDEST
0000166d: DIV
0000166e: EQ
0000166f: PUSH2 0x0f33
00001672: JUMPI
00001673: PUSH1 0x40
00001675: MLOAD
00001676: PUSH3 0x461bcd
0000167a: PUSH1 0xe5
0000167c: SHL
0000167d: DUP2
0000167e: MSTORE
0000167f: PUSH1 0x04
00001681: ADD
00001682: DUP1
00001683: DUP1
00001684: PUSH1 0x20
00001686: ADD
00001687: DUP3
00001688: DUP2
00001689: SUB
0000168a: DUP3
0000168b: MSTORE
0000168c: PUSH1 0x21
0000168e: DUP2
0000168f: MSTORE
00001690: PUSH1 0x20
00001692: ADD
00001693: DUP1
00001694: PUSH2 0x1edb
00001697: PUSH1 0x21
00001699: SWAP2
0000169a: CODECOPY
0000169b: PUSH1 0x40
0000169d: ADD
0000169e: SWAP2
0000169f: POP
000016a0: POP
000016a1: PUSH1 0x40
000016a3: MLOAD
000016a4: DUP1
000016a5: SWAP2
000016a6: SUB
000016a7: SWAP1
000016a8: REVERT
000016a9: JUMPDEST
000016aa: PUSH1 0x00
000016ac: PUSH2 0x0f33
000016af: DUP4
000016b0: DUP4
000016b1: PUSH1 0x40
000016b3: MLOAD
000016b4: DUP1
000016b5: PUSH1 0x40
000016b7: ADD
000016b8: PUSH1 0x40
000016ba: MSTORE
000016bb: DUP1
000016bc: PUSH1 0x1a
000016be: DUP2
000016bf: MSTORE
000016c0: PUSH1 0x20
000016c2: ADD
000016c3: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000
000016e4: DUP2
000016e5: MSTORE
000016e6: POP
000016e7: PUSH2 0x1d34
000016ea: JUMP
000016eb: JUMPDEST
000016ec: PUSH1 0x01
000016ee: PUSH1 0x01
000016f0: PUSH1 0xa0
000016f2: SHL
000016f3: SUB
000016f4: DUP4
000016f5: AND
000016f6: PUSH2 0x1730
000016f9: JUMPI
000016fa: PUSH1 0x40
000016fc: MLOAD
000016fd: PUSH3 0x461bcd
00001701: PUSH1 0xe5
00001703: SHL
00001704: DUP2
00001705: MSTORE
00001706: PUSH1 0x04
00001708: ADD
00001709: DUP1
0000170a: DUP1
0000170b: PUSH1 0x20
0000170d: ADD
0000170e: DUP3
0000170f: DUP2
00001710: SUB
00001711: DUP3
00001712: MSTORE
00001713: PUSH1 0x24
00001715: DUP2
00001716: MSTORE
00001717: PUSH1 0x20
00001719: ADD
0000171a: DUP1
0000171b: PUSH2 0x1fd6
0000171e: PUSH1 0x24
00001720: SWAP2
00001721: CODECOPY
00001722: PUSH1 0x40
00001724: ADD
00001725: SWAP2
00001726: POP
00001727: POP
00001728: PUSH1 0x40
0000172a: MLOAD
0000172b: DUP1
0000172c: SWAP2
0000172d: SUB
0000172e: SWAP1
0000172f: REVERT
00001730: JUMPDEST
00001731: PUSH1 0x01
00001733: PUSH1 0x01
00001735: PUSH1 0xa0
00001737: SHL
00001738: SUB
00001739: DUP3
0000173a: AND
0000173b: PUSH2 0x1775
0000173e: JUMPI
0000173f: PUSH1 0x40
00001741: MLOAD
00001742: PUSH3 0x461bcd
00001746: PUSH1 0xe5
00001748: SHL
00001749: DUP2
0000174a: MSTORE
0000174b: PUSH1 0x04
0000174d: ADD
0000174e: DUP1
0000174f: DUP1
00001750: PUSH1 0x20
00001752: ADD
00001753: DUP3
00001754: DUP2
00001755: SUB
00001756: DUP3
00001757: MSTORE
00001758: PUSH1 0x22
0000175a: DUP2
0000175b: MSTORE
0000175c: PUSH1 0x20
0000175e: ADD
0000175f: DUP1
00001760: PUSH2 0x1e4a
00001763: PUSH1 0x22
00001765: SWAP2
00001766: CODECOPY
00001767: PUSH1 0x40
00001769: ADD
0000176a: SWAP2
0000176b: POP
0000176c: POP
0000176d: PUSH1 0x40
0000176f: MLOAD
00001770: DUP1
00001771: SWAP2
00001772: SUB
00001773: SWAP1
00001774: REVERT
00001775: JUMPDEST
00001776: PUSH1 0x07
00001778: SLOAD
00001779: PUSH1 0x00
0000177b: SWAP1
0000177c: PUSH2 0x1791
0000177f: SWAP1
00001780: PUSH2 0x071e
00001783: DUP5
00001784: PUSH8 0x0de0b6b3a7640000
0000178d: PUSH2 0x1650
00001790: JUMP
00001791: JUMPDEST
00001792: PUSH1 0x01
00001794: PUSH1 0x01
00001796: PUSH1 0xa0
00001798: SHL
00001799: SUB
0000179a: DUP1
0000179b: DUP7
0000179c: AND
0000179d: PUSH1 0x00
0000179f: DUP2
000017a0: DUP2
000017a1: MSTORE
000017a2: PUSH1 0x02
000017a4: PUSH1 0x20
000017a6: SWAP1
000017a7: DUP2
000017a8: MSTORE
000017a9: PUSH1 0x40
000017ab: DUP1
000017ac: DUP4
000017ad: KECCAK256
000017ae: SWAP5
000017af: DUP10
000017b0: AND
000017b1: DUP1
000017b2: DUP5
000017b3: MSTORE
000017b4: SWAP5
000017b5: DUP3
000017b6: MSTORE
000017b7: SWAP2
000017b8: DUP3
000017b9: SWAP1
000017ba: KECCAK256
000017bb: DUP6
000017bc: SWAP1
000017bd: SSTORE
000017be: DUP2
000017bf: MLOAD
000017c0: DUP8
000017c1: DUP2
000017c2: MSTORE
000017c3: SWAP2
000017c4: MLOAD
000017c5: SWAP5
000017c6: SWAP6
000017c7: POP
000017c8: SWAP3
000017c9: SWAP4
000017ca: SWAP2
000017cb: SWAP3
000017cc: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
000017ed: SWAP3
000017ee: SWAP2
000017ef: DUP3
000017f0: SWAP1
000017f1: SUB
000017f2: ADD
000017f3: SWAP1
000017f4: LOG3
000017f5: POP
000017f6: POP
000017f7: POP
000017f8: POP
000017f9: JUMP
000017fa: JUMPDEST
000017fb: CALLER
000017fc: SWAP1
000017fd: JUMP
000017fe: JUMPDEST
000017ff: PUSH1 0x01
00001801: PUSH1 0x01
00001803: PUSH1 0xa0
00001805: SHL
00001806: SUB
00001807: DUP4
00001808: AND
00001809: PUSH2 0x1843
0000180c: JUMPI
0000180d: PUSH1 0x40
0000180f: MLOAD
00001810: PUSH3 0x461bcd
00001814: PUSH1 0xe5
00001816: SHL
00001817: DUP2
00001818: MSTORE
00001819: PUSH1 0x04
0000181b: ADD
0000181c: DUP1
0000181d: DUP1
0000181e: PUSH1 0x20
00001820: ADD
00001821: DUP3
00001822: DUP2
00001823: SUB
00001824: DUP3
00001825: MSTORE
00001826: PUSH1 0x25
00001828: DUP2
00001829: MSTORE
0000182a: PUSH1 0x20
0000182c: ADD
0000182d: DUP1
0000182e: PUSH2 0x1f7e
00001831: PUSH1 0x25
00001833: SWAP2
00001834: CODECOPY
00001835: PUSH1 0x40
00001837: ADD
00001838: SWAP2
00001839: POP
0000183a: POP
0000183b: PUSH1 0x40
0000183d: MLOAD
0000183e: DUP1
0000183f: SWAP2
00001840: SUB
00001841: SWAP1
00001842: REVERT
00001843: JUMPDEST
00001844: PUSH1 0x01
00001846: PUSH1 0x01
00001848: PUSH1 0xa0
0000184a: SHL
0000184b: SUB
0000184c: DUP3
0000184d: AND
0000184e: PUSH2 0x1888
00001851: JUMPI
00001852: PUSH1 0x40
00001854: MLOAD
00001855: PUSH3 0x461bcd
00001859: PUSH1 0xe5
0000185b: SHL
0000185c: DUP2
0000185d: MSTORE
0000185e: PUSH1 0x04
00001860: ADD
00001861: DUP1
00001862: DUP1
00001863: PUSH1 0x20
00001865: ADD
00001866: DUP3
00001867: DUP2
00001868: SUB
00001869: DUP3
0000186a: MSTORE
0000186b: PUSH1 0x23
0000186d: DUP2
0000186e: MSTORE
0000186f: PUSH1 0x20
00001871: ADD
00001872: DUP1
00001873: PUSH2 0x1ddc
00001876: PUSH1 0x23
00001878: SWAP2
00001879: CODECOPY
0000187a: PUSH1 0x40
0000187c: ADD
0000187d: SWAP2
0000187e: POP
0000187f: POP
00001880: PUSH1 0x40
00001882: MLOAD
00001883: DUP1
00001884: SWAP2
00001885: SUB
00001886: SWAP1
00001887: REVERT
00001888: JUMPDEST
00001889: PUSH1 0x07
0000188b: SLOAD
0000188c: PUSH1 0x00
0000188e: SWAP1
0000188f: PUSH2 0x18a4
00001892: SWAP1
00001893: PUSH2 0x071e
00001896: DUP5
00001897: PUSH8 0x0de0b6b3a7640000
000018a0: PUSH2 0x1650
000018a3: JUMP
000018a4: JUMPDEST
000018a5: SWAP1
000018a6: POP
000018a7: PUSH2 0x18e3
000018aa: DUP2
000018ab: PUSH1 0x40
000018ad: MLOAD
000018ae: DUP1
000018af: PUSH1 0x60
000018b1: ADD
000018b2: PUSH1 0x40
000018b4: MSTORE
000018b5: DUP1
000018b6: PUSH1 0x2b
000018b8: DUP2
000018b9: MSTORE
000018ba: PUSH1 0x20
000018bc: ADD
000018bd: PUSH2 0x1e1f
000018c0: PUSH1 0x2b
000018c2: SWAP2
000018c3: CODECOPY
000018c4: PUSH1 0x01
000018c6: PUSH1 0x01
000018c8: PUSH1 0xa0
000018ca: SHL
000018cb: SUB
000018cc: DUP8
000018cd: AND
000018ce: PUSH1 0x00
000018d0: SWAP1
000018d1: DUP2
000018d2: MSTORE
000018d3: PUSH1 0x01
000018d5: PUSH1 0x20
000018d7: MSTORE
000018d8: PUSH1 0x40
000018da: SWAP1
000018db: KECCAK256
000018dc: SLOAD
000018dd: SWAP2
000018de: SWAP1
000018df: PUSH2 0x196f
000018e2: JUMP
000018e3: JUMPDEST
000018e4: PUSH1 0x01
000018e6: PUSH1 0x01
000018e8: PUSH1 0xa0
000018ea: SHL
000018eb: SUB
000018ec: DUP1
000018ed: DUP7
000018ee: AND
000018ef: PUSH1 0x00
000018f1: SWAP1
000018f2: DUP2
000018f3: MSTORE
000018f4: PUSH1 0x01
000018f6: PUSH1 0x20
000018f8: MSTORE
000018f9: PUSH1 0x40
000018fb: DUP1
000018fc: DUP3
000018fd: KECCAK256
000018fe: SWAP4
000018ff: SWAP1
00001900: SWAP4
00001901: SSTORE
00001902: SWAP1
00001903: DUP6
00001904: AND
00001905: DUP2
00001906: MSTORE
00001907: KECCAK256
00001908: SLOAD
00001909: PUSH2 0x1912
0000190c: SWAP1
0000190d: DUP3
0000190e: PUSH2 0x1a06
00001911: JUMP
00001912: JUMPDEST
00001913: PUSH1 0x01
00001915: PUSH1 0x01
00001917: PUSH1 0xa0
00001919: SHL
0000191a: SUB
0000191b: DUP1
0000191c: DUP6
0000191d: AND
0000191e: PUSH1 0x00
00001920: DUP2
00001921: DUP2
00001922: MSTORE
00001923: PUSH1 0x01
00001925: PUSH1 0x20
00001927: SWAP1
00001928: DUP2
00001929: MSTORE
0000192a: PUSH1 0x40
0000192c: SWAP2
0000192d: DUP3
0000192e: SWAP1
0000192f: KECCAK256
00001930: SWAP5
00001931: SWAP1
00001932: SWAP5
00001933: SSTORE
00001934: DUP1
00001935: MLOAD
00001936: DUP7
00001937: DUP2
00001938: MSTORE
00001939: SWAP1
0000193a: MLOAD
0000193b: SWAP2
0000193c: SWAP4
0000193d: SWAP3
0000193e: DUP9
0000193f: AND
00001940: SWAP3
00001941: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00001962: SWAP3
00001963: SWAP2
00001964: DUP3
00001965: SWAP1
00001966: SUB
00001967: ADD
00001968: SWAP1
00001969: LOG3
0000196a: POP
0000196b: POP
0000196c: POP
0000196d: POP
0000196e: JUMP
0000196f: JUMPDEST
00001970: PUSH1 0x00
00001972: DUP2
00001973: DUP5
00001974: DUP5
00001975: GT
00001976: ISZERO
00001977: PUSH2 0x19fe
0000197a: JUMPI
0000197b: PUSH1 0x40
0000197d: MLOAD
0000197e: PUSH3 0x461bcd
00001982: PUSH1 0xe5
00001984: SHL
00001985: DUP2
00001986: MSTORE
00001987: PUSH1 0x04
00001989: ADD
0000198a: DUP1
0000198b: DUP1
0000198c: PUSH1 0x20
0000198e: ADD
0000198f: DUP3
00001990: DUP2
00001991: SUB
00001992: DUP3
00001993: MSTORE
00001994: DUP4
00001995: DUP2
00001996: DUP2
00001997: MLOAD
00001998: DUP2
00001999: MSTORE
0000199a: PUSH1 0x20
0000199c: ADD
0000199d: SWAP2
0000199e: POP
0000199f: DUP1
000019a0: MLOAD
000019a1: SWAP1
000019a2: PUSH1 0x20
000019a4: ADD
000019a5: SWAP1
000019a6: DUP1
000019a7: DUP4
000019a8: DUP4
000019a9: PUSH1 0x00
000019ab: JUMPDEST
000019ac: DUP4
000019ad: DUP2
000019ae: LT
000019af: ISZERO
000019b0: PUSH2 0x19c3
000019b3: JUMPI
000019b4: DUP2
000019b5: DUP2
000019b6: ADD
000019b7: MLOAD
000019b8: DUP4
000019b9: DUP3
000019ba: ADD
000019bb: MSTORE
000019bc: PUSH1 0x20
000019be: ADD
000019bf: PUSH2 0x19ab
000019c2: JUMP
000019c3: JUMPDEST
000019c4: POP
000019c5: POP
000019c6: POP
000019c7: POP
000019c8: SWAP1
000019c9: POP
000019ca: SWAP1
000019cb: DUP2
000019cc: ADD
000019cd: SWAP1
000019ce: PUSH1 0x1f
000019d0: AND
000019d1: DUP1
000019d2: ISZERO
000019d3: PUSH2 0x19f0
000019d6: JUMPI
000019d7: DUP1
000019d8: DUP3
000019d9: SUB
000019da: DUP1
000019db: MLOAD
000019dc: PUSH1 0x01
000019de: DUP4
000019df: PUSH1 0x20
000019e1: SUB
000019e2: PUSH2 0x0100
000019e5: EXP
000019e6: SUB
000019e7: NOT
000019e8: AND
000019e9: DUP2
000019ea: MSTORE
000019eb: PUSH1 0x20
000019ed: ADD
000019ee: SWAP2
000019ef: POP
000019f0: JUMPDEST
000019f1: POP
000019f2: SWAP3
000019f3: POP
000019f4: POP
000019f5: POP
000019f6: PUSH1 0x40
000019f8: MLOAD
000019f9: DUP1
000019fa: SWAP2
000019fb: SUB
000019fc: SWAP1
000019fd: REVERT
000019fe: JUMPDEST
000019ff: POP
00001a00: POP
00001a01: POP
00001a02: SWAP1
00001a03: SUB
00001a04: SWAP1
00001a05: JUMP
00001a06: JUMPDEST
00001a07: PUSH1 0x00
00001a09: DUP3
00001a0a: DUP3
00001a0b: ADD
00001a0c: DUP4
00001a0d: DUP2
00001a0e: LT
00001a0f: ISZERO
00001a10: PUSH2 0x0f33
00001a13: JUMPI
00001a14: PUSH1 0x40
00001a16: DUP1
00001a17: MLOAD
00001a18: PUSH3 0x461bcd
00001a1c: PUSH1 0xe5
00001a1e: SHL
00001a1f: DUP2
00001a20: MSTORE
00001a21: PUSH1 0x20
00001a23: PUSH1 0x04
00001a25: DUP3
00001a26: ADD
00001a27: MSTORE
00001a28: PUSH1 0x1b
00001a2a: PUSH1 0x24
00001a2c: DUP3
00001a2d: ADD
00001a2e: MSTORE
00001a2f: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
00001a50: PUSH1 0x44
00001a52: DUP3
00001a53: ADD
00001a54: MSTORE
00001a55: SWAP1
00001a56: MLOAD
00001a57: SWAP1
00001a58: DUP2
00001a59: SWAP1
00001a5a: SUB
00001a5b: PUSH1 0x64
00001a5d: ADD
00001a5e: SWAP1
00001a5f: REVERT
00001a60: JUMPDEST
00001a61: PUSH1 0x01
00001a63: PUSH1 0x01
00001a65: PUSH1 0xa0
00001a67: SHL
00001a68: SUB
00001a69: DUP4
00001a6a: AND
00001a6b: PUSH2 0x1abb
00001a6e: JUMPI
00001a6f: PUSH1 0x40
00001a71: DUP1
00001a72: MLOAD
00001a73: PUSH3 0x461bcd
00001a77: PUSH1 0xe5
00001a79: SHL
00001a7a: DUP2
00001a7b: MSTORE
00001a7c: PUSH1 0x20
00001a7e: PUSH1 0x04
00001a80: DUP3
00001a81: ADD
00001a82: MSTORE
00001a83: PUSH1 0x1f
00001a85: PUSH1 0x24
00001a87: DUP3
00001a88: ADD
00001a89: MSTORE
00001a8a: PUSH32 0x45524332303a206d696e7420746f20746865207a65726f206164647265737300
00001aab: PUSH1 0x44
00001aad: DUP3
00001aae: ADD
00001aaf: MSTORE
00001ab0: SWAP1
00001ab1: MLOAD
00001ab2: SWAP1
00001ab3: DUP2
00001ab4: SWAP1
00001ab5: SUB
00001ab6: PUSH1 0x64
00001ab8: ADD
00001ab9: SWAP1
00001aba: REVERT
00001abb: JUMPDEST
00001abc: PUSH1 0x04
00001abe: SLOAD
00001abf: PUSH2 0x1ac8
00001ac2: SWAP1
00001ac3: DUP4
00001ac4: PUSH2 0x1a06
00001ac7: JUMP
00001ac8: JUMPDEST
00001ac9: PUSH1 0x04
00001acb: SSTORE
00001acc: PUSH1 0x01
00001ace: PUSH1 0x01
00001ad0: PUSH1 0xa0
00001ad2: SHL
00001ad3: SUB
00001ad4: DUP4
00001ad5: AND
00001ad6: PUSH1 0x00
00001ad8: SWAP1
00001ad9: DUP2
00001ada: MSTORE
00001adb: PUSH1 0x01
00001add: PUSH1 0x20
00001adf: MSTORE
00001ae0: PUSH1 0x40
00001ae2: SWAP1
00001ae3: KECCAK256
00001ae4: SLOAD
00001ae5: PUSH2 0x1aee
00001ae8: SWAP1
00001ae9: DUP4
00001aea: PUSH2 0x1a06
00001aed: JUMP
00001aee: JUMPDEST
00001aef: PUSH1 0x01
00001af1: PUSH1 0x01
00001af3: PUSH1 0xa0
00001af5: SHL
00001af6: SUB
00001af7: DUP5
00001af8: AND
00001af9: PUSH1 0x00
00001afb: DUP2
00001afc: DUP2
00001afd: MSTORE
00001afe: PUSH1 0x01
00001b00: PUSH1 0x20
00001b02: SWAP1
00001b03: DUP2
00001b04: MSTORE
00001b05: PUSH1 0x40
00001b07: DUP1
00001b08: DUP4
00001b09: KECCAK256
00001b0a: SWAP5
00001b0b: SWAP1
00001b0c: SWAP5
00001b0d: SSTORE
00001b0e: DUP4
00001b0f: MLOAD
00001b10: DUP6
00001b11: DUP2
00001b12: MSTORE
00001b13: SWAP4
00001b14: MLOAD
00001b15: SWAP3
00001b16: SWAP4
00001b17: SWAP2
00001b18: SWAP3
00001b19: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00001b3a: SWAP3
00001b3b: DUP2
00001b3c: SWAP1
00001b3d: SUB
00001b3e: SWAP1
00001b3f: SWAP2
00001b40: ADD
00001b41: SWAP1
00001b42: LOG3
00001b43: POP
00001b44: POP
00001b45: POP
00001b46: JUMP
00001b47: JUMPDEST
00001b48: DUP1
00001b49: PUSH1 0x01
00001b4b: PUSH1 0x01
00001b4d: PUSH1 0xa0
00001b4f: SHL
00001b50: SUB
00001b51: AND
00001b52: PUSH4 0x52d1902d
00001b57: PUSH1 0x40
00001b59: MLOAD
00001b5a: DUP2
00001b5b: PUSH4 0xffffffff
00001b60: AND
00001b61: PUSH1 0xe0
00001b63: SHL
00001b64: DUP2
00001b65: MSTORE
00001b66: PUSH1 0x04
00001b68: ADD
00001b69: PUSH1 0x20
00001b6b: PUSH1 0x40
00001b6d: MLOAD
00001b6e: DUP1
00001b6f: DUP4
00001b70: SUB
00001b71: DUP2
00001b72: DUP7
00001b73: DUP1
00001b74: EXTCODESIZE
00001b75: ISZERO
00001b76: DUP1
00001b77: ISZERO
00001b78: PUSH2 0x1b80
00001b7b: JUMPI
00001b7c: PUSH1 0x00
00001b7e: DUP1
00001b7f: REVERT
00001b80: JUMPDEST
00001b81: POP
00001b82: GAS
00001b83: STATICCALL
00001b84: ISZERO
00001b85: DUP1
00001b86: ISZERO
00001b87: PUSH2 0x1b94
00001b8a: JUMPI
00001b8b: RETURNDATASIZE
00001b8c: PUSH1 0x00
00001b8e: DUP1
00001b8f: RETURNDATACOPY
00001b90: RETURNDATASIZE
00001b91: PUSH1 0x00
00001b93: REVERT
00001b94: JUMPDEST
00001b95: POP
00001b96: POP
00001b97: POP
00001b98: POP
00001b99: PUSH1 0x40
00001b9b: MLOAD
00001b9c: RETURNDATASIZE
00001b9d: PUSH1 0x20
00001b9f: DUP2
00001ba0: LT
00001ba1: ISZERO
00001ba2: PUSH2 0x1baa
00001ba5: JUMPI
00001ba6: PUSH1 0x00
00001ba8: DUP1
00001ba9: REVERT
00001baa: JUMPDEST
00001bab: POP
00001bac: MLOAD
00001bad: PUSH32 0xc5f16f0fcc639fa48a6947836d9850f504798523bf8c9a3a87d5876cf622bcf7
00001bce: EQ
00001bcf: PUSH2 0x1c10
00001bd2: JUMPI
00001bd3: PUSH1 0x40
00001bd5: DUP1
00001bd6: MLOAD
00001bd7: PUSH3 0x461bcd
00001bdb: PUSH1 0xe5
00001bdd: SHL
00001bde: DUP2
00001bdf: MSTORE
00001be0: PUSH1 0x20
00001be2: PUSH1 0x04
00001be4: DUP3
00001be5: ADD
00001be6: MSTORE
00001be7: PUSH1 0x0e
00001be9: PUSH1 0x24
00001beb: DUP3
00001bec: ADD
00001bed: MSTORE
00001bee: PUSH14 0x4e6f7420636f6d70617469626c65
00001bfd: PUSH1 0x90
00001bff: SHL
00001c00: PUSH1 0x44
00001c02: DUP3
00001c03: ADD
00001c04: MSTORE
00001c05: SWAP1
00001c06: MLOAD
00001c07: SWAP1
00001c08: DUP2
00001c09: SWAP1
00001c0a: SUB
00001c0b: PUSH1 0x64
00001c0d: ADD
00001c0e: SWAP1
00001c0f: REVERT
00001c10: JUMPDEST
00001c11: PUSH32 0xc5f16f0fcc639fa48a6947836d9850f504798523bf8c9a3a87d5876cf622bcf7
00001c32: SSTORE
00001c33: JUMP
00001c34: JUMPDEST
00001c35: PUSH1 0x01
00001c37: PUSH1 0x01
00001c39: PUSH1 0xa0
00001c3b: SHL
00001c3c: SUB
00001c3d: DUP4
00001c3e: AND
00001c3f: PUSH2 0x1c79
00001c42: JUMPI
00001c43: PUSH1 0x40
00001c45: MLOAD
00001c46: PUSH3 0x461bcd
00001c4a: PUSH1 0xe5
00001c4c: SHL
00001c4d: DUP2
00001c4e: MSTORE
00001c4f: PUSH1 0x04
00001c51: ADD
00001c52: DUP1
00001c53: DUP1
00001c54: PUSH1 0x20
00001c56: ADD
00001c57: DUP3
00001c58: DUP2
00001c59: SUB
00001c5a: DUP3
00001c5b: MSTORE
00001c5c: PUSH1 0x21
00001c5e: DUP2
00001c5f: MSTORE
00001c60: PUSH1 0x20
00001c62: ADD
00001c63: DUP1
00001c64: PUSH2 0x1f5d
00001c67: PUSH1 0x21
00001c69: SWAP2
00001c6a: CODECOPY
00001c6b: PUSH1 0x40
00001c6d: ADD
00001c6e: SWAP2
00001c6f: POP
00001c70: POP
00001c71: PUSH1 0x40
00001c73: MLOAD
00001c74: DUP1
00001c75: SWAP2
00001c76: SUB
00001c77: SWAP1
00001c78: REVERT
00001c79: JUMPDEST
00001c7a: PUSH2 0x1cb6
00001c7d: DUP3
00001c7e: PUSH1 0x40
00001c80: MLOAD
00001c81: DUP1
00001c82: PUSH1 0x60
00001c84: ADD
00001c85: PUSH1 0x40
00001c87: MSTORE
00001c88: DUP1
00001c89: PUSH1 0x26
00001c8b: DUP2
00001c8c: MSTORE
00001c8d: PUSH1 0x20
00001c8f: ADD
00001c90: PUSH2 0x1e6c
00001c93: PUSH1 0x26
00001c95: SWAP2
00001c96: CODECOPY
00001c97: PUSH1 0x01
00001c99: PUSH1 0x01
00001c9b: PUSH1 0xa0
00001c9d: SHL
00001c9e: SUB
00001c9f: DUP7
00001ca0: AND
00001ca1: PUSH1 0x00
00001ca3: SWAP1
00001ca4: DUP2
00001ca5: MSTORE
00001ca6: PUSH1 0x01
00001ca8: PUSH1 0x20
00001caa: MSTORE
00001cab: PUSH1 0x40
00001cad: SWAP1
00001cae: KECCAK256
00001caf: SLOAD
00001cb0: SWAP2
00001cb1: SWAP1
00001cb2: PUSH2 0x196f
00001cb5: JUMP
00001cb6: JUMPDEST
00001cb7: PUSH1 0x01
00001cb9: PUSH1 0x01
00001cbb: PUSH1 0xa0
00001cbd: SHL
00001cbe: SUB
00001cbf: DUP5
00001cc0: AND
00001cc1: PUSH1 0x00
00001cc3: SWAP1
00001cc4: DUP2
00001cc5: MSTORE
00001cc6: PUSH1 0x01
00001cc8: PUSH1 0x20
00001cca: MSTORE
00001ccb: PUSH1 0x40
00001ccd: SWAP1
00001cce: KECCAK256
00001ccf: SSTORE
00001cd0: PUSH1 0x04
00001cd2: SLOAD
00001cd3: PUSH2 0x1cdc
00001cd6: SWAP1
00001cd7: DUP4
00001cd8: PUSH2 0x1d99
00001cdb: JUMP
00001cdc: JUMPDEST
00001cdd: PUSH1 0x04
00001cdf: SSTORE
00001ce0: PUSH1 0x40
00001ce2: DUP1
00001ce3: MLOAD
00001ce4: DUP3
00001ce5: DUP2
00001ce6: MSTORE
00001ce7: SWAP1
00001ce8: MLOAD
00001ce9: PUSH1 0x00
00001ceb: SWAP2
00001cec: PUSH1 0x01
00001cee: PUSH1 0x01
00001cf0: PUSH1 0xa0
00001cf2: SHL
00001cf3: SUB
00001cf4: DUP7
00001cf5: AND
00001cf6: SWAP2
00001cf7: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00001d18: SWAP2
00001d19: DUP2
00001d1a: SWAP1
00001d1b: SUB
00001d1c: PUSH1 0x20
00001d1e: ADD
00001d1f: SWAP1
00001d20: LOG3
00001d21: POP
00001d22: POP
00001d23: POP
00001d24: JUMP
00001d25: JUMPDEST
00001d26: PUSH1 0x00
00001d28: DUP1
00001d29: SLOAD
00001d2a: PUSH1 0xff
00001d2c: NOT
00001d2d: AND
00001d2e: PUSH1 0x01
00001d30: OR
00001d31: SWAP1
00001d32: SSTORE
00001d33: JUMP
00001d34: JUMPDEST
00001d35: PUSH1 0x00
00001d37: DUP2
00001d38: DUP4
00001d39: PUSH2 0x1d83
00001d3c: JUMPI
00001d3d: PUSH1 0x40
00001d3f: MLOAD
00001d40: PUSH3 0x461bcd
00001d44: PUSH1 0xe5
00001d46: SHL
00001d47: DUP2
00001d48: MSTORE
00001d49: PUSH1 0x20
00001d4b: PUSH1 0x04
00001d4d: DUP3
00001d4e: ADD
00001d4f: DUP2
00001d50: DUP2
00001d51: MSTORE
00001d52: DUP4
00001d53: MLOAD
00001d54: PUSH1 0x24
00001d56: DUP5
00001d57: ADD
00001d58: MSTORE
00001d59: DUP4
00001d5a: MLOAD
00001d5b: SWAP1
00001d5c: SWAP3
00001d5d: DUP4
00001d5e: SWAP3
00001d5f: PUSH1 0x44
00001d61: SWAP1
00001d62: SWAP2
00001d63: ADD
00001d64: SWAP2
00001d65: SWAP1
00001d66: DUP6
00001d67: ADD
00001d68: SWAP1
00001d69: DUP1
00001d6a: DUP4
00001d6b: DUP4
00001d6c: PUSH1 0x00
00001d6e: DUP4
00001d6f: ISZERO
00001d70: PUSH2 0x19c3
00001d73: JUMPI
00001d74: DUP2
00001d75: DUP2
00001d76: ADD
00001d77: MLOAD
00001d78: DUP4
00001d79: DUP3
00001d7a: ADD
00001d7b: MSTORE
00001d7c: PUSH1 0x20
00001d7e: ADD
00001d7f: PUSH2 0x19ab
00001d82: JUMP
00001d83: JUMPDEST
00001d84: POP
00001d85: PUSH1 0x00
00001d87: DUP4
00001d88: DUP6
00001d89: DUP2
00001d8a: PUSH2 0x1d8f
00001d8d: JUMPI
00001d8e: INVALID
00001d8f: JUMPDEST
00001d90: DIV
00001d91: SWAP6
00001d92: SWAP5
00001d93: POP
00001d94: POP
00001d95: POP
00001d96: POP
00001d97: POP
00001d98: JUMP
00001d99: JUMPDEST
00001d9a: PUSH1 0x00
00001d9c: PUSH2 0x0f33
00001d9f: DUP4
00001da0: DUP4
00001da1: PUSH1 0x40
00001da3: MLOAD
00001da4: DUP1
00001da5: PUSH1 0x40
00001da7: ADD
00001da8: PUSH1 0x40
00001daa: MSTORE
00001dab: DUP1
00001dac: PUSH1 0x1e
00001dae: DUP2
00001daf: MSTORE
00001db0: PUSH1 0x20
00001db2: ADD
00001db3: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
00001dd4: DUP2
00001dd5: MSTORE
00001dd6: POP
00001dd7: PUSH2 0x196f
00001dda: JUMP
00001ddb: INVALID
00001ddc: GASLIMIT
00001ddd: MSTORE
00001dde: NUMBER
00001ddf: ORIGIN
00001de0: ADDRESS
00001de1: GASPRICE
00001de2: KECCAK256
00001de3: PUSH21 0x72616e7366657220746f20746865207a65726f2061
00001df9: PUSH5 0x6472657373
00001dff: PUSH21 0x686520636f6e747261637420697320706175736564
00001e15: STOP
00001e16: STOP
00001e17: STOP
00001e18: STOP
00001e19: STOP
00001e1a: STOP
00001e1b: STOP
00001e1c: STOP
00001e1d: STOP
00001e1e: STOP
00001e1f: GASLIMIT
00001e20: MSTORE
00001e21: NUMBER
00001e22: ORIGIN
00001e23: ADDRESS
00001e24: GASPRICE
00001e25: KECCAK256
00001e26: PUSH21 0x72616e7366657220696e7465726e616c416d742065
00001e3c: PUSH25 0x63656564732062616c616e636545524332303a20617070726f
00001e56: PUSH23 0x6520746f20746865207a65726f20616464726573734552
00001e6e: NUMBER
00001e6f: ORIGIN
00001e70: ADDRESS
00001e71: GASPRICE
00001e72: KECCAK256
00001e73: PUSH3 0x75726e
00001e77: KECCAK256
00001e78: PUSH10 0x6e7465726e61416d7420
00001e83: PUSH6 0x786365656473
00001e8a: KECCAK256
00001e8b: PUSH3 0x616c61
00001e8f: PUSH15 0x6365546865206c6962726172792068
00001e9f: PUSH2 0x7320
00001ea2: PUSH2 0x6c72
00001ea5: PUSH6 0x616479206265
00001eac: PUSH6 0x6e20696e6974
00001eb3: PUSH10 0x616c697a65642e616363
00001ebe: PUSH16 0x756e7420697320626c61636b6c697374
00001ecf: PUSH6 0x640000000000
00001ed6: STOP
00001ed7: STOP
00001ed8: STOP
00001ed9: STOP
00001eda: STOP
00001edb: MSTORE8
00001edc: PUSH2 0x6665
00001edf: UNKNOWN(0x4D)
00001ee0: PUSH2 0x7468
00001ee3: GASPRICE
00001ee4: KECCAK256
00001ee5: PUSH14 0x756c7469706c69636174696f6e20
00001ef4: PUSH16 0x766572666c6f7745524332303a207472
00001f05: PUSH2 0x6e73
00001f08: PUSH7 0x657220616d6f75
00001f10: PUSH15 0x74206578636565647320616c6c6f77
00001f20: PUSH2 0x6e63
00001f23: PUSH6 0x746865206d75
00001f2a: PUSH13 0x7469706c6965722073686f756c
00001f38: PUSH5 0x2062652067
00001f3e: PUSH19 0x6561746572207468616e2070726576696f7573
00001f52: KECCAK256
00001f53: PUSH14 0x756c7469706c6965724552433230
00001f62: GASPRICE
00001f63: KECCAK256
00001f64: PUSH3 0x75726e
00001f68: KECCAK256
00001f69: PUSH7 0x726f6d20746865
00001f71: KECCAK256
00001f72: PUSH27 0x65726f206164647265737345524332303a207472616e7366657220
00001f8e: PUSH7 0x726f6d20746865
00001f96: KECCAK256
00001f97: PUSH27 0x65726f2061646472657373546865206c696272617279206973206c
00001fb3: PUSH16 0x636b65642e204e6f2064697265637420
00001fc4: UNKNOWN(0x27)
00001fc5: PUSH4 0x616c6c27
00001fca: KECCAK256
00001fcb: PUSH10 0x7320616c6c6f7765642e
00001fd6: GASLIMIT
00001fd7: MSTORE
00001fd8: NUMBER
00001fd9: ORIGIN
00001fda: ADDRESS
00001fdb: GASPRICE
00001fdc: KECCAK256
00001fdd: PUSH2 0x7070
00001fe0: PUSH19 0x6f76652066726f6d20746865207a65726f2061
00001ff4: PUSH5 0x6472657373
00001ffa: PUSH26 0x6f7520617265206e6f74207468652061646d696e000000000000
00002015: STOP
00002016: STOP
00002017: STOP
00002018: STOP
00002019: STOP
0000201a: PUSH21 0x686520696e70757420746f74616c20737570706c79
00002030: KECCAK256
00002031: PUSH10 0x73206e6f742067726561
0000203c: PUSH21 0x6572207468616e2070726573656e7420746f74616c
00002052: KECCAK256
00002053: PUSH20 0x7570706c7945524332303a206465637265617365
00002068: PUSH5 0x20616c6c6f
0000206e: PUSH24 0x616e63652062656c6f77207a65726fa26469706673582212
00002087: KECCAK256
00002088: SWAP8
00002089: UNKNOWN(0x2E)
0000208a: UNKNOWN(0xE3)
0000208b: UNKNOWN(0xDF)
0000208c: SWAP4
0000208d: PUSH32 0xfd8a3f679d5449372d23f4de04e74059671aad74998653fae24264736f6c6343
000020ae: STOP
000020af: MOD
000020b0: UNKNOWN(0x0C)
000020b1: STOP
000020b2: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high access_control codex Initializer is publicly callable, enabling admin takeover if proxy is left uninitialized 85 no
view
evidence_json
{
    "evidence": "`function initialize(uint256 _totalsupply) public { ... admin = msg.sender; ... _balances[msg.sender] = _totalSupply; }`",
    "locations": [
        "contracts/Contract.sol"
    ],
    "recommendation": "Restrict initialization (e.g., pass admin in constructor for non-proxy, or use an `initializer` modifier with an authorized deployer/manager) and ensure initialization is performed atomically during proxy deployment.",
    "exploit_scenario": "A proxy is deployed but `initialize` is not called in the same transaction. An attacker calls `initialize`, becomes `admin`, receives the full initial supply, and can later call `updateCode` or mint/burn at will."
}
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": "0xf7ea7a3d",
            "selector": "0xf7ea7a3d",
            "calldata_variants": [
                "0xf7ea7a3d",
                "0xf7ea7a3d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf9f92be4",
            "selector": "0xf9f92be4",
            "calldata_variants": [
                "0xf9f92be4",
                "0xf9f92be40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe4b84df",
            "selector": "0xfe4b84df",
            "calldata_variants": [
                "0xfe4b84df",
                "0xfe4b84df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa9059cbb",
            "selector": "0xa9059cbb",
            "calldata_variants": [
                "0xa9059cbb",
                "0xa9059cbb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xcfaaa266",
            "selector": "0xcfaaa266",
            "calldata_variants": [
                "0xcfaaa266",
                "0xcfaaa2660000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8456cb59",
            "selector": "0x8456cb59",
            "calldata_variants": [
                "0x8456cb59",
                "0x8456cb590000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 7647,
            "type": "tx_origin_used"
        },
        {
            "pc": 7714,
            "type": "tx_origin_used"
        },
        {
            "pc": 7791,
            "type": "tx_origin_used"
        },
        {
            "pc": 8153,
            "type": "tx_origin_used"
        }
    ]
}
medium other codex Rounding in external↔internal unit conversion allows transfers exceeding displayed balance and misleading Transfer events 75 no
view
evidence_json
{
    "evidence": "`internalAmt = externalAmt.mul(deci).div(multiplier); _balances[sender] = _balances[sender].sub(internalAmt, ...)` and `emit Transfer(sender, recipient, externalAmt);`",
    "locations": [
        "contracts/Contract.sol"
    ],
    "recommendation": "Enforce `amount <= balanceOf(sender)` using external units, or compute `internalAmt` then derive a canonical external amount (`internalAmt * multiplier / deci`) and use that for checks/events; document minimum transferable unit when `multiplier` changes.",
    "exploit_scenario": "With `multiplier > deci`, `internalAmt = amount * deci / multiplier` floors. A user can call `transfer` or `transferFrom` with an `amount` larger than their displayed `balanceOf`, yet `internalAmt` still fits their internal balance. The transfer succeeds, events report the larger amount, while recipient receives less. Integrations that trust the `amount` (or Transfer event) can be over-credited."
}