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

Analysis Run

019be3d6-83e1-7166-b811-d5bbdcacd0d9

complete
Chain ID
1
Address
Block Number
Created
Thu, Jan 22, 2026 3:54 AM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Untrusted DELEGATECALL target reachable
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
40946 artifact.fetch complete 1 / 3 2 months ago
40947 proxy.resolve complete 1 / 3 2 months ago
40948 tool.cast_disasm complete 1 / 3 2 months ago
40949 analysis.bundle complete 1 / 3 2 months ago
40950 capability.graph complete 1 / 3 2 months ago
40951 detector.run complete 1 / 3 2 months ago
40952 validation.fork complete 1 / 3 2 months ago
41371 report.consolidate complete 1 / 6 2 months ago
41372 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
1
Solc
0.8.20 (solc-select)
View stderr
'forge clean' running (wd: /tmp/slither-z05148xz)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-z05148xz)

Stock._sell(address,uint256) (contracts/Stock.sol#111-150) sends eth to arbitrary user
	Dangerous calls:
	- (success,None) = __from.call{value: _totalSellAmount}() (contracts/Stock.sol#144)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#functions-that-send-ether-to-arbitrary-destinations

Stock.evaluateExercisable(address,uint256) (contracts/Stock.sol#234-248) performs a multiplication on the result of a division:
	- tranches = (block.timestamp - _option.createTime) / 86400 (contracts/Stock.sol#240)
	- (_option.granted * tranches) / 3650 - _option.vested (contracts/Stock.sol#247)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#divide-before-multiply

Stock.evaluateExercisable(address,uint256) (contracts/Stock.sol#234-248) uses a dangerous strict equality:
	- tranches == 3650 (contracts/Stock.sol#244)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#dangerous-strict-equalities

Stock.constructor(string,string,address,uint256,address).__parent (contracts/Stock.sol#29) lacks a zero-check on :
		- parent = __parent (contracts/Stock.sol#34)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#missing-zero-address-validation

Reentrancy in Stock._sell(address,uint256) (contracts/Stock.sol#111-150):
	External calls:
	- (success,None) = __from.call{value: _totalSellAmount}() (contracts/Stock.sol#144)
	Event emitted after the call(s):
	- Sell(__from,_minRound,_maxRound,_totalSellAmount,__quantity) (contracts/Stock.sol#147)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-3

Stock.grantOption(address[],uint256[]) (contracts/Stock.sol#152-200) uses timestamp for comparisons
	Dangerous comparisons:
	- require(bool,string)(optionPool.totalShares >= _toGrantedQuantity + optionPool.totalGranted,Insufficient option) (contracts/Stock.sol#168-172)
	- require(bool,string)(ys <= 10,No more shares) (contracts/Stock.sol#175)
	- require(bool,string)(_toGrantedQuantity + optionPool.totalGranted <= _maxGrantQuantity,100K every year) (contracts/Stock.sol#178-181)
	- require(bool,string)(_option.createTime == 0,GrantNo already exists) (contracts/Stock.sol#192)
Stock._exerciseOption(address,uint256,uint256) (contracts/Stock.sol#219-232) uses timestamp for comparisons
	Dangerous comparisons:
	- require(bool,string)(exercisable >= __amount,Insufficient option) (contracts/Stock.sol#225)
Stock.evaluateExercisable(address,uint256) (contracts/Stock.sol#234-248) uses timestamp for comparisons
	Dangerous comparisons:
	- require(bool,string)(tranches <= 3650,No more Option) (contracts/Stock.sol#241)
	- tranches == 3650 (contracts/Stock.sol#244)
Stock.__getOption(address,uint256) (contracts/Stock.sol#261-269) uses timestamp for comparisons
	Dangerous comparisons:
	- require(bool,string)(_option.createTime > 0,Option not exist) (contracts/Stock.sol#266)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#block-timestamp

4 different versions of Solidity are used:
	- Version constraint ^0.8.20 is used by:
		-^0.8.20 (contracts/IStock.sol#2)
		-^0.8.20 (contracts/Stock.sol#2)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/access/Ownable.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/Context.sol#4)
	- Version constraint >=0.8.4 is used by:
		->=0.8.4 (lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol#4)
	- Version constraint >=0.4.16 is used by:
		->=0.4.16 (lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol#4)
	- Version constraint >=0.6.2 is used by:
		->=0.6.2 (lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol#4)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#different-pragma-directives-are-used

Version constraint ^0.8.20 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- VerbatimInvalidDeduplication
	- FullInlinerNonExpressionSplitArgumentEvaluationOrder
	- MissingSideEffectsOnSelectorAccess.
It is used by:
	- ^0.8.20 (contracts/IStock.sol#2)
	- ^0.8.20 (contracts/Stock.sol#2)
	- ^0.8.20 (lib/openzeppelin-contracts/contracts/access/Ownable.sol#4)
	- ^0.8.20 (lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol#4)
	- ^0.8.20 (lib/openzeppelin-contracts/contracts/utils/Context.sol#4)
Version constraint >=0.8.4 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- FullInlinerNonExpressionSplitArgumentEvaluationOrder
	- MissingSideEffectsOnSelectorAccess
	- AbiReencodingHeadOverflowWithStaticArrayCleanup
	- DirtyBytesArrayToStorage
	- DataLocationChangeInInternalOverride
	- NestedCalldataArrayAbiReencodingSizeValidation
	- SignedImmutables.
It is used by:
	- >=0.8.4 (lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol#4)
Version constraint >=0.4.16 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- DirtyBytesArrayToStorage
	- ABIDecodeTwoDimensionalArrayMemory
	- KeccakCaching
	- EmptyByteArrayCopy
	- DynamicArrayCleanup
	- ImplicitConstructorCallvalueCheck
	- TupleAssignmentMultiStackSlotComponents
	- MemoryArrayCreationOverflow
	- privateCanBeOverridden
	- SignedArrayStorageCopy
	- ABIEncoderV2StorageArrayWithMultiSlotElement
	- DynamicConstructorArgumentsClippedABIV2
	- UninitializedFunctionPointerInConstructor_0.4.x
	- IncorrectEventSignatureInLibraries_0.4.x
	- ExpExponentCleanup
	- NestedArrayFunctionCallDecoder
	- ZeroFunctionSelector.
It is used by:
	- >=0.4.16 (lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol#4)
Version constraint >=0.6.2 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- MissingSideEffectsOnSelectorAccess
	- AbiReencodingHeadOverflowWithStaticArrayCleanup
	- DirtyBytesArrayToStorage
	- NestedCalldataArrayAbiReencodingSizeValidation
	- ABIDecodeTwoDimensionalArrayMemory
	- KeccakCaching
	- EmptyByteArrayCopy
	- DynamicArrayCleanup
	- MissingEscapingInFormatting
	- ArraySliceDynamicallyEncodedBaseType
	- ImplicitConstructorCallvalueCheck
	- TupleAssignmentMultiStackSlotComponents
	- MemoryArrayCreationOverflow.
It is used by:
	- >=0.6.2 (lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol#4)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-versions-of-solidity

Low level call in Stock._sell(address,uint256) (contracts/Stock.sol#111-150):
	- (success,None) = __from.call{value: _totalSellAmount}() (contracts/Stock.sol#144)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#low-level-calls

Parameter Stock.setHome(string).__home (contracts/Stock.sol#45) is not in mixedCase
Parameter Stock.burn(address,uint256).__account (contracts/Stock.sol#49) is not in mixedCase
Parameter Stock.burn(address,uint256).__amount (contracts/Stock.sol#49) is not in mixedCase
Parameter Stock.buy(address).__referrer (contracts/Stock.sol#54) is not in mixedCase
Parameter Stock.sell(uint256).__quantity (contracts/Stock.sol#95) is not in mixedCase
Parameter Stock.sellFrom(address,uint256).__contractAddress (contracts/Stock.sol#100) is not in mixedCase
Parameter Stock.sellFrom(address,uint256).__quantity (contracts/Stock.sol#101) is not in mixedCase
Parameter Stock.grantOption(address[],uint256[]).__contributors (contracts/Stock.sol#153) is not in mixedCase
Parameter Stock.grantOption(address[],uint256[]).__quantities (contracts/Stock.sol#154) is not in mixedCase
Parameter Stock.exerciseOption(uint256,uint256).__grantNo (contracts/Stock.sol#202) is not in mixedCase
Parameter Stock.exerciseOption(uint256,uint256).__amount (contracts/Stock.sol#202) is not in mixedCase
Parameter Stock.exerciseStockOption(address,uint256,uint256).__contractAddress (contracts/Stock.sol#207) is not in mixedCase
Parameter Stock.exerciseStockOption(address,uint256,uint256).__grantNo (contracts/Stock.sol#208) is not in mixedCase
Parameter Stock.exerciseStockOption(address,uint256,uint256).__amount (contracts/Stock.sol#209) is not in mixedCase
Parameter Stock.evaluateExercisable(address,uint256).__account (contracts/Stock.sol#235) is not in mixedCase
Parameter Stock.evaluateExercisable(address,uint256).__grantNo (contracts/Stock.sol#236) is not in mixedCase
Parameter Stock.option(address,uint256).__account (contracts/Stock.sol#251) is not in mixedCase
Parameter Stock.option(address,uint256).__grantNo (contracts/Stock.sol#252) is not in mixedCase
Parameter Stock.grantNo(address).__account (contracts/Stock.sol#257) is not in mixedCase
Function Stock.__getOption(address,uint256) (contracts/Stock.sol#261-269) is not in mixedCase
Parameter Stock.__getOption(address,uint256).__account (contracts/Stock.sol#262) is not in mixedCase
Parameter Stock.__getOption(address,uint256).__grantNo (contracts/Stock.sol#263) is not in mixedCase
Variable Stock.MAGNIFICATION (contracts/Stock.sol#9) is not in mixedCase
Variable Stock.ROUND_UNIT (contracts/Stock.sol#11) is not in mixedCase
Variable Stock.MAX_ROUND (contracts/Stock.sol#12) is not in mixedCase
Variable Stock.ORDER_UNIT_SUPPLY (contracts/Stock.sol#14) is not in mixedCase
Variable Stock.DEFAULT_TOTAL_SUPPLY (contracts/Stock.sol#15) is not in mixedCase
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions

Stock.DEFAULT_TOTAL_SUPPLY (contracts/Stock.sol#15) should be constant 
Stock.MAGNIFICATION (contracts/Stock.sol#9) should be constant 
Stock.MAX_ROUND (contracts/Stock.sol#12) should be constant 
Stock.ORDER_UNIT_SUPPLY (contracts/Stock.sol#14) should be constant 
Stock.ROUND_UNIT (contracts/Stock.sol#11) should be constant 
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#state-variables-that-could-be-declared-constant

Stock.broker (contracts/Stock.sol#18) should be immutable 
Stock.createTime (contracts/Stock.sol#24) should be immutable 
Stock.parent (contracts/Stock.sol#19) should be immutable 
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#state-variables-that-could-be-declared-immutable
. analyzed (10 contracts with 100 detectors), 50 result(s) found
Metadata
{
    "solc": {
        "status": "ok",
        "use_rc": 0,
        "version": "0.8.20",
        "strategy": "solc-select",
        "solc_path": "/var/www/tripwire/.venv/bin/solc",
        "install_rc": 0,
        "use_stderr": null,
        "use_stdout": "Switched global version to 0.8.20",
        "install_stderr": null,
        "install_stdout": "Version '0.8.20' is already installed, skipping..."
    },
    "solc_args": "--base-path /tmp/slither-z05148xz --include-path /tmp/slither-z05148xz/lib --include-path /tmp/slither-z05148xz/lib/openzeppelin-contracts --allow-paths /tmp/slither-z05148xz,/tmp/slither-z05148xz/lib,/tmp/slither-z05148xz/lib/openzeppelin-contracts,/tmp/slither-z05148xz/src",
    "remappings": [
        "openzeppelin-contracts/=lib/openzeppelin-contracts/",
        "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/"
    ],
    "source_files": [
        "contracts/Stock.sol",
        "@openzeppelin/contracts/access/Ownable.sol",
        "@openzeppelin/contracts/token/ERC20/ERC20.sol",
        "contracts/IStock.sol",
        "@openzeppelin/contracts/interfaces/draft-IERC6093.sol",
        "@openzeppelin/contracts/utils/Context.sol",
        "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol",
        "@openzeppelin/contracts/token/ERC20/IERC20.sol"
    ],
    "contract_count": 0,
    "contract_names": [],
    "detector_count": 50,
    "workspace_hash": "801d65236d2d3a088e1dacec446d8f15ee1d4034ed0bf229dfbe78bae0d99f60",
    "duration_seconds": 1.0314767360687256,
    "solc_version_requested": "0.8.20"
}

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
1
No findings?
no
Summary
Found an authorization/validation bug in option exercising that can bypass vesting/limits when exercising on behalf of another account.
View stdout
{"no_findings":false,"summary":"Found an authorization/validation bug in option exercising that can bypass vesting/limits when exercising on behalf of another account.","findings":[{"severity":"medium","category":"auth","title":"exerciseStockOption checks vesting for msg.sender instead of target account","exploit_scenario":"An owner of a contract address calls exerciseStockOption for that contract’s grant. _exerciseOption verifies exercisable options for msg.sender (the owner), not the target __account. If the owner has sufficient vested options under the same grant number, they can exercise any amount for the contract even if the contract’s option is unvested or exceeds its grant, transferring tokens from broker to the contract and bypassing the intended vesting/invariant checks.","recommendation":"In _exerciseOption, compute exercisable using the target account (evaluateExercisable(__account, __grantNo)) and ensure _option.vested + __amount <= _option.granted before transferring.","evidence":"_exerciseOption uses evaluateExercisable(_msgSender(), __grantNo) before updating the option for __account, so exerciseStockOption validates the caller’s vesting instead of the target’s.","locations":["contracts/Stock.sol:219","contracts/Stock.sol:224","contracts/Stock.sol:206"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-4ek01fz7
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019be468-6738-7132-973a-d67773d88238
--------
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

thinking
**Reading AUDIT_BUNDLE contents**
exec
/bin/bash -lc ls in /tmp/codex-4ek01fz7 succeeded in 8ms:
AUDIT_BUNDLE.txt
codex-output-schema.json
contracts
@openzeppelin
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-4ek01fz7 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/IStock.sol
================================================================================
// SPDX-License-Identifier: Apache-2.0
pragma solidity ^0.8.20;

struct OrderBook {
	uint256 round;
	uint256 balance;
}

struct OptionPool {
	uint256 totalShares;
	uint256 totalGranted;
	mapping(address => uint256) grantNoMapping;
	mapping(address => mapping(uint256 => Option)) optionMapping;
}


thinking
**Auditing potential reentrancy in token sell flow**

The sell function transfers tokens to the broker and then makes an external call that could trigger reentrancy, but state updates occur before the call and prevent double spending; although fallback functions may trigger buy calls, the msg.value-based logic and updated balances limit exploitability.
thinking
**Identifying key logic and access control flaws**

The exerciseStockOption function misuses msg.sender in eligibility checks, allowing an owner to exercise options on behalf of a contract beyond its vested amount, creating an authorization bug. Additionally, sellFrom relies on external owner() calls to authorize token sales from contracts, enabling contracts with owner() returning caller to bypass checks, which may lead to unintended token transfers, though these appear design-related rather than direct exploits.
exec
/bin/bash -lc 'nl -ba contracts/Stock.sol' in /tmp/codex-4ek01fz7 succeeded in 6ms:
     1	// SPDX-License-Identifier: Apache-2.0
     2	pragma solidity ^0.8.20;
     3	
     4	import "./IStock.sol";
     5	import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
     6	import "@openzeppelin/contracts/access/Ownable.sol";
     7	
     8	contract Stock is ERC20, Ownable, IStock {
     9		uint256 MAGNIFICATION = 1e4; // 0.0001 wei eth per wei token
    10	
    11		uint256 ROUND_UNIT = 1;
    12		uint256 MAX_ROUND = 1e4;
    13	
    14		uint256 ORDER_UNIT_SUPPLY = 1e4 * 1e18;
    15		uint256 DEFAULT_TOTAL_SUPPLY = 1e8 * 1e18;
    16	
    17		string public home;
    18		address public broker;
    19		address public parent;
    20	


thinking
**Identifying internal authorization risk**

Found that exerciseStockOption relies on external owner() and uses msg.sender vs. __account mismatches, allowing potential unauthorized early token transfers from broker to contract, risking asset inflation and unauthorized redistribution with medium to possibly high severity.
thinking
**Detailing authorization issue and preparing JSON output**

Analyzed owner-controlled exerciseStockOption call bypassing vesting via misuse of evaluateExercisable with caller's grantNo instead of target account's, confirming medium severity auth flaw; identified relevant code lines and possible external call misuse but without immediate risk. Next, I'll craft the JSON summary with evidence, severity, category, locations, and recommendations.
codex
{"no_findings":false,"summary":"Found an authorization/validation bug in option exercising that can bypass vesting/limits when exercising on behalf of another account.","findings":[{"severity":"medium","category":"auth","title":"exerciseStockOption checks vesting for msg.sender instead of target account","exploit_scenario":"An owner of a contract address calls exerciseStockOption for that contract’s grant. _exerciseOption verifies exercisable options for msg.sender (the owner), not the target __account. If the owner has sufficient vested options under the same grant number, they can exercise any amount for the contract even if the contract’s option is unvested or exceeds its grant, transferring tokens from broker to the contract and bypassing the intended vesting/invariant checks.","recommendation":"In _exerciseOption, compute exercisable using the target account (evaluateExercisable(__account, __grantNo)) and ensure _option.vested + __amount <= _option.granted before transferring.","evidence":"_exerciseOption uses evaluateExercisable(_msgSender(), __grantNo) before updating the option for __account, so exerciseStockOption validates the caller’s vesting instead of the target’s.","locations":["contracts/Stock.sol:219","contracts/Stock.sol:224","contracts/Stock.sol:206"]}]}
tokens used
13,925
Metadata
{
    "codex": {
        "ran_at": "2026-01-22T06:34:59.995509+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 8,
        "import_count": 9,
        "first_party_contracts_count": 2
    },
    "summary": "Found an authorization/validation bug in option exercising that can bypass vesting/limits when exercising on behalf of another account.",
    "raw_final": {
        "summary": "Found an authorization/validation bug in option exercising that can bypass vesting/limits when exercising on behalf of another account.",
        "findings": [
            {
                "title": "exerciseStockOption checks vesting for msg.sender instead of target account",
                "category": "auth",
                "evidence": "_exerciseOption uses evaluateExercisable(_msgSender(), __grantNo) before updating the option for __account, so exerciseStockOption validates the caller\u2019s vesting instead of the target\u2019s.",
                "severity": "medium",
                "locations": [
                    "contracts/Stock.sol:219",
                    "contracts/Stock.sol:224",
                    "contracts/Stock.sol:206"
                ],
                "recommendation": "In _exerciseOption, compute exercisable using the target account (evaluateExercisable(__account, __grantNo)) and ensure _option.vested + __amount <= _option.granted before transferring.",
                "exploit_scenario": "An owner of a contract address calls exerciseStockOption for that contract\u2019s grant. _exerciseOption verifies exercisable options for msg.sender (the owner), not the target __account. If the owner has sufficient vested options under the same grant number, they can exercise any amount for the contract even if the contract\u2019s option is unvested or exceeds its grant, transferring tokens from broker to the contract and bypassing the intended vesting/invariant checks."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
1
CALL-family (heavy)
3
EXT*/BALANCE
0
Total opcodes
5224
Flags
delegatecall_present create_opcodes_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x01bd
0000000c: JUMPI
0000000d: PUSH0
0000000e: CALLDATALOAD
0000000f: PUSH1 0xe0
00000011: SHR
00000012: DUP1
00000013: PUSH4 0x7c9c6712
00000018: GT
00000019: PUSH2 0x00f2
0000001c: JUMPI
0000001d: DUP1
0000001e: PUSH4 0xabff0110
00000023: GT
00000024: PUSH2 0x0092
00000027: JUMPI
00000028: DUP1
00000029: PUSH4 0xe4849b32
0000002e: GT
0000002f: PUSH2 0x0062
00000032: JUMPI
00000033: DUP1
00000034: PUSH4 0xe4849b32
00000039: EQ
0000003a: PUSH2 0x0555
0000003d: JUMPI
0000003e: DUP1
0000003f: PUSH4 0xeb1715cc
00000044: EQ
00000045: PUSH2 0x0574
00000048: JUMPI
00000049: DUP1
0000004a: PUSH4 0xf088d547
0000004f: EQ
00000050: PUSH2 0x0593
00000053: JUMPI
00000054: DUP1
00000055: PUSH4 0xf2fde38b
0000005a: EQ
0000005b: PUSH2 0x05a6
0000005e: JUMPI
0000005f: PUSH0
00000060: DUP1
00000061: REVERT
00000062: JUMPDEST
00000063: DUP1
00000064: PUSH4 0xabff0110
00000069: EQ
0000006a: PUSH2 0x0492
0000006d: JUMPI
0000006e: DUP1
0000006f: PUSH4 0xb45323b4
00000074: EQ
00000075: PUSH2 0x04b1
00000078: JUMPI
00000079: DUP1
0000007a: PUSH4 0xd86f0aab
0000007f: EQ
00000080: PUSH2 0x04d0
00000083: JUMPI
00000084: DUP1
00000085: PUSH4 0xdd62ed3e
0000008a: EQ
0000008b: PUSH2 0x0511
0000008e: JUMPI
0000008f: PUSH0
00000090: DUP1
00000091: REVERT
00000092: JUMPDEST
00000093: DUP1
00000094: PUSH4 0x9dc29fac
00000099: GT
0000009a: PUSH2 0x00cd
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0x9dc29fac
000000a4: EQ
000000a5: PUSH2 0x040c
000000a8: JUMPI
000000a9: DUP1
000000aa: PUSH4 0x9fa92f9d
000000af: EQ
000000b0: PUSH2 0x042b
000000b3: JUMPI
000000b4: DUP1
000000b5: PUSH4 0xa6594a5b
000000ba: EQ
000000bb: PUSH2 0x043f
000000be: JUMPI
000000bf: DUP1
000000c0: PUSH4 0xa9059cbb
000000c5: EQ
000000c6: PUSH2 0x0473
000000c9: JUMPI
000000ca: PUSH0
000000cb: DUP1
000000cc: REVERT
000000cd: JUMPDEST
000000ce: DUP1
000000cf: PUSH4 0x7c9c6712
000000d4: EQ
000000d5: PUSH2 0x03bc
000000d8: JUMPI
000000d9: DUP1
000000da: PUSH4 0x8da5cb5b
000000df: EQ
000000e0: PUSH2 0x03db
000000e3: JUMPI
000000e4: DUP1
000000e5: PUSH4 0x95d89b41
000000ea: EQ
000000eb: PUSH2 0x03f8
000000ee: JUMPI
000000ef: PUSH0
000000f0: DUP1
000000f1: REVERT
000000f2: JUMPDEST
000000f3: DUP1
000000f4: PUSH4 0x4b1d9165
000000f9: GT
000000fa: PUSH2 0x015d
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0x61dcd7ab
00000104: GT
00000105: PUSH2 0x0138
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0x61dcd7ab
0000010f: EQ
00000110: PUSH2 0x0345
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0x70a08231
0000011a: EQ
0000011b: PUSH2 0x035a
0000011e: JUMPI
0000011f: DUP1
00000120: PUSH4 0x715018a6
00000125: EQ
00000126: PUSH2 0x038e
00000129: JUMPI
0000012a: DUP1
0000012b: PUSH4 0x776af5ba
00000130: EQ
00000131: PUSH2 0x03a2
00000134: JUMPI
00000135: PUSH0
00000136: DUP1
00000137: REVERT
00000138: JUMPDEST
00000139: DUP1
0000013a: PUSH4 0x4b1d9165
0000013f: EQ
00000140: PUSH2 0x02d0
00000143: JUMPI
00000144: DUP1
00000145: PUSH4 0x56260ada
0000014a: EQ
0000014b: PUSH2 0x02ef
0000014e: JUMPI
0000014f: DUP1
00000150: PUSH4 0x60f96a8f
00000155: EQ
00000156: PUSH2 0x030e
00000159: JUMPI
0000015a: PUSH0
0000015b: DUP1
0000015c: REVERT
0000015d: JUMPDEST
0000015e: DUP1
0000015f: PUSH4 0x23b872dd
00000164: GT
00000165: PUSH2 0x0198
00000168: JUMPI
00000169: DUP1
0000016a: PUSH4 0x23b872dd
0000016f: EQ
00000170: PUSH2 0x0248
00000173: JUMPI
00000174: DUP1
00000175: PUSH4 0x2aab80dd
0000017a: EQ
0000017b: PUSH2 0x0267
0000017e: JUMPI
0000017f: DUP1
00000180: PUSH4 0x313ce567
00000185: EQ
00000186: PUSH2 0x0296
00000189: JUMPI
0000018a: DUP1
0000018b: PUSH4 0x3ebdb1cb
00000190: EQ
00000191: PUSH2 0x02b1
00000194: JUMPI
00000195: PUSH0
00000196: DUP1
00000197: REVERT
00000198: JUMPDEST
00000199: DUP1
0000019a: PUSH4 0x06fdde03
0000019f: EQ
000001a0: PUSH2 0x01d1
000001a3: JUMPI
000001a4: DUP1
000001a5: PUSH4 0x095ea7b3
000001aa: EQ
000001ab: PUSH2 0x01fb
000001ae: JUMPI
000001af: DUP1
000001b0: PUSH4 0x18160ddd
000001b5: EQ
000001b6: PUSH2 0x022a
000001b9: JUMPI
000001ba: PUSH0
000001bb: DUP1
000001bc: REVERT
000001bd: JUMPDEST
000001be: CALLDATASIZE
000001bf: PUSH2 0x01cd
000001c2: JUMPI
000001c3: PUSH2 0x01cb
000001c6: CALLER
000001c7: PUSH2 0x05c5
000001ca: JUMP
000001cb: JUMPDEST
000001cc: STOP
000001cd: JUMPDEST
000001ce: PUSH0
000001cf: DUP1
000001d0: REVERT
000001d1: JUMPDEST
000001d2: CALLVALUE
000001d3: DUP1
000001d4: ISZERO
000001d5: PUSH2 0x01dc
000001d8: JUMPI
000001d9: PUSH0
000001da: DUP1
000001db: REVERT
000001dc: JUMPDEST
000001dd: POP
000001de: PUSH2 0x01e5
000001e1: PUSH2 0x0795
000001e4: JUMP
000001e5: JUMPDEST
000001e6: PUSH1 0x40
000001e8: MLOAD
000001e9: PUSH2 0x01f2
000001ec: SWAP2
000001ed: SWAP1
000001ee: PUSH2 0x1904
000001f1: JUMP
000001f2: JUMPDEST
000001f3: PUSH1 0x40
000001f5: MLOAD
000001f6: DUP1
000001f7: SWAP2
000001f8: SUB
000001f9: SWAP1
000001fa: RETURN
000001fb: JUMPDEST
000001fc: CALLVALUE
000001fd: DUP1
000001fe: ISZERO
000001ff: PUSH2 0x0206
00000202: JUMPI
00000203: PUSH0
00000204: DUP1
00000205: REVERT
00000206: JUMPDEST
00000207: POP
00000208: PUSH2 0x021a
0000020b: PUSH2 0x0215
0000020e: CALLDATASIZE
0000020f: PUSH1 0x04
00000211: PUSH2 0x1963
00000214: JUMP
00000215: JUMPDEST
00000216: PUSH2 0x0825
00000219: JUMP
0000021a: JUMPDEST
0000021b: PUSH1 0x40
0000021d: MLOAD
0000021e: SWAP1
0000021f: ISZERO
00000220: ISZERO
00000221: DUP2
00000222: MSTORE
00000223: PUSH1 0x20
00000225: ADD
00000226: PUSH2 0x01f2
00000229: JUMP
0000022a: JUMPDEST
0000022b: CALLVALUE
0000022c: DUP1
0000022d: ISZERO
0000022e: PUSH2 0x0235
00000231: JUMPI
00000232: PUSH0
00000233: DUP1
00000234: REVERT
00000235: JUMPDEST
00000236: POP
00000237: PUSH1 0x02
00000239: SLOAD
0000023a: JUMPDEST
0000023b: PUSH1 0x40
0000023d: MLOAD
0000023e: SWAP1
0000023f: DUP2
00000240: MSTORE
00000241: PUSH1 0x20
00000243: ADD
00000244: PUSH2 0x01f2
00000247: JUMP
00000248: JUMPDEST
00000249: CALLVALUE
0000024a: DUP1
0000024b: ISZERO
0000024c: PUSH2 0x0253
0000024f: JUMPI
00000250: PUSH0
00000251: DUP1
00000252: REVERT
00000253: JUMPDEST
00000254: POP
00000255: PUSH2 0x021a
00000258: PUSH2 0x0262
0000025b: CALLDATASIZE
0000025c: PUSH1 0x04
0000025e: PUSH2 0x198d
00000261: JUMP
00000262: JUMPDEST
00000263: PUSH2 0x083e
00000266: JUMP
00000267: JUMPDEST
00000268: CALLVALUE
00000269: DUP1
0000026a: ISZERO
0000026b: PUSH2 0x0272
0000026e: JUMPI
0000026f: PUSH0
00000270: DUP1
00000271: REVERT
00000272: JUMPDEST
00000273: POP
00000274: PUSH1 0x10
00000276: SLOAD
00000277: PUSH1 0x11
00000279: SLOAD
0000027a: PUSH2 0x0281
0000027d: SWAP2
0000027e: SWAP1
0000027f: DUP3
00000280: JUMP
00000281: JUMPDEST
00000282: PUSH1 0x40
00000284: DUP1
00000285: MLOAD
00000286: SWAP3
00000287: DUP4
00000288: MSTORE
00000289: PUSH1 0x20
0000028b: DUP4
0000028c: ADD
0000028d: SWAP2
0000028e: SWAP1
0000028f: SWAP2
00000290: MSTORE
00000291: ADD
00000292: PUSH2 0x01f2
00000295: JUMP
00000296: JUMPDEST
00000297: CALLVALUE
00000298: DUP1
00000299: ISZERO
0000029a: PUSH2 0x02a1
0000029d: JUMPI
0000029e: PUSH0
0000029f: DUP1
000002a0: REVERT
000002a1: JUMPDEST
000002a2: POP
000002a3: PUSH1 0x40
000002a5: MLOAD
000002a6: PUSH1 0x12
000002a8: DUP2
000002a9: MSTORE
000002aa: PUSH1 0x20
000002ac: ADD
000002ad: PUSH2 0x01f2
000002b0: JUMP
000002b1: JUMPDEST
000002b2: CALLVALUE
000002b3: DUP1
000002b4: ISZERO
000002b5: PUSH2 0x02bc
000002b8: JUMPI
000002b9: PUSH0
000002ba: DUP1
000002bb: REVERT
000002bc: JUMPDEST
000002bd: POP
000002be: PUSH2 0x01cb
000002c1: PUSH2 0x02cb
000002c4: CALLDATASIZE
000002c5: PUSH1 0x04
000002c7: PUSH2 0x1a10
000002ca: JUMP
000002cb: JUMPDEST
000002cc: PUSH2 0x0861
000002cf: JUMP
000002d0: JUMPDEST
000002d1: CALLVALUE
000002d2: DUP1
000002d3: ISZERO
000002d4: PUSH2 0x02db
000002d7: JUMPI
000002d8: PUSH0
000002d9: DUP1
000002da: REVERT
000002db: JUMPDEST
000002dc: POP
000002dd: PUSH2 0x023a
000002e0: PUSH2 0x02ea
000002e3: CALLDATASIZE
000002e4: PUSH1 0x04
000002e6: PUSH2 0x1963
000002e9: JUMP
000002ea: JUMPDEST
000002eb: PUSH2 0x0879
000002ee: JUMP
000002ef: JUMPDEST
000002f0: CALLVALUE
000002f1: DUP1
000002f2: ISZERO
000002f3: PUSH2 0x02fa
000002f6: JUMPI
000002f7: PUSH0
000002f8: DUP1
000002f9: REVERT
000002fa: JUMPDEST
000002fb: POP
000002fc: PUSH2 0x01cb
000002ff: PUSH2 0x0309
00000302: CALLDATASIZE
00000303: PUSH1 0x04
00000305: PUSH2 0x1a9f
00000308: JUMP
00000309: JUMPDEST
0000030a: PUSH2 0x098e
0000030d: JUMP
0000030e: JUMPDEST
0000030f: CALLVALUE
00000310: DUP1
00000311: ISZERO
00000312: PUSH2 0x0319
00000315: JUMPI
00000316: PUSH0
00000317: DUP1
00000318: REVERT
00000319: JUMPDEST
0000031a: POP
0000031b: PUSH1 0x0d
0000031d: SLOAD
0000031e: PUSH2 0x032d
00000321: SWAP1
00000322: PUSH1 0x01
00000324: PUSH1 0x01
00000326: PUSH1 0xa0
00000328: SHL
00000329: SUB
0000032a: AND
0000032b: DUP2
0000032c: JUMP
0000032d: JUMPDEST
0000032e: PUSH1 0x40
00000330: MLOAD
00000331: PUSH1 0x01
00000333: PUSH1 0x01
00000335: PUSH1 0xa0
00000337: SHL
00000338: SUB
00000339: SWAP1
0000033a: SWAP2
0000033b: AND
0000033c: DUP2
0000033d: MSTORE
0000033e: PUSH1 0x20
00000340: ADD
00000341: PUSH2 0x01f2
00000344: JUMP
00000345: JUMPDEST
00000346: CALLVALUE
00000347: DUP1
00000348: ISZERO
00000349: PUSH2 0x0350
0000034c: JUMPI
0000034d: PUSH0
0000034e: DUP1
0000034f: REVERT
00000350: JUMPDEST
00000351: POP
00000352: PUSH2 0x023a
00000355: PUSH1 0x14
00000357: SLOAD
00000358: DUP2
00000359: JUMP
0000035a: JUMPDEST
0000035b: CALLVALUE
0000035c: DUP1
0000035d: ISZERO
0000035e: PUSH2 0x0365
00000361: JUMPI
00000362: PUSH0
00000363: DUP1
00000364: REVERT
00000365: JUMPDEST
00000366: POP
00000367: PUSH2 0x023a
0000036a: PUSH2 0x0374
0000036d: CALLDATASIZE
0000036e: PUSH1 0x04
00000370: PUSH2 0x1ad1
00000373: JUMP
00000374: JUMPDEST
00000375: PUSH1 0x01
00000377: PUSH1 0x01
00000379: PUSH1 0xa0
0000037b: SHL
0000037c: SUB
0000037d: AND
0000037e: PUSH0
0000037f: SWAP1
00000380: DUP2
00000381: MSTORE
00000382: PUSH1 0x20
00000384: DUP2
00000385: SWAP1
00000386: MSTORE
00000387: PUSH1 0x40
00000389: SWAP1
0000038a: KECCAK256
0000038b: SLOAD
0000038c: SWAP1
0000038d: JUMP
0000038e: JUMPDEST
0000038f: CALLVALUE
00000390: DUP1
00000391: ISZERO
00000392: PUSH2 0x0399
00000395: JUMPI
00000396: PUSH0
00000397: DUP1
00000398: REVERT
00000399: JUMPDEST
0000039a: POP
0000039b: PUSH2 0x01cb
0000039e: PUSH2 0x0a4e
000003a1: JUMP
000003a2: JUMPDEST
000003a3: CALLVALUE
000003a4: DUP1
000003a5: ISZERO
000003a6: PUSH2 0x03ad
000003a9: JUMPI
000003aa: PUSH0
000003ab: DUP1
000003ac: REVERT
000003ad: JUMPDEST
000003ae: POP
000003af: PUSH1 0x0e
000003b1: SLOAD
000003b2: PUSH1 0x0f
000003b4: SLOAD
000003b5: PUSH2 0x0281
000003b8: SWAP2
000003b9: SWAP1
000003ba: DUP3
000003bb: JUMP
000003bc: JUMPDEST
000003bd: CALLVALUE
000003be: DUP1
000003bf: ISZERO
000003c0: PUSH2 0x03c7
000003c3: JUMPI
000003c4: PUSH0
000003c5: DUP1
000003c6: REVERT
000003c7: JUMPDEST
000003c8: POP
000003c9: PUSH2 0x01cb
000003cc: PUSH2 0x03d6
000003cf: CALLDATASIZE
000003d0: PUSH1 0x04
000003d2: PUSH2 0x1aec
000003d5: JUMP
000003d6: JUMPDEST
000003d7: PUSH2 0x0a61
000003da: JUMP
000003db: JUMPDEST
000003dc: CALLVALUE
000003dd: DUP1
000003de: ISZERO
000003df: PUSH2 0x03e6
000003e2: JUMPI
000003e3: PUSH0
000003e4: DUP1
000003e5: REVERT
000003e6: JUMPDEST
000003e7: POP
000003e8: PUSH1 0x05
000003ea: SLOAD
000003eb: PUSH1 0x01
000003ed: PUSH1 0x01
000003ef: PUSH1 0xa0
000003f1: SHL
000003f2: SUB
000003f3: AND
000003f4: PUSH2 0x032d
000003f7: JUMP
000003f8: JUMPDEST
000003f9: CALLVALUE
000003fa: DUP1
000003fb: ISZERO
000003fc: PUSH2 0x0403
000003ff: JUMPI
00000400: PUSH0
00000401: DUP1
00000402: REVERT
00000403: JUMPDEST
00000404: POP
00000405: PUSH2 0x01e5
00000408: PUSH2 0x0a6c
0000040b: JUMP
0000040c: JUMPDEST
0000040d: CALLVALUE
0000040e: DUP1
0000040f: ISZERO
00000410: PUSH2 0x0417
00000413: JUMPI
00000414: PUSH0
00000415: DUP1
00000416: REVERT
00000417: JUMPDEST
00000418: POP
00000419: PUSH2 0x01cb
0000041c: PUSH2 0x0426
0000041f: CALLDATASIZE
00000420: PUSH1 0x04
00000422: PUSH2 0x1963
00000425: JUMP
00000426: JUMPDEST
00000427: PUSH2 0x0a7b
0000042a: JUMP
0000042b: JUMPDEST
0000042c: CALLVALUE
0000042d: DUP1
0000042e: ISZERO
0000042f: PUSH2 0x0436
00000432: JUMPI
00000433: PUSH0
00000434: DUP1
00000435: REVERT
00000436: JUMPDEST
00000437: POP
00000438: PUSH2 0x01e5
0000043b: PUSH2 0x0acd
0000043e: JUMP
0000043f: JUMPDEST
00000440: CALLVALUE
00000441: DUP1
00000442: ISZERO
00000443: PUSH2 0x044a
00000446: JUMPI
00000447: PUSH0
00000448: DUP1
00000449: REVERT
0000044a: JUMPDEST
0000044b: POP
0000044c: PUSH2 0x023a
0000044f: PUSH2 0x0459
00000452: CALLDATASIZE
00000453: PUSH1 0x04
00000455: PUSH2 0x1ad1
00000458: JUMP
00000459: JUMPDEST
0000045a: PUSH1 0x01
0000045c: PUSH1 0x01
0000045e: PUSH1 0xa0
00000460: SHL
00000461: SUB
00000462: AND
00000463: PUSH0
00000464: SWAP1
00000465: DUP2
00000466: MSTORE
00000467: PUSH1 0x12
00000469: PUSH1 0x20
0000046b: MSTORE
0000046c: PUSH1 0x40
0000046e: SWAP1
0000046f: KECCAK256
00000470: SLOAD
00000471: SWAP1
00000472: JUMP
00000473: JUMPDEST
00000474: CALLVALUE
00000475: DUP1
00000476: ISZERO
00000477: PUSH2 0x047e
0000047a: JUMPI
0000047b: PUSH0
0000047c: DUP1
0000047d: REVERT
0000047e: JUMPDEST
0000047f: POP
00000480: PUSH2 0x021a
00000483: PUSH2 0x048d
00000486: CALLDATASIZE
00000487: PUSH1 0x04
00000489: PUSH2 0x1963
0000048c: JUMP
0000048d: JUMPDEST
0000048e: PUSH2 0x0b59
00000491: JUMP
00000492: JUMPDEST
00000493: CALLVALUE
00000494: DUP1
00000495: ISZERO
00000496: PUSH2 0x049d
00000499: JUMPI
0000049a: PUSH0
0000049b: DUP1
0000049c: REVERT
0000049d: JUMPDEST
0000049e: POP
0000049f: PUSH1 0x0c
000004a1: SLOAD
000004a2: PUSH2 0x032d
000004a5: SWAP1
000004a6: PUSH1 0x01
000004a8: PUSH1 0x01
000004aa: PUSH1 0xa0
000004ac: SHL
000004ad: SUB
000004ae: AND
000004af: DUP2
000004b0: JUMP
000004b1: JUMPDEST
000004b2: CALLVALUE
000004b3: DUP1
000004b4: ISZERO
000004b5: PUSH2 0x04bc
000004b8: JUMPI
000004b9: PUSH0
000004ba: DUP1
000004bb: REVERT
000004bc: JUMPDEST
000004bd: POP
000004be: PUSH2 0x01cb
000004c1: PUSH2 0x04cb
000004c4: CALLDATASIZE
000004c5: PUSH1 0x04
000004c7: PUSH2 0x1b97
000004ca: JUMP
000004cb: JUMPDEST
000004cc: PUSH2 0x0b66
000004cf: JUMP
000004d0: JUMPDEST
000004d1: CALLVALUE
000004d2: DUP1
000004d3: ISZERO
000004d4: PUSH2 0x04db
000004d7: JUMPI
000004d8: PUSH0
000004d9: DUP1
000004da: REVERT
000004db: JUMPDEST
000004dc: POP
000004dd: PUSH2 0x04ef
000004e0: PUSH2 0x04ea
000004e3: CALLDATASIZE
000004e4: PUSH1 0x04
000004e6: PUSH2 0x1963
000004e9: JUMP
000004ea: JUMPDEST
000004eb: PUSH2 0x0fe1
000004ee: JUMP
000004ef: JUMPDEST
000004f0: PUSH1 0x40
000004f2: DUP1
000004f3: MLOAD
000004f4: DUP3
000004f5: MLOAD
000004f6: DUP2
000004f7: MSTORE
000004f8: PUSH1 0x20
000004fa: DUP1
000004fb: DUP5
000004fc: ADD
000004fd: MLOAD
000004fe: SWAP1
000004ff: DUP3
00000500: ADD
00000501: MSTORE
00000502: SWAP2
00000503: DUP2
00000504: ADD
00000505: MLOAD
00000506: SWAP1
00000507: DUP3
00000508: ADD
00000509: MSTORE
0000050a: PUSH1 0x60
0000050c: ADD
0000050d: PUSH2 0x01f2
00000510: JUMP
00000511: JUMPDEST
00000512: CALLVALUE
00000513: DUP1
00000514: ISZERO
00000515: PUSH2 0x051c
00000518: JUMPI
00000519: PUSH0
0000051a: DUP1
0000051b: REVERT
0000051c: JUMPDEST
0000051d: POP
0000051e: PUSH2 0x023a
00000521: PUSH2 0x052b
00000524: CALLDATASIZE
00000525: PUSH1 0x04
00000527: PUSH2 0x1c53
0000052a: JUMP
0000052b: JUMPDEST
0000052c: PUSH1 0x01
0000052e: PUSH1 0x01
00000530: PUSH1 0xa0
00000532: SHL
00000533: SUB
00000534: SWAP2
00000535: DUP3
00000536: AND
00000537: PUSH0
00000538: SWAP1
00000539: DUP2
0000053a: MSTORE
0000053b: PUSH1 0x01
0000053d: PUSH1 0x20
0000053f: SWAP1
00000540: DUP2
00000541: MSTORE
00000542: PUSH1 0x40
00000544: DUP1
00000545: DUP4
00000546: KECCAK256
00000547: SWAP4
00000548: SWAP1
00000549: SWAP5
0000054a: AND
0000054b: DUP3
0000054c: MSTORE
0000054d: SWAP2
0000054e: SWAP1
0000054f: SWAP2
00000550: MSTORE
00000551: KECCAK256
00000552: SLOAD
00000553: SWAP1
00000554: JUMP
00000555: JUMPDEST
00000556: CALLVALUE
00000557: DUP1
00000558: ISZERO
00000559: PUSH2 0x0560
0000055c: JUMPI
0000055d: PUSH0
0000055e: DUP1
0000055f: REVERT
00000560: JUMPDEST
00000561: POP
00000562: PUSH2 0x023a
00000565: PUSH2 0x056f
00000568: CALLDATASIZE
00000569: PUSH1 0x04
0000056b: PUSH2 0x1c8a
0000056e: JUMP
0000056f: JUMPDEST
00000570: PUSH2 0x104f
00000573: JUMP
00000574: JUMPDEST
00000575: CALLVALUE
00000576: DUP1
00000577: ISZERO
00000578: PUSH2 0x057f
0000057b: JUMPI
0000057c: PUSH0
0000057d: DUP1
0000057e: REVERT
0000057f: JUMPDEST
00000580: POP
00000581: PUSH2 0x023a
00000584: PUSH2 0x058e
00000587: CALLDATASIZE
00000588: PUSH1 0x04
0000058a: PUSH2 0x1963
0000058d: JUMP
0000058e: JUMPDEST
0000058f: PUSH2 0x105a
00000592: JUMP
00000593: JUMPDEST
00000594: PUSH2 0x023a
00000597: PUSH2 0x05a1
0000059a: CALLDATASIZE
0000059b: PUSH1 0x04
0000059d: PUSH2 0x1ad1
000005a0: JUMP
000005a1: JUMPDEST
000005a2: PUSH2 0x05c5
000005a5: JUMP
000005a6: JUMPDEST
000005a7: CALLVALUE
000005a8: DUP1
000005a9: ISZERO
000005aa: PUSH2 0x05b1
000005ad: JUMPI
000005ae: PUSH0
000005af: DUP1
000005b0: REVERT
000005b1: JUMPDEST
000005b2: POP
000005b3: PUSH2 0x01cb
000005b6: PUSH2 0x05c0
000005b9: CALLDATASIZE
000005ba: PUSH1 0x04
000005bc: PUSH2 0x1ad1
000005bf: JUMP
000005c0: JUMPDEST
000005c1: PUSH2 0x111c
000005c4: JUMP
000005c5: JUMPDEST
000005c6: PUSH0
000005c7: PUSH1 0x08
000005c9: SLOAD
000005ca: PUSH1 0x0e
000005cc: PUSH0
000005cd: ADD
000005ce: SLOAD
000005cf: LT
000005d0: PUSH2 0x060c
000005d3: JUMPI
000005d4: PUSH1 0x40
000005d6: MLOAD
000005d7: PUSH3 0x461bcd
000005db: PUSH1 0xe5
000005dd: SHL
000005de: DUP2
000005df: MSTORE
000005e0: PUSH1 0x20
000005e2: PUSH1 0x04
000005e4: DUP3
000005e5: ADD
000005e6: MSTORE
000005e7: PUSH1 0x09
000005e9: PUSH1 0x24
000005eb: DUP3
000005ec: ADD
000005ed: MSTORE
000005ee: PUSH9 0x536f6c64206f757421
000005f8: PUSH1 0xb8
000005fa: SHL
000005fb: PUSH1 0x44
000005fd: DUP3
000005fe: ADD
000005ff: MSTORE
00000600: PUSH1 0x64
00000602: ADD
00000603: JUMPDEST
00000604: PUSH1 0x40
00000606: MLOAD
00000607: DUP1
00000608: SWAP2
00000609: SUB
0000060a: SWAP1
0000060b: REVERT
0000060c: JUMPDEST
0000060d: PUSH1 0x0e
0000060f: SLOAD
00000610: CALLVALUE
00000611: SWAP1
00000612: PUSH0
00000613: SWAP1
00000614: DUP1
00000615: JUMPDEST
00000616: DUP4
00000617: ISZERO
00000618: PUSH2 0x071c
0000061b: JUMPI
0000061c: PUSH1 0x06
0000061e: SLOAD
0000061f: PUSH1 0x0f
00000621: SLOAD
00000622: PUSH1 0x0e
00000624: SLOAD
00000625: PUSH0
00000626: SWAP3
00000627: SWAP2
00000628: PUSH2 0x0630
0000062b: SWAP2
0000062c: PUSH2 0x1cb5
0000062f: JUMP
00000630: JUMPDEST
00000631: PUSH2 0x063a
00000634: SWAP2
00000635: SWAP1
00000636: PUSH2 0x1ccc
00000639: JUMP
0000063a: JUMPDEST
0000063b: SWAP1
0000063c: POP
0000063d: DUP1
0000063e: DUP6
0000063f: GT
00000640: PUSH2 0x0691
00000643: JUMPI
00000644: PUSH1 0x0e
00000646: SLOAD
00000647: PUSH1 0x06
00000649: SLOAD
0000064a: PUSH0
0000064b: SWAP2
0000064c: SWAP1
0000064d: PUSH2 0x0656
00000650: SWAP1
00000651: DUP9
00000652: PUSH2 0x1cb5
00000655: JUMP
00000656: JUMPDEST
00000657: PUSH2 0x0660
0000065a: SWAP2
0000065b: SWAP1
0000065c: PUSH2 0x1ccc
0000065f: JUMP
00000660: JUMPDEST
00000661: SWAP1
00000662: POP
00000663: PUSH0
00000664: SWAP6
00000665: POP
00000666: DUP1
00000667: PUSH1 0x0e
00000669: PUSH1 0x01
0000066b: ADD
0000066c: PUSH0
0000066d: DUP3
0000066e: DUP3
0000066f: SLOAD
00000670: PUSH2 0x0679
00000673: SWAP2
00000674: SWAP1
00000675: PUSH2 0x1ceb
00000678: JUMP
00000679: JUMPDEST
0000067a: SWAP1
0000067b: SWAP2
0000067c: SSTORE
0000067d: POP
0000067e: PUSH2 0x0689
00000681: SWAP1
00000682: POP
00000683: DUP2
00000684: DUP7
00000685: PUSH2 0x1cfe
00000688: JUMP
00000689: JUMPDEST
0000068a: SWAP5
0000068b: POP
0000068c: POP
0000068d: PUSH2 0x06d3
00000690: JUMP
00000691: JUMPDEST
00000692: PUSH2 0x069b
00000695: DUP2
00000696: DUP7
00000697: PUSH2 0x1ceb
0000069a: JUMP
0000069b: JUMPDEST
0000069c: PUSH1 0x0f
0000069e: SLOAD
0000069f: SWAP1
000006a0: SWAP6
000006a1: POP
000006a2: PUSH2 0x06ab
000006a5: SWAP1
000006a6: DUP6
000006a7: PUSH2 0x1cfe
000006aa: JUMP
000006ab: JUMPDEST
000006ac: SWAP4
000006ad: POP
000006ae: PUSH1 0x07
000006b0: SLOAD
000006b1: PUSH1 0x0e
000006b3: PUSH0
000006b4: ADD
000006b5: PUSH0
000006b6: DUP3
000006b7: DUP3
000006b8: SLOAD
000006b9: PUSH2 0x06c2
000006bc: SWAP2
000006bd: SWAP1
000006be: PUSH2 0x1cfe
000006c1: JUMP
000006c2: JUMPDEST
000006c3: SWAP1
000006c4: SWAP2
000006c5: SSTORE
000006c6: POP
000006c7: POP
000006c8: PUSH1 0x09
000006ca: SLOAD
000006cb: PUSH1 0x0f
000006cd: SSTORE
000006ce: PUSH1 0x0e
000006d0: SLOAD
000006d1: SWAP2
000006d2: POP
000006d3: JUMPDEST
000006d4: PUSH1 0x08
000006d6: SLOAD
000006d7: PUSH1 0x0e
000006d9: SLOAD
000006da: LT
000006db: PUSH2 0x0716
000006de: JUMPI
000006df: PUSH1 0x40
000006e1: MLOAD
000006e2: PUSH3 0x461bcd
000006e6: PUSH1 0xe5
000006e8: SHL
000006e9: DUP2
000006ea: MSTORE
000006eb: PUSH1 0x20
000006ed: PUSH1 0x04
000006ef: DUP3
000006f0: ADD
000006f1: MSTORE
000006f2: PUSH1 0x0d
000006f4: PUSH1 0x24
000006f6: DUP3
000006f7: ADD
000006f8: MSTORE
000006f9: PUSH13 0x119d5b99081cdbdb19081bdd5d
00000707: PUSH1 0x9a
00000709: SHL
0000070a: PUSH1 0x44
0000070c: DUP3
0000070d: ADD
0000070e: MSTORE
0000070f: PUSH1 0x64
00000711: ADD
00000712: PUSH2 0x0603
00000715: JUMP
00000716: JUMPDEST
00000717: POP
00000718: PUSH2 0x0615
0000071b: JUMP
0000071c: JUMPDEST
0000071d: PUSH1 0x0c
0000071f: SLOAD
00000720: PUSH2 0x0733
00000723: SWAP1
00000724: PUSH1 0x01
00000726: PUSH1 0x01
00000728: PUSH1 0xa0
0000072a: SHL
0000072b: SUB
0000072c: AND
0000072d: CALLER
0000072e: DUP6
0000072f: PUSH2 0x1159
00000732: JUMP
00000733: JUMPDEST
00000734: PUSH1 0x40
00000736: DUP1
00000737: MLOAD
00000738: DUP4
00000739: DUP2
0000073a: MSTORE
0000073b: PUSH1 0x20
0000073d: DUP2
0000073e: ADD
0000073f: DUP4
00000740: SWAP1
00000741: MSTORE
00000742: CALLVALUE
00000743: DUP2
00000744: DUP4
00000745: ADD
00000746: MSTORE
00000747: PUSH1 0x60
00000749: DUP2
0000074a: ADD
0000074b: DUP6
0000074c: SWAP1
0000074d: MSTORE
0000074e: PUSH1 0x01
00000750: PUSH1 0x01
00000752: PUSH1 0xa0
00000754: SHL
00000755: SUB
00000756: DUP9
00000757: AND
00000758: PUSH1 0x80
0000075a: DUP3
0000075b: ADD
0000075c: MSTORE
0000075d: SWAP1
0000075e: MLOAD
0000075f: CALLER
00000760: SWAP2
00000761: PUSH32 0xa883f846ecd22b33737d7e8fea7aa17c7d937eec2aaad4a507dcb2ce9bef05c8
00000782: SWAP2
00000783: SWAP1
00000784: DUP2
00000785: SWAP1
00000786: SUB
00000787: PUSH1 0xa0
00000789: ADD
0000078a: SWAP1
0000078b: LOG2
0000078c: POP
0000078d: SWAP1
0000078e: SWAP5
0000078f: SWAP4
00000790: POP
00000791: POP
00000792: POP
00000793: POP
00000794: JUMP
00000795: JUMPDEST
00000796: PUSH1 0x60
00000798: PUSH1 0x03
0000079a: DUP1
0000079b: SLOAD
0000079c: PUSH2 0x07a4
0000079f: SWAP1
000007a0: PUSH2 0x1d11
000007a3: JUMP
000007a4: JUMPDEST
000007a5: DUP1
000007a6: PUSH1 0x1f
000007a8: ADD
000007a9: PUSH1 0x20
000007ab: DUP1
000007ac: SWAP2
000007ad: DIV
000007ae: MUL
000007af: PUSH1 0x20
000007b1: ADD
000007b2: PUSH1 0x40
000007b4: MLOAD
000007b5: SWAP1
000007b6: DUP2
000007b7: ADD
000007b8: PUSH1 0x40
000007ba: MSTORE
000007bb: DUP1
000007bc: SWAP3
000007bd: SWAP2
000007be: SWAP1
000007bf: DUP2
000007c0: DUP2
000007c1: MSTORE
000007c2: PUSH1 0x20
000007c4: ADD
000007c5: DUP3
000007c6: DUP1
000007c7: SLOAD
000007c8: PUSH2 0x07d0
000007cb: SWAP1
000007cc: PUSH2 0x1d11
000007cf: JUMP
000007d0: JUMPDEST
000007d1: DUP1
000007d2: ISZERO
000007d3: PUSH2 0x081b
000007d6: JUMPI
000007d7: DUP1
000007d8: PUSH1 0x1f
000007da: LT
000007db: PUSH2 0x07f2
000007de: JUMPI
000007df: PUSH2 0x0100
000007e2: DUP1
000007e3: DUP4
000007e4: SLOAD
000007e5: DIV
000007e6: MUL
000007e7: DUP4
000007e8: MSTORE
000007e9: SWAP2
000007ea: PUSH1 0x20
000007ec: ADD
000007ed: SWAP2
000007ee: PUSH2 0x081b
000007f1: JUMP
000007f2: JUMPDEST
000007f3: DUP3
000007f4: ADD
000007f5: SWAP2
000007f6: SWAP1
000007f7: PUSH0
000007f8: MSTORE
000007f9: PUSH1 0x20
000007fb: PUSH0
000007fc: KECCAK256
000007fd: SWAP1
000007fe: JUMPDEST
000007ff: DUP2
00000800: SLOAD
00000801: DUP2
00000802: MSTORE
00000803: SWAP1
00000804: PUSH1 0x01
00000806: ADD
00000807: SWAP1
00000808: PUSH1 0x20
0000080a: ADD
0000080b: DUP1
0000080c: DUP4
0000080d: GT
0000080e: PUSH2 0x07fe
00000811: JUMPI
00000812: DUP3
00000813: SWAP1
00000814: SUB
00000815: PUSH1 0x1f
00000817: AND
00000818: DUP3
00000819: ADD
0000081a: SWAP2
0000081b: JUMPDEST
0000081c: POP
0000081d: POP
0000081e: POP
0000081f: POP
00000820: POP
00000821: SWAP1
00000822: POP
00000823: SWAP1
00000824: JUMP
00000825: JUMPDEST
00000826: PUSH0
00000827: CALLER
00000828: PUSH2 0x0832
0000082b: DUP2
0000082c: DUP6
0000082d: DUP6
0000082e: PUSH2 0x11b6
00000831: JUMP
00000832: JUMPDEST
00000833: PUSH1 0x01
00000835: SWAP2
00000836: POP
00000837: POP
00000838: JUMPDEST
00000839: SWAP3
0000083a: SWAP2
0000083b: POP
0000083c: POP
0000083d: JUMP
0000083e: JUMPDEST
0000083f: PUSH0
00000840: CALLER
00000841: PUSH2 0x084b
00000844: DUP6
00000845: DUP3
00000846: DUP6
00000847: PUSH2 0x11c3
0000084a: JUMP
0000084b: JUMPDEST
0000084c: PUSH2 0x0856
0000084f: DUP6
00000850: DUP6
00000851: DUP6
00000852: PUSH2 0x1159
00000855: JUMP
00000856: JUMPDEST
00000857: POP
00000858: PUSH1 0x01
0000085a: SWAP5
0000085b: SWAP4
0000085c: POP
0000085d: POP
0000085e: POP
0000085f: POP
00000860: JUMP
00000861: JUMPDEST
00000862: PUSH2 0x0869
00000865: PUSH2 0x123f
00000868: JUMP
00000869: JUMPDEST
0000086a: PUSH1 0x0b
0000086c: PUSH2 0x0875
0000086f: DUP3
00000870: DUP3
00000871: PUSH2 0x1d8e
00000874: JUMP
00000875: JUMPDEST
00000876: POP
00000877: POP
00000878: JUMP
00000879: JUMPDEST
0000087a: PUSH0
0000087b: DUP1
0000087c: PUSH2 0x0885
0000087f: DUP5
00000880: DUP5
00000881: PUSH2 0x126c
00000884: JUMP
00000885: JUMPDEST
00000886: SWAP1
00000887: POP
00000888: PUSH0
00000889: PUSH3 0x015180
0000088d: DUP3
0000088e: PUSH0
0000088f: ADD
00000890: SLOAD
00000891: TIMESTAMP
00000892: PUSH2 0x089b
00000895: SWAP2
00000896: SWAP1
00000897: PUSH2 0x1ceb
0000089a: JUMP
0000089b: JUMPDEST
0000089c: PUSH2 0x08a5
0000089f: SWAP2
000008a0: SWAP1
000008a1: PUSH2 0x1ccc
000008a4: JUMP
000008a5: JUMPDEST
000008a6: SWAP1
000008a7: POP
000008a8: PUSH2 0x0e42
000008ab: DUP2
000008ac: GT
000008ad: ISZERO
000008ae: PUSH2 0x08ea
000008b1: JUMPI
000008b2: PUSH1 0x40
000008b4: MLOAD
000008b5: PUSH3 0x461bcd
000008b9: PUSH1 0xe5
000008bb: SHL
000008bc: DUP2
000008bd: MSTORE
000008be: PUSH1 0x20
000008c0: PUSH1 0x04
000008c2: DUP3
000008c3: ADD
000008c4: MSTORE
000008c5: PUSH1 0x0e
000008c7: PUSH1 0x24
000008c9: DUP3
000008ca: ADD
000008cb: MSTORE
000008cc: PUSH14 0x27379036b7b9329027b83a34b7b7
000008db: PUSH1 0x91
000008dd: SHL
000008de: PUSH1 0x44
000008e0: DUP3
000008e1: ADD
000008e2: MSTORE
000008e3: PUSH1 0x64
000008e5: ADD
000008e6: PUSH2 0x0603
000008e9: JUMP
000008ea: JUMPDEST
000008eb: DUP2
000008ec: PUSH1 0x02
000008ee: ADD
000008ef: SLOAD
000008f0: DUP3
000008f1: PUSH1 0x01
000008f3: ADD
000008f4: SLOAD
000008f5: LT
000008f6: ISZERO
000008f7: PUSH2 0x0933
000008fa: JUMPI
000008fb: PUSH1 0x40
000008fd: MLOAD
000008fe: PUSH3 0x461bcd
00000902: PUSH1 0xe5
00000904: SHL
00000905: DUP2
00000906: MSTORE
00000907: PUSH1 0x20
00000909: PUSH1 0x04
0000090b: DUP3
0000090c: ADD
0000090d: MSTORE
0000090e: PUSH1 0x0e
00000910: PUSH1 0x24
00000912: DUP3
00000913: ADD
00000914: MSTORE
00000915: PUSH14 0x27379036b7b9329037b83a34b7b7
00000924: PUSH1 0x91
00000926: SHL
00000927: PUSH1 0x44
00000929: DUP3
0000092a: ADD
0000092b: MSTORE
0000092c: PUSH1 0x64
0000092e: ADD
0000092f: PUSH2 0x0603
00000932: JUMP
00000933: JUMPDEST
00000934: DUP1
00000935: PUSH2 0x0e42
00000938: SUB
00000939: PUSH2 0x0959
0000093c: JUMPI
0000093d: DUP2
0000093e: PUSH1 0x02
00000940: ADD
00000941: SLOAD
00000942: DUP3
00000943: PUSH1 0x01
00000945: ADD
00000946: SLOAD
00000947: PUSH2 0x0950
0000094a: SWAP2
0000094b: SWAP1
0000094c: PUSH2 0x1ceb
0000094f: JUMP
00000950: JUMPDEST
00000951: SWAP3
00000952: POP
00000953: POP
00000954: POP
00000955: PUSH2 0x0838
00000958: JUMP
00000959: JUMPDEST
0000095a: DUP2
0000095b: PUSH1 0x02
0000095d: ADD
0000095e: SLOAD
0000095f: PUSH2 0x0e42
00000962: DUP3
00000963: DUP5
00000964: PUSH1 0x01
00000966: ADD
00000967: SLOAD
00000968: PUSH2 0x0971
0000096b: SWAP2
0000096c: SWAP1
0000096d: PUSH2 0x1cb5
00000970: JUMP
00000971: JUMPDEST
00000972: PUSH2 0x097b
00000975: SWAP2
00000976: SWAP1
00000977: PUSH2 0x1ccc
0000097a: JUMP
0000097b: JUMPDEST
0000097c: PUSH2 0x0985
0000097f: SWAP2
00000980: SWAP1
00000981: PUSH2 0x1ceb
00000984: JUMP
00000985: JUMPDEST
00000986: SWAP6
00000987: SWAP5
00000988: POP
00000989: POP
0000098a: POP
0000098b: POP
0000098c: POP
0000098d: JUMP
0000098e: JUMPDEST
0000098f: DUP3
00000990: PUSH1 0x01
00000992: PUSH1 0x01
00000994: PUSH1 0xa0
00000996: SHL
00000997: SUB
00000998: AND
00000999: PUSH4 0x8da5cb5b
0000099e: PUSH1 0x40
000009a0: MLOAD
000009a1: DUP2
000009a2: PUSH4 0xffffffff
000009a7: AND
000009a8: PUSH1 0xe0
000009aa: SHL
000009ab: DUP2
000009ac: MSTORE
000009ad: PUSH1 0x04
000009af: ADD
000009b0: PUSH1 0x20
000009b2: PUSH1 0x40
000009b4: MLOAD
000009b5: DUP1
000009b6: DUP4
000009b7: SUB
000009b8: DUP2
000009b9: DUP7
000009ba: GAS
000009bb: STATICCALL
000009bc: ISZERO
000009bd: DUP1
000009be: ISZERO
000009bf: PUSH2 0x09ca
000009c2: JUMPI
000009c3: RETURNDATASIZE
000009c4: PUSH0
000009c5: DUP1
000009c6: RETURNDATACOPY
000009c7: RETURNDATASIZE
000009c8: PUSH0
000009c9: REVERT
000009ca: JUMPDEST
000009cb: POP
000009cc: POP
000009cd: POP
000009ce: POP
000009cf: PUSH1 0x40
000009d1: MLOAD
000009d2: RETURNDATASIZE
000009d3: PUSH1 0x1f
000009d5: NOT
000009d6: PUSH1 0x1f
000009d8: DUP3
000009d9: ADD
000009da: AND
000009db: DUP3
000009dc: ADD
000009dd: DUP1
000009de: PUSH1 0x40
000009e0: MSTORE
000009e1: POP
000009e2: DUP2
000009e3: ADD
000009e4: SWAP1
000009e5: PUSH2 0x09ee
000009e8: SWAP2
000009e9: SWAP1
000009ea: PUSH2 0x1e4a
000009ed: JUMP
000009ee: JUMPDEST
000009ef: PUSH1 0x01
000009f1: PUSH1 0x01
000009f3: PUSH1 0xa0
000009f5: SHL
000009f6: SUB
000009f7: AND
000009f8: CALLER
000009f9: PUSH1 0x01
000009fb: PUSH1 0x01
000009fd: PUSH1 0xa0
000009ff: SHL
00000a00: SUB
00000a01: AND
00000a02: EQ
00000a03: PUSH2 0x0a3e
00000a06: JUMPI
00000a07: PUSH1 0x40
00000a09: MLOAD
00000a0a: PUSH3 0x461bcd
00000a0e: PUSH1 0xe5
00000a10: SHL
00000a11: DUP2
00000a12: MSTORE
00000a13: PUSH1 0x20
00000a15: PUSH1 0x04
00000a17: DUP3
00000a18: ADD
00000a19: MSTORE
00000a1a: PUSH1 0x0d
00000a1c: PUSH1 0x24
00000a1e: DUP3
00000a1f: ADD
00000a20: MSTORE
00000a21: PUSH13 0x2932b8bab4b9329037bbb732b9
00000a2f: PUSH1 0x99
00000a31: SHL
00000a32: PUSH1 0x44
00000a34: DUP3
00000a35: ADD
00000a36: MSTORE
00000a37: PUSH1 0x64
00000a39: ADD
00000a3a: PUSH2 0x0603
00000a3d: JUMP
00000a3e: JUMPDEST
00000a3f: PUSH2 0x0a49
00000a42: DUP4
00000a43: DUP4
00000a44: DUP4
00000a45: PUSH2 0x12cf
00000a48: JUMP
00000a49: JUMPDEST
00000a4a: POP
00000a4b: POP
00000a4c: POP
00000a4d: JUMP
00000a4e: JUMPDEST
00000a4f: PUSH2 0x0a56
00000a52: PUSH2 0x123f
00000a55: JUMP
00000a56: JUMPDEST
00000a57: PUSH2 0x0a5f
00000a5a: PUSH0
00000a5b: PUSH2 0x13a9
00000a5e: JUMP
00000a5f: JUMPDEST
00000a60: JUMP
00000a61: JUMPDEST
00000a62: PUSH2 0x0875
00000a65: CALLER
00000a66: DUP4
00000a67: DUP4
00000a68: PUSH2 0x12cf
00000a6b: JUMP
00000a6c: JUMPDEST
00000a6d: PUSH1 0x60
00000a6f: PUSH1 0x04
00000a71: DUP1
00000a72: SLOAD
00000a73: PUSH2 0x07a4
00000a76: SWAP1
00000a77: PUSH2 0x1d11
00000a7a: JUMP
00000a7b: JUMPDEST
00000a7c: PUSH1 0x0c
00000a7e: SLOAD
00000a7f: PUSH1 0x01
00000a81: PUSH1 0x01
00000a83: PUSH1 0xa0
00000a85: SHL
00000a86: SUB
00000a87: AND
00000a88: CALLER
00000a89: EQ
00000a8a: PUSH2 0x0ac3
00000a8d: JUMPI
00000a8e: PUSH1 0x40
00000a90: MLOAD
00000a91: PUSH3 0x461bcd
00000a95: PUSH1 0xe5
00000a97: SHL
00000a98: DUP2
00000a99: MSTORE
00000a9a: PUSH1 0x20
00000a9c: PUSH1 0x04
00000a9e: DUP3
00000a9f: ADD
00000aa0: MSTORE
00000aa1: PUSH1 0x0b
00000aa3: PUSH1 0x24
00000aa5: DUP3
00000aa6: ADD
00000aa7: MSTORE
00000aa8: PUSH11 0x27b7363c90313937b5b2b9
00000ab4: PUSH1 0xa9
00000ab6: SHL
00000ab7: PUSH1 0x44
00000ab9: DUP3
00000aba: ADD
00000abb: MSTORE
00000abc: PUSH1 0x64
00000abe: ADD
00000abf: PUSH2 0x0603
00000ac2: JUMP
00000ac3: JUMPDEST
00000ac4: PUSH2 0x0875
00000ac7: DUP3
00000ac8: DUP3
00000ac9: PUSH2 0x13fa
00000acc: JUMP
00000acd: JUMPDEST
00000ace: PUSH1 0x0b
00000ad0: DUP1
00000ad1: SLOAD
00000ad2: PUSH2 0x0ada
00000ad5: SWAP1
00000ad6: PUSH2 0x1d11
00000ad9: JUMP
00000ada: JUMPDEST
00000adb: DUP1
00000adc: PUSH1 0x1f
00000ade: ADD
00000adf: PUSH1 0x20
00000ae1: DUP1
00000ae2: SWAP2
00000ae3: DIV
00000ae4: MUL
00000ae5: PUSH1 0x20
00000ae7: ADD
00000ae8: PUSH1 0x40
00000aea: MLOAD
00000aeb: SWAP1
00000aec: DUP2
00000aed: ADD
00000aee: PUSH1 0x40
00000af0: MSTORE
00000af1: DUP1
00000af2: SWAP3
00000af3: SWAP2
00000af4: SWAP1
00000af5: DUP2
00000af6: DUP2
00000af7: MSTORE
00000af8: PUSH1 0x20
00000afa: ADD
00000afb: DUP3
00000afc: DUP1
00000afd: SLOAD
00000afe: PUSH2 0x0b06
00000b01: SWAP1
00000b02: PUSH2 0x1d11
00000b05: JUMP
00000b06: JUMPDEST
00000b07: DUP1
00000b08: ISZERO
00000b09: PUSH2 0x0b51
00000b0c: JUMPI
00000b0d: DUP1
00000b0e: PUSH1 0x1f
00000b10: LT
00000b11: PUSH2 0x0b28
00000b14: JUMPI
00000b15: PUSH2 0x0100
00000b18: DUP1
00000b19: DUP4
00000b1a: SLOAD
00000b1b: DIV
00000b1c: MUL
00000b1d: DUP4
00000b1e: MSTORE
00000b1f: SWAP2
00000b20: PUSH1 0x20
00000b22: ADD
00000b23: SWAP2
00000b24: PUSH2 0x0b51
00000b27: JUMP
00000b28: JUMPDEST
00000b29: DUP3
00000b2a: ADD
00000b2b: SWAP2
00000b2c: SWAP1
00000b2d: PUSH0
00000b2e: MSTORE
00000b2f: PUSH1 0x20
00000b31: PUSH0
00000b32: KECCAK256
00000b33: SWAP1
00000b34: JUMPDEST
00000b35: DUP2
00000b36: SLOAD
00000b37: DUP2
00000b38: MSTORE
00000b39: SWAP1
00000b3a: PUSH1 0x01
00000b3c: ADD
00000b3d: SWAP1
00000b3e: PUSH1 0x20
00000b40: ADD
00000b41: DUP1
00000b42: DUP4
00000b43: GT
00000b44: PUSH2 0x0b34
00000b47: JUMPI
00000b48: DUP3
00000b49: SWAP1
00000b4a: SUB
00000b4b: PUSH1 0x1f
00000b4d: AND
00000b4e: DUP3
00000b4f: ADD
00000b50: SWAP2
00000b51: JUMPDEST
00000b52: POP
00000b53: POP
00000b54: POP
00000b55: POP
00000b56: POP
00000b57: DUP2
00000b58: JUMP
00000b59: JUMPDEST
00000b5a: PUSH0
00000b5b: CALLER
00000b5c: PUSH2 0x0832
00000b5f: DUP2
00000b60: DUP6
00000b61: DUP6
00000b62: PUSH2 0x1159
00000b65: JUMP
00000b66: JUMPDEST
00000b67: PUSH2 0x0b6e
00000b6a: PUSH2 0x123f
00000b6d: JUMP
00000b6e: JUMPDEST
00000b6f: PUSH0
00000b70: DUP3
00000b71: MLOAD
00000b72: GT
00000b73: PUSH2 0x0bb2
00000b76: JUMPI
00000b77: PUSH1 0x40
00000b79: MLOAD
00000b7a: PUSH3 0x461bcd
00000b7e: PUSH1 0xe5
00000b80: SHL
00000b81: DUP2
00000b82: MSTORE
00000b83: PUSH1 0x20
00000b85: PUSH1 0x04
00000b87: DUP3
00000b88: ADD
00000b89: MSTORE
00000b8a: PUSH1 0x11
00000b8c: PUSH1 0x24
00000b8e: DUP3
00000b8f: ADD
00000b90: MSTORE
00000b91: PUSH17 0x436f6e7472696275746f7220656d707479
00000ba3: PUSH1 0x78
00000ba5: SHL
00000ba6: PUSH1 0x44
00000ba8: DUP3
00000ba9: ADD
00000baa: MSTORE
00000bab: PUSH1 0x64
00000bad: ADD
00000bae: PUSH2 0x0603
00000bb1: JUMP
00000bb2: JUMPDEST
00000bb3: DUP1
00000bb4: MLOAD
00000bb5: DUP3
00000bb6: MLOAD
00000bb7: EQ
00000bb8: PUSH2 0x0bf6
00000bbb: JUMPI
00000bbc: PUSH1 0x40
00000bbe: MLOAD
00000bbf: PUSH3 0x461bcd
00000bc3: PUSH1 0xe5
00000bc5: SHL
00000bc6: DUP2
00000bc7: MSTORE
00000bc8: PUSH1 0x20
00000bca: PUSH1 0x04
00000bcc: DUP3
00000bcd: ADD
00000bce: MSTORE
00000bcf: PUSH1 0x10
00000bd1: PUSH1 0x24
00000bd3: DUP3
00000bd4: ADD
00000bd5: MSTORE
00000bd6: PUSH16 0x13195b99dd1a081b9bdd08195c5d585b
00000be7: PUSH1 0x82
00000be9: SHL
00000bea: PUSH1 0x44
00000bec: DUP3
00000bed: ADD
00000bee: MSTORE
00000bef: PUSH1 0x64
00000bf1: ADD
00000bf2: PUSH2 0x0603
00000bf5: JUMP
00000bf6: JUMPDEST
00000bf7: PUSH0
00000bf8: DUP1
00000bf9: JUMPDEST
00000bfa: DUP3
00000bfb: MLOAD
00000bfc: DUP2
00000bfd: LT
00000bfe: ISZERO
00000bff: PUSH2 0x0c92
00000c02: JUMPI
00000c03: PUSH0
00000c04: DUP4
00000c05: DUP3
00000c06: DUP2
00000c07: MLOAD
00000c08: DUP2
00000c09: LT
00000c0a: PUSH2 0x0c15
00000c0d: JUMPI
00000c0e: PUSH2 0x0c15
00000c11: PUSH2 0x1e65
00000c14: JUMP
00000c15: JUMPDEST
00000c16: PUSH1 0x20
00000c18: MUL
00000c19: PUSH1 0x20
00000c1b: ADD
00000c1c: ADD
00000c1d: MLOAD
00000c1e: GT
00000c1f: PUSH2 0x0c59
00000c22: JUMPI
00000c23: PUSH1 0x40
00000c25: MLOAD
00000c26: PUSH3 0x461bcd
00000c2a: PUSH1 0xe5
00000c2c: SHL
00000c2d: DUP2
00000c2e: MSTORE
00000c2f: PUSH1 0x20
00000c31: PUSH1 0x04
00000c33: DUP3
00000c34: ADD
00000c35: MSTORE
00000c36: PUSH1 0x0c
00000c38: PUSH1 0x24
00000c3a: DUP3
00000c3b: ADD
00000c3c: MSTORE
00000c3d: PUSH12 0x05175616e74697479203e203
00000c4a: PUSH1 0xa4
00000c4c: SHL
00000c4d: PUSH1 0x44
00000c4f: DUP3
00000c50: ADD
00000c51: MSTORE
00000c52: PUSH1 0x64
00000c54: ADD
00000c55: PUSH2 0x0603
00000c58: JUMP
00000c59: JUMPDEST
00000c5a: DUP3
00000c5b: DUP2
00000c5c: DUP2
00000c5d: MLOAD
00000c5e: DUP2
00000c5f: LT
00000c60: PUSH2 0x0c6b
00000c63: JUMPI
00000c64: PUSH2 0x0c6b
00000c67: PUSH2 0x1e65
00000c6a: JUMP
00000c6b: JUMPDEST
00000c6c: PUSH1 0x20
00000c6e: MUL
00000c6f: PUSH1 0x20
00000c71: ADD
00000c72: ADD
00000c73: MLOAD
00000c74: DUP3
00000c75: PUSH2 0x0c7e
00000c78: SWAP2
00000c79: SWAP1
00000c7a: PUSH2 0x1cfe
00000c7d: JUMP
00000c7e: JUMPDEST
00000c7f: SWAP2
00000c80: POP
00000c81: DUP1
00000c82: PUSH2 0x0c8a
00000c85: DUP2
00000c86: PUSH2 0x1e79
00000c89: JUMP
00000c8a: JUMPDEST
00000c8b: SWAP2
00000c8c: POP
00000c8d: POP
00000c8e: PUSH2 0x0bf9
00000c91: JUMP
00000c92: JUMPDEST
00000c93: POP
00000c94: PUSH1 0x11
00000c96: SLOAD
00000c97: PUSH2 0x0ca0
00000c9a: SWAP1
00000c9b: DUP3
00000c9c: PUSH2 0x1cfe
00000c9f: JUMP
00000ca0: JUMPDEST
00000ca1: PUSH1 0x10
00000ca3: SLOAD
00000ca4: LT
00000ca5: ISZERO
00000ca6: PUSH2 0x0ce7
00000ca9: JUMPI
00000caa: PUSH1 0x40
00000cac: MLOAD
00000cad: PUSH3 0x461bcd
00000cb1: PUSH1 0xe5
00000cb3: SHL
00000cb4: DUP2
00000cb5: MSTORE
00000cb6: PUSH1 0x20
00000cb8: PUSH1 0x04
00000cba: DUP3
00000cbb: ADD
00000cbc: MSTORE
00000cbd: PUSH1 0x13
00000cbf: PUSH1 0x24
00000cc1: DUP3
00000cc2: ADD
00000cc3: MSTORE
00000cc4: PUSH19 0x24b739bab33334b1b4b2b73a1037b83a34b7b7
00000cd8: PUSH1 0x69
00000cda: SHL
00000cdb: PUSH1 0x44
00000cdd: DUP3
00000cde: ADD
00000cdf: MSTORE
00000ce0: PUSH1 0x64
00000ce2: ADD
00000ce3: PUSH2 0x0603
00000ce6: JUMP
00000ce7: JUMPDEST
00000ce8: PUSH0
00000ce9: PUSH4 0x01e13380
00000cee: PUSH1 0x14
00000cf0: SLOAD
00000cf1: TIMESTAMP
00000cf2: PUSH2 0x0cfb
00000cf5: SWAP2
00000cf6: SWAP1
00000cf7: PUSH2 0x1ceb
00000cfa: JUMP
00000cfb: JUMPDEST
00000cfc: PUSH2 0x0d05
00000cff: SWAP2
00000d00: SWAP1
00000d01: PUSH2 0x1ccc
00000d04: JUMP
00000d05: JUMPDEST
00000d06: PUSH2 0x0d10
00000d09: SWAP1
00000d0a: PUSH1 0x01
00000d0c: PUSH2 0x1cfe
00000d0f: JUMP
00000d10: JUMPDEST
00000d11: SWAP1
00000d12: POP
00000d13: PUSH1 0x0a
00000d15: DUP2
00000d16: GT
00000d17: ISZERO
00000d18: PUSH2 0x0d54
00000d1b: JUMPI
00000d1c: PUSH1 0x40
00000d1e: MLOAD
00000d1f: PUSH3 0x461bcd
00000d23: PUSH1 0xe5
00000d25: SHL
00000d26: DUP2
00000d27: MSTORE
00000d28: PUSH1 0x20
00000d2a: PUSH1 0x04
00000d2c: DUP3
00000d2d: ADD
00000d2e: MSTORE
00000d2f: PUSH1 0x0e
00000d31: PUSH1 0x24
00000d33: DUP3
00000d34: ADD
00000d35: MSTORE
00000d36: PUSH14 0x4e6f206d6f726520736861726573
00000d45: PUSH1 0x90
00000d47: SHL
00000d48: PUSH1 0x44
00000d4a: DUP3
00000d4b: ADD
00000d4c: MSTORE
00000d4d: PUSH1 0x64
00000d4f: ADD
00000d50: PUSH2 0x0603
00000d53: JUMP
00000d54: JUMPDEST
00000d55: PUSH0
00000d56: PUSH2 0x0d62
00000d59: DUP3
00000d5a: PUSH3 0x0186a0
00000d5e: PUSH2 0x1cb5
00000d61: JUMP
00000d62: JUMPDEST
00000d63: PUSH2 0x0d74
00000d66: SWAP1
00000d67: PUSH8 0x0de0b6b3a7640000
00000d70: PUSH2 0x1cb5
00000d73: JUMP
00000d74: JUMPDEST
00000d75: PUSH1 0x11
00000d77: SLOAD
00000d78: SWAP1
00000d79: SWAP2
00000d7a: POP
00000d7b: DUP2
00000d7c: SWAP1
00000d7d: PUSH2 0x0d86
00000d80: SWAP1
00000d81: DUP6
00000d82: PUSH2 0x1cfe
00000d85: JUMP
00000d86: JUMPDEST
00000d87: GT
00000d88: ISZERO
00000d89: PUSH2 0x0dc6
00000d8c: JUMPI
00000d8d: PUSH1 0x40
00000d8f: MLOAD
00000d90: PUSH3 0x461bcd
00000d94: PUSH1 0xe5
00000d96: SHL
00000d97: DUP2
00000d98: MSTORE
00000d99: PUSH1 0x20
00000d9b: PUSH1 0x04
00000d9d: DUP3
00000d9e: ADD
00000d9f: MSTORE
00000da0: PUSH1 0x0f
00000da2: PUSH1 0x24
00000da4: DUP3
00000da5: ADD
00000da6: MSTORE
00000da7: PUSH15 0x189818259032bb32b93c903cb2b0b9
00000db7: PUSH1 0x89
00000db9: SHL
00000dba: PUSH1 0x44
00000dbc: DUP3
00000dbd: ADD
00000dbe: MSTORE
00000dbf: PUSH1 0x64
00000dc1: ADD
00000dc2: PUSH2 0x0603
00000dc5: JUMP
00000dc6: JUMPDEST
00000dc7: DUP3
00000dc8: PUSH1 0x10
00000dca: PUSH1 0x01
00000dcc: ADD
00000dcd: PUSH0
00000dce: DUP3
00000dcf: DUP3
00000dd0: SLOAD
00000dd1: PUSH2 0x0dda
00000dd4: SWAP2
00000dd5: SWAP1
00000dd6: PUSH2 0x1cfe
00000dd9: JUMP
00000dda: JUMPDEST
00000ddb: SWAP1
00000ddc: SWAP2
00000ddd: SSTORE
00000dde: POP
00000ddf: PUSH0
00000de0: SWAP1
00000de1: POP
00000de2: JUMPDEST
00000de3: DUP6
00000de4: MLOAD
00000de5: DUP2
00000de6: LT
00000de7: ISZERO
00000de8: PUSH2 0x0fd9
00000deb: JUMPI
00000dec: PUSH0
00000ded: PUSH1 0x10
00000def: PUSH1 0x02
00000df1: ADD
00000df2: PUSH0
00000df3: DUP9
00000df4: DUP5
00000df5: DUP2
00000df6: MLOAD
00000df7: DUP2
00000df8: LT
00000df9: PUSH2 0x0e04
00000dfc: JUMPI
00000dfd: PUSH2 0x0e04
00000e00: PUSH2 0x1e65
00000e03: JUMP
00000e04: JUMPDEST
00000e05: PUSH1 0x20
00000e07: MUL
00000e08: PUSH1 0x20
00000e0a: ADD
00000e0b: ADD
00000e0c: MLOAD
00000e0d: PUSH1 0x01
00000e0f: PUSH1 0x01
00000e11: PUSH1 0xa0
00000e13: SHL
00000e14: SUB
00000e15: AND
00000e16: PUSH1 0x01
00000e18: PUSH1 0x01
00000e1a: PUSH1 0xa0
00000e1c: SHL
00000e1d: SUB
00000e1e: AND
00000e1f: DUP2
00000e20: MSTORE
00000e21: PUSH1 0x20
00000e23: ADD
00000e24: SWAP1
00000e25: DUP2
00000e26: MSTORE
00000e27: PUSH1 0x20
00000e29: ADD
00000e2a: PUSH0
00000e2b: KECCAK256
00000e2c: SLOAD
00000e2d: SWAP1
00000e2e: POP
00000e2f: PUSH0
00000e30: DUP2
00000e31: PUSH1 0x01
00000e33: PUSH2 0x0e3c
00000e36: SWAP2
00000e37: SWAP1
00000e38: PUSH2 0x1cfe
00000e3b: JUMP
00000e3c: JUMPDEST
00000e3d: SWAP1
00000e3e: POP
00000e3f: PUSH0
00000e40: PUSH1 0x10
00000e42: PUSH1 0x03
00000e44: ADD
00000e45: PUSH0
00000e46: DUP11
00000e47: DUP7
00000e48: DUP2
00000e49: MLOAD
00000e4a: DUP2
00000e4b: LT
00000e4c: PUSH2 0x0e57
00000e4f: JUMPI
00000e50: PUSH2 0x0e57
00000e53: PUSH2 0x1e65
00000e56: JUMP
00000e57: JUMPDEST
00000e58: PUSH1 0x20
00000e5a: MUL
00000e5b: PUSH1 0x20
00000e5d: ADD
00000e5e: ADD
00000e5f: MLOAD
00000e60: PUSH1 0x01
00000e62: PUSH1 0x01
00000e64: PUSH1 0xa0
00000e66: SHL
00000e67: SUB
00000e68: AND
00000e69: PUSH1 0x01
00000e6b: PUSH1 0x01
00000e6d: PUSH1 0xa0
00000e6f: SHL
00000e70: SUB
00000e71: AND
00000e72: DUP2
00000e73: MSTORE
00000e74: PUSH1 0x20
00000e76: ADD
00000e77: SWAP1
00000e78: DUP2
00000e79: MSTORE
00000e7a: PUSH1 0x20
00000e7c: ADD
00000e7d: PUSH0
00000e7e: KECCAK256
00000e7f: PUSH0
00000e80: DUP4
00000e81: DUP2
00000e82: MSTORE
00000e83: PUSH1 0x20
00000e85: ADD
00000e86: SWAP1
00000e87: DUP2
00000e88: MSTORE
00000e89: PUSH1 0x20
00000e8b: ADD
00000e8c: PUSH0
00000e8d: KECCAK256
00000e8e: SWAP1
00000e8f: POP
00000e90: DUP1
00000e91: PUSH0
00000e92: ADD
00000e93: SLOAD
00000e94: PUSH0
00000e95: EQ
00000e96: PUSH2 0x0eda
00000e99: JUMPI
00000e9a: PUSH1 0x40
00000e9c: MLOAD
00000e9d: PUSH3 0x461bcd
00000ea1: PUSH1 0xe5
00000ea3: SHL
00000ea4: DUP2
00000ea5: MSTORE
00000ea6: PUSH1 0x20
00000ea8: PUSH1 0x04
00000eaa: DUP3
00000eab: ADD
00000eac: MSTORE
00000ead: PUSH1 0x16
00000eaf: PUSH1 0x24
00000eb1: DUP3
00000eb2: ADD
00000eb3: MSTORE
00000eb4: PUSH22 0x4772616e744e6f20616c726561647920657869737473
00000ecb: PUSH1 0x50
00000ecd: SHL
00000ece: PUSH1 0x44
00000ed0: DUP3
00000ed1: ADD
00000ed2: MSTORE
00000ed3: PUSH1 0x64
00000ed5: ADD
00000ed6: PUSH2 0x0603
00000ed9: JUMP
00000eda: JUMPDEST
00000edb: TIMESTAMP
00000edc: DUP2
00000edd: SSTORE
00000ede: DUP8
00000edf: MLOAD
00000ee0: DUP9
00000ee1: SWAP1
00000ee2: DUP6
00000ee3: SWAP1
00000ee4: DUP2
00000ee5: LT
00000ee6: PUSH2 0x0ef1
00000ee9: JUMPI
00000eea: PUSH2 0x0ef1
00000eed: PUSH2 0x1e65
00000ef0: JUMP
00000ef1: JUMPDEST
00000ef2: PUSH1 0x20
00000ef4: MUL
00000ef5: PUSH1 0x20
00000ef7: ADD
00000ef8: ADD
00000ef9: MLOAD
00000efa: DUP2
00000efb: PUSH1 0x01
00000efd: ADD
00000efe: DUP2
00000eff: SWAP1
00000f00: SSTORE
00000f01: POP
00000f02: DUP2
00000f03: PUSH1 0x10
00000f05: PUSH1 0x02
00000f07: ADD
00000f08: PUSH0
00000f09: DUP12
00000f0a: DUP8
00000f0b: DUP2
00000f0c: MLOAD
00000f0d: DUP2
00000f0e: LT
00000f0f: PUSH2 0x0f1a
00000f12: JUMPI
00000f13: PUSH2 0x0f1a
00000f16: PUSH2 0x1e65
00000f19: JUMP
00000f1a: JUMPDEST
00000f1b: PUSH1 0x20
00000f1d: MUL
00000f1e: PUSH1 0x20
00000f20: ADD
00000f21: ADD
00000f22: MLOAD
00000f23: PUSH1 0x01
00000f25: PUSH1 0x01
00000f27: PUSH1 0xa0
00000f29: SHL
00000f2a: SUB
00000f2b: AND
00000f2c: PUSH1 0x01
00000f2e: PUSH1 0x01
00000f30: PUSH1 0xa0
00000f32: SHL
00000f33: SUB
00000f34: AND
00000f35: DUP2
00000f36: MSTORE
00000f37: PUSH1 0x20
00000f39: ADD
00000f3a: SWAP1
00000f3b: DUP2
00000f3c: MSTORE
00000f3d: PUSH1 0x20
00000f3f: ADD
00000f40: PUSH0
00000f41: KECCAK256
00000f42: DUP2
00000f43: SWAP1
00000f44: SSTORE
00000f45: POP
00000f46: DUP9
00000f47: DUP5
00000f48: DUP2
00000f49: MLOAD
00000f4a: DUP2
00000f4b: LT
00000f4c: PUSH2 0x0f57
00000f4f: JUMPI
00000f50: PUSH2 0x0f57
00000f53: PUSH2 0x1e65
00000f56: JUMP
00000f57: JUMPDEST
00000f58: PUSH1 0x20
00000f5a: MUL
00000f5b: PUSH1 0x20
00000f5d: ADD
00000f5e: ADD
00000f5f: MLOAD
00000f60: PUSH1 0x01
00000f62: PUSH1 0x01
00000f64: PUSH1 0xa0
00000f66: SHL
00000f67: SUB
00000f68: AND
00000f69: PUSH32 0x0f85174f83a975ab5271c8b5c1de7a05cb845ef02d16e6da45e9e39ab4ed1afd
00000f8a: DUP4
00000f8b: DUP11
00000f8c: DUP8
00000f8d: DUP2
00000f8e: MLOAD
00000f8f: DUP2
00000f90: LT
00000f91: PUSH2 0x0f9c
00000f94: JUMPI
00000f95: PUSH2 0x0f9c
00000f98: PUSH2 0x1e65
00000f9b: JUMP
00000f9c: JUMPDEST
00000f9d: PUSH1 0x20
00000f9f: MUL
00000fa0: PUSH1 0x20
00000fa2: ADD
00000fa3: ADD
00000fa4: MLOAD
00000fa5: PUSH1 0x40
00000fa7: MLOAD
00000fa8: PUSH2 0x0fbb
00000fab: SWAP3
00000fac: SWAP2
00000fad: SWAP1
00000fae: SWAP2
00000faf: DUP3
00000fb0: MSTORE
00000fb1: PUSH1 0x20
00000fb3: DUP3
00000fb4: ADD
00000fb5: MSTORE
00000fb6: PUSH1 0x40
00000fb8: ADD
00000fb9: SWAP1
00000fba: JUMP
00000fbb: JUMPDEST
00000fbc: PUSH1 0x40
00000fbe: MLOAD
00000fbf: DUP1
00000fc0: SWAP2
00000fc1: SUB
00000fc2: SWAP1
00000fc3: LOG2
00000fc4: POP
00000fc5: POP
00000fc6: POP
00000fc7: DUP1
00000fc8: DUP1
00000fc9: PUSH2 0x0fd1
00000fcc: SWAP1
00000fcd: PUSH2 0x1e79
00000fd0: JUMP
00000fd1: JUMPDEST
00000fd2: SWAP2
00000fd3: POP
00000fd4: POP
00000fd5: PUSH2 0x0de2
00000fd8: JUMP
00000fd9: JUMPDEST
00000fda: POP
00000fdb: POP
00000fdc: POP
00000fdd: POP
00000fde: POP
00000fdf: POP
00000fe0: JUMP
00000fe1: JUMPDEST
00000fe2: PUSH2 0x1002
00000fe5: PUSH1 0x40
00000fe7: MLOAD
00000fe8: DUP1
00000fe9: PUSH1 0x60
00000feb: ADD
00000fec: PUSH1 0x40
00000fee: MSTORE
00000fef: DUP1
00000ff0: PUSH0
00000ff1: DUP2
00000ff2: MSTORE
00000ff3: PUSH1 0x20
00000ff5: ADD
00000ff6: PUSH0
00000ff7: DUP2
00000ff8: MSTORE
00000ff9: PUSH1 0x20
00000ffb: ADD
00000ffc: PUSH0
00000ffd: DUP2
00000ffe: MSTORE
00000fff: POP
00001000: SWAP1
00001001: JUMP
00001002: JUMPDEST
00001003: POP
00001004: PUSH1 0x01
00001006: PUSH1 0x01
00001008: PUSH1 0xa0
0000100a: SHL
0000100b: SUB
0000100c: DUP3
0000100d: AND
0000100e: PUSH0
0000100f: SWAP1
00001010: DUP2
00001011: MSTORE
00001012: PUSH1 0x13
00001014: PUSH1 0x20
00001016: SWAP1
00001017: DUP2
00001018: MSTORE
00001019: PUSH1 0x40
0000101b: DUP1
0000101c: DUP4
0000101d: KECCAK256
0000101e: DUP5
0000101f: DUP5
00001020: MSTORE
00001021: DUP3
00001022: MSTORE
00001023: SWAP2
00001024: DUP3
00001025: SWAP1
00001026: KECCAK256
00001027: DUP3
00001028: MLOAD
00001029: PUSH1 0x60
0000102b: DUP2
0000102c: ADD
0000102d: DUP5
0000102e: MSTORE
0000102f: DUP2
00001030: SLOAD
00001031: DUP2
00001032: MSTORE
00001033: PUSH1 0x01
00001035: DUP3
00001036: ADD
00001037: SLOAD
00001038: SWAP3
00001039: DUP2
0000103a: ADD
0000103b: SWAP3
0000103c: SWAP1
0000103d: SWAP3
0000103e: MSTORE
0000103f: PUSH1 0x02
00001041: ADD
00001042: SLOAD
00001043: SWAP2
00001044: DUP2
00001045: ADD
00001046: SWAP2
00001047: SWAP1
00001048: SWAP2
00001049: MSTORE
0000104a: SWAP3
0000104b: SWAP2
0000104c: POP
0000104d: POP
0000104e: JUMP
0000104f: JUMPDEST
00001050: PUSH0
00001051: PUSH2 0x0838
00001054: CALLER
00001055: DUP4
00001056: PUSH2 0x142e
00001059: JUMP
0000105a: JUMPDEST
0000105b: PUSH0
0000105c: DUP3
0000105d: PUSH1 0x01
0000105f: PUSH1 0x01
00001061: PUSH1 0xa0
00001063: SHL
00001064: SUB
00001065: AND
00001066: PUSH4 0x8da5cb5b
0000106b: PUSH1 0x40
0000106d: MLOAD
0000106e: DUP2
0000106f: PUSH4 0xffffffff
00001074: AND
00001075: PUSH1 0xe0
00001077: SHL
00001078: DUP2
00001079: MSTORE
0000107a: PUSH1 0x04
0000107c: ADD
0000107d: PUSH1 0x20
0000107f: PUSH1 0x40
00001081: MLOAD
00001082: DUP1
00001083: DUP4
00001084: SUB
00001085: DUP2
00001086: DUP7
00001087: GAS
00001088: STATICCALL
00001089: ISZERO
0000108a: DUP1
0000108b: ISZERO
0000108c: PUSH2 0x1097
0000108f: JUMPI
00001090: RETURNDATASIZE
00001091: PUSH0
00001092: DUP1
00001093: RETURNDATACOPY
00001094: RETURNDATASIZE
00001095: PUSH0
00001096: REVERT
00001097: JUMPDEST
00001098: POP
00001099: POP
0000109a: POP
0000109b: POP
0000109c: PUSH1 0x40
0000109e: MLOAD
0000109f: RETURNDATASIZE
000010a0: PUSH1 0x1f
000010a2: NOT
000010a3: PUSH1 0x1f
000010a5: DUP3
000010a6: ADD
000010a7: AND
000010a8: DUP3
000010a9: ADD
000010aa: DUP1
000010ab: PUSH1 0x40
000010ad: MSTORE
000010ae: POP
000010af: DUP2
000010b0: ADD
000010b1: SWAP1
000010b2: PUSH2 0x10bb
000010b5: SWAP2
000010b6: SWAP1
000010b7: PUSH2 0x1e4a
000010ba: JUMP
000010bb: JUMPDEST
000010bc: PUSH1 0x01
000010be: PUSH1 0x01
000010c0: PUSH1 0xa0
000010c2: SHL
000010c3: SUB
000010c4: AND
000010c5: CALLER
000010c6: PUSH1 0x01
000010c8: PUSH1 0x01
000010ca: PUSH1 0xa0
000010cc: SHL
000010cd: SUB
000010ce: AND
000010cf: EQ
000010d0: PUSH2 0x110b
000010d3: JUMPI
000010d4: PUSH1 0x40
000010d6: MLOAD
000010d7: PUSH3 0x461bcd
000010db: PUSH1 0xe5
000010dd: SHL
000010de: DUP2
000010df: MSTORE
000010e0: PUSH1 0x20
000010e2: PUSH1 0x04
000010e4: DUP3
000010e5: ADD
000010e6: MSTORE
000010e7: PUSH1 0x0d
000010e9: PUSH1 0x24
000010eb: DUP3
000010ec: ADD
000010ed: MSTORE
000010ee: PUSH13 0x2932b8bab4b9329037bbb732b9
000010fc: PUSH1 0x99
000010fe: SHL
000010ff: PUSH1 0x44
00001101: DUP3
00001102: ADD
00001103: MSTORE
00001104: PUSH1 0x64
00001106: ADD
00001107: PUSH2 0x0603
0000110a: JUMP
0000110b: JUMPDEST
0000110c: PUSH2 0x1115
0000110f: DUP4
00001110: DUP4
00001111: PUSH2 0x142e
00001114: JUMP
00001115: JUMPDEST
00001116: SWAP4
00001117: SWAP3
00001118: POP
00001119: POP
0000111a: POP
0000111b: JUMP
0000111c: JUMPDEST
0000111d: PUSH2 0x1124
00001120: PUSH2 0x123f
00001123: JUMP
00001124: JUMPDEST
00001125: PUSH1 0x01
00001127: PUSH1 0x01
00001129: PUSH1 0xa0
0000112b: SHL
0000112c: SUB
0000112d: DUP2
0000112e: AND
0000112f: PUSH2 0x114d
00001132: JUMPI
00001133: PUSH1 0x40
00001135: MLOAD
00001136: PUSH4 0x1e4fbdf7
0000113b: PUSH1 0xe0
0000113d: SHL
0000113e: DUP2
0000113f: MSTORE
00001140: PUSH0
00001141: PUSH1 0x04
00001143: DUP3
00001144: ADD
00001145: MSTORE
00001146: PUSH1 0x24
00001148: ADD
00001149: PUSH2 0x0603
0000114c: JUMP
0000114d: JUMPDEST
0000114e: PUSH2 0x1156
00001151: DUP2
00001152: PUSH2 0x13a9
00001155: JUMP
00001156: JUMPDEST
00001157: POP
00001158: JUMP
00001159: JUMPDEST
0000115a: PUSH1 0x01
0000115c: PUSH1 0x01
0000115e: PUSH1 0xa0
00001160: SHL
00001161: SUB
00001162: DUP4
00001163: AND
00001164: PUSH2 0x1182
00001167: JUMPI
00001168: PUSH1 0x40
0000116a: MLOAD
0000116b: PUSH4 0x4b637e8f
00001170: PUSH1 0xe1
00001172: SHL
00001173: DUP2
00001174: MSTORE
00001175: PUSH0
00001176: PUSH1 0x04
00001178: DUP3
00001179: ADD
0000117a: MSTORE
0000117b: PUSH1 0x24
0000117d: ADD
0000117e: PUSH2 0x0603
00001181: JUMP
00001182: JUMPDEST
00001183: PUSH1 0x01
00001185: PUSH1 0x01
00001187: PUSH1 0xa0
00001189: SHL
0000118a: SUB
0000118b: DUP3
0000118c: AND
0000118d: PUSH2 0x11ab
00001190: JUMPI
00001191: PUSH1 0x40
00001193: MLOAD
00001194: PUSH4 0xec442f05
00001199: PUSH1 0xe0
0000119b: SHL
0000119c: DUP2
0000119d: MSTORE
0000119e: PUSH0
0000119f: PUSH1 0x04
000011a1: DUP3
000011a2: ADD
000011a3: MSTORE
000011a4: PUSH1 0x24
000011a6: ADD
000011a7: PUSH2 0x0603
000011aa: JUMP
000011ab: JUMPDEST
000011ac: PUSH2 0x0a49
000011af: DUP4
000011b0: DUP4
000011b1: DUP4
000011b2: PUSH2 0x170c
000011b5: JUMP
000011b6: JUMPDEST
000011b7: PUSH2 0x0a49
000011ba: DUP4
000011bb: DUP4
000011bc: DUP4
000011bd: PUSH1 0x01
000011bf: PUSH2 0x1832
000011c2: JUMP
000011c3: JUMPDEST
000011c4: PUSH1 0x01
000011c6: PUSH1 0x01
000011c8: PUSH1 0xa0
000011ca: SHL
000011cb: SUB
000011cc: DUP4
000011cd: DUP2
000011ce: AND
000011cf: PUSH0
000011d0: SWAP1
000011d1: DUP2
000011d2: MSTORE
000011d3: PUSH1 0x01
000011d5: PUSH1 0x20
000011d7: SWAP1
000011d8: DUP2
000011d9: MSTORE
000011da: PUSH1 0x40
000011dc: DUP1
000011dd: DUP4
000011de: KECCAK256
000011df: SWAP4
000011e0: DUP7
000011e1: AND
000011e2: DUP4
000011e3: MSTORE
000011e4: SWAP3
000011e5: SWAP1
000011e6: MSTORE
000011e7: KECCAK256
000011e8: SLOAD
000011e9: PUSH0
000011ea: NOT
000011eb: DUP2
000011ec: LT
000011ed: ISZERO
000011ee: PUSH2 0x1239
000011f1: JUMPI
000011f2: DUP2
000011f3: DUP2
000011f4: LT
000011f5: ISZERO
000011f6: PUSH2 0x122b
000011f9: JUMPI
000011fa: PUSH1 0x40
000011fc: MLOAD
000011fd: PUSH4 0x7dc7a0d9
00001202: PUSH1 0xe1
00001204: SHL
00001205: DUP2
00001206: MSTORE
00001207: PUSH1 0x01
00001209: PUSH1 0x01
0000120b: PUSH1 0xa0
0000120d: SHL
0000120e: SUB
0000120f: DUP5
00001210: AND
00001211: PUSH1 0x04
00001213: DUP3
00001214: ADD
00001215: MSTORE
00001216: PUSH1 0x24
00001218: DUP2
00001219: ADD
0000121a: DUP3
0000121b: SWAP1
0000121c: MSTORE
0000121d: PUSH1 0x44
0000121f: DUP2
00001220: ADD
00001221: DUP4
00001222: SWAP1
00001223: MSTORE
00001224: PUSH1 0x64
00001226: ADD
00001227: PUSH2 0x0603
0000122a: JUMP
0000122b: JUMPDEST
0000122c: PUSH2 0x1239
0000122f: DUP5
00001230: DUP5
00001231: DUP5
00001232: DUP5
00001233: SUB
00001234: PUSH0
00001235: PUSH2 0x1832
00001238: JUMP
00001239: JUMPDEST
0000123a: POP
0000123b: POP
0000123c: POP
0000123d: POP
0000123e: JUMP
0000123f: JUMPDEST
00001240: PUSH1 0x05
00001242: SLOAD
00001243: PUSH1 0x01
00001245: PUSH1 0x01
00001247: PUSH1 0xa0
00001249: SHL
0000124a: SUB
0000124b: AND
0000124c: CALLER
0000124d: EQ
0000124e: PUSH2 0x0a5f
00001251: JUMPI
00001252: PUSH1 0x40
00001254: MLOAD
00001255: PUSH4 0x118cdaa7
0000125a: PUSH1 0xe0
0000125c: SHL
0000125d: DUP2
0000125e: MSTORE
0000125f: CALLER
00001260: PUSH1 0x04
00001262: DUP3
00001263: ADD
00001264: MSTORE
00001265: PUSH1 0x24
00001267: ADD
00001268: PUSH2 0x0603
0000126b: JUMP
0000126c: JUMPDEST
0000126d: PUSH1 0x01
0000126f: PUSH1 0x01
00001271: PUSH1 0xa0
00001273: SHL
00001274: SUB
00001275: DUP3
00001276: AND
00001277: PUSH0
00001278: SWAP1
00001279: DUP2
0000127a: MSTORE
0000127b: PUSH1 0x13
0000127d: PUSH1 0x20
0000127f: SWAP1
00001280: DUP2
00001281: MSTORE
00001282: PUSH1 0x40
00001284: DUP1
00001285: DUP4
00001286: KECCAK256
00001287: DUP5
00001288: DUP5
00001289: MSTORE
0000128a: SWAP1
0000128b: SWAP2
0000128c: MSTORE
0000128d: DUP2
0000128e: KECCAK256
0000128f: DUP1
00001290: SLOAD
00001291: PUSH2 0x1115
00001294: JUMPI
00001295: PUSH1 0x40
00001297: MLOAD
00001298: PUSH3 0x461bcd
0000129c: PUSH1 0xe5
0000129e: SHL
0000129f: DUP2
000012a0: MSTORE
000012a1: PUSH1 0x20
000012a3: PUSH1 0x04
000012a5: DUP3
000012a6: ADD
000012a7: MSTORE
000012a8: PUSH1 0x10
000012aa: PUSH1 0x24
000012ac: DUP3
000012ad: ADD
000012ae: MSTORE
000012af: PUSH16 0x13dc1d1a5bdb881b9bdd08195e1a5cdd
000012c0: PUSH1 0x82
000012c2: SHL
000012c3: PUSH1 0x44
000012c5: DUP3
000012c6: ADD
000012c7: MSTORE
000012c8: PUSH1 0x64
000012ca: ADD
000012cb: PUSH2 0x0603
000012ce: JUMP
000012cf: JUMPDEST
000012d0: PUSH0
000012d1: PUSH2 0x12da
000012d4: CALLER
000012d5: DUP5
000012d6: PUSH2 0x0879
000012d9: JUMP
000012da: JUMPDEST
000012db: SWAP1
000012dc: POP
000012dd: DUP2
000012de: DUP2
000012df: LT
000012e0: ISZERO
000012e1: PUSH2 0x1322
000012e4: JUMPI
000012e5: PUSH1 0x40
000012e7: MLOAD
000012e8: PUSH3 0x461bcd
000012ec: PUSH1 0xe5
000012ee: SHL
000012ef: DUP2
000012f0: MSTORE
000012f1: PUSH1 0x20
000012f3: PUSH1 0x04
000012f5: DUP3
000012f6: ADD
000012f7: MSTORE
000012f8: PUSH1 0x13
000012fa: PUSH1 0x24
000012fc: DUP3
000012fd: ADD
000012fe: MSTORE
000012ff: PUSH19 0x24b739bab33334b1b4b2b73a1037b83a34b7b7
00001313: PUSH1 0x69
00001315: SHL
00001316: PUSH1 0x44
00001318: DUP3
00001319: ADD
0000131a: MSTORE
0000131b: PUSH1 0x64
0000131d: ADD
0000131e: PUSH2 0x0603
00001321: JUMP
00001322: JUMPDEST
00001323: PUSH0
00001324: PUSH2 0x132d
00001327: DUP6
00001328: DUP6
00001329: PUSH2 0x126c
0000132c: JUMP
0000132d: JUMPDEST
0000132e: SWAP1
0000132f: POP
00001330: DUP3
00001331: DUP2
00001332: PUSH1 0x02
00001334: ADD
00001335: PUSH0
00001336: DUP3
00001337: DUP3
00001338: SLOAD
00001339: PUSH2 0x1342
0000133c: SWAP2
0000133d: SWAP1
0000133e: PUSH2 0x1cfe
00001341: JUMP
00001342: JUMPDEST
00001343: SWAP1
00001344: SWAP2
00001345: SSTORE
00001346: POP
00001347: POP
00001348: PUSH1 0x0c
0000134a: SLOAD
0000134b: PUSH2 0x135e
0000134e: SWAP1
0000134f: PUSH1 0x01
00001351: PUSH1 0x01
00001353: PUSH1 0xa0
00001355: SHL
00001356: SUB
00001357: AND
00001358: DUP7
00001359: DUP6
0000135a: PUSH2 0x1159
0000135d: JUMP
0000135e: JUMPDEST
0000135f: PUSH1 0x40
00001361: DUP1
00001362: MLOAD
00001363: DUP6
00001364: DUP2
00001365: MSTORE
00001366: PUSH1 0x20
00001368: DUP2
00001369: ADD
0000136a: DUP6
0000136b: SWAP1
0000136c: MSTORE
0000136d: PUSH1 0x01
0000136f: PUSH1 0x01
00001371: PUSH1 0xa0
00001373: SHL
00001374: SUB
00001375: DUP8
00001376: AND
00001377: SWAP2
00001378: PUSH32 0x7fb8af33a94ca7bd709d59757a015eb48270f350724a5409fd77b579d0b7247d
00001399: SWAP2
0000139a: ADD
0000139b: PUSH1 0x40
0000139d: MLOAD
0000139e: DUP1
0000139f: SWAP2
000013a0: SUB
000013a1: SWAP1
000013a2: LOG2
000013a3: POP
000013a4: POP
000013a5: POP
000013a6: POP
000013a7: POP
000013a8: JUMP
000013a9: JUMPDEST
000013aa: PUSH1 0x05
000013ac: DUP1
000013ad: SLOAD
000013ae: PUSH1 0x01
000013b0: PUSH1 0x01
000013b2: PUSH1 0xa0
000013b4: SHL
000013b5: SUB
000013b6: DUP4
000013b7: DUP2
000013b8: AND
000013b9: PUSH1 0x01
000013bb: PUSH1 0x01
000013bd: PUSH1 0xa0
000013bf: SHL
000013c0: SUB
000013c1: NOT
000013c2: DUP4
000013c3: AND
000013c4: DUP2
000013c5: OR
000013c6: SWAP1
000013c7: SWAP4
000013c8: SSTORE
000013c9: PUSH1 0x40
000013cb: MLOAD
000013cc: SWAP2
000013cd: AND
000013ce: SWAP2
000013cf: SWAP1
000013d0: DUP3
000013d1: SWAP1
000013d2: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000013f3: SWAP1
000013f4: PUSH0
000013f5: SWAP1
000013f6: LOG3
000013f7: POP
000013f8: POP
000013f9: JUMP
000013fa: JUMPDEST
000013fb: PUSH1 0x01
000013fd: PUSH1 0x01
000013ff: PUSH1 0xa0
00001401: SHL
00001402: SUB
00001403: DUP3
00001404: AND
00001405: PUSH2 0x1423
00001408: JUMPI
00001409: PUSH1 0x40
0000140b: MLOAD
0000140c: PUSH4 0x4b637e8f
00001411: PUSH1 0xe1
00001413: SHL
00001414: DUP2
00001415: MSTORE
00001416: PUSH0
00001417: PUSH1 0x04
00001419: DUP3
0000141a: ADD
0000141b: MSTORE
0000141c: PUSH1 0x24
0000141e: ADD
0000141f: PUSH2 0x0603
00001422: JUMP
00001423: JUMPDEST
00001424: PUSH2 0x0875
00001427: DUP3
00001428: PUSH0
00001429: DUP4
0000142a: PUSH2 0x170c
0000142d: JUMP
0000142e: JUMPDEST
0000142f: PUSH0
00001430: DUP1
00001431: DUP3
00001432: GT
00001433: PUSH2 0x146d
00001436: JUMPI
00001437: PUSH1 0x40
00001439: MLOAD
0000143a: PUSH3 0x461bcd
0000143e: PUSH1 0xe5
00001440: SHL
00001441: DUP2
00001442: MSTORE
00001443: PUSH1 0x20
00001445: PUSH1 0x04
00001447: DUP3
00001448: ADD
00001449: MSTORE
0000144a: PUSH1 0x0c
0000144c: PUSH1 0x24
0000144e: DUP3
0000144f: ADD
00001450: MSTORE
00001451: PUSH12 0x05175616e74697479203e203
0000145e: PUSH1 0xa4
00001460: SHL
00001461: PUSH1 0x44
00001463: DUP3
00001464: ADD
00001465: MSTORE
00001466: PUSH1 0x64
00001468: ADD
00001469: PUSH2 0x0603
0000146c: JUMP
0000146d: JUMPDEST
0000146e: DUP2
0000146f: PUSH2 0x148c
00001472: DUP5
00001473: PUSH1 0x01
00001475: PUSH1 0x01
00001477: PUSH1 0xa0
00001479: SHL
0000147a: SUB
0000147b: AND
0000147c: PUSH0
0000147d: SWAP1
0000147e: DUP2
0000147f: MSTORE
00001480: PUSH1 0x20
00001482: DUP2
00001483: SWAP1
00001484: MSTORE
00001485: PUSH1 0x40
00001487: SWAP1
00001488: KECCAK256
00001489: SLOAD
0000148a: SWAP1
0000148b: JUMP
0000148c: JUMPDEST
0000148d: LT
0000148e: ISZERO
0000148f: PUSH2 0x14d0
00001492: JUMPI
00001493: PUSH1 0x40
00001495: MLOAD
00001496: PUSH3 0x461bcd
0000149a: PUSH1 0xe5
0000149c: SHL
0000149d: DUP2
0000149e: MSTORE
0000149f: PUSH1 0x20
000014a1: PUSH1 0x04
000014a3: DUP3
000014a4: ADD
000014a5: MSTORE
000014a6: PUSH1 0x13
000014a8: PUSH1 0x24
000014aa: DUP3
000014ab: ADD
000014ac: MSTORE
000014ad: PUSH19 0x496e73756666696369656e7420736861726573
000014c1: PUSH1 0x68
000014c3: SHL
000014c4: PUSH1 0x44
000014c6: DUP3
000014c7: ADD
000014c8: MSTORE
000014c9: PUSH1 0x64
000014cb: ADD
000014cc: PUSH2 0x0603
000014cf: JUMP
000014d0: JUMPDEST
000014d1: PUSH1 0x0c
000014d3: SLOAD
000014d4: PUSH2 0x14e8
000014d7: SWAP1
000014d8: DUP5
000014d9: SWAP1
000014da: PUSH1 0x01
000014dc: PUSH1 0x01
000014de: PUSH1 0xa0
000014e0: SHL
000014e1: SUB
000014e2: AND
000014e3: DUP5
000014e4: PUSH2 0x1159
000014e7: JUMP
000014e8: JUMPDEST
000014e9: PUSH1 0x0e
000014eb: SLOAD
000014ec: DUP3
000014ed: SWAP1
000014ee: PUSH0
000014ef: SWAP1
000014f0: DUP1
000014f1: JUMPDEST
000014f2: DUP4
000014f3: ISZERO
000014f4: PUSH2 0x1618
000014f7: JUMPI
000014f8: PUSH1 0x09
000014fa: SLOAD
000014fb: PUSH1 0x0f
000014fd: SLOAD
000014fe: PUSH2 0x1507
00001501: SWAP1
00001502: DUP7
00001503: PUSH2 0x1cfe
00001506: JUMP
00001507: JUMPDEST
00001508: LT
00001509: ISZERO
0000150a: PUSH2 0x1554
0000150d: JUMPI
0000150e: DUP4
0000150f: PUSH1 0x0e
00001511: PUSH1 0x01
00001513: ADD
00001514: PUSH0
00001515: DUP3
00001516: DUP3
00001517: SLOAD
00001518: PUSH2 0x1521
0000151b: SWAP2
0000151c: SWAP1
0000151d: PUSH2 0x1cfe
00001520: JUMP
00001521: JUMPDEST
00001522: SWAP1
00001523: SWAP2
00001524: SSTORE
00001525: POP
00001526: POP
00001527: PUSH1 0x06
00001529: SLOAD
0000152a: PUSH1 0x0e
0000152c: SLOAD
0000152d: PUSH2 0x1536
00001530: SWAP1
00001531: DUP7
00001532: PUSH2 0x1cb5
00001535: JUMP
00001536: JUMPDEST
00001537: PUSH2 0x1540
0000153a: SWAP2
0000153b: SWAP1
0000153c: PUSH2 0x1ccc
0000153f: JUMP
00001540: JUMPDEST
00001541: PUSH2 0x154a
00001544: SWAP1
00001545: DUP5
00001546: PUSH2 0x1cfe
00001549: JUMP
0000154a: JUMPDEST
0000154b: SWAP3
0000154c: POP
0000154d: PUSH0
0000154e: SWAP4
0000154f: POP
00001550: PUSH2 0x15cf
00001553: JUMP
00001554: JUMPDEST
00001555: PUSH1 0x0f
00001557: SLOAD
00001558: PUSH1 0x09
0000155a: SLOAD
0000155b: PUSH2 0x1564
0000155e: SWAP2
0000155f: SWAP1
00001560: PUSH2 0x1ceb
00001563: JUMP
00001564: JUMPDEST
00001565: PUSH2 0x156e
00001568: SWAP1
00001569: DUP6
0000156a: PUSH2 0x1ceb
0000156d: JUMP
0000156e: JUMPDEST
0000156f: SWAP4
00001570: POP
00001571: PUSH1 0x06
00001573: SLOAD
00001574: PUSH1 0x0e
00001576: PUSH0
00001577: ADD
00001578: SLOAD
00001579: PUSH1 0x0e
0000157b: PUSH1 0x01
0000157d: ADD
0000157e: SLOAD
0000157f: PUSH1 0x09
00001581: SLOAD
00001582: PUSH2 0x158b
00001585: SWAP2
00001586: SWAP1
00001587: PUSH2 0x1ceb
0000158a: JUMP
0000158b: JUMPDEST
0000158c: PUSH2 0x1595
0000158f: SWAP2
00001590: SWAP1
00001591: PUSH2 0x1cb5
00001594: JUMP
00001595: JUMPDEST
00001596: PUSH2 0x159f
00001599: SWAP2
0000159a: SWAP1
0000159b: PUSH2 0x1ccc
0000159e: JUMP
0000159f: JUMPDEST
000015a0: PUSH2 0x15a9
000015a3: SWAP1
000015a4: DUP5
000015a5: PUSH2 0x1cfe
000015a8: JUMP
000015a9: JUMPDEST
000015aa: SWAP3
000015ab: POP
000015ac: PUSH1 0x07
000015ae: SLOAD
000015af: PUSH1 0x0e
000015b1: PUSH0
000015b2: ADD
000015b3: PUSH0
000015b4: DUP3
000015b5: DUP3
000015b6: SLOAD
000015b7: PUSH2 0x15c0
000015ba: SWAP2
000015bb: SWAP1
000015bc: PUSH2 0x1ceb
000015bf: JUMP
000015c0: JUMPDEST
000015c1: SWAP1
000015c2: SWAP2
000015c3: SSTORE
000015c4: POP
000015c5: POP
000015c6: PUSH0
000015c7: PUSH1 0x0f
000015c9: SSTORE
000015ca: PUSH1 0x0e
000015cc: SLOAD
000015cd: SWAP2
000015ce: POP
000015cf: JUMPDEST
000015d0: PUSH1 0x0e
000015d2: SLOAD
000015d3: PUSH2 0x1613
000015d6: JUMPI
000015d7: PUSH1 0x40
000015d9: MLOAD
000015da: PUSH3 0x461bcd
000015de: PUSH1 0xe5
000015e0: SHL
000015e1: DUP2
000015e2: MSTORE
000015e3: PUSH1 0x20
000015e5: PUSH1 0x04
000015e7: DUP3
000015e8: ADD
000015e9: MSTORE
000015ea: PUSH1 0x12
000015ec: PUSH1 0x24
000015ee: DUP3
000015ef: ADD
000015f0: MSTORE
000015f1: PUSH18 0x496e7375666669656e742062616c616e6365
00001604: PUSH1 0x70
00001606: SHL
00001607: PUSH1 0x44
00001609: DUP3
0000160a: ADD
0000160b: MSTORE
0000160c: PUSH1 0x64
0000160e: ADD
0000160f: PUSH2 0x0603
00001612: JUMP
00001613: JUMPDEST
00001614: PUSH2 0x14f1
00001617: JUMP
00001618: JUMPDEST
00001619: PUSH0
0000161a: DUP8
0000161b: PUSH1 0x01
0000161d: PUSH1 0x01
0000161f: PUSH1 0xa0
00001621: SHL
00001622: SUB
00001623: AND
00001624: DUP5
00001625: PUSH1 0x40
00001627: MLOAD
00001628: PUSH0
00001629: PUSH1 0x40
0000162b: MLOAD
0000162c: DUP1
0000162d: DUP4
0000162e: SUB
0000162f: DUP2
00001630: DUP6
00001631: DUP8
00001632: GAS
00001633: CALL
00001634: SWAP3
00001635: POP
00001636: POP
00001637: POP
00001638: RETURNDATASIZE
00001639: DUP1
0000163a: PUSH0
0000163b: DUP2
0000163c: EQ
0000163d: PUSH2 0x1661
00001640: JUMPI
00001641: PUSH1 0x40
00001643: MLOAD
00001644: SWAP2
00001645: POP
00001646: PUSH1 0x1f
00001648: NOT
00001649: PUSH1 0x3f
0000164b: RETURNDATASIZE
0000164c: ADD
0000164d: AND
0000164e: DUP3
0000164f: ADD
00001650: PUSH1 0x40
00001652: MSTORE
00001653: RETURNDATASIZE
00001654: DUP3
00001655: MSTORE
00001656: RETURNDATASIZE
00001657: PUSH0
00001658: PUSH1 0x20
0000165a: DUP5
0000165b: ADD
0000165c: RETURNDATACOPY
0000165d: PUSH2 0x1666
00001660: JUMP
00001661: JUMPDEST
00001662: PUSH1 0x60
00001664: SWAP2
00001665: POP
00001666: JUMPDEST
00001667: POP
00001668: POP
00001669: SWAP1
0000166a: POP
0000166b: DUP1
0000166c: PUSH2 0x16ad
0000166f: JUMPI
00001670: PUSH1 0x40
00001672: MLOAD
00001673: PUSH3 0x461bcd
00001677: PUSH1 0xe5
00001679: SHL
0000167a: DUP2
0000167b: MSTORE
0000167c: PUSH1 0x20
0000167e: PUSH1 0x04
00001680: DUP3
00001681: ADD
00001682: MSTORE
00001683: PUSH1 0x13
00001685: PUSH1 0x24
00001687: DUP3
00001688: ADD
00001689: MSTORE
0000168a: PUSH19 0x151c985b9cd9995c88195d1a195c8819985a5b
0000169e: PUSH1 0x6a
000016a0: SHL
000016a1: PUSH1 0x44
000016a3: DUP3
000016a4: ADD
000016a5: MSTORE
000016a6: PUSH1 0x64
000016a8: ADD
000016a9: PUSH2 0x0603
000016ac: JUMP
000016ad: JUMPDEST
000016ae: PUSH1 0x40
000016b0: DUP1
000016b1: MLOAD
000016b2: DUP5
000016b3: DUP2
000016b4: MSTORE
000016b5: PUSH1 0x20
000016b7: DUP2
000016b8: ADD
000016b9: DUP5
000016ba: SWAP1
000016bb: MSTORE
000016bc: SWAP1
000016bd: DUP2
000016be: ADD
000016bf: DUP6
000016c0: SWAP1
000016c1: MSTORE
000016c2: PUSH1 0x60
000016c4: DUP2
000016c5: ADD
000016c6: DUP9
000016c7: SWAP1
000016c8: MSTORE
000016c9: PUSH1 0x01
000016cb: PUSH1 0x01
000016cd: PUSH1 0xa0
000016cf: SHL
000016d0: SUB
000016d1: DUP10
000016d2: AND
000016d3: SWAP1
000016d4: PUSH32 0x483f8aec0fd892ac72ad1ba8d0e9c9e73db59c12d263fd71de480b5b3deeae3c
000016f5: SWAP1
000016f6: PUSH1 0x80
000016f8: ADD
000016f9: PUSH1 0x40
000016fb: MLOAD
000016fc: DUP1
000016fd: SWAP2
000016fe: SUB
000016ff: SWAP1
00001700: LOG2
00001701: POP
00001702: SWAP2
00001703: SWAP7
00001704: SWAP6
00001705: POP
00001706: POP
00001707: POP
00001708: POP
00001709: POP
0000170a: POP
0000170b: JUMP
0000170c: JUMPDEST
0000170d: PUSH1 0x01
0000170f: PUSH1 0x01
00001711: PUSH1 0xa0
00001713: SHL
00001714: SUB
00001715: DUP4
00001716: AND
00001717: PUSH2 0x1736
0000171a: JUMPI
0000171b: DUP1
0000171c: PUSH1 0x02
0000171e: PUSH0
0000171f: DUP3
00001720: DUP3
00001721: SLOAD
00001722: PUSH2 0x172b
00001725: SWAP2
00001726: SWAP1
00001727: PUSH2 0x1cfe
0000172a: JUMP
0000172b: JUMPDEST
0000172c: SWAP1
0000172d: SWAP2
0000172e: SSTORE
0000172f: POP
00001730: PUSH2 0x17a6
00001733: SWAP1
00001734: POP
00001735: JUMP
00001736: JUMPDEST
00001737: PUSH1 0x01
00001739: PUSH1 0x01
0000173b: PUSH1 0xa0
0000173d: SHL
0000173e: SUB
0000173f: DUP4
00001740: AND
00001741: PUSH0
00001742: SWAP1
00001743: DUP2
00001744: MSTORE
00001745: PUSH1 0x20
00001747: DUP2
00001748: SWAP1
00001749: MSTORE
0000174a: PUSH1 0x40
0000174c: SWAP1
0000174d: KECCAK256
0000174e: SLOAD
0000174f: DUP2
00001750: DUP2
00001751: LT
00001752: ISZERO
00001753: PUSH2 0x1788
00001756: JUMPI
00001757: PUSH1 0x40
00001759: MLOAD
0000175a: PUSH4 0x391434e3
0000175f: PUSH1 0xe2
00001761: SHL
00001762: DUP2
00001763: MSTORE
00001764: PUSH1 0x01
00001766: PUSH1 0x01
00001768: PUSH1 0xa0
0000176a: SHL
0000176b: SUB
0000176c: DUP6
0000176d: AND
0000176e: PUSH1 0x04
00001770: DUP3
00001771: ADD
00001772: MSTORE
00001773: PUSH1 0x24
00001775: DUP2
00001776: ADD
00001777: DUP3
00001778: SWAP1
00001779: MSTORE
0000177a: PUSH1 0x44
0000177c: DUP2
0000177d: ADD
0000177e: DUP4
0000177f: SWAP1
00001780: MSTORE
00001781: PUSH1 0x64
00001783: ADD
00001784: PUSH2 0x0603
00001787: JUMP
00001788: JUMPDEST
00001789: PUSH1 0x01
0000178b: PUSH1 0x01
0000178d: PUSH1 0xa0
0000178f: SHL
00001790: SUB
00001791: DUP5
00001792: AND
00001793: PUSH0
00001794: SWAP1
00001795: DUP2
00001796: MSTORE
00001797: PUSH1 0x20
00001799: DUP2
0000179a: SWAP1
0000179b: MSTORE
0000179c: PUSH1 0x40
0000179e: SWAP1
0000179f: KECCAK256
000017a0: SWAP1
000017a1: DUP3
000017a2: SWAP1
000017a3: SUB
000017a4: SWAP1
000017a5: SSTORE
000017a6: JUMPDEST
000017a7: PUSH1 0x01
000017a9: PUSH1 0x01
000017ab: PUSH1 0xa0
000017ad: SHL
000017ae: SUB
000017af: DUP3
000017b0: AND
000017b1: PUSH2 0x17c2
000017b4: JUMPI
000017b5: PUSH1 0x02
000017b7: DUP1
000017b8: SLOAD
000017b9: DUP3
000017ba: SWAP1
000017bb: SUB
000017bc: SWAP1
000017bd: SSTORE
000017be: PUSH2 0x17e0
000017c1: JUMP
000017c2: JUMPDEST
000017c3: PUSH1 0x01
000017c5: PUSH1 0x01
000017c7: PUSH1 0xa0
000017c9: SHL
000017ca: SUB
000017cb: DUP3
000017cc: AND
000017cd: PUSH0
000017ce: SWAP1
000017cf: DUP2
000017d0: MSTORE
000017d1: PUSH1 0x20
000017d3: DUP2
000017d4: SWAP1
000017d5: MSTORE
000017d6: PUSH1 0x40
000017d8: SWAP1
000017d9: KECCAK256
000017da: DUP1
000017db: SLOAD
000017dc: DUP3
000017dd: ADD
000017de: SWAP1
000017df: SSTORE
000017e0: JUMPDEST
000017e1: DUP2
000017e2: PUSH1 0x01
000017e4: PUSH1 0x01
000017e6: PUSH1 0xa0
000017e8: SHL
000017e9: SUB
000017ea: AND
000017eb: DUP4
000017ec: PUSH1 0x01
000017ee: PUSH1 0x01
000017f0: PUSH1 0xa0
000017f2: SHL
000017f3: SUB
000017f4: AND
000017f5: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00001816: DUP4
00001817: PUSH1 0x40
00001819: MLOAD
0000181a: PUSH2 0x1825
0000181d: SWAP2
0000181e: DUP2
0000181f: MSTORE
00001820: PUSH1 0x20
00001822: ADD
00001823: SWAP1
00001824: JUMP
00001825: JUMPDEST
00001826: PUSH1 0x40
00001828: MLOAD
00001829: DUP1
0000182a: SWAP2
0000182b: SUB
0000182c: SWAP1
0000182d: LOG3
0000182e: POP
0000182f: POP
00001830: POP
00001831: JUMP
00001832: JUMPDEST
00001833: PUSH1 0x01
00001835: PUSH1 0x01
00001837: PUSH1 0xa0
00001839: SHL
0000183a: SUB
0000183b: DUP5
0000183c: AND
0000183d: PUSH2 0x185b
00001840: JUMPI
00001841: PUSH1 0x40
00001843: MLOAD
00001844: PUSH4 0xe602df05
00001849: PUSH1 0xe0
0000184b: SHL
0000184c: DUP2
0000184d: MSTORE
0000184e: PUSH0
0000184f: PUSH1 0x04
00001851: DUP3
00001852: ADD
00001853: MSTORE
00001854: PUSH1 0x24
00001856: ADD
00001857: PUSH2 0x0603
0000185a: JUMP
0000185b: JUMPDEST
0000185c: PUSH1 0x01
0000185e: PUSH1 0x01
00001860: PUSH1 0xa0
00001862: SHL
00001863: SUB
00001864: DUP4
00001865: AND
00001866: PUSH2 0x1884
00001869: JUMPI
0000186a: PUSH1 0x40
0000186c: MLOAD
0000186d: PUSH4 0x4a1406b1
00001872: PUSH1 0xe1
00001874: SHL
00001875: DUP2
00001876: MSTORE
00001877: PUSH0
00001878: PUSH1 0x04
0000187a: DUP3
0000187b: ADD
0000187c: MSTORE
0000187d: PUSH1 0x24
0000187f: ADD
00001880: PUSH2 0x0603
00001883: JUMP
00001884: JUMPDEST
00001885: PUSH1 0x01
00001887: PUSH1 0x01
00001889: PUSH1 0xa0
0000188b: SHL
0000188c: SUB
0000188d: DUP1
0000188e: DUP6
0000188f: AND
00001890: PUSH0
00001891: SWAP1
00001892: DUP2
00001893: MSTORE
00001894: PUSH1 0x01
00001896: PUSH1 0x20
00001898: SWAP1
00001899: DUP2
0000189a: MSTORE
0000189b: PUSH1 0x40
0000189d: DUP1
0000189e: DUP4
0000189f: KECCAK256
000018a0: SWAP4
000018a1: DUP8
000018a2: AND
000018a3: DUP4
000018a4: MSTORE
000018a5: SWAP3
000018a6: SWAP1
000018a7: MSTORE
000018a8: KECCAK256
000018a9: DUP3
000018aa: SWAP1
000018ab: SSTORE
000018ac: DUP1
000018ad: ISZERO
000018ae: PUSH2 0x1239
000018b1: JUMPI
000018b2: DUP3
000018b3: PUSH1 0x01
000018b5: PUSH1 0x01
000018b7: PUSH1 0xa0
000018b9: SHL
000018ba: SUB
000018bb: AND
000018bc: DUP5
000018bd: PUSH1 0x01
000018bf: PUSH1 0x01
000018c1: PUSH1 0xa0
000018c3: SHL
000018c4: SUB
000018c5: AND
000018c6: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
000018e7: DUP5
000018e8: PUSH1 0x40
000018ea: MLOAD
000018eb: PUSH2 0x18f6
000018ee: SWAP2
000018ef: DUP2
000018f0: MSTORE
000018f1: PUSH1 0x20
000018f3: ADD
000018f4: SWAP1
000018f5: JUMP
000018f6: JUMPDEST
000018f7: PUSH1 0x40
000018f9: MLOAD
000018fa: DUP1
000018fb: SWAP2
000018fc: SUB
000018fd: SWAP1
000018fe: LOG3
000018ff: POP
00001900: POP
00001901: POP
00001902: POP
00001903: JUMP
00001904: JUMPDEST
00001905: PUSH0
00001906: PUSH1 0x20
00001908: DUP1
00001909: DUP4
0000190a: MSTORE
0000190b: DUP4
0000190c: MLOAD
0000190d: DUP1
0000190e: DUP3
0000190f: DUP6
00001910: ADD
00001911: MSTORE
00001912: PUSH0
00001913: JUMPDEST
00001914: DUP2
00001915: DUP2
00001916: LT
00001917: ISZERO
00001918: PUSH2 0x192f
0000191b: JUMPI
0000191c: DUP6
0000191d: DUP2
0000191e: ADD
0000191f: DUP4
00001920: ADD
00001921: MLOAD
00001922: DUP6
00001923: DUP3
00001924: ADD
00001925: PUSH1 0x40
00001927: ADD
00001928: MSTORE
00001929: DUP3
0000192a: ADD
0000192b: PUSH2 0x1913
0000192e: JUMP
0000192f: JUMPDEST
00001930: POP
00001931: PUSH0
00001932: PUSH1 0x40
00001934: DUP3
00001935: DUP7
00001936: ADD
00001937: ADD
00001938: MSTORE
00001939: PUSH1 0x40
0000193b: PUSH1 0x1f
0000193d: NOT
0000193e: PUSH1 0x1f
00001940: DUP4
00001941: ADD
00001942: AND
00001943: DUP6
00001944: ADD
00001945: ADD
00001946: SWAP3
00001947: POP
00001948: POP
00001949: POP
0000194a: SWAP3
0000194b: SWAP2
0000194c: POP
0000194d: POP
0000194e: JUMP
0000194f: JUMPDEST
00001950: PUSH1 0x01
00001952: PUSH1 0x01
00001954: PUSH1 0xa0
00001956: SHL
00001957: SUB
00001958: DUP2
00001959: AND
0000195a: DUP2
0000195b: EQ
0000195c: PUSH2 0x1156
0000195f: JUMPI
00001960: PUSH0
00001961: DUP1
00001962: REVERT
00001963: JUMPDEST
00001964: PUSH0
00001965: DUP1
00001966: PUSH1 0x40
00001968: DUP4
00001969: DUP6
0000196a: SUB
0000196b: SLT
0000196c: ISZERO
0000196d: PUSH2 0x1974
00001970: JUMPI
00001971: PUSH0
00001972: DUP1
00001973: REVERT
00001974: JUMPDEST
00001975: DUP3
00001976: CALLDATALOAD
00001977: PUSH2 0x197f
0000197a: DUP2
0000197b: PUSH2 0x194f
0000197e: JUMP
0000197f: JUMPDEST
00001980: SWAP5
00001981: PUSH1 0x20
00001983: SWAP4
00001984: SWAP1
00001985: SWAP4
00001986: ADD
00001987: CALLDATALOAD
00001988: SWAP4
00001989: POP
0000198a: POP
0000198b: POP
0000198c: JUMP
0000198d: JUMPDEST
0000198e: PUSH0
0000198f: DUP1
00001990: PUSH0
00001991: PUSH1 0x60
00001993: DUP5
00001994: DUP7
00001995: SUB
00001996: SLT
00001997: ISZERO
00001998: PUSH2 0x199f
0000199b: JUMPI
0000199c: PUSH0
0000199d: DUP1
0000199e: REVERT
0000199f: JUMPDEST
000019a0: DUP4
000019a1: CALLDATALOAD
000019a2: PUSH2 0x19aa
000019a5: DUP2
000019a6: PUSH2 0x194f
000019a9: JUMP
000019aa: JUMPDEST
000019ab: SWAP3
000019ac: POP
000019ad: PUSH1 0x20
000019af: DUP5
000019b0: ADD
000019b1: CALLDATALOAD
000019b2: PUSH2 0x19ba
000019b5: DUP2
000019b6: PUSH2 0x194f
000019b9: JUMP
000019ba: JUMPDEST
000019bb: SWAP3
000019bc: SWAP6
000019bd: SWAP3
000019be: SWAP5
000019bf: POP
000019c0: POP
000019c1: POP
000019c2: PUSH1 0x40
000019c4: SWAP2
000019c5: SWAP1
000019c6: SWAP2
000019c7: ADD
000019c8: CALLDATALOAD
000019c9: SWAP1
000019ca: JUMP
000019cb: JUMPDEST
000019cc: PUSH4 0x4e487b71
000019d1: PUSH1 0xe0
000019d3: SHL
000019d4: PUSH0
000019d5: MSTORE
000019d6: PUSH1 0x41
000019d8: PUSH1 0x04
000019da: MSTORE
000019db: PUSH1 0x24
000019dd: PUSH0
000019de: REVERT
000019df: JUMPDEST
000019e0: PUSH1 0x40
000019e2: MLOAD
000019e3: PUSH1 0x1f
000019e5: DUP3
000019e6: ADD
000019e7: PUSH1 0x1f
000019e9: NOT
000019ea: AND
000019eb: DUP2
000019ec: ADD
000019ed: PUSH8 0xffffffffffffffff
000019f6: DUP2
000019f7: GT
000019f8: DUP3
000019f9: DUP3
000019fa: LT
000019fb: OR
000019fc: ISZERO
000019fd: PUSH2 0x1a08
00001a00: JUMPI
00001a01: PUSH2 0x1a08
00001a04: PUSH2 0x19cb
00001a07: JUMP
00001a08: JUMPDEST
00001a09: PUSH1 0x40
00001a0b: MSTORE
00001a0c: SWAP2
00001a0d: SWAP1
00001a0e: POP
00001a0f: JUMP
00001a10: JUMPDEST
00001a11: PUSH0
00001a12: PUSH1 0x20
00001a14: DUP1
00001a15: DUP4
00001a16: DUP6
00001a17: SUB
00001a18: SLT
00001a19: ISZERO
00001a1a: PUSH2 0x1a21
00001a1d: JUMPI
00001a1e: PUSH0
00001a1f: DUP1
00001a20: REVERT
00001a21: JUMPDEST
00001a22: DUP3
00001a23: CALLDATALOAD
00001a24: PUSH8 0xffffffffffffffff
00001a2d: DUP1
00001a2e: DUP3
00001a2f: GT
00001a30: ISZERO
00001a31: PUSH2 0x1a38
00001a34: JUMPI
00001a35: PUSH0
00001a36: DUP1
00001a37: REVERT
00001a38: JUMPDEST
00001a39: DUP2
00001a3a: DUP6
00001a3b: ADD
00001a3c: SWAP2
00001a3d: POP
00001a3e: DUP6
00001a3f: PUSH1 0x1f
00001a41: DUP4
00001a42: ADD
00001a43: SLT
00001a44: PUSH2 0x1a4b
00001a47: JUMPI
00001a48: PUSH0
00001a49: DUP1
00001a4a: REVERT
00001a4b: JUMPDEST
00001a4c: DUP2
00001a4d: CALLDATALOAD
00001a4e: DUP2
00001a4f: DUP2
00001a50: GT
00001a51: ISZERO
00001a52: PUSH2 0x1a5d
00001a55: JUMPI
00001a56: PUSH2 0x1a5d
00001a59: PUSH2 0x19cb
00001a5c: JUMP
00001a5d: JUMPDEST
00001a5e: PUSH2 0x1a6f
00001a61: PUSH1 0x1f
00001a63: DUP3
00001a64: ADD
00001a65: PUSH1 0x1f
00001a67: NOT
00001a68: AND
00001a69: DUP6
00001a6a: ADD
00001a6b: PUSH2 0x19df
00001a6e: JUMP
00001a6f: JUMPDEST
00001a70: SWAP2
00001a71: POP
00001a72: DUP1
00001a73: DUP3
00001a74: MSTORE
00001a75: DUP7
00001a76: DUP5
00001a77: DUP3
00001a78: DUP6
00001a79: ADD
00001a7a: ADD
00001a7b: GT
00001a7c: ISZERO
00001a7d: PUSH2 0x1a84
00001a80: JUMPI
00001a81: PUSH0
00001a82: DUP1
00001a83: REVERT
00001a84: JUMPDEST
00001a85: DUP1
00001a86: DUP5
00001a87: DUP5
00001a88: ADD
00001a89: DUP6
00001a8a: DUP5
00001a8b: ADD
00001a8c: CALLDATACOPY
00001a8d: PUSH0
00001a8e: SWAP1
00001a8f: DUP3
00001a90: ADD
00001a91: SWAP1
00001a92: SWAP4
00001a93: ADD
00001a94: SWAP3
00001a95: SWAP1
00001a96: SWAP3
00001a97: MSTORE
00001a98: POP
00001a99: SWAP4
00001a9a: SWAP3
00001a9b: POP
00001a9c: POP
00001a9d: POP
00001a9e: JUMP
00001a9f: JUMPDEST
00001aa0: PUSH0
00001aa1: DUP1
00001aa2: PUSH0
00001aa3: PUSH1 0x60
00001aa5: DUP5
00001aa6: DUP7
00001aa7: SUB
00001aa8: SLT
00001aa9: ISZERO
00001aaa: PUSH2 0x1ab1
00001aad: JUMPI
00001aae: PUSH0
00001aaf: DUP1
00001ab0: REVERT
00001ab1: JUMPDEST
00001ab2: DUP4
00001ab3: CALLDATALOAD
00001ab4: PUSH2 0x1abc
00001ab7: DUP2
00001ab8: PUSH2 0x194f
00001abb: JUMP
00001abc: JUMPDEST
00001abd: SWAP6
00001abe: PUSH1 0x20
00001ac0: DUP6
00001ac1: ADD
00001ac2: CALLDATALOAD
00001ac3: SWAP6
00001ac4: POP
00001ac5: PUSH1 0x40
00001ac7: SWAP1
00001ac8: SWAP5
00001ac9: ADD
00001aca: CALLDATALOAD
00001acb: SWAP4
00001acc: SWAP3
00001acd: POP
00001ace: POP
00001acf: POP
00001ad0: JUMP
00001ad1: JUMPDEST
00001ad2: PUSH0
00001ad3: PUSH1 0x20
00001ad5: DUP3
00001ad6: DUP5
00001ad7: SUB
00001ad8: SLT
00001ad9: ISZERO
00001ada: PUSH2 0x1ae1
00001add: JUMPI
00001ade: PUSH0
00001adf: DUP1
00001ae0: REVERT
00001ae1: JUMPDEST
00001ae2: DUP2
00001ae3: CALLDATALOAD
00001ae4: PUSH2 0x1115
00001ae7: DUP2
00001ae8: PUSH2 0x194f
00001aeb: JUMP
00001aec: JUMPDEST
00001aed: PUSH0
00001aee: DUP1
00001aef: PUSH1 0x40
00001af1: DUP4
00001af2: DUP6
00001af3: SUB
00001af4: SLT
00001af5: ISZERO
00001af6: PUSH2 0x1afd
00001af9: JUMPI
00001afa: PUSH0
00001afb: DUP1
00001afc: REVERT
00001afd: JUMPDEST
00001afe: POP
00001aff: POP
00001b00: DUP1
00001b01: CALLDATALOAD
00001b02: SWAP3
00001b03: PUSH1 0x20
00001b05: SWAP1
00001b06: SWAP2
00001b07: ADD
00001b08: CALLDATALOAD
00001b09: SWAP2
00001b0a: POP
00001b0b: JUMP
00001b0c: JUMPDEST
00001b0d: PUSH0
00001b0e: PUSH8 0xffffffffffffffff
00001b17: DUP3
00001b18: GT
00001b19: ISZERO
00001b1a: PUSH2 0x1b25
00001b1d: JUMPI
00001b1e: PUSH2 0x1b25
00001b21: PUSH2 0x19cb
00001b24: JUMP
00001b25: JUMPDEST
00001b26: POP
00001b27: PUSH1 0x05
00001b29: SHL
00001b2a: PUSH1 0x20
00001b2c: ADD
00001b2d: SWAP1
00001b2e: JUMP
00001b2f: JUMPDEST
00001b30: PUSH0
00001b31: DUP3
00001b32: PUSH1 0x1f
00001b34: DUP4
00001b35: ADD
00001b36: SLT
00001b37: PUSH2 0x1b3e
00001b3a: JUMPI
00001b3b: PUSH0
00001b3c: DUP1
00001b3d: REVERT
00001b3e: JUMPDEST
00001b3f: DUP2
00001b40: CALLDATALOAD
00001b41: PUSH1 0x20
00001b43: PUSH2 0x1b53
00001b46: PUSH2 0x1b4e
00001b49: DUP4
00001b4a: PUSH2 0x1b0c
00001b4d: JUMP
00001b4e: JUMPDEST
00001b4f: PUSH2 0x19df
00001b52: JUMP
00001b53: JUMPDEST
00001b54: DUP3
00001b55: DUP2
00001b56: MSTORE
00001b57: PUSH1 0x05
00001b59: SWAP3
00001b5a: SWAP1
00001b5b: SWAP3
00001b5c: SHL
00001b5d: DUP5
00001b5e: ADD
00001b5f: DUP2
00001b60: ADD
00001b61: SWAP2
00001b62: DUP2
00001b63: DUP2
00001b64: ADD
00001b65: SWAP1
00001b66: DUP7
00001b67: DUP5
00001b68: GT
00001b69: ISZERO
00001b6a: PUSH2 0x1b71
00001b6d: JUMPI
00001b6e: PUSH0
00001b6f: DUP1
00001b70: REVERT
00001b71: JUMPDEST
00001b72: DUP3
00001b73: DUP7
00001b74: ADD
00001b75: JUMPDEST
00001b76: DUP5
00001b77: DUP2
00001b78: LT
00001b79: ISZERO
00001b7a: PUSH2 0x1b8c
00001b7d: JUMPI
00001b7e: DUP1
00001b7f: CALLDATALOAD
00001b80: DUP4
00001b81: MSTORE
00001b82: SWAP2
00001b83: DUP4
00001b84: ADD
00001b85: SWAP2
00001b86: DUP4
00001b87: ADD
00001b88: PUSH2 0x1b75
00001b8b: JUMP
00001b8c: JUMPDEST
00001b8d: POP
00001b8e: SWAP7
00001b8f: SWAP6
00001b90: POP
00001b91: POP
00001b92: POP
00001b93: POP
00001b94: POP
00001b95: POP
00001b96: JUMP
00001b97: JUMPDEST
00001b98: PUSH0
00001b99: DUP1
00001b9a: PUSH1 0x40
00001b9c: DUP4
00001b9d: DUP6
00001b9e: SUB
00001b9f: SLT
00001ba0: ISZERO
00001ba1: PUSH2 0x1ba8
00001ba4: JUMPI
00001ba5: PUSH0
00001ba6: DUP1
00001ba7: REVERT
00001ba8: JUMPDEST
00001ba9: DUP3
00001baa: CALLDATALOAD
00001bab: PUSH8 0xffffffffffffffff
00001bb4: DUP1
00001bb5: DUP3
00001bb6: GT
00001bb7: ISZERO
00001bb8: PUSH2 0x1bbf
00001bbb: JUMPI
00001bbc: PUSH0
00001bbd: DUP1
00001bbe: REVERT
00001bbf: JUMPDEST
00001bc0: DUP2
00001bc1: DUP6
00001bc2: ADD
00001bc3: SWAP2
00001bc4: POP
00001bc5: DUP6
00001bc6: PUSH1 0x1f
00001bc8: DUP4
00001bc9: ADD
00001bca: SLT
00001bcb: PUSH2 0x1bd2
00001bce: JUMPI
00001bcf: PUSH0
00001bd0: DUP1
00001bd1: REVERT
00001bd2: JUMPDEST
00001bd3: DUP2
00001bd4: CALLDATALOAD
00001bd5: PUSH1 0x20
00001bd7: PUSH2 0x1be2
00001bda: PUSH2 0x1b4e
00001bdd: DUP4
00001bde: PUSH2 0x1b0c
00001be1: JUMP
00001be2: JUMPDEST
00001be3: DUP3
00001be4: DUP2
00001be5: MSTORE
00001be6: PUSH1 0x05
00001be8: SWAP3
00001be9: SWAP1
00001bea: SWAP3
00001beb: SHL
00001bec: DUP5
00001bed: ADD
00001bee: DUP2
00001bef: ADD
00001bf0: SWAP2
00001bf1: DUP2
00001bf2: DUP2
00001bf3: ADD
00001bf4: SWAP1
00001bf5: DUP10
00001bf6: DUP5
00001bf7: GT
00001bf8: ISZERO
00001bf9: PUSH2 0x1c00
00001bfc: JUMPI
00001bfd: PUSH0
00001bfe: DUP1
00001bff: REVERT
00001c00: JUMPDEST
00001c01: SWAP5
00001c02: DUP3
00001c03: ADD
00001c04: SWAP5
00001c05: JUMPDEST
00001c06: DUP4
00001c07: DUP7
00001c08: LT
00001c09: ISZERO
00001c0a: PUSH2 0x1c27
00001c0d: JUMPI
00001c0e: DUP6
00001c0f: CALLDATALOAD
00001c10: PUSH2 0x1c18
00001c13: DUP2
00001c14: PUSH2 0x194f
00001c17: JUMP
00001c18: JUMPDEST
00001c19: DUP3
00001c1a: MSTORE
00001c1b: SWAP5
00001c1c: DUP3
00001c1d: ADD
00001c1e: SWAP5
00001c1f: SWAP1
00001c20: DUP3
00001c21: ADD
00001c22: SWAP1
00001c23: PUSH2 0x1c05
00001c26: JUMP
00001c27: JUMPDEST
00001c28: SWAP7
00001c29: POP
00001c2a: POP
00001c2b: DUP7
00001c2c: ADD
00001c2d: CALLDATALOAD
00001c2e: SWAP3
00001c2f: POP
00001c30: POP
00001c31: DUP1
00001c32: DUP3
00001c33: GT
00001c34: ISZERO
00001c35: PUSH2 0x1c3c
00001c38: JUMPI
00001c39: PUSH0
00001c3a: DUP1
00001c3b: REVERT
00001c3c: JUMPDEST
00001c3d: POP
00001c3e: PUSH2 0x1c49
00001c41: DUP6
00001c42: DUP3
00001c43: DUP7
00001c44: ADD
00001c45: PUSH2 0x1b2f
00001c48: JUMP
00001c49: JUMPDEST
00001c4a: SWAP2
00001c4b: POP
00001c4c: POP
00001c4d: SWAP3
00001c4e: POP
00001c4f: SWAP3
00001c50: SWAP1
00001c51: POP
00001c52: JUMP
00001c53: JUMPDEST
00001c54: PUSH0
00001c55: DUP1
00001c56: PUSH1 0x40
00001c58: DUP4
00001c59: DUP6
00001c5a: SUB
00001c5b: SLT
00001c5c: ISZERO
00001c5d: PUSH2 0x1c64
00001c60: JUMPI
00001c61: PUSH0
00001c62: DUP1
00001c63: REVERT
00001c64: JUMPDEST
00001c65: DUP3
00001c66: CALLDATALOAD
00001c67: PUSH2 0x1c6f
00001c6a: DUP2
00001c6b: PUSH2 0x194f
00001c6e: JUMP
00001c6f: JUMPDEST
00001c70: SWAP2
00001c71: POP
00001c72: PUSH1 0x20
00001c74: DUP4
00001c75: ADD
00001c76: CALLDATALOAD
00001c77: PUSH2 0x1c7f
00001c7a: DUP2
00001c7b: PUSH2 0x194f
00001c7e: JUMP
00001c7f: JUMPDEST
00001c80: DUP1
00001c81: SWAP2
00001c82: POP
00001c83: POP
00001c84: SWAP3
00001c85: POP
00001c86: SWAP3
00001c87: SWAP1
00001c88: POP
00001c89: JUMP
00001c8a: JUMPDEST
00001c8b: PUSH0
00001c8c: PUSH1 0x20
00001c8e: DUP3
00001c8f: DUP5
00001c90: SUB
00001c91: SLT
00001c92: ISZERO
00001c93: PUSH2 0x1c9a
00001c96: JUMPI
00001c97: PUSH0
00001c98: DUP1
00001c99: REVERT
00001c9a: JUMPDEST
00001c9b: POP
00001c9c: CALLDATALOAD
00001c9d: SWAP2
00001c9e: SWAP1
00001c9f: POP
00001ca0: JUMP
00001ca1: JUMPDEST
00001ca2: PUSH4 0x4e487b71
00001ca7: PUSH1 0xe0
00001ca9: SHL
00001caa: PUSH0
00001cab: MSTORE
00001cac: PUSH1 0x11
00001cae: PUSH1 0x04
00001cb0: MSTORE
00001cb1: PUSH1 0x24
00001cb3: PUSH0
00001cb4: REVERT
00001cb5: JUMPDEST
00001cb6: DUP1
00001cb7: DUP3
00001cb8: MUL
00001cb9: DUP2
00001cba: ISZERO
00001cbb: DUP3
00001cbc: DUP3
00001cbd: DIV
00001cbe: DUP5
00001cbf: EQ
00001cc0: OR
00001cc1: PUSH2 0x0838
00001cc4: JUMPI
00001cc5: PUSH2 0x0838
00001cc8: PUSH2 0x1ca1
00001ccb: JUMP
00001ccc: JUMPDEST
00001ccd: PUSH0
00001cce: DUP3
00001ccf: PUSH2 0x1ce6
00001cd2: JUMPI
00001cd3: PUSH4 0x4e487b71
00001cd8: PUSH1 0xe0
00001cda: SHL
00001cdb: PUSH0
00001cdc: MSTORE
00001cdd: PUSH1 0x12
00001cdf: PUSH1 0x04
00001ce1: MSTORE
00001ce2: PUSH1 0x24
00001ce4: PUSH0
00001ce5: REVERT
00001ce6: JUMPDEST
00001ce7: POP
00001ce8: DIV
00001ce9: SWAP1
00001cea: JUMP
00001ceb: JUMPDEST
00001cec: DUP2
00001ced: DUP2
00001cee: SUB
00001cef: DUP2
00001cf0: DUP2
00001cf1: GT
00001cf2: ISZERO
00001cf3: PUSH2 0x0838
00001cf6: JUMPI
00001cf7: PUSH2 0x0838
00001cfa: PUSH2 0x1ca1
00001cfd: JUMP
00001cfe: JUMPDEST
00001cff: DUP1
00001d00: DUP3
00001d01: ADD
00001d02: DUP1
00001d03: DUP3
00001d04: GT
00001d05: ISZERO
00001d06: PUSH2 0x0838
00001d09: JUMPI
00001d0a: PUSH2 0x0838
00001d0d: PUSH2 0x1ca1
00001d10: JUMP
00001d11: JUMPDEST
00001d12: PUSH1 0x01
00001d14: DUP2
00001d15: DUP2
00001d16: SHR
00001d17: SWAP1
00001d18: DUP3
00001d19: AND
00001d1a: DUP1
00001d1b: PUSH2 0x1d25
00001d1e: JUMPI
00001d1f: PUSH1 0x7f
00001d21: DUP3
00001d22: AND
00001d23: SWAP2
00001d24: POP
00001d25: JUMPDEST
00001d26: PUSH1 0x20
00001d28: DUP3
00001d29: LT
00001d2a: DUP2
00001d2b: SUB
00001d2c: PUSH2 0x1d43
00001d2f: JUMPI
00001d30: PUSH4 0x4e487b71
00001d35: PUSH1 0xe0
00001d37: SHL
00001d38: PUSH0
00001d39: MSTORE
00001d3a: PUSH1 0x22
00001d3c: PUSH1 0x04
00001d3e: MSTORE
00001d3f: PUSH1 0x24
00001d41: PUSH0
00001d42: REVERT
00001d43: JUMPDEST
00001d44: POP
00001d45: SWAP2
00001d46: SWAP1
00001d47: POP
00001d48: JUMP
00001d49: JUMPDEST
00001d4a: PUSH1 0x1f
00001d4c: DUP3
00001d4d: GT
00001d4e: ISZERO
00001d4f: PUSH2 0x0a49
00001d52: JUMPI
00001d53: PUSH0
00001d54: DUP2
00001d55: DUP2
00001d56: MSTORE
00001d57: PUSH1 0x20
00001d59: DUP2
00001d5a: KECCAK256
00001d5b: PUSH1 0x1f
00001d5d: DUP6
00001d5e: ADD
00001d5f: PUSH1 0x05
00001d61: SHR
00001d62: DUP2
00001d63: ADD
00001d64: PUSH1 0x20
00001d66: DUP7
00001d67: LT
00001d68: ISZERO
00001d69: PUSH2 0x1d6f
00001d6c: JUMPI
00001d6d: POP
00001d6e: DUP1
00001d6f: JUMPDEST
00001d70: PUSH1 0x1f
00001d72: DUP6
00001d73: ADD
00001d74: PUSH1 0x05
00001d76: SHR
00001d77: DUP3
00001d78: ADD
00001d79: SWAP2
00001d7a: POP
00001d7b: JUMPDEST
00001d7c: DUP2
00001d7d: DUP2
00001d7e: LT
00001d7f: ISZERO
00001d80: PUSH2 0x0fd9
00001d83: JUMPI
00001d84: DUP3
00001d85: DUP2
00001d86: SSTORE
00001d87: PUSH1 0x01
00001d89: ADD
00001d8a: PUSH2 0x1d7b
00001d8d: JUMP
00001d8e: JUMPDEST
00001d8f: DUP2
00001d90: MLOAD
00001d91: PUSH8 0xffffffffffffffff
00001d9a: DUP2
00001d9b: GT
00001d9c: ISZERO
00001d9d: PUSH2 0x1da8
00001da0: JUMPI
00001da1: PUSH2 0x1da8
00001da4: PUSH2 0x19cb
00001da7: JUMP
00001da8: JUMPDEST
00001da9: PUSH2 0x1dbc
00001dac: DUP2
00001dad: PUSH2 0x1db6
00001db0: DUP5
00001db1: SLOAD
00001db2: PUSH2 0x1d11
00001db5: JUMP
00001db6: JUMPDEST
00001db7: DUP5
00001db8: PUSH2 0x1d49
00001dbb: JUMP
00001dbc: JUMPDEST
00001dbd: PUSH1 0x20
00001dbf: DUP1
00001dc0: PUSH1 0x1f
00001dc2: DUP4
00001dc3: GT
00001dc4: PUSH1 0x01
00001dc6: DUP2
00001dc7: EQ
00001dc8: PUSH2 0x1def
00001dcb: JUMPI
00001dcc: PUSH0
00001dcd: DUP5
00001dce: ISZERO
00001dcf: PUSH2 0x1dd8
00001dd2: JUMPI
00001dd3: POP
00001dd4: DUP6
00001dd5: DUP4
00001dd6: ADD
00001dd7: MLOAD
00001dd8: JUMPDEST
00001dd9: PUSH0
00001dda: NOT
00001ddb: PUSH1 0x03
00001ddd: DUP7
00001dde: SWAP1
00001ddf: SHL
00001de0: SHR
00001de1: NOT
00001de2: AND
00001de3: PUSH1 0x01
00001de5: DUP6
00001de6: SWAP1
00001de7: SHL
00001de8: OR
00001de9: DUP6
00001dea: SSTORE
00001deb: PUSH2 0x0fd9
00001dee: JUMP
00001def: JUMPDEST
00001df0: PUSH0
00001df1: DUP6
00001df2: DUP2
00001df3: MSTORE
00001df4: PUSH1 0x20
00001df6: DUP2
00001df7: KECCAK256
00001df8: PUSH1 0x1f
00001dfa: NOT
00001dfb: DUP7
00001dfc: AND
00001dfd: SWAP2
00001dfe: JUMPDEST
00001dff: DUP3
00001e00: DUP2
00001e01: LT
00001e02: ISZERO
00001e03: PUSH2 0x1e1d
00001e06: JUMPI
00001e07: DUP9
00001e08: DUP7
00001e09: ADD
00001e0a: MLOAD
00001e0b: DUP3
00001e0c: SSTORE
00001e0d: SWAP5
00001e0e: DUP5
00001e0f: ADD
00001e10: SWAP5
00001e11: PUSH1 0x01
00001e13: SWAP1
00001e14: SWAP2
00001e15: ADD
00001e16: SWAP1
00001e17: DUP5
00001e18: ADD
00001e19: PUSH2 0x1dfe
00001e1c: JUMP
00001e1d: JUMPDEST
00001e1e: POP
00001e1f: DUP6
00001e20: DUP3
00001e21: LT
00001e22: ISZERO
00001e23: PUSH2 0x1e3a
00001e26: JUMPI
00001e27: DUP8
00001e28: DUP6
00001e29: ADD
00001e2a: MLOAD
00001e2b: PUSH0
00001e2c: NOT
00001e2d: PUSH1 0x03
00001e2f: DUP9
00001e30: SWAP1
00001e31: SHL
00001e32: PUSH1 0xf8
00001e34: AND
00001e35: SHR
00001e36: NOT
00001e37: AND
00001e38: DUP2
00001e39: SSTORE
00001e3a: JUMPDEST
00001e3b: POP
00001e3c: POP
00001e3d: POP
00001e3e: POP
00001e3f: POP
00001e40: PUSH1 0x01
00001e42: SWAP1
00001e43: DUP2
00001e44: SHL
00001e45: ADD
00001e46: SWAP1
00001e47: SSTORE
00001e48: POP
00001e49: JUMP
00001e4a: JUMPDEST
00001e4b: PUSH0
00001e4c: PUSH1 0x20
00001e4e: DUP3
00001e4f: DUP5
00001e50: SUB
00001e51: SLT
00001e52: ISZERO
00001e53: PUSH2 0x1e5a
00001e56: JUMPI
00001e57: PUSH0
00001e58: DUP1
00001e59: REVERT
00001e5a: JUMPDEST
00001e5b: DUP2
00001e5c: MLOAD
00001e5d: PUSH2 0x1115
00001e60: DUP2
00001e61: PUSH2 0x194f
00001e64: JUMP
00001e65: JUMPDEST
00001e66: PUSH4 0x4e487b71
00001e6b: PUSH1 0xe0
00001e6d: SHL
00001e6e: PUSH0
00001e6f: MSTORE
00001e70: PUSH1 0x32
00001e72: PUSH1 0x04
00001e74: MSTORE
00001e75: PUSH1 0x24
00001e77: PUSH0
00001e78: REVERT
00001e79: JUMPDEST
00001e7a: PUSH0
00001e7b: PUSH1 0x01
00001e7d: DUP3
00001e7e: ADD
00001e7f: PUSH2 0x1e8a
00001e82: JUMPI
00001e83: PUSH2 0x1e8a
00001e86: PUSH2 0x1ca1
00001e89: JUMP
00001e8a: JUMPDEST
00001e8b: POP
00001e8c: PUSH1 0x01
00001e8e: ADD
00001e8f: SWAP1
00001e90: JUMP
00001e91: INVALID
00001e92: LOG2
00001e93: PUSH5 0x6970667358
00001e99: UNKNOWN(0x22)
00001e9a: SLT
00001e9b: KECCAK256
00001e9c: UNKNOWN(0xD7)
00001e9d: SELFBALANCE
00001e9e: CREATE2
00001e9f: SHR
00001ea0: UNKNOWN(0x2F)
00001ea1: UNKNOWN(0x2E)
00001ea2: UNKNOWN(0xD7)
00001ea3: XOR
00001ea4: NOT
00001ea5: UNKNOWN(0xB6)
00001ea6: DELEGATECALL
00001ea7: UNKNOWN(0xB5)
00001ea8: UNKNOWN(0xE1)
00001ea9: MSTORE8
00001eaa: CLZ
00001eab: PUSH16 0x01b17135deaca5812e49dadc9b5acb6b
00001ebc: PUSH5 0x736f6c6343
00001ec2: STOP
00001ec3: ADDMOD
00001ec4: EQ
00001ec5: STOP
00001ec6: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0xbb37422616f33ebaa2567ea007ff47ac3fa9ce5305ef8e6cd2157ce6fd98402e
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 192,
    "trace_id": "0xbb37422616f33ebaa2567ea007ff47ac3fa9ce5305ef8e6cd2157ce6fd98402e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xe4849b32",
            "selector": "0xe4849b32",
            "calldata_variants": [
                "0xe4849b32",
                "0xe4849b320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb1715cc",
            "selector": "0xeb1715cc",
            "calldata_variants": [
                "0xeb1715cc",
                "0xeb1715cc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf088d547",
            "selector": "0xf088d547",
            "calldata_variants": [
                "0xf088d547",
                "0xf088d5470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xabff0110",
            "selector": "0xabff0110",
            "calldata_variants": [
                "0xabff0110",
                "0xabff01100000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb45323b4",
            "selector": "0xb45323b4",
            "calldata_variants": [
                "0xb45323b4",
                "0xb45323b40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd86f0aab",
            "selector": "0xd86f0aab",
            "calldata_variants": [
                "0xd86f0aab",
                "0xd86f0aab0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 7846,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x57c582ea0bb075cd36a1e96b270212473bf78c960e6aebf665f7e8ae2dc76740
call_targets: 0x1123f22a0c120d07cd660759839ae746c7a778ff
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x57c582ea0bb075cd36a1e96b270212473bf78c960e6aebf665f7e8ae2dc76740",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1123f22a0c120d07cd660759839ae746c7a778ff"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xe4849b32",
            "selector": "0xe4849b32",
            "calldata_variants": [
                "0xe4849b32",
                "0xe4849b320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb1715cc",
            "selector": "0xeb1715cc",
            "calldata_variants": [
                "0xeb1715cc",
                "0xeb1715cc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf088d547",
            "selector": "0xf088d547",
            "calldata_variants": [
                "0xf088d547",
                "0xf088d5470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xabff0110",
            "selector": "0xabff0110",
            "calldata_variants": [
                "0xabff0110",
                "0xabff01100000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb45323b4",
            "selector": "0xb45323b4",
            "calldata_variants": [
                "0xb45323b4",
                "0xb45323b40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd86f0aab",
            "selector": "0xd86f0aab",
            "calldata_variants": [
                "0xd86f0aab",
                "0xd86f0aab0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 5683,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [],
    "untrusted_call_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x57c582ea0bb075cd36a1e96b270212473bf78c960e6aebf665f7e8ae2dc76740
call_targets: 0x1123f22a0c120d07cd660759839ae746c7a778ff
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x57c582ea0bb075cd36a1e96b270212473bf78c960e6aebf665f7e8ae2dc76740",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1123f22a0c120d07cd660759839ae746c7a778ff"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xe4849b32",
            "selector": "0xe4849b32",
            "calldata_variants": [
                "0xe4849b32",
                "0xe4849b320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb1715cc",
            "selector": "0xeb1715cc",
            "calldata_variants": [
                "0xeb1715cc",
                "0xeb1715cc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf088d547",
            "selector": "0xf088d547",
            "calldata_variants": [
                "0xf088d547",
                "0xf088d5470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xabff0110",
            "selector": "0xabff0110",
            "calldata_variants": [
                "0xabff0110",
                "0xabff01100000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb45323b4",
            "selector": "0xb45323b4",
            "calldata_variants": [
                "0xb45323b4",
                "0xb45323b40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd86f0aab",
            "selector": "0xd86f0aab",
            "calldata_variants": [
                "0xd86f0aab",
                "0xd86f0aab0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 5683,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}
high other slither Stock._sell(address,uint256) (contracts/Stock.sol#111-150) sends eth to arbitrary user 85 no
view
evidence_json
{
    "impact": "High",
    "detector": "arbitrary-send-eth",
    "elements": [
        {
            "name": "_sell",
            "type": "function",
            "source_mapping": {
                "lines": [
                    111,
                    112,
                    113,
                    114,
                    115,
                    116,
                    117,
                    118,
                    119,
                    120,
                    121,
                    122,
                    123,
                    124,
                    125,
                    126,
                    127,
                    128,
                    129,
                    130,
                    131,
                    132,
                    133,
                    134,
                    135,
                    136,
                    137,
                    138,
                    139,
                    140,
                    141,
                    142,
                    143,
                    144,
                    145,
                    146,
                    147,
                    148,
                    149,
                    150
                ],
                "start": 2645,
                "length": 1143,
                "ending_column": 3,
                "is_dependency": false,
                "filename_short": "contracts/Stock.sol",
                "starting_column": 2,
                "filename_absolute": "/tmp/slither-z05148xz/contracts/Stock.sol",
                "filename_relative": "contracts/Stock.sol"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "Stock",
                    "type": "contract",
                    "source_mapping": {
                        "lines": [
                            8,
                            9,
                            10,
                            11,
                            12,
                            13,
                            14,
                            15,
                            16,
                            17,
                            18,
                            19,
                            20,
                            21,
                            22,
                            23,
                            24,
                            25,
                            26,
                            27,
                            28,
                            29,
                            30,
                            31,
                            32,
                            33,
                            34,
                            35,
                            36,
                            37,
                            38,
                            39,
                            40,
                            41,
                            42,
                            43,
                            44,
                            45,
                            46,
                            47,
                            48,
                            49,
                            50,
                            51,
                            52,
                            53,
                            54,
                            55,
                            56,
                            57,
                            58,
                            59,
                            60,
                            61,
                            62,
                            63,
                            64,
                            65,
                            66,
                            67,
                            68,
                            69,
                            70,
                            71,
                            72,
                            73,
                            74,
                            75,
                            76,
                            77,
                            78,
                            79,
                            80,
                            81,
                            82,
                            83,
                            84,
                            85,
                            86,
                            87,
                            88,
                            89,
                            90,
                            91,
                            92,
                            93,
                            94,
                            95,
                            96,
                            97,
                            98,
                            99,
                            100,
                            101,
                            102,
                            103,
                            104,
                            105,
                            106,
                            107,
                            108,
                            109,
                            110,
                            111,
                            112,
                            113,
                            114,
                            115,
                            116,
                            117,
                            118,
                            119,
                            120,
                            121,
                            122,
                            123,
                            124,
                            125,
                            126,
                            127,
                            128,
                            129,
                            130,
                            131,
                            132,
                            133,
                            134,
                            135,
                            136,
                            137,
                            138,
                            139,
                            140,
                            141,
                            142,
                            143,
                            144,
                            145,
                            146,
                            147,
                            148,
                            149,
                            150,
                            151,
                            152,
                            153,
                            154,
                            155,
                            156,
                            157,
                            158,
                            159,
                            160,
                            161,
                            162,
                            163,
                            164,
                            165,
                            166,
                            167,
                            168,
                            169,
                            170,
                            171,
                            172,
                            173,
                            174,
                            175,
                            176,
                            177,
                            178,
                            179,
                            180,
                            181,
                            182,
                            183,
                            184,
                            185,
                            186,
                            187,
                            188,
                            189,
                            190,
                            191,
                            192,
                            193,
                            194,
                            195,
                            196,
                            197,
                            198,
                            199,
                            200,
                            201,
                            202,
                            203,
                            204,
                            205,
                            206,
                            207,
                            208,
                            209,
                            210,
                            211,
                            212,
                            213,
                            214,
                            215,
                            216,
                            217,
                            218,
                            219,
                            220,
                            221,
                            222,
                            223,
                            224,
                            225,
                            226,
                            227,
                            228,
                            229,
                            230,
                            231,
                            232,
                            233,
                            234,
                            235,
                            236,
                            237,
                            238,
                            239,
                            240,
                            241,
                            242,
                            243,
                            244,
                            245,
                            246,
                            247,
                            248,
                            249,
                            250,
                            251,
                            252,
                            253,
                            254,
                            255,
                            256,
                            257,
                            258,
                            259,
                            260,
                            261,
                            262,
                            263,
                            264,
                            265,
                            266,
                            267,
                            268,
                            269,
                            270,
                            271,
                            272,
                            273,
                            274
                        ],
                        "start": 198,
                        "length": 6926,
                        "ending_column": 2,
                        "is_dependency": false,
                        "filename_short": "contracts/Stock.sol",
                        "starting_column": 1,
                        "filename_absolute": "/tmp/slither-z05148xz/contracts/Stock.sol",
                        "filename_relative": "contracts/Stock.sol"
                    }
                },
                "signature": "_sell(address,uint256)"
            }
        },
        {
            "name": "(success,None) = __from.call{value: _totalSellAmount}()",
            "type": "node",
            "source_mapping": {
                "lines": [
                    144
                ],
                "start": 3578,
                "length": 61,
                "ending_column": 64,
                "is_dependency": false,
                "filename_short": "contracts/Stock.sol",
                "starting_column": 3,
                "filename_absolute": "/tmp/slither-z05148xz/contracts/Stock.sol",
                "filename_relative": "contracts/Stock.sol"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "_sell",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            111,
                            112,
                            113,
                            114,
                            115,
                            116,
                            117,
                            118,
                            119,
                            120,
                            121,
                            122,
                            123,
                            124,
                            125,
                            126,
                            127,
                            128,
                            129,
                            130,
                            131,
                            132,
                            133,
                            134,
                            135,
                            136,
                            137,
                            138,
                            139,
                            140,
                            141,
                            142,
                            143,
                            144,
                            145,
                            146,
                            147,
                            148,
                            149,
                            150
                        ],
                        "start": 2645,
                        "length": 1143,
                        "ending_column": 3,
                        "is_dependency": false,
                        "filename_short": "contracts/Stock.sol",
                        "starting_column": 2,
                        "filename_absolute": "/tmp/slither-z05148xz/contracts/Stock.sol",
                        "filename_relative": "contracts/Stock.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "Stock",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    8,
                                    9,
                                    10,
                                    11,
                                    12,
                                    13,
                                    14,
                                    15,
                                    16,
                                    17,
                                    18,
                                    19,
                                    20,
                                    21,
                                    22,
                                    23,
                                    24,
                                    25,
                                    26,
                                    27,
                                    28,
                                    29,
                                    30,
                                    31,
                                    32,
                                    33,
                                    34,
                                    35,
                                    36,
                                    37,
                                    38,
                                    39,
                                    40,
                                    41,
                                    42,
                                    43,
                                    44,
                                    45,
                                    46,
                                    47,
                                    48,
                                    49,
                                    50,
                                    51,
                                    52,
                                    53,
                                    54,
                                    55,
                                    56,
                                    57,
                                    58,
                                    59,
                                    60,
                                    61,
                                    62,
                                    63,
                                    64,
                                    65,
                                    66,
                                    67,
                                    68,
                                    69,
                                    70,
                                    71,
                                    72,
                                    73,
                                    74,
                                    75,
                                    76,
                                    77,
                                    78,
                                    79,
                                    80,
                                    81,
                                    82,
                                    83,
                                    84,
                                    85,
                                    86,
                                    87,
                                    88,
                                    89,
                                    90,
                                    91,
                                    92,
                                    93,
                                    94,
                                    95,
                                    96,
                                    97,
                                    98,
                                    99,
                                    100,
                                    101,
                                    102,
                                    103,
                                    104,
                                    105,
                                    106,
                                    107,
                                    108,
                                    109,
                                    110,
                                    111,
                                    112,
                                    113,
                                    114,
                                    115,
                                    116,
                                    117,
                                    118,
                                    119,
                                    120,
                                    121,
                                    122,
                                    123,
                                    124,
                                    125,
                                    126,
                                    127,
                                    128,
                                    129,
                                    130,
                                    131,
                                    132,
                                    133,
                                    134,
                                    135,
                                    136,
                                    137,
                                    138,
                                    139,
                                    140,
                                    141,
                                    142,
                                    143,
                                    144,
                                    145,
                                    146,
                                    147,
                                    148,
                                    149,
                                    150,
                                    151,
                                    152,
                                    153,
                                    154,
                                    155,
                                    156,
                                    157,
                                    158,
                                    159,
                                    160,
                                    161,
                                    162,
                                    163,
                                    164,
                                    165,
                                    166,
                                    167,
                                    168,
                                    169,
                                    170,
                                    171,
                                    172,
                                    173,
                                    174,
                                    175,
                                    176,
                                    177,
                                    178,
                                    179,
                                    180,
                                    181,
                                    182,
                                    183,
                                    184,
                                    185,
                                    186,
                                    187,
                                    188,
                                    189,
                                    190,
                                    191,
                                    192,
                                    193,
                                    194,
                                    195,
                                    196,
                                    197,
                                    198,
                                    199,
                                    200,
                                    201,
                                    202,
                                    203,
                                    204,
                                    205,
                                    206,
                                    207,
                                    208,
                                    209,
                                    210,
                                    211,
                                    212,
                                    213,
                                    214,
                                    215,
                                    216,
                                    217,
                                    218,
                                    219,
                                    220,
                                    221,
                                    222,
                                    223,
                                    224,
                                    225,
                                    226,
                                    227,
                                    228,
                                    229,
                                    230,
                                    231,
                                    232,
                                    233,
                                    234,
                                    235,
                                    236,
                                    237,
                                    238,
                                    239,
                                    240,
                                    241,
                                    242,
                                    243,
                                    244,
                                    245,
                                    246,
                                    247,
                                    248,
                                    249,
                                    250,
                                    251,
                                    252,
                                    253,
                                    254,
                                    255,
                                    256,
                                    257,
                                    258,
                                    259,
                                    260,
                                    261,
                                    262,
                                    263,
                                    264,
                                    265,
                                    266,
                                    267,
                                    268,
                                    269,
                                    270,
                                    271,
                                    272,
                                    273,
                                    274
                                ],
                                "start": 198,
                                "length": 6926,
                                "ending_column": 2,
                                "is_dependency": false,
                                "filename_short": "contracts/Stock.sol",
                                "starting_column": 1,
                                "filename_absolute": "/tmp/slither-z05148xz/contracts/Stock.sol",
                                "filename_relative": "contracts/Stock.sol"
                            }
                        },
                        "signature": "_sell(address,uint256)"
                    }
                }
            }
        }
    ],
    "locations": [
        {
            "file": "contracts/Stock.sol",
            "name": "_sell",
            "type": "function",
            "lines": [
                111,
                112,
                113,
                114,
                115,
                116,
                117,
                118,
                119,
                120,
                121,
                122,
                123,
                124,
                125,
                126,
                127,
                128,
                129,
                130,
                131,
                132,
                133,
                134,
                135,
                136,
                137,
                138,
                139,
                140,
                141,
                142,
                143,
                144,
                145,
                146,
                147,
                148,
                149,
                150
            ]
        },
        {
            "file": "contracts/Stock.sol",
            "name": "(success,None) = __from.call{value: _totalSellAmount}()",
            "type": "node",
            "lines": [
                144
            ]
        }
    ],
    "description": "Stock._sell(address,uint256) (contracts/Stock.sol#111-150) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success,None) = __from.call{value: _totalSellAmount}() (contracts/Stock.sol#144)"
}
medium auth codex exerciseStockOption checks vesting for msg.sender instead of target account 75 no
view
evidence_json
{
    "evidence": "_exerciseOption uses evaluateExercisable(_msgSender(), __grantNo) before updating the option for __account, so exerciseStockOption validates the caller\u2019s vesting instead of the target\u2019s.",
    "locations": [
        "contracts/Stock.sol:219",
        "contracts/Stock.sol:224",
        "contracts/Stock.sol:206"
    ],
    "recommendation": "In _exerciseOption, compute exercisable using the target account (evaluateExercisable(__account, __grantNo)) and ensure _option.vested + __amount <= _option.granted before transferring.",
    "exploit_scenario": "An owner of a contract address calls exerciseStockOption for that contract\u2019s grant. _exerciseOption verifies exercisable options for msg.sender (the owner), not the target __account. If the owner has sufficient vested options under the same grant number, they can exercise any amount for the contract even if the contract\u2019s option is unvested or exceeds its grant, transferring tokens from broker to the contract and bypassing the intended vesting/invariant checks."
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0xa67078b05916791b1bad1fee3f2fd5d3703c4322dfc4db35738aa6aa20f7f91f
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xa67078b05916791b1bad1fee3f2fd5d3703c4322dfc4db35738aa6aa20f7f91f",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xe4849b32",
            "selector": "0xe4849b32",
            "calldata_variants": [
                "0xe4849b32",
                "0xe4849b320000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeb1715cc",
            "selector": "0xeb1715cc",
            "calldata_variants": [
                "0xeb1715cc",
                "0xeb1715cc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf088d547",
            "selector": "0xf088d547",
            "calldata_variants": [
                "0xf088d547",
                "0xf088d5470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xabff0110",
            "selector": "0xabff0110",
            "calldata_variants": [
                "0xabff0110",
                "0xabff01100000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb45323b4",
            "selector": "0xb45323b4",
            "calldata_variants": [
                "0xb45323b4",
                "0xb45323b40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd86f0aab",
            "selector": "0xd86f0aab",
            "calldata_variants": [
                "0xd86f0aab",
                "0xd86f0aab0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 1
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 0,
    "create2_count": 1
}