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

Analysis Run

019ba9e0-be33-70d3-85ba-7d14b6e68e64

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 9:47 PM
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 CALL target/value 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
38089 artifact.fetch complete 1 / 3 3 months ago
38090 proxy.resolve complete 1 / 3 3 months ago
38091 tool.cast_disasm complete 1 / 3 3 months ago
38092 analysis.bundle complete 1 / 3 3 months ago
38093 capability.graph complete 1 / 3 3 months ago
38094 detector.run complete 1 / 3 3 months ago
38095 validation.fork complete 1 / 3 3 months ago
38182 report.consolidate complete 1 / 6 3 months ago
38183 tool.slither complete 1 / 2 3 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.25 (solc-select)
View stderr
'forge clean' running (wd: /tmp/slither-dif0hscn)
'forge config --json' running
'forge build --build-info --skip ./test/** ./script/** --force' running (wd: /tmp/slither-dif0hscn)

Reentrancy in MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341):
	External calls:
	- (success,None) = transaction.destination.call{value: transaction.value}(transaction.data) (contracts/MultiSigWalletWithTimelock.sol#332)
	State variables written after the call(s):
	- transaction.executed = false (contracts/MultiSigWalletWithTimelock.sol#337)
	MultiSigWalletWithTimelock.transactions (contracts/MultiSigWalletWithTimelock.sol#22) can be used in cross function reentrancies:
	- MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341)
	- MultiSigWalletWithTimelock.getTransactionCount(bool,bool) (contracts/MultiSigWalletWithTimelock.sol#390-400)
	- MultiSigWalletWithTimelock.isEmergencyCall(uint256) (contracts/MultiSigWalletWithTimelock.sol#278-301)
	- MultiSigWalletWithTimelock.notExecuted(uint256) (contracts/MultiSigWalletWithTimelock.sol#82-86)
	- MultiSigWalletWithTimelock.submitTransaction(address,uint256,bytes) (contracts/MultiSigWalletWithTimelock.sol#241-257)
	- MultiSigWalletWithTimelock.transactionExists(uint256) (contracts/MultiSigWalletWithTimelock.sol#64-68)
	- MultiSigWalletWithTimelock.transactions (contracts/MultiSigWalletWithTimelock.sol#22)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities

Reentrancy in MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341):
	External calls:
	- (success,None) = transaction.destination.call{value: transaction.value}(transaction.data) (contracts/MultiSigWalletWithTimelock.sol#332)
	Event emitted after the call(s):
	- Execution(transactionId) (contracts/MultiSigWalletWithTimelock.sol#334)
	- ExecutionFailure(transactionId) (contracts/MultiSigWalletWithTimelock.sol#336)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-3

MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341) uses timestamp for comparisons
	Dangerous comparisons:
	- require(bool,string)(block.timestamp >= unlockTimes[transactionId],TRANSACTION_NEED_TO_UNLOCK) (contracts/MultiSigWalletWithTimelock.sol#324-327)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#block-timestamp

Low level call in MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341):
	- (success,None) = transaction.destination.call{value: transaction.value}(transaction.data) (contracts/MultiSigWalletWithTimelock.sol#332)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#low-level-calls

Parameter MultiSigWalletWithTimelock.changeRequirement(uint256)._required (contracts/MultiSigWalletWithTimelock.sol#215) is not in mixedCase
Parameter MultiSigWalletWithTimelock.changeLockSeconds(uint256)._lockSeconds (contracts/MultiSigWalletWithTimelock.sol#227) is not in mixedCase
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions

Loop condition i < owners.length (contracts/MultiSigWalletWithTimelock.sol#378) should use cached array length instead of referencing `length` member of the storage array.
 Loop condition i < emergencyCalls.length (contracts/MultiSigWalletWithTimelock.sol#285) should use cached array length instead of referencing `length` member of the storage array.
 Loop condition i < owners.length (contracts/MultiSigWalletWithTimelock.sol#426) should use cached array length instead of referencing `length` member of the storage array.
 Loop condition i < owners.length (contracts/MultiSigWalletWithTimelock.sol#199) should use cached array length instead of referencing `length` member of the storage array.
 Loop condition i < owners.length (contracts/MultiSigWalletWithTimelock.sol#354) should use cached array length instead of referencing `length` member of the storage array.
 Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#cache-array-length
. analyzed (1 contracts with 100 detectors), 11 result(s) found
Metadata
{
    "solc": {
        "status": "ok",
        "use_rc": 0,
        "version": "0.8.25",
        "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.25",
        "install_stderr": null,
        "install_stdout": "Installing solc '0.8.25'...\nVersion '0.8.25' installed."
    },
    "solc_args": "--base-path /tmp/slither-dif0hscn --allow-paths /tmp/slither-dif0hscn,/tmp/slither-dif0hscn/lib,/tmp/slither-dif0hscn/src",
    "remappings": [],
    "source_files": [
        "contracts/MultiSigWalletWithTimelock.sol"
    ],
    "contract_count": 0,
    "contract_names": [],
    "detector_count": 11,
    "workspace_hash": "2bf0ef932787159eb8a1761a5326743592fb575bf6d99a2d91ec77af18400f85",
    "duration_seconds": 1.0329816341400146,
    "solc_version_requested": "0.8.25"
}

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Identified two timelock-logic flaws that allow bypassing or shortening the intended delay on transactions.
View stdout
{"no_findings":false,"summary":"Identified two timelock-logic flaws that allow bypassing or shortening the intended delay on transactions.","findings":[{"severity":"medium","category":"access_control","title":"Timelock bypass for any destination via emergency selector match","exploit_scenario":"Owners submit a transaction to an attacker-controlled contract that implements `setMarketBorrowUsability(uint16,bool)`. Because the calldata selector/length matches an emergency pattern, `unlockTimes` is never set, so the transaction can execute immediately once confirmations reach the threshold, bypassing the timelock even though the destination is not the intended emergency target.","recommendation":"Bind emergency-call exemptions to specific destination addresses (or full calldata hashes) instead of selector/length alone, or remove the bypass. At minimum, maintain a whitelist of allowed destinations for each emergency selector and enforce it in `isEmergencyCall`.","evidence":"`confirmTransaction` only sets `unlockTimes` when `!isEmergencyCall(...)`, and `isEmergencyCall` checks only selector and calldata length, not destination.","locations":["contracts/MultiSigWalletWithTimelock.sol:271","contracts/MultiSigWalletWithTimelock.sol:278"]},{"severity":"medium","category":"access_control","title":"Unlock time persists after revocation, enabling immediate execution after re-confirmation","exploit_scenario":"Owners reach the confirmation threshold to set `unlockTimes`, then revoke to drop below the threshold. After the unlock time passes, they can re-confirm and execute immediately, bypassing the intended delay from the final approval. Observers could be misled into thinking the transaction is inactive until it suddenly executes without a fresh timelock window.","recommendation":"Clear or recompute `unlockTimes[transactionId]` when confirmations fall below `required`, or store and enforce a `lastThresholdReachedAt` that updates every time the required confirmation count is regained.","evidence":"`confirmTransaction` sets `unlockTimes` once when the threshold is met, but `revokeConfirmation` does not reset it; `executeTransaction` only checks the stored `unlockTimes`.","locations":["contracts/MultiSigWalletWithTimelock.sol:271","contracts/MultiSigWalletWithTimelock.sol:306","contracts/MultiSigWalletWithTimelock.sol:324"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-o11gq_z8
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019baa71-3131-7841-8197-a23fc129d6bb
--------
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**
exec
/bin/bash -lc ls in /tmp/codex-o11gq_z8 succeeded in 9ms:
AUDIT_BUNDLE.txt
codex-output-schema.json
contracts
exec
/bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-o11gq_z8 succeeded in 5ms:
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/MultiSigWalletWithTimelock.sol
================================================================================
// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

contract MultiSigWalletWithTimelock {

    uint256 constant public MAX_OWNER_COUNT = 50;
    uint256 public lockSeconds = 0;

    event Confirmation(address indexed sender, uint256 indexed transactionId);
    event Revocation(address indexed sender, uint256 indexed transactionId);
    event Submission(uint256 indexed transactionId);
    event Execution(uint256 indexed transactionId);
    event ExecutionFailure(uint256 indexed transactionId);

thinking
**Analyzing multisig timelock and emergency call risks**

I’m auditing a multisig contract with a timelock and emergency call bypass, finding two main issues: first, the emergency call bypass lets any call with a specific function selector skip the timelock regardless of destination, which could be exploited to execute malicious calls quickly; second, the timelock’s unlock time isn’t reset if confirmations are revoked and later regained, letting owners circumvent the intended delay. These vulnerabilities both fall under access control concerns and need clear documented findings with example exploit scenarios and source locations.
exec
/bin/bash -lc 'nl -ba contracts/MultiSigWalletWithTimelock.sol' in /tmp/codex-o11gq_z8 succeeded in 22ms:
     1	// SPDX-License-Identifier: MIT
     2	
     3	pragma solidity 0.8.25;
     4	
     5	contract MultiSigWalletWithTimelock {
     6	
     7	    uint256 constant public MAX_OWNER_COUNT = 50;
     8	    uint256 public lockSeconds = 0;
     9	
    10	    event Confirmation(address indexed sender, uint256 indexed transactionId);
    11	    event Revocation(address indexed sender, uint256 indexed transactionId);
    12	    event Submission(uint256 indexed transactionId);
    13	    event Execution(uint256 indexed transactionId);
    14	    event ExecutionFailure(uint256 indexed transactionId);
    15	    event Deposit(address indexed sender, uint256 value);
    16	    event OwnerAddition(address indexed owner);
    17	    event OwnerRemoval(address indexed owner);
    18	    event RequirementChange(uint256 required);
    19	    event UnlockTimeSet(uint256 indexed transactionId, uint256 confirmationTime);
    20	    event LockSecondsChange(uint256 lockSeconds);

thinking
**Drafting detailed findings JSON with line references**

I'm carefully organizing two findings about timelock bypass and unlock time handling, highlighting exploit scenarios, recommendations, evidence lines, and categorizing severity and access control. I'll produce a JSON matching the schema with precise code locations and concise summaries for the user.
codex
{"no_findings":false,"summary":"Identified two timelock-logic flaws that allow bypassing or shortening the intended delay on transactions.","findings":[{"severity":"medium","category":"access_control","title":"Timelock bypass for any destination via emergency selector match","exploit_scenario":"Owners submit a transaction to an attacker-controlled contract that implements `setMarketBorrowUsability(uint16,bool)`. Because the calldata selector/length matches an emergency pattern, `unlockTimes` is never set, so the transaction can execute immediately once confirmations reach the threshold, bypassing the timelock even though the destination is not the intended emergency target.","recommendation":"Bind emergency-call exemptions to specific destination addresses (or full calldata hashes) instead of selector/length alone, or remove the bypass. At minimum, maintain a whitelist of allowed destinations for each emergency selector and enforce it in `isEmergencyCall`.","evidence":"`confirmTransaction` only sets `unlockTimes` when `!isEmergencyCall(...)`, and `isEmergencyCall` checks only selector and calldata length, not destination.","locations":["contracts/MultiSigWalletWithTimelock.sol:271","contracts/MultiSigWalletWithTimelock.sol:278"]},{"severity":"medium","category":"access_control","title":"Unlock time persists after revocation, enabling immediate execution after re-confirmation","exploit_scenario":"Owners reach the confirmation threshold to set `unlockTimes`, then revoke to drop below the threshold. After the unlock time passes, they can re-confirm and execute immediately, bypassing the intended delay from the final approval. Observers could be misled into thinking the transaction is inactive until it suddenly executes without a fresh timelock window.","recommendation":"Clear or recompute `unlockTimes[transactionId]` when confirmations fall below `required`, or store and enforce a `lastThresholdReachedAt` that updates every time the required confirmation count is regained.","evidence":"`confirmTransaction` sets `unlockTimes` once when the threshold is met, but `revokeConfirmation` does not reset it; `executeTransaction` only checks the stored `unlockTimes`.","locations":["contracts/MultiSigWalletWithTimelock.sol:271","contracts/MultiSigWalletWithTimelock.sol:306","contracts/MultiSigWalletWithTimelock.sol:324"]}]}
tokens used
20,669
Metadata
{
    "codex": {
        "ran_at": "2026-01-11T00:26:24.401447+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 1,
        "import_count": 0,
        "first_party_contracts_count": 1
    },
    "summary": "Identified two timelock-logic flaws that allow bypassing or shortening the intended delay on transactions.",
    "raw_final": {
        "summary": "Identified two timelock-logic flaws that allow bypassing or shortening the intended delay on transactions.",
        "findings": [
            {
                "title": "Timelock bypass for any destination via emergency selector match",
                "category": "access_control",
                "evidence": "`confirmTransaction` only sets `unlockTimes` when `!isEmergencyCall(...)`, and `isEmergencyCall` checks only selector and calldata length, not destination.",
                "severity": "medium",
                "locations": [
                    "contracts/MultiSigWalletWithTimelock.sol:271",
                    "contracts/MultiSigWalletWithTimelock.sol:278"
                ],
                "recommendation": "Bind emergency-call exemptions to specific destination addresses (or full calldata hashes) instead of selector/length alone, or remove the bypass. At minimum, maintain a whitelist of allowed destinations for each emergency selector and enforce it in `isEmergencyCall`.",
                "exploit_scenario": "Owners submit a transaction to an attacker-controlled contract that implements `setMarketBorrowUsability(uint16,bool)`. Because the calldata selector/length matches an emergency pattern, `unlockTimes` is never set, so the transaction can execute immediately once confirmations reach the threshold, bypassing the timelock even though the destination is not the intended emergency target."
            },
            {
                "title": "Unlock time persists after revocation, enabling immediate execution after re-confirmation",
                "category": "access_control",
                "evidence": "`confirmTransaction` sets `unlockTimes` once when the threshold is met, but `revokeConfirmation` does not reset it; `executeTransaction` only checks the stored `unlockTimes`.",
                "severity": "medium",
                "locations": [
                    "contracts/MultiSigWalletWithTimelock.sol:271",
                    "contracts/MultiSigWalletWithTimelock.sol:306",
                    "contracts/MultiSigWalletWithTimelock.sol:324"
                ],
                "recommendation": "Clear or recompute `unlockTimes[transactionId]` when confirmations fall below `required`, or store and enforce a `lastThresholdReachedAt` that updates every time the required confirmation count is regained.",
                "exploit_scenario": "Owners reach the confirmation threshold to set `unlockTimes`, then revoke to drop below the threshold. After the unlock time passes, they can re-confirm and execute immediately, bypassing the intended delay from the final approval. Observers could be misled into thinking the transaction is inactive until it suddenly executes without a fresh timelock window."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
1
EXT*/BALANCE
0
Total opcodes
5031
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x016a
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x9ace38c2
00000019: GT
0000001a: PUSH2 0x00d1
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xc01a8c84
00000024: GT
00000025: PUSH2 0x008a
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd74f8edd
0000002f: GT
00000030: PUSH2 0x0064
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xd74f8edd
0000003a: EQ
0000003b: PUSH2 0x0501
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xdc8452cd
00000045: EQ
00000046: PUSH2 0x0516
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xe20056e6
00000050: EQ
00000051: PUSH2 0x052c
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xee22610b
0000005b: EQ
0000005c: PUSH2 0x054c
0000005f: JUMPI
00000060: PUSH2 0x01ae
00000063: JUMP
00000064: JUMPDEST
00000065: DUP1
00000066: PUSH4 0xc01a8c84
0000006b: EQ
0000006c: PUSH2 0x04ac
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xc0af0227
00000076: EQ
00000077: PUSH2 0x04cc
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0xc6427474
00000081: EQ
00000082: PUSH2 0x04e1
00000085: JUMPI
00000086: PUSH2 0x01ae
00000089: JUMP
0000008a: JUMPDEST
0000008b: DUP1
0000008c: PUSH4 0x9ace38c2
00000091: EQ
00000092: PUSH2 0x03ee
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0xa0e67e2b
0000009c: EQ
0000009d: PUSH2 0x041e
000000a0: JUMPI
000000a1: DUP1
000000a2: PUSH4 0xb5dc40c3
000000a7: EQ
000000a8: PUSH2 0x0440
000000ab: JUMPI
000000ac: DUP1
000000ad: PUSH4 0xb77bf600
000000b2: EQ
000000b3: PUSH2 0x0460
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xba51a6df
000000bd: EQ
000000be: PUSH2 0x0476
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xbfa6fddb
000000c8: EQ
000000c9: PUSH2 0x0496
000000cc: JUMPI
000000cd: PUSH2 0x01ae
000000d0: JUMP
000000d1: JUMPDEST
000000d2: DUP1
000000d3: PUSH4 0x7065cb48
000000d8: GT
000000d9: PUSH2 0x0123
000000dc: JUMPI
000000dd: DUP1
000000de: PUSH4 0x7065cb48
000000e3: EQ
000000e4: PUSH2 0x030c
000000e7: JUMPI
000000e8: DUP1
000000e9: PUSH4 0x76ac947a
000000ee: EQ
000000ef: PUSH2 0x032c
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0x784547a7
000000f9: EQ
000000fa: PUSH2 0x0359
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0x86384afc
00000104: EQ
00000105: PUSH2 0x0379
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0x8b51d13f
0000010f: EQ
00000110: PUSH2 0x03ae
00000113: JUMPI
00000114: DUP1
00000115: PUSH4 0x8c22d5d3
0000011a: EQ
0000011b: PUSH2 0x03ce
0000011e: JUMPI
0000011f: PUSH2 0x01ae
00000122: JUMP
00000123: JUMPDEST
00000124: DUP1
00000125: PUSH4 0x025e7c27
0000012a: EQ
0000012b: PUSH2 0x01e6
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0x173825d9
00000135: EQ
00000136: PUSH2 0x0223
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0x20ea8d86
00000140: EQ
00000141: PUSH2 0x0243
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0x2f54bf6e
0000014b: EQ
0000014c: PUSH2 0x0263
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0x3411c81c
00000156: EQ
00000157: PUSH2 0x02a3
0000015a: JUMPI
0000015b: DUP1
0000015c: PUSH4 0x54741525
00000161: EQ
00000162: PUSH2 0x02de
00000165: JUMPI
00000166: PUSH2 0x01ae
00000169: JUMP
0000016a: JUMPDEST
0000016b: CALLDATASIZE
0000016c: PUSH2 0x01ae
0000016f: JUMPI
00000170: CALLVALUE
00000171: ISZERO
00000172: PUSH2 0x01ac
00000175: JUMPI
00000176: PUSH1 0x40
00000178: MLOAD
00000179: CALLVALUE
0000017a: DUP2
0000017b: MSTORE
0000017c: CALLER
0000017d: SWAP1
0000017e: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c
0000019f: SWAP1
000001a0: PUSH1 0x20
000001a2: ADD
000001a3: JUMPDEST
000001a4: PUSH1 0x40
000001a6: MLOAD
000001a7: DUP1
000001a8: SWAP2
000001a9: SUB
000001aa: SWAP1
000001ab: LOG2
000001ac: JUMPDEST
000001ad: STOP
000001ae: JUMPDEST
000001af: CALLVALUE
000001b0: ISZERO
000001b1: PUSH2 0x01ac
000001b4: JUMPI
000001b5: PUSH1 0x40
000001b7: MLOAD
000001b8: CALLVALUE
000001b9: DUP2
000001ba: MSTORE
000001bb: CALLER
000001bc: SWAP1
000001bd: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c
000001de: SWAP1
000001df: PUSH1 0x20
000001e1: ADD
000001e2: PUSH2 0x01a3
000001e5: JUMP
000001e6: JUMPDEST
000001e7: CALLVALUE
000001e8: DUP1
000001e9: ISZERO
000001ea: PUSH2 0x01f2
000001ed: JUMPI
000001ee: PUSH1 0x00
000001f0: DUP1
000001f1: REVERT
000001f2: JUMPDEST
000001f3: POP
000001f4: PUSH2 0x0206
000001f7: PUSH2 0x0201
000001fa: CALLDATASIZE
000001fb: PUSH1 0x04
000001fd: PUSH2 0x19d1
00000200: JUMP
00000201: JUMPDEST
00000202: PUSH2 0x056c
00000205: JUMP
00000206: JUMPDEST
00000207: PUSH1 0x40
00000209: MLOAD
0000020a: PUSH1 0x01
0000020c: PUSH1 0x01
0000020e: PUSH1 0xa0
00000210: SHL
00000211: SUB
00000212: SWAP1
00000213: SWAP2
00000214: AND
00000215: DUP2
00000216: MSTORE
00000217: PUSH1 0x20
00000219: ADD
0000021a: JUMPDEST
0000021b: PUSH1 0x40
0000021d: MLOAD
0000021e: DUP1
0000021f: SWAP2
00000220: SUB
00000221: SWAP1
00000222: RETURN
00000223: JUMPDEST
00000224: CALLVALUE
00000225: DUP1
00000226: ISZERO
00000227: PUSH2 0x022f
0000022a: JUMPI
0000022b: PUSH1 0x00
0000022d: DUP1
0000022e: REVERT
0000022f: JUMPDEST
00000230: POP
00000231: PUSH2 0x01ac
00000234: PUSH2 0x023e
00000237: CALLDATASIZE
00000238: PUSH1 0x04
0000023a: PUSH2 0x1a06
0000023d: JUMP
0000023e: JUMPDEST
0000023f: PUSH2 0x0596
00000242: JUMP
00000243: JUMPDEST
00000244: CALLVALUE
00000245: DUP1
00000246: ISZERO
00000247: PUSH2 0x024f
0000024a: JUMPI
0000024b: PUSH1 0x00
0000024d: DUP1
0000024e: REVERT
0000024f: JUMPDEST
00000250: POP
00000251: PUSH2 0x01ac
00000254: PUSH2 0x025e
00000257: CALLDATASIZE
00000258: PUSH1 0x04
0000025a: PUSH2 0x19d1
0000025d: JUMP
0000025e: JUMPDEST
0000025f: PUSH2 0x0771
00000262: JUMP
00000263: JUMPDEST
00000264: CALLVALUE
00000265: DUP1
00000266: ISZERO
00000267: PUSH2 0x026f
0000026a: JUMPI
0000026b: PUSH1 0x00
0000026d: DUP1
0000026e: REVERT
0000026f: JUMPDEST
00000270: POP
00000271: PUSH2 0x0293
00000274: PUSH2 0x027e
00000277: CALLDATASIZE
00000278: PUSH1 0x04
0000027a: PUSH2 0x1a06
0000027d: JUMP
0000027e: JUMPDEST
0000027f: PUSH1 0x03
00000281: PUSH1 0x20
00000283: MSTORE
00000284: PUSH1 0x00
00000286: SWAP1
00000287: DUP2
00000288: MSTORE
00000289: PUSH1 0x40
0000028b: SWAP1
0000028c: KECCAK256
0000028d: SLOAD
0000028e: PUSH1 0xff
00000290: AND
00000291: DUP2
00000292: JUMP
00000293: JUMPDEST
00000294: PUSH1 0x40
00000296: MLOAD
00000297: SWAP1
00000298: ISZERO
00000299: ISZERO
0000029a: DUP2
0000029b: MSTORE
0000029c: PUSH1 0x20
0000029e: ADD
0000029f: PUSH2 0x021a
000002a2: JUMP
000002a3: JUMPDEST
000002a4: CALLVALUE
000002a5: DUP1
000002a6: ISZERO
000002a7: PUSH2 0x02af
000002aa: JUMPI
000002ab: PUSH1 0x00
000002ad: DUP1
000002ae: REVERT
000002af: JUMPDEST
000002b0: POP
000002b1: PUSH2 0x0293
000002b4: PUSH2 0x02be
000002b7: CALLDATASIZE
000002b8: PUSH1 0x04
000002ba: PUSH2 0x1a28
000002bd: JUMP
000002be: JUMPDEST
000002bf: PUSH1 0x02
000002c1: PUSH1 0x20
000002c3: SWAP1
000002c4: DUP2
000002c5: MSTORE
000002c6: PUSH1 0x00
000002c8: SWAP3
000002c9: DUP4
000002ca: MSTORE
000002cb: PUSH1 0x40
000002cd: DUP1
000002ce: DUP5
000002cf: KECCAK256
000002d0: SWAP1
000002d1: SWAP2
000002d2: MSTORE
000002d3: SWAP1
000002d4: DUP3
000002d5: MSTORE
000002d6: SWAP1
000002d7: KECCAK256
000002d8: SLOAD
000002d9: PUSH1 0xff
000002db: AND
000002dc: DUP2
000002dd: JUMP
000002de: JUMPDEST
000002df: CALLVALUE
000002e0: DUP1
000002e1: ISZERO
000002e2: PUSH2 0x02ea
000002e5: JUMPI
000002e6: PUSH1 0x00
000002e8: DUP1
000002e9: REVERT
000002ea: JUMPDEST
000002eb: POP
000002ec: PUSH2 0x02fe
000002ef: PUSH2 0x02f9
000002f2: CALLDATASIZE
000002f3: PUSH1 0x04
000002f5: PUSH2 0x1a64
000002f8: JUMP
000002f9: JUMPDEST
000002fa: PUSH2 0x08a7
000002fd: JUMP
000002fe: JUMPDEST
000002ff: PUSH1 0x40
00000301: MLOAD
00000302: SWAP1
00000303: DUP2
00000304: MSTORE
00000305: PUSH1 0x20
00000307: ADD
00000308: PUSH2 0x021a
0000030b: JUMP
0000030c: JUMPDEST
0000030d: CALLVALUE
0000030e: DUP1
0000030f: ISZERO
00000310: PUSH2 0x0318
00000313: JUMPI
00000314: PUSH1 0x00
00000316: DUP1
00000317: REVERT
00000318: JUMPDEST
00000319: POP
0000031a: PUSH2 0x01ac
0000031d: PUSH2 0x0327
00000320: CALLDATASIZE
00000321: PUSH1 0x04
00000323: PUSH2 0x1a06
00000326: JUMP
00000327: JUMPDEST
00000328: PUSH2 0x091a
0000032b: JUMP
0000032c: JUMPDEST
0000032d: CALLVALUE
0000032e: DUP1
0000032f: ISZERO
00000330: PUSH2 0x0338
00000333: JUMPI
00000334: PUSH1 0x00
00000336: DUP1
00000337: REVERT
00000338: JUMPDEST
00000339: POP
0000033a: PUSH2 0x02fe
0000033d: PUSH2 0x0347
00000340: CALLDATASIZE
00000341: PUSH1 0x04
00000343: PUSH2 0x19d1
00000346: JUMP
00000347: JUMPDEST
00000348: PUSH1 0x04
0000034a: PUSH1 0x20
0000034c: MSTORE
0000034d: PUSH1 0x00
0000034f: SWAP1
00000350: DUP2
00000351: MSTORE
00000352: PUSH1 0x40
00000354: SWAP1
00000355: KECCAK256
00000356: SLOAD
00000357: DUP2
00000358: JUMP
00000359: JUMPDEST
0000035a: CALLVALUE
0000035b: DUP1
0000035c: ISZERO
0000035d: PUSH2 0x0365
00000360: JUMPI
00000361: PUSH1 0x00
00000363: DUP1
00000364: REVERT
00000365: JUMPDEST
00000366: POP
00000367: PUSH2 0x0293
0000036a: PUSH2 0x0374
0000036d: CALLDATASIZE
0000036e: PUSH1 0x04
00000370: PUSH2 0x19d1
00000373: JUMP
00000374: JUMPDEST
00000375: PUSH2 0x0af4
00000378: JUMP
00000379: JUMPDEST
0000037a: CALLVALUE
0000037b: DUP1
0000037c: ISZERO
0000037d: PUSH2 0x0385
00000380: JUMPI
00000381: PUSH1 0x00
00000383: DUP1
00000384: REVERT
00000385: JUMPDEST
00000386: POP
00000387: PUSH2 0x0399
0000038a: PUSH2 0x0394
0000038d: CALLDATASIZE
0000038e: PUSH1 0x04
00000390: PUSH2 0x19d1
00000393: JUMP
00000394: JUMPDEST
00000395: PUSH2 0x0b88
00000398: JUMP
00000399: JUMPDEST
0000039a: PUSH1 0x40
0000039c: DUP1
0000039d: MLOAD
0000039e: SWAP3
0000039f: DUP4
000003a0: MSTORE
000003a1: PUSH1 0x20
000003a3: DUP4
000003a4: ADD
000003a5: SWAP2
000003a6: SWAP1
000003a7: SWAP2
000003a8: MSTORE
000003a9: ADD
000003aa: PUSH2 0x021a
000003ad: JUMP
000003ae: JUMPDEST
000003af: CALLVALUE
000003b0: DUP1
000003b1: ISZERO
000003b2: PUSH2 0x03ba
000003b5: JUMPI
000003b6: PUSH1 0x00
000003b8: DUP1
000003b9: REVERT
000003ba: JUMPDEST
000003bb: POP
000003bc: PUSH2 0x02fe
000003bf: PUSH2 0x03c9
000003c2: CALLDATASIZE
000003c3: PUSH1 0x04
000003c5: PUSH2 0x19d1
000003c8: JUMP
000003c9: JUMPDEST
000003ca: PUSH2 0x0bb6
000003cd: JUMP
000003ce: JUMPDEST
000003cf: CALLVALUE
000003d0: DUP1
000003d1: ISZERO
000003d2: PUSH2 0x03da
000003d5: JUMPI
000003d6: PUSH1 0x00
000003d8: DUP1
000003d9: REVERT
000003da: JUMPDEST
000003db: POP
000003dc: PUSH2 0x01ac
000003df: PUSH2 0x03e9
000003e2: CALLDATASIZE
000003e3: PUSH1 0x04
000003e5: PUSH2 0x19d1
000003e8: JUMP
000003e9: JUMPDEST
000003ea: PUSH2 0x0c32
000003ed: JUMP
000003ee: JUMPDEST
000003ef: CALLVALUE
000003f0: DUP1
000003f1: ISZERO
000003f2: PUSH2 0x03fa
000003f5: JUMPI
000003f6: PUSH1 0x00
000003f8: DUP1
000003f9: REVERT
000003fa: JUMPDEST
000003fb: POP
000003fc: PUSH2 0x040e
000003ff: PUSH2 0x0409
00000402: CALLDATASIZE
00000403: PUSH1 0x04
00000405: PUSH2 0x19d1
00000408: JUMP
00000409: JUMPDEST
0000040a: PUSH2 0x0c8c
0000040d: JUMP
0000040e: JUMPDEST
0000040f: PUSH1 0x40
00000411: MLOAD
00000412: PUSH2 0x021a
00000415: SWAP5
00000416: SWAP4
00000417: SWAP3
00000418: SWAP2
00000419: SWAP1
0000041a: PUSH2 0x1a8e
0000041d: JUMP
0000041e: JUMPDEST
0000041f: CALLVALUE
00000420: DUP1
00000421: ISZERO
00000422: PUSH2 0x042a
00000425: JUMPI
00000426: PUSH1 0x00
00000428: DUP1
00000429: REVERT
0000042a: JUMPDEST
0000042b: POP
0000042c: PUSH2 0x0433
0000042f: PUSH2 0x0d4d
00000432: JUMP
00000433: JUMPDEST
00000434: PUSH1 0x40
00000436: MLOAD
00000437: PUSH2 0x021a
0000043a: SWAP2
0000043b: SWAP1
0000043c: PUSH2 0x1afd
0000043f: JUMP
00000440: JUMPDEST
00000441: CALLVALUE
00000442: DUP1
00000443: ISZERO
00000444: PUSH2 0x044c
00000447: JUMPI
00000448: PUSH1 0x00
0000044a: DUP1
0000044b: REVERT
0000044c: JUMPDEST
0000044d: POP
0000044e: PUSH2 0x0433
00000451: PUSH2 0x045b
00000454: CALLDATASIZE
00000455: PUSH1 0x04
00000457: PUSH2 0x19d1
0000045a: JUMP
0000045b: JUMPDEST
0000045c: PUSH2 0x0daf
0000045f: JUMP
00000460: JUMPDEST
00000461: CALLVALUE
00000462: DUP1
00000463: ISZERO
00000464: PUSH2 0x046c
00000467: JUMPI
00000468: PUSH1 0x00
0000046a: DUP1
0000046b: REVERT
0000046c: JUMPDEST
0000046d: POP
0000046e: PUSH2 0x02fe
00000471: PUSH1 0x07
00000473: SLOAD
00000474: DUP2
00000475: JUMP
00000476: JUMPDEST
00000477: CALLVALUE
00000478: DUP1
00000479: ISZERO
0000047a: PUSH2 0x0482
0000047d: JUMPI
0000047e: PUSH1 0x00
00000480: DUP1
00000481: REVERT
00000482: JUMPDEST
00000483: POP
00000484: PUSH2 0x01ac
00000487: PUSH2 0x0491
0000048a: CALLDATASIZE
0000048b: PUSH1 0x04
0000048d: PUSH2 0x19d1
00000490: JUMP
00000491: JUMPDEST
00000492: PUSH2 0x0f73
00000495: JUMP
00000496: JUMPDEST
00000497: CALLVALUE
00000498: DUP1
00000499: ISZERO
0000049a: PUSH2 0x04a2
0000049d: JUMPI
0000049e: PUSH1 0x00
000004a0: DUP1
000004a1: REVERT
000004a2: JUMPDEST
000004a3: POP
000004a4: PUSH2 0x02fe
000004a7: PUSH1 0x00
000004a9: SLOAD
000004aa: DUP2
000004ab: JUMP
000004ac: JUMPDEST
000004ad: CALLVALUE
000004ae: DUP1
000004af: ISZERO
000004b0: PUSH2 0x04b8
000004b3: JUMPI
000004b4: PUSH1 0x00
000004b6: DUP1
000004b7: REVERT
000004b8: JUMPDEST
000004b9: POP
000004ba: PUSH2 0x01ac
000004bd: PUSH2 0x04c7
000004c0: CALLDATASIZE
000004c1: PUSH1 0x04
000004c3: PUSH2 0x19d1
000004c6: JUMP
000004c7: JUMPDEST
000004c8: PUSH2 0x103a
000004cb: JUMP
000004cc: JUMPDEST
000004cd: CALLVALUE
000004ce: DUP1
000004cf: ISZERO
000004d0: PUSH2 0x04d8
000004d3: JUMPI
000004d4: PUSH1 0x00
000004d6: DUP1
000004d7: REVERT
000004d8: JUMPDEST
000004d9: POP
000004da: PUSH1 0x08
000004dc: SLOAD
000004dd: PUSH2 0x02fe
000004e0: JUMP
000004e1: JUMPDEST
000004e2: CALLVALUE
000004e3: DUP1
000004e4: ISZERO
000004e5: PUSH2 0x04ed
000004e8: JUMPI
000004e9: PUSH1 0x00
000004eb: DUP1
000004ec: REVERT
000004ed: JUMPDEST
000004ee: POP
000004ef: PUSH2 0x02fe
000004f2: PUSH2 0x04fc
000004f5: CALLDATASIZE
000004f6: PUSH1 0x04
000004f8: PUSH2 0x1b4a
000004fb: JUMP
000004fc: JUMPDEST
000004fd: PUSH2 0x121d
00000500: JUMP
00000501: JUMPDEST
00000502: CALLVALUE
00000503: DUP1
00000504: ISZERO
00000505: PUSH2 0x050d
00000508: JUMPI
00000509: PUSH1 0x00
0000050b: DUP1
0000050c: REVERT
0000050d: JUMPDEST
0000050e: POP
0000050f: PUSH2 0x02fe
00000512: PUSH1 0x32
00000514: DUP2
00000515: JUMP
00000516: JUMPDEST
00000517: CALLVALUE
00000518: DUP1
00000519: ISZERO
0000051a: PUSH2 0x0522
0000051d: JUMPI
0000051e: PUSH1 0x00
00000520: DUP1
00000521: REVERT
00000522: JUMPDEST
00000523: POP
00000524: PUSH2 0x02fe
00000527: PUSH1 0x06
00000529: SLOAD
0000052a: DUP2
0000052b: JUMP
0000052c: JUMPDEST
0000052d: CALLVALUE
0000052e: DUP1
0000052f: ISZERO
00000530: PUSH2 0x0538
00000533: JUMPI
00000534: PUSH1 0x00
00000536: DUP1
00000537: REVERT
00000538: JUMPDEST
00000539: POP
0000053a: PUSH2 0x01ac
0000053d: PUSH2 0x0547
00000540: CALLDATASIZE
00000541: PUSH1 0x04
00000543: PUSH2 0x1bd1
00000546: JUMP
00000547: JUMPDEST
00000548: PUSH2 0x13b5
0000054b: JUMP
0000054c: JUMPDEST
0000054d: CALLVALUE
0000054e: DUP1
0000054f: ISZERO
00000550: PUSH2 0x0558
00000553: JUMPI
00000554: PUSH1 0x00
00000556: DUP1
00000557: REVERT
00000558: JUMPDEST
00000559: POP
0000055a: PUSH2 0x01ac
0000055d: PUSH2 0x0567
00000560: CALLDATASIZE
00000561: PUSH1 0x04
00000563: PUSH2 0x19d1
00000566: JUMP
00000567: JUMPDEST
00000568: PUSH2 0x15a6
0000056b: JUMP
0000056c: JUMPDEST
0000056d: PUSH1 0x05
0000056f: DUP2
00000570: DUP2
00000571: SLOAD
00000572: DUP2
00000573: LT
00000574: PUSH2 0x057c
00000577: JUMPI
00000578: PUSH1 0x00
0000057a: DUP1
0000057b: REVERT
0000057c: JUMPDEST
0000057d: PUSH1 0x00
0000057f: SWAP2
00000580: DUP3
00000581: MSTORE
00000582: PUSH1 0x20
00000584: SWAP1
00000585: SWAP2
00000586: KECCAK256
00000587: ADD
00000588: SLOAD
00000589: PUSH1 0x01
0000058b: PUSH1 0x01
0000058d: PUSH1 0xa0
0000058f: SHL
00000590: SUB
00000591: AND
00000592: SWAP1
00000593: POP
00000594: DUP2
00000595: JUMP
00000596: JUMPDEST
00000597: CALLER
00000598: ADDRESS
00000599: EQ
0000059a: PUSH2 0x05be
0000059d: JUMPI
0000059e: PUSH1 0x40
000005a0: MLOAD
000005a1: PUSH3 0x461bcd
000005a5: PUSH1 0xe5
000005a7: SHL
000005a8: DUP2
000005a9: MSTORE
000005aa: PUSH1 0x04
000005ac: ADD
000005ad: PUSH2 0x05b5
000005b0: SWAP1
000005b1: PUSH2 0x1bfb
000005b4: JUMP
000005b5: JUMPDEST
000005b6: PUSH1 0x40
000005b8: MLOAD
000005b9: DUP1
000005ba: SWAP2
000005bb: SUB
000005bc: SWAP1
000005bd: REVERT
000005be: JUMPDEST
000005bf: PUSH1 0x01
000005c1: PUSH1 0x01
000005c3: PUSH1 0xa0
000005c5: SHL
000005c6: SUB
000005c7: DUP2
000005c8: AND
000005c9: PUSH1 0x00
000005cb: SWAP1
000005cc: DUP2
000005cd: MSTORE
000005ce: PUSH1 0x03
000005d0: PUSH1 0x20
000005d2: MSTORE
000005d3: PUSH1 0x40
000005d5: SWAP1
000005d6: KECCAK256
000005d7: SLOAD
000005d8: DUP2
000005d9: SWAP1
000005da: PUSH1 0xff
000005dc: AND
000005dd: PUSH2 0x05f8
000005e0: JUMPI
000005e1: PUSH1 0x40
000005e3: MLOAD
000005e4: PUSH3 0x461bcd
000005e8: PUSH1 0xe5
000005ea: SHL
000005eb: DUP2
000005ec: MSTORE
000005ed: PUSH1 0x04
000005ef: ADD
000005f0: PUSH2 0x05b5
000005f3: SWAP1
000005f4: PUSH2 0x1c26
000005f7: JUMP
000005f8: JUMPDEST
000005f9: PUSH1 0x01
000005fb: PUSH1 0x01
000005fd: PUSH1 0xa0
000005ff: SHL
00000600: SUB
00000601: DUP3
00000602: AND
00000603: PUSH1 0x00
00000605: SWAP1
00000606: DUP2
00000607: MSTORE
00000608: PUSH1 0x03
0000060a: PUSH1 0x20
0000060c: MSTORE
0000060d: PUSH1 0x40
0000060f: DUP2
00000610: KECCAK256
00000611: DUP1
00000612: SLOAD
00000613: PUSH1 0xff
00000615: NOT
00000616: AND
00000617: SWAP1
00000618: SSTORE
00000619: JUMPDEST
0000061a: PUSH1 0x05
0000061c: SLOAD
0000061d: PUSH2 0x0628
00000620: SWAP1
00000621: PUSH1 0x01
00000623: SWAP1
00000624: PUSH2 0x1c68
00000627: JUMP
00000628: JUMPDEST
00000629: DUP2
0000062a: LT
0000062b: ISZERO
0000062c: PUSH2 0x06ed
0000062f: JUMPI
00000630: DUP3
00000631: PUSH1 0x01
00000633: PUSH1 0x01
00000635: PUSH1 0xa0
00000637: SHL
00000638: SUB
00000639: AND
0000063a: PUSH1 0x05
0000063c: DUP3
0000063d: DUP2
0000063e: SLOAD
0000063f: DUP2
00000640: LT
00000641: PUSH2 0x064c
00000644: JUMPI
00000645: PUSH2 0x064c
00000648: PUSH2 0x1c81
0000064b: JUMP
0000064c: JUMPDEST
0000064d: PUSH1 0x00
0000064f: SWAP2
00000650: DUP3
00000651: MSTORE
00000652: PUSH1 0x20
00000654: SWAP1
00000655: SWAP2
00000656: KECCAK256
00000657: ADD
00000658: SLOAD
00000659: PUSH1 0x01
0000065b: PUSH1 0x01
0000065d: PUSH1 0xa0
0000065f: SHL
00000660: SUB
00000661: AND
00000662: SUB
00000663: PUSH2 0x06e5
00000666: JUMPI
00000667: PUSH1 0x05
00000669: DUP1
0000066a: SLOAD
0000066b: PUSH2 0x0676
0000066e: SWAP1
0000066f: PUSH1 0x01
00000671: SWAP1
00000672: PUSH2 0x1c68
00000675: JUMP
00000676: JUMPDEST
00000677: DUP2
00000678: SLOAD
00000679: DUP2
0000067a: LT
0000067b: PUSH2 0x0686
0000067e: JUMPI
0000067f: PUSH2 0x0686
00000682: PUSH2 0x1c81
00000685: JUMP
00000686: JUMPDEST
00000687: PUSH1 0x00
00000689: SWAP2
0000068a: DUP3
0000068b: MSTORE
0000068c: PUSH1 0x20
0000068e: SWAP1
0000068f: SWAP2
00000690: KECCAK256
00000691: ADD
00000692: SLOAD
00000693: PUSH1 0x05
00000695: DUP1
00000696: SLOAD
00000697: PUSH1 0x01
00000699: PUSH1 0x01
0000069b: PUSH1 0xa0
0000069d: SHL
0000069e: SUB
0000069f: SWAP1
000006a0: SWAP3
000006a1: AND
000006a2: SWAP2
000006a3: DUP4
000006a4: SWAP1
000006a5: DUP2
000006a6: LT
000006a7: PUSH2 0x06b2
000006aa: JUMPI
000006ab: PUSH2 0x06b2
000006ae: PUSH2 0x1c81
000006b1: JUMP
000006b2: JUMPDEST
000006b3: SWAP1
000006b4: PUSH1 0x00
000006b6: MSTORE
000006b7: PUSH1 0x20
000006b9: PUSH1 0x00
000006bb: KECCAK256
000006bc: ADD
000006bd: PUSH1 0x00
000006bf: PUSH2 0x0100
000006c2: EXP
000006c3: DUP2
000006c4: SLOAD
000006c5: DUP2
000006c6: PUSH1 0x01
000006c8: PUSH1 0x01
000006ca: PUSH1 0xa0
000006cc: SHL
000006cd: SUB
000006ce: MUL
000006cf: NOT
000006d0: AND
000006d1: SWAP1
000006d2: DUP4
000006d3: PUSH1 0x01
000006d5: PUSH1 0x01
000006d7: PUSH1 0xa0
000006d9: SHL
000006da: SUB
000006db: AND
000006dc: MUL
000006dd: OR
000006de: SWAP1
000006df: SSTORE
000006e0: POP
000006e1: PUSH2 0x06ed
000006e4: JUMP
000006e5: JUMPDEST
000006e6: PUSH1 0x01
000006e8: ADD
000006e9: PUSH2 0x0619
000006ec: JUMP
000006ed: JUMPDEST
000006ee: POP
000006ef: PUSH1 0x05
000006f1: DUP1
000006f2: SLOAD
000006f3: DUP1
000006f4: PUSH2 0x06ff
000006f7: JUMPI
000006f8: PUSH2 0x06ff
000006fb: PUSH2 0x1c97
000006fe: JUMP
000006ff: JUMPDEST
00000700: PUSH1 0x00
00000702: DUP3
00000703: DUP2
00000704: MSTORE
00000705: PUSH1 0x20
00000707: SWAP1
00000708: KECCAK256
00000709: DUP2
0000070a: ADD
0000070b: PUSH1 0x00
0000070d: NOT
0000070e: SWAP1
0000070f: DUP2
00000710: ADD
00000711: DUP1
00000712: SLOAD
00000713: PUSH1 0x01
00000715: PUSH1 0x01
00000717: PUSH1 0xa0
00000719: SHL
0000071a: SUB
0000071b: NOT
0000071c: AND
0000071d: SWAP1
0000071e: SSTORE
0000071f: ADD
00000720: SWAP1
00000721: SSTORE
00000722: PUSH1 0x05
00000724: SLOAD
00000725: PUSH1 0x06
00000727: SLOAD
00000728: GT
00000729: ISZERO
0000072a: PUSH2 0x0739
0000072d: JUMPI
0000072e: PUSH1 0x05
00000730: SLOAD
00000731: PUSH2 0x0739
00000734: SWAP1
00000735: PUSH2 0x0f73
00000738: JUMP
00000739: JUMPDEST
0000073a: PUSH1 0x40
0000073c: MLOAD
0000073d: PUSH1 0x01
0000073f: PUSH1 0x01
00000741: PUSH1 0xa0
00000743: SHL
00000744: SUB
00000745: DUP4
00000746: AND
00000747: SWAP1
00000748: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90
00000769: SWAP1
0000076a: PUSH1 0x00
0000076c: SWAP1
0000076d: LOG2
0000076e: POP
0000076f: POP
00000770: JUMP
00000771: JUMPDEST
00000772: CALLER
00000773: PUSH1 0x00
00000775: DUP2
00000776: DUP2
00000777: MSTORE
00000778: PUSH1 0x03
0000077a: PUSH1 0x20
0000077c: MSTORE
0000077d: PUSH1 0x40
0000077f: SWAP1
00000780: KECCAK256
00000781: SLOAD
00000782: PUSH1 0xff
00000784: AND
00000785: PUSH2 0x07a0
00000788: JUMPI
00000789: PUSH1 0x40
0000078b: MLOAD
0000078c: PUSH3 0x461bcd
00000790: PUSH1 0xe5
00000792: SHL
00000793: DUP2
00000794: MSTORE
00000795: PUSH1 0x04
00000797: ADD
00000798: PUSH2 0x05b5
0000079b: SWAP1
0000079c: PUSH2 0x1c26
0000079f: JUMP
000007a0: JUMPDEST
000007a1: PUSH1 0x00
000007a3: DUP3
000007a4: DUP2
000007a5: MSTORE
000007a6: PUSH1 0x02
000007a8: PUSH1 0x20
000007aa: SWAP1
000007ab: DUP2
000007ac: MSTORE
000007ad: PUSH1 0x40
000007af: DUP1
000007b0: DUP4
000007b1: KECCAK256
000007b2: CALLER
000007b3: DUP1
000007b4: DUP6
000007b5: MSTORE
000007b6: SWAP3
000007b7: MSTORE
000007b8: SWAP1
000007b9: SWAP2
000007ba: KECCAK256
000007bb: SLOAD
000007bc: DUP4
000007bd: SWAP2
000007be: SWAP1
000007bf: PUSH1 0xff
000007c1: AND
000007c2: PUSH2 0x07ff
000007c5: JUMPI
000007c6: PUSH1 0x40
000007c8: MLOAD
000007c9: PUSH3 0x461bcd
000007cd: PUSH1 0xe5
000007cf: SHL
000007d0: DUP2
000007d1: MSTORE
000007d2: PUSH1 0x20
000007d4: PUSH1 0x04
000007d6: DUP3
000007d7: ADD
000007d8: MSTORE
000007d9: PUSH1 0x0f
000007db: PUSH1 0x24
000007dd: DUP3
000007de: ADD
000007df: MSTORE
000007e0: PUSH15 0x21a7a72324a926a2a22fa2a92927a9
000007f0: PUSH1 0x89
000007f2: SHL
000007f3: PUSH1 0x44
000007f5: DUP3
000007f6: ADD
000007f7: MSTORE
000007f8: PUSH1 0x64
000007fa: ADD
000007fb: PUSH2 0x05b5
000007fe: JUMP
000007ff: JUMPDEST
00000800: PUSH1 0x00
00000802: DUP5
00000803: DUP2
00000804: MSTORE
00000805: PUSH1 0x01
00000807: PUSH1 0x20
00000809: MSTORE
0000080a: PUSH1 0x40
0000080c: SWAP1
0000080d: KECCAK256
0000080e: PUSH1 0x03
00000810: ADD
00000811: SLOAD
00000812: DUP5
00000813: SWAP1
00000814: PUSH1 0xff
00000816: AND
00000817: ISZERO
00000818: PUSH2 0x0858
0000081b: JUMPI
0000081c: PUSH1 0x40
0000081e: MLOAD
0000081f: PUSH3 0x461bcd
00000823: PUSH1 0xe5
00000825: SHL
00000826: DUP2
00000827: MSTORE
00000828: PUSH1 0x20
0000082a: PUSH1 0x04
0000082c: DUP3
0000082d: ADD
0000082e: MSTORE
0000082f: PUSH1 0x12
00000831: PUSH1 0x24
00000833: DUP3
00000834: ADD
00000835: MSTORE
00000836: PUSH18 0x2727aa2fa2ac22a1aaaa22a22fa2a92927a9
00000849: PUSH1 0x71
0000084b: SHL
0000084c: PUSH1 0x44
0000084e: DUP3
0000084f: ADD
00000850: MSTORE
00000851: PUSH1 0x64
00000853: ADD
00000854: PUSH2 0x05b5
00000857: JUMP
00000858: JUMPDEST
00000859: PUSH1 0x00
0000085b: DUP6
0000085c: DUP2
0000085d: MSTORE
0000085e: PUSH1 0x02
00000860: PUSH1 0x20
00000862: SWAP1
00000863: DUP2
00000864: MSTORE
00000865: PUSH1 0x40
00000867: DUP1
00000868: DUP4
00000869: KECCAK256
0000086a: CALLER
0000086b: DUP1
0000086c: DUP6
0000086d: MSTORE
0000086e: SWAP3
0000086f: MSTORE
00000870: DUP1
00000871: DUP4
00000872: KECCAK256
00000873: DUP1
00000874: SLOAD
00000875: PUSH1 0xff
00000877: NOT
00000878: AND
00000879: SWAP1
0000087a: SSTORE
0000087b: MLOAD
0000087c: DUP8
0000087d: SWAP3
0000087e: PUSH32 0xf6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e9
0000089f: SWAP2
000008a0: LOG3
000008a1: POP
000008a2: POP
000008a3: POP
000008a4: POP
000008a5: POP
000008a6: JUMP
000008a7: JUMPDEST
000008a8: PUSH1 0x00
000008aa: DUP1
000008ab: JUMPDEST
000008ac: PUSH1 0x07
000008ae: SLOAD
000008af: DUP2
000008b0: LT
000008b1: ISZERO
000008b2: PUSH2 0x0913
000008b5: JUMPI
000008b6: DUP4
000008b7: DUP1
000008b8: ISZERO
000008b9: PUSH2 0x08d4
000008bc: JUMPI
000008bd: POP
000008be: PUSH1 0x00
000008c0: DUP2
000008c1: DUP2
000008c2: MSTORE
000008c3: PUSH1 0x01
000008c5: PUSH1 0x20
000008c7: MSTORE
000008c8: PUSH1 0x40
000008ca: SWAP1
000008cb: KECCAK256
000008cc: PUSH1 0x03
000008ce: ADD
000008cf: SLOAD
000008d0: PUSH1 0xff
000008d2: AND
000008d3: ISZERO
000008d4: JUMPDEST
000008d5: DUP1
000008d6: PUSH2 0x08f8
000008d9: JUMPI
000008da: POP
000008db: DUP3
000008dc: DUP1
000008dd: ISZERO
000008de: PUSH2 0x08f8
000008e1: JUMPI
000008e2: POP
000008e3: PUSH1 0x00
000008e5: DUP2
000008e6: DUP2
000008e7: MSTORE
000008e8: PUSH1 0x01
000008ea: PUSH1 0x20
000008ec: MSTORE
000008ed: PUSH1 0x40
000008ef: SWAP1
000008f0: KECCAK256
000008f1: PUSH1 0x03
000008f3: ADD
000008f4: SLOAD
000008f5: PUSH1 0xff
000008f7: AND
000008f8: JUMPDEST
000008f9: ISZERO
000008fa: PUSH2 0x090b
000008fd: JUMPI
000008fe: PUSH2 0x0908
00000901: PUSH1 0x01
00000903: DUP4
00000904: PUSH2 0x1cad
00000907: JUMP
00000908: JUMPDEST
00000909: SWAP2
0000090a: POP
0000090b: JUMPDEST
0000090c: PUSH1 0x01
0000090e: ADD
0000090f: PUSH2 0x08ab
00000912: JUMP
00000913: JUMPDEST
00000914: POP
00000915: SWAP3
00000916: SWAP2
00000917: POP
00000918: POP
00000919: JUMP
0000091a: JUMPDEST
0000091b: CALLER
0000091c: ADDRESS
0000091d: EQ
0000091e: PUSH2 0x0939
00000921: JUMPI
00000922: PUSH1 0x40
00000924: MLOAD
00000925: PUSH3 0x461bcd
00000929: PUSH1 0xe5
0000092b: SHL
0000092c: DUP2
0000092d: MSTORE
0000092e: PUSH1 0x04
00000930: ADD
00000931: PUSH2 0x05b5
00000934: SWAP1
00000935: PUSH2 0x1bfb
00000938: JUMP
00000939: JUMPDEST
0000093a: PUSH1 0x01
0000093c: PUSH1 0x01
0000093e: PUSH1 0xa0
00000940: SHL
00000941: SUB
00000942: DUP2
00000943: AND
00000944: PUSH1 0x00
00000946: SWAP1
00000947: DUP2
00000948: MSTORE
00000949: PUSH1 0x03
0000094b: PUSH1 0x20
0000094d: MSTORE
0000094e: PUSH1 0x40
00000950: SWAP1
00000951: KECCAK256
00000952: SLOAD
00000953: DUP2
00000954: SWAP1
00000955: PUSH1 0xff
00000957: AND
00000958: ISZERO
00000959: PUSH2 0x09a4
0000095c: JUMPI
0000095d: PUSH1 0x40
0000095f: MLOAD
00000960: PUSH3 0x461bcd
00000964: PUSH1 0xe5
00000966: SHL
00000967: DUP2
00000968: MSTORE
00000969: PUSH1 0x20
0000096b: PUSH1 0x04
0000096d: DUP3
0000096e: ADD
0000096f: MSTORE
00000970: PUSH1 0x1a
00000972: PUSH1 0x24
00000974: DUP3
00000975: ADD
00000976: MSTORE
00000977: PUSH32 0x4f574e45525f444f45535f4e4f545f45584953545f4552524f52000000000000
00000998: PUSH1 0x44
0000099a: DUP3
0000099b: ADD
0000099c: MSTORE
0000099d: PUSH1 0x64
0000099f: ADD
000009a0: PUSH2 0x05b5
000009a3: JUMP
000009a4: JUMPDEST
000009a5: DUP2
000009a6: PUSH1 0x01
000009a8: PUSH1 0x01
000009aa: PUSH1 0xa0
000009ac: SHL
000009ad: SUB
000009ae: DUP2
000009af: AND
000009b0: PUSH2 0x09ec
000009b3: JUMPI
000009b4: PUSH1 0x40
000009b6: MLOAD
000009b7: PUSH3 0x461bcd
000009bb: PUSH1 0xe5
000009bd: SHL
000009be: DUP2
000009bf: MSTORE
000009c0: PUSH1 0x20
000009c2: PUSH1 0x04
000009c4: DUP3
000009c5: ADD
000009c6: MSTORE
000009c7: PUSH1 0x0e
000009c9: PUSH1 0x24
000009cb: DUP3
000009cc: ADD
000009cd: MSTORE
000009ce: PUSH14 0x2727aa2fa72aa6262fa2a92927a9
000009dd: PUSH1 0x91
000009df: SHL
000009e0: PUSH1 0x44
000009e2: DUP3
000009e3: ADD
000009e4: MSTORE
000009e5: PUSH1 0x64
000009e7: ADD
000009e8: PUSH2 0x05b5
000009eb: JUMP
000009ec: JUMPDEST
000009ed: PUSH1 0x05
000009ef: SLOAD
000009f0: PUSH2 0x09fa
000009f3: SWAP1
000009f4: PUSH1 0x01
000009f6: PUSH2 0x1cad
000009f9: JUMP
000009fa: JUMPDEST
000009fb: PUSH1 0x06
000009fd: SLOAD
000009fe: PUSH1 0x32
00000a00: DUP3
00000a01: GT
00000a02: DUP1
00000a03: PUSH2 0x0a0b
00000a06: JUMPI
00000a07: POP
00000a08: DUP2
00000a09: DUP2
00000a0a: GT
00000a0b: JUMPDEST
00000a0c: DUP1
00000a0d: PUSH2 0x0a14
00000a10: JUMPI
00000a11: POP
00000a12: DUP1
00000a13: ISZERO
00000a14: JUMPDEST
00000a15: DUP1
00000a16: PUSH2 0x0a1d
00000a19: JUMPI
00000a1a: POP
00000a1b: DUP2
00000a1c: ISZERO
00000a1d: JUMPDEST
00000a1e: ISZERO
00000a1f: PUSH2 0x0a64
00000a22: JUMPI
00000a23: PUSH1 0x40
00000a25: MLOAD
00000a26: PUSH3 0x461bcd
00000a2a: PUSH1 0xe5
00000a2c: SHL
00000a2d: DUP2
00000a2e: MSTORE
00000a2f: PUSH1 0x20
00000a31: PUSH1 0x04
00000a33: DUP3
00000a34: ADD
00000a35: MSTORE
00000a36: PUSH1 0x17
00000a38: PUSH1 0x24
00000a3a: DUP3
00000a3b: ADD
00000a3c: MSTORE
00000a3d: PUSH23 0x2b20a624a22fa922a8aaa4a922a6a2a72a2fa2a92927a9
00000a55: PUSH1 0x49
00000a57: SHL
00000a58: PUSH1 0x44
00000a5a: DUP3
00000a5b: ADD
00000a5c: MSTORE
00000a5d: PUSH1 0x64
00000a5f: ADD
00000a60: PUSH2 0x05b5
00000a63: JUMP
00000a64: JUMPDEST
00000a65: PUSH1 0x01
00000a67: PUSH1 0x01
00000a69: PUSH1 0xa0
00000a6b: SHL
00000a6c: SUB
00000a6d: DUP6
00000a6e: AND
00000a6f: PUSH1 0x00
00000a71: DUP2
00000a72: DUP2
00000a73: MSTORE
00000a74: PUSH1 0x03
00000a76: PUSH1 0x20
00000a78: MSTORE
00000a79: PUSH1 0x40
00000a7b: DUP1
00000a7c: DUP3
00000a7d: KECCAK256
00000a7e: DUP1
00000a7f: SLOAD
00000a80: PUSH1 0xff
00000a82: NOT
00000a83: AND
00000a84: PUSH1 0x01
00000a86: SWAP1
00000a87: DUP2
00000a88: OR
00000a89: SWAP1
00000a8a: SWAP2
00000a8b: SSTORE
00000a8c: PUSH1 0x05
00000a8e: DUP1
00000a8f: SLOAD
00000a90: SWAP2
00000a91: DUP3
00000a92: ADD
00000a93: DUP2
00000a94: SSTORE
00000a95: DUP4
00000a96: MSTORE
00000a97: PUSH32 0x036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0
00000ab8: ADD
00000ab9: DUP1
00000aba: SLOAD
00000abb: PUSH1 0x01
00000abd: PUSH1 0x01
00000abf: PUSH1 0xa0
00000ac1: SHL
00000ac2: SUB
00000ac3: NOT
00000ac4: AND
00000ac5: DUP5
00000ac6: OR
00000ac7: SWAP1
00000ac8: SSTORE
00000ac9: MLOAD
00000aca: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d
00000aeb: SWAP2
00000aec: SWAP1
00000aed: LOG2
00000aee: POP
00000aef: POP
00000af0: POP
00000af1: POP
00000af2: POP
00000af3: JUMP
00000af4: JUMPDEST
00000af5: PUSH1 0x00
00000af7: DUP1
00000af8: DUP1
00000af9: JUMPDEST
00000afa: PUSH1 0x05
00000afc: SLOAD
00000afd: DUP2
00000afe: LT
00000aff: ISZERO
00000b00: PUSH2 0x0b7e
00000b03: JUMPI
00000b04: PUSH1 0x00
00000b06: DUP5
00000b07: DUP2
00000b08: MSTORE
00000b09: PUSH1 0x02
00000b0b: PUSH1 0x20
00000b0d: MSTORE
00000b0e: PUSH1 0x40
00000b10: DUP2
00000b11: KECCAK256
00000b12: PUSH1 0x05
00000b14: DUP1
00000b15: SLOAD
00000b16: SWAP2
00000b17: SWAP3
00000b18: SWAP2
00000b19: DUP5
00000b1a: SWAP1
00000b1b: DUP2
00000b1c: LT
00000b1d: PUSH2 0x0b28
00000b20: JUMPI
00000b21: PUSH2 0x0b28
00000b24: PUSH2 0x1c81
00000b27: JUMP
00000b28: JUMPDEST
00000b29: PUSH1 0x00
00000b2b: SWAP2
00000b2c: DUP3
00000b2d: MSTORE
00000b2e: PUSH1 0x20
00000b30: DUP1
00000b31: DUP4
00000b32: KECCAK256
00000b33: SWAP1
00000b34: SWAP2
00000b35: ADD
00000b36: SLOAD
00000b37: PUSH1 0x01
00000b39: PUSH1 0x01
00000b3b: PUSH1 0xa0
00000b3d: SHL
00000b3e: SUB
00000b3f: AND
00000b40: DUP4
00000b41: MSTORE
00000b42: DUP3
00000b43: ADD
00000b44: SWAP3
00000b45: SWAP1
00000b46: SWAP3
00000b47: MSTORE
00000b48: PUSH1 0x40
00000b4a: ADD
00000b4b: SWAP1
00000b4c: KECCAK256
00000b4d: SLOAD
00000b4e: PUSH1 0xff
00000b50: AND
00000b51: ISZERO
00000b52: PUSH2 0x0b63
00000b55: JUMPI
00000b56: PUSH2 0x0b60
00000b59: PUSH1 0x01
00000b5b: DUP4
00000b5c: PUSH2 0x1cad
00000b5f: JUMP
00000b60: JUMPDEST
00000b61: SWAP2
00000b62: POP
00000b63: JUMPDEST
00000b64: PUSH1 0x06
00000b66: SLOAD
00000b67: DUP3
00000b68: LT
00000b69: PUSH2 0x0b76
00000b6c: JUMPI
00000b6d: POP
00000b6e: PUSH1 0x01
00000b70: SWAP4
00000b71: SWAP3
00000b72: POP
00000b73: POP
00000b74: POP
00000b75: JUMP
00000b76: JUMPDEST
00000b77: PUSH1 0x01
00000b79: ADD
00000b7a: PUSH2 0x0af9
00000b7d: JUMP
00000b7e: JUMPDEST
00000b7f: POP
00000b80: PUSH1 0x00
00000b82: SWAP4
00000b83: SWAP3
00000b84: POP
00000b85: POP
00000b86: POP
00000b87: JUMP
00000b88: JUMPDEST
00000b89: PUSH1 0x08
00000b8b: DUP2
00000b8c: DUP2
00000b8d: SLOAD
00000b8e: DUP2
00000b8f: LT
00000b90: PUSH2 0x0b98
00000b93: JUMPI
00000b94: PUSH1 0x00
00000b96: DUP1
00000b97: REVERT
00000b98: JUMPDEST
00000b99: PUSH1 0x00
00000b9b: SWAP2
00000b9c: DUP3
00000b9d: MSTORE
00000b9e: PUSH1 0x20
00000ba0: SWAP1
00000ba1: SWAP2
00000ba2: KECCAK256
00000ba3: PUSH1 0x02
00000ba5: SWAP1
00000ba6: SWAP2
00000ba7: MUL
00000ba8: ADD
00000ba9: DUP1
00000baa: SLOAD
00000bab: PUSH1 0x01
00000bad: SWAP1
00000bae: SWAP2
00000baf: ADD
00000bb0: SLOAD
00000bb1: SWAP1
00000bb2: SWAP2
00000bb3: POP
00000bb4: DUP3
00000bb5: JUMP
00000bb6: JUMPDEST
00000bb7: PUSH1 0x00
00000bb9: DUP1
00000bba: JUMPDEST
00000bbb: PUSH1 0x05
00000bbd: SLOAD
00000bbe: DUP2
00000bbf: LT
00000bc0: ISZERO
00000bc1: PUSH2 0x0c2c
00000bc4: JUMPI
00000bc5: PUSH1 0x00
00000bc7: DUP4
00000bc8: DUP2
00000bc9: MSTORE
00000bca: PUSH1 0x02
00000bcc: PUSH1 0x20
00000bce: MSTORE
00000bcf: PUSH1 0x40
00000bd1: DUP2
00000bd2: KECCAK256
00000bd3: PUSH1 0x05
00000bd5: DUP1
00000bd6: SLOAD
00000bd7: SWAP2
00000bd8: SWAP3
00000bd9: SWAP2
00000bda: DUP5
00000bdb: SWAP1
00000bdc: DUP2
00000bdd: LT
00000bde: PUSH2 0x0be9
00000be1: JUMPI
00000be2: PUSH2 0x0be9
00000be5: PUSH2 0x1c81
00000be8: JUMP
00000be9: JUMPDEST
00000bea: PUSH1 0x00
00000bec: SWAP2
00000bed: DUP3
00000bee: MSTORE
00000bef: PUSH1 0x20
00000bf1: DUP1
00000bf2: DUP4
00000bf3: KECCAK256
00000bf4: SWAP1
00000bf5: SWAP2
00000bf6: ADD
00000bf7: SLOAD
00000bf8: PUSH1 0x01
00000bfa: PUSH1 0x01
00000bfc: PUSH1 0xa0
00000bfe: SHL
00000bff: SUB
00000c00: AND
00000c01: DUP4
00000c02: MSTORE
00000c03: DUP3
00000c04: ADD
00000c05: SWAP3
00000c06: SWAP1
00000c07: SWAP3
00000c08: MSTORE
00000c09: PUSH1 0x40
00000c0b: ADD
00000c0c: SWAP1
00000c0d: KECCAK256
00000c0e: SLOAD
00000c0f: PUSH1 0xff
00000c11: AND
00000c12: ISZERO
00000c13: PUSH2 0x0c24
00000c16: JUMPI
00000c17: PUSH2 0x0c21
00000c1a: PUSH1 0x01
00000c1c: DUP4
00000c1d: PUSH2 0x1cad
00000c20: JUMP
00000c21: JUMPDEST
00000c22: SWAP2
00000c23: POP
00000c24: JUMPDEST
00000c25: PUSH1 0x01
00000c27: ADD
00000c28: PUSH2 0x0bba
00000c2b: JUMP
00000c2c: JUMPDEST
00000c2d: POP
00000c2e: SWAP2
00000c2f: SWAP1
00000c30: POP
00000c31: JUMP
00000c32: JUMPDEST
00000c33: CALLER
00000c34: ADDRESS
00000c35: EQ
00000c36: PUSH2 0x0c51
00000c39: JUMPI
00000c3a: PUSH1 0x40
00000c3c: MLOAD
00000c3d: PUSH3 0x461bcd
00000c41: PUSH1 0xe5
00000c43: SHL
00000c44: DUP2
00000c45: MSTORE
00000c46: PUSH1 0x04
00000c48: ADD
00000c49: PUSH2 0x05b5
00000c4c: SWAP1
00000c4d: PUSH2 0x1bfb
00000c50: JUMP
00000c51: JUMPDEST
00000c52: PUSH1 0x00
00000c54: DUP2
00000c55: SWAP1
00000c56: SSTORE
00000c57: PUSH1 0x40
00000c59: MLOAD
00000c5a: DUP2
00000c5b: DUP2
00000c5c: MSTORE
00000c5d: PUSH32 0x884d6758bafbcb4b5e2e0393178ca1f3da3dd380a54ce05ab60aa59756db9dc1
00000c7e: SWAP1
00000c7f: PUSH1 0x20
00000c81: ADD
00000c82: PUSH1 0x40
00000c84: MLOAD
00000c85: DUP1
00000c86: SWAP2
00000c87: SUB
00000c88: SWAP1
00000c89: LOG1
00000c8a: POP
00000c8b: JUMP
00000c8c: JUMPDEST
00000c8d: PUSH1 0x01
00000c8f: PUSH1 0x20
00000c91: DUP2
00000c92: SWAP1
00000c93: MSTORE
00000c94: PUSH1 0x00
00000c96: SWAP2
00000c97: DUP3
00000c98: MSTORE
00000c99: PUSH1 0x40
00000c9b: SWAP1
00000c9c: SWAP2
00000c9d: KECCAK256
00000c9e: DUP1
00000c9f: SLOAD
00000ca0: SWAP2
00000ca1: DUP2
00000ca2: ADD
00000ca3: SLOAD
00000ca4: PUSH1 0x02
00000ca6: DUP3
00000ca7: ADD
00000ca8: DUP1
00000ca9: SLOAD
00000caa: PUSH1 0x01
00000cac: PUSH1 0x01
00000cae: PUSH1 0xa0
00000cb0: SHL
00000cb1: SUB
00000cb2: SWAP1
00000cb3: SWAP5
00000cb4: AND
00000cb5: SWAP4
00000cb6: SWAP2
00000cb7: SWAP3
00000cb8: SWAP2
00000cb9: PUSH2 0x0cc1
00000cbc: SWAP1
00000cbd: PUSH2 0x1cc0
00000cc0: JUMP
00000cc1: JUMPDEST
00000cc2: DUP1
00000cc3: PUSH1 0x1f
00000cc5: ADD
00000cc6: PUSH1 0x20
00000cc8: DUP1
00000cc9: SWAP2
00000cca: DIV
00000ccb: MUL
00000ccc: PUSH1 0x20
00000cce: ADD
00000ccf: PUSH1 0x40
00000cd1: MLOAD
00000cd2: SWAP1
00000cd3: DUP2
00000cd4: ADD
00000cd5: PUSH1 0x40
00000cd7: MSTORE
00000cd8: DUP1
00000cd9: SWAP3
00000cda: SWAP2
00000cdb: SWAP1
00000cdc: DUP2
00000cdd: DUP2
00000cde: MSTORE
00000cdf: PUSH1 0x20
00000ce1: ADD
00000ce2: DUP3
00000ce3: DUP1
00000ce4: SLOAD
00000ce5: PUSH2 0x0ced
00000ce8: SWAP1
00000ce9: PUSH2 0x1cc0
00000cec: JUMP
00000ced: JUMPDEST
00000cee: DUP1
00000cef: ISZERO
00000cf0: PUSH2 0x0d3a
00000cf3: JUMPI
00000cf4: DUP1
00000cf5: PUSH1 0x1f
00000cf7: LT
00000cf8: PUSH2 0x0d0f
00000cfb: JUMPI
00000cfc: PUSH2 0x0100
00000cff: DUP1
00000d00: DUP4
00000d01: SLOAD
00000d02: DIV
00000d03: MUL
00000d04: DUP4
00000d05: MSTORE
00000d06: SWAP2
00000d07: PUSH1 0x20
00000d09: ADD
00000d0a: SWAP2
00000d0b: PUSH2 0x0d3a
00000d0e: JUMP
00000d0f: JUMPDEST
00000d10: DUP3
00000d11: ADD
00000d12: SWAP2
00000d13: SWAP1
00000d14: PUSH1 0x00
00000d16: MSTORE
00000d17: PUSH1 0x20
00000d19: PUSH1 0x00
00000d1b: KECCAK256
00000d1c: SWAP1
00000d1d: JUMPDEST
00000d1e: DUP2
00000d1f: SLOAD
00000d20: DUP2
00000d21: MSTORE
00000d22: SWAP1
00000d23: PUSH1 0x01
00000d25: ADD
00000d26: SWAP1
00000d27: PUSH1 0x20
00000d29: ADD
00000d2a: DUP1
00000d2b: DUP4
00000d2c: GT
00000d2d: PUSH2 0x0d1d
00000d30: JUMPI
00000d31: DUP3
00000d32: SWAP1
00000d33: SUB
00000d34: PUSH1 0x1f
00000d36: AND
00000d37: DUP3
00000d38: ADD
00000d39: SWAP2
00000d3a: JUMPDEST
00000d3b: POP
00000d3c: POP
00000d3d: POP
00000d3e: PUSH1 0x03
00000d40: SWAP1
00000d41: SWAP4
00000d42: ADD
00000d43: SLOAD
00000d44: SWAP2
00000d45: SWAP3
00000d46: POP
00000d47: POP
00000d48: PUSH1 0xff
00000d4a: AND
00000d4b: DUP5
00000d4c: JUMP
00000d4d: JUMPDEST
00000d4e: PUSH1 0x60
00000d50: PUSH1 0x05
00000d52: DUP1
00000d53: SLOAD
00000d54: DUP1
00000d55: PUSH1 0x20
00000d57: MUL
00000d58: PUSH1 0x20
00000d5a: ADD
00000d5b: PUSH1 0x40
00000d5d: MLOAD
00000d5e: SWAP1
00000d5f: DUP2
00000d60: ADD
00000d61: PUSH1 0x40
00000d63: MSTORE
00000d64: DUP1
00000d65: SWAP3
00000d66: SWAP2
00000d67: SWAP1
00000d68: DUP2
00000d69: DUP2
00000d6a: MSTORE
00000d6b: PUSH1 0x20
00000d6d: ADD
00000d6e: DUP3
00000d6f: DUP1
00000d70: SLOAD
00000d71: DUP1
00000d72: ISZERO
00000d73: PUSH2 0x0da5
00000d76: JUMPI
00000d77: PUSH1 0x20
00000d79: MUL
00000d7a: DUP3
00000d7b: ADD
00000d7c: SWAP2
00000d7d: SWAP1
00000d7e: PUSH1 0x00
00000d80: MSTORE
00000d81: PUSH1 0x20
00000d83: PUSH1 0x00
00000d85: KECCAK256
00000d86: SWAP1
00000d87: JUMPDEST
00000d88: DUP2
00000d89: SLOAD
00000d8a: PUSH1 0x01
00000d8c: PUSH1 0x01
00000d8e: PUSH1 0xa0
00000d90: SHL
00000d91: SUB
00000d92: AND
00000d93: DUP2
00000d94: MSTORE
00000d95: PUSH1 0x01
00000d97: SWAP1
00000d98: SWAP2
00000d99: ADD
00000d9a: SWAP1
00000d9b: PUSH1 0x20
00000d9d: ADD
00000d9e: DUP1
00000d9f: DUP4
00000da0: GT
00000da1: PUSH2 0x0d87
00000da4: JUMPI
00000da5: JUMPDEST
00000da6: POP
00000da7: POP
00000da8: POP
00000da9: POP
00000daa: POP
00000dab: SWAP1
00000dac: POP
00000dad: SWAP1
00000dae: JUMP
00000daf: JUMPDEST
00000db0: PUSH1 0x05
00000db2: SLOAD
00000db3: PUSH1 0x60
00000db5: SWAP1
00000db6: PUSH1 0x00
00000db8: SWAP1
00000db9: PUSH8 0xffffffffffffffff
00000dc2: DUP2
00000dc3: GT
00000dc4: ISZERO
00000dc5: PUSH2 0x0dd0
00000dc8: JUMPI
00000dc9: PUSH2 0x0dd0
00000dcc: PUSH2 0x1cf4
00000dcf: JUMP
00000dd0: JUMPDEST
00000dd1: PUSH1 0x40
00000dd3: MLOAD
00000dd4: SWAP1
00000dd5: DUP1
00000dd6: DUP3
00000dd7: MSTORE
00000dd8: DUP1
00000dd9: PUSH1 0x20
00000ddb: MUL
00000ddc: PUSH1 0x20
00000dde: ADD
00000ddf: DUP3
00000de0: ADD
00000de1: PUSH1 0x40
00000de3: MSTORE
00000de4: DUP1
00000de5: ISZERO
00000de6: PUSH2 0x0df9
00000de9: JUMPI
00000dea: DUP2
00000deb: PUSH1 0x20
00000ded: ADD
00000dee: PUSH1 0x20
00000df0: DUP3
00000df1: MUL
00000df2: DUP1
00000df3: CALLDATASIZE
00000df4: DUP4
00000df5: CALLDATACOPY
00000df6: ADD
00000df7: SWAP1
00000df8: POP
00000df9: JUMPDEST
00000dfa: POP
00000dfb: SWAP1
00000dfc: POP
00000dfd: PUSH1 0x00
00000dff: DUP1
00000e00: JUMPDEST
00000e01: PUSH1 0x05
00000e03: SLOAD
00000e04: DUP2
00000e05: LT
00000e06: ISZERO
00000e07: PUSH2 0x0ecd
00000e0a: JUMPI
00000e0b: PUSH1 0x00
00000e0d: DUP6
00000e0e: DUP2
00000e0f: MSTORE
00000e10: PUSH1 0x02
00000e12: PUSH1 0x20
00000e14: MSTORE
00000e15: PUSH1 0x40
00000e17: DUP2
00000e18: KECCAK256
00000e19: PUSH1 0x05
00000e1b: DUP1
00000e1c: SLOAD
00000e1d: SWAP2
00000e1e: SWAP3
00000e1f: SWAP2
00000e20: DUP5
00000e21: SWAP1
00000e22: DUP2
00000e23: LT
00000e24: PUSH2 0x0e2f
00000e27: JUMPI
00000e28: PUSH2 0x0e2f
00000e2b: PUSH2 0x1c81
00000e2e: JUMP
00000e2f: JUMPDEST
00000e30: PUSH1 0x00
00000e32: SWAP2
00000e33: DUP3
00000e34: MSTORE
00000e35: PUSH1 0x20
00000e37: DUP1
00000e38: DUP4
00000e39: KECCAK256
00000e3a: SWAP1
00000e3b: SWAP2
00000e3c: ADD
00000e3d: SLOAD
00000e3e: PUSH1 0x01
00000e40: PUSH1 0x01
00000e42: PUSH1 0xa0
00000e44: SHL
00000e45: SUB
00000e46: AND
00000e47: DUP4
00000e48: MSTORE
00000e49: DUP3
00000e4a: ADD
00000e4b: SWAP3
00000e4c: SWAP1
00000e4d: SWAP3
00000e4e: MSTORE
00000e4f: PUSH1 0x40
00000e51: ADD
00000e52: SWAP1
00000e53: KECCAK256
00000e54: SLOAD
00000e55: PUSH1 0xff
00000e57: AND
00000e58: ISZERO
00000e59: PUSH2 0x0ec5
00000e5c: JUMPI
00000e5d: PUSH1 0x05
00000e5f: DUP2
00000e60: DUP2
00000e61: SLOAD
00000e62: DUP2
00000e63: LT
00000e64: PUSH2 0x0e6f
00000e67: JUMPI
00000e68: PUSH2 0x0e6f
00000e6b: PUSH2 0x1c81
00000e6e: JUMP
00000e6f: JUMPDEST
00000e70: SWAP1
00000e71: PUSH1 0x00
00000e73: MSTORE
00000e74: PUSH1 0x20
00000e76: PUSH1 0x00
00000e78: KECCAK256
00000e79: ADD
00000e7a: PUSH1 0x00
00000e7c: SWAP1
00000e7d: SLOAD
00000e7e: SWAP1
00000e7f: PUSH2 0x0100
00000e82: EXP
00000e83: SWAP1
00000e84: DIV
00000e85: PUSH1 0x01
00000e87: PUSH1 0x01
00000e89: PUSH1 0xa0
00000e8b: SHL
00000e8c: SUB
00000e8d: AND
00000e8e: DUP4
00000e8f: DUP4
00000e90: DUP2
00000e91: MLOAD
00000e92: DUP2
00000e93: LT
00000e94: PUSH2 0x0e9f
00000e97: JUMPI
00000e98: PUSH2 0x0e9f
00000e9b: PUSH2 0x1c81
00000e9e: JUMP
00000e9f: JUMPDEST
00000ea0: PUSH1 0x01
00000ea2: PUSH1 0x01
00000ea4: PUSH1 0xa0
00000ea6: SHL
00000ea7: SUB
00000ea8: SWAP1
00000ea9: SWAP3
00000eaa: AND
00000eab: PUSH1 0x20
00000ead: SWAP3
00000eae: DUP4
00000eaf: MUL
00000eb0: SWAP2
00000eb1: SWAP1
00000eb2: SWAP2
00000eb3: ADD
00000eb4: SWAP1
00000eb5: SWAP2
00000eb6: ADD
00000eb7: MSTORE
00000eb8: PUSH2 0x0ec2
00000ebb: PUSH1 0x01
00000ebd: DUP4
00000ebe: PUSH2 0x1cad
00000ec1: JUMP
00000ec2: JUMPDEST
00000ec3: SWAP2
00000ec4: POP
00000ec5: JUMPDEST
00000ec6: PUSH1 0x01
00000ec8: ADD
00000ec9: PUSH2 0x0e00
00000ecc: JUMP
00000ecd: JUMPDEST
00000ece: DUP2
00000ecf: PUSH8 0xffffffffffffffff
00000ed8: DUP2
00000ed9: GT
00000eda: ISZERO
00000edb: PUSH2 0x0ee6
00000ede: JUMPI
00000edf: PUSH2 0x0ee6
00000ee2: PUSH2 0x1cf4
00000ee5: JUMP
00000ee6: JUMPDEST
00000ee7: PUSH1 0x40
00000ee9: MLOAD
00000eea: SWAP1
00000eeb: DUP1
00000eec: DUP3
00000eed: MSTORE
00000eee: DUP1
00000eef: PUSH1 0x20
00000ef1: MUL
00000ef2: PUSH1 0x20
00000ef4: ADD
00000ef5: DUP3
00000ef6: ADD
00000ef7: PUSH1 0x40
00000ef9: MSTORE
00000efa: DUP1
00000efb: ISZERO
00000efc: PUSH2 0x0f0f
00000eff: JUMPI
00000f00: DUP2
00000f01: PUSH1 0x20
00000f03: ADD
00000f04: PUSH1 0x20
00000f06: DUP3
00000f07: MUL
00000f08: DUP1
00000f09: CALLDATASIZE
00000f0a: DUP4
00000f0b: CALLDATACOPY
00000f0c: ADD
00000f0d: SWAP1
00000f0e: POP
00000f0f: JUMPDEST
00000f10: POP
00000f11: SWAP4
00000f12: POP
00000f13: PUSH1 0x00
00000f15: SWAP1
00000f16: POP
00000f17: JUMPDEST
00000f18: DUP2
00000f19: DUP2
00000f1a: LT
00000f1b: ISZERO
00000f1c: PUSH2 0x0f6b
00000f1f: JUMPI
00000f20: DUP3
00000f21: DUP2
00000f22: DUP2
00000f23: MLOAD
00000f24: DUP2
00000f25: LT
00000f26: PUSH2 0x0f31
00000f29: JUMPI
00000f2a: PUSH2 0x0f31
00000f2d: PUSH2 0x1c81
00000f30: JUMP
00000f31: JUMPDEST
00000f32: PUSH1 0x20
00000f34: MUL
00000f35: PUSH1 0x20
00000f37: ADD
00000f38: ADD
00000f39: MLOAD
00000f3a: DUP5
00000f3b: DUP3
00000f3c: DUP2
00000f3d: MLOAD
00000f3e: DUP2
00000f3f: LT
00000f40: PUSH2 0x0f4b
00000f43: JUMPI
00000f44: PUSH2 0x0f4b
00000f47: PUSH2 0x1c81
00000f4a: JUMP
00000f4b: JUMPDEST
00000f4c: PUSH1 0x01
00000f4e: PUSH1 0x01
00000f50: PUSH1 0xa0
00000f52: SHL
00000f53: SUB
00000f54: SWAP1
00000f55: SWAP3
00000f56: AND
00000f57: PUSH1 0x20
00000f59: SWAP3
00000f5a: DUP4
00000f5b: MUL
00000f5c: SWAP2
00000f5d: SWAP1
00000f5e: SWAP2
00000f5f: ADD
00000f60: SWAP1
00000f61: SWAP2
00000f62: ADD
00000f63: MSTORE
00000f64: PUSH1 0x01
00000f66: ADD
00000f67: PUSH2 0x0f17
00000f6a: JUMP
00000f6b: JUMPDEST
00000f6c: POP
00000f6d: POP
00000f6e: POP
00000f6f: SWAP2
00000f70: SWAP1
00000f71: POP
00000f72: JUMP
00000f73: JUMPDEST
00000f74: CALLER
00000f75: ADDRESS
00000f76: EQ
00000f77: PUSH2 0x0f92
00000f7a: JUMPI
00000f7b: PUSH1 0x40
00000f7d: MLOAD
00000f7e: PUSH3 0x461bcd
00000f82: PUSH1 0xe5
00000f84: SHL
00000f85: DUP2
00000f86: MSTORE
00000f87: PUSH1 0x04
00000f89: ADD
00000f8a: PUSH2 0x05b5
00000f8d: SWAP1
00000f8e: PUSH2 0x1bfb
00000f91: JUMP
00000f92: JUMPDEST
00000f93: PUSH1 0x05
00000f95: SLOAD
00000f96: DUP2
00000f97: PUSH1 0x32
00000f99: DUP3
00000f9a: GT
00000f9b: DUP1
00000f9c: PUSH2 0x0fa4
00000f9f: JUMPI
00000fa0: POP
00000fa1: DUP2
00000fa2: DUP2
00000fa3: GT
00000fa4: JUMPDEST
00000fa5: DUP1
00000fa6: PUSH2 0x0fad
00000fa9: JUMPI
00000faa: POP
00000fab: DUP1
00000fac: ISZERO
00000fad: JUMPDEST
00000fae: DUP1
00000faf: PUSH2 0x0fb6
00000fb2: JUMPI
00000fb3: POP
00000fb4: DUP2
00000fb5: ISZERO
00000fb6: JUMPDEST
00000fb7: ISZERO
00000fb8: PUSH2 0x0ffd
00000fbb: JUMPI
00000fbc: PUSH1 0x40
00000fbe: MLOAD
00000fbf: PUSH3 0x461bcd
00000fc3: PUSH1 0xe5
00000fc5: SHL
00000fc6: DUP2
00000fc7: MSTORE
00000fc8: PUSH1 0x20
00000fca: PUSH1 0x04
00000fcc: DUP3
00000fcd: ADD
00000fce: MSTORE
00000fcf: PUSH1 0x17
00000fd1: PUSH1 0x24
00000fd3: DUP3
00000fd4: ADD
00000fd5: MSTORE
00000fd6: PUSH23 0x2b20a624a22fa922a8aaa4a922a6a2a72a2fa2a92927a9
00000fee: PUSH1 0x49
00000ff0: SHL
00000ff1: PUSH1 0x44
00000ff3: DUP3
00000ff4: ADD
00000ff5: MSTORE
00000ff6: PUSH1 0x64
00000ff8: ADD
00000ff9: PUSH2 0x05b5
00000ffc: JUMP
00000ffd: JUMPDEST
00000ffe: PUSH1 0x06
00001000: DUP4
00001001: SWAP1
00001002: SSTORE
00001003: PUSH1 0x40
00001005: MLOAD
00001006: DUP4
00001007: DUP2
00001008: MSTORE
00001009: PUSH32 0xa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a
0000102a: SWAP1
0000102b: PUSH1 0x20
0000102d: ADD
0000102e: PUSH1 0x40
00001030: MLOAD
00001031: DUP1
00001032: SWAP2
00001033: SUB
00001034: SWAP1
00001035: LOG1
00001036: POP
00001037: POP
00001038: POP
00001039: JUMP
0000103a: JUMPDEST
0000103b: CALLER
0000103c: PUSH1 0x00
0000103e: DUP2
0000103f: DUP2
00001040: MSTORE
00001041: PUSH1 0x03
00001043: PUSH1 0x20
00001045: MSTORE
00001046: PUSH1 0x40
00001048: SWAP1
00001049: KECCAK256
0000104a: SLOAD
0000104b: PUSH1 0xff
0000104d: AND
0000104e: PUSH2 0x1069
00001051: JUMPI
00001052: PUSH1 0x40
00001054: MLOAD
00001055: PUSH3 0x461bcd
00001059: PUSH1 0xe5
0000105b: SHL
0000105c: DUP2
0000105d: MSTORE
0000105e: PUSH1 0x04
00001060: ADD
00001061: PUSH2 0x05b5
00001064: SWAP1
00001065: PUSH2 0x1c26
00001068: JUMP
00001069: JUMPDEST
0000106a: PUSH1 0x00
0000106c: DUP3
0000106d: DUP2
0000106e: MSTORE
0000106f: PUSH1 0x01
00001071: PUSH1 0x20
00001073: MSTORE
00001074: PUSH1 0x40
00001076: SWAP1
00001077: KECCAK256
00001078: SLOAD
00001079: DUP3
0000107a: SWAP1
0000107b: PUSH1 0x01
0000107d: PUSH1 0x01
0000107f: PUSH1 0xa0
00001081: SHL
00001082: SUB
00001083: AND
00001084: PUSH2 0x10cf
00001087: JUMPI
00001088: PUSH1 0x40
0000108a: MLOAD
0000108b: PUSH3 0x461bcd
0000108f: PUSH1 0xe5
00001091: SHL
00001092: DUP2
00001093: MSTORE
00001094: PUSH1 0x20
00001096: PUSH1 0x04
00001098: DUP3
00001099: ADD
0000109a: MSTORE
0000109b: PUSH1 0x18
0000109d: PUSH1 0x24
0000109f: DUP3
000010a0: ADD
000010a1: MSTORE
000010a2: PUSH32 0x5452414e53414354494f4e5f4558495354535f4552524f520000000000000000
000010c3: PUSH1 0x44
000010c5: DUP3
000010c6: ADD
000010c7: MSTORE
000010c8: PUSH1 0x64
000010ca: ADD
000010cb: PUSH2 0x05b5
000010ce: JUMP
000010cf: JUMPDEST
000010d0: PUSH1 0x00
000010d2: DUP4
000010d3: DUP2
000010d4: MSTORE
000010d5: PUSH1 0x02
000010d7: PUSH1 0x20
000010d9: SWAP1
000010da: DUP2
000010db: MSTORE
000010dc: PUSH1 0x40
000010de: DUP1
000010df: DUP4
000010e0: KECCAK256
000010e1: CALLER
000010e2: DUP1
000010e3: DUP6
000010e4: MSTORE
000010e5: SWAP3
000010e6: MSTORE
000010e7: SWAP1
000010e8: SWAP2
000010e9: KECCAK256
000010ea: SLOAD
000010eb: DUP5
000010ec: SWAP2
000010ed: SWAP1
000010ee: PUSH1 0xff
000010f0: AND
000010f1: ISZERO
000010f2: PUSH2 0x1133
000010f5: JUMPI
000010f6: PUSH1 0x40
000010f8: MLOAD
000010f9: PUSH3 0x461bcd
000010fd: PUSH1 0xe5
000010ff: SHL
00001100: DUP2
00001101: MSTORE
00001102: PUSH1 0x20
00001104: PUSH1 0x04
00001106: DUP3
00001107: ADD
00001108: MSTORE
00001109: PUSH1 0x13
0000110b: PUSH1 0x24
0000110d: DUP3
0000110e: ADD
0000110f: MSTORE
00001110: PUSH19 0x2727aa2fa1a7a72324a926a2a22fa2a92927a9
00001124: PUSH1 0x69
00001126: SHL
00001127: PUSH1 0x44
00001129: DUP3
0000112a: ADD
0000112b: MSTORE
0000112c: PUSH1 0x64
0000112e: ADD
0000112f: PUSH2 0x05b5
00001132: JUMP
00001133: JUMPDEST
00001134: PUSH1 0x00
00001136: DUP6
00001137: DUP2
00001138: MSTORE
00001139: PUSH1 0x02
0000113b: PUSH1 0x20
0000113d: SWAP1
0000113e: DUP2
0000113f: MSTORE
00001140: PUSH1 0x40
00001142: DUP1
00001143: DUP4
00001144: KECCAK256
00001145: CALLER
00001146: DUP1
00001147: DUP6
00001148: MSTORE
00001149: SWAP3
0000114a: MSTORE
0000114b: DUP1
0000114c: DUP4
0000114d: KECCAK256
0000114e: DUP1
0000114f: SLOAD
00001150: PUSH1 0xff
00001152: NOT
00001153: AND
00001154: PUSH1 0x01
00001156: OR
00001157: SWAP1
00001158: SSTORE
00001159: MLOAD
0000115a: DUP8
0000115b: SWAP3
0000115c: PUSH32 0x4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef
0000117d: SWAP2
0000117e: LOG3
0000117f: PUSH2 0x1187
00001182: DUP6
00001183: PUSH2 0x0af4
00001186: JUMP
00001187: JUMPDEST
00001188: DUP1
00001189: ISZERO
0000118a: PUSH2 0x119f
0000118d: JUMPI
0000118e: POP
0000118f: PUSH1 0x00
00001191: DUP6
00001192: DUP2
00001193: MSTORE
00001194: PUSH1 0x04
00001196: PUSH1 0x20
00001198: MSTORE
00001199: PUSH1 0x40
0000119b: SWAP1
0000119c: KECCAK256
0000119d: SLOAD
0000119e: ISZERO
0000119f: JUMPDEST
000011a0: DUP1
000011a1: ISZERO
000011a2: PUSH2 0x11b1
000011a5: JUMPI
000011a6: POP
000011a7: PUSH2 0x11af
000011aa: DUP6
000011ab: PUSH2 0x17d0
000011ae: JUMP
000011af: JUMPDEST
000011b0: ISZERO
000011b1: JUMPDEST
000011b2: ISZERO
000011b3: PUSH2 0x1216
000011b6: JUMPI
000011b7: PUSH1 0x00
000011b9: DUP1
000011ba: SLOAD
000011bb: PUSH2 0x11c4
000011be: SWAP1
000011bf: TIMESTAMP
000011c0: PUSH2 0x1cad
000011c3: JUMP
000011c4: JUMPDEST
000011c5: PUSH1 0x00
000011c7: DUP8
000011c8: DUP2
000011c9: MSTORE
000011ca: PUSH1 0x04
000011cc: PUSH1 0x20
000011ce: MSTORE
000011cf: PUSH1 0x40
000011d1: SWAP1
000011d2: DUP2
000011d3: SWAP1
000011d4: KECCAK256
000011d5: DUP3
000011d6: SWAP1
000011d7: SSTORE
000011d8: MLOAD
000011d9: SWAP1
000011da: SWAP2
000011db: POP
000011dc: DUP7
000011dd: SWAP1
000011de: PUSH32 0x280af6a3ba059a74f0e894262aa07f2c4d0de1e231882263c0d7dcda111b1a44
000011ff: SWAP1
00001200: PUSH2 0x120c
00001203: SWAP1
00001204: DUP5
00001205: DUP2
00001206: MSTORE
00001207: PUSH1 0x20
00001209: ADD
0000120a: SWAP1
0000120b: JUMP
0000120c: JUMPDEST
0000120d: PUSH1 0x40
0000120f: MLOAD
00001210: DUP1
00001211: SWAP2
00001212: SUB
00001213: SWAP1
00001214: LOG2
00001215: POP
00001216: JUMPDEST
00001217: POP
00001218: POP
00001219: POP
0000121a: POP
0000121b: POP
0000121c: JUMP
0000121d: JUMPDEST
0000121e: CALLER
0000121f: PUSH1 0x00
00001221: DUP2
00001222: DUP2
00001223: MSTORE
00001224: PUSH1 0x03
00001226: PUSH1 0x20
00001228: MSTORE
00001229: PUSH1 0x40
0000122b: DUP2
0000122c: KECCAK256
0000122d: SLOAD
0000122e: SWAP1
0000122f: SWAP2
00001230: SWAP1
00001231: PUSH1 0xff
00001233: AND
00001234: PUSH2 0x124f
00001237: JUMPI
00001238: PUSH1 0x40
0000123a: MLOAD
0000123b: PUSH3 0x461bcd
0000123f: PUSH1 0xe5
00001241: SHL
00001242: DUP2
00001243: MSTORE
00001244: PUSH1 0x04
00001246: ADD
00001247: PUSH2 0x05b5
0000124a: SWAP1
0000124b: PUSH2 0x1c26
0000124e: JUMP
0000124f: JUMPDEST
00001250: DUP6
00001251: PUSH1 0x01
00001253: PUSH1 0x01
00001255: PUSH1 0xa0
00001257: SHL
00001258: SUB
00001259: DUP2
0000125a: AND
0000125b: PUSH2 0x1297
0000125e: JUMPI
0000125f: PUSH1 0x40
00001261: MLOAD
00001262: PUSH3 0x461bcd
00001266: PUSH1 0xe5
00001268: SHL
00001269: DUP2
0000126a: MSTORE
0000126b: PUSH1 0x20
0000126d: PUSH1 0x04
0000126f: DUP3
00001270: ADD
00001271: MSTORE
00001272: PUSH1 0x0e
00001274: PUSH1 0x24
00001276: DUP3
00001277: ADD
00001278: MSTORE
00001279: PUSH14 0x2727aa2fa72aa6262fa2a92927a9
00001288: PUSH1 0x91
0000128a: SHL
0000128b: PUSH1 0x44
0000128d: DUP3
0000128e: ADD
0000128f: MSTORE
00001290: PUSH1 0x64
00001292: ADD
00001293: PUSH2 0x05b5
00001296: JUMP
00001297: JUMPDEST
00001298: PUSH1 0x07
0000129a: SLOAD
0000129b: SWAP3
0000129c: POP
0000129d: PUSH1 0x40
0000129f: MLOAD
000012a0: DUP1
000012a1: PUSH1 0x80
000012a3: ADD
000012a4: PUSH1 0x40
000012a6: MSTORE
000012a7: DUP1
000012a8: DUP9
000012a9: PUSH1 0x01
000012ab: PUSH1 0x01
000012ad: PUSH1 0xa0
000012af: SHL
000012b0: SUB
000012b1: AND
000012b2: DUP2
000012b3: MSTORE
000012b4: PUSH1 0x20
000012b6: ADD
000012b7: DUP8
000012b8: DUP2
000012b9: MSTORE
000012ba: PUSH1 0x20
000012bc: ADD
000012bd: DUP7
000012be: DUP7
000012bf: DUP1
000012c0: DUP1
000012c1: PUSH1 0x1f
000012c3: ADD
000012c4: PUSH1 0x20
000012c6: DUP1
000012c7: SWAP2
000012c8: DIV
000012c9: MUL
000012ca: PUSH1 0x20
000012cc: ADD
000012cd: PUSH1 0x40
000012cf: MLOAD
000012d0: SWAP1
000012d1: DUP2
000012d2: ADD
000012d3: PUSH1 0x40
000012d5: MSTORE
000012d6: DUP1
000012d7: SWAP4
000012d8: SWAP3
000012d9: SWAP2
000012da: SWAP1
000012db: DUP2
000012dc: DUP2
000012dd: MSTORE
000012de: PUSH1 0x20
000012e0: ADD
000012e1: DUP4
000012e2: DUP4
000012e3: DUP1
000012e4: DUP3
000012e5: DUP5
000012e6: CALLDATACOPY
000012e7: PUSH1 0x00
000012e9: SWAP3
000012ea: ADD
000012eb: DUP3
000012ec: SWAP1
000012ed: MSTORE
000012ee: POP
000012ef: SWAP4
000012f0: DUP6
000012f1: MSTORE
000012f2: POP
000012f3: POP
000012f4: POP
000012f5: PUSH1 0x20
000012f7: SWAP2
000012f8: DUP3
000012f9: ADD
000012fa: DUP2
000012fb: SWAP1
000012fc: MSTORE
000012fd: DUP6
000012fe: DUP2
000012ff: MSTORE
00001300: PUSH1 0x01
00001302: DUP1
00001303: DUP4
00001304: MSTORE
00001305: PUSH1 0x40
00001307: SWAP2
00001308: DUP3
00001309: SWAP1
0000130a: KECCAK256
0000130b: DUP5
0000130c: MLOAD
0000130d: DUP2
0000130e: SLOAD
0000130f: PUSH1 0x01
00001311: PUSH1 0x01
00001313: PUSH1 0xa0
00001315: SHL
00001316: SUB
00001317: NOT
00001318: AND
00001319: PUSH1 0x01
0000131b: PUSH1 0x01
0000131d: PUSH1 0xa0
0000131f: SHL
00001320: SUB
00001321: SWAP1
00001322: SWAP2
00001323: AND
00001324: OR
00001325: DUP2
00001326: SSTORE
00001327: SWAP3
00001328: DUP5
00001329: ADD
0000132a: MLOAD
0000132b: SWAP1
0000132c: DUP4
0000132d: ADD
0000132e: SSTORE
0000132f: DUP3
00001330: ADD
00001331: MLOAD
00001332: PUSH1 0x02
00001334: DUP3
00001335: ADD
00001336: SWAP1
00001337: PUSH2 0x1340
0000133a: SWAP1
0000133b: DUP3
0000133c: PUSH2 0x1d5a
0000133f: JUMP
00001340: JUMPDEST
00001341: POP
00001342: PUSH1 0x60
00001344: SWAP2
00001345: SWAP1
00001346: SWAP2
00001347: ADD
00001348: MLOAD
00001349: PUSH1 0x03
0000134b: SWAP1
0000134c: SWAP2
0000134d: ADD
0000134e: DUP1
0000134f: SLOAD
00001350: PUSH1 0xff
00001352: NOT
00001353: AND
00001354: SWAP2
00001355: ISZERO
00001356: ISZERO
00001357: SWAP2
00001358: SWAP1
00001359: SWAP2
0000135a: OR
0000135b: SWAP1
0000135c: SSTORE
0000135d: PUSH1 0x07
0000135f: DUP1
00001360: SLOAD
00001361: PUSH1 0x01
00001363: SWAP2
00001364: SWAP1
00001365: PUSH1 0x00
00001367: SWAP1
00001368: PUSH2 0x1372
0000136b: SWAP1
0000136c: DUP5
0000136d: SWAP1
0000136e: PUSH2 0x1cad
00001371: JUMP
00001372: JUMPDEST
00001373: SWAP1
00001374: SWAP2
00001375: SSTORE
00001376: POP
00001377: POP
00001378: PUSH1 0x40
0000137a: MLOAD
0000137b: DUP4
0000137c: SWAP1
0000137d: PUSH32 0xc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e51
0000139e: SWAP1
0000139f: PUSH1 0x00
000013a1: SWAP1
000013a2: LOG2
000013a3: PUSH2 0x13ab
000013a6: DUP4
000013a7: PUSH2 0x103a
000013aa: JUMP
000013ab: JUMPDEST
000013ac: POP
000013ad: POP
000013ae: SWAP5
000013af: SWAP4
000013b0: POP
000013b1: POP
000013b2: POP
000013b3: POP
000013b4: JUMP
000013b5: JUMPDEST
000013b6: CALLER
000013b7: ADDRESS
000013b8: EQ
000013b9: PUSH2 0x13d4
000013bc: JUMPI
000013bd: PUSH1 0x40
000013bf: MLOAD
000013c0: PUSH3 0x461bcd
000013c4: PUSH1 0xe5
000013c6: SHL
000013c7: DUP2
000013c8: MSTORE
000013c9: PUSH1 0x04
000013cb: ADD
000013cc: PUSH2 0x05b5
000013cf: SWAP1
000013d0: PUSH2 0x1bfb
000013d3: JUMP
000013d4: JUMPDEST
000013d5: PUSH1 0x01
000013d7: PUSH1 0x01
000013d9: PUSH1 0xa0
000013db: SHL
000013dc: SUB
000013dd: DUP3
000013de: AND
000013df: PUSH1 0x00
000013e1: SWAP1
000013e2: DUP2
000013e3: MSTORE
000013e4: PUSH1 0x03
000013e6: PUSH1 0x20
000013e8: MSTORE
000013e9: PUSH1 0x40
000013eb: SWAP1
000013ec: KECCAK256
000013ed: SLOAD
000013ee: DUP3
000013ef: SWAP1
000013f0: PUSH1 0xff
000013f2: AND
000013f3: PUSH2 0x140e
000013f6: JUMPI
000013f7: PUSH1 0x40
000013f9: MLOAD
000013fa: PUSH3 0x461bcd
000013fe: PUSH1 0xe5
00001400: SHL
00001401: DUP2
00001402: MSTORE
00001403: PUSH1 0x04
00001405: ADD
00001406: PUSH2 0x05b5
00001409: SWAP1
0000140a: PUSH2 0x1c26
0000140d: JUMP
0000140e: JUMPDEST
0000140f: PUSH1 0x01
00001411: PUSH1 0x01
00001413: PUSH1 0xa0
00001415: SHL
00001416: SUB
00001417: DUP3
00001418: AND
00001419: PUSH1 0x00
0000141b: SWAP1
0000141c: DUP2
0000141d: MSTORE
0000141e: PUSH1 0x03
00001420: PUSH1 0x20
00001422: MSTORE
00001423: PUSH1 0x40
00001425: SWAP1
00001426: KECCAK256
00001427: SLOAD
00001428: DUP3
00001429: SWAP1
0000142a: PUSH1 0xff
0000142c: AND
0000142d: ISZERO
0000142e: PUSH2 0x1479
00001431: JUMPI
00001432: PUSH1 0x40
00001434: MLOAD
00001435: PUSH3 0x461bcd
00001439: PUSH1 0xe5
0000143b: SHL
0000143c: DUP2
0000143d: MSTORE
0000143e: PUSH1 0x20
00001440: PUSH1 0x04
00001442: DUP3
00001443: ADD
00001444: MSTORE
00001445: PUSH1 0x1a
00001447: PUSH1 0x24
00001449: DUP3
0000144a: ADD
0000144b: MSTORE
0000144c: PUSH32 0x4f574e45525f444f45535f4e4f545f45584953545f4552524f52000000000000
0000146d: PUSH1 0x44
0000146f: DUP3
00001470: ADD
00001471: MSTORE
00001472: PUSH1 0x64
00001474: ADD
00001475: PUSH2 0x05b5
00001478: JUMP
00001479: JUMPDEST
0000147a: PUSH1 0x00
0000147c: JUMPDEST
0000147d: PUSH1 0x05
0000147f: SLOAD
00001480: DUP2
00001481: LT
00001482: ISZERO
00001483: PUSH2 0x150c
00001486: JUMPI
00001487: DUP5
00001488: PUSH1 0x01
0000148a: PUSH1 0x01
0000148c: PUSH1 0xa0
0000148e: SHL
0000148f: SUB
00001490: AND
00001491: PUSH1 0x05
00001493: DUP3
00001494: DUP2
00001495: SLOAD
00001496: DUP2
00001497: LT
00001498: PUSH2 0x14a3
0000149b: JUMPI
0000149c: PUSH2 0x14a3
0000149f: PUSH2 0x1c81
000014a2: JUMP
000014a3: JUMPDEST
000014a4: PUSH1 0x00
000014a6: SWAP2
000014a7: DUP3
000014a8: MSTORE
000014a9: PUSH1 0x20
000014ab: SWAP1
000014ac: SWAP2
000014ad: KECCAK256
000014ae: ADD
000014af: SLOAD
000014b0: PUSH1 0x01
000014b2: PUSH1 0x01
000014b4: PUSH1 0xa0
000014b6: SHL
000014b7: SUB
000014b8: AND
000014b9: SUB
000014ba: PUSH2 0x1504
000014bd: JUMPI
000014be: DUP4
000014bf: PUSH1 0x05
000014c1: DUP3
000014c2: DUP2
000014c3: SLOAD
000014c4: DUP2
000014c5: LT
000014c6: PUSH2 0x14d1
000014c9: JUMPI
000014ca: PUSH2 0x14d1
000014cd: PUSH2 0x1c81
000014d0: JUMP
000014d1: JUMPDEST
000014d2: SWAP1
000014d3: PUSH1 0x00
000014d5: MSTORE
000014d6: PUSH1 0x20
000014d8: PUSH1 0x00
000014da: KECCAK256
000014db: ADD
000014dc: PUSH1 0x00
000014de: PUSH2 0x0100
000014e1: EXP
000014e2: DUP2
000014e3: SLOAD
000014e4: DUP2
000014e5: PUSH1 0x01
000014e7: PUSH1 0x01
000014e9: PUSH1 0xa0
000014eb: SHL
000014ec: SUB
000014ed: MUL
000014ee: NOT
000014ef: AND
000014f0: SWAP1
000014f1: DUP4
000014f2: PUSH1 0x01
000014f4: PUSH1 0x01
000014f6: PUSH1 0xa0
000014f8: SHL
000014f9: SUB
000014fa: AND
000014fb: MUL
000014fc: OR
000014fd: SWAP1
000014fe: SSTORE
000014ff: POP
00001500: PUSH2 0x150c
00001503: JUMP
00001504: JUMPDEST
00001505: PUSH1 0x01
00001507: ADD
00001508: PUSH2 0x147c
0000150b: JUMP
0000150c: JUMPDEST
0000150d: POP
0000150e: PUSH1 0x01
00001510: PUSH1 0x01
00001512: PUSH1 0xa0
00001514: SHL
00001515: SUB
00001516: DUP1
00001517: DUP6
00001518: AND
00001519: PUSH1 0x00
0000151b: DUP2
0000151c: DUP2
0000151d: MSTORE
0000151e: PUSH1 0x03
00001520: PUSH1 0x20
00001522: MSTORE
00001523: PUSH1 0x40
00001525: DUP1
00001526: DUP3
00001527: KECCAK256
00001528: DUP1
00001529: SLOAD
0000152a: PUSH1 0xff
0000152c: NOT
0000152d: SWAP1
0000152e: DUP2
0000152f: AND
00001530: SWAP1
00001531: SWAP2
00001532: SSTORE
00001533: SWAP4
00001534: DUP8
00001535: AND
00001536: DUP3
00001537: MSTORE
00001538: DUP1
00001539: DUP3
0000153a: KECCAK256
0000153b: DUP1
0000153c: SLOAD
0000153d: SWAP1
0000153e: SWAP5
0000153f: AND
00001540: PUSH1 0x01
00001542: OR
00001543: SWAP1
00001544: SWAP4
00001545: SSTORE
00001546: SWAP2
00001547: MLOAD
00001548: SWAP1
00001549: SWAP2
0000154a: PUSH32 0x8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b90
0000156b: SWAP2
0000156c: LOG2
0000156d: PUSH1 0x40
0000156f: MLOAD
00001570: PUSH1 0x01
00001572: PUSH1 0x01
00001574: PUSH1 0xa0
00001576: SHL
00001577: SUB
00001578: DUP5
00001579: AND
0000157a: SWAP1
0000157b: PUSH32 0xf39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d
0000159c: SWAP1
0000159d: PUSH1 0x00
0000159f: SWAP1
000015a0: LOG2
000015a1: POP
000015a2: POP
000015a3: POP
000015a4: POP
000015a5: JUMP
000015a6: JUMPDEST
000015a7: CALLER
000015a8: PUSH1 0x00
000015aa: DUP2
000015ab: DUP2
000015ac: MSTORE
000015ad: PUSH1 0x03
000015af: PUSH1 0x20
000015b1: MSTORE
000015b2: PUSH1 0x40
000015b4: SWAP1
000015b5: KECCAK256
000015b6: SLOAD
000015b7: PUSH1 0xff
000015b9: AND
000015ba: PUSH2 0x15d5
000015bd: JUMPI
000015be: PUSH1 0x40
000015c0: MLOAD
000015c1: PUSH3 0x461bcd
000015c5: PUSH1 0xe5
000015c7: SHL
000015c8: DUP2
000015c9: MSTORE
000015ca: PUSH1 0x04
000015cc: ADD
000015cd: PUSH2 0x05b5
000015d0: SWAP1
000015d1: PUSH2 0x1c26
000015d4: JUMP
000015d5: JUMPDEST
000015d6: PUSH1 0x00
000015d8: DUP3
000015d9: DUP2
000015da: MSTORE
000015db: PUSH1 0x01
000015dd: PUSH1 0x20
000015df: MSTORE
000015e0: PUSH1 0x40
000015e2: SWAP1
000015e3: KECCAK256
000015e4: PUSH1 0x03
000015e6: ADD
000015e7: SLOAD
000015e8: DUP3
000015e9: SWAP1
000015ea: PUSH1 0xff
000015ec: AND
000015ed: ISZERO
000015ee: PUSH2 0x162e
000015f1: JUMPI
000015f2: PUSH1 0x40
000015f4: MLOAD
000015f5: PUSH3 0x461bcd
000015f9: PUSH1 0xe5
000015fb: SHL
000015fc: DUP2
000015fd: MSTORE
000015fe: PUSH1 0x20
00001600: PUSH1 0x04
00001602: DUP3
00001603: ADD
00001604: MSTORE
00001605: PUSH1 0x12
00001607: PUSH1 0x24
00001609: DUP3
0000160a: ADD
0000160b: MSTORE
0000160c: PUSH18 0x2727aa2fa2ac22a1aaaa22a22fa2a92927a9
0000161f: PUSH1 0x71
00001621: SHL
00001622: PUSH1 0x44
00001624: DUP3
00001625: ADD
00001626: MSTORE
00001627: PUSH1 0x64
00001629: ADD
0000162a: PUSH2 0x05b5
0000162d: JUMP
0000162e: JUMPDEST
0000162f: PUSH1 0x00
00001631: DUP4
00001632: DUP2
00001633: MSTORE
00001634: PUSH1 0x04
00001636: PUSH1 0x20
00001638: MSTORE
00001639: PUSH1 0x40
0000163b: SWAP1
0000163c: KECCAK256
0000163d: SLOAD
0000163e: TIMESTAMP
0000163f: LT
00001640: ISZERO
00001641: PUSH2 0x168c
00001644: JUMPI
00001645: PUSH1 0x40
00001647: MLOAD
00001648: PUSH3 0x461bcd
0000164c: PUSH1 0xe5
0000164e: SHL
0000164f: DUP2
00001650: MSTORE
00001651: PUSH1 0x20
00001653: PUSH1 0x04
00001655: DUP3
00001656: ADD
00001657: MSTORE
00001658: PUSH1 0x1a
0000165a: PUSH1 0x24
0000165c: DUP3
0000165d: ADD
0000165e: MSTORE
0000165f: PUSH32 0x5452414e53414354494f4e5f4e4545445f544f5f554e4c4f434b000000000000
00001680: PUSH1 0x44
00001682: DUP3
00001683: ADD
00001684: MSTORE
00001685: PUSH1 0x64
00001687: ADD
00001688: PUSH2 0x05b5
0000168b: JUMP
0000168c: JUMPDEST
0000168d: PUSH2 0x1695
00001690: DUP4
00001691: PUSH2 0x0af4
00001694: JUMP
00001695: JUMPDEST
00001696: ISZERO
00001697: PUSH2 0x17cb
0000169a: JUMPI
0000169b: PUSH1 0x00
0000169d: DUP4
0000169e: DUP2
0000169f: MSTORE
000016a0: PUSH1 0x01
000016a2: PUSH1 0x20
000016a4: DUP2
000016a5: SWAP1
000016a6: MSTORE
000016a7: PUSH1 0x40
000016a9: DUP1
000016aa: DUP4
000016ab: KECCAK256
000016ac: PUSH1 0x03
000016ae: DUP2
000016af: ADD
000016b0: DUP1
000016b1: SLOAD
000016b2: PUSH1 0xff
000016b4: NOT
000016b5: AND
000016b6: DUP5
000016b7: OR
000016b8: SWAP1
000016b9: SSTORE
000016ba: DUP1
000016bb: SLOAD
000016bc: SWAP3
000016bd: DUP2
000016be: ADD
000016bf: SLOAD
000016c0: SWAP2
000016c1: MLOAD
000016c2: SWAP1
000016c3: SWAP4
000016c4: SWAP3
000016c5: PUSH1 0x01
000016c7: PUSH1 0x01
000016c9: PUSH1 0xa0
000016cb: SHL
000016cc: SUB
000016cd: AND
000016ce: SWAP2
000016cf: SWAP1
000016d0: PUSH2 0x16dd
000016d3: SWAP1
000016d4: PUSH1 0x02
000016d6: DUP7
000016d7: ADD
000016d8: SWAP1
000016d9: PUSH2 0x1e1a
000016dc: JUMP
000016dd: JUMPDEST
000016de: PUSH1 0x00
000016e0: PUSH1 0x40
000016e2: MLOAD
000016e3: DUP1
000016e4: DUP4
000016e5: SUB
000016e6: DUP2
000016e7: DUP6
000016e8: DUP8
000016e9: GAS
000016ea: CALL
000016eb: SWAP3
000016ec: POP
000016ed: POP
000016ee: POP
000016ef: RETURNDATASIZE
000016f0: DUP1
000016f1: PUSH1 0x00
000016f3: DUP2
000016f4: EQ
000016f5: PUSH2 0x171a
000016f8: JUMPI
000016f9: PUSH1 0x40
000016fb: MLOAD
000016fc: SWAP2
000016fd: POP
000016fe: PUSH1 0x1f
00001700: NOT
00001701: PUSH1 0x3f
00001703: RETURNDATASIZE
00001704: ADD
00001705: AND
00001706: DUP3
00001707: ADD
00001708: PUSH1 0x40
0000170a: MSTORE
0000170b: RETURNDATASIZE
0000170c: DUP3
0000170d: MSTORE
0000170e: RETURNDATASIZE
0000170f: PUSH1 0x00
00001711: PUSH1 0x20
00001713: DUP5
00001714: ADD
00001715: RETURNDATACOPY
00001716: PUSH2 0x171f
00001719: JUMP
0000171a: JUMPDEST
0000171b: PUSH1 0x60
0000171d: SWAP2
0000171e: POP
0000171f: JUMPDEST
00001720: POP
00001721: POP
00001722: SWAP1
00001723: POP
00001724: DUP1
00001725: ISZERO
00001726: PUSH2 0x1759
00001729: JUMPI
0000172a: PUSH1 0x40
0000172c: MLOAD
0000172d: DUP6
0000172e: SWAP1
0000172f: PUSH32 0x33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed75
00001750: SWAP1
00001751: PUSH1 0x00
00001753: SWAP1
00001754: LOG2
00001755: PUSH2 0x1216
00001758: JUMP
00001759: JUMPDEST
0000175a: PUSH1 0x40
0000175c: MLOAD
0000175d: DUP6
0000175e: SWAP1
0000175f: PUSH32 0x526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b79236
00001780: SWAP1
00001781: PUSH1 0x00
00001783: SWAP1
00001784: LOG2
00001785: PUSH1 0x03
00001787: DUP3
00001788: ADD
00001789: DUP1
0000178a: SLOAD
0000178b: PUSH1 0xff
0000178d: NOT
0000178e: AND
0000178f: SWAP1
00001790: SSTORE
00001791: PUSH1 0x40
00001793: MLOAD
00001794: PUSH3 0x461bcd
00001798: PUSH1 0xe5
0000179a: SHL
0000179b: DUP2
0000179c: MSTORE
0000179d: PUSH1 0x20
0000179f: PUSH1 0x04
000017a1: DUP3
000017a2: ADD
000017a3: MSTORE
000017a4: PUSH1 0x10
000017a6: PUSH1 0x24
000017a8: DUP3
000017a9: ADD
000017aa: MSTORE
000017ab: PUSH16 0x1514905394d050d51253d38811905253
000017bc: PUSH1 0x82
000017be: SHL
000017bf: PUSH1 0x44
000017c1: DUP3
000017c2: ADD
000017c3: MSTORE
000017c4: PUSH1 0x64
000017c6: ADD
000017c7: PUSH2 0x05b5
000017ca: JUMP
000017cb: JUMPDEST
000017cc: POP
000017cd: POP
000017ce: POP
000017cf: JUMP
000017d0: JUMPDEST
000017d1: PUSH1 0x00
000017d3: DUP2
000017d4: DUP2
000017d5: MSTORE
000017d6: PUSH1 0x01
000017d8: PUSH1 0x20
000017da: MSTORE
000017db: PUSH1 0x40
000017dd: DUP2
000017de: KECCAK256
000017df: PUSH1 0x02
000017e1: ADD
000017e2: DUP1
000017e3: SLOAD
000017e4: DUP3
000017e5: SWAP2
000017e6: SWAP1
000017e7: PUSH2 0x17ef
000017ea: SWAP1
000017eb: PUSH2 0x1cc0
000017ee: JUMP
000017ef: JUMPDEST
000017f0: DUP1
000017f1: PUSH1 0x1f
000017f3: ADD
000017f4: PUSH1 0x20
000017f6: DUP1
000017f7: SWAP2
000017f8: DIV
000017f9: MUL
000017fa: PUSH1 0x20
000017fc: ADD
000017fd: PUSH1 0x40
000017ff: MLOAD
00001800: SWAP1
00001801: DUP2
00001802: ADD
00001803: PUSH1 0x40
00001805: MSTORE
00001806: DUP1
00001807: SWAP3
00001808: SWAP2
00001809: SWAP1
0000180a: DUP2
0000180b: DUP2
0000180c: MSTORE
0000180d: PUSH1 0x20
0000180f: ADD
00001810: DUP3
00001811: DUP1
00001812: SLOAD
00001813: PUSH2 0x181b
00001816: SWAP1
00001817: PUSH2 0x1cc0
0000181a: JUMP
0000181b: JUMPDEST
0000181c: DUP1
0000181d: ISZERO
0000181e: PUSH2 0x1868
00001821: JUMPI
00001822: DUP1
00001823: PUSH1 0x1f
00001825: LT
00001826: PUSH2 0x183d
00001829: JUMPI
0000182a: PUSH2 0x0100
0000182d: DUP1
0000182e: DUP4
0000182f: SLOAD
00001830: DIV
00001831: MUL
00001832: DUP4
00001833: MSTORE
00001834: SWAP2
00001835: PUSH1 0x20
00001837: ADD
00001838: SWAP2
00001839: PUSH2 0x1868
0000183c: JUMP
0000183d: JUMPDEST
0000183e: DUP3
0000183f: ADD
00001840: SWAP2
00001841: SWAP1
00001842: PUSH1 0x00
00001844: MSTORE
00001845: PUSH1 0x20
00001847: PUSH1 0x00
00001849: KECCAK256
0000184a: SWAP1
0000184b: JUMPDEST
0000184c: DUP2
0000184d: SLOAD
0000184e: DUP2
0000184f: MSTORE
00001850: SWAP1
00001851: PUSH1 0x01
00001853: ADD
00001854: SWAP1
00001855: PUSH1 0x20
00001857: ADD
00001858: DUP1
00001859: DUP4
0000185a: GT
0000185b: PUSH2 0x184b
0000185e: JUMPI
0000185f: DUP3
00001860: SWAP1
00001861: SUB
00001862: PUSH1 0x1f
00001864: AND
00001865: DUP3
00001866: ADD
00001867: SWAP2
00001868: JUMPDEST
00001869: POP
0000186a: POP
0000186b: POP
0000186c: POP
0000186d: POP
0000186e: SWAP1
0000186f: POP
00001870: PUSH1 0x00
00001872: JUMPDEST
00001873: PUSH1 0x08
00001875: SLOAD
00001876: DUP2
00001877: LT
00001878: ISZERO
00001879: PUSH2 0x0b7e
0000187c: JUMPI
0000187d: PUSH1 0x00
0000187f: PUSH1 0x08
00001881: DUP3
00001882: DUP2
00001883: SLOAD
00001884: DUP2
00001885: LT
00001886: PUSH2 0x1891
00001889: JUMPI
0000188a: PUSH2 0x1891
0000188d: PUSH2 0x1c81
00001890: JUMP
00001891: JUMPDEST
00001892: PUSH1 0x00
00001894: SWAP2
00001895: DUP3
00001896: MSTORE
00001897: PUSH1 0x20
00001899: SWAP2
0000189a: DUP3
0000189b: SWAP1
0000189c: KECCAK256
0000189d: PUSH1 0x40
0000189f: DUP1
000018a0: MLOAD
000018a1: DUP1
000018a2: DUP3
000018a3: ADD
000018a4: SWAP1
000018a5: SWAP2
000018a6: MSTORE
000018a7: PUSH1 0x02
000018a9: SWAP1
000018aa: SWAP3
000018ab: MUL
000018ac: ADD
000018ad: DUP1
000018ae: SLOAD
000018af: DUP3
000018b0: MSTORE
000018b1: PUSH1 0x01
000018b3: ADD
000018b4: SLOAD
000018b5: SWAP2
000018b6: DUP2
000018b7: ADD
000018b8: DUP3
000018b9: SWAP1
000018ba: MSTORE
000018bb: SWAP2
000018bc: POP
000018bd: PUSH2 0x18c7
000018c0: SWAP1
000018c1: PUSH1 0x04
000018c3: PUSH2 0x1cad
000018c6: JUMP
000018c7: JUMPDEST
000018c8: DUP4
000018c9: MLOAD
000018ca: EQ
000018cb: DUP1
000018cc: ISZERO
000018cd: PUSH2 0x18d8
000018d0: JUMPI
000018d1: POP
000018d2: PUSH1 0x04
000018d4: DUP4
000018d5: MLOAD
000018d6: LT
000018d7: ISZERO
000018d8: JUMPDEST
000018d9: DUP1
000018da: ISZERO
000018db: PUSH2 0x1910
000018de: JUMPI
000018df: POP
000018e0: DUP3
000018e1: PUSH1 0x00
000018e3: DUP2
000018e4: MLOAD
000018e5: DUP2
000018e6: LT
000018e7: PUSH2 0x18f2
000018ea: JUMPI
000018eb: PUSH2 0x18f2
000018ee: PUSH2 0x1c81
000018f1: JUMP
000018f2: JUMPDEST
000018f3: PUSH1 0x20
000018f5: SWAP2
000018f6: ADD
000018f7: ADD
000018f8: MLOAD
000018f9: DUP2
000018fa: MLOAD
000018fb: PUSH1 0x00
000018fd: BYTE
000018fe: PUSH1 0xf8
00001900: SHL
00001901: PUSH1 0x01
00001903: PUSH1 0x01
00001905: PUSH1 0xf8
00001907: SHL
00001908: SUB
00001909: NOT
0000190a: SWAP1
0000190b: DUP2
0000190c: AND
0000190d: SWAP2
0000190e: AND
0000190f: EQ
00001910: JUMPDEST
00001911: DUP1
00001912: ISZERO
00001913: PUSH2 0x1948
00001916: JUMPI
00001917: POP
00001918: DUP3
00001919: PUSH1 0x01
0000191b: DUP2
0000191c: MLOAD
0000191d: DUP2
0000191e: LT
0000191f: PUSH2 0x192a
00001922: JUMPI
00001923: PUSH2 0x192a
00001926: PUSH2 0x1c81
00001929: JUMP
0000192a: JUMPDEST
0000192b: PUSH1 0x20
0000192d: SWAP2
0000192e: ADD
0000192f: ADD
00001930: MLOAD
00001931: DUP2
00001932: MLOAD
00001933: PUSH1 0x01
00001935: BYTE
00001936: PUSH1 0xf8
00001938: SHL
00001939: PUSH1 0x01
0000193b: PUSH1 0x01
0000193d: PUSH1 0xf8
0000193f: SHL
00001940: SUB
00001941: NOT
00001942: SWAP1
00001943: DUP2
00001944: AND
00001945: SWAP2
00001946: AND
00001947: EQ
00001948: JUMPDEST
00001949: DUP1
0000194a: ISZERO
0000194b: PUSH2 0x1980
0000194e: JUMPI
0000194f: POP
00001950: DUP3
00001951: PUSH1 0x02
00001953: DUP2
00001954: MLOAD
00001955: DUP2
00001956: LT
00001957: PUSH2 0x1962
0000195a: JUMPI
0000195b: PUSH2 0x1962
0000195e: PUSH2 0x1c81
00001961: JUMP
00001962: JUMPDEST
00001963: PUSH1 0x20
00001965: SWAP2
00001966: ADD
00001967: ADD
00001968: MLOAD
00001969: DUP2
0000196a: MLOAD
0000196b: PUSH1 0x02
0000196d: BYTE
0000196e: PUSH1 0xf8
00001970: SHL
00001971: PUSH1 0x01
00001973: PUSH1 0x01
00001975: PUSH1 0xf8
00001977: SHL
00001978: SUB
00001979: NOT
0000197a: SWAP1
0000197b: DUP2
0000197c: AND
0000197d: SWAP2
0000197e: AND
0000197f: EQ
00001980: JUMPDEST
00001981: DUP1
00001982: ISZERO
00001983: PUSH2 0x19b8
00001986: JUMPI
00001987: POP
00001988: DUP3
00001989: PUSH1 0x03
0000198b: DUP2
0000198c: MLOAD
0000198d: DUP2
0000198e: LT
0000198f: PUSH2 0x199a
00001992: JUMPI
00001993: PUSH2 0x199a
00001996: PUSH2 0x1c81
00001999: JUMP
0000199a: JUMPDEST
0000199b: PUSH1 0x20
0000199d: SWAP2
0000199e: ADD
0000199f: ADD
000019a0: MLOAD
000019a1: DUP2
000019a2: MLOAD
000019a3: PUSH1 0x03
000019a5: BYTE
000019a6: PUSH1 0xf8
000019a8: SHL
000019a9: PUSH1 0x01
000019ab: PUSH1 0x01
000019ad: PUSH1 0xf8
000019af: SHL
000019b0: SUB
000019b1: NOT
000019b2: SWAP1
000019b3: DUP2
000019b4: AND
000019b5: SWAP2
000019b6: AND
000019b7: EQ
000019b8: JUMPDEST
000019b9: ISZERO
000019ba: PUSH2 0x19c8
000019bd: JUMPI
000019be: POP
000019bf: PUSH1 0x01
000019c1: SWAP5
000019c2: SWAP4
000019c3: POP
000019c4: POP
000019c5: POP
000019c6: POP
000019c7: JUMP
000019c8: JUMPDEST
000019c9: POP
000019ca: PUSH1 0x01
000019cc: ADD
000019cd: PUSH2 0x1872
000019d0: JUMP
000019d1: JUMPDEST
000019d2: PUSH1 0x00
000019d4: PUSH1 0x20
000019d6: DUP3
000019d7: DUP5
000019d8: SUB
000019d9: SLT
000019da: ISZERO
000019db: PUSH2 0x19e3
000019de: JUMPI
000019df: PUSH1 0x00
000019e1: DUP1
000019e2: REVERT
000019e3: JUMPDEST
000019e4: POP
000019e5: CALLDATALOAD
000019e6: SWAP2
000019e7: SWAP1
000019e8: POP
000019e9: JUMP
000019ea: JUMPDEST
000019eb: DUP1
000019ec: CALLDATALOAD
000019ed: PUSH1 0x01
000019ef: PUSH1 0x01
000019f1: PUSH1 0xa0
000019f3: SHL
000019f4: SUB
000019f5: DUP2
000019f6: AND
000019f7: DUP2
000019f8: EQ
000019f9: PUSH2 0x1a01
000019fc: JUMPI
000019fd: PUSH1 0x00
000019ff: DUP1
00001a00: REVERT
00001a01: JUMPDEST
00001a02: SWAP2
00001a03: SWAP1
00001a04: POP
00001a05: JUMP
00001a06: JUMPDEST
00001a07: PUSH1 0x00
00001a09: PUSH1 0x20
00001a0b: DUP3
00001a0c: DUP5
00001a0d: SUB
00001a0e: SLT
00001a0f: ISZERO
00001a10: PUSH2 0x1a18
00001a13: JUMPI
00001a14: PUSH1 0x00
00001a16: DUP1
00001a17: REVERT
00001a18: JUMPDEST
00001a19: PUSH2 0x1a21
00001a1c: DUP3
00001a1d: PUSH2 0x19ea
00001a20: JUMP
00001a21: JUMPDEST
00001a22: SWAP4
00001a23: SWAP3
00001a24: POP
00001a25: POP
00001a26: POP
00001a27: JUMP
00001a28: JUMPDEST
00001a29: PUSH1 0x00
00001a2b: DUP1
00001a2c: PUSH1 0x40
00001a2e: DUP4
00001a2f: DUP6
00001a30: SUB
00001a31: SLT
00001a32: ISZERO
00001a33: PUSH2 0x1a3b
00001a36: JUMPI
00001a37: PUSH1 0x00
00001a39: DUP1
00001a3a: REVERT
00001a3b: JUMPDEST
00001a3c: DUP3
00001a3d: CALLDATALOAD
00001a3e: SWAP2
00001a3f: POP
00001a40: PUSH2 0x1a4b
00001a43: PUSH1 0x20
00001a45: DUP5
00001a46: ADD
00001a47: PUSH2 0x19ea
00001a4a: JUMP
00001a4b: JUMPDEST
00001a4c: SWAP1
00001a4d: POP
00001a4e: SWAP3
00001a4f: POP
00001a50: SWAP3
00001a51: SWAP1
00001a52: POP
00001a53: JUMP
00001a54: JUMPDEST
00001a55: DUP1
00001a56: CALLDATALOAD
00001a57: DUP1
00001a58: ISZERO
00001a59: ISZERO
00001a5a: DUP2
00001a5b: EQ
00001a5c: PUSH2 0x1a01
00001a5f: JUMPI
00001a60: PUSH1 0x00
00001a62: DUP1
00001a63: REVERT
00001a64: JUMPDEST
00001a65: PUSH1 0x00
00001a67: DUP1
00001a68: PUSH1 0x40
00001a6a: DUP4
00001a6b: DUP6
00001a6c: SUB
00001a6d: SLT
00001a6e: ISZERO
00001a6f: PUSH2 0x1a77
00001a72: JUMPI
00001a73: PUSH1 0x00
00001a75: DUP1
00001a76: REVERT
00001a77: JUMPDEST
00001a78: PUSH2 0x1a80
00001a7b: DUP4
00001a7c: PUSH2 0x1a54
00001a7f: JUMP
00001a80: JUMPDEST
00001a81: SWAP2
00001a82: POP
00001a83: PUSH2 0x1a4b
00001a86: PUSH1 0x20
00001a88: DUP5
00001a89: ADD
00001a8a: PUSH2 0x1a54
00001a8d: JUMP
00001a8e: JUMPDEST
00001a8f: PUSH1 0x01
00001a91: DUP1
00001a92: PUSH1 0xa0
00001a94: SHL
00001a95: SUB
00001a96: DUP6
00001a97: AND
00001a98: DUP2
00001a99: MSTORE
00001a9a: PUSH1 0x00
00001a9c: PUSH1 0x20
00001a9e: DUP6
00001a9f: PUSH1 0x20
00001aa1: DUP5
00001aa2: ADD
00001aa3: MSTORE
00001aa4: PUSH1 0x80
00001aa6: PUSH1 0x40
00001aa8: DUP5
00001aa9: ADD
00001aaa: MSTORE
00001aab: DUP5
00001aac: MLOAD
00001aad: DUP1
00001aae: PUSH1 0x80
00001ab0: DUP6
00001ab1: ADD
00001ab2: MSTORE
00001ab3: PUSH1 0x00
00001ab5: JUMPDEST
00001ab6: DUP2
00001ab7: DUP2
00001ab8: LT
00001ab9: ISZERO
00001aba: PUSH2 0x1ad1
00001abd: JUMPI
00001abe: DUP7
00001abf: DUP2
00001ac0: ADD
00001ac1: DUP4
00001ac2: ADD
00001ac3: MLOAD
00001ac4: DUP6
00001ac5: DUP3
00001ac6: ADD
00001ac7: PUSH1 0xa0
00001ac9: ADD
00001aca: MSTORE
00001acb: DUP3
00001acc: ADD
00001acd: PUSH2 0x1ab5
00001ad0: JUMP
00001ad1: JUMPDEST
00001ad2: POP
00001ad3: PUSH1 0x00
00001ad5: PUSH1 0xa0
00001ad7: DUP3
00001ad8: DUP7
00001ad9: ADD
00001ada: ADD
00001adb: MSTORE
00001adc: PUSH1 0xa0
00001ade: PUSH1 0x1f
00001ae0: NOT
00001ae1: PUSH1 0x1f
00001ae3: DUP4
00001ae4: ADD
00001ae5: AND
00001ae6: DUP6
00001ae7: ADD
00001ae8: ADD
00001ae9: SWAP3
00001aea: POP
00001aeb: POP
00001aec: POP
00001aed: DUP3
00001aee: ISZERO
00001aef: ISZERO
00001af0: PUSH1 0x60
00001af2: DUP4
00001af3: ADD
00001af4: MSTORE
00001af5: SWAP6
00001af6: SWAP5
00001af7: POP
00001af8: POP
00001af9: POP
00001afa: POP
00001afb: POP
00001afc: JUMP
00001afd: JUMPDEST
00001afe: PUSH1 0x20
00001b00: DUP1
00001b01: DUP3
00001b02: MSTORE
00001b03: DUP3
00001b04: MLOAD
00001b05: DUP3
00001b06: DUP3
00001b07: ADD
00001b08: DUP2
00001b09: SWAP1
00001b0a: MSTORE
00001b0b: PUSH1 0x00
00001b0d: SWAP2
00001b0e: SWAP1
00001b0f: DUP5
00001b10: DUP3
00001b11: ADD
00001b12: SWAP1
00001b13: PUSH1 0x40
00001b15: DUP6
00001b16: ADD
00001b17: SWAP1
00001b18: DUP5
00001b19: JUMPDEST
00001b1a: DUP2
00001b1b: DUP2
00001b1c: LT
00001b1d: ISZERO
00001b1e: PUSH2 0x1b3e
00001b21: JUMPI
00001b22: DUP4
00001b23: MLOAD
00001b24: PUSH1 0x01
00001b26: PUSH1 0x01
00001b28: PUSH1 0xa0
00001b2a: SHL
00001b2b: SUB
00001b2c: AND
00001b2d: DUP4
00001b2e: MSTORE
00001b2f: SWAP3
00001b30: DUP5
00001b31: ADD
00001b32: SWAP3
00001b33: SWAP2
00001b34: DUP5
00001b35: ADD
00001b36: SWAP2
00001b37: PUSH1 0x01
00001b39: ADD
00001b3a: PUSH2 0x1b19
00001b3d: JUMP
00001b3e: JUMPDEST
00001b3f: POP
00001b40: SWAP1
00001b41: SWAP7
00001b42: SWAP6
00001b43: POP
00001b44: POP
00001b45: POP
00001b46: POP
00001b47: POP
00001b48: POP
00001b49: JUMP
00001b4a: JUMPDEST
00001b4b: PUSH1 0x00
00001b4d: DUP1
00001b4e: PUSH1 0x00
00001b50: DUP1
00001b51: PUSH1 0x60
00001b53: DUP6
00001b54: DUP8
00001b55: SUB
00001b56: SLT
00001b57: ISZERO
00001b58: PUSH2 0x1b60
00001b5b: JUMPI
00001b5c: PUSH1 0x00
00001b5e: DUP1
00001b5f: REVERT
00001b60: JUMPDEST
00001b61: PUSH2 0x1b69
00001b64: DUP6
00001b65: PUSH2 0x19ea
00001b68: JUMP
00001b69: JUMPDEST
00001b6a: SWAP4
00001b6b: POP
00001b6c: PUSH1 0x20
00001b6e: DUP6
00001b6f: ADD
00001b70: CALLDATALOAD
00001b71: SWAP3
00001b72: POP
00001b73: PUSH1 0x40
00001b75: DUP6
00001b76: ADD
00001b77: CALLDATALOAD
00001b78: PUSH8 0xffffffffffffffff
00001b81: DUP1
00001b82: DUP3
00001b83: GT
00001b84: ISZERO
00001b85: PUSH2 0x1b8d
00001b88: JUMPI
00001b89: PUSH1 0x00
00001b8b: DUP1
00001b8c: REVERT
00001b8d: JUMPDEST
00001b8e: DUP2
00001b8f: DUP8
00001b90: ADD
00001b91: SWAP2
00001b92: POP
00001b93: DUP8
00001b94: PUSH1 0x1f
00001b96: DUP4
00001b97: ADD
00001b98: SLT
00001b99: PUSH2 0x1ba1
00001b9c: JUMPI
00001b9d: PUSH1 0x00
00001b9f: DUP1
00001ba0: REVERT
00001ba1: JUMPDEST
00001ba2: DUP2
00001ba3: CALLDATALOAD
00001ba4: DUP2
00001ba5: DUP2
00001ba6: GT
00001ba7: ISZERO
00001ba8: PUSH2 0x1bb0
00001bab: JUMPI
00001bac: PUSH1 0x00
00001bae: DUP1
00001baf: REVERT
00001bb0: JUMPDEST
00001bb1: DUP9
00001bb2: PUSH1 0x20
00001bb4: DUP3
00001bb5: DUP6
00001bb6: ADD
00001bb7: ADD
00001bb8: GT
00001bb9: ISZERO
00001bba: PUSH2 0x1bc2
00001bbd: JUMPI
00001bbe: PUSH1 0x00
00001bc0: DUP1
00001bc1: REVERT
00001bc2: JUMPDEST
00001bc3: SWAP6
00001bc4: SWAP9
00001bc5: SWAP5
00001bc6: SWAP8
00001bc7: POP
00001bc8: POP
00001bc9: PUSH1 0x20
00001bcb: ADD
00001bcc: SWAP5
00001bcd: POP
00001bce: POP
00001bcf: POP
00001bd0: JUMP
00001bd1: JUMPDEST
00001bd2: PUSH1 0x00
00001bd4: DUP1
00001bd5: PUSH1 0x40
00001bd7: DUP4
00001bd8: DUP6
00001bd9: SUB
00001bda: SLT
00001bdb: ISZERO
00001bdc: PUSH2 0x1be4
00001bdf: JUMPI
00001be0: PUSH1 0x00
00001be2: DUP1
00001be3: REVERT
00001be4: JUMPDEST
00001be5: PUSH2 0x1bed
00001be8: DUP4
00001be9: PUSH2 0x19ea
00001bec: JUMP
00001bed: JUMPDEST
00001bee: SWAP2
00001bef: POP
00001bf0: PUSH2 0x1a4b
00001bf3: PUSH1 0x20
00001bf5: DUP5
00001bf6: ADD
00001bf7: PUSH2 0x19ea
00001bfa: JUMP
00001bfb: JUMPDEST
00001bfc: PUSH1 0x20
00001bfe: DUP1
00001bff: DUP3
00001c00: MSTORE
00001c01: PUSH1 0x11
00001c03: SWAP1
00001c04: DUP3
00001c05: ADD
00001c06: MSTORE
00001c07: PUSH17 0x27a7262cafaba0a62622aa2fa2a92927a9
00001c19: PUSH1 0x79
00001c1b: SHL
00001c1c: PUSH1 0x40
00001c1e: DUP3
00001c1f: ADD
00001c20: MSTORE
00001c21: PUSH1 0x60
00001c23: ADD
00001c24: SWAP1
00001c25: JUMP
00001c26: JUMPDEST
00001c27: PUSH1 0x20
00001c29: DUP1
00001c2a: DUP3
00001c2b: MSTORE
00001c2c: PUSH1 0x12
00001c2e: SWAP1
00001c2f: DUP3
00001c30: ADD
00001c31: MSTORE
00001c32: PUSH18 0x27aba722a92fa2ac24a9aa29afa2a92927a9
00001c45: PUSH1 0x71
00001c47: SHL
00001c48: PUSH1 0x40
00001c4a: DUP3
00001c4b: ADD
00001c4c: MSTORE
00001c4d: PUSH1 0x60
00001c4f: ADD
00001c50: SWAP1
00001c51: JUMP
00001c52: JUMPDEST
00001c53: PUSH4 0x4e487b71
00001c58: PUSH1 0xe0
00001c5a: SHL
00001c5b: PUSH1 0x00
00001c5d: MSTORE
00001c5e: PUSH1 0x11
00001c60: PUSH1 0x04
00001c62: MSTORE
00001c63: PUSH1 0x24
00001c65: PUSH1 0x00
00001c67: REVERT
00001c68: JUMPDEST
00001c69: DUP2
00001c6a: DUP2
00001c6b: SUB
00001c6c: DUP2
00001c6d: DUP2
00001c6e: GT
00001c6f: ISZERO
00001c70: PUSH2 0x1c7b
00001c73: JUMPI
00001c74: PUSH2 0x1c7b
00001c77: PUSH2 0x1c52
00001c7a: JUMP
00001c7b: JUMPDEST
00001c7c: SWAP3
00001c7d: SWAP2
00001c7e: POP
00001c7f: POP
00001c80: JUMP
00001c81: JUMPDEST
00001c82: PUSH4 0x4e487b71
00001c87: PUSH1 0xe0
00001c89: SHL
00001c8a: PUSH1 0x00
00001c8c: MSTORE
00001c8d: PUSH1 0x32
00001c8f: PUSH1 0x04
00001c91: MSTORE
00001c92: PUSH1 0x24
00001c94: PUSH1 0x00
00001c96: REVERT
00001c97: JUMPDEST
00001c98: PUSH4 0x4e487b71
00001c9d: PUSH1 0xe0
00001c9f: SHL
00001ca0: PUSH1 0x00
00001ca2: MSTORE
00001ca3: PUSH1 0x31
00001ca5: PUSH1 0x04
00001ca7: MSTORE
00001ca8: PUSH1 0x24
00001caa: PUSH1 0x00
00001cac: REVERT
00001cad: JUMPDEST
00001cae: DUP1
00001caf: DUP3
00001cb0: ADD
00001cb1: DUP1
00001cb2: DUP3
00001cb3: GT
00001cb4: ISZERO
00001cb5: PUSH2 0x1c7b
00001cb8: JUMPI
00001cb9: PUSH2 0x1c7b
00001cbc: PUSH2 0x1c52
00001cbf: JUMP
00001cc0: JUMPDEST
00001cc1: PUSH1 0x01
00001cc3: DUP2
00001cc4: DUP2
00001cc5: SHR
00001cc6: SWAP1
00001cc7: DUP3
00001cc8: AND
00001cc9: DUP1
00001cca: PUSH2 0x1cd4
00001ccd: JUMPI
00001cce: PUSH1 0x7f
00001cd0: DUP3
00001cd1: AND
00001cd2: SWAP2
00001cd3: POP
00001cd4: JUMPDEST
00001cd5: PUSH1 0x20
00001cd7: DUP3
00001cd8: LT
00001cd9: DUP2
00001cda: SUB
00001cdb: PUSH2 0x0c2c
00001cde: JUMPI
00001cdf: PUSH4 0x4e487b71
00001ce4: PUSH1 0xe0
00001ce6: SHL
00001ce7: PUSH1 0x00
00001ce9: MSTORE
00001cea: PUSH1 0x22
00001cec: PUSH1 0x04
00001cee: MSTORE
00001cef: PUSH1 0x24
00001cf1: PUSH1 0x00
00001cf3: REVERT
00001cf4: JUMPDEST
00001cf5: PUSH4 0x4e487b71
00001cfa: PUSH1 0xe0
00001cfc: SHL
00001cfd: PUSH1 0x00
00001cff: MSTORE
00001d00: PUSH1 0x41
00001d02: PUSH1 0x04
00001d04: MSTORE
00001d05: PUSH1 0x24
00001d07: PUSH1 0x00
00001d09: REVERT
00001d0a: JUMPDEST
00001d0b: PUSH1 0x1f
00001d0d: DUP3
00001d0e: GT
00001d0f: ISZERO
00001d10: PUSH2 0x17cb
00001d13: JUMPI
00001d14: PUSH1 0x00
00001d16: DUP2
00001d17: PUSH1 0x00
00001d19: MSTORE
00001d1a: PUSH1 0x20
00001d1c: PUSH1 0x00
00001d1e: KECCAK256
00001d1f: PUSH1 0x1f
00001d21: DUP6
00001d22: ADD
00001d23: PUSH1 0x05
00001d25: SHR
00001d26: DUP2
00001d27: ADD
00001d28: PUSH1 0x20
00001d2a: DUP7
00001d2b: LT
00001d2c: ISZERO
00001d2d: PUSH2 0x1d33
00001d30: JUMPI
00001d31: POP
00001d32: DUP1
00001d33: JUMPDEST
00001d34: PUSH1 0x1f
00001d36: DUP6
00001d37: ADD
00001d38: PUSH1 0x05
00001d3a: SHR
00001d3b: DUP3
00001d3c: ADD
00001d3d: SWAP2
00001d3e: POP
00001d3f: JUMPDEST
00001d40: DUP2
00001d41: DUP2
00001d42: LT
00001d43: ISZERO
00001d44: PUSH2 0x1d52
00001d47: JUMPI
00001d48: DUP3
00001d49: DUP2
00001d4a: SSTORE
00001d4b: PUSH1 0x01
00001d4d: ADD
00001d4e: PUSH2 0x1d3f
00001d51: JUMP
00001d52: JUMPDEST
00001d53: POP
00001d54: POP
00001d55: POP
00001d56: POP
00001d57: POP
00001d58: POP
00001d59: JUMP
00001d5a: JUMPDEST
00001d5b: DUP2
00001d5c: MLOAD
00001d5d: PUSH8 0xffffffffffffffff
00001d66: DUP2
00001d67: GT
00001d68: ISZERO
00001d69: PUSH2 0x1d74
00001d6c: JUMPI
00001d6d: PUSH2 0x1d74
00001d70: PUSH2 0x1cf4
00001d73: JUMP
00001d74: JUMPDEST
00001d75: PUSH2 0x1d88
00001d78: DUP2
00001d79: PUSH2 0x1d82
00001d7c: DUP5
00001d7d: SLOAD
00001d7e: PUSH2 0x1cc0
00001d81: JUMP
00001d82: JUMPDEST
00001d83: DUP5
00001d84: PUSH2 0x1d0a
00001d87: JUMP
00001d88: JUMPDEST
00001d89: PUSH1 0x20
00001d8b: DUP1
00001d8c: PUSH1 0x1f
00001d8e: DUP4
00001d8f: GT
00001d90: PUSH1 0x01
00001d92: DUP2
00001d93: EQ
00001d94: PUSH2 0x1dbd
00001d97: JUMPI
00001d98: PUSH1 0x00
00001d9a: DUP5
00001d9b: ISZERO
00001d9c: PUSH2 0x1da5
00001d9f: JUMPI
00001da0: POP
00001da1: DUP6
00001da2: DUP4
00001da3: ADD
00001da4: MLOAD
00001da5: JUMPDEST
00001da6: PUSH1 0x00
00001da8: NOT
00001da9: PUSH1 0x03
00001dab: DUP7
00001dac: SWAP1
00001dad: SHL
00001dae: SHR
00001daf: NOT
00001db0: AND
00001db1: PUSH1 0x01
00001db3: DUP6
00001db4: SWAP1
00001db5: SHL
00001db6: OR
00001db7: DUP6
00001db8: SSTORE
00001db9: PUSH2 0x1d52
00001dbc: JUMP
00001dbd: JUMPDEST
00001dbe: PUSH1 0x00
00001dc0: DUP6
00001dc1: DUP2
00001dc2: MSTORE
00001dc3: PUSH1 0x20
00001dc5: DUP2
00001dc6: KECCAK256
00001dc7: PUSH1 0x1f
00001dc9: NOT
00001dca: DUP7
00001dcb: AND
00001dcc: SWAP2
00001dcd: JUMPDEST
00001dce: DUP3
00001dcf: DUP2
00001dd0: LT
00001dd1: ISZERO
00001dd2: PUSH2 0x1dec
00001dd5: JUMPI
00001dd6: DUP9
00001dd7: DUP7
00001dd8: ADD
00001dd9: MLOAD
00001dda: DUP3
00001ddb: SSTORE
00001ddc: SWAP5
00001ddd: DUP5
00001dde: ADD
00001ddf: SWAP5
00001de0: PUSH1 0x01
00001de2: SWAP1
00001de3: SWAP2
00001de4: ADD
00001de5: SWAP1
00001de6: DUP5
00001de7: ADD
00001de8: PUSH2 0x1dcd
00001deb: JUMP
00001dec: JUMPDEST
00001ded: POP
00001dee: DUP6
00001def: DUP3
00001df0: LT
00001df1: ISZERO
00001df2: PUSH2 0x1e0a
00001df5: JUMPI
00001df6: DUP8
00001df7: DUP6
00001df8: ADD
00001df9: MLOAD
00001dfa: PUSH1 0x00
00001dfc: NOT
00001dfd: PUSH1 0x03
00001dff: DUP9
00001e00: SWAP1
00001e01: SHL
00001e02: PUSH1 0xf8
00001e04: AND
00001e05: SHR
00001e06: NOT
00001e07: AND
00001e08: DUP2
00001e09: SSTORE
00001e0a: JUMPDEST
00001e0b: POP
00001e0c: POP
00001e0d: POP
00001e0e: POP
00001e0f: POP
00001e10: PUSH1 0x01
00001e12: SWAP1
00001e13: DUP2
00001e14: SHL
00001e15: ADD
00001e16: SWAP1
00001e17: SSTORE
00001e18: POP
00001e19: JUMP
00001e1a: JUMPDEST
00001e1b: PUSH1 0x00
00001e1d: DUP1
00001e1e: DUP4
00001e1f: SLOAD
00001e20: PUSH2 0x1e28
00001e23: DUP2
00001e24: PUSH2 0x1cc0
00001e27: JUMP
00001e28: JUMPDEST
00001e29: PUSH1 0x01
00001e2b: DUP3
00001e2c: DUP2
00001e2d: AND
00001e2e: DUP1
00001e2f: ISZERO
00001e30: PUSH2 0x1e40
00001e33: JUMPI
00001e34: PUSH1 0x01
00001e36: DUP2
00001e37: EQ
00001e38: PUSH2 0x1e55
00001e3b: JUMPI
00001e3c: PUSH2 0x1e84
00001e3f: JUMP
00001e40: JUMPDEST
00001e41: PUSH1 0xff
00001e43: NOT
00001e44: DUP5
00001e45: AND
00001e46: DUP8
00001e47: MSTORE
00001e48: DUP3
00001e49: ISZERO
00001e4a: ISZERO
00001e4b: DUP4
00001e4c: MUL
00001e4d: DUP8
00001e4e: ADD
00001e4f: SWAP5
00001e50: POP
00001e51: PUSH2 0x1e84
00001e54: JUMP
00001e55: JUMPDEST
00001e56: DUP8
00001e57: PUSH1 0x00
00001e59: MSTORE
00001e5a: PUSH1 0x20
00001e5c: DUP1
00001e5d: PUSH1 0x00
00001e5f: KECCAK256
00001e60: PUSH1 0x00
00001e62: JUMPDEST
00001e63: DUP6
00001e64: DUP2
00001e65: LT
00001e66: ISZERO
00001e67: PUSH2 0x1e7b
00001e6a: JUMPI
00001e6b: DUP2
00001e6c: SLOAD
00001e6d: DUP11
00001e6e: DUP3
00001e6f: ADD
00001e70: MSTORE
00001e71: SWAP1
00001e72: DUP5
00001e73: ADD
00001e74: SWAP1
00001e75: DUP3
00001e76: ADD
00001e77: PUSH2 0x1e62
00001e7a: JUMP
00001e7b: JUMPDEST
00001e7c: POP
00001e7d: POP
00001e7e: POP
00001e7f: DUP3
00001e80: DUP8
00001e81: ADD
00001e82: SWAP5
00001e83: POP
00001e84: JUMPDEST
00001e85: POP
00001e86: SWAP3
00001e87: SWAP7
00001e88: SWAP6
00001e89: POP
00001e8a: POP
00001e8b: POP
00001e8c: POP
00001e8d: POP
00001e8e: POP
00001e8f: JUMP
00001e90: INVALID
00001e91: LOG2
00001e92: PUSH5 0x6970667358
00001e98: UNKNOWN(0x22)
00001e99: SLT
00001e9a: KECCAK256
00001e9b: PUSH14 0x290a0cfe290c01c6c579d1cb5271
00001eaa: UNKNOWN(0xEE)
00001eab: PUSH24 0x34efccef2b15f11c71dd8369a74c5564736f6c6343000819
00001ec4: STOP
00001ec5: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x98aa31310d246d102606ee5edd923a7a0934c24d6ebfdfcb8b25de988431d0f9
call_targets: 0x67cb903ca9d07107784bc9398a75a0543524c353
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x98aa31310d246d102606ee5edd923a7a0934c24d6ebfdfcb8b25de988431d0f9",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x67cb903ca9d07107784bc9398a75a0543524c353"
    ],
    "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": "0xd74f8edd",
            "selector": "0xd74f8edd",
            "calldata_variants": [
                "0xd74f8edd",
                "0xd74f8edd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdc8452cd",
            "selector": "0xdc8452cd",
            "calldata_variants": [
                "0xdc8452cd",
                "0xdc8452cd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe20056e6",
            "selector": "0xe20056e6",
            "calldata_variants": [
                "0xe20056e6",
                "0xe20056e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee22610b",
            "selector": "0xee22610b",
            "calldata_variants": [
                "0xee22610b",
                "0xee22610b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc01a8c84",
            "selector": "0xc01a8c84",
            "calldata_variants": [
                "0xc01a8c84",
                "0xc01a8c840000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc0af0227",
            "selector": "0xc0af0227",
            "calldata_variants": [
                "0xc0af0227",
                "0xc0af02270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc6427474",
            "selector": "0xc6427474",
            "calldata_variants": [
                "0xc6427474",
                "0xc64274740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9ace38c2",
            "selector": "0x9ace38c2",
            "calldata_variants": [
                "0x9ace38c2",
                "0x9ace38c20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 5866,
            "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: 0x98aa31310d246d102606ee5edd923a7a0934c24d6ebfdfcb8b25de988431d0f9
call_targets: 0x67cb903ca9d07107784bc9398a75a0543524c353
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x98aa31310d246d102606ee5edd923a7a0934c24d6ebfdfcb8b25de988431d0f9",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x67cb903ca9d07107784bc9398a75a0543524c353"
    ],
    "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": "0xd74f8edd",
            "selector": "0xd74f8edd",
            "calldata_variants": [
                "0xd74f8edd",
                "0xd74f8edd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdc8452cd",
            "selector": "0xdc8452cd",
            "calldata_variants": [
                "0xdc8452cd",
                "0xdc8452cd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe20056e6",
            "selector": "0xe20056e6",
            "calldata_variants": [
                "0xe20056e6",
                "0xe20056e60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xee22610b",
            "selector": "0xee22610b",
            "calldata_variants": [
                "0xee22610b",
                "0xee22610b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc01a8c84",
            "selector": "0xc01a8c84",
            "calldata_variants": [
                "0xc01a8c84",
                "0xc01a8c840000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc0af0227",
            "selector": "0xc0af0227",
            "calldata_variants": [
                "0xc0af0227",
                "0xc0af02270000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc6427474",
            "selector": "0xc6427474",
            "calldata_variants": [
                "0xc6427474",
                "0xc64274740000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9ace38c2",
            "selector": "0x9ace38c2",
            "calldata_variants": [
                "0x9ace38c2",
                "0x9ace38c20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 5866,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}
high reentrancy slither Reentrancy in MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341): 85 no
view
evidence_json
{
    "impact": "High",
    "detector": "reentrancy-eth",
    "elements": [
        {
            "name": "executeTransaction",
            "type": "function",
            "source_mapping": {
                "lines": [
                    319,
                    320,
                    321,
                    322,
                    323,
                    324,
                    325,
                    326,
                    327,
                    328,
                    329,
                    330,
                    331,
                    332,
                    333,
                    334,
                    335,
                    336,
                    337,
                    338,
                    339,
                    340,
                    341
                ],
                "start": 9716,
                "length": 796,
                "ending_column": 6,
                "is_dependency": false,
                "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                "starting_column": 5,
                "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "MultiSigWalletWithTimelock",
                    "type": "contract",
                    "source_mapping": {
                        "lines": [
                            5,
                            6,
                            7,
                            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,
                            275,
                            276,
                            277,
                            278,
                            279,
                            280,
                            281,
                            282,
                            283,
                            284,
                            285,
                            286,
                            287,
                            288,
                            289,
                            290,
                            291,
                            292,
                            293,
                            294,
                            295,
                            296,
                            297,
                            298,
                            299,
                            300,
                            301,
                            302,
                            303,
                            304,
                            305,
                            306,
                            307,
                            308,
                            309,
                            310,
                            311,
                            312,
                            313,
                            314,
                            315,
                            316,
                            317,
                            318,
                            319,
                            320,
                            321,
                            322,
                            323,
                            324,
                            325,
                            326,
                            327,
                            328,
                            329,
                            330,
                            331,
                            332,
                            333,
                            334,
                            335,
                            336,
                            337,
                            338,
                            339,
                            340,
                            341,
                            342,
                            343,
                            344,
                            345,
                            346,
                            347,
                            348,
                            349,
                            350,
                            351,
                            352,
                            353,
                            354,
                            355,
                            356,
                            357,
                            358,
                            359,
                            360,
                            361,
                            362,
                            363,
                            364,
                            365,
                            366,
                            367,
                            368,
                            369,
                            370,
                            371,
                            372,
                            373,
                            374,
                            375,
                            376,
                            377,
                            378,
                            379,
                            380,
                            381,
                            382,
                            383,
                            384,
                            385,
                            386,
                            387,
                            388,
                            389,
                            390,
                            391,
                            392,
                            393,
                            394,
                            395,
                            396,
                            397,
                            398,
                            399,
                            400,
                            401,
                            402,
                            403,
                            404,
                            405,
                            406,
                            407,
                            408,
                            409,
                            410,
                            411,
                            412,
                            413,
                            414,
                            415,
                            416,
                            417,
                            418,
                            419,
                            420,
                            421,
                            422,
                            423,
                            424,
                            425,
                            426,
                            427,
                            428,
                            429,
                            430,
                            431,
                            432,
                            433,
                            434,
                            435,
                            436,
                            437,
                            438,
                            439,
                            440
                        ],
                        "start": 58,
                        "length": 13164,
                        "ending_column": 0,
                        "is_dependency": false,
                        "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                        "starting_column": 1,
                        "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                        "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
                    }
                },
                "signature": "executeTransaction(uint256)"
            }
        },
        {
            "name": "(success,None) = transaction.destination.call{value: transaction.value}(transaction.data)",
            "type": "node",
            "source_mapping": {
                "lines": [
                    332
                ],
                "start": 10156,
                "length": 90,
                "ending_column": 103,
                "is_dependency": false,
                "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                "starting_column": 13,
                "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
            },
            "additional_fields": {
                "underlying_type": "external_calls"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "executeTransaction",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            319,
                            320,
                            321,
                            322,
                            323,
                            324,
                            325,
                            326,
                            327,
                            328,
                            329,
                            330,
                            331,
                            332,
                            333,
                            334,
                            335,
                            336,
                            337,
                            338,
                            339,
                            340,
                            341
                        ],
                        "start": 9716,
                        "length": 796,
                        "ending_column": 6,
                        "is_dependency": false,
                        "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                        "starting_column": 5,
                        "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                        "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "MultiSigWalletWithTimelock",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    5,
                                    6,
                                    7,
                                    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,
                                    275,
                                    276,
                                    277,
                                    278,
                                    279,
                                    280,
                                    281,
                                    282,
                                    283,
                                    284,
                                    285,
                                    286,
                                    287,
                                    288,
                                    289,
                                    290,
                                    291,
                                    292,
                                    293,
                                    294,
                                    295,
                                    296,
                                    297,
                                    298,
                                    299,
                                    300,
                                    301,
                                    302,
                                    303,
                                    304,
                                    305,
                                    306,
                                    307,
                                    308,
                                    309,
                                    310,
                                    311,
                                    312,
                                    313,
                                    314,
                                    315,
                                    316,
                                    317,
                                    318,
                                    319,
                                    320,
                                    321,
                                    322,
                                    323,
                                    324,
                                    325,
                                    326,
                                    327,
                                    328,
                                    329,
                                    330,
                                    331,
                                    332,
                                    333,
                                    334,
                                    335,
                                    336,
                                    337,
                                    338,
                                    339,
                                    340,
                                    341,
                                    342,
                                    343,
                                    344,
                                    345,
                                    346,
                                    347,
                                    348,
                                    349,
                                    350,
                                    351,
                                    352,
                                    353,
                                    354,
                                    355,
                                    356,
                                    357,
                                    358,
                                    359,
                                    360,
                                    361,
                                    362,
                                    363,
                                    364,
                                    365,
                                    366,
                                    367,
                                    368,
                                    369,
                                    370,
                                    371,
                                    372,
                                    373,
                                    374,
                                    375,
                                    376,
                                    377,
                                    378,
                                    379,
                                    380,
                                    381,
                                    382,
                                    383,
                                    384,
                                    385,
                                    386,
                                    387,
                                    388,
                                    389,
                                    390,
                                    391,
                                    392,
                                    393,
                                    394,
                                    395,
                                    396,
                                    397,
                                    398,
                                    399,
                                    400,
                                    401,
                                    402,
                                    403,
                                    404,
                                    405,
                                    406,
                                    407,
                                    408,
                                    409,
                                    410,
                                    411,
                                    412,
                                    413,
                                    414,
                                    415,
                                    416,
                                    417,
                                    418,
                                    419,
                                    420,
                                    421,
                                    422,
                                    423,
                                    424,
                                    425,
                                    426,
                                    427,
                                    428,
                                    429,
                                    430,
                                    431,
                                    432,
                                    433,
                                    434,
                                    435,
                                    436,
                                    437,
                                    438,
                                    439,
                                    440
                                ],
                                "start": 58,
                                "length": 13164,
                                "ending_column": 0,
                                "is_dependency": false,
                                "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                                "starting_column": 1,
                                "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                                "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
                            }
                        },
                        "signature": "executeTransaction(uint256)"
                    }
                }
            }
        },
        {
            "name": "transaction.executed = false",
            "type": "node",
            "source_mapping": {
                "lines": [
                    337
                ],
                "start": 10409,
                "length": 28,
                "ending_column": 45,
                "is_dependency": false,
                "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                "starting_column": 17,
                "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
            },
            "additional_fields": {
                "variable_name": "transactions",
                "underlying_type": "variables_written"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "executeTransaction",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            319,
                            320,
                            321,
                            322,
                            323,
                            324,
                            325,
                            326,
                            327,
                            328,
                            329,
                            330,
                            331,
                            332,
                            333,
                            334,
                            335,
                            336,
                            337,
                            338,
                            339,
                            340,
                            341
                        ],
                        "start": 9716,
                        "length": 796,
                        "ending_column": 6,
                        "is_dependency": false,
                        "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                        "starting_column": 5,
                        "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                        "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "MultiSigWalletWithTimelock",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    5,
                                    6,
                                    7,
                                    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,
                                    275,
                                    276,
                                    277,
                                    278,
                                    279,
                                    280,
                                    281,
                                    282,
                                    283,
                                    284,
                                    285,
                                    286,
                                    287,
                                    288,
                                    289,
                                    290,
                                    291,
                                    292,
                                    293,
                                    294,
                                    295,
                                    296,
                                    297,
                                    298,
                                    299,
                                    300,
                                    301,
                                    302,
                                    303,
                                    304,
                                    305,
                                    306,
                                    307,
                                    308,
                                    309,
                                    310,
                                    311,
                                    312,
                                    313,
                                    314,
                                    315,
                                    316,
                                    317,
                                    318,
                                    319,
                                    320,
                                    321,
                                    322,
                                    323,
                                    324,
                                    325,
                                    326,
                                    327,
                                    328,
                                    329,
                                    330,
                                    331,
                                    332,
                                    333,
                                    334,
                                    335,
                                    336,
                                    337,
                                    338,
                                    339,
                                    340,
                                    341,
                                    342,
                                    343,
                                    344,
                                    345,
                                    346,
                                    347,
                                    348,
                                    349,
                                    350,
                                    351,
                                    352,
                                    353,
                                    354,
                                    355,
                                    356,
                                    357,
                                    358,
                                    359,
                                    360,
                                    361,
                                    362,
                                    363,
                                    364,
                                    365,
                                    366,
                                    367,
                                    368,
                                    369,
                                    370,
                                    371,
                                    372,
                                    373,
                                    374,
                                    375,
                                    376,
                                    377,
                                    378,
                                    379,
                                    380,
                                    381,
                                    382,
                                    383,
                                    384,
                                    385,
                                    386,
                                    387,
                                    388,
                                    389,
                                    390,
                                    391,
                                    392,
                                    393,
                                    394,
                                    395,
                                    396,
                                    397,
                                    398,
                                    399,
                                    400,
                                    401,
                                    402,
                                    403,
                                    404,
                                    405,
                                    406,
                                    407,
                                    408,
                                    409,
                                    410,
                                    411,
                                    412,
                                    413,
                                    414,
                                    415,
                                    416,
                                    417,
                                    418,
                                    419,
                                    420,
                                    421,
                                    422,
                                    423,
                                    424,
                                    425,
                                    426,
                                    427,
                                    428,
                                    429,
                                    430,
                                    431,
                                    432,
                                    433,
                                    434,
                                    435,
                                    436,
                                    437,
                                    438,
                                    439,
                                    440
                                ],
                                "start": 58,
                                "length": 13164,
                                "ending_column": 0,
                                "is_dependency": false,
                                "filename_short": "contracts/MultiSigWalletWithTimelock.sol",
                                "starting_column": 1,
                                "filename_absolute": "/tmp/slither-dif0hscn/contracts/MultiSigWalletWithTimelock.sol",
                                "filename_relative": "contracts/MultiSigWalletWithTimelock.sol"
                            }
                        },
                        "signature": "executeTransaction(uint256)"
                    }
                }
            }
        }
    ],
    "locations": [
        {
            "file": "contracts/MultiSigWalletWithTimelock.sol",
            "name": "executeTransaction",
            "type": "function",
            "lines": [
                319,
                320,
                321,
                322,
                323,
                324,
                325,
                326,
                327,
                328,
                329,
                330,
                331,
                332,
                333,
                334,
                335,
                336,
                337,
                338,
                339,
                340,
                341
            ]
        },
        {
            "file": "contracts/MultiSigWalletWithTimelock.sol",
            "name": "(success,None) = transaction.destination.call{value: transaction.value}(transaction.data)",
            "type": "node",
            "lines": [
                332
            ]
        },
        {
            "file": "contracts/MultiSigWalletWithTimelock.sol",
            "name": "transaction.executed = false",
            "type": "node",
            "lines": [
                337
            ]
        }
    ],
    "description": "Reentrancy in MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341):\n\tExternal calls:\n\t- (success,None) = transaction.destination.call{value: transaction.value}(transaction.data) (contracts/MultiSigWalletWithTimelock.sol#332)\n\tState variables written after the call(s):\n\t- transaction.executed = false (contracts/MultiSigWalletWithTimelock.sol#337)\n\tMultiSigWalletWithTimelock.transactions (contracts/MultiSigWalletWithTimelock.sol#22) can be used in cross function reentrancies:\n\t- MultiSigWalletWithTimelock.executeTransaction(uint256) (contracts/MultiSigWalletWithTimelock.sol#319-341)\n\t- MultiSigWalletWithTimelock.getTransactionCount(bool,bool) (contracts/MultiSigWalletWithTimelock.sol#390-400)\n\t- MultiSigWalletWithTimelock.isEmergencyCall(uint256) (contracts/MultiSigWalletWithTimelock.sol#278-301)\n\t- MultiSigWalletWithTimelock.notExecuted(uint256) (contracts/MultiSigWalletWithTimelock.sol#82-86)\n\t- MultiSigWalletWithTimelock.submitTransaction(address,uint256,bytes) (contracts/MultiSigWalletWithTimelock.sol#241-257)\n\t- MultiSigWalletWithTimelock.transactionExists(uint256) (contracts/MultiSigWalletWithTimelock.sol#64-68)\n\t- MultiSigWalletWithTimelock.transactions (contracts/MultiSigWalletWithTimelock.sol#22)"
}
medium access_control codex Timelock bypass for any destination via emergency selector match 75 no
view
evidence_json
{
    "evidence": "`confirmTransaction` only sets `unlockTimes` when `!isEmergencyCall(...)`, and `isEmergencyCall` checks only selector and calldata length, not destination.",
    "locations": [
        "contracts/MultiSigWalletWithTimelock.sol:271",
        "contracts/MultiSigWalletWithTimelock.sol:278"
    ],
    "recommendation": "Bind emergency-call exemptions to specific destination addresses (or full calldata hashes) instead of selector/length alone, or remove the bypass. At minimum, maintain a whitelist of allowed destinations for each emergency selector and enforce it in `isEmergencyCall`.",
    "exploit_scenario": "Owners submit a transaction to an attacker-controlled contract that implements `setMarketBorrowUsability(uint16,bool)`. Because the calldata selector/length matches an emergency pattern, `unlockTimes` is never set, so the transaction can execute immediately once confirmations reach the threshold, bypassing the timelock even though the destination is not the intended emergency target."
}
medium access_control codex Unlock time persists after revocation, enabling immediate execution after re-confirmation 75 no
view
evidence_json
{
    "evidence": "`confirmTransaction` sets `unlockTimes` once when the threshold is met, but `revokeConfirmation` does not reset it; `executeTransaction` only checks the stored `unlockTimes`.",
    "locations": [
        "contracts/MultiSigWalletWithTimelock.sol:271",
        "contracts/MultiSigWalletWithTimelock.sol:306",
        "contracts/MultiSigWalletWithTimelock.sol:324"
    ],
    "recommendation": "Clear or recompute `unlockTimes[transactionId]` when confirmations fall below `required`, or store and enforce a `lastThresholdReachedAt` that updates every time the required confirmation count is regained.",
    "exploit_scenario": "Owners reach the confirmation threshold to set `unlockTimes`, then revoke to drop below the threshold. After the unlock time passes, they can re-confirm and execute immediately, bypassing the intended delay from the final approval. Observers could be misled into thinking the transaction is inactive until it suddenly executes without a fresh timelock window."
}