8696931a-1274-4227-8ddf-d43b9eb04167
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 30754 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 75520 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 75521 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 75522 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 75523 | capability.graph | complete | 1 / 3 | 1 week ago |
| 75524 | detector.run | complete | 1 / 3 | 1 week ago |
| 75525 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:496959] OpenAI Codex v0.77.0 (research preview)
[codex:496959] --------
[codex:496959] workdir: /tmp/codex-multi-ft7riigc
[codex:496959] model: gpt-5.2-codex
[codex:496959] provider: openai
[codex:496959] approval: never
[codex:496959] sandbox: read-only
[codex:496959] reasoning effort: xhigh
[codex:496959] reasoning summaries: auto
[codex:496959] session id: 019b70f0-d02c-7950-bc08-be1b12b768d8
[codex:496959] --------
[codex:496959] user
[codex:496959] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:496959] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:496959] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:496959]
[codex:496959] Scope rules:
[codex:496959] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:496959] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:496959]
[codex:496959] Output MUST be valid JSON matching the provided schema.
[codex:496959] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:496959] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:496959]
[codex:496959] Output constraints (IMPORTANT):
[codex:496959] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:496959] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:496959] mcp startup: no servers
[codex:496959]
[codex:496959] thinking
[codex:496959] **Preparing to read audit file**
[codex:496959] exec
[codex:496959] /bin/bash -lc ls in /tmp/codex-multi-ft7riigc succeeded in 7ms:
[codex:496959] AUDIT_BUNDLE.txt
[codex:496959] codex-output-schema.json
[codex:496959] contracts
[codex:496959] exec
[codex:496959] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ft7riigc succeeded in 5ms:
[codex:496959] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:496959]
[codex:496959] ================================================================================
[codex:496959] FILE: contracts/Contract.sol
[codex:496959] ================================================================================
[codex:496959] pragma solidity ^0.7.0;
[codex:496959]
[codex:496959] interface IERC20 {
[codex:496959] /**
[codex:496959] * @dev Returns the amount of tokens in existence.
[codex:496959] */
[codex:496959] function totalSupply() external view returns (uint256);
[codex:496959]
[codex:496959] /**
[codex:496959] * @dev Returns the amount of tokens owned by `account`.
[codex:496959] */
[codex:496959] function balanceOf(address account) external view returns (uint256);
[codex:496959]
[codex:496959] /**
[codex:496959] * @dev Moves `amount` tokens from the caller's account to `recipient`.
[codex:496959]
[codex:496959]
[codex:496959] thinking
[codex:496959] **Examining contract vulnerabilities and logic flaws**
[codex:496959]
[codex:496959] I'll analyze the DokiCoinCore and LPToDOKI contracts, focusing on reentrancy, tax logic, access control, and allowance handling. There’s a tax transfer design flaw charging users more than intended, potential reentrancy risks in withdraw due to state updates after external calls and bypassable contract checks during staking, along with self-controlled taxer role posing centralization concerns. The allowance use in multiple transferFrom calls may cause transaction reverts but isn’t a direct vulnerability. Overall, I’m spotting design bugs and reentrancy exposures worth flagging.
[codex:496959] thinking
[codex:496959] **Investigating reward logic and reentrancy implications**
[codex:496959]
[codex:496959] I’m carefully assessing the halving and reward update logic, spotting a timing bug where reward calculations misalign due to rate changes before accrual updates. Also, the withdraw function’s external calls before state changes open reentrancy risks, especially since staking restrictions can be bypassed during contract construction. Other points include uncapped tax rates that could freeze transfers and subtle centralization issues with taxer role control. I’m noting function-level details to include line references in my JSON findings.
[codex:496959] exec
[codex:496959] /bin/bash -lc 'rg --files' in /tmp/codex-multi-ft7riigc succeeded in 9ms:
[codex:496959] codex-output-schema.json
[codex:496959] AUDIT_BUNDLE.txt
[codex:496959] contracts/Contract.sol
[codex:496959] exec
[codex:496959] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '520,840p'" in /tmp/codex-multi-ft7riigc succeeded in 6ms:
[codex:496959] 520 *
[codex:496959] 521 * - The divisor cannot be zero.
[codex:496959] 522 */
[codex:496959] 523 function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
[codex:496959] 524 require(b != 0, errorMessage);
[codex:496959] 525 return a % b;
[codex:496959] 526 }
[codex:496959] 527 }
[codex:496959] 528
[codex:496959] 529 abstract contract Context {
[codex:496959] 530 function _msgSender() internal view virtual returns (address payable) {
[codex:496959] 531 return msg.sender;
[codex:496959] 532 }
[codex:496959] 533
[codex:496959] 534 function _msgData() internal view virtual returns (bytes memory) {
[codex:496959] 535 this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
[codex:496959] 536 return msg.data;
[codex:496959] 537 }
[codex:496959] 538 }
[codex:496959] 539
[codex:496959]
[codex:496959] thinking
[codex:496959] **Continuing to gather token lines**
[codex:496959] exec
[codex:496959] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '900,1220p'" in /tmp/codex-multi-ft7riigc succeeded in 6ms:
[codex:496959] 900 if (taxAmount != 0) {
[codex:496959] 901 super.transferFrom(sender, _taxDestination, taxAmount);
[codex:496959] 902 }
[codex:496959] 903 return true;
[codex:496959] 904 }
[codex:496959] 905 }
[codex:496959] 906
[codex:496959] 907 contract DokiCoin is DokiCoinCore, Ownable {
[codex:496959] 908 mapping (address => bool) public minters;
[codex:496959] 909
[codex:496959] 910 constructor() {
[codex:496959] 911 _taxer = owner();
[codex:496959] 912 _taxDestination = owner();
[codex:496959] 913 }
[codex:496959] 914
[codex:496959] 915 function mint(address to, uint amount) public onlyMinter {
[codex:496959] 916 _mint(to, amount);
[codex:496959] 917 }
[codex:496959] 918
[codex:496959] 919 function burn(uint amount) public {
[codex:496959]
[codex:496959] thinking
[codex:496959] **Retrieving line numbers for transfer functions**
[codex:496959] exec
[codex:496959] /bin/bash -lc "nl -ba contracts/Contract.sol | sed -n '840,920p'" in /tmp/codex-multi-ft7riigc succeeded in 6ms:
[codex:496959] 840 /**
[codex:496959] 841 * @dev Sets {decimals} to a value other than the default one of 18.
[codex:496959] 842 *
[codex:496959] 843 * WARNING: This function should only be called from the constructor. Most
[codex:496959] 844 * applications that interact with token contracts will not expect
[codex:496959] 845 * {decimals} to ever change, and may work incorrectly if it does.
[codex:496959] 846 */
[codex:496959] 847 function _setupDecimals(uint8 decimals_) internal {
[codex:496959] 848 _decimals = decimals_;
[codex:496959] 849 }
[codex:496959] 850
[codex:496959] 851 /**
[codex:496959] 852 * @dev Hook that is called before any transfer of tokens. This includes
[codex:496959] 853 * minting and burning.
[codex:496959] 854 *
[codex:496959] 855 * Calling conditions:
[codex:496959] 856 *
[codex:496959] 857 * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
[codex:496959] 858 * will be to transferred to `to`.
[codex:496959] 859 * - when `from` is zero, `amount` tokens will be minted for `to`.
[codex:496959]
[codex:496959] Reconnecting... 1/5
[codex:496959]
[codex:496959]
[codex:496959]
[codex:496959] thinking
[codex:496959] **Summarizing audit findings for vulnerabilities**
[codex:496959]
[codex:496959] I'll prepare the JSON audit summary focusing mainly on the key reentrancy risk in `LPToDOKI.withdraw` due to external calls before state updates and the bypassable contract-staking check. I'll also mention tax logic oddities affecting ERC20 semantics as secondary notes, aiming for meaningful, exploitable issues only.
[codex:496959] thinking
[codex:496959] **Detailing further audit observations**
[codex:496959]
[codex:496959] I’m analyzing nuanced behaviors around tax handling, reward calculations, and access control in more depth to identify subtle risks like reward pool depletion due to taxed claims, repeated startFarming minting, and possible denial-of-service from dev fund transfers failing under taxed conditions. The main exploitable issue remains reentrancy in withdraw with constructor bypass.
[codex:496959] thinking
[codex:496959] **Preparing final JSON audit report**
[codex:496959]
[codex:496959] I'm summarizing the single medium-severity finding focused on reentrancy in `LPToDOKI.withdraw`, highlighting constructor bypass of `isContract` check and external token hooks enabling repeated withdrawals before state updates; I'll include evidence, locations, and recommendations in JSON format as requested.
[codex:496959] exec
[codex:496959] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-ft7riigc succeeded in 5ms:
[codex:496959] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:496959]
[codex:496959] thinking
[codex:496959] **Composing structured JSON output**
[codex:496959] codex
[codex:496959] {"no_findings":false,"summary":"1 medium finding: LPToDOKI.withdraw transfers LP tokens before updating balances, enabling reentrancy-based over-withdrawals when LP tokens have callbacks.","findings":[{"severity":"medium","category":"reentrancy","title":"LPToDOKI.withdraw updates balances after external token transfer","exploit_scenario":"An attacker deploys a contract that stakes during its constructor (bypassing the isContract check), then calls withdraw. If the LP token is ERC777/677-like or otherwise reentrant, the token transfer to the attacker contract triggers a callback that re-enters withdraw before `_lpBalances`/`_lpTotalSupply` are decreased, allowing repeated withdrawals and draining the pool’s LP tokens.","recommendation":"Apply checks-effects-interactions: decrement `_lpBalances`/`_lpTotalSupply` before calling `lpToken.safeTransfer`, or add `ReentrancyGuard` to withdraw. Do not rely on `isContract` for access control; if contracts must be blocked, use explicit allowlists.","evidence":"`withdraw` calls `lpToken.safeTransfer(msg.sender, amount)` before reducing `_lpBalances` and `_lpTotalSupply`. `stake` uses `isContract` which can be bypassed during construction.","locations":["contracts/Contract.sol:1048","contracts/Contract.sol:1052","contracts/Contract.sol:1053","contracts/Contract.sol:1040"]}]}
[codex:496959] tokens used
[codex:496959] 39,141
[codex:496959] {"no_findings":false,"summary":"1 medium finding: LPToDOKI.withdraw transfers LP tokens before updating balances, enabling reentrancy-based over-withdrawals when LP tokens have callbacks.","findings":[{"severity":"medium","category":"reentrancy","title":"LPToDOKI.withdraw updates balances after external token transfer","exploit_scenario":"An attacker deploys a contract that stakes during its constructor (bypassing the isContract check), then calls withdraw. If the LP token is ERC777/677-like or otherwise reentrant, the token transfer to the attacker contract triggers a callback that re-enters withdraw before `_lpBalances`/`_lpTotalSupply` are decreased, allowing repeated withdrawals and draining the pool’s LP tokens.","recommendation":"Apply checks-effects-interactions: decrement `_lpBalances`/`_lpTotalSupply` before calling `lpToken.safeTransfer`, or add `ReentrancyGuard` to withdraw. Do not rely on `isContract` for access control; if contracts must be blocked, use explicit allowlists.","evidence":"`withdraw` calls `lpToken.safeTransfer(msg.sender, amount)` before reducing `_lpBalances` and `_lpTotalSupply`. `stake` uses `isContract` which can be bypassed during construction.","locations":["contracts/Contract.sol:1048","contracts/Contract.sol:1052","contracts/Contract.sol:1053","contracts/Contract.sol:1040"]}]}
{
"codex": {
"ran_at": "2025-12-30T20:33:00.336256+00:00",
"returncode": 0
},
"summary": "1 medium finding: LPToDOKI.withdraw transfers LP tokens before updating balances, enabling reentrancy-based over-withdrawals when LP tokens have callbacks.",
"raw_final": {
"summary": "1 medium finding: LPToDOKI.withdraw transfers LP tokens before updating balances, enabling reentrancy-based over-withdrawals when LP tokens have callbacks.",
"findings": [
{
"title": "LPToDOKI.withdraw updates balances after external token transfer",
"category": "reentrancy",
"evidence": "`withdraw` calls `lpToken.safeTransfer(msg.sender, amount)` before reducing `_lpBalances` and `_lpTotalSupply`. `stake` uses `isContract` which can be bypassed during construction.",
"severity": "medium",
"locations": [
"contracts/Contract.sol:1048",
"contracts/Contract.sol:1052",
"contracts/Contract.sol:1053",
"contracts/Contract.sol:1040"
],
"recommendation": "Apply checks-effects-interactions: decrement `_lpBalances`/`_lpTotalSupply` before calling `lpToken.safeTransfer`, or add `ReentrancyGuard` to withdraw. Do not rely on `isContract` for access control; if contracts must be blocked, use explicit allowlists.",
"exploit_scenario": "An attacker deploys a contract that stakes during its constructor (bypassing the isContract check), then calls withdraw. If the LP token is ERC777/677-like or otherwise reentrant, the token transfer to the attacker contract triggers a callback that re-enters withdraw before `_lpBalances`/`_lpTotalSupply` are decreased, allowing repeated withdrawals and draining the pool\u2019s LP tokens."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLVALUE 00000006: DUP1 00000007: ISZERO 00000008: PUSH2 0x0010 0000000b: JUMPI 0000000c: PUSH1 0x00 0000000e: DUP1 0000000f: REVERT 00000010: JUMPDEST 00000011: POP 00000012: PUSH1 0x04 00000014: CALLDATASIZE 00000015: LT 00000016: PUSH2 0x01cf 00000019: JUMPI 0000001a: PUSH1 0x00 0000001c: CALLDATALOAD 0000001d: PUSH1 0xe0 0000001f: SHR 00000020: DUP1 00000021: PUSH4 0x8366a205 00000026: GT 00000027: PUSH2 0x0104 0000002a: JUMPI 0000002b: DUP1 0000002c: PUSH4 0xc6570d85 00000031: GT 00000032: PUSH2 0x00a2 00000035: JUMPI 00000036: DUP1 00000037: PUSH4 0xdbe93451 0000003c: GT 0000003d: PUSH2 0x0071 00000040: JUMPI 00000041: DUP1 00000042: PUSH4 0xdbe93451 00000047: EQ 00000048: PUSH2 0x055a 0000004b: JUMPI 0000004c: DUP1 0000004d: PUSH4 0xf2fde38b 00000052: EQ 00000053: PUSH2 0x05b2 00000056: JUMPI 00000057: DUP1 00000058: PUSH4 0xf5ae497a 0000005d: EQ 0000005e: PUSH2 0x05f6 00000061: JUMPI 00000062: DUP1 00000063: PUSH4 0xfb0e487a 00000068: EQ 00000069: PUSH2 0x062a 0000006c: JUMPI 0000006d: PUSH2 0x01cf 00000070: JUMP 00000071: JUMPDEST 00000072: DUP1 00000073: PUSH4 0xc6570d85 00000078: EQ 00000079: PUSH2 0x04cc 0000007c: JUMPI 0000007d: DUP1 0000007e: PUSH4 0xc8f33c91 00000083: EQ 00000084: PUSH2 0x04ea 00000087: JUMPI 00000088: DUP1 00000089: PUSH4 0xcd3daf9d 0000008e: EQ 0000008f: PUSH2 0x0508 00000092: JUMPI 00000093: DUP1 00000094: PUSH4 0xda09c72c 00000099: EQ 0000009a: PUSH2 0x0526 0000009d: JUMPI 0000009e: PUSH2 0x01cf 000000a1: JUMP 000000a2: JUMPDEST 000000a3: DUP1 000000a4: PUSH4 0x9642ddaf 000000a9: GT 000000aa: PUSH2 0x00de 000000ad: JUMPI 000000ae: DUP1 000000af: PUSH4 0x9642ddaf 000000b4: EQ 000000b5: PUSH2 0x046c 000000b8: JUMPI 000000b9: DUP1 000000ba: PUSH4 0x9bfffad7 000000bf: EQ 000000c0: PUSH2 0x0476 000000c3: JUMPI 000000c4: DUP1 000000c5: PUSH4 0xa694fc3a 000000ca: EQ 000000cb: PUSH2 0x0494 000000ce: JUMPI 000000cf: DUP1 000000d0: PUSH4 0xafbcfea1 000000d5: EQ 000000d6: PUSH2 0x04c2 000000d9: JUMPI 000000da: PUSH2 0x01cf 000000dd: JUMP 000000de: JUMPDEST 000000df: DUP1 000000e0: PUSH4 0x8366a205 000000e5: EQ 000000e6: PUSH2 0x03fc 000000e9: JUMPI 000000ea: DUP1 000000eb: PUSH4 0x8da5cb5b 000000f0: EQ 000000f1: PUSH2 0x041a 000000f4: JUMPI 000000f5: DUP1 000000f6: PUSH4 0x9231cf74 000000fb: EQ 000000fc: PUSH2 0x044e 000000ff: JUMPI 00000100: PUSH2 0x01cf 00000103: JUMP 00000104: JUMPDEST 00000105: DUP1 00000106: PUSH4 0x3cf6bcfe 0000010b: GT 0000010c: PUSH2 0x0171 0000010f: JUMPI 00000110: DUP1 00000111: PUSH4 0x70a08231 00000116: GT 00000117: PUSH2 0x014b 0000011a: JUMPI 0000011b: DUP1 0000011c: PUSH4 0x70a08231 00000121: EQ 00000122: PUSH2 0x035e 00000125: JUMPI 00000126: DUP1 00000127: PUSH4 0x715018a6 0000012c: EQ 0000012d: PUSH2 0x03b6 00000130: JUMPI 00000131: DUP1 00000132: PUSH4 0x7b0a47ee 00000137: EQ 00000138: PUSH2 0x03c0 0000013b: JUMPI 0000013c: DUP1 0000013d: PUSH4 0x7d8033f5 00000142: EQ 00000143: PUSH2 0x03de 00000146: JUMPI 00000147: PUSH2 0x01cf 0000014a: JUMP 0000014b: JUMPDEST 0000014c: DUP1 0000014d: PUSH4 0x3cf6bcfe 00000152: EQ 00000153: PUSH2 0x02de 00000156: JUMPI 00000157: DUP1 00000158: PUSH4 0x3ef0cc7b 0000015d: EQ 0000015e: PUSH2 0x02fc 00000161: JUMPI 00000162: DUP1 00000163: PUSH4 0x4b438c34 00000168: EQ 00000169: PUSH2 0x0340 0000016c: JUMPI 0000016d: PUSH2 0x01cf 00000170: JUMP 00000171: JUMPDEST 00000172: DUP1 00000173: PUSH4 0x22eb9363 00000178: GT 00000179: PUSH2 0x01ad 0000017c: JUMPI 0000017d: DUP1 0000017e: PUSH4 0x22eb9363 00000183: EQ 00000184: PUSH2 0x0244 00000187: JUMPI 00000188: DUP1 00000189: PUSH4 0x2e1a7d4d 0000018e: EQ 0000018f: PUSH2 0x0262 00000192: JUMPI 00000193: DUP1 00000194: PUSH4 0x35f50ade 00000199: EQ 0000019a: PUSH2 0x0290 0000019d: JUMPI 0000019e: DUP1 0000019f: PUSH4 0x379607f5 000001a4: EQ 000001a5: PUSH2 0x02b0 000001a8: JUMPI 000001a9: PUSH2 0x01cf 000001ac: JUMP 000001ad: JUMPDEST 000001ae: DUP1 000001af: PUSH4 0x18160ddd 000001b4: EQ 000001b5: PUSH2 0x01d4 000001b8: JUMPI 000001b9: DUP1 000001ba: PUSH4 0x1be05289 000001bf: EQ 000001c0: PUSH2 0x01f2 000001c3: JUMPI 000001c4: DUP1 000001c5: PUSH4 0x1de656a5 000001ca: EQ 000001cb: PUSH2 0x0210 000001ce: JUMPI 000001cf: JUMPDEST 000001d0: PUSH1 0x00 000001d2: DUP1 000001d3: REVERT 000001d4: JUMPDEST 000001d5: PUSH2 0x01dc 000001d8: PUSH2 0x0648 000001db: JUMP 000001dc: JUMPDEST 000001dd: PUSH1 0x40 000001df: MLOAD 000001e0: DUP1 000001e1: DUP3 000001e2: DUP2 000001e3: MSTORE 000001e4: PUSH1 0x20 000001e6: ADD 000001e7: SWAP2 000001e8: POP 000001e9: POP 000001ea: PUSH1 0x40 000001ec: MLOAD 000001ed: DUP1 000001ee: SWAP2 000001ef: SUB 000001f0: SWAP1 000001f1: RETURN 000001f2: JUMPDEST 000001f3: PUSH2 0x01fa 000001f6: PUSH2 0x0652 000001f9: JUMP 000001fa: JUMPDEST 000001fb: PUSH1 0x40 000001fd: MLOAD 000001fe: DUP1 000001ff: DUP3 00000200: DUP2 00000201: MSTORE 00000202: PUSH1 0x20 00000204: ADD 00000205: SWAP2 00000206: POP 00000207: POP 00000208: PUSH1 0x40 0000020a: MLOAD 0000020b: DUP1 0000020c: SWAP2 0000020d: SUB 0000020e: SWAP1 0000020f: RETURN 00000210: JUMPDEST 00000211: PUSH2 0x0218 00000214: PUSH2 0x0659 00000217: JUMP 00000218: JUMPDEST 00000219: PUSH1 0x40 0000021b: MLOAD 0000021c: DUP1 0000021d: DUP3 0000021e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000233: AND 00000234: DUP2 00000235: MSTORE 00000236: PUSH1 0x20 00000238: ADD 00000239: SWAP2 0000023a: POP 0000023b: POP 0000023c: PUSH1 0x40 0000023e: MLOAD 0000023f: DUP1 00000240: SWAP2 00000241: SUB 00000242: SWAP1 00000243: RETURN 00000244: JUMPDEST 00000245: PUSH2 0x024c 00000248: PUSH2 0x0683 0000024b: JUMP 0000024c: JUMPDEST 0000024d: PUSH1 0x40 0000024f: MLOAD 00000250: DUP1 00000251: DUP3 00000252: DUP2 00000253: MSTORE 00000254: PUSH1 0x20 00000256: ADD 00000257: SWAP2 00000258: POP 00000259: POP 0000025a: PUSH1 0x40 0000025c: MLOAD 0000025d: DUP1 0000025e: SWAP2 0000025f: SUB 00000260: SWAP1 00000261: RETURN 00000262: JUMPDEST 00000263: PUSH2 0x028e 00000266: PUSH1 0x04 00000268: DUP1 00000269: CALLDATASIZE 0000026a: SUB 0000026b: PUSH1 0x20 0000026d: DUP2 0000026e: LT 0000026f: ISZERO 00000270: PUSH2 0x0278 00000273: JUMPI 00000274: PUSH1 0x00 00000276: DUP1 00000277: REVERT 00000278: JUMPDEST 00000279: DUP2 0000027a: ADD 0000027b: SWAP1 0000027c: DUP1 0000027d: DUP1 0000027e: CALLDATALOAD 0000027f: SWAP1 00000280: PUSH1 0x20 00000282: ADD 00000283: SWAP1 00000284: SWAP3 00000285: SWAP2 00000286: SWAP1 00000287: POP 00000288: POP 00000289: POP 0000028a: PUSH2 0x0689 0000028d: JUMP 0000028e: JUMPDEST 0000028f: STOP 00000290: JUMPDEST 00000291: PUSH2 0x0298 00000294: PUSH2 0x0979 00000297: JUMP 00000298: JUMPDEST 00000299: PUSH1 0x40 0000029b: MLOAD 0000029c: DUP1 0000029d: DUP3 0000029e: ISZERO 0000029f: ISZERO 000002a0: DUP2 000002a1: MSTORE 000002a2: PUSH1 0x20 000002a4: ADD 000002a5: SWAP2 000002a6: POP 000002a7: POP 000002a8: PUSH1 0x40 000002aa: MLOAD 000002ab: DUP1 000002ac: SWAP2 000002ad: SUB 000002ae: SWAP1 000002af: RETURN 000002b0: JUMPDEST 000002b1: PUSH2 0x02dc 000002b4: PUSH1 0x04 000002b6: DUP1 000002b7: CALLDATASIZE 000002b8: SUB 000002b9: PUSH1 0x20 000002bb: DUP2 000002bc: LT 000002bd: ISZERO 000002be: PUSH2 0x02c6 000002c1: JUMPI 000002c2: PUSH1 0x00 000002c4: DUP1 000002c5: REVERT 000002c6: JUMPDEST 000002c7: DUP2 000002c8: ADD 000002c9: SWAP1 000002ca: DUP1 000002cb: DUP1 000002cc: CALLDATALOAD 000002cd: SWAP1 000002ce: PUSH1 0x20 000002d0: ADD 000002d1: SWAP1 000002d2: SWAP3 000002d3: SWAP2 000002d4: SWAP1 000002d5: POP 000002d6: POP 000002d7: POP 000002d8: PUSH2 0x098c 000002db: JUMP 000002dc: JUMPDEST 000002dd: STOP 000002de: JUMPDEST 000002df: PUSH2 0x02e6 000002e2: PUSH2 0x0c61 000002e5: JUMP 000002e6: JUMPDEST 000002e7: PUSH1 0x40 000002e9: MLOAD 000002ea: DUP1 000002eb: DUP3 000002ec: DUP2 000002ed: MSTORE 000002ee: PUSH1 0x20 000002f0: ADD 000002f1: SWAP2 000002f2: POP 000002f3: POP 000002f4: PUSH1 0x40 000002f6: MLOAD 000002f7: DUP1 000002f8: SWAP2 000002f9: SUB 000002fa: SWAP1 000002fb: RETURN 000002fc: JUMPDEST 000002fd: PUSH2 0x033e 00000300: PUSH1 0x04 00000302: DUP1 00000303: CALLDATASIZE 00000304: SUB 00000305: PUSH1 0x20 00000307: DUP2 00000308: LT 00000309: ISZERO 0000030a: PUSH2 0x0312 0000030d: JUMPI 0000030e: PUSH1 0x00 00000310: DUP1 00000311: REVERT 00000312: JUMPDEST 00000313: DUP2 00000314: ADD 00000315: SWAP1 00000316: DUP1 00000317: DUP1 00000318: CALLDATALOAD 00000319: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000032e: AND 0000032f: SWAP1 00000330: PUSH1 0x20 00000332: ADD 00000333: SWAP1 00000334: SWAP3 00000335: SWAP2 00000336: SWAP1 00000337: POP 00000338: POP 00000339: POP 0000033a: PUSH2 0x0c67 0000033d: JUMP 0000033e: JUMPDEST 0000033f: STOP 00000340: JUMPDEST 00000341: PUSH2 0x0348 00000344: PUSH2 0x0e11 00000347: JUMP 00000348: JUMPDEST 00000349: PUSH1 0x40 0000034b: MLOAD 0000034c: DUP1 0000034d: DUP3 0000034e: DUP2 0000034f: MSTORE 00000350: PUSH1 0x20 00000352: ADD 00000353: SWAP2 00000354: POP 00000355: POP 00000356: PUSH1 0x40 00000358: MLOAD 00000359: DUP1 0000035a: SWAP2 0000035b: SUB 0000035c: SWAP1 0000035d: RETURN 0000035e: JUMPDEST 0000035f: PUSH2 0x03a0 00000362: PUSH1 0x04 00000364: DUP1 00000365: CALLDATASIZE 00000366: SUB 00000367: PUSH1 0x20 00000369: DUP2 0000036a: LT 0000036b: ISZERO 0000036c: PUSH2 0x0374 0000036f: JUMPI 00000370: PUSH1 0x00 00000372: DUP1 00000373: REVERT 00000374: JUMPDEST 00000375: DUP2 00000376: ADD 00000377: SWAP1 00000378: DUP1 00000379: DUP1 0000037a: CALLDATALOAD 0000037b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000390: AND 00000391: SWAP1 00000392: PUSH1 0x20 00000394: ADD 00000395: SWAP1 00000396: SWAP3 00000397: SWAP2 00000398: SWAP1 00000399: POP 0000039a: POP 0000039b: POP 0000039c: PUSH2 0x0e17 0000039f: JUMP 000003a0: JUMPDEST 000003a1: PUSH1 0x40 000003a3: MLOAD 000003a4: DUP1 000003a5: DUP3 000003a6: DUP2 000003a7: MSTORE 000003a8: PUSH1 0x20 000003aa: ADD 000003ab: SWAP2 000003ac: POP 000003ad: POP 000003ae: PUSH1 0x40 000003b0: MLOAD 000003b1: DUP1 000003b2: SWAP2 000003b3: SUB 000003b4: SWAP1 000003b5: RETURN 000003b6: JUMPDEST 000003b7: PUSH2 0x03be 000003ba: PUSH2 0x0e60 000003bd: JUMP 000003be: JUMPDEST 000003bf: STOP 000003c0: JUMPDEST 000003c1: PUSH2 0x03c8 000003c4: PUSH2 0x0fe6 000003c7: JUMP 000003c8: JUMPDEST 000003c9: PUSH1 0x40 000003cb: MLOAD 000003cc: DUP1 000003cd: DUP3 000003ce: DUP2 000003cf: MSTORE 000003d0: PUSH1 0x20 000003d2: ADD 000003d3: SWAP2 000003d4: POP 000003d5: POP 000003d6: PUSH1 0x40 000003d8: MLOAD 000003d9: DUP1 000003da: SWAP2 000003db: SUB 000003dc: SWAP1 000003dd: RETURN 000003de: JUMPDEST 000003df: PUSH2 0x03e6 000003e2: PUSH2 0x0fec 000003e5: JUMP 000003e6: JUMPDEST 000003e7: PUSH1 0x40 000003e9: MLOAD 000003ea: DUP1 000003eb: DUP3 000003ec: DUP2 000003ed: MSTORE 000003ee: PUSH1 0x20 000003f0: ADD 000003f1: SWAP2 000003f2: POP 000003f3: POP 000003f4: PUSH1 0x40 000003f6: MLOAD 000003f7: DUP1 000003f8: SWAP2 000003f9: SUB 000003fa: SWAP1 000003fb: RETURN 000003fc: JUMPDEST 000003fd: PUSH2 0x0404 00000400: PUSH2 0x0ff2 00000403: JUMP 00000404: JUMPDEST 00000405: PUSH1 0x40 00000407: MLOAD 00000408: DUP1 00000409: DUP3 0000040a: DUP2 0000040b: MSTORE 0000040c: PUSH1 0x20 0000040e: ADD 0000040f: SWAP2 00000410: POP 00000411: POP 00000412: PUSH1 0x40 00000414: MLOAD 00000415: DUP1 00000416: SWAP2 00000417: SUB 00000418: SWAP1 00000419: RETURN 0000041a: JUMPDEST 0000041b: PUSH2 0x0422 0000041e: PUSH2 0x0ff8 00000421: JUMP 00000422: JUMPDEST 00000423: PUSH1 0x40 00000425: MLOAD 00000426: DUP1 00000427: DUP3 00000428: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000043d: AND 0000043e: DUP2 0000043f: MSTORE 00000440: PUSH1 0x20 00000442: ADD 00000443: SWAP2 00000444: POP 00000445: POP 00000446: PUSH1 0x40 00000448: MLOAD 00000449: DUP1 0000044a: SWAP2 0000044b: SUB 0000044c: SWAP1 0000044d: RETURN 0000044e: JUMPDEST 0000044f: PUSH2 0x0456 00000452: PUSH2 0x1021 00000455: JUMP 00000456: JUMPDEST 00000457: PUSH1 0x40 00000459: MLOAD 0000045a: DUP1 0000045b: DUP3 0000045c: DUP2 0000045d: MSTORE 0000045e: PUSH1 0x20 00000460: ADD 00000461: SWAP2 00000462: POP 00000463: POP 00000464: PUSH1 0x40 00000466: MLOAD 00000467: DUP1 00000468: SWAP2 00000469: SUB 0000046a: SWAP1 0000046b: RETURN 0000046c: JUMPDEST 0000046d: PUSH2 0x0474 00000470: PUSH2 0x1034 00000473: JUMP 00000474: JUMPDEST 00000475: STOP 00000476: JUMPDEST 00000477: PUSH2 0x047e 0000047a: PUSH2 0x11aa 0000047d: JUMP 0000047e: JUMPDEST 0000047f: PUSH1 0x40 00000481: MLOAD 00000482: DUP1 00000483: DUP3 00000484: DUP2 00000485: MSTORE 00000486: PUSH1 0x20 00000488: ADD 00000489: SWAP2 0000048a: POP 0000048b: POP 0000048c: PUSH1 0x40 0000048e: MLOAD 0000048f: DUP1 00000490: SWAP2 00000491: SUB 00000492: SWAP1 00000493: RETURN 00000494: JUMPDEST 00000495: PUSH2 0x04c0 00000498: PUSH1 0x04 0000049a: DUP1 0000049b: CALLDATASIZE 0000049c: SUB 0000049d: PUSH1 0x20 0000049f: DUP2 000004a0: LT 000004a1: ISZERO 000004a2: PUSH2 0x04aa 000004a5: JUMPI 000004a6: PUSH1 0x00 000004a8: DUP1 000004a9: REVERT 000004aa: JUMPDEST 000004ab: DUP2 000004ac: ADD 000004ad: SWAP1 000004ae: DUP1 000004af: DUP1 000004b0: CALLDATALOAD 000004b1: SWAP1 000004b2: PUSH1 0x20 000004b4: ADD 000004b5: SWAP1 000004b6: SWAP3 000004b7: SWAP2 000004b8: SWAP1 000004b9: POP 000004ba: POP 000004bb: POP 000004bc: PUSH2 0x11b0 000004bf: JUMP 000004c0: JUMPDEST 000004c1: STOP 000004c2: JUMPDEST 000004c3: PUSH2 0x04ca 000004c6: PUSH2 0x1417 000004c9: JUMP 000004ca: JUMPDEST 000004cb: STOP 000004cc: JUMPDEST 000004cd: PUSH2 0x04d4 000004d0: PUSH2 0x1684 000004d3: JUMP 000004d4: JUMPDEST 000004d5: PUSH1 0x40 000004d7: MLOAD 000004d8: DUP1 000004d9: DUP3 000004da: DUP2 000004db: MSTORE 000004dc: PUSH1 0x20 000004de: ADD 000004df: SWAP2 000004e0: POP 000004e1: POP 000004e2: PUSH1 0x40 000004e4: MLOAD 000004e5: DUP1 000004e6: SWAP2 000004e7: SUB 000004e8: SWAP1 000004e9: RETURN 000004ea: JUMPDEST 000004eb: PUSH2 0x04f2 000004ee: PUSH2 0x168a 000004f1: JUMP 000004f2: JUMPDEST 000004f3: PUSH1 0x40 000004f5: MLOAD 000004f6: DUP1 000004f7: DUP3 000004f8: DUP2 000004f9: MSTORE 000004fa: PUSH1 0x20 000004fc: ADD 000004fd: SWAP2 000004fe: POP 000004ff: POP 00000500: PUSH1 0x40 00000502: MLOAD 00000503: DUP1 00000504: SWAP2 00000505: SUB 00000506: SWAP1 00000507: RETURN 00000508: JUMPDEST 00000509: PUSH2 0x0510 0000050c: PUSH2 0x1690 0000050f: JUMP 00000510: JUMPDEST 00000511: PUSH1 0x40 00000513: MLOAD 00000514: DUP1 00000515: DUP3 00000516: DUP2 00000517: MSTORE 00000518: PUSH1 0x20 0000051a: ADD 0000051b: SWAP2 0000051c: POP 0000051d: POP 0000051e: PUSH1 0x40 00000520: MLOAD 00000521: DUP1 00000522: SWAP2 00000523: SUB 00000524: SWAP1 00000525: RETURN 00000526: JUMPDEST 00000527: PUSH2 0x052e 0000052a: PUSH2 0x1722 0000052d: JUMP 0000052e: JUMPDEST 0000052f: PUSH1 0x40 00000531: MLOAD 00000532: DUP1 00000533: DUP3 00000534: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000549: AND 0000054a: DUP2 0000054b: MSTORE 0000054c: PUSH1 0x20 0000054e: ADD 0000054f: SWAP2 00000550: POP 00000551: POP 00000552: PUSH1 0x40 00000554: MLOAD 00000555: DUP1 00000556: SWAP2 00000557: SUB 00000558: SWAP1 00000559: RETURN 0000055a: JUMPDEST 0000055b: PUSH2 0x059c 0000055e: PUSH1 0x04 00000560: DUP1 00000561: CALLDATASIZE 00000562: SUB 00000563: PUSH1 0x20 00000565: DUP2 00000566: LT 00000567: ISZERO 00000568: PUSH2 0x0570 0000056b: JUMPI 0000056c: PUSH1 0x00 0000056e: DUP1 0000056f: REVERT 00000570: JUMPDEST 00000571: DUP2 00000572: ADD 00000573: SWAP1 00000574: DUP1 00000575: DUP1 00000576: CALLDATALOAD 00000577: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000058c: AND 0000058d: SWAP1 0000058e: PUSH1 0x20 00000590: ADD 00000591: SWAP1 00000592: SWAP3 00000593: SWAP2 00000594: SWAP1 00000595: POP 00000596: POP 00000597: POP 00000598: PUSH2 0x1748 0000059b: JUMP 0000059c: JUMPDEST 0000059d: PUSH1 0x40 0000059f: MLOAD 000005a0: DUP1 000005a1: DUP3 000005a2: DUP2 000005a3: MSTORE 000005a4: PUSH1 0x20 000005a6: ADD 000005a7: SWAP2 000005a8: POP 000005a9: POP 000005aa: PUSH1 0x40 000005ac: MLOAD 000005ad: DUP1 000005ae: SWAP2 000005af: SUB 000005b0: SWAP1 000005b1: RETURN 000005b2: JUMPDEST 000005b3: PUSH2 0x05f4 000005b6: PUSH1 0x04 000005b8: DUP1 000005b9: CALLDATASIZE 000005ba: SUB 000005bb: PUSH1 0x20 000005bd: DUP2 000005be: LT 000005bf: ISZERO 000005c0: PUSH2 0x05c8 000005c3: JUMPI 000005c4: PUSH1 0x00 000005c6: DUP1 000005c7: REVERT 000005c8: JUMPDEST 000005c9: DUP2 000005ca: ADD 000005cb: SWAP1 000005cc: DUP1 000005cd: DUP1 000005ce: CALLDATALOAD 000005cf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005e4: AND 000005e5: SWAP1 000005e6: PUSH1 0x20 000005e8: ADD 000005e9: SWAP1 000005ea: SWAP3 000005eb: SWAP2 000005ec: SWAP1 000005ed: POP 000005ee: POP 000005ef: POP 000005f0: PUSH2 0x182f 000005f3: JUMP 000005f4: JUMPDEST 000005f5: STOP 000005f6: JUMPDEST 000005f7: PUSH2 0x05fe 000005fa: PUSH2 0x1a3a 000005fd: JUMP 000005fe: JUMPDEST 000005ff: PUSH1 0x40 00000601: MLOAD 00000602: DUP1 00000603: DUP3 00000604: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000619: AND 0000061a: DUP2 0000061b: MSTORE 0000061c: PUSH1 0x20 0000061e: ADD 0000061f: SWAP2 00000620: POP 00000621: POP 00000622: PUSH1 0x40 00000624: MLOAD 00000625: DUP1 00000626: SWAP2 00000627: SUB 00000628: SWAP1 00000629: RETURN 0000062a: JUMPDEST 0000062b: PUSH2 0x0632 0000062e: PUSH2 0x1a64 00000631: JUMP 00000632: JUMPDEST 00000633: PUSH1 0x40 00000635: MLOAD 00000636: DUP1 00000637: DUP3 00000638: DUP2 00000639: MSTORE 0000063a: PUSH1 0x20 0000063c: ADD 0000063d: SWAP2 0000063e: POP 0000063f: POP 00000640: PUSH1 0x40 00000642: MLOAD 00000643: DUP1 00000644: SWAP2 00000645: SUB 00000646: SWAP1 00000647: RETURN 00000648: JUMPDEST 00000649: PUSH1 0x00 0000064b: PUSH1 0x04 0000064d: SLOAD 0000064e: SWAP1 0000064f: POP 00000650: SWAP1 00000651: JUMP 00000652: JUMPDEST 00000653: PUSH3 0x127500 00000657: DUP2 00000658: JUMP 00000659: JUMPDEST 0000065a: PUSH1 0x00 0000065c: PUSH1 0x01 0000065e: PUSH1 0x00 00000660: SWAP1 00000661: SLOAD 00000662: SWAP1 00000663: PUSH2 0x0100 00000666: EXP 00000667: SWAP1 00000668: DIV 00000669: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000067e: AND 0000067f: SWAP1 00000680: POP 00000681: SWAP1 00000682: JUMP 00000683: JUMPDEST 00000684: PUSH1 0x07 00000686: SLOAD 00000687: DUP2 00000688: JUMP 00000689: JUMPDEST 0000068a: PUSH1 0x01 0000068c: ISZERO 0000068d: ISZERO 0000068e: PUSH1 0x06 00000690: PUSH1 0x00 00000692: SWAP1 00000693: SLOAD 00000694: SWAP1 00000695: PUSH2 0x0100 00000698: EXP 00000699: SWAP1 0000069a: DIV 0000069b: PUSH1 0xff 0000069d: AND 0000069e: ISZERO 0000069f: ISZERO 000006a0: EQ 000006a1: PUSH2 0x0712 000006a4: JUMPI 000006a5: PUSH1 0x40 000006a7: MLOAD 000006a8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000006c9: DUP2 000006ca: MSTORE 000006cb: PUSH1 0x04 000006cd: ADD 000006ce: DUP1 000006cf: DUP1 000006d0: PUSH1 0x20 000006d2: ADD 000006d3: DUP3 000006d4: DUP2 000006d5: SUB 000006d6: DUP3 000006d7: MSTORE 000006d8: PUSH1 0x11 000006da: DUP2 000006db: MSTORE 000006dc: PUSH1 0x20 000006de: ADD 000006df: DUP1 000006e0: PUSH32 0x48617665206e6f7420737461727465642e000000000000000000000000000000 00000701: DUP2 00000702: MSTORE 00000703: POP 00000704: PUSH1 0x20 00000706: ADD 00000707: SWAP2 00000708: POP 00000709: POP 0000070a: PUSH1 0x40 0000070c: MLOAD 0000070d: DUP1 0000070e: SWAP2 0000070f: SUB 00000710: SWAP1 00000711: REVERT 00000712: JUMPDEST 00000713: PUSH2 0x071b 00000716: CALLER 00000717: PUSH2 0x1a6a 0000071a: JUMP 0000071b: JUMPDEST 0000071c: PUSH2 0x0723 0000071f: PUSH2 0x1b50 00000722: JUMP 00000723: JUMPDEST 00000724: PUSH1 0x03 00000726: PUSH1 0x00 00000728: CALLER 00000729: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000073e: AND 0000073f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000754: AND 00000755: DUP2 00000756: MSTORE 00000757: PUSH1 0x20 00000759: ADD 0000075a: SWAP1 0000075b: DUP2 0000075c: MSTORE 0000075d: PUSH1 0x20 0000075f: ADD 00000760: PUSH1 0x00 00000762: KECCAK256 00000763: SLOAD 00000764: DUP2 00000765: GT 00000766: ISZERO 00000767: DUP1 00000768: ISZERO 00000769: PUSH2 0x07b1 0000076c: JUMPI 0000076d: POP 0000076e: PUSH1 0x00 00000770: PUSH1 0x03 00000772: PUSH1 0x00 00000774: CALLER 00000775: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000078a: AND 0000078b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007a0: AND 000007a1: DUP2 000007a2: MSTORE 000007a3: PUSH1 0x20 000007a5: ADD 000007a6: SWAP1 000007a7: DUP2 000007a8: MSTORE 000007a9: PUSH1 0x20 000007ab: ADD 000007ac: PUSH1 0x00 000007ae: KECCAK256 000007af: SLOAD 000007b0: GT 000007b1: JUMPDEST 000007b2: PUSH2 0x0823 000007b5: JUMPI 000007b6: PUSH1 0x40 000007b8: MLOAD 000007b9: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000007da: DUP2 000007db: MSTORE 000007dc: PUSH1 0x04 000007de: ADD 000007df: DUP1 000007e0: DUP1 000007e1: PUSH1 0x20 000007e3: ADD 000007e4: DUP3 000007e5: DUP2 000007e6: SUB 000007e7: DUP3 000007e8: MSTORE 000007e9: PUSH1 0x0d 000007eb: DUP2 000007ec: MSTORE 000007ed: PUSH1 0x20 000007ef: ADD 000007f0: DUP1 000007f1: PUSH32 0x4261642077697468647261772e00000000000000000000000000000000000000 00000812: DUP2 00000813: MSTORE 00000814: POP 00000815: PUSH1 0x20 00000817: ADD 00000818: SWAP2 00000819: POP 0000081a: POP 0000081b: PUSH1 0x40 0000081d: MLOAD 0000081e: DUP1 0000081f: SWAP2 00000820: SUB 00000821: SWAP1 00000822: REVERT 00000823: JUMPDEST 00000824: PUSH2 0x0870 00000827: CALLER 00000828: DUP3 00000829: PUSH1 0x02 0000082b: PUSH1 0x00 0000082d: SWAP1 0000082e: SLOAD 0000082f: SWAP1 00000830: PUSH2 0x0100 00000833: EXP 00000834: SWAP1 00000835: DIV 00000836: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000084b: AND 0000084c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000861: AND 00000862: PUSH2 0x1cb6 00000865: SWAP1 00000866: SWAP3 00000867: SWAP2 00000868: SWAP1 00000869: PUSH4 0xffffffff 0000086e: AND 0000086f: JUMP 00000870: JUMPDEST 00000871: PUSH2 0x0885 00000874: DUP2 00000875: PUSH1 0x04 00000877: SLOAD 00000878: PUSH2 0x1d58 0000087b: SWAP1 0000087c: SWAP2 0000087d: SWAP1 0000087e: PUSH4 0xffffffff 00000883: AND 00000884: JUMP 00000885: JUMPDEST 00000886: PUSH1 0x04 00000888: DUP2 00000889: SWAP1 0000088a: SSTORE 0000088b: POP 0000088c: PUSH2 0x08dd 0000088f: DUP2 00000890: PUSH1 0x03 00000892: PUSH1 0x00 00000894: CALLER 00000895: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008aa: AND 000008ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008c0: AND 000008c1: DUP2 000008c2: MSTORE 000008c3: PUSH1 0x20 000008c5: ADD 000008c6: SWAP1 000008c7: DUP2 000008c8: MSTORE 000008c9: PUSH1 0x20 000008cb: ADD 000008cc: PUSH1 0x00 000008ce: KECCAK256 000008cf: SLOAD 000008d0: PUSH2 0x1d58 000008d3: SWAP1 000008d4: SWAP2 000008d5: SWAP1 000008d6: PUSH4 0xffffffff 000008db: AND 000008dc: JUMP 000008dd: JUMPDEST 000008de: PUSH1 0x03 000008e0: PUSH1 0x00 000008e2: CALLER 000008e3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008f8: AND 000008f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000090e: AND 0000090f: DUP2 00000910: MSTORE 00000911: PUSH1 0x20 00000913: ADD 00000914: SWAP1 00000915: DUP2 00000916: MSTORE 00000917: PUSH1 0x20 00000919: ADD 0000091a: PUSH1 0x00 0000091c: KECCAK256 0000091d: DUP2 0000091e: SWAP1 0000091f: SSTORE 00000920: POP 00000921: PUSH2 0x0928 00000924: PUSH2 0x1da2 00000927: JUMP 00000928: JUMPDEST 00000929: CALLER 0000092a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000093f: AND 00000940: PUSH32 0x884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364 00000961: DUP3 00000962: PUSH1 0x40 00000964: MLOAD 00000965: DUP1 00000966: DUP3 00000967: DUP2 00000968: MSTORE 00000969: PUSH1 0x20 0000096b: ADD 0000096c: SWAP2 0000096d: POP 0000096e: POP 0000096f: PUSH1 0x40 00000971: MLOAD 00000972: DUP1 00000973: SWAP2 00000974: SUB 00000975: SWAP1 00000976: LOG2 00000977: POP 00000978: JUMP 00000979: JUMPDEST 0000097a: PUSH1 0x06 0000097c: PUSH1 0x00 0000097e: SWAP1 0000097f: SLOAD 00000980: SWAP1 00000981: PUSH2 0x0100 00000984: EXP 00000985: SWAP1 00000986: DIV 00000987: PUSH1 0xff 00000989: AND 0000098a: DUP2 0000098b: JUMP 0000098c: JUMPDEST 0000098d: PUSH1 0x01 0000098f: ISZERO 00000990: ISZERO 00000991: PUSH1 0x06 00000993: PUSH1 0x00 00000995: SWAP1 00000996: SLOAD 00000997: SWAP1 00000998: PUSH2 0x0100 0000099b: EXP 0000099c: SWAP1 0000099d: DIV 0000099e: PUSH1 0xff 000009a0: AND 000009a1: ISZERO 000009a2: ISZERO 000009a3: EQ 000009a4: PUSH2 0x0a15 000009a7: JUMPI 000009a8: PUSH1 0x40 000009aa: MLOAD 000009ab: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000009cc: DUP2 000009cd: MSTORE 000009ce: PUSH1 0x04 000009d0: ADD 000009d1: DUP1 000009d2: DUP1 000009d3: PUSH1 0x20 000009d5: ADD 000009d6: DUP3 000009d7: DUP2 000009d8: SUB 000009d9: DUP3 000009da: MSTORE 000009db: PUSH1 0x11 000009dd: DUP2 000009de: MSTORE 000009df: PUSH1 0x20 000009e1: ADD 000009e2: DUP1 000009e3: PUSH32 0x48617665206e6f7420737461727465642e000000000000000000000000000000 00000a04: DUP2 00000a05: MSTORE 00000a06: POP 00000a07: PUSH1 0x20 00000a09: ADD 00000a0a: SWAP2 00000a0b: POP 00000a0c: POP 00000a0d: PUSH1 0x40 00000a0f: MLOAD 00000a10: DUP1 00000a11: SWAP2 00000a12: SUB 00000a13: SWAP1 00000a14: REVERT 00000a15: JUMPDEST 00000a16: PUSH2 0x0a1e 00000a19: CALLER 00000a1a: PUSH2 0x1a6a 00000a1d: JUMP 00000a1e: JUMPDEST 00000a1f: PUSH2 0x0a26 00000a22: PUSH2 0x1b50 00000a25: JUMP 00000a26: JUMPDEST 00000a27: PUSH1 0x0b 00000a29: PUSH1 0x00 00000a2b: CALLER 00000a2c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a41: AND 00000a42: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a57: AND 00000a58: DUP2 00000a59: MSTORE 00000a5a: PUSH1 0x20 00000a5c: ADD 00000a5d: SWAP1 00000a5e: DUP2 00000a5f: MSTORE 00000a60: PUSH1 0x20 00000a62: ADD 00000a63: PUSH1 0x00 00000a65: KECCAK256 00000a66: SLOAD 00000a67: DUP2 00000a68: GT 00000a69: ISZERO 00000a6a: DUP1 00000a6b: ISZERO 00000a6c: PUSH2 0x0ab4 00000a6f: JUMPI 00000a70: POP 00000a71: PUSH1 0x00 00000a73: PUSH1 0x0b 00000a75: PUSH1 0x00 00000a77: CALLER 00000a78: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a8d: AND 00000a8e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000aa3: AND 00000aa4: DUP2 00000aa5: MSTORE 00000aa6: PUSH1 0x20 00000aa8: ADD 00000aa9: SWAP1 00000aaa: DUP2 00000aab: MSTORE 00000aac: PUSH1 0x20 00000aae: ADD 00000aaf: PUSH1 0x00 00000ab1: KECCAK256 00000ab2: SLOAD 00000ab3: GT 00000ab4: JUMPDEST 00000ab5: PUSH2 0x0b26 00000ab8: JUMPI 00000ab9: PUSH1 0x40 00000abb: MLOAD 00000abc: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000add: DUP2 00000ade: MSTORE 00000adf: PUSH1 0x04 00000ae1: ADD 00000ae2: DUP1 00000ae3: DUP1 00000ae4: PUSH1 0x20 00000ae6: ADD 00000ae7: DUP3 00000ae8: DUP2 00000ae9: SUB 00000aea: DUP3 00000aeb: MSTORE 00000aec: PUSH1 0x0a 00000aee: DUP2 00000aef: MSTORE 00000af0: PUSH1 0x20 00000af2: ADD 00000af3: DUP1 00000af4: PUSH32 0x42616420636c61696d2e00000000000000000000000000000000000000000000 00000b15: DUP2 00000b16: MSTORE 00000b17: POP 00000b18: PUSH1 0x20 00000b1a: ADD 00000b1b: SWAP2 00000b1c: POP 00000b1d: POP 00000b1e: PUSH1 0x40 00000b20: MLOAD 00000b21: DUP1 00000b22: SWAP2 00000b23: SUB 00000b24: SWAP1 00000b25: REVERT 00000b26: JUMPDEST 00000b27: PUSH2 0x0b78 00000b2a: DUP2 00000b2b: PUSH1 0x0b 00000b2d: PUSH1 0x00 00000b2f: CALLER 00000b30: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b45: AND 00000b46: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b5b: AND 00000b5c: DUP2 00000b5d: MSTORE 00000b5e: PUSH1 0x20 00000b60: ADD 00000b61: SWAP1 00000b62: DUP2 00000b63: MSTORE 00000b64: PUSH1 0x20 00000b66: ADD 00000b67: PUSH1 0x00 00000b69: KECCAK256 00000b6a: SLOAD 00000b6b: PUSH2 0x1d58 00000b6e: SWAP1 00000b6f: SWAP2 00000b70: SWAP1 00000b71: PUSH4 0xffffffff 00000b76: AND 00000b77: JUMP 00000b78: JUMPDEST 00000b79: PUSH1 0x0b 00000b7b: PUSH1 0x00 00000b7d: CALLER 00000b7e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000b93: AND 00000b94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ba9: AND 00000baa: DUP2 00000bab: MSTORE 00000bac: PUSH1 0x20 00000bae: ADD 00000baf: SWAP1 00000bb0: DUP2 00000bb1: MSTORE 00000bb2: PUSH1 0x20 00000bb4: ADD 00000bb5: PUSH1 0x00 00000bb7: KECCAK256 00000bb8: DUP2 00000bb9: SWAP1 00000bba: SSTORE 00000bbb: POP 00000bbc: PUSH2 0x0c08 00000bbf: CALLER 00000bc0: DUP3 00000bc1: PUSH1 0x01 00000bc3: PUSH1 0x00 00000bc5: SWAP1 00000bc6: SLOAD 00000bc7: SWAP1 00000bc8: PUSH2 0x0100 00000bcb: EXP 00000bcc: SWAP1 00000bcd: DIV 00000bce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000be3: AND 00000be4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bf9: AND 00000bfa: PUSH2 0x1cb6 00000bfd: SWAP1 00000bfe: SWAP3 00000bff: SWAP2 00000c00: SWAP1 00000c01: PUSH4 0xffffffff 00000c06: AND 00000c07: JUMP 00000c08: JUMPDEST 00000c09: PUSH2 0x0c10 00000c0c: PUSH2 0x1da2 00000c0f: JUMP 00000c10: JUMPDEST 00000c11: CALLER 00000c12: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c27: AND 00000c28: PUSH32 0x47cee97cb7acd717b3c0aa1435d004cd5b3c8c57d70dbceb4e4458bbd60e39d4 00000c49: DUP3 00000c4a: PUSH1 0x40 00000c4c: MLOAD 00000c4d: DUP1 00000c4e: DUP3 00000c4f: DUP2 00000c50: MSTORE 00000c51: PUSH1 0x20 00000c53: ADD 00000c54: SWAP2 00000c55: POP 00000c56: POP 00000c57: PUSH1 0x40 00000c59: MLOAD 00000c5a: DUP1 00000c5b: SWAP2 00000c5c: SUB 00000c5d: SWAP1 00000c5e: LOG2 00000c5f: POP 00000c60: JUMP 00000c61: JUMPDEST 00000c62: PUSH1 0x0f 00000c64: SLOAD 00000c65: DUP2 00000c66: JUMP 00000c67: JUMPDEST 00000c68: PUSH1 0x0d 00000c6a: PUSH1 0x00 00000c6c: SWAP1 00000c6d: SLOAD 00000c6e: SWAP1 00000c6f: PUSH2 0x0100 00000c72: EXP 00000c73: SWAP1 00000c74: DIV 00000c75: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c8a: AND 00000c8b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ca0: AND 00000ca1: CALLER 00000ca2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000cb7: AND 00000cb8: EQ 00000cb9: PUSH2 0x0d2a 00000cbc: JUMPI 00000cbd: PUSH1 0x40 00000cbf: MLOAD 00000cc0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000ce1: DUP2 00000ce2: MSTORE 00000ce3: PUSH1 0x04 00000ce5: ADD 00000ce6: DUP1 00000ce7: DUP1 00000ce8: PUSH1 0x20 00000cea: ADD 00000ceb: DUP3 00000cec: DUP2 00000ced: SUB 00000cee: DUP3 00000cef: MSTORE 00000cf0: PUSH1 0x15 00000cf2: DUP2 00000cf3: MSTORE 00000cf4: PUSH1 0x20 00000cf6: ADD 00000cf7: DUP1 00000cf8: PUSH32 0x54686973206973206f6e6c7920666f72206465762e0000000000000000000000 00000d19: DUP2 00000d1a: MSTORE 00000d1b: POP 00000d1c: PUSH1 0x20 00000d1e: ADD 00000d1f: SWAP2 00000d20: POP 00000d21: POP 00000d22: PUSH1 0x40 00000d24: MLOAD 00000d25: DUP1 00000d26: SWAP2 00000d27: SUB 00000d28: SWAP1 00000d29: REVERT 00000d2a: JUMPDEST 00000d2b: PUSH1 0x00 00000d2d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d42: AND 00000d43: DUP2 00000d44: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d59: AND 00000d5a: EQ 00000d5b: ISZERO 00000d5c: PUSH2 0x0dcd 00000d5f: JUMPI 00000d60: PUSH1 0x40 00000d62: MLOAD 00000d63: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d84: DUP2 00000d85: MSTORE 00000d86: PUSH1 0x04 00000d88: ADD 00000d89: DUP1 00000d8a: DUP1 00000d8b: PUSH1 0x20 00000d8d: ADD 00000d8e: DUP3 00000d8f: DUP2 00000d90: SUB 00000d91: DUP3 00000d92: MSTORE 00000d93: PUSH1 0x09 00000d95: DUP2 00000d96: MSTORE 00000d97: PUSH1 0x20 00000d99: ADD 00000d9a: DUP1 00000d9b: PUSH32 0x7a65726f20616464720000000000000000000000000000000000000000000000 00000dbc: DUP2 00000dbd: MSTORE 00000dbe: POP 00000dbf: PUSH1 0x20 00000dc1: ADD 00000dc2: SWAP2 00000dc3: POP 00000dc4: POP 00000dc5: PUSH1 0x40 00000dc7: MLOAD 00000dc8: DUP1 00000dc9: SWAP2 00000dca: SUB 00000dcb: SWAP1 00000dcc: REVERT 00000dcd: JUMPDEST 00000dce: DUP1 00000dcf: PUSH1 0x0d 00000dd1: PUSH1 0x00 00000dd3: PUSH2 0x0100 00000dd6: EXP 00000dd7: DUP2 00000dd8: SLOAD 00000dd9: DUP2 00000dda: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000def: MUL 00000df0: NOT 00000df1: AND 00000df2: SWAP1 00000df3: DUP4 00000df4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e09: AND 00000e0a: MUL 00000e0b: OR 00000e0c: SWAP1 00000e0d: SSTORE 00000e0e: POP 00000e0f: POP 00000e10: JUMP 00000e11: JUMPDEST 00000e12: PUSH1 0x11 00000e14: SLOAD 00000e15: DUP2 00000e16: JUMP 00000e17: JUMPDEST 00000e18: PUSH1 0x00 00000e1a: PUSH1 0x03 00000e1c: PUSH1 0x00 00000e1e: DUP4 00000e1f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e34: AND 00000e35: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e4a: AND 00000e4b: DUP2 00000e4c: MSTORE 00000e4d: PUSH1 0x20 00000e4f: ADD 00000e50: SWAP1 00000e51: DUP2 00000e52: MSTORE 00000e53: PUSH1 0x20 00000e55: ADD 00000e56: PUSH1 0x00 00000e58: KECCAK256 00000e59: SLOAD 00000e5a: SWAP1 00000e5b: POP 00000e5c: SWAP2 00000e5d: SWAP1 00000e5e: POP 00000e5f: JUMP 00000e60: JUMPDEST 00000e61: PUSH2 0x0e68 00000e64: PUSH2 0x1e59 00000e67: JUMP 00000e68: JUMPDEST 00000e69: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e7e: AND 00000e7f: PUSH1 0x00 00000e81: DUP1 00000e82: SLOAD 00000e83: SWAP1 00000e84: PUSH2 0x0100 00000e87: EXP 00000e88: SWAP1 00000e89: DIV 00000e8a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e9f: AND 00000ea0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000eb5: AND 00000eb6: EQ 00000eb7: PUSH2 0x0f28 00000eba: JUMPI 00000ebb: PUSH1 0x40 00000ebd: MLOAD 00000ebe: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000edf: DUP2 00000ee0: MSTORE 00000ee1: PUSH1 0x04 00000ee3: ADD 00000ee4: DUP1 00000ee5: DUP1 00000ee6: PUSH1 0x20 00000ee8: ADD 00000ee9: DUP3 00000eea: DUP2 00000eeb: SUB 00000eec: DUP3 00000eed: MSTORE 00000eee: PUSH1 0x20 00000ef0: DUP2 00000ef1: MSTORE 00000ef2: PUSH1 0x20 00000ef4: ADD 00000ef5: DUP1 00000ef6: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000f17: DUP2 00000f18: MSTORE 00000f19: POP 00000f1a: PUSH1 0x20 00000f1c: ADD 00000f1d: SWAP2 00000f1e: POP 00000f1f: POP 00000f20: PUSH1 0x40 00000f22: MLOAD 00000f23: DUP1 00000f24: SWAP2 00000f25: SUB 00000f26: SWAP1 00000f27: REVERT 00000f28: JUMPDEST 00000f29: PUSH1 0x00 00000f2b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f40: AND 00000f41: PUSH1 0x00 00000f43: DUP1 00000f44: SLOAD 00000f45: SWAP1 00000f46: PUSH2 0x0100 00000f49: EXP 00000f4a: SWAP1 00000f4b: DIV 00000f4c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f61: AND 00000f62: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f77: AND 00000f78: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000f99: PUSH1 0x40 00000f9b: MLOAD 00000f9c: PUSH1 0x40 00000f9e: MLOAD 00000f9f: DUP1 00000fa0: SWAP2 00000fa1: SUB 00000fa2: SWAP1 00000fa3: LOG3 00000fa4: PUSH1 0x00 00000fa6: DUP1 00000fa7: PUSH1 0x00 00000fa9: PUSH2 0x0100 00000fac: EXP 00000fad: DUP2 00000fae: SLOAD 00000faf: DUP2 00000fb0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fc5: MUL 00000fc6: NOT 00000fc7: AND 00000fc8: SWAP1 00000fc9: DUP4 00000fca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fdf: AND 00000fe0: MUL 00000fe1: OR 00000fe2: SWAP1 00000fe3: SSTORE 00000fe4: POP 00000fe5: JUMP 00000fe6: JUMPDEST 00000fe7: PUSH1 0x09 00000fe9: SLOAD 00000fea: DUP2 00000feb: JUMP 00000fec: JUMPDEST 00000fed: PUSH1 0x0e 00000fef: SLOAD 00000ff0: DUP2 00000ff1: JUMP 00000ff2: JUMPDEST 00000ff3: PUSH1 0x10 00000ff5: SLOAD 00000ff6: DUP2 00000ff7: JUMP 00000ff8: JUMPDEST 00000ff9: PUSH1 0x00 00000ffb: DUP1 00000ffc: PUSH1 0x00 00000ffe: SWAP1 00000fff: SLOAD 00001000: SWAP1 00001001: PUSH2 0x0100 00001004: EXP 00001005: SWAP1 00001006: DIV 00001007: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000101c: AND 0000101d: SWAP1 0000101e: POP 0000101f: SWAP1 00001020: JUMP 00001021: JUMPDEST 00001022: PUSH1 0x00 00001024: PUSH2 0x102f 00001027: TIMESTAMP 00001028: PUSH1 0x07 0000102a: SLOAD 0000102b: PUSH2 0x1e61 0000102e: JUMP 0000102f: JUMPDEST 00001030: SWAP1 00001031: POP 00001032: SWAP1 00001033: JUMP 00001034: JUMPDEST 00001035: PUSH2 0x103c 00001038: PUSH2 0x1e59 0000103b: JUMP 0000103c: JUMPDEST 0000103d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001052: AND 00001053: PUSH1 0x00 00001055: DUP1 00001056: SLOAD 00001057: SWAP1 00001058: PUSH2 0x0100 0000105b: EXP 0000105c: SWAP1 0000105d: DIV 0000105e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001073: AND 00001074: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001089: AND 0000108a: EQ 0000108b: PUSH2 0x10fc 0000108e: JUMPI 0000108f: PUSH1 0x40 00001091: MLOAD 00001092: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000010b3: DUP2 000010b4: MSTORE 000010b5: PUSH1 0x04 000010b7: ADD 000010b8: DUP1 000010b9: DUP1 000010ba: PUSH1 0x20 000010bc: ADD 000010bd: DUP3 000010be: DUP2 000010bf: SUB 000010c0: DUP3 000010c1: MSTORE 000010c2: PUSH1 0x20 000010c4: DUP2 000010c5: MSTORE 000010c6: PUSH1 0x20 000010c8: ADD 000010c9: DUP1 000010ca: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 000010eb: DUP2 000010ec: MSTORE 000010ed: POP 000010ee: PUSH1 0x20 000010f0: ADD 000010f1: SWAP2 000010f2: POP 000010f3: POP 000010f4: PUSH1 0x40 000010f6: MLOAD 000010f7: DUP1 000010f8: SWAP2 000010f9: SUB 000010fa: SWAP1 000010fb: REVERT 000010fc: JUMPDEST 000010fd: PUSH1 0x01 000010ff: PUSH1 0x00 00001101: SWAP1 00001102: SLOAD 00001103: SWAP1 00001104: PUSH2 0x0100 00001107: EXP 00001108: SWAP1 00001109: DIV 0000110a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000111f: AND 00001120: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001135: AND 00001136: PUSH4 0x40c10f19 0000113b: ADDRESS 0000113c: PUSH1 0x01 0000113e: PUSH1 0x40 00001140: MLOAD 00001141: DUP4 00001142: PUSH4 0xffffffff 00001147: AND 00001148: PUSH1 0xe0 0000114a: SHL 0000114b: DUP2 0000114c: MSTORE 0000114d: PUSH1 0x04 0000114f: ADD 00001150: DUP1 00001151: DUP4 00001152: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001167: AND 00001168: DUP2 00001169: MSTORE 0000116a: PUSH1 0x20 0000116c: ADD 0000116d: DUP3 0000116e: DUP2 0000116f: MSTORE 00001170: PUSH1 0x20 00001172: ADD 00001173: SWAP3 00001174: POP 00001175: POP 00001176: POP 00001177: PUSH1 0x00 00001179: PUSH1 0x40 0000117b: MLOAD 0000117c: DUP1 0000117d: DUP4 0000117e: SUB 0000117f: DUP2 00001180: PUSH1 0x00 00001182: DUP8 00001183: DUP1 00001184: EXTCODESIZE 00001185: ISZERO 00001186: DUP1 00001187: ISZERO 00001188: PUSH2 0x1190 0000118b: JUMPI 0000118c: PUSH1 0x00 0000118e: DUP1 0000118f: REVERT 00001190: JUMPDEST 00001191: POP 00001192: GAS 00001193: CALL 00001194: ISZERO 00001195: DUP1 00001196: ISZERO 00001197: PUSH2 0x11a4 0000119a: JUMPI 0000119b: RETURNDATASIZE 0000119c: PUSH1 0x00 0000119e: DUP1 0000119f: RETURNDATACOPY 000011a0: RETURNDATASIZE 000011a1: PUSH1 0x00 000011a3: REVERT 000011a4: JUMPDEST 000011a5: POP 000011a6: POP 000011a7: POP 000011a8: POP 000011a9: JUMP 000011aa: JUMPDEST 000011ab: PUSH1 0x05 000011ad: SLOAD 000011ae: DUP2 000011af: JUMP 000011b0: JUMPDEST 000011b1: PUSH1 0x01 000011b3: ISZERO 000011b4: ISZERO 000011b5: PUSH1 0x06 000011b7: PUSH1 0x00 000011b9: SWAP1 000011ba: SLOAD 000011bb: SWAP1 000011bc: PUSH2 0x0100 000011bf: EXP 000011c0: SWAP1 000011c1: DIV 000011c2: PUSH1 0xff 000011c4: AND 000011c5: ISZERO 000011c6: ISZERO 000011c7: EQ 000011c8: PUSH2 0x1239 000011cb: JUMPI 000011cc: PUSH1 0x40 000011ce: MLOAD 000011cf: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000011f0: DUP2 000011f1: MSTORE 000011f2: PUSH1 0x04 000011f4: ADD 000011f5: DUP1 000011f6: DUP1 000011f7: PUSH1 0x20 000011f9: ADD 000011fa: DUP3 000011fb: DUP2 000011fc: SUB 000011fd: DUP3 000011fe: MSTORE 000011ff: PUSH1 0x11 00001201: DUP2 00001202: MSTORE 00001203: PUSH1 0x20 00001205: ADD 00001206: DUP1 00001207: PUSH32 0x48617665206e6f7420737461727465642e000000000000000000000000000000 00001228: DUP2 00001229: MSTORE 0000122a: POP 0000122b: PUSH1 0x20 0000122d: ADD 0000122e: SWAP2 0000122f: POP 00001230: POP 00001231: PUSH1 0x40 00001233: MLOAD 00001234: DUP1 00001235: SWAP2 00001236: SUB 00001237: SWAP1 00001238: REVERT 00001239: JUMPDEST 0000123a: PUSH2 0x1242 0000123d: CALLER 0000123e: PUSH2 0x1a6a 00001241: JUMP 00001242: JUMPDEST 00001243: PUSH2 0x124a 00001246: PUSH2 0x1b50 00001249: JUMP 0000124a: JUMPDEST 0000124b: PUSH2 0x1269 0000124e: CALLER 0000124f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001264: AND 00001265: PUSH2 0x1e7a 00001268: JUMP 00001269: JUMPDEST 0000126a: ISZERO 0000126b: PUSH2 0x12bf 0000126e: JUMPI 0000126f: PUSH1 0x40 00001271: MLOAD 00001272: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001293: DUP2 00001294: MSTORE 00001295: PUSH1 0x04 00001297: ADD 00001298: DUP1 00001299: DUP1 0000129a: PUSH1 0x20 0000129c: ADD 0000129d: DUP3 0000129e: DUP2 0000129f: SUB 000012a0: DUP3 000012a1: MSTORE 000012a2: PUSH1 0x23 000012a4: DUP2 000012a5: MSTORE 000012a6: PUSH1 0x20 000012a8: ADD 000012a9: DUP1 000012aa: PUSH2 0x25cf 000012ad: PUSH1 0x23 000012af: SWAP2 000012b0: CODECOPY 000012b1: PUSH1 0x40 000012b3: ADD 000012b4: SWAP2 000012b5: POP 000012b6: POP 000012b7: PUSH1 0x40 000012b9: MLOAD 000012ba: DUP1 000012bb: SWAP2 000012bc: SUB 000012bd: SWAP1 000012be: REVERT 000012bf: JUMPDEST 000012c0: PUSH2 0x130e 000012c3: CALLER 000012c4: ADDRESS 000012c5: DUP4 000012c6: PUSH1 0x02 000012c8: PUSH1 0x00 000012ca: SWAP1 000012cb: SLOAD 000012cc: SWAP1 000012cd: PUSH2 0x0100 000012d0: EXP 000012d1: SWAP1 000012d2: DIV 000012d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012e8: AND 000012e9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000012fe: AND 000012ff: PUSH2 0x1e8d 00001302: SWAP1 00001303: SWAP4 00001304: SWAP3 00001305: SWAP2 00001306: SWAP1 00001307: PUSH4 0xffffffff 0000130c: AND 0000130d: JUMP 0000130e: JUMPDEST 0000130f: PUSH2 0x1323 00001312: DUP2 00001313: PUSH1 0x04 00001315: SLOAD 00001316: PUSH2 0x1f4e 00001319: SWAP1 0000131a: SWAP2 0000131b: SWAP1 0000131c: PUSH4 0xffffffff 00001321: AND 00001322: JUMP 00001323: JUMPDEST 00001324: PUSH1 0x04 00001326: DUP2 00001327: SWAP1 00001328: SSTORE 00001329: POP 0000132a: PUSH2 0x137b 0000132d: DUP2 0000132e: PUSH1 0x03 00001330: PUSH1 0x00 00001332: CALLER 00001333: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001348: AND 00001349: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000135e: AND 0000135f: DUP2 00001360: MSTORE 00001361: PUSH1 0x20 00001363: ADD 00001364: SWAP1 00001365: DUP2 00001366: MSTORE 00001367: PUSH1 0x20 00001369: ADD 0000136a: PUSH1 0x00 0000136c: KECCAK256 0000136d: SLOAD 0000136e: PUSH2 0x1f4e 00001371: SWAP1 00001372: SWAP2 00001373: SWAP1 00001374: PUSH4 0xffffffff 00001379: AND 0000137a: JUMP 0000137b: JUMPDEST 0000137c: PUSH1 0x03 0000137e: PUSH1 0x00 00001380: CALLER 00001381: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001396: AND 00001397: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000013ac: AND 000013ad: DUP2 000013ae: MSTORE 000013af: PUSH1 0x20 000013b1: ADD 000013b2: SWAP1 000013b3: DUP2 000013b4: MSTORE 000013b5: PUSH1 0x20 000013b7: ADD 000013b8: PUSH1 0x00 000013ba: KECCAK256 000013bb: DUP2 000013bc: SWAP1 000013bd: SSTORE 000013be: POP 000013bf: PUSH2 0x13c6 000013c2: PUSH2 0x1da2 000013c5: JUMP 000013c6: JUMPDEST 000013c7: CALLER 000013c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000013dd: AND 000013de: PUSH32 0xebedb8b3c678666e7f36970bc8f57abf6d8fa2e828c0da91ea5b75bf68ed101a 000013ff: DUP3 00001400: PUSH1 0x40 00001402: MLOAD 00001403: DUP1 00001404: DUP3 00001405: DUP2 00001406: MSTORE 00001407: PUSH1 0x20 00001409: ADD 0000140a: SWAP2 0000140b: POP 0000140c: POP 0000140d: PUSH1 0x40 0000140f: MLOAD 00001410: DUP1 00001411: SWAP2 00001412: SUB 00001413: SWAP1 00001414: LOG2 00001415: POP 00001416: JUMP 00001417: JUMPDEST 00001418: PUSH2 0x141f 0000141b: PUSH2 0x1e59 0000141e: JUMP 0000141f: JUMPDEST 00001420: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001435: AND 00001436: PUSH1 0x00 00001438: DUP1 00001439: SLOAD 0000143a: SWAP1 0000143b: PUSH2 0x0100 0000143e: EXP 0000143f: SWAP1 00001440: DIV 00001441: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001456: AND 00001457: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000146c: AND 0000146d: EQ 0000146e: PUSH2 0x14df 00001471: JUMPI 00001472: PUSH1 0x40 00001474: MLOAD 00001475: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001496: DUP2 00001497: MSTORE 00001498: PUSH1 0x04 0000149a: ADD 0000149b: DUP1 0000149c: DUP1 0000149d: PUSH1 0x20 0000149f: ADD 000014a0: DUP3 000014a1: DUP2 000014a2: SUB 000014a3: DUP3 000014a4: MSTORE 000014a5: PUSH1 0x20 000014a7: DUP2 000014a8: MSTORE 000014a9: PUSH1 0x20 000014ab: ADD 000014ac: DUP1 000014ad: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 000014ce: DUP2 000014cf: MSTORE 000014d0: POP 000014d1: PUSH1 0x20 000014d3: ADD 000014d4: SWAP2 000014d5: POP 000014d6: POP 000014d7: PUSH1 0x40 000014d9: MLOAD 000014da: DUP1 000014db: SWAP2 000014dc: SUB 000014dd: SWAP1 000014de: REVERT 000014df: JUMPDEST 000014e0: PUSH2 0x14e9 000014e3: PUSH1 0x00 000014e5: PUSH2 0x1a6a 000014e8: JUMP 000014e9: JUMPDEST 000014ea: PUSH2 0x1501 000014ed: PUSH3 0x127500 000014f1: PUSH1 0x05 000014f3: SLOAD 000014f4: PUSH2 0x1fd6 000014f7: SWAP1 000014f8: SWAP2 000014f9: SWAP1 000014fa: PUSH4 0xffffffff 000014ff: AND 00001500: JUMP 00001501: JUMPDEST 00001502: PUSH1 0x09 00001504: DUP2 00001505: SWAP1 00001506: SSTORE 00001507: POP 00001508: PUSH1 0x00 0000150a: PUSH2 0x1520 0000150d: PUSH1 0x11 0000150f: SLOAD 00001510: PUSH1 0x05 00001512: SLOAD 00001513: PUSH2 0x1f4e 00001516: SWAP1 00001517: SWAP2 00001518: SWAP1 00001519: PUSH4 0xffffffff 0000151e: AND 0000151f: JUMP 00001520: JUMPDEST 00001521: SWAP1 00001522: POP 00001523: PUSH1 0x01 00001525: PUSH1 0x00 00001527: SWAP1 00001528: SLOAD 00001529: SWAP1 0000152a: PUSH2 0x0100 0000152d: EXP 0000152e: SWAP1 0000152f: DIV 00001530: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001545: AND 00001546: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000155b: AND 0000155c: PUSH4 0x40c10f19 00001561: ADDRESS 00001562: DUP4 00001563: PUSH1 0x40 00001565: MLOAD 00001566: DUP4 00001567: PUSH4 0xffffffff 0000156c: AND 0000156d: PUSH1 0xe0 0000156f: SHL 00001570: DUP2 00001571: MSTORE 00001572: PUSH1 0x04 00001574: ADD 00001575: DUP1 00001576: DUP4 00001577: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000158c: AND 0000158d: DUP2 0000158e: MSTORE 0000158f: PUSH1 0x20 00001591: ADD 00001592: DUP3 00001593: DUP2 00001594: MSTORE 00001595: PUSH1 0x20 00001597: ADD 00001598: SWAP3 00001599: POP 0000159a: POP 0000159b: POP 0000159c: PUSH1 0x00 0000159e: PUSH1 0x40 000015a0: MLOAD 000015a1: DUP1 000015a2: DUP4 000015a3: SUB 000015a4: DUP2 000015a5: PUSH1 0x00 000015a7: DUP8 000015a8: DUP1 000015a9: EXTCODESIZE 000015aa: ISZERO 000015ab: DUP1 000015ac: ISZERO 000015ad: PUSH2 0x15b5 000015b0: JUMPI 000015b1: PUSH1 0x00 000015b3: DUP1 000015b4: REVERT 000015b5: JUMPDEST 000015b6: POP 000015b7: GAS 000015b8: CALL 000015b9: ISZERO 000015ba: DUP1 000015bb: ISZERO 000015bc: PUSH2 0x15c9 000015bf: JUMPI 000015c0: RETURNDATASIZE 000015c1: PUSH1 0x00 000015c3: DUP1 000015c4: RETURNDATACOPY 000015c5: RETURNDATASIZE 000015c6: PUSH1 0x00 000015c8: REVERT 000015c9: JUMPDEST 000015ca: POP 000015cb: POP 000015cc: POP 000015cd: POP 000015ce: PUSH2 0x15e4 000015d1: PUSH1 0x12 000015d3: SLOAD 000015d4: PUSH1 0x11 000015d6: SLOAD 000015d7: PUSH2 0x1fd6 000015da: SWAP1 000015db: SWAP2 000015dc: SWAP1 000015dd: PUSH4 0xffffffff 000015e2: AND 000015e3: JUMP 000015e4: JUMPDEST 000015e5: PUSH1 0x0e 000015e7: DUP2 000015e8: SWAP1 000015e9: SSTORE 000015ea: POP 000015eb: PUSH2 0x15ff 000015ee: PUSH1 0x12 000015f0: SLOAD 000015f1: TIMESTAMP 000015f2: PUSH2 0x1f4e 000015f5: SWAP1 000015f6: SWAP2 000015f7: SWAP1 000015f8: PUSH4 0xffffffff 000015fd: AND 000015fe: JUMP 000015ff: JUMPDEST 00001600: PUSH1 0x10 00001602: DUP2 00001603: SWAP1 00001604: SSTORE 00001605: POP 00001606: TIMESTAMP 00001607: PUSH1 0x08 00001609: DUP2 0000160a: SWAP1 0000160b: SSTORE 0000160c: POP 0000160d: TIMESTAMP 0000160e: PUSH1 0x0f 00001610: DUP2 00001611: SWAP1 00001612: SSTORE 00001613: POP 00001614: PUSH2 0x1629 00001617: PUSH3 0x127500 0000161b: TIMESTAMP 0000161c: PUSH2 0x1f4e 0000161f: SWAP1 00001620: SWAP2 00001621: SWAP1 00001622: PUSH4 0xffffffff 00001627: AND 00001628: JUMP 00001629: JUMPDEST 0000162a: PUSH1 0x07 0000162c: DUP2 0000162d: SWAP1 0000162e: SSTORE 0000162f: POP 00001630: PUSH1 0x01 00001632: PUSH1 0x06 00001634: PUSH1 0x00 00001636: PUSH2 0x0100 00001639: EXP 0000163a: DUP2 0000163b: SLOAD 0000163c: DUP2 0000163d: PUSH1 0xff 0000163f: MUL 00001640: NOT 00001641: AND 00001642: SWAP1 00001643: DUP4 00001644: ISZERO 00001645: ISZERO 00001646: MUL 00001647: OR 00001648: SWAP1 00001649: SSTORE 0000164a: POP 0000164b: PUSH32 0xf06a29c94c6f4edc1085072972d9441f7603e81c8535a308f214285d0653c850 0000166c: DUP2 0000166d: PUSH1 0x40 0000166f: MLOAD 00001670: DUP1 00001671: DUP3 00001672: DUP2 00001673: MSTORE 00001674: PUSH1 0x20 00001676: ADD 00001677: SWAP2 00001678: POP 00001679: POP 0000167a: PUSH1 0x40 0000167c: MLOAD 0000167d: DUP1 0000167e: SWAP2 0000167f: SUB 00001680: SWAP1 00001681: LOG1 00001682: POP 00001683: JUMP 00001684: JUMPDEST 00001685: PUSH1 0x0a 00001687: SLOAD 00001688: DUP2 00001689: JUMP 0000168a: JUMPDEST 0000168b: PUSH1 0x08 0000168d: SLOAD 0000168e: DUP2 0000168f: JUMP 00001690: JUMPDEST 00001691: PUSH1 0x00 00001693: DUP1 00001694: PUSH1 0x04 00001696: SLOAD 00001697: EQ 00001698: ISZERO 00001699: PUSH2 0x16a6 0000169c: JUMPI 0000169d: PUSH1 0x0a 0000169f: SLOAD 000016a0: SWAP1 000016a1: POP 000016a2: PUSH2 0x171f 000016a5: JUMP 000016a6: JUMPDEST 000016a7: PUSH2 0x171c 000016aa: PUSH2 0x170b 000016ad: PUSH1 0x04 000016af: SLOAD 000016b0: PUSH2 0x16fd 000016b3: PUSH8 0x0de0b6b3a7640000 000016bc: PUSH2 0x16ef 000016bf: PUSH1 0x09 000016c1: SLOAD 000016c2: PUSH2 0x16e1 000016c5: PUSH1 0x08 000016c7: SLOAD 000016c8: PUSH2 0x16d3 000016cb: TIMESTAMP 000016cc: PUSH1 0x07 000016ce: SLOAD 000016cf: PUSH2 0x1e61 000016d2: JUMP 000016d3: JUMPDEST 000016d4: PUSH2 0x1d58 000016d7: SWAP1 000016d8: SWAP2 000016d9: SWAP1 000016da: PUSH4 0xffffffff 000016df: AND 000016e0: JUMP 000016e1: JUMPDEST 000016e2: PUSH2 0x2020 000016e5: SWAP1 000016e6: SWAP2 000016e7: SWAP1 000016e8: PUSH4 0xffffffff 000016ed: AND 000016ee: JUMP 000016ef: JUMPDEST 000016f0: PUSH2 0x2020 000016f3: SWAP1 000016f4: SWAP2 000016f5: SWAP1 000016f6: PUSH4 0xffffffff 000016fb: AND 000016fc: JUMP 000016fd: JUMPDEST 000016fe: PUSH2 0x1fd6 00001701: SWAP1 00001702: SWAP2 00001703: SWAP1 00001704: PUSH4 0xffffffff 00001709: AND 0000170a: JUMP 0000170b: JUMPDEST 0000170c: PUSH1 0x0a 0000170e: SLOAD 0000170f: PUSH2 0x1f4e 00001712: SWAP1 00001713: SWAP2 00001714: SWAP1 00001715: PUSH4 0xffffffff 0000171a: AND 0000171b: JUMP 0000171c: JUMPDEST 0000171d: SWAP1 0000171e: POP 0000171f: JUMPDEST 00001720: SWAP1 00001721: JUMP 00001722: JUMPDEST 00001723: PUSH1 0x0d 00001725: PUSH1 0x00 00001727: SWAP1 00001728: SLOAD 00001729: SWAP1 0000172a: PUSH2 0x0100 0000172d: EXP 0000172e: SWAP1 0000172f: DIV 00001730: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001745: AND 00001746: DUP2 00001747: JUMP 00001748: JUMPDEST 00001749: PUSH1 0x00 0000174b: PUSH2 0x1828 0000174e: PUSH1 0x0b 00001750: PUSH1 0x00 00001752: DUP5 00001753: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001768: AND 00001769: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000177e: AND 0000177f: DUP2 00001780: MSTORE 00001781: PUSH1 0x20 00001783: ADD 00001784: SWAP1 00001785: DUP2 00001786: MSTORE 00001787: PUSH1 0x20 00001789: ADD 0000178a: PUSH1 0x00 0000178c: KECCAK256 0000178d: SLOAD 0000178e: PUSH2 0x181a 00001791: PUSH8 0x0de0b6b3a7640000 0000179a: PUSH2 0x180c 0000179d: PUSH2 0x17f5 000017a0: PUSH1 0x0c 000017a2: PUSH1 0x00 000017a4: DUP10 000017a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017ba: AND 000017bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000017d0: AND 000017d1: DUP2 000017d2: MSTORE 000017d3: PUSH1 0x20 000017d5: ADD 000017d6: SWAP1 000017d7: DUP2 000017d8: MSTORE 000017d9: PUSH1 0x20 000017db: ADD 000017dc: PUSH1 0x00 000017de: KECCAK256 000017df: SLOAD 000017e0: PUSH2 0x17e7 000017e3: PUSH2 0x1690 000017e6: JUMP 000017e7: JUMPDEST 000017e8: PUSH2 0x1d58 000017eb: SWAP1 000017ec: SWAP2 000017ed: SWAP1 000017ee: PUSH4 0xffffffff 000017f3: AND 000017f4: JUMP 000017f5: JUMPDEST 000017f6: PUSH2 0x17fe 000017f9: DUP9 000017fa: PUSH2 0x0e17 000017fd: JUMP 000017fe: JUMPDEST 000017ff: PUSH2 0x2020 00001802: SWAP1 00001803: SWAP2 00001804: SWAP1 00001805: PUSH4 0xffffffff 0000180a: AND 0000180b: JUMP 0000180c: JUMPDEST 0000180d: PUSH2 0x1fd6 00001810: SWAP1 00001811: SWAP2 00001812: SWAP1 00001813: PUSH4 0xffffffff 00001818: AND 00001819: JUMP 0000181a: JUMPDEST 0000181b: PUSH2 0x1f4e 0000181e: SWAP1 0000181f: SWAP2 00001820: SWAP1 00001821: PUSH4 0xffffffff 00001826: AND 00001827: JUMP 00001828: JUMPDEST 00001829: SWAP1 0000182a: POP 0000182b: SWAP2 0000182c: SWAP1 0000182d: POP 0000182e: JUMP 0000182f: JUMPDEST 00001830: PUSH2 0x1837 00001833: PUSH2 0x1e59 00001836: JUMP 00001837: JUMPDEST 00001838: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000184d: AND 0000184e: PUSH1 0x00 00001850: DUP1 00001851: SLOAD 00001852: SWAP1 00001853: PUSH2 0x0100 00001856: EXP 00001857: SWAP1 00001858: DIV 00001859: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000186e: AND 0000186f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001884: AND 00001885: EQ 00001886: PUSH2 0x18f7 00001889: JUMPI 0000188a: PUSH1 0x40 0000188c: MLOAD 0000188d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000018ae: DUP2 000018af: MSTORE 000018b0: PUSH1 0x04 000018b2: ADD 000018b3: DUP1 000018b4: DUP1 000018b5: PUSH1 0x20 000018b7: ADD 000018b8: DUP3 000018b9: DUP2 000018ba: SUB 000018bb: DUP3 000018bc: MSTORE 000018bd: PUSH1 0x20 000018bf: DUP2 000018c0: MSTORE 000018c1: PUSH1 0x20 000018c3: ADD 000018c4: DUP1 000018c5: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 000018e6: DUP2 000018e7: MSTORE 000018e8: POP 000018e9: PUSH1 0x20 000018eb: ADD 000018ec: SWAP2 000018ed: POP 000018ee: POP 000018ef: PUSH1 0x40 000018f1: MLOAD 000018f2: DUP1 000018f3: SWAP2 000018f4: SUB 000018f5: SWAP1 000018f6: REVERT 000018f7: JUMPDEST 000018f8: PUSH1 0x00 000018fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000190f: AND 00001910: DUP2 00001911: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001926: AND 00001927: EQ 00001928: ISZERO 00001929: PUSH2 0x197d 0000192c: JUMPI 0000192d: PUSH1 0x40 0000192f: MLOAD 00001930: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001951: DUP2 00001952: MSTORE 00001953: PUSH1 0x04 00001955: ADD 00001956: DUP1 00001957: DUP1 00001958: PUSH1 0x20 0000195a: ADD 0000195b: DUP3 0000195c: DUP2 0000195d: SUB 0000195e: DUP3 0000195f: MSTORE 00001960: PUSH1 0x26 00001962: DUP2 00001963: MSTORE 00001964: PUSH1 0x20 00001966: ADD 00001967: DUP1 00001968: PUSH2 0x25a9 0000196b: PUSH1 0x26 0000196d: SWAP2 0000196e: CODECOPY 0000196f: PUSH1 0x40 00001971: ADD 00001972: SWAP2 00001973: POP 00001974: POP 00001975: PUSH1 0x40 00001977: MLOAD 00001978: DUP1 00001979: SWAP2 0000197a: SUB 0000197b: SWAP1 0000197c: REVERT 0000197d: JUMPDEST 0000197e: DUP1 0000197f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001994: AND 00001995: PUSH1 0x00 00001997: DUP1 00001998: SLOAD 00001999: SWAP1 0000199a: PUSH2 0x0100 0000199d: EXP 0000199e: SWAP1 0000199f: DIV 000019a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019b5: AND 000019b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000019cb: AND 000019cc: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 000019ed: PUSH1 0x40 000019ef: MLOAD 000019f0: PUSH1 0x40 000019f2: MLOAD 000019f3: DUP1 000019f4: SWAP2 000019f5: SUB 000019f6: SWAP1 000019f7: LOG3 000019f8: DUP1 000019f9: PUSH1 0x00 000019fb: DUP1 000019fc: PUSH2 0x0100 000019ff: EXP 00001a00: DUP2 00001a01: SLOAD 00001a02: DUP2 00001a03: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a18: MUL 00001a19: NOT 00001a1a: AND 00001a1b: SWAP1 00001a1c: DUP4 00001a1d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a32: AND 00001a33: MUL 00001a34: OR 00001a35: SWAP1 00001a36: SSTORE 00001a37: POP 00001a38: POP 00001a39: JUMP 00001a3a: JUMPDEST 00001a3b: PUSH1 0x00 00001a3d: PUSH1 0x02 00001a3f: PUSH1 0x00 00001a41: SWAP1 00001a42: SLOAD 00001a43: SWAP1 00001a44: PUSH2 0x0100 00001a47: EXP 00001a48: SWAP1 00001a49: DIV 00001a4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a5f: AND 00001a60: SWAP1 00001a61: POP 00001a62: SWAP1 00001a63: JUMP 00001a64: JUMPDEST 00001a65: PUSH1 0x12 00001a67: SLOAD 00001a68: DUP2 00001a69: JUMP 00001a6a: JUMPDEST 00001a6b: PUSH2 0x1a72 00001a6e: PUSH2 0x1690 00001a71: JUMP 00001a72: JUMPDEST 00001a73: PUSH1 0x0a 00001a75: DUP2 00001a76: SWAP1 00001a77: SSTORE 00001a78: POP 00001a79: PUSH2 0x1a80 00001a7c: PUSH2 0x1021 00001a7f: JUMP 00001a80: JUMPDEST 00001a81: PUSH1 0x08 00001a83: DUP2 00001a84: SWAP1 00001a85: SSTORE 00001a86: POP 00001a87: PUSH1 0x00 00001a89: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001a9e: AND 00001a9f: DUP2 00001aa0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ab5: AND 00001ab6: EQ 00001ab7: PUSH2 0x1b4d 00001aba: JUMPI 00001abb: PUSH2 0x1ac3 00001abe: DUP2 00001abf: PUSH2 0x1748 00001ac2: JUMP 00001ac3: JUMPDEST 00001ac4: PUSH1 0x0b 00001ac6: PUSH1 0x00 00001ac8: DUP4 00001ac9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ade: AND 00001adf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001af4: AND 00001af5: DUP2 00001af6: MSTORE 00001af7: PUSH1 0x20 00001af9: ADD 00001afa: SWAP1 00001afb: DUP2 00001afc: MSTORE 00001afd: PUSH1 0x20 00001aff: ADD 00001b00: PUSH1 0x00 00001b02: KECCAK256 00001b03: DUP2 00001b04: SWAP1 00001b05: SSTORE 00001b06: POP 00001b07: PUSH1 0x0a 00001b09: SLOAD 00001b0a: PUSH1 0x0c 00001b0c: PUSH1 0x00 00001b0e: DUP4 00001b0f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b24: AND 00001b25: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001b3a: AND 00001b3b: DUP2 00001b3c: MSTORE 00001b3d: PUSH1 0x20 00001b3f: ADD 00001b40: SWAP1 00001b41: DUP2 00001b42: MSTORE 00001b43: PUSH1 0x20 00001b45: ADD 00001b46: PUSH1 0x00 00001b48: KECCAK256 00001b49: DUP2 00001b4a: SWAP1 00001b4b: SSTORE 00001b4c: POP 00001b4d: JUMPDEST 00001b4e: POP 00001b4f: JUMP 00001b50: JUMPDEST 00001b51: PUSH1 0x07 00001b53: SLOAD 00001b54: TIMESTAMP 00001b55: LT 00001b56: PUSH2 0x1cb4 00001b59: JUMPI 00001b5a: PUSH2 0x1b82 00001b5d: PUSH1 0x64 00001b5f: PUSH2 0x1b74 00001b62: PUSH1 0x32 00001b64: PUSH1 0x05 00001b66: SLOAD 00001b67: PUSH2 0x2020 00001b6a: SWAP1 00001b6b: SWAP2 00001b6c: SWAP1 00001b6d: PUSH4 0xffffffff 00001b72: AND 00001b73: JUMP 00001b74: JUMPDEST 00001b75: PUSH2 0x1fd6 00001b78: SWAP1 00001b79: SWAP2 00001b7a: SWAP1 00001b7b: PUSH4 0xffffffff 00001b80: AND 00001b81: JUMP 00001b82: JUMPDEST 00001b83: PUSH1 0x05 00001b85: DUP2 00001b86: SWAP1 00001b87: SSTORE 00001b88: POP 00001b89: PUSH1 0x01 00001b8b: PUSH1 0x00 00001b8d: SWAP1 00001b8e: SLOAD 00001b8f: SWAP1 00001b90: PUSH2 0x0100 00001b93: EXP 00001b94: SWAP1 00001b95: DIV 00001b96: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bab: AND 00001bac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bc1: AND 00001bc2: PUSH4 0x40c10f19 00001bc7: ADDRESS 00001bc8: PUSH1 0x05 00001bca: SLOAD 00001bcb: PUSH1 0x40 00001bcd: MLOAD 00001bce: DUP4 00001bcf: PUSH4 0xffffffff 00001bd4: AND 00001bd5: PUSH1 0xe0 00001bd7: SHL 00001bd8: DUP2 00001bd9: MSTORE 00001bda: PUSH1 0x04 00001bdc: ADD 00001bdd: DUP1 00001bde: DUP4 00001bdf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001bf4: AND 00001bf5: DUP2 00001bf6: MSTORE 00001bf7: PUSH1 0x20 00001bf9: ADD 00001bfa: DUP3 00001bfb: DUP2 00001bfc: MSTORE 00001bfd: PUSH1 0x20 00001bff: ADD 00001c00: SWAP3 00001c01: POP 00001c02: POP 00001c03: POP 00001c04: PUSH1 0x00 00001c06: PUSH1 0x40 00001c08: MLOAD 00001c09: DUP1 00001c0a: DUP4 00001c0b: SUB 00001c0c: DUP2 00001c0d: PUSH1 0x00 00001c0f: DUP8 00001c10: DUP1 00001c11: EXTCODESIZE 00001c12: ISZERO 00001c13: DUP1 00001c14: ISZERO 00001c15: PUSH2 0x1c1d 00001c18: JUMPI 00001c19: PUSH1 0x00 00001c1b: DUP1 00001c1c: REVERT 00001c1d: JUMPDEST 00001c1e: POP 00001c1f: GAS 00001c20: CALL 00001c21: ISZERO 00001c22: DUP1 00001c23: ISZERO 00001c24: PUSH2 0x1c31 00001c27: JUMPI 00001c28: RETURNDATASIZE 00001c29: PUSH1 0x00 00001c2b: DUP1 00001c2c: RETURNDATACOPY 00001c2d: RETURNDATASIZE 00001c2e: PUSH1 0x00 00001c30: REVERT 00001c31: JUMPDEST 00001c32: POP 00001c33: POP 00001c34: POP 00001c35: POP 00001c36: PUSH2 0x1c4d 00001c39: PUSH3 0x127500 00001c3d: PUSH1 0x05 00001c3f: SLOAD 00001c40: PUSH2 0x1fd6 00001c43: SWAP1 00001c44: SWAP2 00001c45: SWAP1 00001c46: PUSH4 0xffffffff 00001c4b: AND 00001c4c: JUMP 00001c4d: JUMPDEST 00001c4e: PUSH1 0x09 00001c50: DUP2 00001c51: SWAP1 00001c52: SSTORE 00001c53: POP 00001c54: PUSH2 0x1c6b 00001c57: PUSH3 0x127500 00001c5b: PUSH1 0x07 00001c5d: SLOAD 00001c5e: PUSH2 0x1f4e 00001c61: SWAP1 00001c62: SWAP2 00001c63: SWAP1 00001c64: PUSH4 0xffffffff 00001c69: AND 00001c6a: JUMP 00001c6b: JUMPDEST 00001c6c: PUSH1 0x07 00001c6e: DUP2 00001c6f: SWAP1 00001c70: SSTORE 00001c71: POP 00001c72: PUSH2 0x1c7a 00001c75: CALLER 00001c76: PUSH2 0x1a6a 00001c79: JUMP 00001c7a: JUMPDEST 00001c7b: PUSH32 0xfafb0ec84dbe5a6bf08f4fec2f970b66d402032cdfea2008b11e11eb5c3990f0 00001c9c: PUSH1 0x05 00001c9e: SLOAD 00001c9f: PUSH1 0x40 00001ca1: MLOAD 00001ca2: DUP1 00001ca3: DUP3 00001ca4: DUP2 00001ca5: MSTORE 00001ca6: PUSH1 0x20 00001ca8: ADD 00001ca9: SWAP2 00001caa: POP 00001cab: POP 00001cac: PUSH1 0x40 00001cae: MLOAD 00001caf: DUP1 00001cb0: SWAP2 00001cb1: SUB 00001cb2: SWAP1 00001cb3: LOG1 00001cb4: JUMPDEST 00001cb5: JUMP 00001cb6: JUMPDEST 00001cb7: PUSH2 0x1d53 00001cba: DUP4 00001cbb: PUSH4 0xa9059cbb 00001cc0: PUSH1 0xe0 00001cc2: SHL 00001cc3: DUP5 00001cc4: DUP5 00001cc5: PUSH1 0x40 00001cc7: MLOAD 00001cc8: PUSH1 0x24 00001cca: ADD 00001ccb: DUP1 00001ccc: DUP4 00001ccd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ce2: AND 00001ce3: DUP2 00001ce4: MSTORE 00001ce5: PUSH1 0x20 00001ce7: ADD 00001ce8: DUP3 00001ce9: DUP2 00001cea: MSTORE 00001ceb: PUSH1 0x20 00001ced: ADD 00001cee: SWAP3 00001cef: POP 00001cf0: POP 00001cf1: POP 00001cf2: PUSH1 0x40 00001cf4: MLOAD 00001cf5: PUSH1 0x20 00001cf7: DUP2 00001cf8: DUP4 00001cf9: SUB 00001cfa: SUB 00001cfb: DUP2 00001cfc: MSTORE 00001cfd: SWAP1 00001cfe: PUSH1 0x40 00001d00: MSTORE 00001d01: SWAP1 00001d02: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001d1f: NOT 00001d20: AND 00001d21: PUSH1 0x20 00001d23: DUP3 00001d24: ADD 00001d25: DUP1 00001d26: MLOAD 00001d27: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001d44: DUP4 00001d45: DUP2 00001d46: DUP4 00001d47: AND 00001d48: OR 00001d49: DUP4 00001d4a: MSTORE 00001d4b: POP 00001d4c: POP 00001d4d: POP 00001d4e: POP 00001d4f: PUSH2 0x20a6 00001d52: JUMP 00001d53: JUMPDEST 00001d54: POP 00001d55: POP 00001d56: POP 00001d57: JUMP 00001d58: JUMPDEST 00001d59: PUSH1 0x00 00001d5b: PUSH2 0x1d9a 00001d5e: DUP4 00001d5f: DUP4 00001d60: PUSH1 0x40 00001d62: MLOAD 00001d63: DUP1 00001d64: PUSH1 0x40 00001d66: ADD 00001d67: PUSH1 0x40 00001d69: MSTORE 00001d6a: DUP1 00001d6b: PUSH1 0x1e 00001d6d: DUP2 00001d6e: MSTORE 00001d6f: PUSH1 0x20 00001d71: ADD 00001d72: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000 00001d93: DUP2 00001d94: MSTORE 00001d95: POP 00001d96: PUSH2 0x2195 00001d99: JUMP 00001d9a: JUMPDEST 00001d9b: SWAP1 00001d9c: POP 00001d9d: SWAP3 00001d9e: SWAP2 00001d9f: POP 00001da0: POP 00001da1: JUMP 00001da2: JUMPDEST 00001da3: PUSH1 0x00 00001da5: PUSH2 0x1db0 00001da8: TIMESTAMP 00001da9: PUSH1 0x10 00001dab: SLOAD 00001dac: PUSH2 0x1e61 00001daf: JUMP 00001db0: JUMPDEST 00001db1: SWAP1 00001db2: POP 00001db3: PUSH1 0x00 00001db5: PUSH2 0x1ddd 00001db8: PUSH1 0x0e 00001dba: SLOAD 00001dbb: PUSH2 0x1dcf 00001dbe: PUSH1 0x0f 00001dc0: SLOAD 00001dc1: DUP6 00001dc2: PUSH2 0x1d58 00001dc5: SWAP1 00001dc6: SWAP2 00001dc7: SWAP1 00001dc8: PUSH4 0xffffffff 00001dcd: AND 00001dce: JUMP 00001dcf: JUMPDEST 00001dd0: PUSH2 0x2020 00001dd3: SWAP1 00001dd4: SWAP2 00001dd5: SWAP1 00001dd6: PUSH4 0xffffffff 00001ddb: AND 00001ddc: JUMP 00001ddd: JUMPDEST 00001dde: SWAP1 00001ddf: POP 00001de0: PUSH2 0x1e4e 00001de3: PUSH1 0x0d 00001de5: PUSH1 0x00 00001de7: SWAP1 00001de8: SLOAD 00001de9: SWAP1 00001dea: PUSH2 0x0100 00001ded: EXP 00001dee: SWAP1 00001def: DIV 00001df0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e05: AND 00001e06: DUP3 00001e07: PUSH1 0x01 00001e09: PUSH1 0x00 00001e0b: SWAP1 00001e0c: SLOAD 00001e0d: SWAP1 00001e0e: PUSH2 0x0100 00001e11: EXP 00001e12: SWAP1 00001e13: DIV 00001e14: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e29: AND 00001e2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001e3f: AND 00001e40: PUSH2 0x1cb6 00001e43: SWAP1 00001e44: SWAP3 00001e45: SWAP2 00001e46: SWAP1 00001e47: PUSH4 0xffffffff 00001e4c: AND 00001e4d: JUMP 00001e4e: JUMPDEST 00001e4f: DUP2 00001e50: PUSH1 0x0f 00001e52: DUP2 00001e53: SWAP1 00001e54: SSTORE 00001e55: POP 00001e56: POP 00001e57: POP 00001e58: JUMP 00001e59: JUMPDEST 00001e5a: PUSH1 0x00 00001e5c: CALLER 00001e5d: SWAP1 00001e5e: POP 00001e5f: SWAP1 00001e60: JUMP 00001e61: JUMPDEST 00001e62: PUSH1 0x00 00001e64: DUP2 00001e65: DUP4 00001e66: LT 00001e67: PUSH2 0x1e70 00001e6a: JUMPI 00001e6b: DUP2 00001e6c: PUSH2 0x1e72 00001e6f: JUMP 00001e70: JUMPDEST 00001e71: DUP3 00001e72: JUMPDEST 00001e73: SWAP1 00001e74: POP 00001e75: SWAP3 00001e76: SWAP2 00001e77: POP 00001e78: POP 00001e79: JUMP 00001e7a: JUMPDEST 00001e7b: PUSH1 0x00 00001e7d: DUP1 00001e7e: DUP3 00001e7f: EXTCODESIZE 00001e80: SWAP1 00001e81: POP 00001e82: PUSH1 0x00 00001e84: DUP2 00001e85: GT 00001e86: SWAP2 00001e87: POP 00001e88: POP 00001e89: SWAP2 00001e8a: SWAP1 00001e8b: POP 00001e8c: JUMP 00001e8d: JUMPDEST 00001e8e: PUSH2 0x1f48 00001e91: DUP5 00001e92: PUSH4 0x23b872dd 00001e97: PUSH1 0xe0 00001e99: SHL 00001e9a: DUP6 00001e9b: DUP6 00001e9c: DUP6 00001e9d: PUSH1 0x40 00001e9f: MLOAD 00001ea0: PUSH1 0x24 00001ea2: ADD 00001ea3: DUP1 00001ea4: DUP5 00001ea5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001eba: AND 00001ebb: DUP2 00001ebc: MSTORE 00001ebd: PUSH1 0x20 00001ebf: ADD 00001ec0: DUP4 00001ec1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001ed6: AND 00001ed7: DUP2 00001ed8: MSTORE 00001ed9: PUSH1 0x20 00001edb: ADD 00001edc: DUP3 00001edd: DUP2 00001ede: MSTORE 00001edf: PUSH1 0x20 00001ee1: ADD 00001ee2: SWAP4 00001ee3: POP 00001ee4: POP 00001ee5: POP 00001ee6: POP 00001ee7: PUSH1 0x40 00001ee9: MLOAD 00001eea: PUSH1 0x20 00001eec: DUP2 00001eed: DUP4 00001eee: SUB 00001eef: SUB 00001ef0: DUP2 00001ef1: MSTORE 00001ef2: SWAP1 00001ef3: PUSH1 0x40 00001ef5: MSTORE 00001ef6: SWAP1 00001ef7: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001f14: NOT 00001f15: AND 00001f16: PUSH1 0x20 00001f18: DUP3 00001f19: ADD 00001f1a: DUP1 00001f1b: MLOAD 00001f1c: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001f39: DUP4 00001f3a: DUP2 00001f3b: DUP4 00001f3c: AND 00001f3d: OR 00001f3e: DUP4 00001f3f: MSTORE 00001f40: POP 00001f41: POP 00001f42: POP 00001f43: POP 00001f44: PUSH2 0x20a6 00001f47: JUMP 00001f48: JUMPDEST 00001f49: POP 00001f4a: POP 00001f4b: POP 00001f4c: POP 00001f4d: JUMP 00001f4e: JUMPDEST 00001f4f: PUSH1 0x00 00001f51: DUP1 00001f52: DUP3 00001f53: DUP5 00001f54: ADD 00001f55: SWAP1 00001f56: POP 00001f57: DUP4 00001f58: DUP2 00001f59: LT 00001f5a: ISZERO 00001f5b: PUSH2 0x1fcc 00001f5e: JUMPI 00001f5f: PUSH1 0x40 00001f61: MLOAD 00001f62: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00001f83: DUP2 00001f84: MSTORE 00001f85: PUSH1 0x04 00001f87: ADD 00001f88: DUP1 00001f89: DUP1 00001f8a: PUSH1 0x20 00001f8c: ADD 00001f8d: DUP3 00001f8e: DUP2 00001f8f: SUB 00001f90: DUP3 00001f91: MSTORE 00001f92: PUSH1 0x1b 00001f94: DUP2 00001f95: MSTORE 00001f96: PUSH1 0x20 00001f98: ADD 00001f99: DUP1 00001f9a: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000 00001fbb: DUP2 00001fbc: MSTORE 00001fbd: POP 00001fbe: PUSH1 0x20 00001fc0: ADD 00001fc1: SWAP2 00001fc2: POP 00001fc3: POP 00001fc4: PUSH1 0x40 00001fc6: MLOAD 00001fc7: DUP1 00001fc8: SWAP2 00001fc9: SUB 00001fca: SWAP1 00001fcb: REVERT 00001fcc: JUMPDEST 00001fcd: DUP1 00001fce: SWAP2 00001fcf: POP 00001fd0: POP 00001fd1: SWAP3 00001fd2: SWAP2 00001fd3: POP 00001fd4: POP 00001fd5: JUMP 00001fd6: JUMPDEST 00001fd7: PUSH1 0x00 00001fd9: PUSH2 0x2018 00001fdc: DUP4 00001fdd: DUP4 00001fde: PUSH1 0x40 00001fe0: MLOAD 00001fe1: DUP1 00001fe2: PUSH1 0x40 00001fe4: ADD 00001fe5: PUSH1 0x40 00001fe7: MSTORE 00001fe8: DUP1 00001fe9: PUSH1 0x1a 00001feb: DUP2 00001fec: MSTORE 00001fed: PUSH1 0x20 00001fef: ADD 00001ff0: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000 00002011: DUP2 00002012: MSTORE 00002013: POP 00002014: PUSH2 0x2255 00002017: JUMP 00002018: JUMPDEST 00002019: SWAP1 0000201a: POP 0000201b: SWAP3 0000201c: SWAP2 0000201d: POP 0000201e: POP 0000201f: JUMP 00002020: JUMPDEST 00002021: PUSH1 0x00 00002023: DUP1 00002024: DUP4 00002025: EQ 00002026: ISZERO 00002027: PUSH2 0x2033 0000202a: JUMPI 0000202b: PUSH1 0x00 0000202d: SWAP1 0000202e: POP 0000202f: PUSH2 0x20a0 00002032: JUMP 00002033: JUMPDEST 00002034: PUSH1 0x00 00002036: DUP3 00002037: DUP5 00002038: MUL 00002039: SWAP1 0000203a: POP 0000203b: DUP3 0000203c: DUP5 0000203d: DUP3 0000203e: DUP2 0000203f: PUSH2 0x2044 00002042: JUMPI 00002043: INVALID 00002044: JUMPDEST 00002045: DIV 00002046: EQ 00002047: PUSH2 0x209b 0000204a: JUMPI 0000204b: PUSH1 0x40 0000204d: MLOAD 0000204e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 0000206f: DUP2 00002070: MSTORE 00002071: PUSH1 0x04 00002073: ADD 00002074: DUP1 00002075: DUP1 00002076: PUSH1 0x20 00002078: ADD 00002079: DUP3 0000207a: DUP2 0000207b: SUB 0000207c: DUP3 0000207d: MSTORE 0000207e: PUSH1 0x21 00002080: DUP2 00002081: MSTORE 00002082: PUSH1 0x20 00002084: ADD 00002085: DUP1 00002086: PUSH2 0x2618 00002089: PUSH1 0x21 0000208b: SWAP2 0000208c: CODECOPY 0000208d: PUSH1 0x40 0000208f: ADD 00002090: SWAP2 00002091: POP 00002092: POP 00002093: PUSH1 0x40 00002095: MLOAD 00002096: DUP1 00002097: SWAP2 00002098: SUB 00002099: SWAP1 0000209a: REVERT 0000209b: JUMPDEST 0000209c: DUP1 0000209d: SWAP2 0000209e: POP 0000209f: POP 000020a0: JUMPDEST 000020a1: SWAP3 000020a2: SWAP2 000020a3: POP 000020a4: POP 000020a5: JUMP 000020a6: JUMPDEST 000020a7: PUSH1 0x60 000020a9: PUSH2 0x2108 000020ac: DUP3 000020ad: PUSH1 0x40 000020af: MLOAD 000020b0: DUP1 000020b1: PUSH1 0x40 000020b3: ADD 000020b4: PUSH1 0x40 000020b6: MSTORE 000020b7: DUP1 000020b8: PUSH1 0x20 000020ba: DUP2 000020bb: MSTORE 000020bc: PUSH1 0x20 000020be: ADD 000020bf: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 000020e0: DUP2 000020e1: MSTORE 000020e2: POP 000020e3: DUP6 000020e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000020f9: AND 000020fa: PUSH2 0x231b 000020fd: SWAP1 000020fe: SWAP3 000020ff: SWAP2 00002100: SWAP1 00002101: PUSH4 0xffffffff 00002106: AND 00002107: JUMP 00002108: JUMPDEST 00002109: SWAP1 0000210a: POP 0000210b: PUSH1 0x00 0000210d: DUP2 0000210e: MLOAD 0000210f: GT 00002110: ISZERO 00002111: PUSH2 0x2190 00002114: JUMPI 00002115: DUP1 00002116: DUP1 00002117: PUSH1 0x20 00002119: ADD 0000211a: SWAP1 0000211b: MLOAD 0000211c: PUSH1 0x20 0000211e: DUP2 0000211f: LT 00002120: ISZERO 00002121: PUSH2 0x2129 00002124: JUMPI 00002125: PUSH1 0x00 00002127: DUP1 00002128: REVERT 00002129: JUMPDEST 0000212a: DUP2 0000212b: ADD 0000212c: SWAP1 0000212d: DUP1 0000212e: DUP1 0000212f: MLOAD 00002130: SWAP1 00002131: PUSH1 0x20 00002133: ADD 00002134: SWAP1 00002135: SWAP3 00002136: SWAP2 00002137: SWAP1 00002138: POP 00002139: POP 0000213a: POP 0000213b: PUSH2 0x218f 0000213e: JUMPI 0000213f: PUSH1 0x40 00002141: MLOAD 00002142: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002163: DUP2 00002164: MSTORE 00002165: PUSH1 0x04 00002167: ADD 00002168: DUP1 00002169: DUP1 0000216a: PUSH1 0x20 0000216c: ADD 0000216d: DUP3 0000216e: DUP2 0000216f: SUB 00002170: DUP3 00002171: MSTORE 00002172: PUSH1 0x2a 00002174: DUP2 00002175: MSTORE 00002176: PUSH1 0x20 00002178: ADD 00002179: DUP1 0000217a: PUSH2 0x2639 0000217d: PUSH1 0x2a 0000217f: SWAP2 00002180: CODECOPY 00002181: PUSH1 0x40 00002183: ADD 00002184: SWAP2 00002185: POP 00002186: POP 00002187: PUSH1 0x40 00002189: MLOAD 0000218a: DUP1 0000218b: SWAP2 0000218c: SUB 0000218d: SWAP1 0000218e: REVERT 0000218f: JUMPDEST 00002190: JUMPDEST 00002191: POP 00002192: POP 00002193: POP 00002194: JUMP 00002195: JUMPDEST 00002196: PUSH1 0x00 00002198: DUP4 00002199: DUP4 0000219a: GT 0000219b: ISZERO 0000219c: DUP3 0000219d: SWAP1 0000219e: PUSH2 0x2242 000021a1: JUMPI 000021a2: PUSH1 0x40 000021a4: MLOAD 000021a5: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000021c6: DUP2 000021c7: MSTORE 000021c8: PUSH1 0x04 000021ca: ADD 000021cb: DUP1 000021cc: DUP1 000021cd: PUSH1 0x20 000021cf: ADD 000021d0: DUP3 000021d1: DUP2 000021d2: SUB 000021d3: DUP3 000021d4: MSTORE 000021d5: DUP4 000021d6: DUP2 000021d7: DUP2 000021d8: MLOAD 000021d9: DUP2 000021da: MSTORE 000021db: PUSH1 0x20 000021dd: ADD 000021de: SWAP2 000021df: POP 000021e0: DUP1 000021e1: MLOAD 000021e2: SWAP1 000021e3: PUSH1 0x20 000021e5: ADD 000021e6: SWAP1 000021e7: DUP1 000021e8: DUP4 000021e9: DUP4 000021ea: PUSH1 0x00 000021ec: JUMPDEST 000021ed: DUP4 000021ee: DUP2 000021ef: LT 000021f0: ISZERO 000021f1: PUSH2 0x2207 000021f4: JUMPI 000021f5: DUP1 000021f6: DUP3 000021f7: ADD 000021f8: MLOAD 000021f9: DUP2 000021fa: DUP5 000021fb: ADD 000021fc: MSTORE 000021fd: PUSH1 0x20 000021ff: DUP2 00002200: ADD 00002201: SWAP1 00002202: POP 00002203: PUSH2 0x21ec 00002206: JUMP 00002207: JUMPDEST 00002208: POP 00002209: POP 0000220a: POP 0000220b: POP 0000220c: SWAP1 0000220d: POP 0000220e: SWAP1 0000220f: DUP2 00002210: ADD 00002211: SWAP1 00002212: PUSH1 0x1f 00002214: AND 00002215: DUP1 00002216: ISZERO 00002217: PUSH2 0x2234 0000221a: JUMPI 0000221b: DUP1 0000221c: DUP3 0000221d: SUB 0000221e: DUP1 0000221f: MLOAD 00002220: PUSH1 0x01 00002222: DUP4 00002223: PUSH1 0x20 00002225: SUB 00002226: PUSH2 0x0100 00002229: EXP 0000222a: SUB 0000222b: NOT 0000222c: AND 0000222d: DUP2 0000222e: MSTORE 0000222f: PUSH1 0x20 00002231: ADD 00002232: SWAP2 00002233: POP 00002234: JUMPDEST 00002235: POP 00002236: SWAP3 00002237: POP 00002238: POP 00002239: POP 0000223a: PUSH1 0x40 0000223c: MLOAD 0000223d: DUP1 0000223e: SWAP2 0000223f: SUB 00002240: SWAP1 00002241: REVERT 00002242: JUMPDEST 00002243: POP 00002244: PUSH1 0x00 00002246: DUP4 00002247: DUP6 00002248: SUB 00002249: SWAP1 0000224a: POP 0000224b: DUP1 0000224c: SWAP2 0000224d: POP 0000224e: POP 0000224f: SWAP4 00002250: SWAP3 00002251: POP 00002252: POP 00002253: POP 00002254: JUMP 00002255: JUMPDEST 00002256: PUSH1 0x00 00002258: DUP1 00002259: DUP4 0000225a: GT 0000225b: DUP3 0000225c: SWAP1 0000225d: PUSH2 0x2301 00002260: JUMPI 00002261: PUSH1 0x40 00002263: MLOAD 00002264: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002285: DUP2 00002286: MSTORE 00002287: PUSH1 0x04 00002289: ADD 0000228a: DUP1 0000228b: DUP1 0000228c: PUSH1 0x20 0000228e: ADD 0000228f: DUP3 00002290: DUP2 00002291: SUB 00002292: DUP3 00002293: MSTORE 00002294: DUP4 00002295: DUP2 00002296: DUP2 00002297: MLOAD 00002298: DUP2 00002299: MSTORE 0000229a: PUSH1 0x20 0000229c: ADD 0000229d: SWAP2 0000229e: POP 0000229f: DUP1 000022a0: MLOAD 000022a1: SWAP1 000022a2: PUSH1 0x20 000022a4: ADD 000022a5: SWAP1 000022a6: DUP1 000022a7: DUP4 000022a8: DUP4 000022a9: PUSH1 0x00 000022ab: JUMPDEST 000022ac: DUP4 000022ad: DUP2 000022ae: LT 000022af: ISZERO 000022b0: PUSH2 0x22c6 000022b3: JUMPI 000022b4: DUP1 000022b5: DUP3 000022b6: ADD 000022b7: MLOAD 000022b8: DUP2 000022b9: DUP5 000022ba: ADD 000022bb: MSTORE 000022bc: PUSH1 0x20 000022be: DUP2 000022bf: ADD 000022c0: SWAP1 000022c1: POP 000022c2: PUSH2 0x22ab 000022c5: JUMP 000022c6: JUMPDEST 000022c7: POP 000022c8: POP 000022c9: POP 000022ca: POP 000022cb: SWAP1 000022cc: POP 000022cd: SWAP1 000022ce: DUP2 000022cf: ADD 000022d0: SWAP1 000022d1: PUSH1 0x1f 000022d3: AND 000022d4: DUP1 000022d5: ISZERO 000022d6: PUSH2 0x22f3 000022d9: JUMPI 000022da: DUP1 000022db: DUP3 000022dc: SUB 000022dd: DUP1 000022de: MLOAD 000022df: PUSH1 0x01 000022e1: DUP4 000022e2: PUSH1 0x20 000022e4: SUB 000022e5: PUSH2 0x0100 000022e8: EXP 000022e9: SUB 000022ea: NOT 000022eb: AND 000022ec: DUP2 000022ed: MSTORE 000022ee: PUSH1 0x20 000022f0: ADD 000022f1: SWAP2 000022f2: POP 000022f3: JUMPDEST 000022f4: POP 000022f5: SWAP3 000022f6: POP 000022f7: POP 000022f8: POP 000022f9: PUSH1 0x40 000022fb: MLOAD 000022fc: DUP1 000022fd: SWAP2 000022fe: SUB 000022ff: SWAP1 00002300: REVERT 00002301: JUMPDEST 00002302: POP 00002303: PUSH1 0x00 00002305: DUP4 00002306: DUP6 00002307: DUP2 00002308: PUSH2 0x230d 0000230b: JUMPI 0000230c: INVALID 0000230d: JUMPDEST 0000230e: DIV 0000230f: SWAP1 00002310: POP 00002311: DUP1 00002312: SWAP2 00002313: POP 00002314: POP 00002315: SWAP4 00002316: SWAP3 00002317: POP 00002318: POP 00002319: POP 0000231a: JUMP 0000231b: JUMPDEST 0000231c: PUSH1 0x60 0000231e: PUSH2 0x232a 00002321: DUP5 00002322: DUP5 00002323: PUSH1 0x00 00002325: DUP6 00002326: PUSH2 0x2333 00002329: JUMP 0000232a: JUMPDEST 0000232b: SWAP1 0000232c: POP 0000232d: SWAP4 0000232e: SWAP3 0000232f: POP 00002330: POP 00002331: POP 00002332: JUMP 00002333: JUMPDEST 00002334: PUSH1 0x60 00002336: DUP3 00002337: SELFBALANCE 00002338: LT 00002339: ISZERO 0000233a: PUSH2 0x238e 0000233d: JUMPI 0000233e: PUSH1 0x40 00002340: MLOAD 00002341: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002362: DUP2 00002363: MSTORE 00002364: PUSH1 0x04 00002366: ADD 00002367: DUP1 00002368: DUP1 00002369: PUSH1 0x20 0000236b: ADD 0000236c: DUP3 0000236d: DUP2 0000236e: SUB 0000236f: DUP3 00002370: MSTORE 00002371: PUSH1 0x26 00002373: DUP2 00002374: MSTORE 00002375: PUSH1 0x20 00002377: ADD 00002378: DUP1 00002379: PUSH2 0x25f2 0000237c: PUSH1 0x26 0000237e: SWAP2 0000237f: CODECOPY 00002380: PUSH1 0x40 00002382: ADD 00002383: SWAP2 00002384: POP 00002385: POP 00002386: PUSH1 0x40 00002388: MLOAD 00002389: DUP1 0000238a: SWAP2 0000238b: SUB 0000238c: SWAP1 0000238d: REVERT 0000238e: JUMPDEST 0000238f: PUSH2 0x2397 00002392: DUP6 00002393: PUSH2 0x1e7a 00002396: JUMP 00002397: JUMPDEST 00002398: PUSH2 0x2409 0000239b: JUMPI 0000239c: PUSH1 0x40 0000239e: MLOAD 0000239f: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000023c0: DUP2 000023c1: MSTORE 000023c2: PUSH1 0x04 000023c4: ADD 000023c5: DUP1 000023c6: DUP1 000023c7: PUSH1 0x20 000023c9: ADD 000023ca: DUP3 000023cb: DUP2 000023cc: SUB 000023cd: DUP3 000023ce: MSTORE 000023cf: PUSH1 0x1d 000023d1: DUP2 000023d2: MSTORE 000023d3: PUSH1 0x20 000023d5: ADD 000023d6: DUP1 000023d7: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 000023f8: DUP2 000023f9: MSTORE 000023fa: POP 000023fb: PUSH1 0x20 000023fd: ADD 000023fe: SWAP2 000023ff: POP 00002400: POP 00002401: PUSH1 0x40 00002403: MLOAD 00002404: DUP1 00002405: SWAP2 00002406: SUB 00002407: SWAP1 00002408: REVERT 00002409: JUMPDEST 0000240a: PUSH1 0x00 0000240c: PUSH1 0x60 0000240e: DUP7 0000240f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00002424: AND 00002425: DUP6 00002426: DUP8 00002427: PUSH1 0x40 00002429: MLOAD 0000242a: DUP1 0000242b: DUP3 0000242c: DUP1 0000242d: MLOAD 0000242e: SWAP1 0000242f: PUSH1 0x20 00002431: ADD 00002432: SWAP1 00002433: DUP1 00002434: DUP4 00002435: DUP4 00002436: JUMPDEST 00002437: PUSH1 0x20 00002439: DUP4 0000243a: LT 0000243b: PUSH2 0x2459 0000243e: JUMPI 0000243f: DUP1 00002440: MLOAD 00002441: DUP3 00002442: MSTORE 00002443: PUSH1 0x20 00002445: DUP3 00002446: ADD 00002447: SWAP2 00002448: POP 00002449: PUSH1 0x20 0000244b: DUP2 0000244c: ADD 0000244d: SWAP1 0000244e: POP 0000244f: PUSH1 0x20 00002451: DUP4 00002452: SUB 00002453: SWAP3 00002454: POP 00002455: PUSH2 0x2436 00002458: JUMP 00002459: JUMPDEST 0000245a: PUSH1 0x01 0000245c: DUP4 0000245d: PUSH1 0x20 0000245f: SUB 00002460: PUSH2 0x0100 00002463: EXP 00002464: SUB 00002465: DUP1 00002466: NOT 00002467: DUP3 00002468: MLOAD 00002469: AND 0000246a: DUP2 0000246b: DUP5 0000246c: MLOAD 0000246d: AND 0000246e: DUP1 0000246f: DUP3 00002470: OR 00002471: DUP6 00002472: MSTORE 00002473: POP 00002474: POP 00002475: POP 00002476: POP 00002477: POP 00002478: POP 00002479: SWAP1 0000247a: POP 0000247b: ADD 0000247c: SWAP2 0000247d: POP 0000247e: POP 0000247f: PUSH1 0x00 00002481: PUSH1 0x40 00002483: MLOAD 00002484: DUP1 00002485: DUP4 00002486: SUB 00002487: DUP2 00002488: DUP6 00002489: DUP8 0000248a: GAS 0000248b: CALL 0000248c: SWAP3 0000248d: POP 0000248e: POP 0000248f: POP 00002490: RETURNDATASIZE 00002491: DUP1 00002492: PUSH1 0x00 00002494: DUP2 00002495: EQ 00002496: PUSH2 0x24bb 00002499: JUMPI 0000249a: PUSH1 0x40 0000249c: MLOAD 0000249d: SWAP2 0000249e: POP 0000249f: PUSH1 0x1f 000024a1: NOT 000024a2: PUSH1 0x3f 000024a4: RETURNDATASIZE 000024a5: ADD 000024a6: AND 000024a7: DUP3 000024a8: ADD 000024a9: PUSH1 0x40 000024ab: MSTORE 000024ac: RETURNDATASIZE 000024ad: DUP3 000024ae: MSTORE 000024af: RETURNDATASIZE 000024b0: PUSH1 0x00 000024b2: PUSH1 0x20 000024b4: DUP5 000024b5: ADD 000024b6: RETURNDATACOPY 000024b7: PUSH2 0x24c0 000024ba: JUMP 000024bb: JUMPDEST 000024bc: PUSH1 0x60 000024be: SWAP2 000024bf: POP 000024c0: JUMPDEST 000024c1: POP 000024c2: SWAP2 000024c3: POP 000024c4: SWAP2 000024c5: POP 000024c6: PUSH2 0x24d0 000024c9: DUP3 000024ca: DUP3 000024cb: DUP7 000024cc: PUSH2 0x24dc 000024cf: JUMP 000024d0: JUMPDEST 000024d1: SWAP3 000024d2: POP 000024d3: POP 000024d4: POP 000024d5: SWAP5 000024d6: SWAP4 000024d7: POP 000024d8: POP 000024d9: POP 000024da: POP 000024db: JUMP 000024dc: JUMPDEST 000024dd: PUSH1 0x60 000024df: DUP4 000024e0: ISZERO 000024e1: PUSH2 0x24ec 000024e4: JUMPI 000024e5: DUP3 000024e6: SWAP1 000024e7: POP 000024e8: PUSH2 0x25a1 000024eb: JUMP 000024ec: JUMPDEST 000024ed: PUSH1 0x00 000024ef: DUP4 000024f0: MLOAD 000024f1: GT 000024f2: ISZERO 000024f3: PUSH2 0x24ff 000024f6: JUMPI 000024f7: DUP3 000024f8: MLOAD 000024f9: DUP1 000024fa: DUP5 000024fb: PUSH1 0x20 000024fd: ADD 000024fe: REVERT 000024ff: JUMPDEST 00002500: DUP2 00002501: PUSH1 0x40 00002503: MLOAD 00002504: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00002525: DUP2 00002526: MSTORE 00002527: PUSH1 0x04 00002529: ADD 0000252a: DUP1 0000252b: DUP1 0000252c: PUSH1 0x20 0000252e: ADD 0000252f: DUP3 00002530: DUP2 00002531: SUB 00002532: DUP3 00002533: MSTORE 00002534: DUP4 00002535: DUP2 00002536: DUP2 00002537: MLOAD 00002538: DUP2 00002539: MSTORE 0000253a: PUSH1 0x20 0000253c: ADD 0000253d: SWAP2 0000253e: POP 0000253f: DUP1 00002540: MLOAD 00002541: SWAP1 00002542: PUSH1 0x20 00002544: ADD 00002545: SWAP1 00002546: DUP1 00002547: DUP4 00002548: DUP4 00002549: PUSH1 0x00 0000254b: JUMPDEST 0000254c: DUP4 0000254d: DUP2 0000254e: LT 0000254f: ISZERO 00002550: PUSH2 0x2566 00002553: JUMPI 00002554: DUP1 00002555: DUP3 00002556: ADD 00002557: MLOAD 00002558: DUP2 00002559: DUP5 0000255a: ADD 0000255b: MSTORE 0000255c: PUSH1 0x20 0000255e: DUP2 0000255f: ADD 00002560: SWAP1 00002561: POP 00002562: PUSH2 0x254b 00002565: JUMP 00002566: JUMPDEST 00002567: POP 00002568: POP 00002569: POP 0000256a: POP 0000256b: SWAP1 0000256c: POP 0000256d: SWAP1 0000256e: DUP2 0000256f: ADD 00002570: SWAP1 00002571: PUSH1 0x1f 00002573: AND 00002574: DUP1 00002575: ISZERO 00002576: PUSH2 0x2593 00002579: JUMPI 0000257a: DUP1 0000257b: DUP3 0000257c: SUB 0000257d: DUP1 0000257e: MLOAD 0000257f: PUSH1 0x01 00002581: DUP4 00002582: PUSH1 0x20 00002584: SUB 00002585: PUSH2 0x0100 00002588: EXP 00002589: SUB 0000258a: NOT 0000258b: AND 0000258c: DUP2 0000258d: MSTORE 0000258e: PUSH1 0x20 00002590: ADD 00002591: SWAP2 00002592: POP 00002593: JUMPDEST 00002594: POP 00002595: SWAP3 00002596: POP 00002597: POP 00002598: POP 00002599: PUSH1 0x40 0000259b: MLOAD 0000259c: DUP1 0000259d: SWAP2 0000259e: SUB 0000259f: SWAP1 000025a0: REVERT 000025a1: JUMPDEST 000025a2: SWAP4 000025a3: SWAP3 000025a4: POP 000025a5: POP 000025a6: POP 000025a7: JUMP 000025a8: INVALID 000025a9: UNKNOWN(0x4F) 000025aa: PUSH24 0x6e61626c653a206e6577206f776e65722069732074686520 000025c3: PUSH27 0x65726f2061646472657373506c656173652075736520796f757220 000025df: PUSH10 0x6e646976696475616c20 000025ea: PUSH2 0x6363 000025ed: PUSH16 0x756e742e416464726573733a20696e73 000025fe: PUSH22 0x6666696369656e742062616c616e636520666f722063 00002615: PUSH2 0x6c6c 00002618: MSTORE8 00002619: PUSH2 0x6665 0000261c: UNKNOWN(0x4D) 0000261d: PUSH2 0x7468 00002620: GASPRICE 00002621: KECCAK256 00002622: PUSH14 0x756c7469706c69636174696f6e20 00002631: PUSH16 0x766572666c6f77536166654552433230 00002642: GASPRICE 00002643: KECCAK256 00002644: GASLIMIT 00002645: MSTORE 00002646: NUMBER 00002647: ORIGIN 00002648: ADDRESS 00002649: KECCAK256 0000264a: PUSH16 0x7065726174696f6e20646964206e6f74 0000265b: KECCAK256 0000265c: PUSH20 0x756363656564a26469706673582212200bad5d43 00002671: EXTCODESIZE 00002672: PUSH26 0x09bae86681a427806a85b327543ff00fcb1b2a34aeabda976eb8 0000268d: PUSH5 0x736f6c6343 00002693: STOP 00002694: SMOD 00002695: MUL 00002696: STOP 00002697: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xdbe93451",
"selector": "0xdbe93451",
"calldata_variants": [
"0xdbe93451",
"0xdbe934510000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf5ae497a",
"selector": "0xf5ae497a",
"calldata_variants": [
"0xf5ae497a",
"0xf5ae497a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfb0e487a",
"selector": "0xfb0e487a",
"calldata_variants": [
"0xfb0e487a",
"0xfb0e487a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc6570d85",
"selector": "0xc6570d85",
"calldata_variants": [
"0xc6570d85",
"0xc6570d850000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc8f33c91",
"selector": "0xc8f33c91",
"calldata_variants": [
"0xc8f33c91",
"0xc8f33c910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcd3daf9d",
"selector": "0xcd3daf9d",
"calldata_variants": [
"0xcd3daf9d",
"0xcd3daf9d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xda09c72c",
"selector": "0xda09c72c",
"calldata_variants": [
"0xda09c72c",
"0xda09c72c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 3233,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9799,
"type": "tx_origin_used"
}
]
}
|
| medium | reentrancy | codex | LPToDOKI.withdraw updates balances after external token transfer | 75 | no | — |
viewevidence_json{
"evidence": "`withdraw` calls `lpToken.safeTransfer(msg.sender, amount)` before reducing `_lpBalances` and `_lpTotalSupply`. `stake` uses `isContract` which can be bypassed during construction.",
"locations": [
"contracts/Contract.sol:1048",
"contracts/Contract.sol:1052",
"contracts/Contract.sol:1053",
"contracts/Contract.sol:1040"
],
"recommendation": "Apply checks-effects-interactions: decrement `_lpBalances`/`_lpTotalSupply` before calling `lpToken.safeTransfer`, or add `ReentrancyGuard` to withdraw. Do not rely on `isContract` for access control; if contracts must be blocked, use explicit allowlists.",
"exploit_scenario": "An attacker deploys a contract that stakes during its constructor (bypassing the isContract check), then calls withdraw. If the LP token is ERC777/677-like or otherwise reentrant, the token transfer to the attacker contract triggers a callback that re-enters withdraw before `_lpBalances`/`_lpTotalSupply` are decreased, allowing repeated withdrawals and draining the pool\u2019s LP tokens."
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0xfbd12badcd0db31e9727abd60d357f839953ee1569ac130f1cd8ab0f3657f9da
call_targets:
0xde846827ce3022ecd5efd6ed316a2def9ab299b8
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xfbd12badcd0db31e9727abd60d357f839953ee1569ac130f1cd8ab0f3657f9da",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xde846827ce3022ecd5efd6ed316a2def9ab299b8"
],
"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": "0xdbe93451",
"selector": "0xdbe93451",
"calldata_variants": [
"0xdbe93451",
"0xdbe934510000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf5ae497a",
"selector": "0xf5ae497a",
"calldata_variants": [
"0xf5ae497a",
"0xf5ae497a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfb0e487a",
"selector": "0xfb0e487a",
"calldata_variants": [
"0xfb0e487a",
"0xfb0e487a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc6570d85",
"selector": "0xc6570d85",
"calldata_variants": [
"0xc6570d85",
"0xc6570d850000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc8f33c91",
"selector": "0xc8f33c91",
"calldata_variants": [
"0xc8f33c91",
"0xc8f33c910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcd3daf9d",
"selector": "0xcd3daf9d",
"calldata_variants": [
"0xcd3daf9d",
"0xcd3daf9d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xda09c72c",
"selector": "0xda09c72c",
"calldata_variants": [
"0xda09c72c",
"0xda09c72c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4499,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5560,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7200,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [
{
"pc": 3233,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9799,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 4
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0xfbd12badcd0db31e9727abd60d357f839953ee1569ac130f1cd8ab0f3657f9da
call_targets:
0xde846827ce3022ecd5efd6ed316a2def9ab299b8
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xfbd12badcd0db31e9727abd60d357f839953ee1569ac130f1cd8ab0f3657f9da",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xde846827ce3022ecd5efd6ed316a2def9ab299b8"
],
"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": "0xdbe93451",
"selector": "0xdbe93451",
"calldata_variants": [
"0xdbe93451",
"0xdbe934510000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf5ae497a",
"selector": "0xf5ae497a",
"calldata_variants": [
"0xf5ae497a",
"0xf5ae497a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfb0e487a",
"selector": "0xfb0e487a",
"calldata_variants": [
"0xfb0e487a",
"0xfb0e487a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc6570d85",
"selector": "0xc6570d85",
"calldata_variants": [
"0xc6570d85",
"0xc6570d850000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc8f33c91",
"selector": "0xc8f33c91",
"calldata_variants": [
"0xc8f33c91",
"0xc8f33c910000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcd3daf9d",
"selector": "0xcd3daf9d",
"calldata_variants": [
"0xcd3daf9d",
"0xcd3daf9d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xda09c72c",
"selector": "0xda09c72c",
"calldata_variants": [
"0xda09c72c",
"0xda09c72c0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4499,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 5560,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 7200,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": [
{
"pc": 3233,
"type": "msg_sender_eq_const",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
},
{
"pc": 9799,
"type": "tx_origin_used"
}
]
}
|
| info | other | cast | Heavy EXTCODE*/BALANCE usage | 55 | no | — |
viewevidence_json{
"notes": "frequent external code or balance checks; may indicate introspection or validation logic",
"ext_balance_count": 5
}
|