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

Analysis Run

e0b6a8c2-69a3-42d6-9367-2fd03f2174f9

complete
Chain ID
1
Address
Block Number
Created
Fri, Jan 2, 2026 9:59 PM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Unprotected initialize allows proxy takeover and unlimited minting
crit 0 high 0 proxy context implementation known
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31355 report.consolidate complete 1 / 1 3 months ago
111128 artifact.fetch complete 1 / 3 1 week ago
111129 tool.cast_disasm complete 1 / 3 1 week ago
111130 analysis.bundle complete 1 / 3 1 week ago
111131 capability.graph complete 1 / 3 1 week ago
111132 detector.run complete 1 / 3 1 week ago
111133 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
2
No findings?
no
Summary
Two upgrade-time access-control gaps can lead to direct value extraction if an attacker reaches initialization first: the base initializer can be hijacked to gain minting power, and the v2.1 initializer can redirect the contract’s own token balance.
View stderr
[codex:846381] OpenAI Codex v0.77.0 (research preview)
[codex:846381] --------
[codex:846381] workdir: /tmp/codex-multi-dxfq4y0u
[codex:846381] model: gpt-5.2-codex
[codex:846381] provider: openai
[codex:846381] approval: never
[codex:846381] sandbox: read-only
[codex:846381] reasoning effort: xhigh
[codex:846381] reasoning summaries: auto
[codex:846381] session id: 019b80b2-e8d7-7f61-8d8d-e4defc545d9a
[codex:846381] --------
[codex:846381] user
[codex:846381] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:846381] 
[codex:846381] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:846381] 
[codex:846381] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:846381] - Gas inefficiency, code quality, naming, or best practices
[codex:846381] - Theoretical vulnerabilities without a clear extraction path
[codex:846381] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:846381] - Front-running unless it enables theft beyond MEV
[codex:846381] - DoS, griefing, or issues that don't result in attacker profit
[codex:846381] - Missing events, view function issues, or informational findings
[codex:846381] 
[codex:846381] HIGH-VALUE PATTERNS TO HUNT:
[codex:846381] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:846381] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:846381] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:846381] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:846381] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:846381] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:846381] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:846381] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:846381] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:846381] 
[codex:846381] For each finding, you MUST provide:
[codex:846381] 1. Exact file and line numbers of vulnerable code
[codex:846381] 2. Step-by-step exploit transaction sequence
[codex:846381] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:846381] 
[codex:846381] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:846381] 
[codex:846381] Output MUST be valid JSON matching the provided schema.
[codex:846381] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:846381] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:846381] mcp startup: no servers
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Preparing to read audit instructions**
[codex:846381] exec
[codex:846381] /bin/bash -lc ls in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] AUDIT_BUNDLE.txt
[codex:846381] codex-output-schema.json
[codex:846381] contracts
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Reading AUDIT_BUNDLE.txt**
[codex:846381] exec
[codex:846381] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:846381] 
[codex:846381] ================================================================================
[codex:846381] FILE: contracts/centre-tokens/contracts/util/ECRecover.sol
[codex:846381] ================================================================================
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2016-2019 zOS Global Limited
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Analyzing AUDIT_BUNDLE for vulnerabilities**
[codex:846381] exec
[codex:846381] /bin/bash -lc 'rg --files' in /tmp/codex-multi-dxfq4y0u succeeded in 9ms:
[codex:846381] codex-output-schema.json
[codex:846381] AUDIT_BUNDLE.txt
[codex:846381] contracts/@openzeppelin/contracts/math/SafeMath.sol
[codex:846381] contracts/@openzeppelin/contracts/utils/Address.sol
[codex:846381] contracts/contracts/wrapped-tokens/interface/IUnwrapTokenV1.sol
[codex:846381] contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:846381] contracts/@openzeppelin/contracts/token/ERC20/SafeERC20.sol
[codex:846381] contracts/contracts/wrapped-tokens/staking/upgrade/WrapTokenV3ETH.sol
[codex:846381] contracts/contracts/wrapped-tokens/staking/upgrade/StakedTokenV3.sol
[codex:846381] contracts/centre-tokens/contracts/v1.1/FiatTokenV1_1.sol
[codex:846381] contracts/centre-tokens/contracts/v1.1/Rescuable.sol
[codex:846381] contracts/centre-tokens/contracts/util/EIP712.sol
[codex:846381] contracts/centre-tokens/contracts/util/ECRecover.sol
[codex:846381] contracts/centre-tokens/contracts/v1/FiatTokenV1.sol
[codex:846381] contracts/centre-tokens/contracts/v1/Ownable.sol
[codex:846381] contracts/centre-tokens/contracts/v1/Blacklistable.sol
[codex:846381] contracts/centre-tokens/contracts/v1/AbstractFiatTokenV1.sol
[codex:846381] contracts/centre-tokens/contracts/v1/Pausable.sol
[codex:846381] contracts/centre-tokens/contracts/v2/FiatTokenV2_1.sol
[codex:846381] contracts/centre-tokens/contracts/v2/EIP712Domain.sol
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Examining contract initialization and upgrade risks**
[codex:846381] 
[codex:846381] I'm reviewing initialization and upgrade functions in wrapped token contracts to identify potential exploits, especially unprotected initializers and publicly callable upgrade steps that might let attackers seize ownership or siphon tokens if certain conditions hold. I'm checking access controls around critical functions and how state changes align with external calls to spot concrete vulnerabilities.
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,240p' contracts/centre-tokens/contracts/v2/FiatTokenV2.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 6ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381]  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Analyzing initializeV2 security implications**
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,260p' contracts/centre-tokens/contracts/v2/EIP3009.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381]  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Checking Ownable contract for upgrade safety**
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,200p' contracts/centre-tokens/contracts/v1/Ownable.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018 zOS Global Limited.
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Analyzing upgradeable ownership and reentrancy risks**
[codex:846381] 
[codex:846381] I'm piecing together how the Ownable constructor behaves in a proxy setup, noting that ownership is correctly initialized via explicit calls rather than constructor execution. The initialize function can be called by anyone if not guarded, posing a risk. I'm also checking if zero exchangeRate can cause errors in deposit (it does revert safely). Then I consider reentrancy concerns around deposit and withdraw functions, especially whether external unwrap calls could reenter or exploit state changes. Operator-only functions appear safe from attacker access. Next, I'll look into rescue-related functions for further risks.
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,200p' contracts/centre-tokens/contracts/v1.1/Rescuable.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381]  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Reviewing ownership and feature concerns**
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,260p' contracts/centre-tokens/contracts/v2/EIP2612.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381]  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Checking for missing access controls**
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,260p' contracts/centre-tokens/contracts/v1.1/FiatTokenV1_1.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381]  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Analyzing potential security and logic risks**
[codex:846381] exec
[codex:846381] /bin/bash -lc 'rg -n "function _transfer" -n contracts/centre-tokens/contracts/v1/FiatTokenV1.sol' in /tmp/codex-multi-dxfq4y0u succeeded in 6ms:
[codex:846381] 290:    function _transfer(
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '240,380p' contracts/centre-tokens/contracts/v1/FiatTokenV1.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381]      * @param to    Payee's address
[codex:846381]      * @param value Transfer amount
[codex:846381]      * @return True if successful
[codex:846381]      */
[codex:846381]     function transferFrom(
[codex:846381]         address from,
[codex:846381]         address to,
[codex:846381]         uint256 value
[codex:846381]     )
[codex:846381]         external
[codex:846381]         override
[codex:846381]         whenNotPaused
[codex:846381]         notBlacklisted(msg.sender)
[codex:846381]         notBlacklisted(from)
[codex:846381]         notBlacklisted(to)
[codex:846381]         returns (bool)
[codex:846381]     {
[codex:846381]         require(
[codex:846381]             value <= allowed[from][msg.sender],
[codex:846381]             "ERC20: transfer amount exceeds allowance"
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Analyzing potential initialization vulnerabilities**
[codex:846381] 
[codex:846381] I'm exploring if unprotected initialize functions allow attackers to hijack ownership or mint tokens, focusing on concrete exploit paths that could yield profit, including uninitialized proxies and callable upgrade initializers that transfer tokens. I'm also considering reentrancy, access control, and storage collisions to see if any lead to concrete vulnerabilities worth reporting.
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,200p' contracts/centre-tokens/contracts/v2/EIP712Domain.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 6ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381]  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381] 
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Identifying potential unprotected initializers**
[codex:846381] thinking
[codex:846381] **Detailing profit-driven initializer exploits**
[codex:846381] 
[codex:846381] I'll explore how unprotected initialize functions can let attackers mint unbacked tokens redeemable for ETH or sellable, showing concrete profit paths through proxy hijacking and token minting. I'll also gather relevant code locations to support these findings.
[codex:846381] exec
[codex:846381] /bin/bash -lc "nl -ba contracts/centre-tokens/contracts/v1/FiatTokenV1.sol | sed -n '70,160p'" in /tmp/codex-multi-dxfq4y0u succeeded in 6ms:
[codex:846381]     70	        require(
[codex:846381]     71	            newMasterMinter != address(0),
[codex:846381]     72	            "FiatToken: new masterMinter is the zero address"
[codex:846381]     73	        );
[codex:846381]     74	        require(
[codex:846381]     75	            newPauser != address(0),
[codex:846381]     76	            "FiatToken: new pauser is the zero address"
[codex:846381]     77	        );
[codex:846381]     78	        require(
[codex:846381]     79	            newBlacklister != address(0),
[codex:846381]     80	            "FiatToken: new blacklister is the zero address"
[codex:846381]     81	        );
[codex:846381]     82	        require(
[codex:846381]     83	            newOwner != address(0),
[codex:846381]     84	            "FiatToken: new owner is the zero address"
[codex:846381]     85	        );
[codex:846381]     86	
[codex:846381]     87	        name = tokenName;
[codex:846381]     88	        symbol = tokenSymbol;
[codex:846381]     89	        currency = tokenCurrency;
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Collecting function signature lines**
[codex:846381] exec
[codex:846381] /bin/bash -lc "nl -ba contracts/centre-tokens/contracts/v1/FiatTokenV1.sol | sed -n '40,90p'" in /tmp/codex-multi-dxfq4y0u succeeded in 6ms:
[codex:846381]     40	    string public name;
[codex:846381]     41	    string public symbol;
[codex:846381]     42	    uint8 public decimals;
[codex:846381]     43	    string public currency;
[codex:846381]     44	    address public masterMinter;
[codex:846381]     45	    bool internal initialized;
[codex:846381]     46	
[codex:846381]     47	    mapping(address => uint256) internal balances;
[codex:846381]     48	    mapping(address => mapping(address => uint256)) internal allowed;
[codex:846381]     49	    uint256 internal totalSupply_ = 0;
[codex:846381]     50	    mapping(address => bool) internal minters;
[codex:846381]     51	    mapping(address => uint256) internal minterAllowed;
[codex:846381]     52	
[codex:846381]     53	    event Mint(address indexed minter, address indexed to, uint256 amount);
[codex:846381]     54	    event Burn(address indexed burner, uint256 amount);
[codex:846381]     55	    event MinterConfigured(address indexed minter, uint256 minterAllowedAmount);
[codex:846381]     56	    event MinterRemoved(address indexed oldMinter);
[codex:846381]     57	    event MasterMinterChanged(address indexed newMasterMinter);
[codex:846381]     58	
[codex:846381]     59	    function initialize(
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Gathering line numbers for initialize versions**
[codex:846381] exec
[codex:846381] /bin/bash -lc "nl -ba contracts/centre-tokens/contracts/v2/FiatTokenV2.sol | sed -n '20,80p'" in /tmp/codex-multi-dxfq4y0u succeeded in 8ms:
[codex:846381]     20	 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381]     21	 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
[codex:846381]     22	 * SOFTWARE.
[codex:846381]     23	 */
[codex:846381]     24	
[codex:846381]     25	pragma solidity 0.6.12;
[codex:846381]     26	
[codex:846381]     27	import { FiatTokenV1_1 } from "../v1.1/FiatTokenV1_1.sol";
[codex:846381]     28	import { AbstractFiatTokenV2 } from "./AbstractFiatTokenV2.sol";
[codex:846381]     29	import { EIP712 } from "../util/EIP712.sol";
[codex:846381]     30	import { EIP712Domain } from "./EIP712Domain.sol";
[codex:846381]     31	import { EIP3009 } from "./EIP3009.sol";
[codex:846381]     32	import { EIP2612 } from "./EIP2612.sol";
[codex:846381]     33	
[codex:846381]     34	/**
[codex:846381]     35	 * @title FiatToken V2
[codex:846381]     36	 * @notice ERC20 Token backed by fiat reserves, version 2
[codex:846381]     37	 */
[codex:846381]     38	contract FiatTokenV2 is FiatTokenV1_1, EIP3009, EIP2612 {
[codex:846381]     39	    uint8 internal _initializedVersion;
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Checking InitializeV2 references**
[codex:846381] exec
[codex:846381] /bin/bash -lc "nl -ba contracts/centre-tokens/contracts/v2/FiatTokenV2_1.sol | sed -n '20,120p'" in /tmp/codex-multi-dxfq4y0u succeeded in 6ms:
[codex:846381]     20	 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
[codex:846381]     21	 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
[codex:846381]     22	 * SOFTWARE.
[codex:846381]     23	 */
[codex:846381]     24	
[codex:846381]     25	pragma solidity 0.6.12;
[codex:846381]     26	
[codex:846381]     27	import { FiatTokenV2 } from "./FiatTokenV2.sol";
[codex:846381]     28	
[codex:846381]     29	// solhint-disable func-name-mixedcase
[codex:846381]     30	
[codex:846381]     31	/**
[codex:846381]     32	 * @title FiatToken V2.1
[codex:846381]     33	 * @notice ERC20 Token backed by fiat reserves, version 2.1
[codex:846381]     34	 */
[codex:846381]     35	contract FiatTokenV2_1 is FiatTokenV2 {
[codex:846381]     36	    /**
[codex:846381]     37	     * @notice Initialize v2.1
[codex:846381]     38	     * @param lostAndFound  The address to which the locked funds are sent
[codex:846381]     39	     */
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Summarizing critical and medium vulnerabilities**
[codex:846381] 
[codex:846381] I’m detailing two main findings: a critical proxy hijack via an unprotected `initialize` method allowing full contract control and minting of tokens for large profit, and a medium-risk unprotected `initializeV2_1` that lets anyone sweep tokens held by the contract’s own address. I’m preparing step-by-step exploit sequences, severity, profit estimates, and exact file/line evidence as requested for a clear, structured JSON output.
[codex:846381] exec
[codex:846381] /bin/bash -lc "sed -n '1,200p' contracts/centre-tokens/contracts/v1/Pausable.sol" in /tmp/codex-multi-dxfq4y0u succeeded in 10ms:
[codex:846381] /**
[codex:846381]  * SPDX-License-Identifier: MIT
[codex:846381]  *
[codex:846381]  * Copyright (c) 2016 Smart Contract Solutions, Inc.
[codex:846381]  * Copyright (c) 2018-2020 CENTRE SECZ0
[codex:846381]  *
[codex:846381]  * Permission is hereby granted, free of charge, to any person obtaining a copy
[codex:846381]  * of this software and associated documentation files (the "Software"), to deal
[codex:846381]  * in the Software without restriction, including without limitation the rights
[codex:846381]  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
[codex:846381]  * copies of the Software, and to permit persons to whom the Software is
[codex:846381]  * furnished to do so, subject to the following conditions:
[codex:846381]  *
[codex:846381]  * The above copyright notice and this permission notice shall be included in
[codex:846381]  * copies or substantial portions of the Software.
[codex:846381]  *
[codex:846381]  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
[codex:846381]  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
[codex:846381]  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
[codex:846381]  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Preparing final output format**
[codex:846381] exec
[codex:846381] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-dxfq4y0u succeeded in 5ms:
[codex:846381] {"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:846381] 
[codex:846381] thinking
[codex:846381] **Preparing JSON output**
[codex:846381] exec
[codex:846381] /bin/bash -lc "nl -ba contracts/centre-tokens/contracts/v1/FiatTokenV1.sol | sed -n '300,360p'" in /tmp/codex-multi-dxfq4y0u succeeded in 9ms:
[codex:846381]    300	        );
[codex:846381]    301	
[codex:846381]    302	        balances[from] = balances[from].sub(value);
[codex:846381]    303	        balances[to] = balances[to].add(value);
[codex:846381]    304	        emit Transfer(from, to, value);
[codex:846381]    305	    }
[codex:846381]    306	
[codex:846381]    307	    /**
[codex:846381]    308	     * @dev Function to add/update a new minter
[codex:846381]    309	     * @param minter The address of the minter
[codex:846381]    310	     * @param minterAllowedAmount The minting amount allowed for the minter
[codex:846381]    311	     * @return True if the operation was successful.
[codex:846381]    312	     */
[codex:846381]    313	    function configureMinter(address minter, uint256 minterAllowedAmount)
[codex:846381]    314	        external
[codex:846381]    315	        whenNotPaused
[codex:846381]    316	        onlyMasterMinter
[codex:846381]    317	        returns (bool)
[codex:846381]    318	    {
[codex:846381]    319	        minters[minter] = true;
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Preparing detailed vulnerability findings**
[codex:846381] exec
[codex:846381] /bin/bash -lc "rg -n \"call\\{value\" -S contracts" in /tmp/codex-multi-dxfq4y0u succeeded in 9ms:
[codex:846381] contracts/contracts/wrapped-tokens/staking/upgrade/WrapTokenV3ETH.sol:53:        (bool success, ) = _ethReceiver.call{value: amount, gas: _ETH_TRANSFER_GAS}("");
[codex:846381] 
[codex:846381] thinking
[codex:846381] **Summarizing critical upgradeability findings**
[codex:846381] 
[codex:846381] I'll prepare a detailed JSON output highlighting two upgrade-time access control vulnerabilities: one allowing proxy takeover and unlimited minting via an unprotected `initialize` function, and another letting anyone sweep the contract’s token balance through `initializeV2_1`. I'll carefully include exploit scenarios, severity, recommendations, evidence, and source locations while ensuring valid JSON format and clear profit potential descriptions.
[codex:846381] codex
[codex:846381] {"no_findings":false,"summary":"Two upgrade-time access-control gaps can lead to direct value extraction if an attacker reaches initialization first: the base initializer can be hijacked to gain minting power, and the v2.1 initializer can redirect the contract’s own token balance.","findings":[{"severity":"critical","category":"upgradeability","title":"Unprotected initialize allows proxy takeover and unlimited minting","exploit_scenario":"1) Monitor for a freshly deployed proxy or upgrade where `initialized` is still false. 2) Call `initialize(...)` and set `newOwner`, `newMasterMinter`, `newPauser`, and `newBlacklister` to attacker-controlled addresses. 3) As masterMinter, call `configureMinter(attacker, very_large_amount)` and then `mint(attacker, amount)` to mint unbacked wBETH. 4) Redeem via `requestWithdrawEth` or dump on AMMs to extract ETH/liquidity. Profit potential: up to the full ETH reserves backing wBETH (wrap/unwrap contract balances + market liquidity).","recommendation":"Restrict `initialize` to a trusted initializer (e.g., proxy-admin/initializer pattern) and execute initialization atomically in the deployment or upgrade transaction.","evidence":"`initialize` is public and only checks `!initialized`, but sets `masterMinter`, `pauser`, `blacklister`, and `owner` from caller-supplied parameters.","locations":["contracts/centre-tokens/contracts/v1/FiatTokenV1.sol:59"]},{"severity":"medium","category":"upgradeability","title":"initializeV2_1 lets anyone sweep the contract’s own token balance","exploit_scenario":"1) After v2 is initialized (`_initializedVersion == 1`) and the v2.1 code is live but before the admin calls `initializeV2_1`, ensure there is a non-zero token balance at `address(this)` (anyone can transfer tokens to the token contract). 2) Call `initializeV2_1(attacker)`; it transfers `balances[address(this)]` to the attacker-controlled `lostAndFound`. 3) Sell or redeem the received tokens. Profit potential: up to the token balance held by the contract at the time of the call.","recommendation":"Gate `initializeV2_1` behind an admin-only modifier and validate `lostAndFound` (non-zero), or execute upgrade + initialization in a single admin-controlled transaction.","evidence":"`initializeV2_1` is external with only a version check and transfers `balances[address(this)]` to a caller-supplied address.","locations":["contracts/centre-tokens/contracts/v2/FiatTokenV2_1.sol:40"]}]}
[codex:846381] tokens used
[codex:846381] 49,467
[codex:846381] {"no_findings":false,"summary":"Two upgrade-time access-control gaps can lead to direct value extraction if an attacker reaches initialization first: the base initializer can be hijacked to gain minting power, and the v2.1 initializer can redirect the contract’s own token balance.","findings":[{"severity":"critical","category":"upgradeability","title":"Unprotected initialize allows proxy takeover and unlimited minting","exploit_scenario":"1) Monitor for a freshly deployed proxy or upgrade where `initialized` is still false. 2) Call `initialize(...)` and set `newOwner`, `newMasterMinter`, `newPauser`, and `newBlacklister` to attacker-controlled addresses. 3) As masterMinter, call `configureMinter(attacker, very_large_amount)` and then `mint(attacker, amount)` to mint unbacked wBETH. 4) Redeem via `requestWithdrawEth` or dump on AMMs to extract ETH/liquidity. Profit potential: up to the full ETH reserves backing wBETH (wrap/unwrap contract balances + market liquidity).","recommendation":"Restrict `initialize` to a trusted initializer (e.g., proxy-admin/initializer pattern) and execute initialization atomically in the deployment or upgrade transaction.","evidence":"`initialize` is public and only checks `!initialized`, but sets `masterMinter`, `pauser`, `blacklister`, and `owner` from caller-supplied parameters.","locations":["contracts/centre-tokens/contracts/v1/FiatTokenV1.sol:59"]},{"severity":"medium","category":"upgradeability","title":"initializeV2_1 lets anyone sweep the contract’s own token balance","exploit_scenario":"1) After v2 is initialized (`_initializedVersion == 1`) and the v2.1 code is live but before the admin calls `initializeV2_1`, ensure there is a non-zero token balance at `address(this)` (anyone can transfer tokens to the token contract). 2) Call `initializeV2_1(attacker)`; it transfers `balances[address(this)]` to the attacker-controlled `lostAndFound`. 3) Sell or redeem the received tokens. Profit potential: up to the token balance held by the contract at the time of the call.","recommendation":"Gate `initializeV2_1` behind an admin-only modifier and validate `lostAndFound` (non-zero), or execute upgrade + initialization in a single admin-controlled transaction.","evidence":"`initializeV2_1` is external with only a version check and transfers `balances[address(this)]` to a caller-supplied address.","locations":["contracts/centre-tokens/contracts/v2/FiatTokenV2_1.sol:40"]}]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T21:58:59.980612+00:00",
        "returncode": 0
    },
    "summary": "Two upgrade-time access-control gaps can lead to direct value extraction if an attacker reaches initialization first: the base initializer can be hijacked to gain minting power, and the v2.1 initializer can redirect the contract\u2019s own token balance.",
    "raw_final": {
        "summary": "Two upgrade-time access-control gaps can lead to direct value extraction if an attacker reaches initialization first: the base initializer can be hijacked to gain minting power, and the v2.1 initializer can redirect the contract\u2019s own token balance.",
        "findings": [
            {
                "title": "Unprotected initialize allows proxy takeover and unlimited minting",
                "category": "upgradeability",
                "evidence": "`initialize` is public and only checks `!initialized`, but sets `masterMinter`, `pauser`, `blacklister`, and `owner` from caller-supplied parameters.",
                "severity": "critical",
                "locations": [
                    "contracts/centre-tokens/contracts/v1/FiatTokenV1.sol:59"
                ],
                "recommendation": "Restrict `initialize` to a trusted initializer (e.g., proxy-admin/initializer pattern) and execute initialization atomically in the deployment or upgrade transaction.",
                "exploit_scenario": "1) Monitor for a freshly deployed proxy or upgrade where `initialized` is still false. 2) Call `initialize(...)` and set `newOwner`, `newMasterMinter`, `newPauser`, and `newBlacklister` to attacker-controlled addresses. 3) As masterMinter, call `configureMinter(attacker, very_large_amount)` and then `mint(attacker, amount)` to mint unbacked wBETH. 4) Redeem via `requestWithdrawEth` or dump on AMMs to extract ETH/liquidity. Profit potential: up to the full ETH reserves backing wBETH (wrap/unwrap contract balances + market liquidity)."
            },
            {
                "title": "initializeV2_1 lets anyone sweep the contract\u2019s own token balance",
                "category": "upgradeability",
                "evidence": "`initializeV2_1` is external with only a version check and transfers `balances[address(this)]` to a caller-supplied address.",
                "severity": "medium",
                "locations": [
                    "contracts/centre-tokens/contracts/v2/FiatTokenV2_1.sol:40"
                ],
                "recommendation": "Gate `initializeV2_1` behind an admin-only modifier and validate `lostAndFound` (non-zero), or execute upgrade + initialization in a single admin-controlled transaction.",
                "exploit_scenario": "1) After v2 is initialized (`_initializedVersion == 1`) and the v2.1 code is live but before the admin calls `initializeV2_1`, ensure there is a non-zero token balance at `address(this)` (anyone can transfer tokens to the token contract). 2) Call `initializeV2_1(attacker)`; it transfers `balances[address(this)]` to the attacker-controlled `lostAndFound`. 3) Sell or redeem the received tokens. Profit potential: up to the token balance held by the contract at the time of the call."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
3
CALL-family (heavy)
6
EXT*/BALANCE
8
Total opcodes
13973
Flags
create_opcodes_present heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x03dd
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x7f2eecc3
00000019: GT
0000001a: PUSH2 0x01fd
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xad38bf22
00000024: GT
00000025: PUSH2 0x0118
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xdd62ed3e
0000002f: GT
00000030: PUSH2 0x00ab
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xef55bec6
0000003a: GT
0000003b: PUSH2 0x007a
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xef55bec6
00000045: EQ
00000046: PUSH2 0x1092
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0xf2fde38b
00000050: EQ
00000051: PUSH2 0x10fe
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0xf340fa01
0000005b: EQ
0000005c: PUSH2 0x1131
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0xf9f92be4
00000066: EQ
00000067: PUSH2 0x1157
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0xfe575a87
00000071: EQ
00000072: PUSH2 0x118a
00000075: JUMPI
00000076: PUSH2 0x041a
00000079: JUMP
0000007a: JUMPDEST
0000007b: DUP1
0000007c: PUSH4 0xdd62ed3e
00000081: EQ
00000082: PUSH2 0x0f9d
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0xe3ee160e
0000008c: EQ
0000008d: PUSH2 0x0fd8
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xe5a6b10f
00000097: EQ
00000098: PUSH2 0x1044
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xe94a0102
000000a2: EQ
000000a3: PUSH2 0x1059
000000a6: JUMPI
000000a7: PUSH2 0x041a
000000aa: JUMP
000000ab: JUMPDEST
000000ac: DUP1
000000ad: PUSH4 0xbd102430
000000b2: GT
000000b3: PUSH2 0x00e7
000000b6: JUMPI
000000b7: DUP1
000000b8: PUSH4 0xbd102430
000000bd: EQ
000000be: PUSH2 0x0e9a
000000c1: JUMPI
000000c2: DUP1
000000c3: PUSH4 0xd505accf
000000c8: EQ
000000c9: PUSH2 0x0eaf
000000cc: JUMPI
000000cd: DUP1
000000ce: PUSH4 0xd608ea64
000000d3: EQ
000000d4: PUSH2 0x0f0d
000000d7: JUMPI
000000d8: DUP1
000000d9: PUSH4 0xd9169487
000000de: EQ
000000df: PUSH2 0x0f88
000000e2: JUMPI
000000e3: PUSH2 0x041a
000000e6: JUMP
000000e7: JUMPDEST
000000e8: DUP1
000000e9: PUSH4 0xad38bf22
000000ee: EQ
000000ef: PUSH2 0x0de5
000000f2: JUMPI
000000f3: DUP1
000000f4: PUSH4 0xb2118a8d
000000f9: EQ
000000fa: PUSH2 0x0e18
000000fd: JUMPI
000000fe: DUP1
000000ff: PUSH4 0xb9888472
00000104: EQ
00000105: PUSH2 0x0e5b
00000108: JUMPI
00000109: DUP1
0000010a: PUSH4 0xb9e205ae
0000010f: EQ
00000110: PUSH2 0x0e70
00000113: JUMPI
00000114: PUSH2 0x041a
00000117: JUMP
00000118: JUMPDEST
00000119: DUP1
0000011a: PUSH4 0xa0712d68
0000011f: GT
00000120: PUSH2 0x0190
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0xa9059cbb
0000012a: GT
0000012b: PUSH2 0x015f
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0xa9059cbb
00000135: EQ
00000136: PUSH2 0x0d13
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0xaa20e1e4
00000140: EQ
00000141: PUSH2 0x0d4c
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0xaa271e1a
0000014b: EQ
0000014c: PUSH2 0x0d7f
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0xac7475ed
00000156: EQ
00000157: PUSH2 0x0db2
0000015a: JUMPI
0000015b: PUSH2 0x041a
0000015e: JUMP
0000015f: JUMPDEST
00000160: DUP1
00000161: PUSH4 0xa0712d68
00000166: EQ
00000167: PUSH2 0x0c71
0000016a: JUMPI
0000016b: DUP1
0000016c: PUSH4 0xa0907283
00000171: EQ
00000172: PUSH2 0x0c9b
00000175: JUMPI
00000176: DUP1
00000177: PUSH4 0xa0cc6a68
0000017c: EQ
0000017d: PUSH2 0x0cc5
00000180: JUMPI
00000181: DUP1
00000182: PUSH4 0xa457c2d7
00000187: EQ
00000188: PUSH2 0x0cda
0000018b: JUMPI
0000018c: PUSH2 0x041a
0000018f: JUMP
00000190: JUMPDEST
00000191: DUP1
00000192: PUSH4 0x8da5cb5b
00000197: GT
00000198: PUSH2 0x01cc
0000019b: JUMPI
0000019c: DUP1
0000019d: PUSH4 0x8da5cb5b
000001a2: EQ
000001a3: PUSH2 0x0bff
000001a6: JUMPI
000001a7: DUP1
000001a8: PUSH4 0x95d89b41
000001ad: EQ
000001ae: PUSH2 0x0c14
000001b1: JUMPI
000001b2: DUP1
000001b3: PUSH4 0x99a7a0a2
000001b8: EQ
000001b9: PUSH2 0x0c29
000001bc: JUMPI
000001bd: DUP1
000001be: PUSH4 0x9fd0506d
000001c3: EQ
000001c4: PUSH2 0x0c5c
000001c7: JUMPI
000001c8: PUSH2 0x041a
000001cb: JUMP
000001cc: JUMPDEST
000001cd: DUP1
000001ce: PUSH4 0x7f2eecc3
000001d3: EQ
000001d4: PUSH2 0x0b78
000001d7: JUMPI
000001d8: DUP1
000001d9: PUSH4 0x824da34f
000001de: EQ
000001df: PUSH2 0x0b8d
000001e2: JUMPI
000001e3: DUP1
000001e4: PUSH4 0x8456cb59
000001e9: EQ
000001ea: PUSH2 0x0bb7
000001ed: JUMPI
000001ee: DUP1
000001ef: PUSH4 0x8a6db9c3
000001f4: EQ
000001f5: PUSH2 0x0bcc
000001f8: JUMPI
000001f9: PUSH2 0x041a
000001fc: JUMP
000001fd: JUMPDEST
000001fe: DUP1
000001ff: PUSH4 0x38a63183
00000204: GT
00000205: PUSH2 0x02f8
00000208: JUMPI
00000209: DUP1
0000020a: PUSH4 0x54fd4d50
0000020f: GT
00000210: PUSH2 0x028b
00000213: JUMPI
00000214: DUP1
00000215: PUSH4 0x5c975abb
0000021a: GT
0000021b: PUSH2 0x025a
0000021e: JUMPI
0000021f: DUP1
00000220: PUSH4 0x5c975abb
00000225: EQ
00000226: PUSH2 0x0ad3
00000229: JUMPI
0000022a: DUP1
0000022b: PUSH4 0x70a08231
00000230: EQ
00000231: PUSH2 0x0ae8
00000234: JUMPI
00000235: DUP1
00000236: PUSH4 0x7a5598d0
0000023b: EQ
0000023c: PUSH2 0x0b1b
0000023f: JUMPI
00000240: DUP1
00000241: PUSH4 0x7dc0d1d0
00000246: EQ
00000247: PUSH2 0x0b30
0000024a: JUMPI
0000024b: DUP1
0000024c: PUSH4 0x7ecebe00
00000251: EQ
00000252: PUSH2 0x0b45
00000255: JUMPI
00000256: PUSH2 0x041a
00000259: JUMP
0000025a: JUMPDEST
0000025b: DUP1
0000025c: PUSH4 0x54fd4d50
00000261: EQ
00000262: PUSH2 0x0a28
00000265: JUMPI
00000266: DUP1
00000267: PUSH4 0x554bab3c
0000026c: EQ
0000026d: PUSH2 0x0a3d
00000270: JUMPI
00000271: DUP1
00000272: PUSH4 0x570ca735
00000277: EQ
00000278: PUSH2 0x0a70
0000027b: JUMPI
0000027c: DUP1
0000027d: PUSH4 0x5a049a70
00000282: EQ
00000283: PUSH2 0x0a85
00000286: JUMPI
00000287: PUSH2 0x041a
0000028a: JUMP
0000028b: JUMPDEST
0000028c: DUP1
0000028d: PUSH4 0x3f4ba83a
00000292: GT
00000293: PUSH2 0x02c7
00000296: JUMPI
00000297: DUP1
00000298: PUSH4 0x3f4ba83a
0000029d: EQ
0000029e: PUSH2 0x0977
000002a1: JUMPI
000002a2: DUP1
000002a3: PUSH4 0x40c10f19
000002a8: EQ
000002a9: PUSH2 0x098c
000002ac: JUMPI
000002ad: DUP1
000002ae: PUSH4 0x42966c68
000002b3: EQ
000002b4: PUSH2 0x09c5
000002b7: JUMPI
000002b8: DUP1
000002b9: PUSH4 0x4e44d956
000002be: EQ
000002bf: PUSH2 0x09ef
000002c2: JUMPI
000002c3: PUSH2 0x041a
000002c6: JUMP
000002c7: JUMPDEST
000002c8: DUP1
000002c9: PUSH4 0x38a63183
000002ce: EQ
000002cf: PUSH2 0x08ff
000002d2: JUMPI
000002d3: DUP1
000002d4: PUSH4 0x39509351
000002d9: EQ
000002da: PUSH2 0x0914
000002dd: JUMPI
000002de: DUP1
000002df: PUSH4 0x3ba0b9a9
000002e4: EQ
000002e5: PUSH2 0x094d
000002e8: JUMPI
000002e9: DUP1
000002ea: PUSH4 0x3bc2a8a3
000002ef: EQ
000002f0: PUSH2 0x0962
000002f3: JUMPI
000002f4: PUSH2 0x041a
000002f7: JUMP
000002f8: JUMPDEST
000002f9: DUP1
000002fa: PUSH4 0x2ab60045
000002ff: GT
00000300: PUSH2 0x0370
00000303: JUMPI
00000304: DUP1
00000305: PUSH4 0x313ce567
0000030a: GT
0000030b: PUSH2 0x033f
0000030e: JUMPI
0000030f: DUP1
00000310: PUSH4 0x313ce567
00000315: EQ
00000316: PUSH2 0x06a8
00000319: JUMPI
0000031a: DUP1
0000031b: PUSH4 0x3357162b
00000320: EQ
00000321: PUSH2 0x06d3
00000324: JUMPI
00000325: DUP1
00000326: PUSH4 0x35d99f35
0000032b: EQ
0000032c: PUSH2 0x08b9
0000032f: JUMPI
00000330: DUP1
00000331: PUSH4 0x3644e515
00000336: EQ
00000337: PUSH2 0x08ea
0000033a: JUMPI
0000033b: PUSH2 0x041a
0000033e: JUMP
0000033f: JUMPDEST
00000340: DUP1
00000341: PUSH4 0x2ab60045
00000346: EQ
00000347: PUSH2 0x05fa
0000034a: JUMPI
0000034b: DUP1
0000034c: PUSH4 0x2fc81e09
00000351: EQ
00000352: PUSH2 0x062d
00000355: JUMPI
00000356: DUP1
00000357: PUSH4 0x3092afd5
0000035c: EQ
0000035d: PUSH2 0x0660
00000360: JUMPI
00000361: DUP1
00000362: PUSH4 0x30adf81f
00000367: EQ
00000368: PUSH2 0x0693
0000036b: JUMPI
0000036c: PUSH2 0x041a
0000036f: JUMP
00000370: JUMPDEST
00000371: DUP1
00000372: PUSH4 0x1a895266
00000377: GT
00000378: PUSH2 0x03ac
0000037b: JUMPI
0000037c: DUP1
0000037d: PUSH4 0x1a895266
00000382: EQ
00000383: PUSH2 0x0549
00000386: JUMPI
00000387: DUP1
00000388: PUSH4 0x1c439430
0000038d: EQ
0000038e: PUSH2 0x057c
00000391: JUMPI
00000392: DUP1
00000393: PUSH4 0x1cb44dfc
00000398: EQ
00000399: PUSH2 0x0584
0000039c: JUMPI
0000039d: DUP1
0000039e: PUSH4 0x23b872dd
000003a3: EQ
000003a4: PUSH2 0x05b7
000003a7: JUMPI
000003a8: PUSH2 0x041a
000003ab: JUMP
000003ac: JUMPDEST
000003ad: DUP1
000003ae: PUSH4 0x06fdde03
000003b3: EQ
000003b4: PUSH2 0x041f
000003b7: JUMPI
000003b8: DUP1
000003b9: PUSH4 0x095ea7b3
000003be: EQ
000003bf: PUSH2 0x04a9
000003c2: JUMPI
000003c3: DUP1
000003c4: PUSH4 0x0ab9aaf6
000003c9: EQ
000003ca: PUSH2 0x04f6
000003cd: JUMPI
000003ce: DUP1
000003cf: PUSH4 0x18160ddd
000003d4: EQ
000003d5: PUSH2 0x0522
000003d8: JUMPI
000003d9: PUSH2 0x041a
000003dc: JUMP
000003dd: JUMPDEST
000003de: CALLDATASIZE
000003df: PUSH2 0x041a
000003e2: JUMPI
000003e3: PUSH1 0x40
000003e5: DUP1
000003e6: MLOAD
000003e7: CALLVALUE
000003e8: DUP2
000003e9: MSTORE
000003ea: SWAP1
000003eb: MLOAD
000003ec: CALLER
000003ed: SWAP2
000003ee: PUSH32 0x1e57e3bb474320be3d2c77138f75b7c3941292d647f5f9634e33a8e94e0e069b
0000040f: SWAP2
00000410: SWAP1
00000411: DUP2
00000412: SWAP1
00000413: SUB
00000414: PUSH1 0x20
00000416: ADD
00000417: SWAP1
00000418: LOG2
00000419: STOP
0000041a: JUMPDEST
0000041b: PUSH1 0x00
0000041d: DUP1
0000041e: REVERT
0000041f: JUMPDEST
00000420: CALLVALUE
00000421: DUP1
00000422: ISZERO
00000423: PUSH2 0x042b
00000426: JUMPI
00000427: PUSH1 0x00
00000429: DUP1
0000042a: REVERT
0000042b: JUMPDEST
0000042c: POP
0000042d: PUSH2 0x0434
00000430: PUSH2 0x11bd
00000433: JUMP
00000434: JUMPDEST
00000435: PUSH1 0x40
00000437: DUP1
00000438: MLOAD
00000439: PUSH1 0x20
0000043b: DUP1
0000043c: DUP3
0000043d: MSTORE
0000043e: DUP4
0000043f: MLOAD
00000440: DUP2
00000441: DUP4
00000442: ADD
00000443: MSTORE
00000444: DUP4
00000445: MLOAD
00000446: SWAP2
00000447: SWAP3
00000448: DUP4
00000449: SWAP3
0000044a: SWAP1
0000044b: DUP4
0000044c: ADD
0000044d: SWAP2
0000044e: DUP6
0000044f: ADD
00000450: SWAP1
00000451: DUP1
00000452: DUP4
00000453: DUP4
00000454: PUSH1 0x00
00000456: JUMPDEST
00000457: DUP4
00000458: DUP2
00000459: LT
0000045a: ISZERO
0000045b: PUSH2 0x046e
0000045e: JUMPI
0000045f: DUP2
00000460: DUP2
00000461: ADD
00000462: MLOAD
00000463: DUP4
00000464: DUP3
00000465: ADD
00000466: MSTORE
00000467: PUSH1 0x20
00000469: ADD
0000046a: PUSH2 0x0456
0000046d: JUMP
0000046e: JUMPDEST
0000046f: POP
00000470: POP
00000471: POP
00000472: POP
00000473: SWAP1
00000474: POP
00000475: SWAP1
00000476: DUP2
00000477: ADD
00000478: SWAP1
00000479: PUSH1 0x1f
0000047b: AND
0000047c: DUP1
0000047d: ISZERO
0000047e: PUSH2 0x049b
00000481: JUMPI
00000482: DUP1
00000483: DUP3
00000484: SUB
00000485: DUP1
00000486: MLOAD
00000487: PUSH1 0x01
00000489: DUP4
0000048a: PUSH1 0x20
0000048c: SUB
0000048d: PUSH2 0x0100
00000490: EXP
00000491: SUB
00000492: NOT
00000493: AND
00000494: DUP2
00000495: MSTORE
00000496: PUSH1 0x20
00000498: ADD
00000499: SWAP2
0000049a: POP
0000049b: JUMPDEST
0000049c: POP
0000049d: SWAP3
0000049e: POP
0000049f: POP
000004a0: POP
000004a1: PUSH1 0x40
000004a3: MLOAD
000004a4: DUP1
000004a5: SWAP2
000004a6: SUB
000004a7: SWAP1
000004a8: RETURN
000004a9: JUMPDEST
000004aa: CALLVALUE
000004ab: DUP1
000004ac: ISZERO
000004ad: PUSH2 0x04b5
000004b0: JUMPI
000004b1: PUSH1 0x00
000004b3: DUP1
000004b4: REVERT
000004b5: JUMPDEST
000004b6: POP
000004b7: PUSH2 0x04e2
000004ba: PUSH1 0x04
000004bc: DUP1
000004bd: CALLDATASIZE
000004be: SUB
000004bf: PUSH1 0x40
000004c1: DUP2
000004c2: LT
000004c3: ISZERO
000004c4: PUSH2 0x04cc
000004c7: JUMPI
000004c8: PUSH1 0x00
000004ca: DUP1
000004cb: REVERT
000004cc: JUMPDEST
000004cd: POP
000004ce: PUSH1 0x01
000004d0: PUSH1 0x01
000004d2: PUSH1 0xa0
000004d4: SHL
000004d5: SUB
000004d6: DUP2
000004d7: CALLDATALOAD
000004d8: AND
000004d9: SWAP1
000004da: PUSH1 0x20
000004dc: ADD
000004dd: CALLDATALOAD
000004de: PUSH2 0x124b
000004e1: JUMP
000004e2: JUMPDEST
000004e3: PUSH1 0x40
000004e5: DUP1
000004e6: MLOAD
000004e7: SWAP2
000004e8: ISZERO
000004e9: ISZERO
000004ea: DUP3
000004eb: MSTORE
000004ec: MLOAD
000004ed: SWAP1
000004ee: DUP2
000004ef: SWAP1
000004f0: SUB
000004f1: PUSH1 0x20
000004f3: ADD
000004f4: SWAP1
000004f5: RETURN
000004f6: JUMPDEST
000004f7: CALLVALUE
000004f8: DUP1
000004f9: ISZERO
000004fa: PUSH2 0x0502
000004fd: JUMPI
000004fe: PUSH1 0x00
00000500: DUP1
00000501: REVERT
00000502: JUMPDEST
00000503: POP
00000504: PUSH2 0x0520
00000507: PUSH1 0x04
00000509: DUP1
0000050a: CALLDATASIZE
0000050b: SUB
0000050c: PUSH1 0x20
0000050e: DUP2
0000050f: LT
00000510: ISZERO
00000511: PUSH2 0x0519
00000514: JUMPI
00000515: PUSH1 0x00
00000517: DUP1
00000518: REVERT
00000519: JUMPDEST
0000051a: POP
0000051b: CALLDATALOAD
0000051c: PUSH2 0x135f
0000051f: JUMP
00000520: JUMPDEST
00000521: STOP
00000522: JUMPDEST
00000523: CALLVALUE
00000524: DUP1
00000525: ISZERO
00000526: PUSH2 0x052e
00000529: JUMPI
0000052a: PUSH1 0x00
0000052c: DUP1
0000052d: REVERT
0000052e: JUMPDEST
0000052f: POP
00000530: PUSH2 0x0537
00000533: PUSH2 0x14ff
00000536: JUMP
00000537: JUMPDEST
00000538: PUSH1 0x40
0000053a: DUP1
0000053b: MLOAD
0000053c: SWAP2
0000053d: DUP3
0000053e: MSTORE
0000053f: MLOAD
00000540: SWAP1
00000541: DUP2
00000542: SWAP1
00000543: SUB
00000544: PUSH1 0x20
00000546: ADD
00000547: SWAP1
00000548: RETURN
00000549: JUMPDEST
0000054a: CALLVALUE
0000054b: DUP1
0000054c: ISZERO
0000054d: PUSH2 0x0555
00000550: JUMPI
00000551: PUSH1 0x00
00000553: DUP1
00000554: REVERT
00000555: JUMPDEST
00000556: POP
00000557: PUSH2 0x0520
0000055a: PUSH1 0x04
0000055c: DUP1
0000055d: CALLDATASIZE
0000055e: SUB
0000055f: PUSH1 0x20
00000561: DUP2
00000562: LT
00000563: ISZERO
00000564: PUSH2 0x056c
00000567: JUMPI
00000568: PUSH1 0x00
0000056a: DUP1
0000056b: REVERT
0000056c: JUMPDEST
0000056d: POP
0000056e: CALLDATALOAD
0000056f: PUSH1 0x01
00000571: PUSH1 0x01
00000573: PUSH1 0xa0
00000575: SHL
00000576: SUB
00000577: AND
00000578: PUSH2 0x1505
0000057b: JUMP
0000057c: JUMPDEST
0000057d: PUSH2 0x0520
00000580: PUSH2 0x1597
00000583: JUMP
00000584: JUMPDEST
00000585: CALLVALUE
00000586: DUP1
00000587: ISZERO
00000588: PUSH2 0x0590
0000058b: JUMPI
0000058c: PUSH1 0x00
0000058e: DUP1
0000058f: REVERT
00000590: JUMPDEST
00000591: POP
00000592: PUSH2 0x0520
00000595: PUSH1 0x04
00000597: DUP1
00000598: CALLDATASIZE
00000599: SUB
0000059a: PUSH1 0x20
0000059c: DUP2
0000059d: LT
0000059e: ISZERO
0000059f: PUSH2 0x05a7
000005a2: JUMPI
000005a3: PUSH1 0x00
000005a5: DUP1
000005a6: REVERT
000005a7: JUMPDEST
000005a8: POP
000005a9: CALLDATALOAD
000005aa: PUSH1 0x01
000005ac: PUSH1 0x01
000005ae: PUSH1 0xa0
000005b0: SHL
000005b1: SUB
000005b2: AND
000005b3: PUSH2 0x166d
000005b6: JUMP
000005b7: JUMPDEST
000005b8: CALLVALUE
000005b9: DUP1
000005ba: ISZERO
000005bb: PUSH2 0x05c3
000005be: JUMPI
000005bf: PUSH1 0x00
000005c1: DUP1
000005c2: REVERT
000005c3: JUMPDEST
000005c4: POP
000005c5: PUSH2 0x04e2
000005c8: PUSH1 0x04
000005ca: DUP1
000005cb: CALLDATASIZE
000005cc: SUB
000005cd: PUSH1 0x60
000005cf: DUP2
000005d0: LT
000005d1: ISZERO
000005d2: PUSH2 0x05da
000005d5: JUMPI
000005d6: PUSH1 0x00
000005d8: DUP1
000005d9: REVERT
000005da: JUMPDEST
000005db: POP
000005dc: PUSH1 0x01
000005de: PUSH1 0x01
000005e0: PUSH1 0xa0
000005e2: SHL
000005e3: SUB
000005e4: DUP2
000005e5: CALLDATALOAD
000005e6: DUP2
000005e7: AND
000005e8: SWAP2
000005e9: PUSH1 0x20
000005eb: DUP2
000005ec: ADD
000005ed: CALLDATALOAD
000005ee: SWAP1
000005ef: SWAP2
000005f0: AND
000005f1: SWAP1
000005f2: PUSH1 0x40
000005f4: ADD
000005f5: CALLDATALOAD
000005f6: PUSH2 0x17b3
000005f9: JUMP
000005fa: JUMPDEST
000005fb: CALLVALUE
000005fc: DUP1
000005fd: ISZERO
000005fe: PUSH2 0x0606
00000601: JUMPI
00000602: PUSH1 0x00
00000604: DUP1
00000605: REVERT
00000606: JUMPDEST
00000607: POP
00000608: PUSH2 0x0520
0000060b: PUSH1 0x04
0000060d: DUP1
0000060e: CALLDATASIZE
0000060f: SUB
00000610: PUSH1 0x20
00000612: DUP2
00000613: LT
00000614: ISZERO
00000615: PUSH2 0x061d
00000618: JUMPI
00000619: PUSH1 0x00
0000061b: DUP1
0000061c: REVERT
0000061d: JUMPDEST
0000061e: POP
0000061f: CALLDATALOAD
00000620: PUSH1 0x01
00000622: PUSH1 0x01
00000624: PUSH1 0xa0
00000626: SHL
00000627: SUB
00000628: AND
00000629: PUSH2 0x19d8
0000062c: JUMP
0000062d: JUMPDEST
0000062e: CALLVALUE
0000062f: DUP1
00000630: ISZERO
00000631: PUSH2 0x0639
00000634: JUMPI
00000635: PUSH1 0x00
00000637: DUP1
00000638: REVERT
00000639: JUMPDEST
0000063a: POP
0000063b: PUSH2 0x0520
0000063e: PUSH1 0x04
00000640: DUP1
00000641: CALLDATASIZE
00000642: SUB
00000643: PUSH1 0x20
00000645: DUP2
00000646: LT
00000647: ISZERO
00000648: PUSH2 0x0650
0000064b: JUMPI
0000064c: PUSH1 0x00
0000064e: DUP1
0000064f: REVERT
00000650: JUMPDEST
00000651: POP
00000652: CALLDATALOAD
00000653: PUSH1 0x01
00000655: PUSH1 0x01
00000657: PUSH1 0xa0
00000659: SHL
0000065a: SUB
0000065b: AND
0000065c: PUSH2 0x1ab4
0000065f: JUMP
00000660: JUMPDEST
00000661: CALLVALUE
00000662: DUP1
00000663: ISZERO
00000664: PUSH2 0x066c
00000667: JUMPI
00000668: PUSH1 0x00
0000066a: DUP1
0000066b: REVERT
0000066c: JUMPDEST
0000066d: POP
0000066e: PUSH2 0x04e2
00000671: PUSH1 0x04
00000673: DUP1
00000674: CALLDATASIZE
00000675: SUB
00000676: PUSH1 0x20
00000678: DUP2
00000679: LT
0000067a: ISZERO
0000067b: PUSH2 0x0683
0000067e: JUMPI
0000067f: PUSH1 0x00
00000681: DUP1
00000682: REVERT
00000683: JUMPDEST
00000684: POP
00000685: CALLDATALOAD
00000686: PUSH1 0x01
00000688: PUSH1 0x01
0000068a: PUSH1 0xa0
0000068c: SHL
0000068d: SUB
0000068e: AND
0000068f: PUSH2 0x1b14
00000692: JUMP
00000693: JUMPDEST
00000694: CALLVALUE
00000695: DUP1
00000696: ISZERO
00000697: PUSH2 0x069f
0000069a: JUMPI
0000069b: PUSH1 0x00
0000069d: DUP1
0000069e: REVERT
0000069f: JUMPDEST
000006a0: POP
000006a1: PUSH2 0x0537
000006a4: PUSH2 0x1bbb
000006a7: JUMP
000006a8: JUMPDEST
000006a9: CALLVALUE
000006aa: DUP1
000006ab: ISZERO
000006ac: PUSH2 0x06b4
000006af: JUMPI
000006b0: PUSH1 0x00
000006b2: DUP1
000006b3: REVERT
000006b4: JUMPDEST
000006b5: POP
000006b6: PUSH2 0x06bd
000006b9: PUSH2 0x1bdf
000006bc: JUMP
000006bd: JUMPDEST
000006be: PUSH1 0x40
000006c0: DUP1
000006c1: MLOAD
000006c2: PUSH1 0xff
000006c4: SWAP1
000006c5: SWAP3
000006c6: AND
000006c7: DUP3
000006c8: MSTORE
000006c9: MLOAD
000006ca: SWAP1
000006cb: DUP2
000006cc: SWAP1
000006cd: SUB
000006ce: PUSH1 0x20
000006d0: ADD
000006d1: SWAP1
000006d2: RETURN
000006d3: JUMPDEST
000006d4: CALLVALUE
000006d5: DUP1
000006d6: ISZERO
000006d7: PUSH2 0x06df
000006da: JUMPI
000006db: PUSH1 0x00
000006dd: DUP1
000006de: REVERT
000006df: JUMPDEST
000006e0: POP
000006e1: PUSH2 0x0520
000006e4: PUSH1 0x04
000006e6: DUP1
000006e7: CALLDATASIZE
000006e8: SUB
000006e9: PUSH2 0x0100
000006ec: DUP2
000006ed: LT
000006ee: ISZERO
000006ef: PUSH2 0x06f7
000006f2: JUMPI
000006f3: PUSH1 0x00
000006f5: DUP1
000006f6: REVERT
000006f7: JUMPDEST
000006f8: DUP2
000006f9: ADD
000006fa: SWAP1
000006fb: PUSH1 0x20
000006fd: DUP2
000006fe: ADD
000006ff: DUP2
00000700: CALLDATALOAD
00000701: PUSH1 0x01
00000703: PUSH1 0x20
00000705: SHL
00000706: DUP2
00000707: GT
00000708: ISZERO
00000709: PUSH2 0x0711
0000070c: JUMPI
0000070d: PUSH1 0x00
0000070f: DUP1
00000710: REVERT
00000711: JUMPDEST
00000712: DUP3
00000713: ADD
00000714: DUP4
00000715: PUSH1 0x20
00000717: DUP3
00000718: ADD
00000719: GT
0000071a: ISZERO
0000071b: PUSH2 0x0723
0000071e: JUMPI
0000071f: PUSH1 0x00
00000721: DUP1
00000722: REVERT
00000723: JUMPDEST
00000724: DUP1
00000725: CALLDATALOAD
00000726: SWAP1
00000727: PUSH1 0x20
00000729: ADD
0000072a: SWAP2
0000072b: DUP5
0000072c: PUSH1 0x01
0000072e: DUP4
0000072f: MUL
00000730: DUP5
00000731: ADD
00000732: GT
00000733: PUSH1 0x01
00000735: PUSH1 0x20
00000737: SHL
00000738: DUP4
00000739: GT
0000073a: OR
0000073b: ISZERO
0000073c: PUSH2 0x0744
0000073f: JUMPI
00000740: PUSH1 0x00
00000742: DUP1
00000743: REVERT
00000744: JUMPDEST
00000745: SWAP2
00000746: SWAP1
00000747: DUP1
00000748: DUP1
00000749: PUSH1 0x1f
0000074b: ADD
0000074c: PUSH1 0x20
0000074e: DUP1
0000074f: SWAP2
00000750: DIV
00000751: MUL
00000752: PUSH1 0x20
00000754: ADD
00000755: PUSH1 0x40
00000757: MLOAD
00000758: SWAP1
00000759: DUP2
0000075a: ADD
0000075b: PUSH1 0x40
0000075d: MSTORE
0000075e: DUP1
0000075f: SWAP4
00000760: SWAP3
00000761: SWAP2
00000762: SWAP1
00000763: DUP2
00000764: DUP2
00000765: MSTORE
00000766: PUSH1 0x20
00000768: ADD
00000769: DUP4
0000076a: DUP4
0000076b: DUP1
0000076c: DUP3
0000076d: DUP5
0000076e: CALLDATACOPY
0000076f: PUSH1 0x00
00000771: SWAP3
00000772: ADD
00000773: SWAP2
00000774: SWAP1
00000775: SWAP2
00000776: MSTORE
00000777: POP
00000778: SWAP3
00000779: SWAP6
0000077a: SWAP5
0000077b: SWAP4
0000077c: PUSH1 0x20
0000077e: DUP2
0000077f: ADD
00000780: SWAP4
00000781: POP
00000782: CALLDATALOAD
00000783: SWAP2
00000784: POP
00000785: POP
00000786: PUSH1 0x01
00000788: PUSH1 0x20
0000078a: SHL
0000078b: DUP2
0000078c: GT
0000078d: ISZERO
0000078e: PUSH2 0x0796
00000791: JUMPI
00000792: PUSH1 0x00
00000794: DUP1
00000795: REVERT
00000796: JUMPDEST
00000797: DUP3
00000798: ADD
00000799: DUP4
0000079a: PUSH1 0x20
0000079c: DUP3
0000079d: ADD
0000079e: GT
0000079f: ISZERO
000007a0: PUSH2 0x07a8
000007a3: JUMPI
000007a4: PUSH1 0x00
000007a6: DUP1
000007a7: REVERT
000007a8: JUMPDEST
000007a9: DUP1
000007aa: CALLDATALOAD
000007ab: SWAP1
000007ac: PUSH1 0x20
000007ae: ADD
000007af: SWAP2
000007b0: DUP5
000007b1: PUSH1 0x01
000007b3: DUP4
000007b4: MUL
000007b5: DUP5
000007b6: ADD
000007b7: GT
000007b8: PUSH1 0x01
000007ba: PUSH1 0x20
000007bc: SHL
000007bd: DUP4
000007be: GT
000007bf: OR
000007c0: ISZERO
000007c1: PUSH2 0x07c9
000007c4: JUMPI
000007c5: PUSH1 0x00
000007c7: DUP1
000007c8: REVERT
000007c9: JUMPDEST
000007ca: SWAP2
000007cb: SWAP1
000007cc: DUP1
000007cd: DUP1
000007ce: PUSH1 0x1f
000007d0: ADD
000007d1: PUSH1 0x20
000007d3: DUP1
000007d4: SWAP2
000007d5: DIV
000007d6: MUL
000007d7: PUSH1 0x20
000007d9: ADD
000007da: PUSH1 0x40
000007dc: MLOAD
000007dd: SWAP1
000007de: DUP2
000007df: ADD
000007e0: PUSH1 0x40
000007e2: MSTORE
000007e3: DUP1
000007e4: SWAP4
000007e5: SWAP3
000007e6: SWAP2
000007e7: SWAP1
000007e8: DUP2
000007e9: DUP2
000007ea: MSTORE
000007eb: PUSH1 0x20
000007ed: ADD
000007ee: DUP4
000007ef: DUP4
000007f0: DUP1
000007f1: DUP3
000007f2: DUP5
000007f3: CALLDATACOPY
000007f4: PUSH1 0x00
000007f6: SWAP3
000007f7: ADD
000007f8: SWAP2
000007f9: SWAP1
000007fa: SWAP2
000007fb: MSTORE
000007fc: POP
000007fd: SWAP3
000007fe: SWAP6
000007ff: SWAP5
00000800: SWAP4
00000801: PUSH1 0x20
00000803: DUP2
00000804: ADD
00000805: SWAP4
00000806: POP
00000807: CALLDATALOAD
00000808: SWAP2
00000809: POP
0000080a: POP
0000080b: PUSH1 0x01
0000080d: PUSH1 0x20
0000080f: SHL
00000810: DUP2
00000811: GT
00000812: ISZERO
00000813: PUSH2 0x081b
00000816: JUMPI
00000817: PUSH1 0x00
00000819: DUP1
0000081a: REVERT
0000081b: JUMPDEST
0000081c: DUP3
0000081d: ADD
0000081e: DUP4
0000081f: PUSH1 0x20
00000821: DUP3
00000822: ADD
00000823: GT
00000824: ISZERO
00000825: PUSH2 0x082d
00000828: JUMPI
00000829: PUSH1 0x00
0000082b: DUP1
0000082c: REVERT
0000082d: JUMPDEST
0000082e: DUP1
0000082f: CALLDATALOAD
00000830: SWAP1
00000831: PUSH1 0x20
00000833: ADD
00000834: SWAP2
00000835: DUP5
00000836: PUSH1 0x01
00000838: DUP4
00000839: MUL
0000083a: DUP5
0000083b: ADD
0000083c: GT
0000083d: PUSH1 0x01
0000083f: PUSH1 0x20
00000841: SHL
00000842: DUP4
00000843: GT
00000844: OR
00000845: ISZERO
00000846: PUSH2 0x084e
00000849: JUMPI
0000084a: PUSH1 0x00
0000084c: DUP1
0000084d: REVERT
0000084e: JUMPDEST
0000084f: SWAP2
00000850: SWAP1
00000851: DUP1
00000852: DUP1
00000853: PUSH1 0x1f
00000855: ADD
00000856: PUSH1 0x20
00000858: DUP1
00000859: SWAP2
0000085a: DIV
0000085b: MUL
0000085c: PUSH1 0x20
0000085e: ADD
0000085f: PUSH1 0x40
00000861: MLOAD
00000862: SWAP1
00000863: DUP2
00000864: ADD
00000865: PUSH1 0x40
00000867: MSTORE
00000868: DUP1
00000869: SWAP4
0000086a: SWAP3
0000086b: SWAP2
0000086c: SWAP1
0000086d: DUP2
0000086e: DUP2
0000086f: MSTORE
00000870: PUSH1 0x20
00000872: ADD
00000873: DUP4
00000874: DUP4
00000875: DUP1
00000876: DUP3
00000877: DUP5
00000878: CALLDATACOPY
00000879: PUSH1 0x00
0000087b: SWAP3
0000087c: ADD
0000087d: SWAP2
0000087e: SWAP1
0000087f: SWAP2
00000880: MSTORE
00000881: POP
00000882: SWAP3
00000883: SWAP6
00000884: POP
00000885: POP
00000886: POP
00000887: DUP2
00000888: CALLDATALOAD
00000889: PUSH1 0xff
0000088b: AND
0000088c: SWAP3
0000088d: POP
0000088e: POP
0000088f: PUSH1 0x20
00000891: DUP2
00000892: ADD
00000893: CALLDATALOAD
00000894: PUSH1 0x01
00000896: PUSH1 0x01
00000898: PUSH1 0xa0
0000089a: SHL
0000089b: SUB
0000089c: SWAP1
0000089d: DUP2
0000089e: AND
0000089f: SWAP2
000008a0: PUSH1 0x40
000008a2: DUP2
000008a3: ADD
000008a4: CALLDATALOAD
000008a5: DUP3
000008a6: AND
000008a7: SWAP2
000008a8: PUSH1 0x60
000008aa: DUP3
000008ab: ADD
000008ac: CALLDATALOAD
000008ad: DUP2
000008ae: AND
000008af: SWAP2
000008b0: PUSH1 0x80
000008b2: ADD
000008b3: CALLDATALOAD
000008b4: AND
000008b5: PUSH2 0x1be8
000008b8: JUMP
000008b9: JUMPDEST
000008ba: CALLVALUE
000008bb: DUP1
000008bc: ISZERO
000008bd: PUSH2 0x08c5
000008c0: JUMPI
000008c1: PUSH1 0x00
000008c3: DUP1
000008c4: REVERT
000008c5: JUMPDEST
000008c6: POP
000008c7: PUSH2 0x08ce
000008ca: PUSH2 0x1df4
000008cd: JUMP
000008ce: JUMPDEST
000008cf: PUSH1 0x40
000008d1: DUP1
000008d2: MLOAD
000008d3: PUSH1 0x01
000008d5: PUSH1 0x01
000008d7: PUSH1 0xa0
000008d9: SHL
000008da: SUB
000008db: SWAP1
000008dc: SWAP3
000008dd: AND
000008de: DUP3
000008df: MSTORE
000008e0: MLOAD
000008e1: SWAP1
000008e2: DUP2
000008e3: SWAP1
000008e4: SUB
000008e5: PUSH1 0x20
000008e7: ADD
000008e8: SWAP1
000008e9: RETURN
000008ea: JUMPDEST
000008eb: CALLVALUE
000008ec: DUP1
000008ed: ISZERO
000008ee: PUSH2 0x08f6
000008f1: JUMPI
000008f2: PUSH1 0x00
000008f4: DUP1
000008f5: REVERT
000008f6: JUMPDEST
000008f7: POP
000008f8: PUSH2 0x0537
000008fb: PUSH2 0x1e03
000008fe: JUMP
000008ff: JUMPDEST
00000900: CALLVALUE
00000901: DUP1
00000902: ISZERO
00000903: PUSH2 0x090b
00000906: JUMPI
00000907: PUSH1 0x00
00000909: DUP1
0000090a: REVERT
0000090b: JUMPDEST
0000090c: POP
0000090d: PUSH2 0x08ce
00000910: PUSH2 0x1e09
00000913: JUMP
00000914: JUMPDEST
00000915: CALLVALUE
00000916: DUP1
00000917: ISZERO
00000918: PUSH2 0x0920
0000091b: JUMPI
0000091c: PUSH1 0x00
0000091e: DUP1
0000091f: REVERT
00000920: JUMPDEST
00000921: POP
00000922: PUSH2 0x04e2
00000925: PUSH1 0x04
00000927: DUP1
00000928: CALLDATASIZE
00000929: SUB
0000092a: PUSH1 0x40
0000092c: DUP2
0000092d: LT
0000092e: ISZERO
0000092f: PUSH2 0x0937
00000932: JUMPI
00000933: PUSH1 0x00
00000935: DUP1
00000936: REVERT
00000937: JUMPDEST
00000938: POP
00000939: PUSH1 0x01
0000093b: PUSH1 0x01
0000093d: PUSH1 0xa0
0000093f: SHL
00000940: SUB
00000941: DUP2
00000942: CALLDATALOAD
00000943: AND
00000944: SWAP1
00000945: PUSH1 0x20
00000947: ADD
00000948: CALLDATALOAD
00000949: PUSH2 0x1e18
0000094c: JUMP
0000094d: JUMPDEST
0000094e: CALLVALUE
0000094f: DUP1
00000950: ISZERO
00000951: PUSH2 0x0959
00000954: JUMPI
00000955: PUSH1 0x00
00000957: DUP1
00000958: REVERT
00000959: JUMPDEST
0000095a: POP
0000095b: PUSH2 0x0537
0000095e: PUSH2 0x1f21
00000961: JUMP
00000962: JUMPDEST
00000963: CALLVALUE
00000964: DUP1
00000965: ISZERO
00000966: PUSH2 0x096e
00000969: JUMPI
0000096a: PUSH1 0x00
0000096c: DUP1
0000096d: REVERT
0000096e: JUMPDEST
0000096f: POP
00000970: PUSH2 0x0537
00000973: PUSH2 0x1f46
00000976: JUMP
00000977: JUMPDEST
00000978: CALLVALUE
00000979: DUP1
0000097a: ISZERO
0000097b: PUSH2 0x0983
0000097e: JUMPI
0000097f: PUSH1 0x00
00000981: DUP1
00000982: REVERT
00000983: JUMPDEST
00000984: POP
00000985: PUSH2 0x0520
00000988: PUSH2 0x1f52
0000098b: JUMP
0000098c: JUMPDEST
0000098d: CALLVALUE
0000098e: DUP1
0000098f: ISZERO
00000990: PUSH2 0x0998
00000993: JUMPI
00000994: PUSH1 0x00
00000996: DUP1
00000997: REVERT
00000998: JUMPDEST
00000999: POP
0000099a: PUSH2 0x04e2
0000099d: PUSH1 0x04
0000099f: DUP1
000009a0: CALLDATASIZE
000009a1: SUB
000009a2: PUSH1 0x40
000009a4: DUP2
000009a5: LT
000009a6: ISZERO
000009a7: PUSH2 0x09af
000009aa: JUMPI
000009ab: PUSH1 0x00
000009ad: DUP1
000009ae: REVERT
000009af: JUMPDEST
000009b0: POP
000009b1: PUSH1 0x01
000009b3: PUSH1 0x01
000009b5: PUSH1 0xa0
000009b7: SHL
000009b8: SUB
000009b9: DUP2
000009ba: CALLDATALOAD
000009bb: AND
000009bc: SWAP1
000009bd: PUSH1 0x20
000009bf: ADD
000009c0: CALLDATALOAD
000009c1: PUSH2 0x1fd3
000009c4: JUMP
000009c5: JUMPDEST
000009c6: CALLVALUE
000009c7: DUP1
000009c8: ISZERO
000009c9: PUSH2 0x09d1
000009cc: JUMPI
000009cd: PUSH1 0x00
000009cf: DUP1
000009d0: REVERT
000009d1: JUMPDEST
000009d2: POP
000009d3: PUSH2 0x0520
000009d6: PUSH1 0x04
000009d8: DUP1
000009d9: CALLDATASIZE
000009da: SUB
000009db: PUSH1 0x20
000009dd: DUP2
000009de: LT
000009df: ISZERO
000009e0: PUSH2 0x09e8
000009e3: JUMPI
000009e4: PUSH1 0x00
000009e6: DUP1
000009e7: REVERT
000009e8: JUMPDEST
000009e9: POP
000009ea: CALLDATALOAD
000009eb: PUSH2 0x22d4
000009ee: JUMP
000009ef: JUMPDEST
000009f0: CALLVALUE
000009f1: DUP1
000009f2: ISZERO
000009f3: PUSH2 0x09fb
000009f6: JUMPI
000009f7: PUSH1 0x00
000009f9: DUP1
000009fa: REVERT
000009fb: JUMPDEST
000009fc: POP
000009fd: PUSH2 0x04e2
00000a00: PUSH1 0x04
00000a02: DUP1
00000a03: CALLDATASIZE
00000a04: SUB
00000a05: PUSH1 0x40
00000a07: DUP2
00000a08: LT
00000a09: ISZERO
00000a0a: PUSH2 0x0a12
00000a0d: JUMPI
00000a0e: PUSH1 0x00
00000a10: DUP1
00000a11: REVERT
00000a12: JUMPDEST
00000a13: POP
00000a14: PUSH1 0x01
00000a16: PUSH1 0x01
00000a18: PUSH1 0xa0
00000a1a: SHL
00000a1b: SUB
00000a1c: DUP2
00000a1d: CALLDATALOAD
00000a1e: AND
00000a1f: SWAP1
00000a20: PUSH1 0x20
00000a22: ADD
00000a23: CALLDATALOAD
00000a24: PUSH2 0x24dc
00000a27: JUMP
00000a28: JUMPDEST
00000a29: CALLVALUE
00000a2a: DUP1
00000a2b: ISZERO
00000a2c: PUSH2 0x0a34
00000a2f: JUMPI
00000a30: PUSH1 0x00
00000a32: DUP1
00000a33: REVERT
00000a34: JUMPDEST
00000a35: POP
00000a36: PUSH2 0x0434
00000a39: PUSH2 0x25e6
00000a3c: JUMP
00000a3d: JUMPDEST
00000a3e: CALLVALUE
00000a3f: DUP1
00000a40: ISZERO
00000a41: PUSH2 0x0a49
00000a44: JUMPI
00000a45: PUSH1 0x00
00000a47: DUP1
00000a48: REVERT
00000a49: JUMPDEST
00000a4a: POP
00000a4b: PUSH2 0x0520
00000a4e: PUSH1 0x04
00000a50: DUP1
00000a51: CALLDATASIZE
00000a52: SUB
00000a53: PUSH1 0x20
00000a55: DUP2
00000a56: LT
00000a57: ISZERO
00000a58: PUSH2 0x0a60
00000a5b: JUMPI
00000a5c: PUSH1 0x00
00000a5e: DUP1
00000a5f: REVERT
00000a60: JUMPDEST
00000a61: POP
00000a62: CALLDATALOAD
00000a63: PUSH1 0x01
00000a65: PUSH1 0x01
00000a67: PUSH1 0xa0
00000a69: SHL
00000a6a: SUB
00000a6b: AND
00000a6c: PUSH2 0x2601
00000a6f: JUMP
00000a70: JUMPDEST
00000a71: CALLVALUE
00000a72: DUP1
00000a73: ISZERO
00000a74: PUSH2 0x0a7c
00000a77: JUMPI
00000a78: PUSH1 0x00
00000a7a: DUP1
00000a7b: REVERT
00000a7c: JUMPDEST
00000a7d: POP
00000a7e: PUSH2 0x08ce
00000a81: PUSH2 0x26e3
00000a84: JUMP
00000a85: JUMPDEST
00000a86: CALLVALUE
00000a87: DUP1
00000a88: ISZERO
00000a89: PUSH2 0x0a91
00000a8c: JUMPI
00000a8d: PUSH1 0x00
00000a8f: DUP1
00000a90: REVERT
00000a91: JUMPDEST
00000a92: POP
00000a93: PUSH2 0x0520
00000a96: PUSH1 0x04
00000a98: DUP1
00000a99: CALLDATASIZE
00000a9a: SUB
00000a9b: PUSH1 0xa0
00000a9d: DUP2
00000a9e: LT
00000a9f: ISZERO
00000aa0: PUSH2 0x0aa8
00000aa3: JUMPI
00000aa4: PUSH1 0x00
00000aa6: DUP1
00000aa7: REVERT
00000aa8: JUMPDEST
00000aa9: POP
00000aaa: PUSH1 0x01
00000aac: PUSH1 0x01
00000aae: PUSH1 0xa0
00000ab0: SHL
00000ab1: SUB
00000ab2: DUP2
00000ab3: CALLDATALOAD
00000ab4: AND
00000ab5: SWAP1
00000ab6: PUSH1 0x20
00000ab8: DUP2
00000ab9: ADD
00000aba: CALLDATALOAD
00000abb: SWAP1
00000abc: PUSH1 0xff
00000abe: PUSH1 0x40
00000ac0: DUP3
00000ac1: ADD
00000ac2: CALLDATALOAD
00000ac3: AND
00000ac4: SWAP1
00000ac5: PUSH1 0x60
00000ac7: DUP2
00000ac8: ADD
00000ac9: CALLDATALOAD
00000aca: SWAP1
00000acb: PUSH1 0x80
00000acd: ADD
00000ace: CALLDATALOAD
00000acf: PUSH2 0x2708
00000ad2: JUMP
00000ad3: JUMPDEST
00000ad4: CALLVALUE
00000ad5: DUP1
00000ad6: ISZERO
00000ad7: PUSH2 0x0adf
00000ada: JUMPI
00000adb: PUSH1 0x00
00000add: DUP1
00000ade: REVERT
00000adf: JUMPDEST
00000ae0: POP
00000ae1: PUSH2 0x04e2
00000ae4: PUSH2 0x276e
00000ae7: JUMP
00000ae8: JUMPDEST
00000ae9: CALLVALUE
00000aea: DUP1
00000aeb: ISZERO
00000aec: PUSH2 0x0af4
00000aef: JUMPI
00000af0: PUSH1 0x00
00000af2: DUP1
00000af3: REVERT
00000af4: JUMPDEST
00000af5: POP
00000af6: PUSH2 0x0537
00000af9: PUSH1 0x04
00000afb: DUP1
00000afc: CALLDATASIZE
00000afd: SUB
00000afe: PUSH1 0x20
00000b00: DUP2
00000b01: LT
00000b02: ISZERO
00000b03: PUSH2 0x0b0b
00000b06: JUMPI
00000b07: PUSH1 0x00
00000b09: DUP1
00000b0a: REVERT
00000b0b: JUMPDEST
00000b0c: POP
00000b0d: CALLDATALOAD
00000b0e: PUSH1 0x01
00000b10: PUSH1 0x01
00000b12: PUSH1 0xa0
00000b14: SHL
00000b15: SUB
00000b16: AND
00000b17: PUSH2 0x277e
00000b1a: JUMP
00000b1b: JUMPDEST
00000b1c: CALLVALUE
00000b1d: DUP1
00000b1e: ISZERO
00000b1f: PUSH2 0x0b27
00000b22: JUMPI
00000b23: PUSH1 0x00
00000b25: DUP1
00000b26: REVERT
00000b27: JUMPDEST
00000b28: POP
00000b29: PUSH2 0x08ce
00000b2c: PUSH2 0x2799
00000b2f: JUMP
00000b30: JUMPDEST
00000b31: CALLVALUE
00000b32: DUP1
00000b33: ISZERO
00000b34: PUSH2 0x0b3c
00000b37: JUMPI
00000b38: PUSH1 0x00
00000b3a: DUP1
00000b3b: REVERT
00000b3c: JUMPDEST
00000b3d: POP
00000b3e: PUSH2 0x08ce
00000b41: PUSH2 0x27b1
00000b44: JUMP
00000b45: JUMPDEST
00000b46: CALLVALUE
00000b47: DUP1
00000b48: ISZERO
00000b49: PUSH2 0x0b51
00000b4c: JUMPI
00000b4d: PUSH1 0x00
00000b4f: DUP1
00000b50: REVERT
00000b51: JUMPDEST
00000b52: POP
00000b53: PUSH2 0x0537
00000b56: PUSH1 0x04
00000b58: DUP1
00000b59: CALLDATASIZE
00000b5a: SUB
00000b5b: PUSH1 0x20
00000b5d: DUP2
00000b5e: LT
00000b5f: ISZERO
00000b60: PUSH2 0x0b68
00000b63: JUMPI
00000b64: PUSH1 0x00
00000b66: DUP1
00000b67: REVERT
00000b68: JUMPDEST
00000b69: POP
00000b6a: CALLDATALOAD
00000b6b: PUSH1 0x01
00000b6d: PUSH1 0x01
00000b6f: PUSH1 0xa0
00000b71: SHL
00000b72: SUB
00000b73: AND
00000b74: PUSH2 0x27d6
00000b77: JUMP
00000b78: JUMPDEST
00000b79: CALLVALUE
00000b7a: DUP1
00000b7b: ISZERO
00000b7c: PUSH2 0x0b84
00000b7f: JUMPI
00000b80: PUSH1 0x00
00000b82: DUP1
00000b83: REVERT
00000b84: JUMPDEST
00000b85: POP
00000b86: PUSH2 0x0537
00000b89: PUSH2 0x27f1
00000b8c: JUMP
00000b8d: JUMPDEST
00000b8e: CALLVALUE
00000b8f: DUP1
00000b90: ISZERO
00000b91: PUSH2 0x0b99
00000b94: JUMPI
00000b95: PUSH1 0x00
00000b97: DUP1
00000b98: REVERT
00000b99: JUMPDEST
00000b9a: POP
00000b9b: PUSH2 0x0520
00000b9e: PUSH1 0x04
00000ba0: DUP1
00000ba1: CALLDATASIZE
00000ba2: SUB
00000ba3: PUSH1 0x20
00000ba5: DUP2
00000ba6: LT
00000ba7: ISZERO
00000ba8: PUSH2 0x0bb0
00000bab: JUMPI
00000bac: PUSH1 0x00
00000bae: DUP1
00000baf: REVERT
00000bb0: JUMPDEST
00000bb1: POP
00000bb2: CALLDATALOAD
00000bb3: PUSH2 0x2815
00000bb6: JUMP
00000bb7: JUMPDEST
00000bb8: CALLVALUE
00000bb9: DUP1
00000bba: ISZERO
00000bbb: PUSH2 0x0bc3
00000bbe: JUMPI
00000bbf: PUSH1 0x00
00000bc1: DUP1
00000bc2: REVERT
00000bc3: JUMPDEST
00000bc4: POP
00000bc5: PUSH2 0x0520
00000bc8: PUSH2 0x2a46
00000bcb: JUMP
00000bcc: JUMPDEST
00000bcd: CALLVALUE
00000bce: DUP1
00000bcf: ISZERO
00000bd0: PUSH2 0x0bd8
00000bd3: JUMPI
00000bd4: PUSH1 0x00
00000bd6: DUP1
00000bd7: REVERT
00000bd8: JUMPDEST
00000bd9: POP
00000bda: PUSH2 0x0537
00000bdd: PUSH1 0x04
00000bdf: DUP1
00000be0: CALLDATASIZE
00000be1: SUB
00000be2: PUSH1 0x20
00000be4: DUP2
00000be5: LT
00000be6: ISZERO
00000be7: PUSH2 0x0bef
00000bea: JUMPI
00000beb: PUSH1 0x00
00000bed: DUP1
00000bee: REVERT
00000bef: JUMPDEST
00000bf0: POP
00000bf1: CALLDATALOAD
00000bf2: PUSH1 0x01
00000bf4: PUSH1 0x01
00000bf6: PUSH1 0xa0
00000bf8: SHL
00000bf9: SUB
00000bfa: AND
00000bfb: PUSH2 0x2acd
00000bfe: JUMP
00000bff: JUMPDEST
00000c00: CALLVALUE
00000c01: DUP1
00000c02: ISZERO
00000c03: PUSH2 0x0c0b
00000c06: JUMPI
00000c07: PUSH1 0x00
00000c09: DUP1
00000c0a: REVERT
00000c0b: JUMPDEST
00000c0c: POP
00000c0d: PUSH2 0x08ce
00000c10: PUSH2 0x2ae8
00000c13: JUMP
00000c14: JUMPDEST
00000c15: CALLVALUE
00000c16: DUP1
00000c17: ISZERO
00000c18: PUSH2 0x0c20
00000c1b: JUMPI
00000c1c: PUSH1 0x00
00000c1e: DUP1
00000c1f: REVERT
00000c20: JUMPDEST
00000c21: POP
00000c22: PUSH2 0x0434
00000c25: PUSH2 0x2af7
00000c28: JUMP
00000c29: JUMPDEST
00000c2a: CALLVALUE
00000c2b: DUP1
00000c2c: ISZERO
00000c2d: PUSH2 0x0c35
00000c30: JUMPI
00000c31: PUSH1 0x00
00000c33: DUP1
00000c34: REVERT
00000c35: JUMPDEST
00000c36: POP
00000c37: PUSH2 0x0520
00000c3a: PUSH1 0x04
00000c3c: DUP1
00000c3d: CALLDATASIZE
00000c3e: SUB
00000c3f: PUSH1 0x20
00000c41: DUP2
00000c42: LT
00000c43: ISZERO
00000c44: PUSH2 0x0c4c
00000c47: JUMPI
00000c48: PUSH1 0x00
00000c4a: DUP1
00000c4b: REVERT
00000c4c: JUMPDEST
00000c4d: POP
00000c4e: CALLDATALOAD
00000c4f: PUSH1 0x01
00000c51: PUSH1 0x01
00000c53: PUSH1 0xa0
00000c55: SHL
00000c56: SUB
00000c57: AND
00000c58: PUSH2 0x2b52
00000c5b: JUMP
00000c5c: JUMPDEST
00000c5d: CALLVALUE
00000c5e: DUP1
00000c5f: ISZERO
00000c60: PUSH2 0x0c68
00000c63: JUMPI
00000c64: PUSH1 0x00
00000c66: DUP1
00000c67: REVERT
00000c68: JUMPDEST
00000c69: POP
00000c6a: PUSH2 0x08ce
00000c6d: PUSH2 0x2ca3
00000c70: JUMP
00000c71: JUMPDEST
00000c72: CALLVALUE
00000c73: DUP1
00000c74: ISZERO
00000c75: PUSH2 0x0c7d
00000c78: JUMPI
00000c79: PUSH1 0x00
00000c7b: DUP1
00000c7c: REVERT
00000c7d: JUMPDEST
00000c7e: POP
00000c7f: PUSH2 0x04e2
00000c82: PUSH1 0x04
00000c84: DUP1
00000c85: CALLDATASIZE
00000c86: SUB
00000c87: PUSH1 0x20
00000c89: DUP2
00000c8a: LT
00000c8b: ISZERO
00000c8c: PUSH2 0x0c94
00000c8f: JUMPI
00000c90: PUSH1 0x00
00000c92: DUP1
00000c93: REVERT
00000c94: JUMPDEST
00000c95: POP
00000c96: CALLDATALOAD
00000c97: PUSH2 0x2cb2
00000c9a: JUMP
00000c9b: JUMPDEST
00000c9c: CALLVALUE
00000c9d: DUP1
00000c9e: ISZERO
00000c9f: PUSH2 0x0ca7
00000ca2: JUMPI
00000ca3: PUSH1 0x00
00000ca5: DUP1
00000ca6: REVERT
00000ca7: JUMPDEST
00000ca8: POP
00000ca9: PUSH2 0x0520
00000cac: PUSH1 0x04
00000cae: DUP1
00000caf: CALLDATASIZE
00000cb0: SUB
00000cb1: PUSH1 0x20
00000cb3: DUP2
00000cb4: LT
00000cb5: ISZERO
00000cb6: PUSH2 0x0cbe
00000cb9: JUMPI
00000cba: PUSH1 0x00
00000cbc: DUP1
00000cbd: REVERT
00000cbe: JUMPDEST
00000cbf: POP
00000cc0: CALLDATALOAD
00000cc1: PUSH2 0x2d7d
00000cc4: JUMP
00000cc5: JUMPDEST
00000cc6: CALLVALUE
00000cc7: DUP1
00000cc8: ISZERO
00000cc9: PUSH2 0x0cd1
00000ccc: JUMPI
00000ccd: PUSH1 0x00
00000ccf: DUP1
00000cd0: REVERT
00000cd1: JUMPDEST
00000cd2: POP
00000cd3: PUSH2 0x0537
00000cd6: PUSH2 0x2eb1
00000cd9: JUMP
00000cda: JUMPDEST
00000cdb: CALLVALUE
00000cdc: DUP1
00000cdd: ISZERO
00000cde: PUSH2 0x0ce6
00000ce1: JUMPI
00000ce2: PUSH1 0x00
00000ce4: DUP1
00000ce5: REVERT
00000ce6: JUMPDEST
00000ce7: POP
00000ce8: PUSH2 0x04e2
00000ceb: PUSH1 0x04
00000ced: DUP1
00000cee: CALLDATASIZE
00000cef: SUB
00000cf0: PUSH1 0x40
00000cf2: DUP2
00000cf3: LT
00000cf4: ISZERO
00000cf5: PUSH2 0x0cfd
00000cf8: JUMPI
00000cf9: PUSH1 0x00
00000cfb: DUP1
00000cfc: REVERT
00000cfd: JUMPDEST
00000cfe: POP
00000cff: PUSH1 0x01
00000d01: PUSH1 0x01
00000d03: PUSH1 0xa0
00000d05: SHL
00000d06: SUB
00000d07: DUP2
00000d08: CALLDATALOAD
00000d09: AND
00000d0a: SWAP1
00000d0b: PUSH1 0x20
00000d0d: ADD
00000d0e: CALLDATALOAD
00000d0f: PUSH2 0x2ed5
00000d12: JUMP
00000d13: JUMPDEST
00000d14: CALLVALUE
00000d15: DUP1
00000d16: ISZERO
00000d17: PUSH2 0x0d1f
00000d1a: JUMPI
00000d1b: PUSH1 0x00
00000d1d: DUP1
00000d1e: REVERT
00000d1f: JUMPDEST
00000d20: POP
00000d21: PUSH2 0x04e2
00000d24: PUSH1 0x04
00000d26: DUP1
00000d27: CALLDATASIZE
00000d28: SUB
00000d29: PUSH1 0x40
00000d2b: DUP2
00000d2c: LT
00000d2d: ISZERO
00000d2e: PUSH2 0x0d36
00000d31: JUMPI
00000d32: PUSH1 0x00
00000d34: DUP1
00000d35: REVERT
00000d36: JUMPDEST
00000d37: POP
00000d38: PUSH1 0x01
00000d3a: PUSH1 0x01
00000d3c: PUSH1 0xa0
00000d3e: SHL
00000d3f: SUB
00000d40: DUP2
00000d41: CALLDATALOAD
00000d42: AND
00000d43: SWAP1
00000d44: PUSH1 0x20
00000d46: ADD
00000d47: CALLDATALOAD
00000d48: PUSH2 0x2fde
00000d4b: JUMP
00000d4c: JUMPDEST
00000d4d: CALLVALUE
00000d4e: DUP1
00000d4f: ISZERO
00000d50: PUSH2 0x0d58
00000d53: JUMPI
00000d54: PUSH1 0x00
00000d56: DUP1
00000d57: REVERT
00000d58: JUMPDEST
00000d59: POP
00000d5a: PUSH2 0x0520
00000d5d: PUSH1 0x04
00000d5f: DUP1
00000d60: CALLDATASIZE
00000d61: SUB
00000d62: PUSH1 0x20
00000d64: DUP2
00000d65: LT
00000d66: ISZERO
00000d67: PUSH2 0x0d6f
00000d6a: JUMPI
00000d6b: PUSH1 0x00
00000d6d: DUP1
00000d6e: REVERT
00000d6f: JUMPDEST
00000d70: POP
00000d71: CALLDATALOAD
00000d72: PUSH1 0x01
00000d74: PUSH1 0x01
00000d76: PUSH1 0xa0
00000d78: SHL
00000d79: SUB
00000d7a: AND
00000d7b: PUSH2 0x30e7
00000d7e: JUMP
00000d7f: JUMPDEST
00000d80: CALLVALUE
00000d81: DUP1
00000d82: ISZERO
00000d83: PUSH2 0x0d8b
00000d86: JUMPI
00000d87: PUSH1 0x00
00000d89: DUP1
00000d8a: REVERT
00000d8b: JUMPDEST
00000d8c: POP
00000d8d: PUSH2 0x04e2
00000d90: PUSH1 0x04
00000d92: DUP1
00000d93: CALLDATASIZE
00000d94: SUB
00000d95: PUSH1 0x20
00000d97: DUP2
00000d98: LT
00000d99: ISZERO
00000d9a: PUSH2 0x0da2
00000d9d: JUMPI
00000d9e: PUSH1 0x00
00000da0: DUP1
00000da1: REVERT
00000da2: JUMPDEST
00000da3: POP
00000da4: CALLDATALOAD
00000da5: PUSH1 0x01
00000da7: PUSH1 0x01
00000da9: PUSH1 0xa0
00000dab: SHL
00000dac: SUB
00000dad: AND
00000dae: PUSH2 0x31c9
00000db1: JUMP
00000db2: JUMPDEST
00000db3: CALLVALUE
00000db4: DUP1
00000db5: ISZERO
00000db6: PUSH2 0x0dbe
00000db9: JUMPI
00000dba: PUSH1 0x00
00000dbc: DUP1
00000dbd: REVERT
00000dbe: JUMPDEST
00000dbf: POP
00000dc0: PUSH2 0x0520
00000dc3: PUSH1 0x04
00000dc5: DUP1
00000dc6: CALLDATASIZE
00000dc7: SUB
00000dc8: PUSH1 0x20
00000dca: DUP2
00000dcb: LT
00000dcc: ISZERO
00000dcd: PUSH2 0x0dd5
00000dd0: JUMPI
00000dd1: PUSH1 0x00
00000dd3: DUP1
00000dd4: REVERT
00000dd5: JUMPDEST
00000dd6: POP
00000dd7: CALLDATALOAD
00000dd8: PUSH1 0x01
00000dda: PUSH1 0x01
00000ddc: PUSH1 0xa0
00000dde: SHL
00000ddf: SUB
00000de0: AND
00000de1: PUSH2 0x31e7
00000de4: JUMP
00000de5: JUMPDEST
00000de6: CALLVALUE
00000de7: DUP1
00000de8: ISZERO
00000de9: PUSH2 0x0df1
00000dec: JUMPI
00000ded: PUSH1 0x00
00000def: DUP1
00000df0: REVERT
00000df1: JUMPDEST
00000df2: POP
00000df3: PUSH2 0x0520
00000df6: PUSH1 0x04
00000df8: DUP1
00000df9: CALLDATASIZE
00000dfa: SUB
00000dfb: PUSH1 0x20
00000dfd: DUP2
00000dfe: LT
00000dff: ISZERO
00000e00: PUSH2 0x0e08
00000e03: JUMPI
00000e04: PUSH1 0x00
00000e06: DUP1
00000e07: REVERT
00000e08: JUMPDEST
00000e09: POP
00000e0a: CALLDATALOAD
00000e0b: PUSH1 0x01
00000e0d: PUSH1 0x01
00000e0f: PUSH1 0xa0
00000e11: SHL
00000e12: SUB
00000e13: AND
00000e14: PUSH2 0x3338
00000e17: JUMP
00000e18: JUMPDEST
00000e19: CALLVALUE
00000e1a: DUP1
00000e1b: ISZERO
00000e1c: PUSH2 0x0e24
00000e1f: JUMPI
00000e20: PUSH1 0x00
00000e22: DUP1
00000e23: REVERT
00000e24: JUMPDEST
00000e25: POP
00000e26: PUSH2 0x0520
00000e29: PUSH1 0x04
00000e2b: DUP1
00000e2c: CALLDATASIZE
00000e2d: SUB
00000e2e: PUSH1 0x60
00000e30: DUP2
00000e31: LT
00000e32: ISZERO
00000e33: PUSH2 0x0e3b
00000e36: JUMPI
00000e37: PUSH1 0x00
00000e39: DUP1
00000e3a: REVERT
00000e3b: JUMPDEST
00000e3c: POP
00000e3d: PUSH1 0x01
00000e3f: PUSH1 0x01
00000e41: PUSH1 0xa0
00000e43: SHL
00000e44: SUB
00000e45: DUP2
00000e46: CALLDATALOAD
00000e47: DUP2
00000e48: AND
00000e49: SWAP2
00000e4a: PUSH1 0x20
00000e4c: DUP2
00000e4d: ADD
00000e4e: CALLDATALOAD
00000e4f: SWAP1
00000e50: SWAP2
00000e51: AND
00000e52: SWAP1
00000e53: PUSH1 0x40
00000e55: ADD
00000e56: CALLDATALOAD
00000e57: PUSH2 0x341a
00000e5a: JUMP
00000e5b: JUMPDEST
00000e5c: CALLVALUE
00000e5d: DUP1
00000e5e: ISZERO
00000e5f: PUSH2 0x0e67
00000e62: JUMPI
00000e63: PUSH1 0x00
00000e65: DUP1
00000e66: REVERT
00000e67: JUMPDEST
00000e68: POP
00000e69: PUSH2 0x08ce
00000e6c: PUSH2 0x347c
00000e6f: JUMP
00000e70: JUMPDEST
00000e71: CALLVALUE
00000e72: DUP1
00000e73: ISZERO
00000e74: PUSH2 0x0e7c
00000e77: JUMPI
00000e78: PUSH1 0x00
00000e7a: DUP1
00000e7b: REVERT
00000e7c: JUMPDEST
00000e7d: POP
00000e7e: PUSH2 0x0520
00000e81: PUSH1 0x04
00000e83: DUP1
00000e84: CALLDATASIZE
00000e85: SUB
00000e86: PUSH1 0x20
00000e88: DUP2
00000e89: LT
00000e8a: ISZERO
00000e8b: PUSH2 0x0e93
00000e8e: JUMPI
00000e8f: PUSH1 0x00
00000e91: DUP1
00000e92: REVERT
00000e93: JUMPDEST
00000e94: POP
00000e95: CALLDATALOAD
00000e96: PUSH2 0x34a1
00000e99: JUMP
00000e9a: JUMPDEST
00000e9b: CALLVALUE
00000e9c: DUP1
00000e9d: ISZERO
00000e9e: PUSH2 0x0ea6
00000ea1: JUMPI
00000ea2: PUSH1 0x00
00000ea4: DUP1
00000ea5: REVERT
00000ea6: JUMPDEST
00000ea7: POP
00000ea8: PUSH2 0x08ce
00000eab: PUSH2 0x359d
00000eae: JUMP
00000eaf: JUMPDEST
00000eb0: CALLVALUE
00000eb1: DUP1
00000eb2: ISZERO
00000eb3: PUSH2 0x0ebb
00000eb6: JUMPI
00000eb7: PUSH1 0x00
00000eb9: DUP1
00000eba: REVERT
00000ebb: JUMPDEST
00000ebc: POP
00000ebd: PUSH2 0x0520
00000ec0: PUSH1 0x04
00000ec2: DUP1
00000ec3: CALLDATASIZE
00000ec4: SUB
00000ec5: PUSH1 0xe0
00000ec7: DUP2
00000ec8: LT
00000ec9: ISZERO
00000eca: PUSH2 0x0ed2
00000ecd: JUMPI
00000ece: PUSH1 0x00
00000ed0: DUP1
00000ed1: REVERT
00000ed2: JUMPDEST
00000ed3: POP
00000ed4: PUSH1 0x01
00000ed6: PUSH1 0x01
00000ed8: PUSH1 0xa0
00000eda: SHL
00000edb: SUB
00000edc: DUP2
00000edd: CALLDATALOAD
00000ede: DUP2
00000edf: AND
00000ee0: SWAP2
00000ee1: PUSH1 0x20
00000ee3: DUP2
00000ee4: ADD
00000ee5: CALLDATALOAD
00000ee6: SWAP1
00000ee7: SWAP2
00000ee8: AND
00000ee9: SWAP1
00000eea: PUSH1 0x40
00000eec: DUP2
00000eed: ADD
00000eee: CALLDATALOAD
00000eef: SWAP1
00000ef0: PUSH1 0x60
00000ef2: DUP2
00000ef3: ADD
00000ef4: CALLDATALOAD
00000ef5: SWAP1
00000ef6: PUSH1 0xff
00000ef8: PUSH1 0x80
00000efa: DUP3
00000efb: ADD
00000efc: CALLDATALOAD
00000efd: AND
00000efe: SWAP1
00000eff: PUSH1 0xa0
00000f01: DUP2
00000f02: ADD
00000f03: CALLDATALOAD
00000f04: SWAP1
00000f05: PUSH1 0xc0
00000f07: ADD
00000f08: CALLDATALOAD
00000f09: PUSH2 0x35ac
00000f0c: JUMP
00000f0d: JUMPDEST
00000f0e: CALLVALUE
00000f0f: DUP1
00000f10: ISZERO
00000f11: PUSH2 0x0f19
00000f14: JUMPI
00000f15: PUSH1 0x00
00000f17: DUP1
00000f18: REVERT
00000f19: JUMPDEST
00000f1a: POP
00000f1b: PUSH2 0x0520
00000f1e: PUSH1 0x04
00000f20: DUP1
00000f21: CALLDATASIZE
00000f22: SUB
00000f23: PUSH1 0x20
00000f25: DUP2
00000f26: LT
00000f27: ISZERO
00000f28: PUSH2 0x0f30
00000f2b: JUMPI
00000f2c: PUSH1 0x00
00000f2e: DUP1
00000f2f: REVERT
00000f30: JUMPDEST
00000f31: DUP2
00000f32: ADD
00000f33: SWAP1
00000f34: PUSH1 0x20
00000f36: DUP2
00000f37: ADD
00000f38: DUP2
00000f39: CALLDATALOAD
00000f3a: PUSH1 0x01
00000f3c: PUSH1 0x20
00000f3e: SHL
00000f3f: DUP2
00000f40: GT
00000f41: ISZERO
00000f42: PUSH2 0x0f4a
00000f45: JUMPI
00000f46: PUSH1 0x00
00000f48: DUP1
00000f49: REVERT
00000f4a: JUMPDEST
00000f4b: DUP3
00000f4c: ADD
00000f4d: DUP4
00000f4e: PUSH1 0x20
00000f50: DUP3
00000f51: ADD
00000f52: GT
00000f53: ISZERO
00000f54: PUSH2 0x0f5c
00000f57: JUMPI
00000f58: PUSH1 0x00
00000f5a: DUP1
00000f5b: REVERT
00000f5c: JUMPDEST
00000f5d: DUP1
00000f5e: CALLDATALOAD
00000f5f: SWAP1
00000f60: PUSH1 0x20
00000f62: ADD
00000f63: SWAP2
00000f64: DUP5
00000f65: PUSH1 0x01
00000f67: DUP4
00000f68: MUL
00000f69: DUP5
00000f6a: ADD
00000f6b: GT
00000f6c: PUSH1 0x01
00000f6e: PUSH1 0x20
00000f70: SHL
00000f71: DUP4
00000f72: GT
00000f73: OR
00000f74: ISZERO
00000f75: PUSH2 0x0f7d
00000f78: JUMPI
00000f79: PUSH1 0x00
00000f7b: DUP1
00000f7c: REVERT
00000f7d: JUMPDEST
00000f7e: POP
00000f7f: SWAP1
00000f80: SWAP3
00000f81: POP
00000f82: SWAP1
00000f83: POP
00000f84: PUSH2 0x36cc
00000f87: JUMP
00000f88: JUMPDEST
00000f89: CALLVALUE
00000f8a: DUP1
00000f8b: ISZERO
00000f8c: PUSH2 0x0f94
00000f8f: JUMPI
00000f90: PUSH1 0x00
00000f92: DUP1
00000f93: REVERT
00000f94: JUMPDEST
00000f95: POP
00000f96: PUSH2 0x0537
00000f99: PUSH2 0x376a
00000f9c: JUMP
00000f9d: JUMPDEST
00000f9e: CALLVALUE
00000f9f: DUP1
00000fa0: ISZERO
00000fa1: PUSH2 0x0fa9
00000fa4: JUMPI
00000fa5: PUSH1 0x00
00000fa7: DUP1
00000fa8: REVERT
00000fa9: JUMPDEST
00000faa: POP
00000fab: PUSH2 0x0537
00000fae: PUSH1 0x04
00000fb0: DUP1
00000fb1: CALLDATASIZE
00000fb2: SUB
00000fb3: PUSH1 0x40
00000fb5: DUP2
00000fb6: LT
00000fb7: ISZERO
00000fb8: PUSH2 0x0fc0
00000fbb: JUMPI
00000fbc: PUSH1 0x00
00000fbe: DUP1
00000fbf: REVERT
00000fc0: JUMPDEST
00000fc1: POP
00000fc2: PUSH1 0x01
00000fc4: PUSH1 0x01
00000fc6: PUSH1 0xa0
00000fc8: SHL
00000fc9: SUB
00000fca: DUP2
00000fcb: CALLDATALOAD
00000fcc: DUP2
00000fcd: AND
00000fce: SWAP2
00000fcf: PUSH1 0x20
00000fd1: ADD
00000fd2: CALLDATALOAD
00000fd3: AND
00000fd4: PUSH2 0x378e
00000fd7: JUMP
00000fd8: JUMPDEST
00000fd9: CALLVALUE
00000fda: DUP1
00000fdb: ISZERO
00000fdc: PUSH2 0x0fe4
00000fdf: JUMPI
00000fe0: PUSH1 0x00
00000fe2: DUP1
00000fe3: REVERT
00000fe4: JUMPDEST
00000fe5: POP
00000fe6: PUSH2 0x0520
00000fe9: PUSH1 0x04
00000feb: DUP1
00000fec: CALLDATASIZE
00000fed: SUB
00000fee: PUSH2 0x0120
00000ff1: DUP2
00000ff2: LT
00000ff3: ISZERO
00000ff4: PUSH2 0x0ffc
00000ff7: JUMPI
00000ff8: PUSH1 0x00
00000ffa: DUP1
00000ffb: REVERT
00000ffc: JUMPDEST
00000ffd: POP
00000ffe: PUSH1 0x01
00001000: PUSH1 0x01
00001002: PUSH1 0xa0
00001004: SHL
00001005: SUB
00001006: DUP2
00001007: CALLDATALOAD
00001008: DUP2
00001009: AND
0000100a: SWAP2
0000100b: PUSH1 0x20
0000100d: DUP2
0000100e: ADD
0000100f: CALLDATALOAD
00001010: SWAP1
00001011: SWAP2
00001012: AND
00001013: SWAP1
00001014: PUSH1 0x40
00001016: DUP2
00001017: ADD
00001018: CALLDATALOAD
00001019: SWAP1
0000101a: PUSH1 0x60
0000101c: DUP2
0000101d: ADD
0000101e: CALLDATALOAD
0000101f: SWAP1
00001020: PUSH1 0x80
00001022: DUP2
00001023: ADD
00001024: CALLDATALOAD
00001025: SWAP1
00001026: PUSH1 0xa0
00001028: DUP2
00001029: ADD
0000102a: CALLDATALOAD
0000102b: SWAP1
0000102c: PUSH1 0xff
0000102e: PUSH1 0xc0
00001030: DUP3
00001031: ADD
00001032: CALLDATALOAD
00001033: AND
00001034: SWAP1
00001035: PUSH1 0xe0
00001037: DUP2
00001038: ADD
00001039: CALLDATALOAD
0000103a: SWAP1
0000103b: PUSH2 0x0100
0000103e: ADD
0000103f: CALLDATALOAD
00001040: PUSH2 0x37b9
00001043: JUMP
00001044: JUMPDEST
00001045: CALLVALUE
00001046: DUP1
00001047: ISZERO
00001048: PUSH2 0x1050
0000104b: JUMPI
0000104c: PUSH1 0x00
0000104e: DUP1
0000104f: REVERT
00001050: JUMPDEST
00001051: POP
00001052: PUSH2 0x0434
00001055: PUSH2 0x38dd
00001058: JUMP
00001059: JUMPDEST
0000105a: CALLVALUE
0000105b: DUP1
0000105c: ISZERO
0000105d: PUSH2 0x1065
00001060: JUMPI
00001061: PUSH1 0x00
00001063: DUP1
00001064: REVERT
00001065: JUMPDEST
00001066: POP
00001067: PUSH2 0x04e2
0000106a: PUSH1 0x04
0000106c: DUP1
0000106d: CALLDATASIZE
0000106e: SUB
0000106f: PUSH1 0x40
00001071: DUP2
00001072: LT
00001073: ISZERO
00001074: PUSH2 0x107c
00001077: JUMPI
00001078: PUSH1 0x00
0000107a: DUP1
0000107b: REVERT
0000107c: JUMPDEST
0000107d: POP
0000107e: PUSH1 0x01
00001080: PUSH1 0x01
00001082: PUSH1 0xa0
00001084: SHL
00001085: SUB
00001086: DUP2
00001087: CALLDATALOAD
00001088: AND
00001089: SWAP1
0000108a: PUSH1 0x20
0000108c: ADD
0000108d: CALLDATALOAD
0000108e: PUSH2 0x3938
00001091: JUMP
00001092: JUMPDEST
00001093: CALLVALUE
00001094: DUP1
00001095: ISZERO
00001096: PUSH2 0x109e
00001099: JUMPI
0000109a: PUSH1 0x00
0000109c: DUP1
0000109d: REVERT
0000109e: JUMPDEST
0000109f: POP
000010a0: PUSH2 0x0520
000010a3: PUSH1 0x04
000010a5: DUP1
000010a6: CALLDATASIZE
000010a7: SUB
000010a8: PUSH2 0x0120
000010ab: DUP2
000010ac: LT
000010ad: ISZERO
000010ae: PUSH2 0x10b6
000010b1: JUMPI
000010b2: PUSH1 0x00
000010b4: DUP1
000010b5: REVERT
000010b6: JUMPDEST
000010b7: POP
000010b8: PUSH1 0x01
000010ba: PUSH1 0x01
000010bc: PUSH1 0xa0
000010be: SHL
000010bf: SUB
000010c0: DUP2
000010c1: CALLDATALOAD
000010c2: DUP2
000010c3: AND
000010c4: SWAP2
000010c5: PUSH1 0x20
000010c7: DUP2
000010c8: ADD
000010c9: CALLDATALOAD
000010ca: SWAP1
000010cb: SWAP2
000010cc: AND
000010cd: SWAP1
000010ce: PUSH1 0x40
000010d0: DUP2
000010d1: ADD
000010d2: CALLDATALOAD
000010d3: SWAP1
000010d4: PUSH1 0x60
000010d6: DUP2
000010d7: ADD
000010d8: CALLDATALOAD
000010d9: SWAP1
000010da: PUSH1 0x80
000010dc: DUP2
000010dd: ADD
000010de: CALLDATALOAD
000010df: SWAP1
000010e0: PUSH1 0xa0
000010e2: DUP2
000010e3: ADD
000010e4: CALLDATALOAD
000010e5: SWAP1
000010e6: PUSH1 0xff
000010e8: PUSH1 0xc0
000010ea: DUP3
000010eb: ADD
000010ec: CALLDATALOAD
000010ed: AND
000010ee: SWAP1
000010ef: PUSH1 0xe0
000010f1: DUP2
000010f2: ADD
000010f3: CALLDATALOAD
000010f4: SWAP1
000010f5: PUSH2 0x0100
000010f8: ADD
000010f9: CALLDATALOAD
000010fa: PUSH2 0x3963
000010fd: JUMP
000010fe: JUMPDEST
000010ff: CALLVALUE
00001100: DUP1
00001101: ISZERO
00001102: PUSH2 0x110a
00001105: JUMPI
00001106: PUSH1 0x00
00001108: DUP1
00001109: REVERT
0000110a: JUMPDEST
0000110b: POP
0000110c: PUSH2 0x0520
0000110f: PUSH1 0x04
00001111: DUP1
00001112: CALLDATASIZE
00001113: SUB
00001114: PUSH1 0x20
00001116: DUP2
00001117: LT
00001118: ISZERO
00001119: PUSH2 0x1121
0000111c: JUMPI
0000111d: PUSH1 0x00
0000111f: DUP1
00001120: REVERT
00001121: JUMPDEST
00001122: POP
00001123: CALLDATALOAD
00001124: PUSH1 0x01
00001126: PUSH1 0x01
00001128: PUSH1 0xa0
0000112a: SHL
0000112b: SUB
0000112c: AND
0000112d: PUSH2 0x3a7a
00001130: JUMP
00001131: JUMPDEST
00001132: PUSH2 0x0520
00001135: PUSH1 0x04
00001137: DUP1
00001138: CALLDATASIZE
00001139: SUB
0000113a: PUSH1 0x20
0000113c: DUP2
0000113d: LT
0000113e: ISZERO
0000113f: PUSH2 0x1147
00001142: JUMPI
00001143: PUSH1 0x00
00001145: DUP1
00001146: REVERT
00001147: JUMPDEST
00001148: POP
00001149: CALLDATALOAD
0000114a: PUSH1 0x01
0000114c: PUSH1 0x01
0000114e: PUSH1 0xa0
00001150: SHL
00001151: SUB
00001152: AND
00001153: PUSH2 0x3b60
00001156: JUMP
00001157: JUMPDEST
00001158: CALLVALUE
00001159: DUP1
0000115a: ISZERO
0000115b: PUSH2 0x1163
0000115e: JUMPI
0000115f: PUSH1 0x00
00001161: DUP1
00001162: REVERT
00001163: JUMPDEST
00001164: POP
00001165: PUSH2 0x0520
00001168: PUSH1 0x04
0000116a: DUP1
0000116b: CALLDATASIZE
0000116c: SUB
0000116d: PUSH1 0x20
0000116f: DUP2
00001170: LT
00001171: ISZERO
00001172: PUSH2 0x117a
00001175: JUMPI
00001176: PUSH1 0x00
00001178: DUP1
00001179: REVERT
0000117a: JUMPDEST
0000117b: POP
0000117c: CALLDATALOAD
0000117d: PUSH1 0x01
0000117f: PUSH1 0x01
00001181: PUSH1 0xa0
00001183: SHL
00001184: SUB
00001185: AND
00001186: PUSH2 0x3c1f
00001189: JUMP
0000118a: JUMPDEST
0000118b: CALLVALUE
0000118c: DUP1
0000118d: ISZERO
0000118e: PUSH2 0x1196
00001191: JUMPI
00001192: PUSH1 0x00
00001194: DUP1
00001195: REVERT
00001196: JUMPDEST
00001197: POP
00001198: PUSH2 0x04e2
0000119b: PUSH1 0x04
0000119d: DUP1
0000119e: CALLDATASIZE
0000119f: SUB
000011a0: PUSH1 0x20
000011a2: DUP2
000011a3: LT
000011a4: ISZERO
000011a5: PUSH2 0x11ad
000011a8: JUMPI
000011a9: PUSH1 0x00
000011ab: DUP1
000011ac: REVERT
000011ad: JUMPDEST
000011ae: POP
000011af: CALLDATALOAD
000011b0: PUSH1 0x01
000011b2: PUSH1 0x01
000011b4: PUSH1 0xa0
000011b6: SHL
000011b7: SUB
000011b8: AND
000011b9: PUSH2 0x3cb4
000011bc: JUMP
000011bd: JUMPDEST
000011be: PUSH1 0x04
000011c0: DUP1
000011c1: SLOAD
000011c2: PUSH1 0x40
000011c4: DUP1
000011c5: MLOAD
000011c6: PUSH1 0x20
000011c8: PUSH1 0x02
000011ca: PUSH1 0x01
000011cc: DUP6
000011cd: AND
000011ce: ISZERO
000011cf: PUSH2 0x0100
000011d2: MUL
000011d3: PUSH1 0x00
000011d5: NOT
000011d6: ADD
000011d7: SWAP1
000011d8: SWAP5
000011d9: AND
000011da: SWAP4
000011db: SWAP1
000011dc: SWAP4
000011dd: DIV
000011de: PUSH1 0x1f
000011e0: DUP2
000011e1: ADD
000011e2: DUP5
000011e3: SWAP1
000011e4: DIV
000011e5: DUP5
000011e6: MUL
000011e7: DUP3
000011e8: ADD
000011e9: DUP5
000011ea: ADD
000011eb: SWAP1
000011ec: SWAP3
000011ed: MSTORE
000011ee: DUP2
000011ef: DUP2
000011f0: MSTORE
000011f1: SWAP3
000011f2: SWAP2
000011f3: DUP4
000011f4: ADD
000011f5: DUP3
000011f6: DUP3
000011f7: DUP1
000011f8: ISZERO
000011f9: PUSH2 0x1243
000011fc: JUMPI
000011fd: DUP1
000011fe: PUSH1 0x1f
00001200: LT
00001201: PUSH2 0x1218
00001204: JUMPI
00001205: PUSH2 0x0100
00001208: DUP1
00001209: DUP4
0000120a: SLOAD
0000120b: DIV
0000120c: MUL
0000120d: DUP4
0000120e: MSTORE
0000120f: SWAP2
00001210: PUSH1 0x20
00001212: ADD
00001213: SWAP2
00001214: PUSH2 0x1243
00001217: JUMP
00001218: JUMPDEST
00001219: DUP3
0000121a: ADD
0000121b: SWAP2
0000121c: SWAP1
0000121d: PUSH1 0x00
0000121f: MSTORE
00001220: PUSH1 0x20
00001222: PUSH1 0x00
00001224: KECCAK256
00001225: SWAP1
00001226: JUMPDEST
00001227: DUP2
00001228: SLOAD
00001229: DUP2
0000122a: MSTORE
0000122b: SWAP1
0000122c: PUSH1 0x01
0000122e: ADD
0000122f: SWAP1
00001230: PUSH1 0x20
00001232: ADD
00001233: DUP1
00001234: DUP4
00001235: GT
00001236: PUSH2 0x1226
00001239: JUMPI
0000123a: DUP3
0000123b: SWAP1
0000123c: SUB
0000123d: PUSH1 0x1f
0000123f: AND
00001240: DUP3
00001241: ADD
00001242: SWAP2
00001243: JUMPDEST
00001244: POP
00001245: POP
00001246: POP
00001247: POP
00001248: POP
00001249: DUP2
0000124a: JUMP
0000124b: JUMPDEST
0000124c: PUSH1 0x01
0000124e: SLOAD
0000124f: PUSH1 0x00
00001251: SWAP1
00001252: PUSH1 0x01
00001254: PUSH1 0xa0
00001256: SHL
00001257: SWAP1
00001258: DIV
00001259: PUSH1 0xff
0000125b: AND
0000125c: ISZERO
0000125d: PUSH2 0x12a0
00001260: JUMPI
00001261: PUSH1 0x40
00001263: DUP1
00001264: MLOAD
00001265: PUSH3 0x461bcd
00001269: PUSH1 0xe5
0000126b: SHL
0000126c: DUP2
0000126d: MSTORE
0000126e: PUSH1 0x20
00001270: PUSH1 0x04
00001272: DUP3
00001273: ADD
00001274: MSTORE
00001275: PUSH1 0x10
00001277: PUSH1 0x24
00001279: DUP3
0000127a: ADD
0000127b: MSTORE
0000127c: PUSH16 0x14185d5cd8589b194e881c185d5cd959
0000128d: PUSH1 0x82
0000128f: SHL
00001290: PUSH1 0x44
00001292: DUP3
00001293: ADD
00001294: MSTORE
00001295: SWAP1
00001296: MLOAD
00001297: SWAP1
00001298: DUP2
00001299: SWAP1
0000129a: SUB
0000129b: PUSH1 0x64
0000129d: ADD
0000129e: SWAP1
0000129f: REVERT
000012a0: JUMPDEST
000012a1: CALLER
000012a2: PUSH1 0x00
000012a4: DUP2
000012a5: DUP2
000012a6: MSTORE
000012a7: PUSH1 0x03
000012a9: PUSH1 0x20
000012ab: MSTORE
000012ac: PUSH1 0x40
000012ae: SWAP1
000012af: KECCAK256
000012b0: SLOAD
000012b1: PUSH1 0xff
000012b3: AND
000012b4: ISZERO
000012b5: PUSH2 0x12ef
000012b8: JUMPI
000012b9: PUSH1 0x40
000012bb: MLOAD
000012bc: PUSH3 0x461bcd
000012c0: PUSH1 0xe5
000012c2: SHL
000012c3: DUP2
000012c4: MSTORE
000012c5: PUSH1 0x04
000012c7: ADD
000012c8: DUP1
000012c9: DUP1
000012ca: PUSH1 0x20
000012cc: ADD
000012cd: DUP3
000012ce: DUP2
000012cf: SUB
000012d0: DUP3
000012d1: MSTORE
000012d2: PUSH1 0x25
000012d4: DUP2
000012d5: MSTORE
000012d6: PUSH1 0x20
000012d8: ADD
000012d9: DUP1
000012da: PUSH2 0x5978
000012dd: PUSH1 0x25
000012df: SWAP2
000012e0: CODECOPY
000012e1: PUSH1 0x40
000012e3: ADD
000012e4: SWAP2
000012e5: POP
000012e6: POP
000012e7: PUSH1 0x40
000012e9: MLOAD
000012ea: DUP1
000012eb: SWAP2
000012ec: SUB
000012ed: SWAP1
000012ee: REVERT
000012ef: JUMPDEST
000012f0: PUSH1 0x01
000012f2: PUSH1 0x01
000012f4: PUSH1 0xa0
000012f6: SHL
000012f7: SUB
000012f8: DUP5
000012f9: AND
000012fa: PUSH1 0x00
000012fc: SWAP1
000012fd: DUP2
000012fe: MSTORE
000012ff: PUSH1 0x03
00001301: PUSH1 0x20
00001303: MSTORE
00001304: PUSH1 0x40
00001306: SWAP1
00001307: KECCAK256
00001308: SLOAD
00001309: DUP5
0000130a: SWAP1
0000130b: PUSH1 0xff
0000130d: AND
0000130e: ISZERO
0000130f: PUSH2 0x1349
00001312: JUMPI
00001313: PUSH1 0x40
00001315: MLOAD
00001316: PUSH3 0x461bcd
0000131a: PUSH1 0xe5
0000131c: SHL
0000131d: DUP2
0000131e: MSTORE
0000131f: PUSH1 0x04
00001321: ADD
00001322: DUP1
00001323: DUP1
00001324: PUSH1 0x20
00001326: ADD
00001327: DUP3
00001328: DUP2
00001329: SUB
0000132a: DUP3
0000132b: MSTORE
0000132c: PUSH1 0x25
0000132e: DUP2
0000132f: MSTORE
00001330: PUSH1 0x20
00001332: ADD
00001333: DUP1
00001334: PUSH2 0x5978
00001337: PUSH1 0x25
00001339: SWAP2
0000133a: CODECOPY
0000133b: PUSH1 0x40
0000133d: ADD
0000133e: SWAP2
0000133f: POP
00001340: POP
00001341: PUSH1 0x40
00001343: MLOAD
00001344: DUP1
00001345: SWAP2
00001346: SUB
00001347: SWAP1
00001348: REVERT
00001349: JUMPDEST
0000134a: PUSH2 0x1354
0000134d: CALLER
0000134e: DUP7
0000134f: DUP7
00001350: PUSH2 0x3cd2
00001353: JUMP
00001354: JUMPDEST
00001355: POP
00001356: PUSH1 0x01
00001358: SWAP5
00001359: SWAP4
0000135a: POP
0000135b: POP
0000135c: POP
0000135d: POP
0000135e: JUMP
0000135f: JUMPDEST
00001360: PUSH2 0x1367
00001363: PUSH2 0x26e3
00001366: JUMP
00001367: JUMPDEST
00001368: PUSH1 0x01
0000136a: PUSH1 0x01
0000136c: PUSH1 0xa0
0000136e: SHL
0000136f: SUB
00001370: AND
00001371: CALLER
00001372: PUSH1 0x01
00001374: PUSH1 0x01
00001376: PUSH1 0xa0
00001378: SHL
00001379: SUB
0000137a: AND
0000137b: EQ
0000137c: PUSH2 0x13b6
0000137f: JUMPI
00001380: PUSH1 0x40
00001382: MLOAD
00001383: PUSH3 0x461bcd
00001387: PUSH1 0xe5
00001389: SHL
0000138a: DUP2
0000138b: MSTORE
0000138c: PUSH1 0x04
0000138e: ADD
0000138f: DUP1
00001390: DUP1
00001391: PUSH1 0x20
00001393: ADD
00001394: DUP3
00001395: DUP2
00001396: SUB
00001397: DUP3
00001398: MSTORE
00001399: PUSH1 0x29
0000139b: DUP2
0000139c: MSTORE
0000139d: PUSH1 0x20
0000139f: ADD
000013a0: DUP1
000013a1: PUSH2 0x5874
000013a4: PUSH1 0x29
000013a6: SWAP2
000013a7: CODECOPY
000013a8: PUSH1 0x40
000013aa: ADD
000013ab: SWAP2
000013ac: POP
000013ad: POP
000013ae: PUSH1 0x40
000013b0: MLOAD
000013b1: DUP1
000013b2: SWAP2
000013b3: SUB
000013b4: SWAP1
000013b5: REVERT
000013b6: JUMPDEST
000013b7: PUSH1 0x00
000013b9: DUP2
000013ba: GT
000013bb: PUSH2 0x1400
000013be: JUMPI
000013bf: PUSH1 0x40
000013c1: DUP1
000013c2: MLOAD
000013c3: PUSH3 0x461bcd
000013c7: PUSH1 0xe5
000013c9: SHL
000013ca: DUP2
000013cb: MSTORE
000013cc: PUSH1 0x20
000013ce: PUSH1 0x04
000013d0: DUP3
000013d1: ADD
000013d2: MSTORE
000013d3: PUSH1 0x12
000013d5: PUSH1 0x24
000013d7: DUP3
000013d8: ADD
000013d9: MSTORE
000013da: PUSH18 0x0616d6f756e742063616e6e6f74206265203
000013ed: PUSH1 0x74
000013ef: SHL
000013f0: PUSH1 0x44
000013f2: DUP3
000013f3: ADD
000013f4: MSTORE
000013f5: SWAP1
000013f6: MLOAD
000013f7: SWAP1
000013f8: DUP2
000013f9: SWAP1
000013fa: SUB
000013fb: PUSH1 0x64
000013fd: ADD
000013fe: SWAP1
000013ff: REVERT
00001400: JUMPDEST
00001401: SELFBALANCE
00001402: DUP2
00001403: GT
00001404: ISZERO
00001405: PUSH2 0x144a
00001408: JUMPI
00001409: PUSH1 0x40
0000140b: DUP1
0000140c: MLOAD
0000140d: PUSH3 0x461bcd
00001411: PUSH1 0xe5
00001413: SHL
00001414: DUP2
00001415: MSTORE
00001416: PUSH1 0x20
00001418: PUSH1 0x04
0000141a: DUP3
0000141b: ADD
0000141c: MSTORE
0000141d: PUSH1 0x12
0000141f: PUSH1 0x24
00001421: DUP3
00001422: ADD
00001423: MSTORE
00001424: PUSH18 0x0c4c2d8c2dcc6ca40dcdee840cadcdeeaced
00001437: PUSH1 0x73
00001439: SHL
0000143a: PUSH1 0x44
0000143c: DUP3
0000143d: ADD
0000143e: MSTORE
0000143f: SWAP1
00001440: MLOAD
00001441: SWAP1
00001442: DUP2
00001443: SWAP1
00001444: SUB
00001445: PUSH1 0x64
00001447: ADD
00001448: SWAP1
00001449: REVERT
0000144a: JUMPDEST
0000144b: PUSH20 0x79973d557cd9dd87eb61e250cc2572c990e20196
00001460: PUSH1 0x01
00001462: PUSH1 0x01
00001464: PUSH1 0xa0
00001466: SHL
00001467: SUB
00001468: AND
00001469: PUSH4 0x1d69ed45
0000146e: DUP3
0000146f: PUSH1 0x40
00001471: MLOAD
00001472: DUP3
00001473: PUSH4 0xffffffff
00001478: AND
00001479: PUSH1 0xe0
0000147b: SHL
0000147c: DUP2
0000147d: MSTORE
0000147e: PUSH1 0x04
00001480: ADD
00001481: PUSH1 0x00
00001483: PUSH1 0x40
00001485: MLOAD
00001486: DUP1
00001487: DUP4
00001488: SUB
00001489: DUP2
0000148a: DUP6
0000148b: DUP9
0000148c: DUP1
0000148d: EXTCODESIZE
0000148e: ISZERO
0000148f: DUP1
00001490: ISZERO
00001491: PUSH2 0x1499
00001494: JUMPI
00001495: PUSH1 0x00
00001497: DUP1
00001498: REVERT
00001499: JUMPDEST
0000149a: POP
0000149b: GAS
0000149c: CALL
0000149d: ISZERO
0000149e: DUP1
0000149f: ISZERO
000014a0: PUSH2 0x14ad
000014a3: JUMPI
000014a4: RETURNDATASIZE
000014a5: PUSH1 0x00
000014a7: DUP1
000014a8: RETURNDATACOPY
000014a9: RETURNDATASIZE
000014aa: PUSH1 0x00
000014ac: REVERT
000014ad: JUMPDEST
000014ae: POP
000014af: POP
000014b0: PUSH1 0x40
000014b2: DUP1
000014b3: MLOAD
000014b4: DUP6
000014b5: DUP2
000014b6: MSTORE
000014b7: SWAP1
000014b8: MLOAD
000014b9: PUSH20 0x79973d557cd9dd87eb61e250cc2572c990e20196
000014ce: SWAP5
000014cf: POP
000014d0: PUSH32 0x56d2bc55f552daa5d7bf4883dc0f73fb82309ff0beee747fca1dcfbd501226e0
000014f1: SWAP4
000014f2: POP
000014f3: SWAP1
000014f4: DUP2
000014f5: SWAP1
000014f6: SUB
000014f7: PUSH1 0x20
000014f9: ADD
000014fa: SWAP2
000014fb: POP
000014fc: LOG2
000014fd: POP
000014fe: JUMP
000014ff: JUMPDEST
00001500: PUSH1 0x0b
00001502: SLOAD
00001503: SWAP1
00001504: JUMP
00001505: JUMPDEST
00001506: PUSH1 0x02
00001508: SLOAD
00001509: PUSH1 0x01
0000150b: PUSH1 0x01
0000150d: PUSH1 0xa0
0000150f: SHL
00001510: SUB
00001511: AND
00001512: CALLER
00001513: EQ
00001514: PUSH2 0x154e
00001517: JUMPI
00001518: PUSH1 0x40
0000151a: MLOAD
0000151b: PUSH3 0x461bcd
0000151f: PUSH1 0xe5
00001521: SHL
00001522: DUP2
00001523: MSTORE
00001524: PUSH1 0x04
00001526: ADD
00001527: DUP1
00001528: DUP1
00001529: PUSH1 0x20
0000152b: ADD
0000152c: DUP3
0000152d: DUP2
0000152e: SUB
0000152f: DUP3
00001530: MSTORE
00001531: PUSH1 0x2c
00001533: DUP2
00001534: MSTORE
00001535: PUSH1 0x20
00001537: ADD
00001538: DUP1
00001539: PUSH2 0x540b
0000153c: PUSH1 0x2c
0000153e: SWAP2
0000153f: CODECOPY
00001540: PUSH1 0x40
00001542: ADD
00001543: SWAP2
00001544: POP
00001545: POP
00001546: PUSH1 0x40
00001548: MLOAD
00001549: DUP1
0000154a: SWAP2
0000154b: SUB
0000154c: SWAP1
0000154d: REVERT
0000154e: JUMPDEST
0000154f: PUSH1 0x01
00001551: PUSH1 0x01
00001553: PUSH1 0xa0
00001555: SHL
00001556: SUB
00001557: DUP2
00001558: AND
00001559: PUSH1 0x00
0000155b: DUP2
0000155c: DUP2
0000155d: MSTORE
0000155e: PUSH1 0x03
00001560: PUSH1 0x20
00001562: MSTORE
00001563: PUSH1 0x40
00001565: DUP1
00001566: DUP3
00001567: KECCAK256
00001568: DUP1
00001569: SLOAD
0000156a: PUSH1 0xff
0000156c: NOT
0000156d: AND
0000156e: SWAP1
0000156f: SSTORE
00001570: MLOAD
00001571: PUSH32 0x117e3210bb9aa7d9baff172026820255c6f6c30ba8999d1c2fd88e2848137c4e
00001592: SWAP2
00001593: SWAP1
00001594: LOG2
00001595: POP
00001596: JUMP
00001597: JUMPDEST
00001598: PUSH2 0x159f
0000159b: PUSH2 0x26e3
0000159e: JUMP
0000159f: JUMPDEST
000015a0: PUSH1 0x01
000015a2: PUSH1 0x01
000015a4: PUSH1 0xa0
000015a6: SHL
000015a7: SUB
000015a8: AND
000015a9: CALLER
000015aa: PUSH1 0x01
000015ac: PUSH1 0x01
000015ae: PUSH1 0xa0
000015b0: SHL
000015b1: SUB
000015b2: AND
000015b3: EQ
000015b4: PUSH2 0x15ee
000015b7: JUMPI
000015b8: PUSH1 0x40
000015ba: MLOAD
000015bb: PUSH3 0x461bcd
000015bf: PUSH1 0xe5
000015c1: SHL
000015c2: DUP2
000015c3: MSTORE
000015c4: PUSH1 0x04
000015c6: ADD
000015c7: DUP1
000015c8: DUP1
000015c9: PUSH1 0x20
000015cb: ADD
000015cc: DUP3
000015cd: DUP2
000015ce: SUB
000015cf: DUP3
000015d0: MSTORE
000015d1: PUSH1 0x29
000015d3: DUP2
000015d4: MSTORE
000015d5: PUSH1 0x20
000015d7: ADD
000015d8: DUP1
000015d9: PUSH2 0x5874
000015dc: PUSH1 0x29
000015de: SWAP2
000015df: CODECOPY
000015e0: PUSH1 0x40
000015e2: ADD
000015e3: SWAP2
000015e4: POP
000015e5: POP
000015e6: PUSH1 0x40
000015e8: MLOAD
000015e9: DUP1
000015ea: SWAP2
000015eb: SUB
000015ec: SWAP1
000015ed: REVERT
000015ee: JUMPDEST
000015ef: PUSH1 0x00
000015f1: CALLVALUE
000015f2: GT
000015f3: PUSH2 0x1635
000015f6: JUMPI
000015f7: PUSH1 0x40
000015f9: DUP1
000015fa: MLOAD
000015fb: PUSH3 0x461bcd
000015ff: PUSH1 0xe5
00001601: SHL
00001602: DUP2
00001603: MSTORE
00001604: PUSH1 0x20
00001606: PUSH1 0x04
00001608: DUP3
00001609: ADD
0000160a: MSTORE
0000160b: PUSH1 0x0f
0000160d: PUSH1 0x24
0000160f: DUP3
00001610: ADD
00001611: MSTORE
00001612: PUSH15 0x1e995c9bc811551208185b5bdd5b9d
00001622: PUSH1 0x8a
00001624: SHL
00001625: PUSH1 0x44
00001627: DUP3
00001628: ADD
00001629: MSTORE
0000162a: SWAP1
0000162b: MLOAD
0000162c: SWAP1
0000162d: DUP2
0000162e: SWAP1
0000162f: SUB
00001630: PUSH1 0x64
00001632: ADD
00001633: SWAP1
00001634: REVERT
00001635: JUMPDEST
00001636: PUSH1 0x40
00001638: DUP1
00001639: MLOAD
0000163a: CALLVALUE
0000163b: DUP2
0000163c: MSTORE
0000163d: SWAP1
0000163e: MLOAD
0000163f: CALLER
00001640: SWAP2
00001641: PUSH32 0x6f159dc1a889982fdc908cb2b9a48d36d718ed0c0c8c9ef565c4857e0f00a462
00001662: SWAP2
00001663: SWAP1
00001664: DUP2
00001665: SWAP1
00001666: SUB
00001667: PUSH1 0x20
00001669: ADD
0000166a: SWAP1
0000166b: LOG2
0000166c: JUMP
0000166d: JUMPDEST
0000166e: PUSH1 0x00
00001670: SLOAD
00001671: PUSH1 0x01
00001673: PUSH1 0x01
00001675: PUSH1 0xa0
00001677: SHL
00001678: SUB
00001679: AND
0000167a: CALLER
0000167b: EQ
0000167c: PUSH2 0x16ba
0000167f: JUMPI
00001680: PUSH1 0x40
00001682: DUP1
00001683: MLOAD
00001684: PUSH3 0x461bcd
00001688: PUSH1 0xe5
0000168a: SHL
0000168b: DUP2
0000168c: MSTORE
0000168d: PUSH1 0x20
0000168f: PUSH1 0x04
00001691: DUP3
00001692: ADD
00001693: DUP2
00001694: SWAP1
00001695: MSTORE
00001696: PUSH1 0x24
00001698: DUP3
00001699: ADD
0000169a: MSTORE
0000169b: PUSH1 0x00
0000169d: DUP1
0000169e: MLOAD
0000169f: PUSH1 0x20
000016a1: PUSH2 0x5676
000016a4: DUP4
000016a5: CODECOPY
000016a6: DUP2
000016a7: MLOAD
000016a8: SWAP2
000016a9: MSTORE
000016aa: PUSH1 0x44
000016ac: DUP3
000016ad: ADD
000016ae: MSTORE
000016af: SWAP1
000016b0: MLOAD
000016b1: SWAP1
000016b2: DUP2
000016b3: SWAP1
000016b4: SUB
000016b5: PUSH1 0x64
000016b7: ADD
000016b8: SWAP1
000016b9: REVERT
000016ba: JUMPDEST
000016bb: PUSH1 0x01
000016bd: PUSH1 0x01
000016bf: PUSH1 0xa0
000016c1: SHL
000016c2: SUB
000016c3: DUP2
000016c4: AND
000016c5: PUSH2 0x16ff
000016c8: JUMPI
000016c9: PUSH1 0x40
000016cb: MLOAD
000016cc: PUSH3 0x461bcd
000016d0: PUSH1 0xe5
000016d2: SHL
000016d3: DUP2
000016d4: MSTORE
000016d5: PUSH1 0x04
000016d7: ADD
000016d8: DUP1
000016d9: DUP1
000016da: PUSH1 0x20
000016dc: ADD
000016dd: DUP3
000016de: DUP2
000016df: SUB
000016e0: DUP3
000016e1: MSTORE
000016e2: PUSH1 0x29
000016e4: DUP2
000016e5: MSTORE
000016e6: PUSH1 0x20
000016e8: ADD
000016e9: DUP1
000016ea: PUSH2 0x58c7
000016ed: PUSH1 0x29
000016ef: SWAP2
000016f0: CODECOPY
000016f1: PUSH1 0x40
000016f3: ADD
000016f4: SWAP2
000016f5: POP
000016f6: POP
000016f7: PUSH1 0x40
000016f9: MLOAD
000016fa: DUP1
000016fb: SWAP2
000016fc: SUB
000016fd: SWAP1
000016fe: REVERT
000016ff: JUMPDEST
00001700: PUSH2 0x1707
00001703: PUSH2 0x27b1
00001706: JUMP
00001707: JUMPDEST
00001708: PUSH1 0x01
0000170a: PUSH1 0x01
0000170c: PUSH1 0xa0
0000170e: SHL
0000170f: SUB
00001710: AND
00001711: DUP2
00001712: PUSH1 0x01
00001714: PUSH1 0x01
00001716: PUSH1 0xa0
00001718: SHL
00001719: SUB
0000171a: AND
0000171b: EQ
0000171c: ISZERO
0000171d: PUSH2 0x1757
00001720: JUMPI
00001721: PUSH1 0x40
00001723: MLOAD
00001724: PUSH3 0x461bcd
00001728: PUSH1 0xe5
0000172a: SHL
0000172b: DUP2
0000172c: MSTORE
0000172d: PUSH1 0x04
0000172f: ADD
00001730: DUP1
00001731: DUP1
00001732: PUSH1 0x20
00001734: ADD
00001735: DUP3
00001736: DUP2
00001737: SUB
00001738: DUP3
00001739: MSTORE
0000173a: PUSH1 0x2f
0000173c: DUP2
0000173d: MSTORE
0000173e: PUSH1 0x20
00001740: ADD
00001741: DUP1
00001742: PUSH2 0x54c0
00001745: PUSH1 0x2f
00001747: SWAP2
00001748: CODECOPY
00001749: PUSH1 0x40
0000174b: ADD
0000174c: SWAP2
0000174d: POP
0000174e: POP
0000174f: PUSH1 0x40
00001751: MLOAD
00001752: DUP1
00001753: SWAP2
00001754: SUB
00001755: SWAP1
00001756: REVERT
00001757: JUMPDEST
00001758: PUSH32 0x5b59a5dd16c9350164998686a568a8e54651caf9b3f56ce4e5d8bfcbfc37e6c2
00001779: DUP2
0000177a: DUP2
0000177b: SSTORE
0000177c: PUSH1 0x40
0000177e: MLOAD
0000177f: PUSH1 0x01
00001781: PUSH1 0x01
00001783: PUSH1 0xa0
00001785: SHL
00001786: SUB
00001787: DUP4
00001788: AND
00001789: SWAP1
0000178a: PUSH32 0x3df77beb5db05fcdd70a30fc8adf3f83f9501b68579455adbd100b8180940394
000017ab: SWAP1
000017ac: PUSH1 0x00
000017ae: SWAP1
000017af: LOG2
000017b0: POP
000017b1: POP
000017b2: JUMP
000017b3: JUMPDEST
000017b4: PUSH1 0x01
000017b6: SLOAD
000017b7: PUSH1 0x00
000017b9: SWAP1
000017ba: PUSH1 0x01
000017bc: PUSH1 0xa0
000017be: SHL
000017bf: SWAP1
000017c0: DIV
000017c1: PUSH1 0xff
000017c3: AND
000017c4: ISZERO
000017c5: PUSH2 0x1808
000017c8: JUMPI
000017c9: PUSH1 0x40
000017cb: DUP1
000017cc: MLOAD
000017cd: PUSH3 0x461bcd
000017d1: PUSH1 0xe5
000017d3: SHL
000017d4: DUP2
000017d5: MSTORE
000017d6: PUSH1 0x20
000017d8: PUSH1 0x04
000017da: DUP3
000017db: ADD
000017dc: MSTORE
000017dd: PUSH1 0x10
000017df: PUSH1 0x24
000017e1: DUP3
000017e2: ADD
000017e3: MSTORE
000017e4: PUSH16 0x14185d5cd8589b194e881c185d5cd959
000017f5: PUSH1 0x82
000017f7: SHL
000017f8: PUSH1 0x44
000017fa: DUP3
000017fb: ADD
000017fc: MSTORE
000017fd: SWAP1
000017fe: MLOAD
000017ff: SWAP1
00001800: DUP2
00001801: SWAP1
00001802: SUB
00001803: PUSH1 0x64
00001805: ADD
00001806: SWAP1
00001807: REVERT
00001808: JUMPDEST
00001809: CALLER
0000180a: PUSH1 0x00
0000180c: DUP2
0000180d: DUP2
0000180e: MSTORE
0000180f: PUSH1 0x03
00001811: PUSH1 0x20
00001813: MSTORE
00001814: PUSH1 0x40
00001816: SWAP1
00001817: KECCAK256
00001818: SLOAD
00001819: PUSH1 0xff
0000181b: AND
0000181c: ISZERO
0000181d: PUSH2 0x1857
00001820: JUMPI
00001821: PUSH1 0x40
00001823: MLOAD
00001824: PUSH3 0x461bcd
00001828: PUSH1 0xe5
0000182a: SHL
0000182b: DUP2
0000182c: MSTORE
0000182d: PUSH1 0x04
0000182f: ADD
00001830: DUP1
00001831: DUP1
00001832: PUSH1 0x20
00001834: ADD
00001835: DUP3
00001836: DUP2
00001837: SUB
00001838: DUP3
00001839: MSTORE
0000183a: PUSH1 0x25
0000183c: DUP2
0000183d: MSTORE
0000183e: PUSH1 0x20
00001840: ADD
00001841: DUP1
00001842: PUSH2 0x5978
00001845: PUSH1 0x25
00001847: SWAP2
00001848: CODECOPY
00001849: PUSH1 0x40
0000184b: ADD
0000184c: SWAP2
0000184d: POP
0000184e: POP
0000184f: PUSH1 0x40
00001851: MLOAD
00001852: DUP1
00001853: SWAP2
00001854: SUB
00001855: SWAP1
00001856: REVERT
00001857: JUMPDEST
00001858: PUSH1 0x01
0000185a: PUSH1 0x01
0000185c: PUSH1 0xa0
0000185e: SHL
0000185f: SUB
00001860: DUP6
00001861: AND
00001862: PUSH1 0x00
00001864: SWAP1
00001865: DUP2
00001866: MSTORE
00001867: PUSH1 0x03
00001869: PUSH1 0x20
0000186b: MSTORE
0000186c: PUSH1 0x40
0000186e: SWAP1
0000186f: KECCAK256
00001870: SLOAD
00001871: DUP6
00001872: SWAP1
00001873: PUSH1 0xff
00001875: AND
00001876: ISZERO
00001877: PUSH2 0x18b1
0000187a: JUMPI
0000187b: PUSH1 0x40
0000187d: MLOAD
0000187e: PUSH3 0x461bcd
00001882: PUSH1 0xe5
00001884: SHL
00001885: DUP2
00001886: MSTORE
00001887: PUSH1 0x04
00001889: ADD
0000188a: DUP1
0000188b: DUP1
0000188c: PUSH1 0x20
0000188e: ADD
0000188f: DUP3
00001890: DUP2
00001891: SUB
00001892: DUP3
00001893: MSTORE
00001894: PUSH1 0x25
00001896: DUP2
00001897: MSTORE
00001898: PUSH1 0x20
0000189a: ADD
0000189b: DUP1
0000189c: PUSH2 0x5978
0000189f: PUSH1 0x25
000018a1: SWAP2
000018a2: CODECOPY
000018a3: PUSH1 0x40
000018a5: ADD
000018a6: SWAP2
000018a7: POP
000018a8: POP
000018a9: PUSH1 0x40
000018ab: MLOAD
000018ac: DUP1
000018ad: SWAP2
000018ae: SUB
000018af: SWAP1
000018b0: REVERT
000018b1: JUMPDEST
000018b2: PUSH1 0x01
000018b4: PUSH1 0x01
000018b6: PUSH1 0xa0
000018b8: SHL
000018b9: SUB
000018ba: DUP6
000018bb: AND
000018bc: PUSH1 0x00
000018be: SWAP1
000018bf: DUP2
000018c0: MSTORE
000018c1: PUSH1 0x03
000018c3: PUSH1 0x20
000018c5: MSTORE
000018c6: PUSH1 0x40
000018c8: SWAP1
000018c9: KECCAK256
000018ca: SLOAD
000018cb: DUP6
000018cc: SWAP1
000018cd: PUSH1 0xff
000018cf: AND
000018d0: ISZERO
000018d1: PUSH2 0x190b
000018d4: JUMPI
000018d5: PUSH1 0x40
000018d7: MLOAD
000018d8: PUSH3 0x461bcd
000018dc: PUSH1 0xe5
000018de: SHL
000018df: DUP2
000018e0: MSTORE
000018e1: PUSH1 0x04
000018e3: ADD
000018e4: DUP1
000018e5: DUP1
000018e6: PUSH1 0x20
000018e8: ADD
000018e9: DUP3
000018ea: DUP2
000018eb: SUB
000018ec: DUP3
000018ed: MSTORE
000018ee: PUSH1 0x25
000018f0: DUP2
000018f1: MSTORE
000018f2: PUSH1 0x20
000018f4: ADD
000018f5: DUP1
000018f6: PUSH2 0x5978
000018f9: PUSH1 0x25
000018fb: SWAP2
000018fc: CODECOPY
000018fd: PUSH1 0x40
000018ff: ADD
00001900: SWAP2
00001901: POP
00001902: POP
00001903: PUSH1 0x40
00001905: MLOAD
00001906: DUP1
00001907: SWAP2
00001908: SUB
00001909: SWAP1
0000190a: REVERT
0000190b: JUMPDEST
0000190c: PUSH1 0x01
0000190e: PUSH1 0x01
00001910: PUSH1 0xa0
00001912: SHL
00001913: SUB
00001914: DUP8
00001915: AND
00001916: PUSH1 0x00
00001918: SWAP1
00001919: DUP2
0000191a: MSTORE
0000191b: PUSH1 0x0a
0000191d: PUSH1 0x20
0000191f: SWAP1
00001920: DUP2
00001921: MSTORE
00001922: PUSH1 0x40
00001924: DUP1
00001925: DUP4
00001926: KECCAK256
00001927: CALLER
00001928: DUP5
00001929: MSTORE
0000192a: SWAP1
0000192b: SWAP2
0000192c: MSTORE
0000192d: SWAP1
0000192e: KECCAK256
0000192f: SLOAD
00001930: DUP6
00001931: GT
00001932: ISZERO
00001933: PUSH2 0x196d
00001936: JUMPI
00001937: PUSH1 0x40
00001939: MLOAD
0000193a: PUSH3 0x461bcd
0000193e: PUSH1 0xe5
00001940: SHL
00001941: DUP2
00001942: MSTORE
00001943: PUSH1 0x04
00001945: ADD
00001946: DUP1
00001947: DUP1
00001948: PUSH1 0x20
0000194a: ADD
0000194b: DUP3
0000194c: DUP2
0000194d: SUB
0000194e: DUP3
0000194f: MSTORE
00001950: PUSH1 0x28
00001952: DUP2
00001953: MSTORE
00001954: PUSH1 0x20
00001956: ADD
00001957: DUP1
00001958: PUSH2 0x564e
0000195b: PUSH1 0x28
0000195d: SWAP2
0000195e: CODECOPY
0000195f: PUSH1 0x40
00001961: ADD
00001962: SWAP2
00001963: POP
00001964: POP
00001965: PUSH1 0x40
00001967: MLOAD
00001968: DUP1
00001969: SWAP2
0000196a: SUB
0000196b: SWAP1
0000196c: REVERT
0000196d: JUMPDEST
0000196e: PUSH2 0x1978
00001971: DUP8
00001972: DUP8
00001973: DUP8
00001974: PUSH2 0x3dbe
00001977: JUMP
00001978: JUMPDEST
00001979: PUSH1 0x01
0000197b: PUSH1 0x01
0000197d: PUSH1 0xa0
0000197f: SHL
00001980: SUB
00001981: DUP8
00001982: AND
00001983: PUSH1 0x00
00001985: SWAP1
00001986: DUP2
00001987: MSTORE
00001988: PUSH1 0x0a
0000198a: PUSH1 0x20
0000198c: SWAP1
0000198d: DUP2
0000198e: MSTORE
0000198f: PUSH1 0x40
00001991: DUP1
00001992: DUP4
00001993: KECCAK256
00001994: CALLER
00001995: DUP5
00001996: MSTORE
00001997: SWAP1
00001998: SWAP2
00001999: MSTORE
0000199a: SWAP1
0000199b: KECCAK256
0000199c: SLOAD
0000199d: PUSH2 0x19a6
000019a0: SWAP1
000019a1: DUP7
000019a2: PUSH2 0x3f3b
000019a5: JUMP
000019a6: JUMPDEST
000019a7: PUSH1 0x01
000019a9: PUSH1 0x01
000019ab: PUSH1 0xa0
000019ad: SHL
000019ae: SUB
000019af: DUP9
000019b0: AND
000019b1: PUSH1 0x00
000019b3: SWAP1
000019b4: DUP2
000019b5: MSTORE
000019b6: PUSH1 0x0a
000019b8: PUSH1 0x20
000019ba: SWAP1
000019bb: DUP2
000019bc: MSTORE
000019bd: PUSH1 0x40
000019bf: DUP1
000019c0: DUP4
000019c1: KECCAK256
000019c2: CALLER
000019c3: DUP5
000019c4: MSTORE
000019c5: SWAP1
000019c6: SWAP2
000019c7: MSTORE
000019c8: SWAP1
000019c9: KECCAK256
000019ca: SSTORE
000019cb: PUSH1 0x01
000019cd: SWAP4
000019ce: POP
000019cf: POP
000019d0: POP
000019d1: POP
000019d2: SWAP4
000019d3: SWAP3
000019d4: POP
000019d5: POP
000019d6: POP
000019d7: JUMP
000019d8: JUMPDEST
000019d9: PUSH1 0x00
000019db: SLOAD
000019dc: PUSH1 0x01
000019de: PUSH1 0x01
000019e0: PUSH1 0xa0
000019e2: SHL
000019e3: SUB
000019e4: AND
000019e5: CALLER
000019e6: EQ
000019e7: PUSH2 0x1a25
000019ea: JUMPI
000019eb: PUSH1 0x40
000019ed: DUP1
000019ee: MLOAD
000019ef: PUSH3 0x461bcd
000019f3: PUSH1 0xe5
000019f5: SHL
000019f6: DUP2
000019f7: MSTORE
000019f8: PUSH1 0x20
000019fa: PUSH1 0x04
000019fc: DUP3
000019fd: ADD
000019fe: DUP2
000019ff: SWAP1
00001a00: MSTORE
00001a01: PUSH1 0x24
00001a03: DUP3
00001a04: ADD
00001a05: MSTORE
00001a06: PUSH1 0x00
00001a08: DUP1
00001a09: MLOAD
00001a0a: PUSH1 0x20
00001a0c: PUSH2 0x5676
00001a0f: DUP4
00001a10: CODECOPY
00001a11: DUP2
00001a12: MLOAD
00001a13: SWAP2
00001a14: MSTORE
00001a15: PUSH1 0x44
00001a17: DUP3
00001a18: ADD
00001a19: MSTORE
00001a1a: SWAP1
00001a1b: MLOAD
00001a1c: SWAP1
00001a1d: DUP2
00001a1e: SWAP1
00001a1f: SUB
00001a20: PUSH1 0x64
00001a22: ADD
00001a23: SWAP1
00001a24: REVERT
00001a25: JUMPDEST
00001a26: PUSH1 0x01
00001a28: PUSH1 0x01
00001a2a: PUSH1 0xa0
00001a2c: SHL
00001a2d: SUB
00001a2e: DUP2
00001a2f: AND
00001a30: PUSH2 0x1a6a
00001a33: JUMPI
00001a34: PUSH1 0x40
00001a36: MLOAD
00001a37: PUSH3 0x461bcd
00001a3b: PUSH1 0xe5
00001a3d: SHL
00001a3e: DUP2
00001a3f: MSTORE
00001a40: PUSH1 0x04
00001a42: ADD
00001a43: DUP1
00001a44: DUP1
00001a45: PUSH1 0x20
00001a47: ADD
00001a48: DUP3
00001a49: DUP2
00001a4a: SUB
00001a4b: DUP3
00001a4c: MSTORE
00001a4d: PUSH1 0x2a
00001a4f: DUP2
00001a50: MSTORE
00001a51: PUSH1 0x20
00001a53: ADD
00001a54: DUP1
00001a55: PUSH2 0x5369
00001a58: PUSH1 0x2a
00001a5a: SWAP2
00001a5b: CODECOPY
00001a5c: PUSH1 0x40
00001a5e: ADD
00001a5f: SWAP2
00001a60: POP
00001a61: POP
00001a62: PUSH1 0x40
00001a64: MLOAD
00001a65: DUP1
00001a66: SWAP2
00001a67: SUB
00001a68: SWAP1
00001a69: REVERT
00001a6a: JUMPDEST
00001a6b: PUSH1 0x0e
00001a6d: DUP1
00001a6e: SLOAD
00001a6f: PUSH1 0x01
00001a71: PUSH1 0x01
00001a73: PUSH1 0xa0
00001a75: SHL
00001a76: SUB
00001a77: NOT
00001a78: AND
00001a79: PUSH1 0x01
00001a7b: PUSH1 0x01
00001a7d: PUSH1 0xa0
00001a7f: SHL
00001a80: SUB
00001a81: DUP4
00001a82: AND
00001a83: SWAP1
00001a84: DUP2
00001a85: OR
00001a86: SWAP1
00001a87: SWAP2
00001a88: SSTORE
00001a89: PUSH1 0x40
00001a8b: MLOAD
00001a8c: PUSH32 0xe475e580d85111348e40d8ca33cfdd74c30fe1655c2d8537a13abc10065ffa5a
00001aad: SWAP1
00001aae: PUSH1 0x00
00001ab0: SWAP1
00001ab1: LOG2
00001ab2: POP
00001ab3: JUMP
00001ab4: JUMPDEST
00001ab5: PUSH1 0x12
00001ab7: SLOAD
00001ab8: PUSH1 0xff
00001aba: AND
00001abb: PUSH1 0x01
00001abd: EQ
00001abe: PUSH2 0x1ac6
00001ac1: JUMPI
00001ac2: PUSH1 0x00
00001ac4: DUP1
00001ac5: REVERT
00001ac6: JUMPDEST
00001ac7: ADDRESS
00001ac8: PUSH1 0x00
00001aca: SWAP1
00001acb: DUP2
00001acc: MSTORE
00001acd: PUSH1 0x09
00001acf: PUSH1 0x20
00001ad1: MSTORE
00001ad2: PUSH1 0x40
00001ad4: SWAP1
00001ad5: KECCAK256
00001ad6: SLOAD
00001ad7: DUP1
00001ad8: ISZERO
00001ad9: PUSH2 0x1ae7
00001adc: JUMPI
00001add: PUSH2 0x1ae7
00001ae0: ADDRESS
00001ae1: DUP4
00001ae2: DUP4
00001ae3: PUSH2 0x3dbe
00001ae6: JUMP
00001ae7: JUMPDEST
00001ae8: POP
00001ae9: POP
00001aea: ADDRESS
00001aeb: PUSH1 0x00
00001aed: SWAP1
00001aee: DUP2
00001aef: MSTORE
00001af0: PUSH1 0x03
00001af2: PUSH1 0x20
00001af4: MSTORE
00001af5: PUSH1 0x40
00001af7: SWAP1
00001af8: KECCAK256
00001af9: DUP1
00001afa: SLOAD
00001afb: PUSH1 0xff
00001afd: NOT
00001afe: SWAP1
00001aff: DUP2
00001b00: AND
00001b01: PUSH1 0x01
00001b03: OR
00001b04: SWAP1
00001b05: SWAP2
00001b06: SSTORE
00001b07: PUSH1 0x12
00001b09: DUP1
00001b0a: SLOAD
00001b0b: SWAP1
00001b0c: SWAP2
00001b0d: AND
00001b0e: PUSH1 0x02
00001b10: OR
00001b11: SWAP1
00001b12: SSTORE
00001b13: JUMP
00001b14: JUMPDEST
00001b15: PUSH1 0x08
00001b17: SLOAD
00001b18: PUSH1 0x00
00001b1a: SWAP1
00001b1b: PUSH1 0x01
00001b1d: PUSH1 0x01
00001b1f: PUSH1 0xa0
00001b21: SHL
00001b22: SUB
00001b23: AND
00001b24: CALLER
00001b25: EQ
00001b26: PUSH2 0x1b60
00001b29: JUMPI
00001b2a: PUSH1 0x40
00001b2c: MLOAD
00001b2d: PUSH3 0x461bcd
00001b31: PUSH1 0xe5
00001b33: SHL
00001b34: DUP2
00001b35: MSTORE
00001b36: PUSH1 0x04
00001b38: ADD
00001b39: DUP1
00001b3a: DUP1
00001b3b: PUSH1 0x20
00001b3d: ADD
00001b3e: DUP3
00001b3f: DUP2
00001b40: SUB
00001b41: DUP3
00001b42: MSTORE
00001b43: PUSH1 0x29
00001b45: DUP2
00001b46: MSTORE
00001b47: PUSH1 0x20
00001b49: ADD
00001b4a: DUP1
00001b4b: PUSH2 0x53e2
00001b4e: PUSH1 0x29
00001b50: SWAP2
00001b51: CODECOPY
00001b52: PUSH1 0x40
00001b54: ADD
00001b55: SWAP2
00001b56: POP
00001b57: POP
00001b58: PUSH1 0x40
00001b5a: MLOAD
00001b5b: DUP1
00001b5c: SWAP2
00001b5d: SUB
00001b5e: SWAP1
00001b5f: REVERT
00001b60: JUMPDEST
00001b61: PUSH1 0x01
00001b63: PUSH1 0x01
00001b65: PUSH1 0xa0
00001b67: SHL
00001b68: SUB
00001b69: DUP3
00001b6a: AND
00001b6b: PUSH1 0x00
00001b6d: DUP2
00001b6e: DUP2
00001b6f: MSTORE
00001b70: PUSH1 0x0c
00001b72: PUSH1 0x20
00001b74: SWAP1
00001b75: DUP2
00001b76: MSTORE
00001b77: PUSH1 0x40
00001b79: DUP1
00001b7a: DUP4
00001b7b: KECCAK256
00001b7c: DUP1
00001b7d: SLOAD
00001b7e: PUSH1 0xff
00001b80: NOT
00001b81: AND
00001b82: SWAP1
00001b83: SSTORE
00001b84: PUSH1 0x0d
00001b86: SWAP1
00001b87: SWAP2
00001b88: MSTORE
00001b89: DUP1
00001b8a: DUP3
00001b8b: KECCAK256
00001b8c: DUP3
00001b8d: SWAP1
00001b8e: SSTORE
00001b8f: MLOAD
00001b90: PUSH32 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692
00001bb1: SWAP2
00001bb2: SWAP1
00001bb3: LOG2
00001bb4: POP
00001bb5: PUSH1 0x01
00001bb7: SWAP2
00001bb8: SWAP1
00001bb9: POP
00001bba: JUMP
00001bbb: JUMPDEST
00001bbc: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9
00001bdd: DUP2
00001bde: JUMP
00001bdf: JUMPDEST
00001be0: PUSH1 0x06
00001be2: SLOAD
00001be3: PUSH1 0xff
00001be5: AND
00001be6: DUP2
00001be7: JUMP
00001be8: JUMPDEST
00001be9: PUSH1 0x08
00001beb: SLOAD
00001bec: PUSH1 0x01
00001bee: PUSH1 0xa0
00001bf0: SHL
00001bf1: SWAP1
00001bf2: DIV
00001bf3: PUSH1 0xff
00001bf5: AND
00001bf6: ISZERO
00001bf7: PUSH2 0x1c31
00001bfa: JUMPI
00001bfb: PUSH1 0x40
00001bfd: MLOAD
00001bfe: PUSH3 0x461bcd
00001c02: PUSH1 0xe5
00001c04: SHL
00001c05: DUP2
00001c06: MSTORE
00001c07: PUSH1 0x04
00001c09: ADD
00001c0a: DUP1
00001c0b: DUP1
00001c0c: PUSH1 0x20
00001c0e: ADD
00001c0f: DUP3
00001c10: DUP2
00001c11: SUB
00001c12: DUP3
00001c13: MSTORE
00001c14: PUSH1 0x2a
00001c16: DUP2
00001c17: MSTORE
00001c18: PUSH1 0x20
00001c1a: ADD
00001c1b: DUP1
00001c1c: PUSH2 0x56e9
00001c1f: PUSH1 0x2a
00001c21: SWAP2
00001c22: CODECOPY
00001c23: PUSH1 0x40
00001c25: ADD
00001c26: SWAP2
00001c27: POP
00001c28: POP
00001c29: PUSH1 0x40
00001c2b: MLOAD
00001c2c: DUP1
00001c2d: SWAP2
00001c2e: SUB
00001c2f: SWAP1
00001c30: REVERT
00001c31: JUMPDEST
00001c32: PUSH1 0x01
00001c34: PUSH1 0x01
00001c36: PUSH1 0xa0
00001c38: SHL
00001c39: SUB
00001c3a: DUP5
00001c3b: AND
00001c3c: PUSH2 0x1c76
00001c3f: JUMPI
00001c40: PUSH1 0x40
00001c42: MLOAD
00001c43: PUSH3 0x461bcd
00001c47: PUSH1 0xe5
00001c49: SHL
00001c4a: DUP2
00001c4b: MSTORE
00001c4c: PUSH1 0x04
00001c4e: ADD
00001c4f: DUP1
00001c50: DUP1
00001c51: PUSH1 0x20
00001c53: ADD
00001c54: DUP3
00001c55: DUP2
00001c56: SUB
00001c57: DUP3
00001c58: MSTORE
00001c59: PUSH1 0x2f
00001c5b: DUP2
00001c5c: MSTORE
00001c5d: PUSH1 0x20
00001c5f: ADD
00001c60: DUP1
00001c61: PUSH2 0x5549
00001c64: PUSH1 0x2f
00001c66: SWAP2
00001c67: CODECOPY
00001c68: PUSH1 0x40
00001c6a: ADD
00001c6b: SWAP2
00001c6c: POP
00001c6d: POP
00001c6e: PUSH1 0x40
00001c70: MLOAD
00001c71: DUP1
00001c72: SWAP2
00001c73: SUB
00001c74: SWAP1
00001c75: REVERT
00001c76: JUMPDEST
00001c77: PUSH1 0x01
00001c79: PUSH1 0x01
00001c7b: PUSH1 0xa0
00001c7d: SHL
00001c7e: SUB
00001c7f: DUP4
00001c80: AND
00001c81: PUSH2 0x1cbb
00001c84: JUMPI
00001c85: PUSH1 0x40
00001c87: MLOAD
00001c88: PUSH3 0x461bcd
00001c8c: PUSH1 0xe5
00001c8e: SHL
00001c8f: DUP2
00001c90: MSTORE
00001c91: PUSH1 0x04
00001c93: ADD
00001c94: DUP1
00001c95: DUP1
00001c96: PUSH1 0x20
00001c98: ADD
00001c99: DUP3
00001c9a: DUP2
00001c9b: SUB
00001c9c: DUP3
00001c9d: MSTORE
00001c9e: PUSH1 0x29
00001ca0: DUP2
00001ca1: MSTORE
00001ca2: PUSH1 0x20
00001ca4: ADD
00001ca5: DUP1
00001ca6: PUSH2 0x5340
00001ca9: PUSH1 0x29
00001cab: SWAP2
00001cac: CODECOPY
00001cad: PUSH1 0x40
00001caf: ADD
00001cb0: SWAP2
00001cb1: POP
00001cb2: POP
00001cb3: PUSH1 0x40
00001cb5: MLOAD
00001cb6: DUP1
00001cb7: SWAP2
00001cb8: SUB
00001cb9: SWAP1
00001cba: REVERT
00001cbb: JUMPDEST
00001cbc: PUSH1 0x01
00001cbe: PUSH1 0x01
00001cc0: PUSH1 0xa0
00001cc2: SHL
00001cc3: SUB
00001cc4: DUP3
00001cc5: AND
00001cc6: PUSH2 0x1d00
00001cc9: JUMPI
00001cca: PUSH1 0x40
00001ccc: MLOAD
00001ccd: PUSH3 0x461bcd
00001cd1: PUSH1 0xe5
00001cd3: SHL
00001cd4: DUP2
00001cd5: MSTORE
00001cd6: PUSH1 0x04
00001cd8: ADD
00001cd9: DUP1
00001cda: DUP1
00001cdb: PUSH1 0x20
00001cdd: ADD
00001cde: DUP3
00001cdf: DUP2
00001ce0: SUB
00001ce1: DUP3
00001ce2: MSTORE
00001ce3: PUSH1 0x2e
00001ce5: DUP2
00001ce6: MSTORE
00001ce7: PUSH1 0x20
00001ce9: ADD
00001cea: DUP1
00001ceb: PUSH2 0x5696
00001cee: PUSH1 0x2e
00001cf0: SWAP2
00001cf1: CODECOPY
00001cf2: PUSH1 0x40
00001cf4: ADD
00001cf5: SWAP2
00001cf6: POP
00001cf7: POP
00001cf8: PUSH1 0x40
00001cfa: MLOAD
00001cfb: DUP1
00001cfc: SWAP2
00001cfd: SUB
00001cfe: SWAP1
00001cff: REVERT
00001d00: JUMPDEST
00001d01: PUSH1 0x01
00001d03: PUSH1 0x01
00001d05: PUSH1 0xa0
00001d07: SHL
00001d08: SUB
00001d09: DUP2
00001d0a: AND
00001d0b: PUSH2 0x1d45
00001d0e: JUMPI
00001d0f: PUSH1 0x40
00001d11: MLOAD
00001d12: PUSH3 0x461bcd
00001d16: PUSH1 0xe5
00001d18: SHL
00001d19: DUP2
00001d1a: MSTORE
00001d1b: PUSH1 0x04
00001d1d: ADD
00001d1e: DUP1
00001d1f: DUP1
00001d20: PUSH1 0x20
00001d22: ADD
00001d23: DUP3
00001d24: DUP2
00001d25: SUB
00001d26: DUP3
00001d27: MSTORE
00001d28: PUSH1 0x28
00001d2a: DUP2
00001d2b: MSTORE
00001d2c: PUSH1 0x20
00001d2e: ADD
00001d2f: DUP1
00001d30: PUSH2 0x58f0
00001d33: PUSH1 0x28
00001d35: SWAP2
00001d36: CODECOPY
00001d37: PUSH1 0x40
00001d39: ADD
00001d3a: SWAP2
00001d3b: POP
00001d3c: POP
00001d3d: PUSH1 0x40
00001d3f: MLOAD
00001d40: DUP1
00001d41: SWAP2
00001d42: SUB
00001d43: SWAP1
00001d44: REVERT
00001d45: JUMPDEST
00001d46: DUP8
00001d47: MLOAD
00001d48: PUSH2 0x1d58
00001d4b: SWAP1
00001d4c: PUSH1 0x04
00001d4e: SWAP1
00001d4f: PUSH1 0x20
00001d51: DUP12
00001d52: ADD
00001d53: SWAP1
00001d54: PUSH2 0x510e
00001d57: JUMP
00001d58: JUMPDEST
00001d59: POP
00001d5a: DUP7
00001d5b: MLOAD
00001d5c: PUSH2 0x1d6c
00001d5f: SWAP1
00001d60: PUSH1 0x05
00001d62: SWAP1
00001d63: PUSH1 0x20
00001d65: DUP11
00001d66: ADD
00001d67: SWAP1
00001d68: PUSH2 0x510e
00001d6b: JUMP
00001d6c: JUMPDEST
00001d6d: POP
00001d6e: DUP6
00001d6f: MLOAD
00001d70: PUSH2 0x1d80
00001d73: SWAP1
00001d74: PUSH1 0x07
00001d76: SWAP1
00001d77: PUSH1 0x20
00001d79: DUP10
00001d7a: ADD
00001d7b: SWAP1
00001d7c: PUSH2 0x510e
00001d7f: JUMP
00001d80: JUMPDEST
00001d81: POP
00001d82: PUSH1 0x06
00001d84: DUP1
00001d85: SLOAD
00001d86: PUSH1 0xff
00001d88: NOT
00001d89: AND
00001d8a: PUSH1 0xff
00001d8c: DUP8
00001d8d: AND
00001d8e: OR
00001d8f: SWAP1
00001d90: SSTORE
00001d91: PUSH1 0x08
00001d93: DUP1
00001d94: SLOAD
00001d95: PUSH1 0x01
00001d97: PUSH1 0x01
00001d99: PUSH1 0xa0
00001d9b: SHL
00001d9c: SUB
00001d9d: NOT
00001d9e: SWAP1
00001d9f: DUP2
00001da0: AND
00001da1: PUSH1 0x01
00001da3: PUSH1 0x01
00001da5: PUSH1 0xa0
00001da7: SHL
00001da8: SUB
00001da9: DUP8
00001daa: DUP2
00001dab: AND
00001dac: SWAP2
00001dad: SWAP1
00001dae: SWAP2
00001daf: OR
00001db0: SWAP1
00001db1: SWAP3
00001db2: SSTORE
00001db3: PUSH1 0x01
00001db5: DUP1
00001db6: SLOAD
00001db7: DUP3
00001db8: AND
00001db9: DUP7
00001dba: DUP5
00001dbb: AND
00001dbc: OR
00001dbd: SWAP1
00001dbe: SSTORE
00001dbf: PUSH1 0x02
00001dc1: DUP1
00001dc2: SLOAD
00001dc3: SWAP1
00001dc4: SWAP2
00001dc5: AND
00001dc6: SWAP2
00001dc7: DUP5
00001dc8: AND
00001dc9: SWAP2
00001dca: SWAP1
00001dcb: SWAP2
00001dcc: OR
00001dcd: SWAP1
00001dce: SSTORE
00001dcf: PUSH2 0x1dd7
00001dd2: DUP2
00001dd3: PUSH2 0x3f84
00001dd6: JUMP
00001dd7: JUMPDEST
00001dd8: POP
00001dd9: POP
00001dda: PUSH1 0x08
00001ddc: DUP1
00001ddd: SLOAD
00001dde: PUSH1 0xff
00001de0: PUSH1 0xa0
00001de2: SHL
00001de3: NOT
00001de4: AND
00001de5: PUSH1 0x01
00001de7: PUSH1 0xa0
00001de9: SHL
00001dea: OR
00001deb: SWAP1
00001dec: SSTORE
00001ded: POP
00001dee: POP
00001def: POP
00001df0: POP
00001df1: POP
00001df2: POP
00001df3: JUMP
00001df4: JUMPDEST
00001df5: PUSH1 0x08
00001df7: SLOAD
00001df8: PUSH1 0x01
00001dfa: PUSH1 0x01
00001dfc: PUSH1 0xa0
00001dfe: SHL
00001dff: SUB
00001e00: AND
00001e01: DUP2
00001e02: JUMP
00001e03: JUMPDEST
00001e04: PUSH1 0x0f
00001e06: SLOAD
00001e07: DUP2
00001e08: JUMP
00001e09: JUMPDEST
00001e0a: PUSH1 0x0e
00001e0c: SLOAD
00001e0d: PUSH1 0x01
00001e0f: PUSH1 0x01
00001e11: PUSH1 0xa0
00001e13: SHL
00001e14: SUB
00001e15: AND
00001e16: SWAP1
00001e17: JUMP
00001e18: JUMPDEST
00001e19: PUSH1 0x01
00001e1b: SLOAD
00001e1c: PUSH1 0x00
00001e1e: SWAP1
00001e1f: PUSH1 0x01
00001e21: PUSH1 0xa0
00001e23: SHL
00001e24: SWAP1
00001e25: DIV
00001e26: PUSH1 0xff
00001e28: AND
00001e29: ISZERO
00001e2a: PUSH2 0x1e6d
00001e2d: JUMPI
00001e2e: PUSH1 0x40
00001e30: DUP1
00001e31: MLOAD
00001e32: PUSH3 0x461bcd
00001e36: PUSH1 0xe5
00001e38: SHL
00001e39: DUP2
00001e3a: MSTORE
00001e3b: PUSH1 0x20
00001e3d: PUSH1 0x04
00001e3f: DUP3
00001e40: ADD
00001e41: MSTORE
00001e42: PUSH1 0x10
00001e44: PUSH1 0x24
00001e46: DUP3
00001e47: ADD
00001e48: MSTORE
00001e49: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00001e5a: PUSH1 0x82
00001e5c: SHL
00001e5d: PUSH1 0x44
00001e5f: DUP3
00001e60: ADD
00001e61: MSTORE
00001e62: SWAP1
00001e63: MLOAD
00001e64: SWAP1
00001e65: DUP2
00001e66: SWAP1
00001e67: SUB
00001e68: PUSH1 0x64
00001e6a: ADD
00001e6b: SWAP1
00001e6c: REVERT
00001e6d: JUMPDEST
00001e6e: CALLER
00001e6f: PUSH1 0x00
00001e71: DUP2
00001e72: DUP2
00001e73: MSTORE
00001e74: PUSH1 0x03
00001e76: PUSH1 0x20
00001e78: MSTORE
00001e79: PUSH1 0x40
00001e7b: SWAP1
00001e7c: KECCAK256
00001e7d: SLOAD
00001e7e: PUSH1 0xff
00001e80: AND
00001e81: ISZERO
00001e82: PUSH2 0x1ebc
00001e85: JUMPI
00001e86: PUSH1 0x40
00001e88: MLOAD
00001e89: PUSH3 0x461bcd
00001e8d: PUSH1 0xe5
00001e8f: SHL
00001e90: DUP2
00001e91: MSTORE
00001e92: PUSH1 0x04
00001e94: ADD
00001e95: DUP1
00001e96: DUP1
00001e97: PUSH1 0x20
00001e99: ADD
00001e9a: DUP3
00001e9b: DUP2
00001e9c: SUB
00001e9d: DUP3
00001e9e: MSTORE
00001e9f: PUSH1 0x25
00001ea1: DUP2
00001ea2: MSTORE
00001ea3: PUSH1 0x20
00001ea5: ADD
00001ea6: DUP1
00001ea7: PUSH2 0x5978
00001eaa: PUSH1 0x25
00001eac: SWAP2
00001ead: CODECOPY
00001eae: PUSH1 0x40
00001eb0: ADD
00001eb1: SWAP2
00001eb2: POP
00001eb3: POP
00001eb4: PUSH1 0x40
00001eb6: MLOAD
00001eb7: DUP1
00001eb8: SWAP2
00001eb9: SUB
00001eba: SWAP1
00001ebb: REVERT
00001ebc: JUMPDEST
00001ebd: PUSH1 0x01
00001ebf: PUSH1 0x01
00001ec1: PUSH1 0xa0
00001ec3: SHL
00001ec4: SUB
00001ec5: DUP5
00001ec6: AND
00001ec7: PUSH1 0x00
00001ec9: SWAP1
00001eca: DUP2
00001ecb: MSTORE
00001ecc: PUSH1 0x03
00001ece: PUSH1 0x20
00001ed0: MSTORE
00001ed1: PUSH1 0x40
00001ed3: SWAP1
00001ed4: KECCAK256
00001ed5: SLOAD
00001ed6: DUP5
00001ed7: SWAP1
00001ed8: PUSH1 0xff
00001eda: AND
00001edb: ISZERO
00001edc: PUSH2 0x1f16
00001edf: JUMPI
00001ee0: PUSH1 0x40
00001ee2: MLOAD
00001ee3: PUSH3 0x461bcd
00001ee7: PUSH1 0xe5
00001ee9: SHL
00001eea: DUP2
00001eeb: MSTORE
00001eec: PUSH1 0x04
00001eee: ADD
00001eef: DUP1
00001ef0: DUP1
00001ef1: PUSH1 0x20
00001ef3: ADD
00001ef4: DUP3
00001ef5: DUP2
00001ef6: SUB
00001ef7: DUP3
00001ef8: MSTORE
00001ef9: PUSH1 0x25
00001efb: DUP2
00001efc: MSTORE
00001efd: PUSH1 0x20
00001eff: ADD
00001f00: DUP1
00001f01: PUSH2 0x5978
00001f04: PUSH1 0x25
00001f06: SWAP2
00001f07: CODECOPY
00001f08: PUSH1 0x40
00001f0a: ADD
00001f0b: SWAP2
00001f0c: POP
00001f0d: POP
00001f0e: PUSH1 0x40
00001f10: MLOAD
00001f11: DUP1
00001f12: SWAP2
00001f13: SUB
00001f14: SWAP1
00001f15: REVERT
00001f16: JUMPDEST
00001f17: PUSH2 0x1354
00001f1a: CALLER
00001f1b: DUP7
00001f1c: DUP7
00001f1d: PUSH2 0x3fa6
00001f20: JUMP
00001f21: JUMPDEST
00001f22: PUSH32 0xc11f80a1da25d1ff3638626bba3d1bd6fc668a173b1e630daf0ddd8704a66a9b
00001f43: SLOAD
00001f44: SWAP1
00001f45: JUMP
00001f46: JUMPDEST
00001f47: PUSH8 0x0de0b6b3a7640000
00001f50: DUP2
00001f51: JUMP
00001f52: JUMPDEST
00001f53: PUSH1 0x01
00001f55: SLOAD
00001f56: PUSH1 0x01
00001f58: PUSH1 0x01
00001f5a: PUSH1 0xa0
00001f5c: SHL
00001f5d: SUB
00001f5e: AND
00001f5f: CALLER
00001f60: EQ
00001f61: PUSH2 0x1f9b
00001f64: JUMPI
00001f65: PUSH1 0x40
00001f67: MLOAD
00001f68: PUSH3 0x461bcd
00001f6c: PUSH1 0xe5
00001f6e: SHL
00001f6f: DUP2
00001f70: MSTORE
00001f71: PUSH1 0x04
00001f73: ADD
00001f74: DUP1
00001f75: DUP1
00001f76: PUSH1 0x20
00001f78: ADD
00001f79: DUP3
00001f7a: DUP2
00001f7b: SUB
00001f7c: DUP3
00001f7d: MSTORE
00001f7e: PUSH1 0x22
00001f80: DUP2
00001f81: MSTORE
00001f82: PUSH1 0x20
00001f84: ADD
00001f85: DUP1
00001f86: PUSH2 0x57ff
00001f89: PUSH1 0x22
00001f8b: SWAP2
00001f8c: CODECOPY
00001f8d: PUSH1 0x40
00001f8f: ADD
00001f90: SWAP2
00001f91: POP
00001f92: POP
00001f93: PUSH1 0x40
00001f95: MLOAD
00001f96: DUP1
00001f97: SWAP2
00001f98: SUB
00001f99: SWAP1
00001f9a: REVERT
00001f9b: JUMPDEST
00001f9c: PUSH1 0x01
00001f9e: DUP1
00001f9f: SLOAD
00001fa0: PUSH1 0xff
00001fa2: PUSH1 0xa0
00001fa4: SHL
00001fa5: NOT
00001fa6: AND
00001fa7: SWAP1
00001fa8: SSTORE
00001fa9: PUSH1 0x40
00001fab: MLOAD
00001fac: PUSH32 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33
00001fcd: SWAP1
00001fce: PUSH1 0x00
00001fd0: SWAP1
00001fd1: LOG1
00001fd2: JUMP
00001fd3: JUMPDEST
00001fd4: PUSH1 0x01
00001fd6: SLOAD
00001fd7: PUSH1 0x00
00001fd9: SWAP1
00001fda: PUSH1 0x01
00001fdc: PUSH1 0xa0
00001fde: SHL
00001fdf: SWAP1
00001fe0: DIV
00001fe1: PUSH1 0xff
00001fe3: AND
00001fe4: ISZERO
00001fe5: PUSH2 0x2028
00001fe8: JUMPI
00001fe9: PUSH1 0x40
00001feb: DUP1
00001fec: MLOAD
00001fed: PUSH3 0x461bcd
00001ff1: PUSH1 0xe5
00001ff3: SHL
00001ff4: DUP2
00001ff5: MSTORE
00001ff6: PUSH1 0x20
00001ff8: PUSH1 0x04
00001ffa: DUP3
00001ffb: ADD
00001ffc: MSTORE
00001ffd: PUSH1 0x10
00001fff: PUSH1 0x24
00002001: DUP3
00002002: ADD
00002003: MSTORE
00002004: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00002015: PUSH1 0x82
00002017: SHL
00002018: PUSH1 0x44
0000201a: DUP3
0000201b: ADD
0000201c: MSTORE
0000201d: SWAP1
0000201e: MLOAD
0000201f: SWAP1
00002020: DUP2
00002021: SWAP1
00002022: SUB
00002023: PUSH1 0x64
00002025: ADD
00002026: SWAP1
00002027: REVERT
00002028: JUMPDEST
00002029: CALLER
0000202a: PUSH1 0x00
0000202c: SWAP1
0000202d: DUP2
0000202e: MSTORE
0000202f: PUSH1 0x0c
00002031: PUSH1 0x20
00002033: MSTORE
00002034: PUSH1 0x40
00002036: SWAP1
00002037: KECCAK256
00002038: SLOAD
00002039: PUSH1 0xff
0000203b: AND
0000203c: PUSH2 0x2076
0000203f: JUMPI
00002040: PUSH1 0x40
00002042: MLOAD
00002043: PUSH3 0x461bcd
00002047: PUSH1 0xe5
00002049: SHL
0000204a: DUP2
0000204b: MSTORE
0000204c: PUSH1 0x04
0000204e: ADD
0000204f: DUP1
00002050: DUP1
00002051: PUSH1 0x20
00002053: ADD
00002054: DUP3
00002055: DUP2
00002056: SUB
00002057: DUP3
00002058: MSTORE
00002059: PUSH1 0x21
0000205b: DUP2
0000205c: MSTORE
0000205d: PUSH1 0x20
0000205f: ADD
00002060: DUP1
00002061: PUSH2 0x5528
00002064: PUSH1 0x21
00002066: SWAP2
00002067: CODECOPY
00002068: PUSH1 0x40
0000206a: ADD
0000206b: SWAP2
0000206c: POP
0000206d: POP
0000206e: PUSH1 0x40
00002070: MLOAD
00002071: DUP1
00002072: SWAP2
00002073: SUB
00002074: SWAP1
00002075: REVERT
00002076: JUMPDEST
00002077: CALLER
00002078: PUSH1 0x00
0000207a: DUP2
0000207b: DUP2
0000207c: MSTORE
0000207d: PUSH1 0x03
0000207f: PUSH1 0x20
00002081: MSTORE
00002082: PUSH1 0x40
00002084: SWAP1
00002085: KECCAK256
00002086: SLOAD
00002087: PUSH1 0xff
00002089: AND
0000208a: ISZERO
0000208b: PUSH2 0x20c5
0000208e: JUMPI
0000208f: PUSH1 0x40
00002091: MLOAD
00002092: PUSH3 0x461bcd
00002096: PUSH1 0xe5
00002098: SHL
00002099: DUP2
0000209a: MSTORE
0000209b: PUSH1 0x04
0000209d: ADD
0000209e: DUP1
0000209f: DUP1
000020a0: PUSH1 0x20
000020a2: ADD
000020a3: DUP3
000020a4: DUP2
000020a5: SUB
000020a6: DUP3
000020a7: MSTORE
000020a8: PUSH1 0x25
000020aa: DUP2
000020ab: MSTORE
000020ac: PUSH1 0x20
000020ae: ADD
000020af: DUP1
000020b0: PUSH2 0x5978
000020b3: PUSH1 0x25
000020b5: SWAP2
000020b6: CODECOPY
000020b7: PUSH1 0x40
000020b9: ADD
000020ba: SWAP2
000020bb: POP
000020bc: POP
000020bd: PUSH1 0x40
000020bf: MLOAD
000020c0: DUP1
000020c1: SWAP2
000020c2: SUB
000020c3: SWAP1
000020c4: REVERT
000020c5: JUMPDEST
000020c6: PUSH1 0x01
000020c8: PUSH1 0x01
000020ca: PUSH1 0xa0
000020cc: SHL
000020cd: SUB
000020ce: DUP5
000020cf: AND
000020d0: PUSH1 0x00
000020d2: SWAP1
000020d3: DUP2
000020d4: MSTORE
000020d5: PUSH1 0x03
000020d7: PUSH1 0x20
000020d9: MSTORE
000020da: PUSH1 0x40
000020dc: SWAP1
000020dd: KECCAK256
000020de: SLOAD
000020df: DUP5
000020e0: SWAP1
000020e1: PUSH1 0xff
000020e3: AND
000020e4: ISZERO
000020e5: PUSH2 0x211f
000020e8: JUMPI
000020e9: PUSH1 0x40
000020eb: MLOAD
000020ec: PUSH3 0x461bcd
000020f0: PUSH1 0xe5
000020f2: SHL
000020f3: DUP2
000020f4: MSTORE
000020f5: PUSH1 0x04
000020f7: ADD
000020f8: DUP1
000020f9: DUP1
000020fa: PUSH1 0x20
000020fc: ADD
000020fd: DUP3
000020fe: DUP2
000020ff: SUB
00002100: DUP3
00002101: MSTORE
00002102: PUSH1 0x25
00002104: DUP2
00002105: MSTORE
00002106: PUSH1 0x20
00002108: ADD
00002109: DUP1
0000210a: PUSH2 0x5978
0000210d: PUSH1 0x25
0000210f: SWAP2
00002110: CODECOPY
00002111: PUSH1 0x40
00002113: ADD
00002114: SWAP2
00002115: POP
00002116: POP
00002117: PUSH1 0x40
00002119: MLOAD
0000211a: DUP1
0000211b: SWAP2
0000211c: SUB
0000211d: SWAP1
0000211e: REVERT
0000211f: JUMPDEST
00002120: PUSH1 0x01
00002122: PUSH1 0x01
00002124: PUSH1 0xa0
00002126: SHL
00002127: SUB
00002128: DUP6
00002129: AND
0000212a: PUSH2 0x2164
0000212d: JUMPI
0000212e: PUSH1 0x40
00002130: MLOAD
00002131: PUSH3 0x461bcd
00002135: PUSH1 0xe5
00002137: SHL
00002138: DUP2
00002139: MSTORE
0000213a: PUSH1 0x04
0000213c: ADD
0000213d: DUP1
0000213e: DUP1
0000213f: PUSH1 0x20
00002141: ADD
00002142: DUP3
00002143: DUP2
00002144: SUB
00002145: DUP3
00002146: MSTORE
00002147: PUSH1 0x23
00002149: DUP2
0000214a: MSTORE
0000214b: PUSH1 0x20
0000214d: ADD
0000214e: DUP1
0000214f: PUSH2 0x52af
00002152: PUSH1 0x23
00002154: SWAP2
00002155: CODECOPY
00002156: PUSH1 0x40
00002158: ADD
00002159: SWAP2
0000215a: POP
0000215b: POP
0000215c: PUSH1 0x40
0000215e: MLOAD
0000215f: DUP1
00002160: SWAP2
00002161: SUB
00002162: SWAP1
00002163: REVERT
00002164: JUMPDEST
00002165: PUSH1 0x00
00002167: DUP5
00002168: GT
00002169: PUSH2 0x21a3
0000216c: JUMPI
0000216d: PUSH1 0x40
0000216f: MLOAD
00002170: PUSH3 0x461bcd
00002174: PUSH1 0xe5
00002176: SHL
00002177: DUP2
00002178: MSTORE
00002179: PUSH1 0x04
0000217b: ADD
0000217c: DUP1
0000217d: DUP1
0000217e: PUSH1 0x20
00002180: ADD
00002181: DUP3
00002182: DUP2
00002183: SUB
00002184: DUP3
00002185: MSTORE
00002186: PUSH1 0x29
00002188: DUP2
00002189: MSTORE
0000218a: PUSH1 0x20
0000218c: ADD
0000218d: DUP1
0000218e: PUSH2 0x5393
00002191: PUSH1 0x29
00002193: SWAP2
00002194: CODECOPY
00002195: PUSH1 0x40
00002197: ADD
00002198: SWAP2
00002199: POP
0000219a: POP
0000219b: PUSH1 0x40
0000219d: MLOAD
0000219e: DUP1
0000219f: SWAP2
000021a0: SUB
000021a1: SWAP1
000021a2: REVERT
000021a3: JUMPDEST
000021a4: CALLER
000021a5: PUSH1 0x00
000021a7: SWAP1
000021a8: DUP2
000021a9: MSTORE
000021aa: PUSH1 0x0d
000021ac: PUSH1 0x20
000021ae: MSTORE
000021af: PUSH1 0x40
000021b1: SWAP1
000021b2: KECCAK256
000021b3: SLOAD
000021b4: DUP1
000021b5: DUP6
000021b6: GT
000021b7: ISZERO
000021b8: PUSH2 0x21f2
000021bb: JUMPI
000021bc: PUSH1 0x40
000021be: MLOAD
000021bf: PUSH3 0x461bcd
000021c3: PUSH1 0xe5
000021c5: SHL
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: PUSH1 0x2e
000021d7: DUP2
000021d8: MSTORE
000021d9: PUSH1 0x20
000021db: ADD
000021dc: DUP1
000021dd: PUSH2 0x57d1
000021e0: PUSH1 0x2e
000021e2: SWAP2
000021e3: CODECOPY
000021e4: PUSH1 0x40
000021e6: ADD
000021e7: SWAP2
000021e8: POP
000021e9: POP
000021ea: PUSH1 0x40
000021ec: MLOAD
000021ed: DUP1
000021ee: SWAP2
000021ef: SUB
000021f0: SWAP1
000021f1: REVERT
000021f2: JUMPDEST
000021f3: PUSH1 0x0b
000021f5: SLOAD
000021f6: PUSH2 0x21ff
000021f9: SWAP1
000021fa: DUP7
000021fb: PUSH2 0x3fe3
000021fe: JUMP
000021ff: JUMPDEST
00002200: PUSH1 0x0b
00002202: SSTORE
00002203: PUSH1 0x01
00002205: PUSH1 0x01
00002207: PUSH1 0xa0
00002209: SHL
0000220a: SUB
0000220b: DUP7
0000220c: AND
0000220d: PUSH1 0x00
0000220f: SWAP1
00002210: DUP2
00002211: MSTORE
00002212: PUSH1 0x09
00002214: PUSH1 0x20
00002216: MSTORE
00002217: PUSH1 0x40
00002219: SWAP1
0000221a: KECCAK256
0000221b: SLOAD
0000221c: PUSH2 0x2225
0000221f: SWAP1
00002220: DUP7
00002221: PUSH2 0x3fe3
00002224: JUMP
00002225: JUMPDEST
00002226: PUSH1 0x01
00002228: PUSH1 0x01
0000222a: PUSH1 0xa0
0000222c: SHL
0000222d: SUB
0000222e: DUP8
0000222f: AND
00002230: PUSH1 0x00
00002232: SWAP1
00002233: DUP2
00002234: MSTORE
00002235: PUSH1 0x09
00002237: PUSH1 0x20
00002239: MSTORE
0000223a: PUSH1 0x40
0000223c: SWAP1
0000223d: KECCAK256
0000223e: SSTORE
0000223f: PUSH2 0x2248
00002242: DUP2
00002243: DUP7
00002244: PUSH2 0x3f3b
00002247: JUMP
00002248: JUMPDEST
00002249: CALLER
0000224a: PUSH1 0x00
0000224c: DUP2
0000224d: DUP2
0000224e: MSTORE
0000224f: PUSH1 0x0d
00002251: PUSH1 0x20
00002253: SWAP1
00002254: DUP2
00002255: MSTORE
00002256: PUSH1 0x40
00002258: SWAP2
00002259: DUP3
0000225a: SWAP1
0000225b: KECCAK256
0000225c: SWAP4
0000225d: SWAP1
0000225e: SWAP4
0000225f: SSTORE
00002260: DUP1
00002261: MLOAD
00002262: DUP9
00002263: DUP2
00002264: MSTORE
00002265: SWAP1
00002266: MLOAD
00002267: PUSH1 0x01
00002269: PUSH1 0x01
0000226b: PUSH1 0xa0
0000226d: SHL
0000226e: SUB
0000226f: DUP11
00002270: AND
00002271: SWAP4
00002272: PUSH32 0xab8530f87dc9b59234c4623bf917212bb2536d647574c8e7e5da92c2ede0c9f8
00002293: SWAP3
00002294: DUP3
00002295: SWAP1
00002296: SUB
00002297: ADD
00002298: SWAP1
00002299: LOG3
0000229a: PUSH1 0x40
0000229c: DUP1
0000229d: MLOAD
0000229e: DUP7
0000229f: DUP2
000022a0: MSTORE
000022a1: SWAP1
000022a2: MLOAD
000022a3: PUSH1 0x01
000022a5: PUSH1 0x01
000022a7: PUSH1 0xa0
000022a9: SHL
000022aa: SUB
000022ab: DUP9
000022ac: AND
000022ad: SWAP2
000022ae: PUSH1 0x00
000022b0: SWAP2
000022b1: PUSH1 0x00
000022b3: DUP1
000022b4: MLOAD
000022b5: PUSH1 0x20
000022b7: PUSH2 0x573a
000022ba: DUP4
000022bb: CODECOPY
000022bc: DUP2
000022bd: MLOAD
000022be: SWAP2
000022bf: MSTORE
000022c0: SWAP2
000022c1: DUP2
000022c2: SWAP1
000022c3: SUB
000022c4: PUSH1 0x20
000022c6: ADD
000022c7: SWAP1
000022c8: LOG3
000022c9: POP
000022ca: PUSH1 0x01
000022cc: SWAP6
000022cd: SWAP5
000022ce: POP
000022cf: POP
000022d0: POP
000022d1: POP
000022d2: POP
000022d3: JUMP
000022d4: JUMPDEST
000022d5: PUSH1 0x01
000022d7: SLOAD
000022d8: PUSH1 0x01
000022da: PUSH1 0xa0
000022dc: SHL
000022dd: SWAP1
000022de: DIV
000022df: PUSH1 0xff
000022e1: AND
000022e2: ISZERO
000022e3: PUSH2 0x2326
000022e6: JUMPI
000022e7: PUSH1 0x40
000022e9: DUP1
000022ea: MLOAD
000022eb: PUSH3 0x461bcd
000022ef: PUSH1 0xe5
000022f1: SHL
000022f2: DUP2
000022f3: MSTORE
000022f4: PUSH1 0x20
000022f6: PUSH1 0x04
000022f8: DUP3
000022f9: ADD
000022fa: MSTORE
000022fb: PUSH1 0x10
000022fd: PUSH1 0x24
000022ff: DUP3
00002300: ADD
00002301: MSTORE
00002302: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00002313: PUSH1 0x82
00002315: SHL
00002316: PUSH1 0x44
00002318: DUP3
00002319: ADD
0000231a: MSTORE
0000231b: SWAP1
0000231c: MLOAD
0000231d: SWAP1
0000231e: DUP2
0000231f: SWAP1
00002320: SUB
00002321: PUSH1 0x64
00002323: ADD
00002324: SWAP1
00002325: REVERT
00002326: JUMPDEST
00002327: CALLER
00002328: PUSH1 0x00
0000232a: SWAP1
0000232b: DUP2
0000232c: MSTORE
0000232d: PUSH1 0x0c
0000232f: PUSH1 0x20
00002331: MSTORE
00002332: PUSH1 0x40
00002334: SWAP1
00002335: KECCAK256
00002336: SLOAD
00002337: PUSH1 0xff
00002339: AND
0000233a: PUSH2 0x2374
0000233d: JUMPI
0000233e: PUSH1 0x40
00002340: MLOAD
00002341: PUSH3 0x461bcd
00002345: PUSH1 0xe5
00002347: SHL
00002348: DUP2
00002349: MSTORE
0000234a: PUSH1 0x04
0000234c: ADD
0000234d: DUP1
0000234e: DUP1
0000234f: PUSH1 0x20
00002351: ADD
00002352: DUP3
00002353: DUP2
00002354: SUB
00002355: DUP3
00002356: MSTORE
00002357: PUSH1 0x21
00002359: DUP2
0000235a: MSTORE
0000235b: PUSH1 0x20
0000235d: ADD
0000235e: DUP1
0000235f: PUSH2 0x5528
00002362: PUSH1 0x21
00002364: SWAP2
00002365: CODECOPY
00002366: PUSH1 0x40
00002368: ADD
00002369: SWAP2
0000236a: POP
0000236b: POP
0000236c: PUSH1 0x40
0000236e: MLOAD
0000236f: DUP1
00002370: SWAP2
00002371: SUB
00002372: SWAP1
00002373: REVERT
00002374: JUMPDEST
00002375: CALLER
00002376: PUSH1 0x00
00002378: DUP2
00002379: DUP2
0000237a: MSTORE
0000237b: PUSH1 0x03
0000237d: PUSH1 0x20
0000237f: MSTORE
00002380: PUSH1 0x40
00002382: SWAP1
00002383: KECCAK256
00002384: SLOAD
00002385: PUSH1 0xff
00002387: AND
00002388: ISZERO
00002389: PUSH2 0x23c3
0000238c: JUMPI
0000238d: PUSH1 0x40
0000238f: MLOAD
00002390: PUSH3 0x461bcd
00002394: PUSH1 0xe5
00002396: SHL
00002397: DUP2
00002398: MSTORE
00002399: PUSH1 0x04
0000239b: ADD
0000239c: DUP1
0000239d: DUP1
0000239e: PUSH1 0x20
000023a0: ADD
000023a1: DUP3
000023a2: DUP2
000023a3: SUB
000023a4: DUP3
000023a5: MSTORE
000023a6: PUSH1 0x25
000023a8: DUP2
000023a9: MSTORE
000023aa: PUSH1 0x20
000023ac: ADD
000023ad: DUP1
000023ae: PUSH2 0x5978
000023b1: PUSH1 0x25
000023b3: SWAP2
000023b4: CODECOPY
000023b5: PUSH1 0x40
000023b7: ADD
000023b8: SWAP2
000023b9: POP
000023ba: POP
000023bb: PUSH1 0x40
000023bd: MLOAD
000023be: DUP1
000023bf: SWAP2
000023c0: SUB
000023c1: SWAP1
000023c2: REVERT
000023c3: JUMPDEST
000023c4: CALLER
000023c5: PUSH1 0x00
000023c7: SWAP1
000023c8: DUP2
000023c9: MSTORE
000023ca: PUSH1 0x09
000023cc: PUSH1 0x20
000023ce: MSTORE
000023cf: PUSH1 0x40
000023d1: SWAP1
000023d2: KECCAK256
000023d3: SLOAD
000023d4: DUP3
000023d5: PUSH2 0x240f
000023d8: JUMPI
000023d9: PUSH1 0x40
000023db: MLOAD
000023dc: PUSH3 0x461bcd
000023e0: PUSH1 0xe5
000023e2: SHL
000023e3: DUP2
000023e4: MSTORE
000023e5: PUSH1 0x04
000023e7: ADD
000023e8: DUP1
000023e9: DUP1
000023ea: PUSH1 0x20
000023ec: ADD
000023ed: DUP3
000023ee: DUP2
000023ef: SUB
000023f0: DUP3
000023f1: MSTORE
000023f2: PUSH1 0x29
000023f4: DUP2
000023f5: MSTORE
000023f6: PUSH1 0x20
000023f8: ADD
000023f9: DUP1
000023fa: PUSH2 0x5286
000023fd: PUSH1 0x29
000023ff: SWAP2
00002400: CODECOPY
00002401: PUSH1 0x40
00002403: ADD
00002404: SWAP2
00002405: POP
00002406: POP
00002407: PUSH1 0x40
00002409: MLOAD
0000240a: DUP1
0000240b: SWAP2
0000240c: SUB
0000240d: SWAP1
0000240e: REVERT
0000240f: JUMPDEST
00002410: DUP3
00002411: DUP2
00002412: LT
00002413: ISZERO
00002414: PUSH2 0x244e
00002417: JUMPI
00002418: PUSH1 0x40
0000241a: MLOAD
0000241b: PUSH3 0x461bcd
0000241f: PUSH1 0xe5
00002421: SHL
00002422: DUP2
00002423: MSTORE
00002424: PUSH1 0x04
00002426: ADD
00002427: DUP1
00002428: DUP1
00002429: PUSH1 0x20
0000242b: ADD
0000242c: DUP3
0000242d: DUP2
0000242e: SUB
0000242f: DUP3
00002430: MSTORE
00002431: PUSH1 0x26
00002433: DUP2
00002434: MSTORE
00002435: PUSH1 0x20
00002437: ADD
00002438: DUP1
00002439: PUSH2 0x5469
0000243c: PUSH1 0x26
0000243e: SWAP2
0000243f: CODECOPY
00002440: PUSH1 0x40
00002442: ADD
00002443: SWAP2
00002444: POP
00002445: POP
00002446: PUSH1 0x40
00002448: MLOAD
00002449: DUP1
0000244a: SWAP2
0000244b: SUB
0000244c: SWAP1
0000244d: REVERT
0000244e: JUMPDEST
0000244f: PUSH1 0x0b
00002451: SLOAD
00002452: PUSH2 0x245b
00002455: SWAP1
00002456: DUP5
00002457: PUSH2 0x3f3b
0000245a: JUMP
0000245b: JUMPDEST
0000245c: PUSH1 0x0b
0000245e: SSTORE
0000245f: PUSH2 0x2468
00002462: DUP2
00002463: DUP5
00002464: PUSH2 0x3f3b
00002467: JUMP
00002468: JUMPDEST
00002469: CALLER
0000246a: PUSH1 0x00
0000246c: DUP2
0000246d: DUP2
0000246e: MSTORE
0000246f: PUSH1 0x09
00002471: PUSH1 0x20
00002473: SWAP1
00002474: DUP2
00002475: MSTORE
00002476: PUSH1 0x40
00002478: SWAP2
00002479: DUP3
0000247a: SWAP1
0000247b: KECCAK256
0000247c: SWAP4
0000247d: SWAP1
0000247e: SWAP4
0000247f: SSTORE
00002480: DUP1
00002481: MLOAD
00002482: DUP7
00002483: DUP2
00002484: MSTORE
00002485: SWAP1
00002486: MLOAD
00002487: SWAP2
00002488: SWAP3
00002489: PUSH32 0xcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5
000024aa: SWAP3
000024ab: SWAP2
000024ac: DUP3
000024ad: SWAP1
000024ae: SUB
000024af: ADD
000024b0: SWAP1
000024b1: LOG2
000024b2: PUSH1 0x40
000024b4: DUP1
000024b5: MLOAD
000024b6: DUP5
000024b7: DUP2
000024b8: MSTORE
000024b9: SWAP1
000024ba: MLOAD
000024bb: PUSH1 0x00
000024bd: SWAP2
000024be: CALLER
000024bf: SWAP2
000024c0: PUSH1 0x00
000024c2: DUP1
000024c3: MLOAD
000024c4: PUSH1 0x20
000024c6: PUSH2 0x573a
000024c9: DUP4
000024ca: CODECOPY
000024cb: DUP2
000024cc: MLOAD
000024cd: SWAP2
000024ce: MSTORE
000024cf: SWAP2
000024d0: DUP2
000024d1: SWAP1
000024d2: SUB
000024d3: PUSH1 0x20
000024d5: ADD
000024d6: SWAP1
000024d7: LOG3
000024d8: POP
000024d9: POP
000024da: POP
000024db: JUMP
000024dc: JUMPDEST
000024dd: PUSH1 0x01
000024df: SLOAD
000024e0: PUSH1 0x00
000024e2: SWAP1
000024e3: PUSH1 0x01
000024e5: PUSH1 0xa0
000024e7: SHL
000024e8: SWAP1
000024e9: DIV
000024ea: PUSH1 0xff
000024ec: AND
000024ed: ISZERO
000024ee: PUSH2 0x2531
000024f1: JUMPI
000024f2: PUSH1 0x40
000024f4: DUP1
000024f5: MLOAD
000024f6: PUSH3 0x461bcd
000024fa: PUSH1 0xe5
000024fc: SHL
000024fd: DUP2
000024fe: MSTORE
000024ff: PUSH1 0x20
00002501: PUSH1 0x04
00002503: DUP3
00002504: ADD
00002505: MSTORE
00002506: PUSH1 0x10
00002508: PUSH1 0x24
0000250a: DUP3
0000250b: ADD
0000250c: MSTORE
0000250d: PUSH16 0x14185d5cd8589b194e881c185d5cd959
0000251e: PUSH1 0x82
00002520: SHL
00002521: PUSH1 0x44
00002523: DUP3
00002524: ADD
00002525: MSTORE
00002526: SWAP1
00002527: MLOAD
00002528: SWAP1
00002529: DUP2
0000252a: SWAP1
0000252b: SUB
0000252c: PUSH1 0x64
0000252e: ADD
0000252f: SWAP1
00002530: REVERT
00002531: JUMPDEST
00002532: PUSH1 0x08
00002534: SLOAD
00002535: PUSH1 0x01
00002537: PUSH1 0x01
00002539: PUSH1 0xa0
0000253b: SHL
0000253c: SUB
0000253d: AND
0000253e: CALLER
0000253f: EQ
00002540: PUSH2 0x257a
00002543: JUMPI
00002544: PUSH1 0x40
00002546: MLOAD
00002547: PUSH3 0x461bcd
0000254b: PUSH1 0xe5
0000254d: SHL
0000254e: DUP2
0000254f: MSTORE
00002550: PUSH1 0x04
00002552: ADD
00002553: DUP1
00002554: DUP1
00002555: PUSH1 0x20
00002557: ADD
00002558: DUP3
00002559: DUP2
0000255a: SUB
0000255b: DUP3
0000255c: MSTORE
0000255d: PUSH1 0x29
0000255f: DUP2
00002560: MSTORE
00002561: PUSH1 0x20
00002563: ADD
00002564: DUP1
00002565: PUSH2 0x53e2
00002568: PUSH1 0x29
0000256a: SWAP2
0000256b: CODECOPY
0000256c: PUSH1 0x40
0000256e: ADD
0000256f: SWAP2
00002570: POP
00002571: POP
00002572: PUSH1 0x40
00002574: MLOAD
00002575: DUP1
00002576: SWAP2
00002577: SUB
00002578: SWAP1
00002579: REVERT
0000257a: JUMPDEST
0000257b: PUSH1 0x01
0000257d: PUSH1 0x01
0000257f: PUSH1 0xa0
00002581: SHL
00002582: SUB
00002583: DUP4
00002584: AND
00002585: PUSH1 0x00
00002587: DUP2
00002588: DUP2
00002589: MSTORE
0000258a: PUSH1 0x0c
0000258c: PUSH1 0x20
0000258e: SWAP1
0000258f: DUP2
00002590: MSTORE
00002591: PUSH1 0x40
00002593: DUP1
00002594: DUP4
00002595: KECCAK256
00002596: DUP1
00002597: SLOAD
00002598: PUSH1 0xff
0000259a: NOT
0000259b: AND
0000259c: PUSH1 0x01
0000259e: OR
0000259f: SWAP1
000025a0: SSTORE
000025a1: PUSH1 0x0d
000025a3: DUP3
000025a4: MSTORE
000025a5: SWAP2
000025a6: DUP3
000025a7: SWAP1
000025a8: KECCAK256
000025a9: DUP6
000025aa: SWAP1
000025ab: SSTORE
000025ac: DUP2
000025ad: MLOAD
000025ae: DUP6
000025af: DUP2
000025b0: MSTORE
000025b1: SWAP2
000025b2: MLOAD
000025b3: PUSH32 0x46980fca912ef9bcdbd36877427b6b90e860769f604e89c0e67720cece530d20
000025d4: SWAP3
000025d5: DUP2
000025d6: SWAP1
000025d7: SUB
000025d8: SWAP1
000025d9: SWAP2
000025da: ADD
000025db: SWAP1
000025dc: LOG2
000025dd: POP
000025de: PUSH1 0x01
000025e0: JUMPDEST
000025e1: SWAP3
000025e2: SWAP2
000025e3: POP
000025e4: POP
000025e5: JUMP
000025e6: JUMPDEST
000025e7: PUSH1 0x40
000025e9: DUP1
000025ea: MLOAD
000025eb: DUP1
000025ec: DUP3
000025ed: ADD
000025ee: SWAP1
000025ef: SWAP2
000025f0: MSTORE
000025f1: PUSH1 0x01
000025f3: DUP2
000025f4: MSTORE
000025f5: PUSH1 0x19
000025f7: PUSH1 0xf9
000025f9: SHL
000025fa: PUSH1 0x20
000025fc: DUP3
000025fd: ADD
000025fe: MSTORE
000025ff: SWAP1
00002600: JUMP
00002601: JUMPDEST
00002602: PUSH1 0x00
00002604: SLOAD
00002605: PUSH1 0x01
00002607: PUSH1 0x01
00002609: PUSH1 0xa0
0000260b: SHL
0000260c: SUB
0000260d: AND
0000260e: CALLER
0000260f: EQ
00002610: PUSH2 0x264e
00002613: JUMPI
00002614: PUSH1 0x40
00002616: DUP1
00002617: MLOAD
00002618: PUSH3 0x461bcd
0000261c: PUSH1 0xe5
0000261e: SHL
0000261f: DUP2
00002620: MSTORE
00002621: PUSH1 0x20
00002623: PUSH1 0x04
00002625: DUP3
00002626: ADD
00002627: DUP2
00002628: SWAP1
00002629: MSTORE
0000262a: PUSH1 0x24
0000262c: DUP3
0000262d: ADD
0000262e: MSTORE
0000262f: PUSH1 0x00
00002631: DUP1
00002632: MLOAD
00002633: PUSH1 0x20
00002635: PUSH2 0x5676
00002638: DUP4
00002639: CODECOPY
0000263a: DUP2
0000263b: MLOAD
0000263c: SWAP2
0000263d: MSTORE
0000263e: PUSH1 0x44
00002640: DUP3
00002641: ADD
00002642: MSTORE
00002643: SWAP1
00002644: MLOAD
00002645: SWAP1
00002646: DUP2
00002647: SWAP1
00002648: SUB
00002649: PUSH1 0x64
0000264b: ADD
0000264c: SWAP1
0000264d: REVERT
0000264e: JUMPDEST
0000264f: PUSH1 0x01
00002651: PUSH1 0x01
00002653: PUSH1 0xa0
00002655: SHL
00002656: SUB
00002657: DUP2
00002658: AND
00002659: PUSH2 0x2693
0000265c: JUMPI
0000265d: PUSH1 0x40
0000265f: MLOAD
00002660: PUSH3 0x461bcd
00002664: PUSH1 0xe5
00002666: SHL
00002667: DUP2
00002668: MSTORE
00002669: PUSH1 0x04
0000266b: ADD
0000266c: DUP1
0000266d: DUP1
0000266e: PUSH1 0x20
00002670: ADD
00002671: DUP3
00002672: DUP2
00002673: SUB
00002674: DUP3
00002675: MSTORE
00002676: PUSH1 0x28
00002678: DUP2
00002679: MSTORE
0000267a: PUSH1 0x20
0000267c: ADD
0000267d: DUP1
0000267e: PUSH2 0x5233
00002681: PUSH1 0x28
00002683: SWAP2
00002684: CODECOPY
00002685: PUSH1 0x40
00002687: ADD
00002688: SWAP2
00002689: POP
0000268a: POP
0000268b: PUSH1 0x40
0000268d: MLOAD
0000268e: DUP1
0000268f: SWAP2
00002690: SUB
00002691: SWAP1
00002692: REVERT
00002693: JUMPDEST
00002694: PUSH1 0x01
00002696: DUP1
00002697: SLOAD
00002698: PUSH1 0x01
0000269a: PUSH1 0x01
0000269c: PUSH1 0xa0
0000269e: SHL
0000269f: SUB
000026a0: NOT
000026a1: AND
000026a2: PUSH1 0x01
000026a4: PUSH1 0x01
000026a6: PUSH1 0xa0
000026a8: SHL
000026a9: SUB
000026aa: DUP4
000026ab: DUP2
000026ac: AND
000026ad: SWAP2
000026ae: SWAP1
000026af: SWAP2
000026b0: OR
000026b1: SWAP2
000026b2: DUP3
000026b3: SWAP1
000026b4: SSTORE
000026b5: PUSH1 0x40
000026b7: MLOAD
000026b8: SWAP2
000026b9: AND
000026ba: SWAP1
000026bb: PUSH32 0xb80482a293ca2e013eda8683c9bd7fc8347cfdaeea5ede58cba46df502c2a604
000026dc: SWAP1
000026dd: PUSH1 0x00
000026df: SWAP1
000026e0: LOG2
000026e1: POP
000026e2: JUMP
000026e3: JUMPDEST
000026e4: PUSH32 0x0c4cbd9d651cd3268ffd0f5d060d43dd4b5ab364969d19e1087a91cffe876c64
00002705: SLOAD
00002706: SWAP1
00002707: JUMP
00002708: JUMPDEST
00002709: PUSH1 0x01
0000270b: SLOAD
0000270c: PUSH1 0x01
0000270e: PUSH1 0xa0
00002710: SHL
00002711: SWAP1
00002712: DIV
00002713: PUSH1 0xff
00002715: AND
00002716: ISZERO
00002717: PUSH2 0x275a
0000271a: JUMPI
0000271b: PUSH1 0x40
0000271d: DUP1
0000271e: MLOAD
0000271f: PUSH3 0x461bcd
00002723: PUSH1 0xe5
00002725: SHL
00002726: DUP2
00002727: MSTORE
00002728: PUSH1 0x20
0000272a: PUSH1 0x04
0000272c: DUP3
0000272d: ADD
0000272e: MSTORE
0000272f: PUSH1 0x10
00002731: PUSH1 0x24
00002733: DUP3
00002734: ADD
00002735: MSTORE
00002736: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00002747: PUSH1 0x82
00002749: SHL
0000274a: PUSH1 0x44
0000274c: DUP3
0000274d: ADD
0000274e: MSTORE
0000274f: SWAP1
00002750: MLOAD
00002751: SWAP1
00002752: DUP2
00002753: SWAP1
00002754: SUB
00002755: PUSH1 0x64
00002757: ADD
00002758: SWAP1
00002759: REVERT
0000275a: JUMPDEST
0000275b: PUSH2 0x2767
0000275e: DUP6
0000275f: DUP6
00002760: DUP6
00002761: DUP6
00002762: DUP6
00002763: PUSH2 0x403d
00002766: JUMP
00002767: JUMPDEST
00002768: POP
00002769: POP
0000276a: POP
0000276b: POP
0000276c: POP
0000276d: JUMP
0000276e: JUMPDEST
0000276f: PUSH1 0x01
00002771: SLOAD
00002772: PUSH1 0x01
00002774: PUSH1 0xa0
00002776: SHL
00002777: SWAP1
00002778: DIV
00002779: PUSH1 0xff
0000277b: AND
0000277c: DUP2
0000277d: JUMP
0000277e: JUMPDEST
0000277f: PUSH1 0x01
00002781: PUSH1 0x01
00002783: PUSH1 0xa0
00002785: SHL
00002786: SUB
00002787: AND
00002788: PUSH1 0x00
0000278a: SWAP1
0000278b: DUP2
0000278c: MSTORE
0000278d: PUSH1 0x09
0000278f: PUSH1 0x20
00002791: MSTORE
00002792: PUSH1 0x40
00002794: SWAP1
00002795: KECCAK256
00002796: SLOAD
00002797: SWAP1
00002798: JUMP
00002799: JUMPDEST
0000279a: PUSH20 0x79973d557cd9dd87eb61e250cc2572c990e20196
000027af: DUP2
000027b0: JUMP
000027b1: JUMPDEST
000027b2: PUSH32 0x5b59a5dd16c9350164998686a568a8e54651caf9b3f56ce4e5d8bfcbfc37e6c2
000027d3: SLOAD
000027d4: SWAP1
000027d5: JUMP
000027d6: JUMPDEST
000027d7: PUSH1 0x01
000027d9: PUSH1 0x01
000027db: PUSH1 0xa0
000027dd: SHL
000027de: SUB
000027df: AND
000027e0: PUSH1 0x00
000027e2: SWAP1
000027e3: DUP2
000027e4: MSTORE
000027e5: PUSH1 0x11
000027e7: PUSH1 0x20
000027e9: MSTORE
000027ea: PUSH1 0x40
000027ec: SWAP1
000027ed: KECCAK256
000027ee: SLOAD
000027ef: SWAP1
000027f0: JUMP
000027f1: JUMPDEST
000027f2: PUSH32 0xd099cc98ef71107a616c4f0f941f04c322d8e254fe26b3c6668db87aae413de8
00002813: DUP2
00002814: JUMP
00002815: JUMPDEST
00002816: PUSH2 0x281d
00002819: PUSH2 0x26e3
0000281c: JUMP
0000281d: JUMPDEST
0000281e: PUSH1 0x01
00002820: PUSH1 0x01
00002822: PUSH1 0xa0
00002824: SHL
00002825: SUB
00002826: AND
00002827: CALLER
00002828: PUSH1 0x01
0000282a: PUSH1 0x01
0000282c: PUSH1 0xa0
0000282e: SHL
0000282f: SUB
00002830: AND
00002831: EQ
00002832: PUSH2 0x286c
00002835: JUMPI
00002836: PUSH1 0x40
00002838: MLOAD
00002839: PUSH3 0x461bcd
0000283d: PUSH1 0xe5
0000283f: SHL
00002840: DUP2
00002841: MSTORE
00002842: PUSH1 0x04
00002844: ADD
00002845: DUP1
00002846: DUP1
00002847: PUSH1 0x20
00002849: ADD
0000284a: DUP3
0000284b: DUP2
0000284c: SUB
0000284d: DUP3
0000284e: MSTORE
0000284f: PUSH1 0x29
00002851: DUP2
00002852: MSTORE
00002853: PUSH1 0x20
00002855: ADD
00002856: DUP1
00002857: PUSH2 0x5874
0000285a: PUSH1 0x29
0000285c: SWAP2
0000285d: CODECOPY
0000285e: PUSH1 0x40
00002860: ADD
00002861: SWAP2
00002862: POP
00002863: POP
00002864: PUSH1 0x40
00002866: MLOAD
00002867: DUP1
00002868: SWAP2
00002869: SUB
0000286a: SWAP1
0000286b: REVERT
0000286c: JUMPDEST
0000286d: PUSH1 0x00
0000286f: DUP2
00002870: GT
00002871: PUSH2 0x28c1
00002874: JUMPI
00002875: PUSH1 0x40
00002877: DUP1
00002878: MLOAD
00002879: PUSH3 0x461bcd
0000287d: PUSH1 0xe5
0000287f: SHL
00002880: DUP2
00002881: MSTORE
00002882: PUSH1 0x20
00002884: PUSH1 0x04
00002886: DUP3
00002887: ADD
00002888: MSTORE
00002889: PUSH1 0x1b
0000288b: PUSH1 0x24
0000288d: DUP3
0000288e: ADD
0000288f: MSTORE
00002890: PUSH32 0x776974686472617720616d6f756e742063616e6e6f7420626520300000000000
000028b1: PUSH1 0x44
000028b3: DUP3
000028b4: ADD
000028b5: MSTORE
000028b6: SWAP1
000028b7: MLOAD
000028b8: SWAP1
000028b9: DUP2
000028ba: SWAP1
000028bb: SUB
000028bc: PUSH1 0x64
000028be: ADD
000028bf: SWAP1
000028c0: REVERT
000028c1: JUMPDEST
000028c2: PUSH1 0x00
000028c4: PUSH2 0x28cb
000028c7: PUSH2 0x347c
000028ca: JUMP
000028cb: JUMPDEST
000028cc: SWAP1
000028cd: POP
000028ce: PUSH1 0x01
000028d0: PUSH1 0x01
000028d2: PUSH1 0xa0
000028d4: SHL
000028d5: SUB
000028d6: DUP2
000028d7: AND
000028d8: PUSH2 0x291b
000028db: JUMPI
000028dc: PUSH1 0x40
000028de: DUP1
000028df: MLOAD
000028e0: PUSH3 0x461bcd
000028e4: PUSH1 0xe5
000028e6: SHL
000028e7: DUP2
000028e8: MSTORE
000028e9: PUSH1 0x20
000028eb: PUSH1 0x04
000028ed: DUP3
000028ee: ADD
000028ef: MSTORE
000028f0: PUSH1 0x10
000028f2: PUSH1 0x24
000028f4: DUP3
000028f5: ADD
000028f6: MSTORE
000028f7: PUSH16 0x3d32b9379032ba342932b1b2b4bb32b9
00002908: PUSH1 0x81
0000290a: SHL
0000290b: PUSH1 0x44
0000290d: DUP3
0000290e: ADD
0000290f: MSTORE
00002910: SWAP1
00002911: MLOAD
00002912: SWAP1
00002913: DUP2
00002914: SWAP1
00002915: SUB
00002916: PUSH1 0x64
00002918: ADD
00002919: SWAP1
0000291a: REVERT
0000291b: JUMPDEST
0000291c: SELFBALANCE
0000291d: DUP3
0000291e: GT
0000291f: ISZERO
00002920: PUSH2 0x2965
00002923: JUMPI
00002924: PUSH1 0x40
00002926: DUP1
00002927: MLOAD
00002928: PUSH3 0x461bcd
0000292c: PUSH1 0xe5
0000292e: SHL
0000292f: DUP2
00002930: MSTORE
00002931: PUSH1 0x20
00002933: PUSH1 0x04
00002935: DUP3
00002936: ADD
00002937: MSTORE
00002938: PUSH1 0x12
0000293a: PUSH1 0x24
0000293c: DUP3
0000293d: ADD
0000293e: MSTORE
0000293f: PUSH18 0x0c4c2d8c2dcc6ca40dcdee840cadcdeeaced
00002952: PUSH1 0x73
00002954: SHL
00002955: PUSH1 0x44
00002957: DUP3
00002958: ADD
00002959: MSTORE
0000295a: SWAP1
0000295b: MLOAD
0000295c: SWAP1
0000295d: DUP2
0000295e: SWAP1
0000295f: SUB
00002960: PUSH1 0x64
00002962: ADD
00002963: SWAP1
00002964: REVERT
00002965: JUMPDEST
00002966: PUSH1 0x40
00002968: MLOAD
00002969: PUSH1 0x00
0000296b: SWAP1
0000296c: PUSH1 0x01
0000296e: PUSH1 0x01
00002970: PUSH1 0xa0
00002972: SHL
00002973: SUB
00002974: DUP4
00002975: AND
00002976: SWAP1
00002977: PUSH2 0x1388
0000297a: SWAP1
0000297b: DUP6
0000297c: SWAP1
0000297d: DUP5
0000297e: DUP2
0000297f: DUP2
00002980: DUP2
00002981: DUP6
00002982: DUP9
00002983: DUP9
00002984: CALL
00002985: SWAP4
00002986: POP
00002987: POP
00002988: POP
00002989: POP
0000298a: RETURNDATASIZE
0000298b: DUP1
0000298c: PUSH1 0x00
0000298e: DUP2
0000298f: EQ
00002990: PUSH2 0x29b5
00002993: JUMPI
00002994: PUSH1 0x40
00002996: MLOAD
00002997: SWAP2
00002998: POP
00002999: PUSH1 0x1f
0000299b: NOT
0000299c: PUSH1 0x3f
0000299e: RETURNDATASIZE
0000299f: ADD
000029a0: AND
000029a1: DUP3
000029a2: ADD
000029a3: PUSH1 0x40
000029a5: MSTORE
000029a6: RETURNDATASIZE
000029a7: DUP3
000029a8: MSTORE
000029a9: RETURNDATASIZE
000029aa: PUSH1 0x00
000029ac: PUSH1 0x20
000029ae: DUP5
000029af: ADD
000029b0: RETURNDATACOPY
000029b1: PUSH2 0x29ba
000029b4: JUMP
000029b5: JUMPDEST
000029b6: PUSH1 0x60
000029b8: SWAP2
000029b9: POP
000029ba: JUMPDEST
000029bb: POP
000029bc: POP
000029bd: SWAP1
000029be: POP
000029bf: DUP1
000029c0: PUSH2 0x2a02
000029c3: JUMPI
000029c4: PUSH1 0x40
000029c6: DUP1
000029c7: MLOAD
000029c8: PUSH3 0x461bcd
000029cc: PUSH1 0xe5
000029ce: SHL
000029cf: DUP2
000029d0: MSTORE
000029d1: PUSH1 0x20
000029d3: PUSH1 0x04
000029d5: DUP3
000029d6: ADD
000029d7: MSTORE
000029d8: PUSH1 0x0f
000029da: PUSH1 0x24
000029dc: DUP3
000029dd: ADD
000029de: MSTORE
000029df: PUSH15 0x1d1c985b9cd9995c8819985a5b1959
000029ef: PUSH1 0x8a
000029f1: SHL
000029f2: PUSH1 0x44
000029f4: DUP3
000029f5: ADD
000029f6: MSTORE
000029f7: SWAP1
000029f8: MLOAD
000029f9: SWAP1
000029fa: DUP2
000029fb: SWAP1
000029fc: SUB
000029fd: PUSH1 0x64
000029ff: ADD
00002a00: SWAP1
00002a01: REVERT
00002a02: JUMPDEST
00002a03: PUSH1 0x40
00002a05: DUP1
00002a06: MLOAD
00002a07: DUP5
00002a08: DUP2
00002a09: MSTORE
00002a0a: SWAP1
00002a0b: MLOAD
00002a0c: PUSH1 0x01
00002a0e: PUSH1 0x01
00002a10: PUSH1 0xa0
00002a12: SHL
00002a13: SUB
00002a14: DUP5
00002a15: AND
00002a16: SWAP2
00002a17: PUSH32 0x721a8f86a9fdbdbdd40ad38486cae32f7ee0a9f16c9df4596ea18bb01853efdf
00002a38: SWAP2
00002a39: SWAP1
00002a3a: DUP2
00002a3b: SWAP1
00002a3c: SUB
00002a3d: PUSH1 0x20
00002a3f: ADD
00002a40: SWAP1
00002a41: LOG2
00002a42: POP
00002a43: POP
00002a44: POP
00002a45: JUMP
00002a46: JUMPDEST
00002a47: PUSH1 0x01
00002a49: SLOAD
00002a4a: PUSH1 0x01
00002a4c: PUSH1 0x01
00002a4e: PUSH1 0xa0
00002a50: SHL
00002a51: SUB
00002a52: AND
00002a53: CALLER
00002a54: EQ
00002a55: PUSH2 0x2a8f
00002a58: JUMPI
00002a59: PUSH1 0x40
00002a5b: MLOAD
00002a5c: PUSH3 0x461bcd
00002a60: PUSH1 0xe5
00002a62: SHL
00002a63: DUP2
00002a64: MSTORE
00002a65: PUSH1 0x04
00002a67: ADD
00002a68: DUP1
00002a69: DUP1
00002a6a: PUSH1 0x20
00002a6c: ADD
00002a6d: DUP3
00002a6e: DUP2
00002a6f: SUB
00002a70: DUP3
00002a71: MSTORE
00002a72: PUSH1 0x22
00002a74: DUP2
00002a75: MSTORE
00002a76: PUSH1 0x20
00002a78: ADD
00002a79: DUP1
00002a7a: PUSH2 0x57ff
00002a7d: PUSH1 0x22
00002a7f: SWAP2
00002a80: CODECOPY
00002a81: PUSH1 0x40
00002a83: ADD
00002a84: SWAP2
00002a85: POP
00002a86: POP
00002a87: PUSH1 0x40
00002a89: MLOAD
00002a8a: DUP1
00002a8b: SWAP2
00002a8c: SUB
00002a8d: SWAP1
00002a8e: REVERT
00002a8f: JUMPDEST
00002a90: PUSH1 0x01
00002a92: DUP1
00002a93: SLOAD
00002a94: PUSH1 0xff
00002a96: PUSH1 0xa0
00002a98: SHL
00002a99: NOT
00002a9a: AND
00002a9b: PUSH1 0x01
00002a9d: PUSH1 0xa0
00002a9f: SHL
00002aa0: OR
00002aa1: SWAP1
00002aa2: SSTORE
00002aa3: PUSH1 0x40
00002aa5: MLOAD
00002aa6: PUSH32 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625
00002ac7: SWAP1
00002ac8: PUSH1 0x00
00002aca: SWAP1
00002acb: LOG1
00002acc: JUMP
00002acd: JUMPDEST
00002ace: PUSH1 0x01
00002ad0: PUSH1 0x01
00002ad2: PUSH1 0xa0
00002ad4: SHL
00002ad5: SUB
00002ad6: AND
00002ad7: PUSH1 0x00
00002ad9: SWAP1
00002ada: DUP2
00002adb: MSTORE
00002adc: PUSH1 0x0d
00002ade: PUSH1 0x20
00002ae0: MSTORE
00002ae1: PUSH1 0x40
00002ae3: SWAP1
00002ae4: KECCAK256
00002ae5: SLOAD
00002ae6: SWAP1
00002ae7: JUMP
00002ae8: JUMPDEST
00002ae9: PUSH1 0x00
00002aeb: SLOAD
00002aec: PUSH1 0x01
00002aee: PUSH1 0x01
00002af0: PUSH1 0xa0
00002af2: SHL
00002af3: SUB
00002af4: AND
00002af5: SWAP1
00002af6: JUMP
00002af7: JUMPDEST
00002af8: PUSH1 0x05
00002afa: DUP1
00002afb: SLOAD
00002afc: PUSH1 0x40
00002afe: DUP1
00002aff: MLOAD
00002b00: PUSH1 0x20
00002b02: PUSH1 0x02
00002b04: PUSH1 0x01
00002b06: DUP6
00002b07: AND
00002b08: ISZERO
00002b09: PUSH2 0x0100
00002b0c: MUL
00002b0d: PUSH1 0x00
00002b0f: NOT
00002b10: ADD
00002b11: SWAP1
00002b12: SWAP5
00002b13: AND
00002b14: SWAP4
00002b15: SWAP1
00002b16: SWAP4
00002b17: DIV
00002b18: PUSH1 0x1f
00002b1a: DUP2
00002b1b: ADD
00002b1c: DUP5
00002b1d: SWAP1
00002b1e: DIV
00002b1f: DUP5
00002b20: MUL
00002b21: DUP3
00002b22: ADD
00002b23: DUP5
00002b24: ADD
00002b25: SWAP1
00002b26: SWAP3
00002b27: MSTORE
00002b28: DUP2
00002b29: DUP2
00002b2a: MSTORE
00002b2b: SWAP3
00002b2c: SWAP2
00002b2d: DUP4
00002b2e: ADD
00002b2f: DUP3
00002b30: DUP3
00002b31: DUP1
00002b32: ISZERO
00002b33: PUSH2 0x1243
00002b36: JUMPI
00002b37: DUP1
00002b38: PUSH1 0x1f
00002b3a: LT
00002b3b: PUSH2 0x1218
00002b3e: JUMPI
00002b3f: PUSH2 0x0100
00002b42: DUP1
00002b43: DUP4
00002b44: SLOAD
00002b45: DIV
00002b46: MUL
00002b47: DUP4
00002b48: MSTORE
00002b49: SWAP2
00002b4a: PUSH1 0x20
00002b4c: ADD
00002b4d: SWAP2
00002b4e: PUSH2 0x1243
00002b51: JUMP
00002b52: JUMPDEST
00002b53: PUSH1 0x00
00002b55: SLOAD
00002b56: PUSH1 0x01
00002b58: PUSH1 0x01
00002b5a: PUSH1 0xa0
00002b5c: SHL
00002b5d: SUB
00002b5e: AND
00002b5f: CALLER
00002b60: EQ
00002b61: PUSH2 0x2b9f
00002b64: JUMPI
00002b65: PUSH1 0x40
00002b67: DUP1
00002b68: MLOAD
00002b69: PUSH3 0x461bcd
00002b6d: PUSH1 0xe5
00002b6f: SHL
00002b70: DUP2
00002b71: MSTORE
00002b72: PUSH1 0x20
00002b74: PUSH1 0x04
00002b76: DUP3
00002b77: ADD
00002b78: DUP2
00002b79: SWAP1
00002b7a: MSTORE
00002b7b: PUSH1 0x24
00002b7d: DUP3
00002b7e: ADD
00002b7f: MSTORE
00002b80: PUSH1 0x00
00002b82: DUP1
00002b83: MLOAD
00002b84: PUSH1 0x20
00002b86: PUSH2 0x5676
00002b89: DUP4
00002b8a: CODECOPY
00002b8b: DUP2
00002b8c: MLOAD
00002b8d: SWAP2
00002b8e: MSTORE
00002b8f: PUSH1 0x44
00002b91: DUP3
00002b92: ADD
00002b93: MSTORE
00002b94: SWAP1
00002b95: MLOAD
00002b96: SWAP1
00002b97: DUP2
00002b98: SWAP1
00002b99: SUB
00002b9a: PUSH1 0x64
00002b9c: ADD
00002b9d: SWAP1
00002b9e: REVERT
00002b9f: JUMPDEST
00002ba0: PUSH1 0x01
00002ba2: PUSH1 0x01
00002ba4: PUSH1 0xa0
00002ba6: SHL
00002ba7: SUB
00002ba8: DUP2
00002ba9: AND
00002baa: PUSH2 0x2be4
00002bad: JUMPI
00002bae: PUSH1 0x40
00002bb0: MLOAD
00002bb1: PUSH3 0x461bcd
00002bb5: PUSH1 0xe5
00002bb7: SHL
00002bb8: DUP2
00002bb9: MSTORE
00002bba: PUSH1 0x04
00002bbc: ADD
00002bbd: DUP1
00002bbe: DUP1
00002bbf: PUSH1 0x20
00002bc1: ADD
00002bc2: DUP3
00002bc3: DUP2
00002bc4: SUB
00002bc5: DUP3
00002bc6: MSTORE
00002bc7: PUSH1 0x31
00002bc9: DUP2
00002bca: MSTORE
00002bcb: PUSH1 0x20
00002bcd: ADD
00002bce: DUP1
00002bcf: PUSH2 0x548f
00002bd2: PUSH1 0x31
00002bd4: SWAP2
00002bd5: CODECOPY
00002bd6: PUSH1 0x40
00002bd8: ADD
00002bd9: SWAP2
00002bda: POP
00002bdb: POP
00002bdc: PUSH1 0x40
00002bde: MLOAD
00002bdf: DUP1
00002be0: SWAP2
00002be1: SUB
00002be2: SWAP1
00002be3: REVERT
00002be4: JUMPDEST
00002be5: PUSH1 0x00
00002be7: PUSH2 0x2bee
00002bea: PUSH2 0x347c
00002bed: JUMP
00002bee: JUMPDEST
00002bef: SWAP1
00002bf0: POP
00002bf1: DUP1
00002bf2: PUSH1 0x01
00002bf4: PUSH1 0x01
00002bf6: PUSH1 0xa0
00002bf8: SHL
00002bf9: SUB
00002bfa: AND
00002bfb: DUP3
00002bfc: PUSH1 0x01
00002bfe: PUSH1 0x01
00002c00: PUSH1 0xa0
00002c02: SHL
00002c03: SUB
00002c04: AND
00002c05: EQ
00002c06: ISZERO
00002c07: PUSH2 0x2c41
00002c0a: JUMPI
00002c0b: PUSH1 0x40
00002c0d: MLOAD
00002c0e: PUSH3 0x461bcd
00002c12: PUSH1 0xe5
00002c14: SHL
00002c15: DUP2
00002c16: MSTORE
00002c17: PUSH1 0x04
00002c19: ADD
00002c1a: DUP1
00002c1b: DUP1
00002c1c: PUSH1 0x20
00002c1e: ADD
00002c1f: DUP3
00002c20: DUP2
00002c21: SUB
00002c22: DUP3
00002c23: MSTORE
00002c24: PUSH1 0x38
00002c26: DUP2
00002c27: MSTORE
00002c28: PUSH1 0x20
00002c2a: ADD
00002c2b: DUP1
00002c2c: PUSH2 0x55c3
00002c2f: PUSH1 0x38
00002c31: SWAP2
00002c32: CODECOPY
00002c33: PUSH1 0x40
00002c35: ADD
00002c36: SWAP2
00002c37: POP
00002c38: POP
00002c39: PUSH1 0x40
00002c3b: MLOAD
00002c3c: DUP1
00002c3d: SWAP2
00002c3e: SUB
00002c3f: SWAP1
00002c40: REVERT
00002c41: JUMPDEST
00002c42: PUSH32 0x5e411b6b1070e58b56dc1f5708b0aeda287cceac2c4d80843e45494e7d6f49cb
00002c63: DUP3
00002c64: DUP2
00002c65: SSTORE
00002c66: PUSH1 0x40
00002c68: MLOAD
00002c69: PUSH1 0x01
00002c6b: PUSH1 0x01
00002c6d: PUSH1 0xa0
00002c6f: SHL
00002c70: SUB
00002c71: DUP1
00002c72: DUP6
00002c73: AND
00002c74: SWAP2
00002c75: SWAP1
00002c76: DUP5
00002c77: AND
00002c78: SWAP1
00002c79: PUSH32 0xc6826629852f9e6617c80ac221f1ea00b4fb5c6ee3d58982080816550c01e599
00002c9a: SWAP1
00002c9b: PUSH1 0x00
00002c9d: SWAP1
00002c9e: LOG3
00002c9f: POP
00002ca0: POP
00002ca1: POP
00002ca2: JUMP
00002ca3: JUMPDEST
00002ca4: PUSH1 0x01
00002ca6: SLOAD
00002ca7: PUSH1 0x01
00002ca9: PUSH1 0x01
00002cab: PUSH1 0xa0
00002cad: SHL
00002cae: SUB
00002caf: AND
00002cb0: DUP2
00002cb1: JUMP
00002cb2: JUMPDEST
00002cb3: CALLER
00002cb4: PUSH1 0x00
00002cb6: SWAP1
00002cb7: DUP2
00002cb8: MSTORE
00002cb9: PUSH1 0x0c
00002cbb: PUSH1 0x20
00002cbd: MSTORE
00002cbe: PUSH1 0x40
00002cc0: DUP2
00002cc1: KECCAK256
00002cc2: SLOAD
00002cc3: PUSH1 0xff
00002cc5: AND
00002cc6: PUSH2 0x2d00
00002cc9: JUMPI
00002cca: PUSH1 0x40
00002ccc: MLOAD
00002ccd: PUSH3 0x461bcd
00002cd1: PUSH1 0xe5
00002cd3: SHL
00002cd4: DUP2
00002cd5: MSTORE
00002cd6: PUSH1 0x04
00002cd8: ADD
00002cd9: DUP1
00002cda: DUP1
00002cdb: PUSH1 0x20
00002cdd: ADD
00002cde: DUP3
00002cdf: DUP2
00002ce0: SUB
00002ce1: DUP3
00002ce2: MSTORE
00002ce3: PUSH1 0x21
00002ce5: DUP2
00002ce6: MSTORE
00002ce7: PUSH1 0x20
00002ce9: ADD
00002cea: DUP1
00002ceb: PUSH2 0x5528
00002cee: PUSH1 0x21
00002cf0: SWAP2
00002cf1: CODECOPY
00002cf2: PUSH1 0x40
00002cf4: ADD
00002cf5: SWAP2
00002cf6: POP
00002cf7: POP
00002cf8: PUSH1 0x40
00002cfa: MLOAD
00002cfb: DUP1
00002cfc: SWAP2
00002cfd: SUB
00002cfe: SWAP1
00002cff: REVERT
00002d00: JUMPDEST
00002d01: CALLER
00002d02: PUSH1 0x00
00002d04: SWAP1
00002d05: DUP2
00002d06: MSTORE
00002d07: PUSH1 0x0d
00002d09: PUSH1 0x20
00002d0b: MSTORE
00002d0c: PUSH1 0x40
00002d0e: SWAP1
00002d0f: KECCAK256
00002d10: SLOAD
00002d11: DUP1
00002d12: DUP4
00002d13: GT
00002d14: ISZERO
00002d15: PUSH2 0x2d4f
00002d18: JUMPI
00002d19: PUSH1 0x40
00002d1b: MLOAD
00002d1c: PUSH3 0x461bcd
00002d20: PUSH1 0xe5
00002d22: SHL
00002d23: DUP2
00002d24: MSTORE
00002d25: PUSH1 0x04
00002d27: ADD
00002d28: DUP1
00002d29: DUP1
00002d2a: PUSH1 0x20
00002d2c: ADD
00002d2d: DUP3
00002d2e: DUP2
00002d2f: SUB
00002d30: DUP3
00002d31: MSTORE
00002d32: PUSH1 0x32
00002d34: DUP2
00002d35: MSTORE
00002d36: PUSH1 0x20
00002d38: ADD
00002d39: DUP1
00002d3a: PUSH2 0x55fb
00002d3d: PUSH1 0x32
00002d3f: SWAP2
00002d40: CODECOPY
00002d41: PUSH1 0x40
00002d43: ADD
00002d44: SWAP2
00002d45: POP
00002d46: POP
00002d47: PUSH1 0x40
00002d49: MLOAD
00002d4a: DUP1
00002d4b: SWAP2
00002d4c: SUB
00002d4d: SWAP1
00002d4e: REVERT
00002d4f: JUMPDEST
00002d50: PUSH2 0x2d59
00002d53: CALLER
00002d54: DUP5
00002d55: PUSH2 0x4167
00002d58: JUMP
00002d59: JUMPDEST
00002d5a: POP
00002d5b: PUSH2 0x2d64
00002d5e: DUP2
00002d5f: DUP5
00002d60: PUSH2 0x3f3b
00002d63: JUMP
00002d64: JUMPDEST
00002d65: CALLER
00002d66: PUSH1 0x00
00002d68: SWAP1
00002d69: DUP2
00002d6a: MSTORE
00002d6b: PUSH1 0x0d
00002d6d: PUSH1 0x20
00002d6f: MSTORE
00002d70: PUSH1 0x40
00002d72: SWAP1
00002d73: KECCAK256
00002d74: SSTORE
00002d75: POP
00002d76: PUSH1 0x01
00002d78: SWAP3
00002d79: SWAP2
00002d7a: POP
00002d7b: POP
00002d7c: JUMP
00002d7d: JUMPDEST
00002d7e: PUSH1 0x00
00002d80: DUP2
00002d81: GT
00002d82: PUSH2 0x2dc6
00002d85: JUMPI
00002d86: PUSH1 0x40
00002d88: DUP1
00002d89: MLOAD
00002d8a: PUSH3 0x461bcd
00002d8e: PUSH1 0xe5
00002d90: SHL
00002d91: DUP2
00002d92: MSTORE
00002d93: PUSH1 0x20
00002d95: PUSH1 0x04
00002d97: DUP3
00002d98: ADD
00002d99: MSTORE
00002d9a: PUSH1 0x11
00002d9c: PUSH1 0x24
00002d9e: DUP3
00002d9f: ADD
00002da0: MSTORE
00002da1: PUSH17 0x1e995c9bc81dd091551208185b5bdd5b9d
00002db3: PUSH1 0x7a
00002db5: SHL
00002db6: PUSH1 0x44
00002db8: DUP3
00002db9: ADD
00002dba: MSTORE
00002dbb: SWAP1
00002dbc: MLOAD
00002dbd: SWAP1
00002dbe: DUP2
00002dbf: SWAP1
00002dc0: SUB
00002dc1: PUSH1 0x64
00002dc3: ADD
00002dc4: SWAP1
00002dc5: REVERT
00002dc6: JUMPDEST
00002dc7: PUSH1 0x00
00002dc9: PUSH2 0x2dec
00002dcc: PUSH8 0x0de0b6b3a7640000
00002dd5: PUSH2 0x2de6
00002dd8: PUSH2 0x2ddf
00002ddb: PUSH2 0x1f21
00002dde: JUMP
00002ddf: JUMPDEST
00002de0: DUP6
00002de1: SWAP1
00002de2: PUSH2 0x43ab
00002de5: JUMP
00002de6: JUMPDEST
00002de7: SWAP1
00002de8: PUSH2 0x4404
00002deb: JUMP
00002dec: JUMPDEST
00002ded: SWAP1
00002dee: POP
00002def: PUSH2 0x2df7
00002df2: DUP3
00002df3: PUSH2 0x4446
00002df6: JUMP
00002df7: JUMPDEST
00002df8: POP
00002df9: PUSH1 0x40
00002dfb: DUP1
00002dfc: MLOAD
00002dfd: PUSH4 0x1d15fca7
00002e02: PUSH1 0xe1
00002e04: SHL
00002e05: DUP2
00002e06: MSTORE
00002e07: CALLER
00002e08: PUSH1 0x04
00002e0a: DUP3
00002e0b: ADD
00002e0c: MSTORE
00002e0d: PUSH1 0x24
00002e0f: DUP2
00002e10: ADD
00002e11: DUP5
00002e12: SWAP1
00002e13: MSTORE
00002e14: PUSH1 0x44
00002e16: DUP2
00002e17: ADD
00002e18: DUP4
00002e19: SWAP1
00002e1a: MSTORE
00002e1b: SWAP1
00002e1c: MLOAD
00002e1d: PUSH20 0x79973d557cd9dd87eb61e250cc2572c990e20196
00002e32: SWAP2
00002e33: PUSH4 0x3a2bf94e
00002e38: SWAP2
00002e39: PUSH1 0x64
00002e3b: DUP1
00002e3c: DUP4
00002e3d: ADD
00002e3e: SWAP3
00002e3f: PUSH1 0x00
00002e41: SWAP3
00002e42: SWAP2
00002e43: SWAP1
00002e44: DUP3
00002e45: SWAP1
00002e46: SUB
00002e47: ADD
00002e48: DUP2
00002e49: DUP4
00002e4a: DUP8
00002e4b: DUP1
00002e4c: EXTCODESIZE
00002e4d: ISZERO
00002e4e: DUP1
00002e4f: ISZERO
00002e50: PUSH2 0x2e58
00002e53: JUMPI
00002e54: PUSH1 0x00
00002e56: DUP1
00002e57: REVERT
00002e58: JUMPDEST
00002e59: POP
00002e5a: GAS
00002e5b: CALL
00002e5c: ISZERO
00002e5d: DUP1
00002e5e: ISZERO
00002e5f: PUSH2 0x2e6c
00002e62: JUMPI
00002e63: RETURNDATASIZE
00002e64: PUSH1 0x00
00002e66: DUP1
00002e67: RETURNDATACOPY
00002e68: RETURNDATASIZE
00002e69: PUSH1 0x00
00002e6b: REVERT
00002e6c: JUMPDEST
00002e6d: POP
00002e6e: POP
00002e6f: PUSH1 0x40
00002e71: DUP1
00002e72: MLOAD
00002e73: DUP6
00002e74: DUP2
00002e75: MSTORE
00002e76: PUSH1 0x20
00002e78: DUP2
00002e79: ADD
00002e7a: DUP6
00002e7b: SWAP1
00002e7c: MSTORE
00002e7d: DUP2
00002e7e: MLOAD
00002e7f: CALLER
00002e80: SWAP5
00002e81: POP
00002e82: PUSH32 0xe1ea856a2dd2650e9ab8bb416f893add49ac95f8364e47b4395a3ada9b0ccc2c
00002ea3: SWAP4
00002ea4: POP
00002ea5: SWAP1
00002ea6: DUP2
00002ea7: SWAP1
00002ea8: SUB
00002ea9: SWAP1
00002eaa: SWAP2
00002eab: ADD
00002eac: SWAP1
00002ead: LOG2
00002eae: POP
00002eaf: POP
00002eb0: JUMP
00002eb1: JUMPDEST
00002eb2: PUSH32 0x7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a2267
00002ed3: DUP2
00002ed4: JUMP
00002ed5: JUMPDEST
00002ed6: PUSH1 0x01
00002ed8: SLOAD
00002ed9: PUSH1 0x00
00002edb: SWAP1
00002edc: PUSH1 0x01
00002ede: PUSH1 0xa0
00002ee0: SHL
00002ee1: SWAP1
00002ee2: DIV
00002ee3: PUSH1 0xff
00002ee5: AND
00002ee6: ISZERO
00002ee7: PUSH2 0x2f2a
00002eea: JUMPI
00002eeb: PUSH1 0x40
00002eed: DUP1
00002eee: MLOAD
00002eef: PUSH3 0x461bcd
00002ef3: PUSH1 0xe5
00002ef5: SHL
00002ef6: DUP2
00002ef7: MSTORE
00002ef8: PUSH1 0x20
00002efa: PUSH1 0x04
00002efc: DUP3
00002efd: ADD
00002efe: MSTORE
00002eff: PUSH1 0x10
00002f01: PUSH1 0x24
00002f03: DUP3
00002f04: ADD
00002f05: MSTORE
00002f06: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00002f17: PUSH1 0x82
00002f19: SHL
00002f1a: PUSH1 0x44
00002f1c: DUP3
00002f1d: ADD
00002f1e: MSTORE
00002f1f: SWAP1
00002f20: MLOAD
00002f21: SWAP1
00002f22: DUP2
00002f23: SWAP1
00002f24: SUB
00002f25: PUSH1 0x64
00002f27: ADD
00002f28: SWAP1
00002f29: REVERT
00002f2a: JUMPDEST
00002f2b: CALLER
00002f2c: PUSH1 0x00
00002f2e: DUP2
00002f2f: DUP2
00002f30: MSTORE
00002f31: PUSH1 0x03
00002f33: PUSH1 0x20
00002f35: MSTORE
00002f36: PUSH1 0x40
00002f38: SWAP1
00002f39: KECCAK256
00002f3a: SLOAD
00002f3b: PUSH1 0xff
00002f3d: AND
00002f3e: ISZERO
00002f3f: PUSH2 0x2f79
00002f42: JUMPI
00002f43: PUSH1 0x40
00002f45: MLOAD
00002f46: PUSH3 0x461bcd
00002f4a: PUSH1 0xe5
00002f4c: SHL
00002f4d: DUP2
00002f4e: MSTORE
00002f4f: PUSH1 0x04
00002f51: ADD
00002f52: DUP1
00002f53: DUP1
00002f54: PUSH1 0x20
00002f56: ADD
00002f57: DUP3
00002f58: DUP2
00002f59: SUB
00002f5a: DUP3
00002f5b: MSTORE
00002f5c: PUSH1 0x25
00002f5e: DUP2
00002f5f: MSTORE
00002f60: PUSH1 0x20
00002f62: ADD
00002f63: DUP1
00002f64: PUSH2 0x5978
00002f67: PUSH1 0x25
00002f69: SWAP2
00002f6a: CODECOPY
00002f6b: PUSH1 0x40
00002f6d: ADD
00002f6e: SWAP2
00002f6f: POP
00002f70: POP
00002f71: PUSH1 0x40
00002f73: MLOAD
00002f74: DUP1
00002f75: SWAP2
00002f76: SUB
00002f77: SWAP1
00002f78: REVERT
00002f79: JUMPDEST
00002f7a: PUSH1 0x01
00002f7c: PUSH1 0x01
00002f7e: PUSH1 0xa0
00002f80: SHL
00002f81: SUB
00002f82: DUP5
00002f83: AND
00002f84: PUSH1 0x00
00002f86: SWAP1
00002f87: DUP2
00002f88: MSTORE
00002f89: PUSH1 0x03
00002f8b: PUSH1 0x20
00002f8d: MSTORE
00002f8e: PUSH1 0x40
00002f90: SWAP1
00002f91: KECCAK256
00002f92: SLOAD
00002f93: DUP5
00002f94: SWAP1
00002f95: PUSH1 0xff
00002f97: AND
00002f98: ISZERO
00002f99: PUSH2 0x2fd3
00002f9c: JUMPI
00002f9d: PUSH1 0x40
00002f9f: MLOAD
00002fa0: PUSH3 0x461bcd
00002fa4: PUSH1 0xe5
00002fa6: SHL
00002fa7: DUP2
00002fa8: MSTORE
00002fa9: PUSH1 0x04
00002fab: ADD
00002fac: DUP1
00002fad: DUP1
00002fae: PUSH1 0x20
00002fb0: ADD
00002fb1: DUP3
00002fb2: DUP2
00002fb3: SUB
00002fb4: DUP3
00002fb5: MSTORE
00002fb6: PUSH1 0x25
00002fb8: DUP2
00002fb9: MSTORE
00002fba: PUSH1 0x20
00002fbc: ADD
00002fbd: DUP1
00002fbe: PUSH2 0x5978
00002fc1: PUSH1 0x25
00002fc3: SWAP2
00002fc4: CODECOPY
00002fc5: PUSH1 0x40
00002fc7: ADD
00002fc8: SWAP2
00002fc9: POP
00002fca: POP
00002fcb: PUSH1 0x40
00002fcd: MLOAD
00002fce: DUP1
00002fcf: SWAP2
00002fd0: SUB
00002fd1: SWAP1
00002fd2: REVERT
00002fd3: JUMPDEST
00002fd4: PUSH2 0x1354
00002fd7: CALLER
00002fd8: DUP7
00002fd9: DUP7
00002fda: PUSH2 0x4634
00002fdd: JUMP
00002fde: JUMPDEST
00002fdf: PUSH1 0x01
00002fe1: SLOAD
00002fe2: PUSH1 0x00
00002fe4: SWAP1
00002fe5: PUSH1 0x01
00002fe7: PUSH1 0xa0
00002fe9: SHL
00002fea: SWAP1
00002feb: DIV
00002fec: PUSH1 0xff
00002fee: AND
00002fef: ISZERO
00002ff0: PUSH2 0x3033
00002ff3: JUMPI
00002ff4: PUSH1 0x40
00002ff6: DUP1
00002ff7: MLOAD
00002ff8: PUSH3 0x461bcd
00002ffc: PUSH1 0xe5
00002ffe: SHL
00002fff: DUP2
00003000: MSTORE
00003001: PUSH1 0x20
00003003: PUSH1 0x04
00003005: DUP3
00003006: ADD
00003007: MSTORE
00003008: PUSH1 0x10
0000300a: PUSH1 0x24
0000300c: DUP3
0000300d: ADD
0000300e: MSTORE
0000300f: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00003020: PUSH1 0x82
00003022: SHL
00003023: PUSH1 0x44
00003025: DUP3
00003026: ADD
00003027: MSTORE
00003028: SWAP1
00003029: MLOAD
0000302a: SWAP1
0000302b: DUP2
0000302c: SWAP1
0000302d: SUB
0000302e: PUSH1 0x64
00003030: ADD
00003031: SWAP1
00003032: REVERT
00003033: JUMPDEST
00003034: CALLER
00003035: PUSH1 0x00
00003037: DUP2
00003038: DUP2
00003039: MSTORE
0000303a: PUSH1 0x03
0000303c: PUSH1 0x20
0000303e: MSTORE
0000303f: PUSH1 0x40
00003041: SWAP1
00003042: KECCAK256
00003043: SLOAD
00003044: PUSH1 0xff
00003046: AND
00003047: ISZERO
00003048: PUSH2 0x3082
0000304b: JUMPI
0000304c: PUSH1 0x40
0000304e: MLOAD
0000304f: PUSH3 0x461bcd
00003053: PUSH1 0xe5
00003055: SHL
00003056: DUP2
00003057: MSTORE
00003058: PUSH1 0x04
0000305a: ADD
0000305b: DUP1
0000305c: DUP1
0000305d: PUSH1 0x20
0000305f: ADD
00003060: DUP3
00003061: DUP2
00003062: SUB
00003063: DUP3
00003064: MSTORE
00003065: PUSH1 0x25
00003067: DUP2
00003068: MSTORE
00003069: PUSH1 0x20
0000306b: ADD
0000306c: DUP1
0000306d: PUSH2 0x5978
00003070: PUSH1 0x25
00003072: SWAP2
00003073: CODECOPY
00003074: PUSH1 0x40
00003076: ADD
00003077: SWAP2
00003078: POP
00003079: POP
0000307a: PUSH1 0x40
0000307c: MLOAD
0000307d: DUP1
0000307e: SWAP2
0000307f: SUB
00003080: SWAP1
00003081: REVERT
00003082: JUMPDEST
00003083: PUSH1 0x01
00003085: PUSH1 0x01
00003087: PUSH1 0xa0
00003089: SHL
0000308a: SUB
0000308b: DUP5
0000308c: AND
0000308d: PUSH1 0x00
0000308f: SWAP1
00003090: DUP2
00003091: MSTORE
00003092: PUSH1 0x03
00003094: PUSH1 0x20
00003096: MSTORE
00003097: PUSH1 0x40
00003099: SWAP1
0000309a: KECCAK256
0000309b: SLOAD
0000309c: DUP5
0000309d: SWAP1
0000309e: PUSH1 0xff
000030a0: AND
000030a1: ISZERO
000030a2: PUSH2 0x30dc
000030a5: JUMPI
000030a6: PUSH1 0x40
000030a8: MLOAD
000030a9: PUSH3 0x461bcd
000030ad: PUSH1 0xe5
000030af: SHL
000030b0: DUP2
000030b1: MSTORE
000030b2: PUSH1 0x04
000030b4: ADD
000030b5: DUP1
000030b6: DUP1
000030b7: PUSH1 0x20
000030b9: ADD
000030ba: DUP3
000030bb: DUP2
000030bc: SUB
000030bd: DUP3
000030be: MSTORE
000030bf: PUSH1 0x25
000030c1: DUP2
000030c2: MSTORE
000030c3: PUSH1 0x20
000030c5: ADD
000030c6: DUP1
000030c7: PUSH2 0x5978
000030ca: PUSH1 0x25
000030cc: SWAP2
000030cd: CODECOPY
000030ce: PUSH1 0x40
000030d0: ADD
000030d1: SWAP2
000030d2: POP
000030d3: POP
000030d4: PUSH1 0x40
000030d6: MLOAD
000030d7: DUP1
000030d8: SWAP2
000030d9: SUB
000030da: SWAP1
000030db: REVERT
000030dc: JUMPDEST
000030dd: PUSH2 0x1354
000030e0: CALLER
000030e1: DUP7
000030e2: DUP7
000030e3: PUSH2 0x3dbe
000030e6: JUMP
000030e7: JUMPDEST
000030e8: PUSH1 0x00
000030ea: SLOAD
000030eb: PUSH1 0x01
000030ed: PUSH1 0x01
000030ef: PUSH1 0xa0
000030f1: SHL
000030f2: SUB
000030f3: AND
000030f4: CALLER
000030f5: EQ
000030f6: PUSH2 0x3134
000030f9: JUMPI
000030fa: PUSH1 0x40
000030fc: DUP1
000030fd: MLOAD
000030fe: PUSH3 0x461bcd
00003102: PUSH1 0xe5
00003104: SHL
00003105: DUP2
00003106: MSTORE
00003107: PUSH1 0x20
00003109: PUSH1 0x04
0000310b: DUP3
0000310c: ADD
0000310d: DUP2
0000310e: SWAP1
0000310f: MSTORE
00003110: PUSH1 0x24
00003112: DUP3
00003113: ADD
00003114: MSTORE
00003115: PUSH1 0x00
00003117: DUP1
00003118: MLOAD
00003119: PUSH1 0x20
0000311b: PUSH2 0x5676
0000311e: DUP4
0000311f: CODECOPY
00003120: DUP2
00003121: MLOAD
00003122: SWAP2
00003123: MSTORE
00003124: PUSH1 0x44
00003126: DUP3
00003127: ADD
00003128: MSTORE
00003129: SWAP1
0000312a: MLOAD
0000312b: SWAP1
0000312c: DUP2
0000312d: SWAP1
0000312e: SUB
0000312f: PUSH1 0x64
00003131: ADD
00003132: SWAP1
00003133: REVERT
00003134: JUMPDEST
00003135: PUSH1 0x01
00003137: PUSH1 0x01
00003139: PUSH1 0xa0
0000313b: SHL
0000313c: SUB
0000313d: DUP2
0000313e: AND
0000313f: PUSH2 0x3179
00003142: JUMPI
00003143: PUSH1 0x40
00003145: MLOAD
00003146: PUSH3 0x461bcd
0000314a: PUSH1 0xe5
0000314c: SHL
0000314d: DUP2
0000314e: MSTORE
0000314f: PUSH1 0x04
00003151: ADD
00003152: DUP1
00003153: DUP1
00003154: PUSH1 0x20
00003156: ADD
00003157: DUP3
00003158: DUP2
00003159: SUB
0000315a: DUP3
0000315b: MSTORE
0000315c: PUSH1 0x2f
0000315e: DUP2
0000315f: MSTORE
00003160: PUSH1 0x20
00003162: ADD
00003163: DUP1
00003164: PUSH2 0x5549
00003167: PUSH1 0x2f
00003169: SWAP2
0000316a: CODECOPY
0000316b: PUSH1 0x40
0000316d: ADD
0000316e: SWAP2
0000316f: POP
00003170: POP
00003171: PUSH1 0x40
00003173: MLOAD
00003174: DUP1
00003175: SWAP2
00003176: SUB
00003177: SWAP1
00003178: REVERT
00003179: JUMPDEST
0000317a: PUSH1 0x08
0000317c: DUP1
0000317d: SLOAD
0000317e: PUSH1 0x01
00003180: PUSH1 0x01
00003182: PUSH1 0xa0
00003184: SHL
00003185: SUB
00003186: NOT
00003187: AND
00003188: PUSH1 0x01
0000318a: PUSH1 0x01
0000318c: PUSH1 0xa0
0000318e: SHL
0000318f: SUB
00003190: DUP4
00003191: DUP2
00003192: AND
00003193: SWAP2
00003194: SWAP1
00003195: SWAP2
00003196: OR
00003197: SWAP2
00003198: DUP3
00003199: SWAP1
0000319a: SSTORE
0000319b: PUSH1 0x40
0000319d: MLOAD
0000319e: SWAP2
0000319f: AND
000031a0: SWAP1
000031a1: PUSH32 0xdb66dfa9c6b8f5226fe9aac7e51897ae8ee94ac31dc70bb6c9900b2574b707e6
000031c2: SWAP1
000031c3: PUSH1 0x00
000031c5: SWAP1
000031c6: LOG2
000031c7: POP
000031c8: JUMP
000031c9: JUMPDEST
000031ca: PUSH1 0x01
000031cc: PUSH1 0x01
000031ce: PUSH1 0xa0
000031d0: SHL
000031d1: SUB
000031d2: AND
000031d3: PUSH1 0x00
000031d5: SWAP1
000031d6: DUP2
000031d7: MSTORE
000031d8: PUSH1 0x0c
000031da: PUSH1 0x20
000031dc: MSTORE
000031dd: PUSH1 0x40
000031df: SWAP1
000031e0: KECCAK256
000031e1: SLOAD
000031e2: PUSH1 0xff
000031e4: AND
000031e5: SWAP1
000031e6: JUMP
000031e7: JUMPDEST
000031e8: PUSH1 0x00
000031ea: SLOAD
000031eb: PUSH1 0x01
000031ed: PUSH1 0x01
000031ef: PUSH1 0xa0
000031f1: SHL
000031f2: SUB
000031f3: AND
000031f4: CALLER
000031f5: EQ
000031f6: PUSH2 0x3234
000031f9: JUMPI
000031fa: PUSH1 0x40
000031fc: DUP1
000031fd: MLOAD
000031fe: PUSH3 0x461bcd
00003202: PUSH1 0xe5
00003204: SHL
00003205: DUP2
00003206: MSTORE
00003207: PUSH1 0x20
00003209: PUSH1 0x04
0000320b: DUP3
0000320c: ADD
0000320d: DUP2
0000320e: SWAP1
0000320f: MSTORE
00003210: PUSH1 0x24
00003212: DUP3
00003213: ADD
00003214: MSTORE
00003215: PUSH1 0x00
00003217: DUP1
00003218: MLOAD
00003219: PUSH1 0x20
0000321b: PUSH2 0x5676
0000321e: DUP4
0000321f: CODECOPY
00003220: DUP2
00003221: MLOAD
00003222: SWAP2
00003223: MSTORE
00003224: PUSH1 0x44
00003226: DUP3
00003227: ADD
00003228: MSTORE
00003229: SWAP1
0000322a: MLOAD
0000322b: SWAP1
0000322c: DUP2
0000322d: SWAP1
0000322e: SUB
0000322f: PUSH1 0x64
00003231: ADD
00003232: SWAP1
00003233: REVERT
00003234: JUMPDEST
00003235: PUSH1 0x01
00003237: PUSH1 0x01
00003239: PUSH1 0xa0
0000323b: SHL
0000323c: SUB
0000323d: DUP2
0000323e: AND
0000323f: PUSH2 0x3279
00003242: JUMPI
00003243: PUSH1 0x40
00003245: MLOAD
00003246: PUSH3 0x461bcd
0000324a: PUSH1 0xe5
0000324c: SHL
0000324d: DUP2
0000324e: MSTORE
0000324f: PUSH1 0x04
00003251: ADD
00003252: DUP1
00003253: DUP1
00003254: PUSH1 0x20
00003256: ADD
00003257: DUP3
00003258: DUP2
00003259: SUB
0000325a: DUP3
0000325b: MSTORE
0000325c: PUSH1 0x2e
0000325e: DUP2
0000325f: MSTORE
00003260: PUSH1 0x20
00003262: ADD
00003263: DUP1
00003264: PUSH2 0x577f
00003267: PUSH1 0x2e
00003269: SWAP2
0000326a: CODECOPY
0000326b: PUSH1 0x40
0000326d: ADD
0000326e: SWAP2
0000326f: POP
00003270: POP
00003271: PUSH1 0x40
00003273: MLOAD
00003274: DUP1
00003275: SWAP2
00003276: SUB
00003277: SWAP1
00003278: REVERT
00003279: JUMPDEST
0000327a: PUSH1 0x00
0000327c: PUSH2 0x3283
0000327f: PUSH2 0x26e3
00003282: JUMP
00003283: JUMPDEST
00003284: SWAP1
00003285: POP
00003286: DUP1
00003287: PUSH1 0x01
00003289: PUSH1 0x01
0000328b: PUSH1 0xa0
0000328d: SHL
0000328e: SUB
0000328f: AND
00003290: DUP3
00003291: PUSH1 0x01
00003293: PUSH1 0x01
00003295: PUSH1 0xa0
00003297: SHL
00003298: SUB
00003299: AND
0000329a: EQ
0000329b: ISZERO
0000329c: PUSH2 0x32d6
0000329f: JUMPI
000032a0: PUSH1 0x40
000032a2: MLOAD
000032a3: PUSH3 0x461bcd
000032a7: PUSH1 0xe5
000032a9: SHL
000032aa: DUP2
000032ab: MSTORE
000032ac: PUSH1 0x04
000032ae: ADD
000032af: DUP1
000032b0: DUP1
000032b1: PUSH1 0x20
000032b3: ADD
000032b4: DUP3
000032b5: DUP2
000032b6: SUB
000032b7: DUP3
000032b8: MSTORE
000032b9: PUSH1 0x32
000032bb: DUP2
000032bc: MSTORE
000032bd: PUSH1 0x20
000032bf: ADD
000032c0: DUP1
000032c1: PUSH2 0x5437
000032c4: PUSH1 0x32
000032c6: SWAP2
000032c7: CODECOPY
000032c8: PUSH1 0x40
000032ca: ADD
000032cb: SWAP2
000032cc: POP
000032cd: POP
000032ce: PUSH1 0x40
000032d0: MLOAD
000032d1: DUP1
000032d2: SWAP2
000032d3: SUB
000032d4: SWAP1
000032d5: REVERT
000032d6: JUMPDEST
000032d7: PUSH32 0x0c4cbd9d651cd3268ffd0f5d060d43dd4b5ab364969d19e1087a91cffe876c64
000032f8: DUP3
000032f9: DUP2
000032fa: SSTORE
000032fb: PUSH1 0x40
000032fd: MLOAD
000032fe: PUSH1 0x01
00003300: PUSH1 0x01
00003302: PUSH1 0xa0
00003304: SHL
00003305: SUB
00003306: DUP1
00003307: DUP6
00003308: AND
00003309: SWAP2
0000330a: SWAP1
0000330b: DUP5
0000330c: AND
0000330d: SWAP1
0000330e: PUSH32 0xfbe5b6cbafb274f445d7fed869dc77a838d8243a22c460de156560e8857cad03
0000332f: SWAP1
00003330: PUSH1 0x00
00003332: SWAP1
00003333: LOG3
00003334: POP
00003335: POP
00003336: POP
00003337: JUMP
00003338: JUMPDEST
00003339: PUSH1 0x00
0000333b: SLOAD
0000333c: PUSH1 0x01
0000333e: PUSH1 0x01
00003340: PUSH1 0xa0
00003342: SHL
00003343: SUB
00003344: AND
00003345: CALLER
00003346: EQ
00003347: PUSH2 0x3385
0000334a: JUMPI
0000334b: PUSH1 0x40
0000334d: DUP1
0000334e: MLOAD
0000334f: PUSH3 0x461bcd
00003353: PUSH1 0xe5
00003355: SHL
00003356: DUP2
00003357: MSTORE
00003358: PUSH1 0x20
0000335a: PUSH1 0x04
0000335c: DUP3
0000335d: ADD
0000335e: DUP2
0000335f: SWAP1
00003360: MSTORE
00003361: PUSH1 0x24
00003363: DUP3
00003364: ADD
00003365: MSTORE
00003366: PUSH1 0x00
00003368: DUP1
00003369: MLOAD
0000336a: PUSH1 0x20
0000336c: PUSH2 0x5676
0000336f: DUP4
00003370: CODECOPY
00003371: DUP2
00003372: MLOAD
00003373: SWAP2
00003374: MSTORE
00003375: PUSH1 0x44
00003377: DUP3
00003378: ADD
00003379: MSTORE
0000337a: SWAP1
0000337b: MLOAD
0000337c: SWAP1
0000337d: DUP2
0000337e: SWAP1
0000337f: SUB
00003380: PUSH1 0x64
00003382: ADD
00003383: SWAP1
00003384: REVERT
00003385: JUMPDEST
00003386: PUSH1 0x01
00003388: PUSH1 0x01
0000338a: PUSH1 0xa0
0000338c: SHL
0000338d: SUB
0000338e: DUP2
0000338f: AND
00003390: PUSH2 0x33ca
00003393: JUMPI
00003394: PUSH1 0x40
00003396: MLOAD
00003397: PUSH3 0x461bcd
0000339b: PUSH1 0xe5
0000339d: SHL
0000339e: DUP2
0000339f: MSTORE
000033a0: PUSH1 0x04
000033a2: ADD
000033a3: DUP1
000033a4: DUP1
000033a5: PUSH1 0x20
000033a7: ADD
000033a8: DUP3
000033a9: DUP2
000033aa: SUB
000033ab: DUP3
000033ac: MSTORE
000033ad: PUSH1 0x32
000033af: DUP2
000033b0: MSTORE
000033b1: PUSH1 0x20
000033b3: ADD
000033b4: DUP1
000033b5: PUSH2 0x5946
000033b8: PUSH1 0x32
000033ba: SWAP2
000033bb: CODECOPY
000033bc: PUSH1 0x40
000033be: ADD
000033bf: SWAP2
000033c0: POP
000033c1: POP
000033c2: PUSH1 0x40
000033c4: MLOAD
000033c5: DUP1
000033c6: SWAP2
000033c7: SUB
000033c8: SWAP1
000033c9: REVERT
000033ca: JUMPDEST
000033cb: PUSH1 0x02
000033cd: DUP1
000033ce: SLOAD
000033cf: PUSH1 0x01
000033d1: PUSH1 0x01
000033d3: PUSH1 0xa0
000033d5: SHL
000033d6: SUB
000033d7: NOT
000033d8: AND
000033d9: PUSH1 0x01
000033db: PUSH1 0x01
000033dd: PUSH1 0xa0
000033df: SHL
000033e0: SUB
000033e1: DUP4
000033e2: DUP2
000033e3: AND
000033e4: SWAP2
000033e5: SWAP1
000033e6: SWAP2
000033e7: OR
000033e8: SWAP2
000033e9: DUP3
000033ea: SWAP1
000033eb: SSTORE
000033ec: PUSH1 0x40
000033ee: MLOAD
000033ef: SWAP2
000033f0: AND
000033f1: SWAP1
000033f2: PUSH32 0xc67398012c111ce95ecb7429b933096c977380ee6c421175a71a4a4c6c88c06e
00003413: SWAP1
00003414: PUSH1 0x00
00003416: SWAP1
00003417: LOG2
00003418: POP
00003419: JUMP
0000341a: JUMPDEST
0000341b: PUSH1 0x0e
0000341d: SLOAD
0000341e: PUSH1 0x01
00003420: PUSH1 0x01
00003422: PUSH1 0xa0
00003424: SHL
00003425: SUB
00003426: AND
00003427: CALLER
00003428: EQ
00003429: PUSH2 0x3463
0000342c: JUMPI
0000342d: PUSH1 0x40
0000342f: MLOAD
00003430: PUSH3 0x461bcd
00003434: PUSH1 0xe5
00003436: SHL
00003437: DUP2
00003438: MSTORE
00003439: PUSH1 0x04
0000343b: ADD
0000343c: DUP1
0000343d: DUP1
0000343e: PUSH1 0x20
00003440: ADD
00003441: DUP3
00003442: DUP2
00003443: SUB
00003444: DUP3
00003445: MSTORE
00003446: PUSH1 0x24
00003448: DUP2
00003449: MSTORE
0000344a: PUSH1 0x20
0000344c: ADD
0000344d: DUP1
0000344e: PUSH2 0x5578
00003451: PUSH1 0x24
00003453: SWAP2
00003454: CODECOPY
00003455: PUSH1 0x40
00003457: ADD
00003458: SWAP2
00003459: POP
0000345a: POP
0000345b: PUSH1 0x40
0000345d: MLOAD
0000345e: DUP1
0000345f: SWAP2
00003460: SUB
00003461: SWAP1
00003462: REVERT
00003463: JUMPDEST
00003464: PUSH2 0x3477
00003467: PUSH1 0x01
00003469: PUSH1 0x01
0000346b: PUSH1 0xa0
0000346d: SHL
0000346e: SUB
0000346f: DUP5
00003470: AND
00003471: DUP4
00003472: DUP4
00003473: PUSH2 0x4683
00003476: JUMP
00003477: JUMPDEST
00003478: POP
00003479: POP
0000347a: POP
0000347b: JUMP
0000347c: JUMPDEST
0000347d: PUSH32 0x5e411b6b1070e58b56dc1f5708b0aeda287cceac2c4d80843e45494e7d6f49cb
0000349e: SLOAD
0000349f: SWAP1
000034a0: JUMP
000034a1: JUMPDEST
000034a2: PUSH2 0x34a9
000034a5: PUSH2 0x27b1
000034a8: JUMP
000034a9: JUMPDEST
000034aa: PUSH1 0x01
000034ac: PUSH1 0x01
000034ae: PUSH1 0xa0
000034b0: SHL
000034b1: SUB
000034b2: AND
000034b3: CALLER
000034b4: PUSH1 0x01
000034b6: PUSH1 0x01
000034b8: PUSH1 0xa0
000034ba: SHL
000034bb: SUB
000034bc: AND
000034bd: EQ
000034be: PUSH2 0x34f8
000034c1: JUMPI
000034c2: PUSH1 0x40
000034c4: MLOAD
000034c5: PUSH3 0x461bcd
000034c9: PUSH1 0xe5
000034cb: SHL
000034cc: DUP2
000034cd: MSTORE
000034ce: PUSH1 0x04
000034d0: ADD
000034d1: DUP1
000034d2: DUP1
000034d3: PUSH1 0x20
000034d5: ADD
000034d6: DUP3
000034d7: DUP2
000034d8: SUB
000034d9: DUP3
000034da: MSTORE
000034db: PUSH1 0x27
000034dd: DUP2
000034de: MSTORE
000034df: PUSH1 0x20
000034e1: ADD
000034e2: DUP1
000034e3: PUSH2 0x559c
000034e6: PUSH1 0x27
000034e8: SWAP2
000034e9: CODECOPY
000034ea: PUSH1 0x40
000034ec: ADD
000034ed: SWAP2
000034ee: POP
000034ef: POP
000034f0: PUSH1 0x40
000034f2: MLOAD
000034f3: DUP1
000034f4: SWAP2
000034f5: SUB
000034f6: SWAP1
000034f7: REVERT
000034f8: JUMPDEST
000034f9: PUSH8 0x0de0b6b3a7640000
00003502: DUP2
00003503: LT
00003504: ISZERO
00003505: PUSH2 0x353f
00003508: JUMPI
00003509: PUSH1 0x40
0000350b: MLOAD
0000350c: PUSH3 0x461bcd
00003510: PUSH1 0xe5
00003512: SHL
00003513: DUP2
00003514: MSTORE
00003515: PUSH1 0x04
00003517: ADD
00003518: DUP1
00003519: DUP1
0000351a: PUSH1 0x20
0000351c: ADD
0000351d: DUP3
0000351e: DUP2
0000351f: SUB
00003520: DUP3
00003521: MSTORE
00003522: PUSH1 0x39
00003524: DUP2
00003525: MSTORE
00003526: PUSH1 0x20
00003528: ADD
00003529: DUP1
0000352a: PUSH2 0x54ef
0000352d: PUSH1 0x39
0000352f: SWAP2
00003530: CODECOPY
00003531: PUSH1 0x40
00003533: ADD
00003534: SWAP2
00003535: POP
00003536: POP
00003537: PUSH1 0x40
00003539: MLOAD
0000353a: DUP1
0000353b: SWAP2
0000353c: SUB
0000353d: SWAP1
0000353e: REVERT
0000353f: JUMPDEST
00003540: PUSH32 0xc11f80a1da25d1ff3638626bba3d1bd6fc668a173b1e630daf0ddd8704a66a9b
00003561: DUP2
00003562: DUP2
00003563: SSTORE
00003564: PUSH1 0x40
00003566: DUP1
00003567: MLOAD
00003568: DUP4
00003569: DUP2
0000356a: MSTORE
0000356b: SWAP1
0000356c: MLOAD
0000356d: CALLER
0000356e: SWAP2
0000356f: PUSH32 0x0b4e9390054347e2a16d95fd8376311b0d2deedecba526e9742bcaa40b059f0b
00003590: SWAP2
00003591: SWAP1
00003592: DUP2
00003593: SWAP1
00003594: SUB
00003595: PUSH1 0x20
00003597: ADD
00003598: SWAP1
00003599: LOG2
0000359a: POP
0000359b: POP
0000359c: JUMP
0000359d: JUMPDEST
0000359e: PUSH1 0x02
000035a0: SLOAD
000035a1: PUSH1 0x01
000035a3: PUSH1 0x01
000035a5: PUSH1 0xa0
000035a7: SHL
000035a8: SUB
000035a9: AND
000035aa: DUP2
000035ab: JUMP
000035ac: JUMPDEST
000035ad: PUSH1 0x01
000035af: SLOAD
000035b0: PUSH1 0x01
000035b2: PUSH1 0xa0
000035b4: SHL
000035b5: SWAP1
000035b6: DIV
000035b7: PUSH1 0xff
000035b9: AND
000035ba: ISZERO
000035bb: PUSH2 0x35fe
000035be: JUMPI
000035bf: PUSH1 0x40
000035c1: DUP1
000035c2: MLOAD
000035c3: PUSH3 0x461bcd
000035c7: PUSH1 0xe5
000035c9: SHL
000035ca: DUP2
000035cb: MSTORE
000035cc: PUSH1 0x20
000035ce: PUSH1 0x04
000035d0: DUP3
000035d1: ADD
000035d2: MSTORE
000035d3: PUSH1 0x10
000035d5: PUSH1 0x24
000035d7: DUP3
000035d8: ADD
000035d9: MSTORE
000035da: PUSH16 0x14185d5cd8589b194e881c185d5cd959
000035eb: PUSH1 0x82
000035ed: SHL
000035ee: PUSH1 0x44
000035f0: DUP3
000035f1: ADD
000035f2: MSTORE
000035f3: SWAP1
000035f4: MLOAD
000035f5: SWAP1
000035f6: DUP2
000035f7: SWAP1
000035f8: SUB
000035f9: PUSH1 0x64
000035fb: ADD
000035fc: SWAP1
000035fd: REVERT
000035fe: JUMPDEST
000035ff: PUSH1 0x01
00003601: PUSH1 0x01
00003603: PUSH1 0xa0
00003605: SHL
00003606: SUB
00003607: DUP8
00003608: AND
00003609: PUSH1 0x00
0000360b: SWAP1
0000360c: DUP2
0000360d: MSTORE
0000360e: PUSH1 0x03
00003610: PUSH1 0x20
00003612: MSTORE
00003613: PUSH1 0x40
00003615: SWAP1
00003616: KECCAK256
00003617: SLOAD
00003618: DUP8
00003619: SWAP1
0000361a: PUSH1 0xff
0000361c: AND
0000361d: ISZERO
0000361e: PUSH2 0x3658
00003621: JUMPI
00003622: PUSH1 0x40
00003624: MLOAD
00003625: PUSH3 0x461bcd
00003629: PUSH1 0xe5
0000362b: SHL
0000362c: DUP2
0000362d: MSTORE
0000362e: PUSH1 0x04
00003630: ADD
00003631: DUP1
00003632: DUP1
00003633: PUSH1 0x20
00003635: ADD
00003636: DUP3
00003637: DUP2
00003638: SUB
00003639: DUP3
0000363a: MSTORE
0000363b: PUSH1 0x25
0000363d: DUP2
0000363e: MSTORE
0000363f: PUSH1 0x20
00003641: ADD
00003642: DUP1
00003643: PUSH2 0x5978
00003646: PUSH1 0x25
00003648: SWAP2
00003649: CODECOPY
0000364a: PUSH1 0x40
0000364c: ADD
0000364d: SWAP2
0000364e: POP
0000364f: POP
00003650: PUSH1 0x40
00003652: MLOAD
00003653: DUP1
00003654: SWAP2
00003655: SUB
00003656: SWAP1
00003657: REVERT
00003658: JUMPDEST
00003659: PUSH1 0x01
0000365b: PUSH1 0x01
0000365d: PUSH1 0xa0
0000365f: SHL
00003660: SUB
00003661: DUP8
00003662: AND
00003663: PUSH1 0x00
00003665: SWAP1
00003666: DUP2
00003667: MSTORE
00003668: PUSH1 0x03
0000366a: PUSH1 0x20
0000366c: MSTORE
0000366d: PUSH1 0x40
0000366f: SWAP1
00003670: KECCAK256
00003671: SLOAD
00003672: DUP8
00003673: SWAP1
00003674: PUSH1 0xff
00003676: AND
00003677: ISZERO
00003678: PUSH2 0x36b2
0000367b: JUMPI
0000367c: PUSH1 0x40
0000367e: MLOAD
0000367f: PUSH3 0x461bcd
00003683: PUSH1 0xe5
00003685: SHL
00003686: DUP2
00003687: MSTORE
00003688: PUSH1 0x04
0000368a: ADD
0000368b: DUP1
0000368c: DUP1
0000368d: PUSH1 0x20
0000368f: ADD
00003690: DUP3
00003691: DUP2
00003692: SUB
00003693: DUP3
00003694: MSTORE
00003695: PUSH1 0x25
00003697: DUP2
00003698: MSTORE
00003699: PUSH1 0x20
0000369b: ADD
0000369c: DUP1
0000369d: PUSH2 0x5978
000036a0: PUSH1 0x25
000036a2: SWAP2
000036a3: CODECOPY
000036a4: PUSH1 0x40
000036a6: ADD
000036a7: SWAP2
000036a8: POP
000036a9: POP
000036aa: PUSH1 0x40
000036ac: MLOAD
000036ad: DUP1
000036ae: SWAP2
000036af: SUB
000036b0: SWAP1
000036b1: REVERT
000036b2: JUMPDEST
000036b3: PUSH2 0x36c1
000036b6: DUP10
000036b7: DUP10
000036b8: DUP10
000036b9: DUP10
000036ba: DUP10
000036bb: DUP10
000036bc: DUP10
000036bd: PUSH2 0x46d5
000036c0: JUMP
000036c1: JUMPDEST
000036c2: POP
000036c3: POP
000036c4: POP
000036c5: POP
000036c6: POP
000036c7: POP
000036c8: POP
000036c9: POP
000036ca: POP
000036cb: JUMP
000036cc: JUMPDEST
000036cd: PUSH1 0x08
000036cf: SLOAD
000036d0: PUSH1 0x01
000036d2: PUSH1 0xa0
000036d4: SHL
000036d5: SWAP1
000036d6: DIV
000036d7: PUSH1 0xff
000036d9: AND
000036da: DUP1
000036db: ISZERO
000036dc: PUSH2 0x36e8
000036df: JUMPI
000036e0: POP
000036e1: PUSH1 0x12
000036e3: SLOAD
000036e4: PUSH1 0xff
000036e6: AND
000036e7: ISZERO
000036e8: JUMPDEST
000036e9: PUSH2 0x36f1
000036ec: JUMPI
000036ed: PUSH1 0x00
000036ef: DUP1
000036f0: REVERT
000036f1: JUMPDEST
000036f2: PUSH2 0x36fd
000036f5: PUSH1 0x04
000036f7: DUP4
000036f8: DUP4
000036f9: PUSH2 0x518c
000036fc: JUMP
000036fd: JUMPDEST
000036fe: POP
000036ff: PUSH2 0x3756
00003702: DUP3
00003703: DUP3
00003704: DUP1
00003705: DUP1
00003706: PUSH1 0x1f
00003708: ADD
00003709: PUSH1 0x20
0000370b: DUP1
0000370c: SWAP2
0000370d: DIV
0000370e: MUL
0000370f: PUSH1 0x20
00003711: ADD
00003712: PUSH1 0x40
00003714: MLOAD
00003715: SWAP1
00003716: DUP2
00003717: ADD
00003718: PUSH1 0x40
0000371a: MSTORE
0000371b: DUP1
0000371c: SWAP4
0000371d: SWAP3
0000371e: SWAP2
0000371f: SWAP1
00003720: DUP2
00003721: DUP2
00003722: MSTORE
00003723: PUSH1 0x20
00003725: ADD
00003726: DUP4
00003727: DUP4
00003728: DUP1
00003729: DUP3
0000372a: DUP5
0000372b: CALLDATACOPY
0000372c: PUSH1 0x00
0000372e: SWAP3
0000372f: ADD
00003730: SWAP2
00003731: SWAP1
00003732: SWAP2
00003733: MSTORE
00003734: POP
00003735: POP
00003736: PUSH1 0x40
00003738: DUP1
00003739: MLOAD
0000373a: DUP1
0000373b: DUP3
0000373c: ADD
0000373d: SWAP1
0000373e: SWAP2
0000373f: MSTORE
00003740: PUSH1 0x01
00003742: DUP2
00003743: MSTORE
00003744: PUSH1 0x19
00003746: PUSH1 0xf9
00003748: SHL
00003749: PUSH1 0x20
0000374b: DUP3
0000374c: ADD
0000374d: MSTORE
0000374e: SWAP2
0000374f: POP
00003750: PUSH2 0x4830
00003753: SWAP1
00003754: POP
00003755: JUMP
00003756: JUMPDEST
00003757: PUSH1 0x0f
00003759: SSTORE
0000375a: POP
0000375b: POP
0000375c: PUSH1 0x12
0000375e: DUP1
0000375f: SLOAD
00003760: PUSH1 0xff
00003762: NOT
00003763: AND
00003764: PUSH1 0x01
00003766: OR
00003767: SWAP1
00003768: SSTORE
00003769: JUMP
0000376a: JUMPDEST
0000376b: PUSH32 0x158b0a9edf7a828aad02f63cd515c68ef2f50ba807396f6d12842833a1597429
0000378c: DUP2
0000378d: JUMP
0000378e: JUMPDEST
0000378f: PUSH1 0x01
00003791: PUSH1 0x01
00003793: PUSH1 0xa0
00003795: SHL
00003796: SUB
00003797: SWAP2
00003798: DUP3
00003799: AND
0000379a: PUSH1 0x00
0000379c: SWAP1
0000379d: DUP2
0000379e: MSTORE
0000379f: PUSH1 0x0a
000037a1: PUSH1 0x20
000037a3: SWAP1
000037a4: DUP2
000037a5: MSTORE
000037a6: PUSH1 0x40
000037a8: DUP1
000037a9: DUP4
000037aa: KECCAK256
000037ab: SWAP4
000037ac: SWAP1
000037ad: SWAP5
000037ae: AND
000037af: DUP3
000037b0: MSTORE
000037b1: SWAP2
000037b2: SWAP1
000037b3: SWAP2
000037b4: MSTORE
000037b5: KECCAK256
000037b6: SLOAD
000037b7: SWAP1
000037b8: JUMP
000037b9: JUMPDEST
000037ba: PUSH1 0x01
000037bc: SLOAD
000037bd: PUSH1 0x01
000037bf: PUSH1 0xa0
000037c1: SHL
000037c2: SWAP1
000037c3: DIV
000037c4: PUSH1 0xff
000037c6: AND
000037c7: ISZERO
000037c8: PUSH2 0x380b
000037cb: JUMPI
000037cc: PUSH1 0x40
000037ce: DUP1
000037cf: MLOAD
000037d0: PUSH3 0x461bcd
000037d4: PUSH1 0xe5
000037d6: SHL
000037d7: DUP2
000037d8: MSTORE
000037d9: PUSH1 0x20
000037db: PUSH1 0x04
000037dd: DUP3
000037de: ADD
000037df: MSTORE
000037e0: PUSH1 0x10
000037e2: PUSH1 0x24
000037e4: DUP3
000037e5: ADD
000037e6: MSTORE
000037e7: PUSH16 0x14185d5cd8589b194e881c185d5cd959
000037f8: PUSH1 0x82
000037fa: SHL
000037fb: PUSH1 0x44
000037fd: DUP3
000037fe: ADD
000037ff: MSTORE
00003800: SWAP1
00003801: MLOAD
00003802: SWAP1
00003803: DUP2
00003804: SWAP1
00003805: SUB
00003806: PUSH1 0x64
00003808: ADD
00003809: SWAP1
0000380a: REVERT
0000380b: JUMPDEST
0000380c: PUSH1 0x01
0000380e: PUSH1 0x01
00003810: PUSH1 0xa0
00003812: SHL
00003813: SUB
00003814: DUP10
00003815: AND
00003816: PUSH1 0x00
00003818: SWAP1
00003819: DUP2
0000381a: MSTORE
0000381b: PUSH1 0x03
0000381d: PUSH1 0x20
0000381f: MSTORE
00003820: PUSH1 0x40
00003822: SWAP1
00003823: KECCAK256
00003824: SLOAD
00003825: DUP10
00003826: SWAP1
00003827: PUSH1 0xff
00003829: AND
0000382a: ISZERO
0000382b: PUSH2 0x3865
0000382e: JUMPI
0000382f: PUSH1 0x40
00003831: MLOAD
00003832: PUSH3 0x461bcd
00003836: PUSH1 0xe5
00003838: SHL
00003839: DUP2
0000383a: MSTORE
0000383b: PUSH1 0x04
0000383d: ADD
0000383e: DUP1
0000383f: DUP1
00003840: PUSH1 0x20
00003842: ADD
00003843: DUP3
00003844: DUP2
00003845: SUB
00003846: DUP3
00003847: MSTORE
00003848: PUSH1 0x25
0000384a: DUP2
0000384b: MSTORE
0000384c: PUSH1 0x20
0000384e: ADD
0000384f: DUP1
00003850: PUSH2 0x5978
00003853: PUSH1 0x25
00003855: SWAP2
00003856: CODECOPY
00003857: PUSH1 0x40
00003859: ADD
0000385a: SWAP2
0000385b: POP
0000385c: POP
0000385d: PUSH1 0x40
0000385f: MLOAD
00003860: DUP1
00003861: SWAP2
00003862: SUB
00003863: SWAP1
00003864: REVERT
00003865: JUMPDEST
00003866: PUSH1 0x01
00003868: PUSH1 0x01
0000386a: PUSH1 0xa0
0000386c: SHL
0000386d: SUB
0000386e: DUP10
0000386f: AND
00003870: PUSH1 0x00
00003872: SWAP1
00003873: DUP2
00003874: MSTORE
00003875: PUSH1 0x03
00003877: PUSH1 0x20
00003879: MSTORE
0000387a: PUSH1 0x40
0000387c: SWAP1
0000387d: KECCAK256
0000387e: SLOAD
0000387f: DUP10
00003880: SWAP1
00003881: PUSH1 0xff
00003883: AND
00003884: ISZERO
00003885: PUSH2 0x38bf
00003888: JUMPI
00003889: PUSH1 0x40
0000388b: MLOAD
0000388c: PUSH3 0x461bcd
00003890: PUSH1 0xe5
00003892: SHL
00003893: DUP2
00003894: MSTORE
00003895: PUSH1 0x04
00003897: ADD
00003898: DUP1
00003899: DUP1
0000389a: PUSH1 0x20
0000389c: ADD
0000389d: DUP3
0000389e: DUP2
0000389f: SUB
000038a0: DUP3
000038a1: MSTORE
000038a2: PUSH1 0x25
000038a4: DUP2
000038a5: MSTORE
000038a6: PUSH1 0x20
000038a8: ADD
000038a9: DUP1
000038aa: PUSH2 0x5978
000038ad: PUSH1 0x25
000038af: SWAP2
000038b0: CODECOPY
000038b1: PUSH1 0x40
000038b3: ADD
000038b4: SWAP2
000038b5: POP
000038b6: POP
000038b7: PUSH1 0x40
000038b9: MLOAD
000038ba: DUP1
000038bb: SWAP2
000038bc: SUB
000038bd: SWAP1
000038be: REVERT
000038bf: JUMPDEST
000038c0: PUSH2 0x38d0
000038c3: DUP12
000038c4: DUP12
000038c5: DUP12
000038c6: DUP12
000038c7: DUP12
000038c8: DUP12
000038c9: DUP12
000038ca: DUP12
000038cb: DUP12
000038cc: PUSH2 0x48a2
000038cf: JUMP
000038d0: JUMPDEST
000038d1: POP
000038d2: POP
000038d3: POP
000038d4: POP
000038d5: POP
000038d6: POP
000038d7: POP
000038d8: POP
000038d9: POP
000038da: POP
000038db: POP
000038dc: JUMP
000038dd: JUMPDEST
000038de: PUSH1 0x07
000038e0: DUP1
000038e1: SLOAD
000038e2: PUSH1 0x40
000038e4: DUP1
000038e5: MLOAD
000038e6: PUSH1 0x20
000038e8: PUSH1 0x02
000038ea: PUSH1 0x01
000038ec: DUP6
000038ed: AND
000038ee: ISZERO
000038ef: PUSH2 0x0100
000038f2: MUL
000038f3: PUSH1 0x00
000038f5: NOT
000038f6: ADD
000038f7: SWAP1
000038f8: SWAP5
000038f9: AND
000038fa: SWAP4
000038fb: SWAP1
000038fc: SWAP4
000038fd: DIV
000038fe: PUSH1 0x1f
00003900: DUP2
00003901: ADD
00003902: DUP5
00003903: SWAP1
00003904: DIV
00003905: DUP5
00003906: MUL
00003907: DUP3
00003908: ADD
00003909: DUP5
0000390a: ADD
0000390b: SWAP1
0000390c: SWAP3
0000390d: MSTORE
0000390e: DUP2
0000390f: DUP2
00003910: MSTORE
00003911: SWAP3
00003912: SWAP2
00003913: DUP4
00003914: ADD
00003915: DUP3
00003916: DUP3
00003917: DUP1
00003918: ISZERO
00003919: PUSH2 0x1243
0000391c: JUMPI
0000391d: DUP1
0000391e: PUSH1 0x1f
00003920: LT
00003921: PUSH2 0x1218
00003924: JUMPI
00003925: PUSH2 0x0100
00003928: DUP1
00003929: DUP4
0000392a: SLOAD
0000392b: DIV
0000392c: MUL
0000392d: DUP4
0000392e: MSTORE
0000392f: SWAP2
00003930: PUSH1 0x20
00003932: ADD
00003933: SWAP2
00003934: PUSH2 0x1243
00003937: JUMP
00003938: JUMPDEST
00003939: PUSH1 0x01
0000393b: PUSH1 0x01
0000393d: PUSH1 0xa0
0000393f: SHL
00003940: SUB
00003941: SWAP2
00003942: SWAP1
00003943: SWAP2
00003944: AND
00003945: PUSH1 0x00
00003947: SWAP1
00003948: DUP2
00003949: MSTORE
0000394a: PUSH1 0x10
0000394c: PUSH1 0x20
0000394e: SWAP1
0000394f: DUP2
00003950: MSTORE
00003951: PUSH1 0x40
00003953: DUP1
00003954: DUP4
00003955: KECCAK256
00003956: SWAP4
00003957: DUP4
00003958: MSTORE
00003959: SWAP3
0000395a: SWAP1
0000395b: MSTORE
0000395c: KECCAK256
0000395d: SLOAD
0000395e: PUSH1 0xff
00003960: AND
00003961: SWAP1
00003962: JUMP
00003963: JUMPDEST
00003964: PUSH1 0x01
00003966: SLOAD
00003967: PUSH1 0x01
00003969: PUSH1 0xa0
0000396b: SHL
0000396c: SWAP1
0000396d: DIV
0000396e: PUSH1 0xff
00003970: AND
00003971: ISZERO
00003972: PUSH2 0x39b5
00003975: JUMPI
00003976: PUSH1 0x40
00003978: DUP1
00003979: MLOAD
0000397a: PUSH3 0x461bcd
0000397e: PUSH1 0xe5
00003980: SHL
00003981: DUP2
00003982: MSTORE
00003983: PUSH1 0x20
00003985: PUSH1 0x04
00003987: DUP3
00003988: ADD
00003989: MSTORE
0000398a: PUSH1 0x10
0000398c: PUSH1 0x24
0000398e: DUP3
0000398f: ADD
00003990: MSTORE
00003991: PUSH16 0x14185d5cd8589b194e881c185d5cd959
000039a2: PUSH1 0x82
000039a4: SHL
000039a5: PUSH1 0x44
000039a7: DUP3
000039a8: ADD
000039a9: MSTORE
000039aa: SWAP1
000039ab: MLOAD
000039ac: SWAP1
000039ad: DUP2
000039ae: SWAP1
000039af: SUB
000039b0: PUSH1 0x64
000039b2: ADD
000039b3: SWAP1
000039b4: REVERT
000039b5: JUMPDEST
000039b6: PUSH1 0x01
000039b8: PUSH1 0x01
000039ba: PUSH1 0xa0
000039bc: SHL
000039bd: SUB
000039be: DUP10
000039bf: AND
000039c0: PUSH1 0x00
000039c2: SWAP1
000039c3: DUP2
000039c4: MSTORE
000039c5: PUSH1 0x03
000039c7: PUSH1 0x20
000039c9: MSTORE
000039ca: PUSH1 0x40
000039cc: SWAP1
000039cd: KECCAK256
000039ce: SLOAD
000039cf: DUP10
000039d0: SWAP1
000039d1: PUSH1 0xff
000039d3: AND
000039d4: ISZERO
000039d5: PUSH2 0x3a0f
000039d8: JUMPI
000039d9: PUSH1 0x40
000039db: MLOAD
000039dc: PUSH3 0x461bcd
000039e0: PUSH1 0xe5
000039e2: SHL
000039e3: DUP2
000039e4: MSTORE
000039e5: PUSH1 0x04
000039e7: ADD
000039e8: DUP1
000039e9: DUP1
000039ea: PUSH1 0x20
000039ec: ADD
000039ed: DUP3
000039ee: DUP2
000039ef: SUB
000039f0: DUP3
000039f1: MSTORE
000039f2: PUSH1 0x25
000039f4: DUP2
000039f5: MSTORE
000039f6: PUSH1 0x20
000039f8: ADD
000039f9: DUP1
000039fa: PUSH2 0x5978
000039fd: PUSH1 0x25
000039ff: SWAP2
00003a00: CODECOPY
00003a01: PUSH1 0x40
00003a03: ADD
00003a04: SWAP2
00003a05: POP
00003a06: POP
00003a07: PUSH1 0x40
00003a09: MLOAD
00003a0a: DUP1
00003a0b: SWAP2
00003a0c: SUB
00003a0d: SWAP1
00003a0e: REVERT
00003a0f: JUMPDEST
00003a10: PUSH1 0x01
00003a12: PUSH1 0x01
00003a14: PUSH1 0xa0
00003a16: SHL
00003a17: SUB
00003a18: DUP10
00003a19: AND
00003a1a: PUSH1 0x00
00003a1c: SWAP1
00003a1d: DUP2
00003a1e: MSTORE
00003a1f: PUSH1 0x03
00003a21: PUSH1 0x20
00003a23: MSTORE
00003a24: PUSH1 0x40
00003a26: SWAP1
00003a27: KECCAK256
00003a28: SLOAD
00003a29: DUP10
00003a2a: SWAP1
00003a2b: PUSH1 0xff
00003a2d: AND
00003a2e: ISZERO
00003a2f: PUSH2 0x3a69
00003a32: JUMPI
00003a33: PUSH1 0x40
00003a35: MLOAD
00003a36: PUSH3 0x461bcd
00003a3a: PUSH1 0xe5
00003a3c: SHL
00003a3d: DUP2
00003a3e: MSTORE
00003a3f: PUSH1 0x04
00003a41: ADD
00003a42: DUP1
00003a43: DUP1
00003a44: PUSH1 0x20
00003a46: ADD
00003a47: DUP3
00003a48: DUP2
00003a49: SUB
00003a4a: DUP3
00003a4b: MSTORE
00003a4c: PUSH1 0x25
00003a4e: DUP2
00003a4f: MSTORE
00003a50: PUSH1 0x20
00003a52: ADD
00003a53: DUP1
00003a54: PUSH2 0x5978
00003a57: PUSH1 0x25
00003a59: SWAP2
00003a5a: CODECOPY
00003a5b: PUSH1 0x40
00003a5d: ADD
00003a5e: SWAP2
00003a5f: POP
00003a60: POP
00003a61: PUSH1 0x40
00003a63: MLOAD
00003a64: DUP1
00003a65: SWAP2
00003a66: SUB
00003a67: SWAP1
00003a68: REVERT
00003a69: JUMPDEST
00003a6a: PUSH2 0x38d0
00003a6d: DUP12
00003a6e: DUP12
00003a6f: DUP12
00003a70: DUP12
00003a71: DUP12
00003a72: DUP12
00003a73: DUP12
00003a74: DUP12
00003a75: DUP12
00003a76: PUSH2 0x49b0
00003a79: JUMP
00003a7a: JUMPDEST
00003a7b: PUSH1 0x00
00003a7d: SLOAD
00003a7e: PUSH1 0x01
00003a80: PUSH1 0x01
00003a82: PUSH1 0xa0
00003a84: SHL
00003a85: SUB
00003a86: AND
00003a87: CALLER
00003a88: EQ
00003a89: PUSH2 0x3ac7
00003a8c: JUMPI
00003a8d: PUSH1 0x40
00003a8f: DUP1
00003a90: MLOAD
00003a91: PUSH3 0x461bcd
00003a95: PUSH1 0xe5
00003a97: SHL
00003a98: DUP2
00003a99: MSTORE
00003a9a: PUSH1 0x20
00003a9c: PUSH1 0x04
00003a9e: DUP3
00003a9f: ADD
00003aa0: DUP2
00003aa1: SWAP1
00003aa2: MSTORE
00003aa3: PUSH1 0x24
00003aa5: DUP3
00003aa6: ADD
00003aa7: MSTORE
00003aa8: PUSH1 0x00
00003aaa: DUP1
00003aab: MLOAD
00003aac: PUSH1 0x20
00003aae: PUSH2 0x5676
00003ab1: DUP4
00003ab2: CODECOPY
00003ab3: DUP2
00003ab4: MLOAD
00003ab5: SWAP2
00003ab6: MSTORE
00003ab7: PUSH1 0x44
00003ab9: DUP3
00003aba: ADD
00003abb: MSTORE
00003abc: SWAP1
00003abd: MLOAD
00003abe: SWAP1
00003abf: DUP2
00003ac0: SWAP1
00003ac1: SUB
00003ac2: PUSH1 0x64
00003ac4: ADD
00003ac5: SWAP1
00003ac6: REVERT
00003ac7: JUMPDEST
00003ac8: PUSH1 0x01
00003aca: PUSH1 0x01
00003acc: PUSH1 0xa0
00003ace: SHL
00003acf: SUB
00003ad0: DUP2
00003ad1: AND
00003ad2: PUSH2 0x3b0c
00003ad5: JUMPI
00003ad6: PUSH1 0x40
00003ad8: MLOAD
00003ad9: PUSH3 0x461bcd
00003add: PUSH1 0xe5
00003adf: SHL
00003ae0: DUP2
00003ae1: MSTORE
00003ae2: PUSH1 0x04
00003ae4: ADD
00003ae5: DUP1
00003ae6: DUP1
00003ae7: PUSH1 0x20
00003ae9: ADD
00003aea: DUP3
00003aeb: DUP2
00003aec: SUB
00003aed: DUP3
00003aee: MSTORE
00003aef: PUSH1 0x26
00003af1: DUP2
00003af2: MSTORE
00003af3: PUSH1 0x20
00003af5: ADD
00003af6: DUP1
00003af7: PUSH2 0x52f8
00003afa: PUSH1 0x26
00003afc: SWAP2
00003afd: CODECOPY
00003afe: PUSH1 0x40
00003b00: ADD
00003b01: SWAP2
00003b02: POP
00003b03: POP
00003b04: PUSH1 0x40
00003b06: MLOAD
00003b07: DUP1
00003b08: SWAP2
00003b09: SUB
00003b0a: SWAP1
00003b0b: REVERT
00003b0c: JUMPDEST
00003b0d: PUSH1 0x00
00003b0f: SLOAD
00003b10: PUSH1 0x40
00003b12: DUP1
00003b13: MLOAD
00003b14: PUSH1 0x01
00003b16: PUSH1 0x01
00003b18: PUSH1 0xa0
00003b1a: SHL
00003b1b: SUB
00003b1c: SWAP3
00003b1d: DUP4
00003b1e: AND
00003b1f: DUP2
00003b20: MSTORE
00003b21: SWAP2
00003b22: DUP4
00003b23: AND
00003b24: PUSH1 0x20
00003b26: DUP4
00003b27: ADD
00003b28: MSTORE
00003b29: DUP1
00003b2a: MLOAD
00003b2b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00003b4c: SWAP3
00003b4d: DUP2
00003b4e: SWAP1
00003b4f: SUB
00003b50: SWAP1
00003b51: SWAP2
00003b52: ADD
00003b53: SWAP1
00003b54: LOG1
00003b55: PUSH2 0x3b5d
00003b58: DUP2
00003b59: PUSH2 0x3f84
00003b5c: JUMP
00003b5d: JUMPDEST
00003b5e: POP
00003b5f: JUMP
00003b60: JUMPDEST
00003b61: PUSH1 0x00
00003b63: CALLVALUE
00003b64: GT
00003b65: PUSH2 0x3ba7
00003b68: JUMPI
00003b69: PUSH1 0x40
00003b6b: DUP1
00003b6c: MLOAD
00003b6d: PUSH3 0x461bcd
00003b71: PUSH1 0xe5
00003b73: SHL
00003b74: DUP2
00003b75: MSTORE
00003b76: PUSH1 0x20
00003b78: PUSH1 0x04
00003b7a: DUP3
00003b7b: ADD
00003b7c: MSTORE
00003b7d: PUSH1 0x0f
00003b7f: PUSH1 0x24
00003b81: DUP3
00003b82: ADD
00003b83: MSTORE
00003b84: PUSH15 0x1e995c9bc811551208185b5bdd5b9d
00003b94: PUSH1 0x8a
00003b96: SHL
00003b97: PUSH1 0x44
00003b99: DUP3
00003b9a: ADD
00003b9b: MSTORE
00003b9c: SWAP1
00003b9d: MLOAD
00003b9e: SWAP1
00003b9f: DUP2
00003ba0: SWAP1
00003ba1: SUB
00003ba2: PUSH1 0x64
00003ba4: ADD
00003ba5: SWAP1
00003ba6: REVERT
00003ba7: JUMPDEST
00003ba8: PUSH1 0x00
00003baa: PUSH2 0x3bc6
00003bad: PUSH2 0x3bb4
00003bb0: PUSH2 0x1f21
00003bb3: JUMP
00003bb4: JUMPDEST
00003bb5: PUSH2 0x2de6
00003bb8: CALLVALUE
00003bb9: PUSH8 0x0de0b6b3a7640000
00003bc2: PUSH2 0x43ab
00003bc5: JUMP
00003bc6: JUMPDEST
00003bc7: SWAP1
00003bc8: POP
00003bc9: PUSH2 0x3bd2
00003bcc: CALLER
00003bcd: DUP3
00003bce: PUSH2 0x4167
00003bd1: JUMP
00003bd2: JUMPDEST
00003bd3: POP
00003bd4: PUSH1 0x40
00003bd6: DUP1
00003bd7: MLOAD
00003bd8: CALLVALUE
00003bd9: DUP2
00003bda: MSTORE
00003bdb: PUSH1 0x20
00003bdd: DUP2
00003bde: ADD
00003bdf: DUP4
00003be0: SWAP1
00003be1: MSTORE
00003be2: DUP2
00003be3: MLOAD
00003be4: PUSH1 0x01
00003be6: PUSH1 0x01
00003be8: PUSH1 0xa0
00003bea: SHL
00003beb: SUB
00003bec: DUP6
00003bed: AND
00003bee: SWAP3
00003bef: CALLER
00003bf0: SWAP3
00003bf1: PUSH32 0xe32c4b34261b430739ef30d727d062f9fdd6410be2080e6fd875a6015f40de83
00003c12: SWAP3
00003c13: SWAP1
00003c14: DUP2
00003c15: SWAP1
00003c16: SUB
00003c17: SWAP1
00003c18: SWAP2
00003c19: ADD
00003c1a: SWAP1
00003c1b: LOG3
00003c1c: POP
00003c1d: POP
00003c1e: JUMP
00003c1f: JUMPDEST
00003c20: PUSH1 0x02
00003c22: SLOAD
00003c23: PUSH1 0x01
00003c25: PUSH1 0x01
00003c27: PUSH1 0xa0
00003c29: SHL
00003c2a: SUB
00003c2b: AND
00003c2c: CALLER
00003c2d: EQ
00003c2e: PUSH2 0x3c68
00003c31: JUMPI
00003c32: PUSH1 0x40
00003c34: MLOAD
00003c35: PUSH3 0x461bcd
00003c39: PUSH1 0xe5
00003c3b: SHL
00003c3c: DUP2
00003c3d: MSTORE
00003c3e: PUSH1 0x04
00003c40: ADD
00003c41: DUP1
00003c42: DUP1
00003c43: PUSH1 0x20
00003c45: ADD
00003c46: DUP3
00003c47: DUP2
00003c48: SUB
00003c49: DUP3
00003c4a: MSTORE
00003c4b: PUSH1 0x2c
00003c4d: DUP2
00003c4e: MSTORE
00003c4f: PUSH1 0x20
00003c51: ADD
00003c52: DUP1
00003c53: PUSH2 0x540b
00003c56: PUSH1 0x2c
00003c58: SWAP2
00003c59: CODECOPY
00003c5a: PUSH1 0x40
00003c5c: ADD
00003c5d: SWAP2
00003c5e: POP
00003c5f: POP
00003c60: PUSH1 0x40
00003c62: MLOAD
00003c63: DUP1
00003c64: SWAP2
00003c65: SUB
00003c66: SWAP1
00003c67: REVERT
00003c68: JUMPDEST
00003c69: PUSH1 0x01
00003c6b: PUSH1 0x01
00003c6d: PUSH1 0xa0
00003c6f: SHL
00003c70: SUB
00003c71: DUP2
00003c72: AND
00003c73: PUSH1 0x00
00003c75: DUP2
00003c76: DUP2
00003c77: MSTORE
00003c78: PUSH1 0x03
00003c7a: PUSH1 0x20
00003c7c: MSTORE
00003c7d: PUSH1 0x40
00003c7f: DUP1
00003c80: DUP3
00003c81: KECCAK256
00003c82: DUP1
00003c83: SLOAD
00003c84: PUSH1 0xff
00003c86: NOT
00003c87: AND
00003c88: PUSH1 0x01
00003c8a: OR
00003c8b: SWAP1
00003c8c: SSTORE
00003c8d: MLOAD
00003c8e: PUSH32 0xffa4e6181777692565cf28528fc88fd1516ea86b56da075235fa575af6a4b855
00003caf: SWAP2
00003cb0: SWAP1
00003cb1: LOG2
00003cb2: POP
00003cb3: JUMP
00003cb4: JUMPDEST
00003cb5: PUSH1 0x01
00003cb7: PUSH1 0x01
00003cb9: PUSH1 0xa0
00003cbb: SHL
00003cbc: SUB
00003cbd: AND
00003cbe: PUSH1 0x00
00003cc0: SWAP1
00003cc1: DUP2
00003cc2: MSTORE
00003cc3: PUSH1 0x03
00003cc5: PUSH1 0x20
00003cc7: MSTORE
00003cc8: PUSH1 0x40
00003cca: SWAP1
00003ccb: KECCAK256
00003ccc: SLOAD
00003ccd: PUSH1 0xff
00003ccf: AND
00003cd0: SWAP1
00003cd1: JUMP
00003cd2: JUMPDEST
00003cd3: PUSH1 0x01
00003cd5: PUSH1 0x01
00003cd7: PUSH1 0xa0
00003cd9: SHL
00003cda: SUB
00003cdb: DUP4
00003cdc: AND
00003cdd: PUSH2 0x3d17
00003ce0: JUMPI
00003ce1: PUSH1 0x40
00003ce3: MLOAD
00003ce4: PUSH3 0x461bcd
00003ce8: PUSH1 0xe5
00003cea: SHL
00003ceb: DUP2
00003cec: MSTORE
00003ced: PUSH1 0x04
00003cef: ADD
00003cf0: DUP1
00003cf1: DUP1
00003cf2: PUSH1 0x20
00003cf4: ADD
00003cf5: DUP3
00003cf6: DUP2
00003cf7: SUB
00003cf8: DUP3
00003cf9: MSTORE
00003cfa: PUSH1 0x24
00003cfc: DUP2
00003cfd: MSTORE
00003cfe: PUSH1 0x20
00003d00: ADD
00003d01: DUP1
00003d02: PUSH2 0x57ad
00003d05: PUSH1 0x24
00003d07: SWAP2
00003d08: CODECOPY
00003d09: PUSH1 0x40
00003d0b: ADD
00003d0c: SWAP2
00003d0d: POP
00003d0e: POP
00003d0f: PUSH1 0x40
00003d11: MLOAD
00003d12: DUP1
00003d13: SWAP2
00003d14: SUB
00003d15: SWAP1
00003d16: REVERT
00003d17: JUMPDEST
00003d18: PUSH1 0x01
00003d1a: PUSH1 0x01
00003d1c: PUSH1 0xa0
00003d1e: SHL
00003d1f: SUB
00003d20: DUP3
00003d21: AND
00003d22: PUSH2 0x3d5c
00003d25: JUMPI
00003d26: PUSH1 0x40
00003d28: MLOAD
00003d29: PUSH3 0x461bcd
00003d2d: PUSH1 0xe5
00003d2f: SHL
00003d30: DUP2
00003d31: MSTORE
00003d32: PUSH1 0x04
00003d34: ADD
00003d35: DUP1
00003d36: DUP1
00003d37: PUSH1 0x20
00003d39: ADD
00003d3a: DUP3
00003d3b: DUP2
00003d3c: SUB
00003d3d: DUP3
00003d3e: MSTORE
00003d3f: PUSH1 0x22
00003d41: DUP2
00003d42: MSTORE
00003d43: PUSH1 0x20
00003d45: ADD
00003d46: DUP1
00003d47: PUSH2 0x531e
00003d4a: PUSH1 0x22
00003d4c: SWAP2
00003d4d: CODECOPY
00003d4e: PUSH1 0x40
00003d50: ADD
00003d51: SWAP2
00003d52: POP
00003d53: POP
00003d54: PUSH1 0x40
00003d56: MLOAD
00003d57: DUP1
00003d58: SWAP2
00003d59: SUB
00003d5a: SWAP1
00003d5b: REVERT
00003d5c: JUMPDEST
00003d5d: PUSH1 0x01
00003d5f: PUSH1 0x01
00003d61: PUSH1 0xa0
00003d63: SHL
00003d64: SUB
00003d65: DUP1
00003d66: DUP5
00003d67: AND
00003d68: PUSH1 0x00
00003d6a: DUP2
00003d6b: DUP2
00003d6c: MSTORE
00003d6d: PUSH1 0x0a
00003d6f: PUSH1 0x20
00003d71: SWAP1
00003d72: DUP2
00003d73: MSTORE
00003d74: PUSH1 0x40
00003d76: DUP1
00003d77: DUP4
00003d78: KECCAK256
00003d79: SWAP5
00003d7a: DUP8
00003d7b: AND
00003d7c: DUP1
00003d7d: DUP5
00003d7e: MSTORE
00003d7f: SWAP5
00003d80: DUP3
00003d81: MSTORE
00003d82: SWAP2
00003d83: DUP3
00003d84: SWAP1
00003d85: KECCAK256
00003d86: DUP6
00003d87: SWAP1
00003d88: SSTORE
00003d89: DUP2
00003d8a: MLOAD
00003d8b: DUP6
00003d8c: DUP2
00003d8d: MSTORE
00003d8e: SWAP2
00003d8f: MLOAD
00003d90: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
00003db1: SWAP3
00003db2: DUP2
00003db3: SWAP1
00003db4: SUB
00003db5: SWAP1
00003db6: SWAP2
00003db7: ADD
00003db8: SWAP1
00003db9: LOG3
00003dba: POP
00003dbb: POP
00003dbc: POP
00003dbd: JUMP
00003dbe: JUMPDEST
00003dbf: PUSH1 0x01
00003dc1: PUSH1 0x01
00003dc3: PUSH1 0xa0
00003dc5: SHL
00003dc6: SUB
00003dc7: DUP4
00003dc8: AND
00003dc9: PUSH2 0x3e03
00003dcc: JUMPI
00003dcd: PUSH1 0x40
00003dcf: MLOAD
00003dd0: PUSH3 0x461bcd
00003dd4: PUSH1 0xe5
00003dd6: SHL
00003dd7: DUP2
00003dd8: MSTORE
00003dd9: PUSH1 0x04
00003ddb: ADD
00003ddc: DUP1
00003ddd: DUP1
00003dde: PUSH1 0x20
00003de0: ADD
00003de1: DUP3
00003de2: DUP2
00003de3: SUB
00003de4: DUP3
00003de5: MSTORE
00003de6: PUSH1 0x25
00003de8: DUP2
00003de9: MSTORE
00003dea: PUSH1 0x20
00003dec: ADD
00003ded: DUP1
00003dee: PUSH2 0x575a
00003df1: PUSH1 0x25
00003df3: SWAP2
00003df4: CODECOPY
00003df5: PUSH1 0x40
00003df7: ADD
00003df8: SWAP2
00003df9: POP
00003dfa: POP
00003dfb: PUSH1 0x40
00003dfd: MLOAD
00003dfe: DUP1
00003dff: SWAP2
00003e00: SUB
00003e01: SWAP1
00003e02: REVERT
00003e03: JUMPDEST
00003e04: PUSH1 0x01
00003e06: PUSH1 0x01
00003e08: PUSH1 0xa0
00003e0a: SHL
00003e0b: SUB
00003e0c: DUP3
00003e0d: AND
00003e0e: PUSH2 0x3e48
00003e11: JUMPI
00003e12: PUSH1 0x40
00003e14: MLOAD
00003e15: PUSH3 0x461bcd
00003e19: PUSH1 0xe5
00003e1b: SHL
00003e1c: DUP2
00003e1d: MSTORE
00003e1e: PUSH1 0x04
00003e20: ADD
00003e21: DUP1
00003e22: DUP1
00003e23: PUSH1 0x20
00003e25: ADD
00003e26: DUP3
00003e27: DUP2
00003e28: SUB
00003e29: DUP3
00003e2a: MSTORE
00003e2b: PUSH1 0x23
00003e2d: DUP2
00003e2e: MSTORE
00003e2f: PUSH1 0x20
00003e31: ADD
00003e32: DUP1
00003e33: PUSH2 0x5210
00003e36: PUSH1 0x23
00003e38: SWAP2
00003e39: CODECOPY
00003e3a: PUSH1 0x40
00003e3c: ADD
00003e3d: SWAP2
00003e3e: POP
00003e3f: POP
00003e40: PUSH1 0x40
00003e42: MLOAD
00003e43: DUP1
00003e44: SWAP2
00003e45: SUB
00003e46: SWAP1
00003e47: REVERT
00003e48: JUMPDEST
00003e49: PUSH1 0x01
00003e4b: PUSH1 0x01
00003e4d: PUSH1 0xa0
00003e4f: SHL
00003e50: SUB
00003e51: DUP4
00003e52: AND
00003e53: PUSH1 0x00
00003e55: SWAP1
00003e56: DUP2
00003e57: MSTORE
00003e58: PUSH1 0x09
00003e5a: PUSH1 0x20
00003e5c: MSTORE
00003e5d: PUSH1 0x40
00003e5f: SWAP1
00003e60: KECCAK256
00003e61: SLOAD
00003e62: DUP2
00003e63: GT
00003e64: ISZERO
00003e65: PUSH2 0x3e9f
00003e68: JUMPI
00003e69: PUSH1 0x40
00003e6b: MLOAD
00003e6c: PUSH3 0x461bcd
00003e70: PUSH1 0xe5
00003e72: SHL
00003e73: DUP2
00003e74: MSTORE
00003e75: PUSH1 0x04
00003e77: ADD
00003e78: DUP1
00003e79: DUP1
00003e7a: PUSH1 0x20
00003e7c: ADD
00003e7d: DUP3
00003e7e: DUP2
00003e7f: SUB
00003e80: DUP3
00003e81: MSTORE
00003e82: PUSH1 0x26
00003e84: DUP2
00003e85: MSTORE
00003e86: PUSH1 0x20
00003e88: ADD
00003e89: DUP1
00003e8a: PUSH2 0x53bc
00003e8d: PUSH1 0x26
00003e8f: SWAP2
00003e90: CODECOPY
00003e91: PUSH1 0x40
00003e93: ADD
00003e94: SWAP2
00003e95: POP
00003e96: POP
00003e97: PUSH1 0x40
00003e99: MLOAD
00003e9a: DUP1
00003e9b: SWAP2
00003e9c: SUB
00003e9d: SWAP1
00003e9e: REVERT
00003e9f: JUMPDEST
00003ea0: PUSH1 0x01
00003ea2: PUSH1 0x01
00003ea4: PUSH1 0xa0
00003ea6: SHL
00003ea7: SUB
00003ea8: DUP4
00003ea9: AND
00003eaa: PUSH1 0x00
00003eac: SWAP1
00003ead: DUP2
00003eae: MSTORE
00003eaf: PUSH1 0x09
00003eb1: PUSH1 0x20
00003eb3: MSTORE
00003eb4: PUSH1 0x40
00003eb6: SWAP1
00003eb7: KECCAK256
00003eb8: SLOAD
00003eb9: PUSH2 0x3ec2
00003ebc: SWAP1
00003ebd: DUP3
00003ebe: PUSH2 0x3f3b
00003ec1: JUMP
00003ec2: JUMPDEST
00003ec3: PUSH1 0x01
00003ec5: PUSH1 0x01
00003ec7: PUSH1 0xa0
00003ec9: SHL
00003eca: SUB
00003ecb: DUP1
00003ecc: DUP6
00003ecd: AND
00003ece: PUSH1 0x00
00003ed0: SWAP1
00003ed1: DUP2
00003ed2: MSTORE
00003ed3: PUSH1 0x09
00003ed5: PUSH1 0x20
00003ed7: MSTORE
00003ed8: PUSH1 0x40
00003eda: DUP1
00003edb: DUP3
00003edc: KECCAK256
00003edd: SWAP4
00003ede: SWAP1
00003edf: SWAP4
00003ee0: SSTORE
00003ee1: SWAP1
00003ee2: DUP5
00003ee3: AND
00003ee4: DUP2
00003ee5: MSTORE
00003ee6: KECCAK256
00003ee7: SLOAD
00003ee8: PUSH2 0x3ef1
00003eeb: SWAP1
00003eec: DUP3
00003eed: PUSH2 0x3fe3
00003ef0: JUMP
00003ef1: JUMPDEST
00003ef2: PUSH1 0x01
00003ef4: PUSH1 0x01
00003ef6: PUSH1 0xa0
00003ef8: SHL
00003ef9: SUB
00003efa: DUP1
00003efb: DUP5
00003efc: AND
00003efd: PUSH1 0x00
00003eff: DUP2
00003f00: DUP2
00003f01: MSTORE
00003f02: PUSH1 0x09
00003f04: PUSH1 0x20
00003f06: SWAP1
00003f07: DUP2
00003f08: MSTORE
00003f09: PUSH1 0x40
00003f0b: SWAP2
00003f0c: DUP3
00003f0d: SWAP1
00003f0e: KECCAK256
00003f0f: SWAP5
00003f10: SWAP1
00003f11: SWAP5
00003f12: SSTORE
00003f13: DUP1
00003f14: MLOAD
00003f15: DUP6
00003f16: DUP2
00003f17: MSTORE
00003f18: SWAP1
00003f19: MLOAD
00003f1a: SWAP2
00003f1b: SWAP4
00003f1c: SWAP3
00003f1d: DUP8
00003f1e: AND
00003f1f: SWAP3
00003f20: PUSH1 0x00
00003f22: DUP1
00003f23: MLOAD
00003f24: PUSH1 0x20
00003f26: PUSH2 0x573a
00003f29: DUP4
00003f2a: CODECOPY
00003f2b: DUP2
00003f2c: MLOAD
00003f2d: SWAP2
00003f2e: MSTORE
00003f2f: SWAP3
00003f30: SWAP2
00003f31: DUP3
00003f32: SWAP1
00003f33: SUB
00003f34: ADD
00003f35: SWAP1
00003f36: LOG3
00003f37: POP
00003f38: POP
00003f39: POP
00003f3a: JUMP
00003f3b: JUMPDEST
00003f3c: PUSH1 0x00
00003f3e: PUSH2 0x3f7d
00003f41: DUP4
00003f42: DUP4
00003f43: PUSH1 0x40
00003f45: MLOAD
00003f46: DUP1
00003f47: PUSH1 0x40
00003f49: ADD
00003f4a: PUSH1 0x40
00003f4c: MSTORE
00003f4d: DUP1
00003f4e: PUSH1 0x1e
00003f50: DUP2
00003f51: MSTORE
00003f52: PUSH1 0x20
00003f54: ADD
00003f55: PUSH32 0x536166654d6174683a207375627472616374696f6e206f766572666c6f770000
00003f76: DUP2
00003f77: MSTORE
00003f78: POP
00003f79: PUSH2 0x4a89
00003f7c: JUMP
00003f7d: JUMPDEST
00003f7e: SWAP4
00003f7f: SWAP3
00003f80: POP
00003f81: POP
00003f82: POP
00003f83: JUMP
00003f84: JUMPDEST
00003f85: PUSH1 0x00
00003f87: DUP1
00003f88: SLOAD
00003f89: PUSH1 0x01
00003f8b: PUSH1 0x01
00003f8d: PUSH1 0xa0
00003f8f: SHL
00003f90: SUB
00003f91: NOT
00003f92: AND
00003f93: PUSH1 0x01
00003f95: PUSH1 0x01
00003f97: PUSH1 0xa0
00003f99: SHL
00003f9a: SUB
00003f9b: SWAP3
00003f9c: SWAP1
00003f9d: SWAP3
00003f9e: AND
00003f9f: SWAP2
00003fa0: SWAP1
00003fa1: SWAP2
00003fa2: OR
00003fa3: SWAP1
00003fa4: SSTORE
00003fa5: JUMP
00003fa6: JUMPDEST
00003fa7: PUSH1 0x01
00003fa9: PUSH1 0x01
00003fab: PUSH1 0xa0
00003fad: SHL
00003fae: SUB
00003faf: DUP1
00003fb0: DUP5
00003fb1: AND
00003fb2: PUSH1 0x00
00003fb4: SWAP1
00003fb5: DUP2
00003fb6: MSTORE
00003fb7: PUSH1 0x0a
00003fb9: PUSH1 0x20
00003fbb: SWAP1
00003fbc: DUP2
00003fbd: MSTORE
00003fbe: PUSH1 0x40
00003fc0: DUP1
00003fc1: DUP4
00003fc2: KECCAK256
00003fc3: SWAP4
00003fc4: DUP7
00003fc5: AND
00003fc6: DUP4
00003fc7: MSTORE
00003fc8: SWAP3
00003fc9: SWAP1
00003fca: MSTORE
00003fcb: KECCAK256
00003fcc: SLOAD
00003fcd: PUSH2 0x3477
00003fd0: SWAP1
00003fd1: DUP5
00003fd2: SWAP1
00003fd3: DUP5
00003fd4: SWAP1
00003fd5: PUSH2 0x3fde
00003fd8: SWAP1
00003fd9: DUP6
00003fda: PUSH2 0x3fe3
00003fdd: JUMP
00003fde: JUMPDEST
00003fdf: PUSH2 0x3cd2
00003fe2: JUMP
00003fe3: JUMPDEST
00003fe4: PUSH1 0x00
00003fe6: DUP3
00003fe7: DUP3
00003fe8: ADD
00003fe9: DUP4
00003fea: DUP2
00003feb: LT
00003fec: ISZERO
00003fed: PUSH2 0x3f7d
00003ff0: JUMPI
00003ff1: PUSH1 0x40
00003ff3: DUP1
00003ff4: MLOAD
00003ff5: PUSH3 0x461bcd
00003ff9: PUSH1 0xe5
00003ffb: SHL
00003ffc: DUP2
00003ffd: MSTORE
00003ffe: PUSH1 0x20
00004000: PUSH1 0x04
00004002: DUP3
00004003: ADD
00004004: MSTORE
00004005: PUSH1 0x1b
00004007: PUSH1 0x24
00004009: DUP3
0000400a: ADD
0000400b: MSTORE
0000400c: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
0000402d: PUSH1 0x44
0000402f: DUP3
00004030: ADD
00004031: MSTORE
00004032: SWAP1
00004033: MLOAD
00004034: SWAP1
00004035: DUP2
00004036: SWAP1
00004037: SUB
00004038: PUSH1 0x64
0000403a: ADD
0000403b: SWAP1
0000403c: REVERT
0000403d: JUMPDEST
0000403e: PUSH2 0x4047
00004041: DUP6
00004042: DUP6
00004043: PUSH2 0x4b20
00004046: JUMP
00004047: JUMPDEST
00004048: PUSH1 0x40
0000404a: DUP1
0000404b: MLOAD
0000404c: PUSH32 0x158b0a9edf7a828aad02f63cd515c68ef2f50ba807396f6d12842833a1597429
0000406d: PUSH1 0x20
0000406f: DUP3
00004070: ADD
00004071: MSTORE
00004072: PUSH1 0x01
00004074: PUSH1 0x01
00004076: PUSH1 0xa0
00004078: SHL
00004079: SUB
0000407a: DUP8
0000407b: AND
0000407c: DUP2
0000407d: DUP4
0000407e: ADD
0000407f: DUP2
00004080: SWAP1
00004081: MSTORE
00004082: PUSH1 0x60
00004084: DUP3
00004085: DUP2
00004086: ADD
00004087: DUP9
00004088: SWAP1
00004089: MSTORE
0000408a: DUP4
0000408b: MLOAD
0000408c: DUP1
0000408d: DUP5
0000408e: SUB
0000408f: SWAP1
00004090: SWAP2
00004091: ADD
00004092: DUP2
00004093: MSTORE
00004094: PUSH1 0x80
00004096: SWAP1
00004097: SWAP3
00004098: ADD
00004099: SWAP1
0000409a: SWAP3
0000409b: MSTORE
0000409c: PUSH1 0x0f
0000409e: SLOAD
0000409f: SWAP1
000040a0: SWAP2
000040a1: SWAP1
000040a2: PUSH2 0x40ae
000040a5: SWAP1
000040a6: DUP7
000040a7: DUP7
000040a8: DUP7
000040a9: DUP7
000040aa: PUSH2 0x4b87
000040ad: JUMP
000040ae: JUMPDEST
000040af: PUSH1 0x01
000040b1: PUSH1 0x01
000040b3: PUSH1 0xa0
000040b5: SHL
000040b6: SUB
000040b7: AND
000040b8: EQ
000040b9: PUSH2 0x4109
000040bc: JUMPI
000040bd: PUSH1 0x40
000040bf: DUP1
000040c0: MLOAD
000040c1: PUSH3 0x461bcd
000040c5: PUSH1 0xe5
000040c7: SHL
000040c8: DUP2
000040c9: MSTORE
000040ca: PUSH1 0x20
000040cc: PUSH1 0x04
000040ce: DUP3
000040cf: ADD
000040d0: MSTORE
000040d1: PUSH1 0x1e
000040d3: PUSH1 0x24
000040d5: DUP3
000040d6: ADD
000040d7: MSTORE
000040d8: PUSH32 0x46696174546f6b656e56323a20696e76616c6964207369676e61747572650000
000040f9: PUSH1 0x44
000040fb: DUP3
000040fc: ADD
000040fd: MSTORE
000040fe: SWAP1
000040ff: MLOAD
00004100: SWAP1
00004101: DUP2
00004102: SWAP1
00004103: SUB
00004104: PUSH1 0x64
00004106: ADD
00004107: SWAP1
00004108: REVERT
00004109: JUMPDEST
0000410a: PUSH1 0x01
0000410c: PUSH1 0x01
0000410e: PUSH1 0xa0
00004110: SHL
00004111: SUB
00004112: DUP7
00004113: AND
00004114: PUSH1 0x00
00004116: DUP2
00004117: DUP2
00004118: MSTORE
00004119: PUSH1 0x10
0000411b: PUSH1 0x20
0000411d: SWAP1
0000411e: DUP2
0000411f: MSTORE
00004120: PUSH1 0x40
00004122: DUP1
00004123: DUP4
00004124: KECCAK256
00004125: DUP10
00004126: DUP5
00004127: MSTORE
00004128: SWAP1
00004129: SWAP2
0000412a: MSTORE
0000412b: DUP1
0000412c: DUP3
0000412d: KECCAK256
0000412e: DUP1
0000412f: SLOAD
00004130: PUSH1 0xff
00004132: NOT
00004133: AND
00004134: PUSH1 0x01
00004136: OR
00004137: SWAP1
00004138: SSTORE
00004139: MLOAD
0000413a: DUP8
0000413b: SWAP3
0000413c: SWAP2
0000413d: PUSH32 0x1cdd46ff242716cdaa72d159d339a485b3438398348d68f09d7c8c0a59353d81
0000415e: SWAP2
0000415f: LOG3
00004160: POP
00004161: POP
00004162: POP
00004163: POP
00004164: POP
00004165: POP
00004166: JUMP
00004167: JUMPDEST
00004168: PUSH1 0x01
0000416a: SLOAD
0000416b: PUSH1 0x00
0000416d: SWAP1
0000416e: PUSH1 0x01
00004170: PUSH1 0xa0
00004172: SHL
00004173: SWAP1
00004174: DIV
00004175: PUSH1 0xff
00004177: AND
00004178: ISZERO
00004179: PUSH2 0x41bc
0000417c: JUMPI
0000417d: PUSH1 0x40
0000417f: DUP1
00004180: MLOAD
00004181: PUSH3 0x461bcd
00004185: PUSH1 0xe5
00004187: SHL
00004188: DUP2
00004189: MSTORE
0000418a: PUSH1 0x20
0000418c: PUSH1 0x04
0000418e: DUP3
0000418f: ADD
00004190: MSTORE
00004191: PUSH1 0x10
00004193: PUSH1 0x24
00004195: DUP3
00004196: ADD
00004197: MSTORE
00004198: PUSH16 0x14185d5cd8589b194e881c185d5cd959
000041a9: PUSH1 0x82
000041ab: SHL
000041ac: PUSH1 0x44
000041ae: DUP3
000041af: ADD
000041b0: MSTORE
000041b1: SWAP1
000041b2: MLOAD
000041b3: SWAP1
000041b4: DUP2
000041b5: SWAP1
000041b6: SUB
000041b7: PUSH1 0x64
000041b9: ADD
000041ba: SWAP1
000041bb: REVERT
000041bc: JUMPDEST
000041bd: CALLER
000041be: PUSH1 0x00
000041c0: DUP2
000041c1: DUP2
000041c2: MSTORE
000041c3: PUSH1 0x03
000041c5: PUSH1 0x20
000041c7: MSTORE
000041c8: PUSH1 0x40
000041ca: SWAP1
000041cb: KECCAK256
000041cc: SLOAD
000041cd: PUSH1 0xff
000041cf: AND
000041d0: ISZERO
000041d1: PUSH2 0x420b
000041d4: JUMPI
000041d5: PUSH1 0x40
000041d7: MLOAD
000041d8: PUSH3 0x461bcd
000041dc: PUSH1 0xe5
000041de: SHL
000041df: DUP2
000041e0: MSTORE
000041e1: PUSH1 0x04
000041e3: ADD
000041e4: DUP1
000041e5: DUP1
000041e6: PUSH1 0x20
000041e8: ADD
000041e9: DUP3
000041ea: DUP2
000041eb: SUB
000041ec: DUP3
000041ed: MSTORE
000041ee: PUSH1 0x25
000041f0: DUP2
000041f1: MSTORE
000041f2: PUSH1 0x20
000041f4: ADD
000041f5: DUP1
000041f6: PUSH2 0x5978
000041f9: PUSH1 0x25
000041fb: SWAP2
000041fc: CODECOPY
000041fd: PUSH1 0x40
000041ff: ADD
00004200: SWAP2
00004201: POP
00004202: POP
00004203: PUSH1 0x40
00004205: MLOAD
00004206: DUP1
00004207: SWAP2
00004208: SUB
00004209: SWAP1
0000420a: REVERT
0000420b: JUMPDEST
0000420c: PUSH1 0x01
0000420e: PUSH1 0x01
00004210: PUSH1 0xa0
00004212: SHL
00004213: SUB
00004214: DUP5
00004215: AND
00004216: PUSH1 0x00
00004218: SWAP1
00004219: DUP2
0000421a: MSTORE
0000421b: PUSH1 0x03
0000421d: PUSH1 0x20
0000421f: MSTORE
00004220: PUSH1 0x40
00004222: SWAP1
00004223: KECCAK256
00004224: SLOAD
00004225: DUP5
00004226: SWAP1
00004227: PUSH1 0xff
00004229: AND
0000422a: ISZERO
0000422b: PUSH2 0x4265
0000422e: JUMPI
0000422f: PUSH1 0x40
00004231: MLOAD
00004232: PUSH3 0x461bcd
00004236: PUSH1 0xe5
00004238: SHL
00004239: DUP2
0000423a: MSTORE
0000423b: PUSH1 0x04
0000423d: ADD
0000423e: DUP1
0000423f: DUP1
00004240: PUSH1 0x20
00004242: ADD
00004243: DUP3
00004244: DUP2
00004245: SUB
00004246: DUP3
00004247: MSTORE
00004248: PUSH1 0x25
0000424a: DUP2
0000424b: MSTORE
0000424c: PUSH1 0x20
0000424e: ADD
0000424f: DUP1
00004250: PUSH2 0x5978
00004253: PUSH1 0x25
00004255: SWAP2
00004256: CODECOPY
00004257: PUSH1 0x40
00004259: ADD
0000425a: SWAP2
0000425b: POP
0000425c: POP
0000425d: PUSH1 0x40
0000425f: MLOAD
00004260: DUP1
00004261: SWAP2
00004262: SUB
00004263: SWAP1
00004264: REVERT
00004265: JUMPDEST
00004266: PUSH1 0x01
00004268: PUSH1 0x01
0000426a: PUSH1 0xa0
0000426c: SHL
0000426d: SUB
0000426e: DUP6
0000426f: AND
00004270: PUSH2 0x42aa
00004273: JUMPI
00004274: PUSH1 0x40
00004276: MLOAD
00004277: PUSH3 0x461bcd
0000427b: PUSH1 0xe5
0000427d: SHL
0000427e: DUP2
0000427f: MSTORE
00004280: PUSH1 0x04
00004282: ADD
00004283: DUP1
00004284: DUP1
00004285: PUSH1 0x20
00004287: ADD
00004288: DUP3
00004289: DUP2
0000428a: SUB
0000428b: DUP3
0000428c: MSTORE
0000428d: PUSH1 0x27
0000428f: DUP2
00004290: MSTORE
00004291: PUSH1 0x20
00004293: ADD
00004294: DUP1
00004295: PUSH2 0x5713
00004298: PUSH1 0x27
0000429a: SWAP2
0000429b: CODECOPY
0000429c: PUSH1 0x40
0000429e: ADD
0000429f: SWAP2
000042a0: POP
000042a1: POP
000042a2: PUSH1 0x40
000042a4: MLOAD
000042a5: DUP1
000042a6: SWAP2
000042a7: SUB
000042a8: SWAP1
000042a9: REVERT
000042aa: JUMPDEST
000042ab: PUSH1 0x00
000042ad: DUP5
000042ae: GT
000042af: PUSH2 0x42e9
000042b2: JUMPI
000042b3: PUSH1 0x40
000042b5: MLOAD
000042b6: PUSH3 0x461bcd
000042ba: PUSH1 0xe5
000042bc: SHL
000042bd: DUP2
000042be: MSTORE
000042bf: PUSH1 0x04
000042c1: ADD
000042c2: DUP1
000042c3: DUP1
000042c4: PUSH1 0x20
000042c6: ADD
000042c7: DUP3
000042c8: DUP2
000042c9: SUB
000042ca: DUP3
000042cb: MSTORE
000042cc: PUSH1 0x2d
000042ce: DUP2
000042cf: MSTORE
000042d0: PUSH1 0x20
000042d2: ADD
000042d3: DUP1
000042d4: PUSH2 0x5821
000042d7: PUSH1 0x2d
000042d9: SWAP2
000042da: CODECOPY
000042db: PUSH1 0x40
000042dd: ADD
000042de: SWAP2
000042df: POP
000042e0: POP
000042e1: PUSH1 0x40
000042e3: MLOAD
000042e4: DUP1
000042e5: SWAP2
000042e6: SUB
000042e7: SWAP1
000042e8: REVERT
000042e9: JUMPDEST
000042ea: PUSH1 0x0b
000042ec: SLOAD
000042ed: PUSH2 0x42f6
000042f0: SWAP1
000042f1: DUP6
000042f2: PUSH2 0x3fe3
000042f5: JUMP
000042f6: JUMPDEST
000042f7: PUSH1 0x0b
000042f9: SSTORE
000042fa: PUSH1 0x01
000042fc: PUSH1 0x01
000042fe: PUSH1 0xa0
00004300: SHL
00004301: SUB
00004302: DUP6
00004303: AND
00004304: PUSH1 0x00
00004306: SWAP1
00004307: DUP2
00004308: MSTORE
00004309: PUSH1 0x09
0000430b: PUSH1 0x20
0000430d: MSTORE
0000430e: PUSH1 0x40
00004310: SWAP1
00004311: KECCAK256
00004312: SLOAD
00004313: PUSH2 0x431c
00004316: SWAP1
00004317: DUP6
00004318: PUSH2 0x3fe3
0000431b: JUMP
0000431c: JUMPDEST
0000431d: PUSH1 0x01
0000431f: PUSH1 0x01
00004321: PUSH1 0xa0
00004323: SHL
00004324: SUB
00004325: DUP7
00004326: AND
00004327: PUSH1 0x00
00004329: DUP2
0000432a: DUP2
0000432b: MSTORE
0000432c: PUSH1 0x09
0000432e: PUSH1 0x20
00004330: SWAP1
00004331: DUP2
00004332: MSTORE
00004333: PUSH1 0x40
00004335: SWAP2
00004336: DUP3
00004337: SWAP1
00004338: KECCAK256
00004339: SWAP4
0000433a: SWAP1
0000433b: SWAP4
0000433c: SSTORE
0000433d: DUP1
0000433e: MLOAD
0000433f: DUP8
00004340: DUP2
00004341: MSTORE
00004342: SWAP1
00004343: MLOAD
00004344: SWAP2
00004345: SWAP3
00004346: CALLER
00004347: SWAP3
00004348: PUSH32 0xab8530f87dc9b59234c4623bf917212bb2536d647574c8e7e5da92c2ede0c9f8
00004369: SWAP3
0000436a: DUP2
0000436b: SWAP1
0000436c: SUB
0000436d: SWAP1
0000436e: SWAP2
0000436f: ADD
00004370: SWAP1
00004371: LOG3
00004372: PUSH1 0x40
00004374: DUP1
00004375: MLOAD
00004376: DUP6
00004377: DUP2
00004378: MSTORE
00004379: SWAP1
0000437a: MLOAD
0000437b: PUSH1 0x01
0000437d: PUSH1 0x01
0000437f: PUSH1 0xa0
00004381: SHL
00004382: SUB
00004383: DUP8
00004384: AND
00004385: SWAP2
00004386: PUSH1 0x00
00004388: SWAP2
00004389: PUSH1 0x00
0000438b: DUP1
0000438c: MLOAD
0000438d: PUSH1 0x20
0000438f: PUSH2 0x573a
00004392: DUP4
00004393: CODECOPY
00004394: DUP2
00004395: MLOAD
00004396: SWAP2
00004397: MSTORE
00004398: SWAP2
00004399: DUP2
0000439a: SWAP1
0000439b: SUB
0000439c: PUSH1 0x20
0000439e: ADD
0000439f: SWAP1
000043a0: LOG3
000043a1: POP
000043a2: PUSH1 0x01
000043a4: SWAP5
000043a5: SWAP4
000043a6: POP
000043a7: POP
000043a8: POP
000043a9: POP
000043aa: JUMP
000043ab: JUMPDEST
000043ac: PUSH1 0x00
000043ae: DUP3
000043af: PUSH2 0x43ba
000043b2: JUMPI
000043b3: POP
000043b4: PUSH1 0x00
000043b6: PUSH2 0x25e0
000043b9: JUMP
000043ba: JUMPDEST
000043bb: DUP3
000043bc: DUP3
000043bd: MUL
000043be: DUP3
000043bf: DUP5
000043c0: DUP3
000043c1: DUP2
000043c2: PUSH2 0x43c7
000043c5: JUMPI
000043c6: INVALID
000043c7: JUMPDEST
000043c8: DIV
000043c9: EQ
000043ca: PUSH2 0x3f7d
000043cd: JUMPI
000043ce: PUSH1 0x40
000043d0: MLOAD
000043d1: PUSH3 0x461bcd
000043d5: PUSH1 0xe5
000043d7: SHL
000043d8: DUP2
000043d9: MSTORE
000043da: PUSH1 0x04
000043dc: ADD
000043dd: DUP1
000043de: DUP1
000043df: PUSH1 0x20
000043e1: ADD
000043e2: DUP3
000043e3: DUP2
000043e4: SUB
000043e5: DUP3
000043e6: MSTORE
000043e7: PUSH1 0x21
000043e9: DUP2
000043ea: MSTORE
000043eb: PUSH1 0x20
000043ed: ADD
000043ee: DUP1
000043ef: PUSH2 0x562d
000043f2: PUSH1 0x21
000043f4: SWAP2
000043f5: CODECOPY
000043f6: PUSH1 0x40
000043f8: ADD
000043f9: SWAP2
000043fa: POP
000043fb: POP
000043fc: PUSH1 0x40
000043fe: MLOAD
000043ff: DUP1
00004400: SWAP2
00004401: SUB
00004402: SWAP1
00004403: REVERT
00004404: JUMPDEST
00004405: PUSH1 0x00
00004407: PUSH2 0x3f7d
0000440a: DUP4
0000440b: DUP4
0000440c: PUSH1 0x40
0000440e: MLOAD
0000440f: DUP1
00004410: PUSH1 0x40
00004412: ADD
00004413: PUSH1 0x40
00004415: MSTORE
00004416: DUP1
00004417: PUSH1 0x1a
00004419: DUP2
0000441a: MSTORE
0000441b: PUSH1 0x20
0000441d: ADD
0000441e: PUSH32 0x536166654d6174683a206469766973696f6e206279207a65726f000000000000
0000443f: DUP2
00004440: MSTORE
00004441: POP
00004442: PUSH2 0x4bde
00004445: JUMP
00004446: JUMPDEST
00004447: PUSH1 0x01
00004449: SLOAD
0000444a: PUSH1 0x00
0000444c: SWAP1
0000444d: PUSH1 0x01
0000444f: PUSH1 0xa0
00004451: SHL
00004452: SWAP1
00004453: DIV
00004454: PUSH1 0xff
00004456: AND
00004457: ISZERO
00004458: PUSH2 0x449b
0000445b: JUMPI
0000445c: PUSH1 0x40
0000445e: DUP1
0000445f: MLOAD
00004460: PUSH3 0x461bcd
00004464: PUSH1 0xe5
00004466: SHL
00004467: DUP2
00004468: MSTORE
00004469: PUSH1 0x20
0000446b: PUSH1 0x04
0000446d: DUP3
0000446e: ADD
0000446f: MSTORE
00004470: PUSH1 0x10
00004472: PUSH1 0x24
00004474: DUP3
00004475: ADD
00004476: MSTORE
00004477: PUSH16 0x14185d5cd8589b194e881c185d5cd959
00004488: PUSH1 0x82
0000448a: SHL
0000448b: PUSH1 0x44
0000448d: DUP3
0000448e: ADD
0000448f: MSTORE
00004490: SWAP1
00004491: MLOAD
00004492: SWAP1
00004493: DUP2
00004494: SWAP1
00004495: SUB
00004496: PUSH1 0x64
00004498: ADD
00004499: SWAP1
0000449a: REVERT
0000449b: JUMPDEST
0000449c: CALLER
0000449d: PUSH1 0x00
0000449f: DUP2
000044a0: DUP2
000044a1: MSTORE
000044a2: PUSH1 0x03
000044a4: PUSH1 0x20
000044a6: MSTORE
000044a7: PUSH1 0x40
000044a9: SWAP1
000044aa: KECCAK256
000044ab: SLOAD
000044ac: PUSH1 0xff
000044ae: AND
000044af: ISZERO
000044b0: PUSH2 0x44ea
000044b3: JUMPI
000044b4: PUSH1 0x40
000044b6: MLOAD
000044b7: PUSH3 0x461bcd
000044bb: PUSH1 0xe5
000044bd: SHL
000044be: DUP2
000044bf: MSTORE
000044c0: PUSH1 0x04
000044c2: ADD
000044c3: DUP1
000044c4: DUP1
000044c5: PUSH1 0x20
000044c7: ADD
000044c8: DUP3
000044c9: DUP2
000044ca: SUB
000044cb: DUP3
000044cc: MSTORE
000044cd: PUSH1 0x25
000044cf: DUP2
000044d0: MSTORE
000044d1: PUSH1 0x20
000044d3: ADD
000044d4: DUP1
000044d5: PUSH2 0x5978
000044d8: PUSH1 0x25
000044da: SWAP2
000044db: CODECOPY
000044dc: PUSH1 0x40
000044de: ADD
000044df: SWAP2
000044e0: POP
000044e1: POP
000044e2: PUSH1 0x40
000044e4: MLOAD
000044e5: DUP1
000044e6: SWAP2
000044e7: SUB
000044e8: SWAP1
000044e9: REVERT
000044ea: JUMPDEST
000044eb: CALLER
000044ec: PUSH1 0x00
000044ee: SWAP1
000044ef: DUP2
000044f0: MSTORE
000044f1: PUSH1 0x09
000044f3: PUSH1 0x20
000044f5: MSTORE
000044f6: PUSH1 0x40
000044f8: SWAP1
000044f9: KECCAK256
000044fa: SLOAD
000044fb: DUP4
000044fc: PUSH2 0x454c
000044ff: JUMPI
00004500: PUSH1 0x40
00004502: DUP1
00004503: MLOAD
00004504: PUSH3 0x461bcd
00004508: PUSH1 0xe5
0000450a: SHL
0000450b: DUP2
0000450c: MSTORE
0000450d: PUSH1 0x20
0000450f: PUSH1 0x04
00004511: DUP3
00004512: ADD
00004513: MSTORE
00004514: PUSH1 0x1e
00004516: PUSH1 0x24
00004518: DUP3
00004519: ADD
0000451a: MSTORE
0000451b: PUSH32 0x6275726e20616d6f756e74206e6f742067726561746572207468616e20300000
0000453c: PUSH1 0x44
0000453e: DUP3
0000453f: ADD
00004540: MSTORE
00004541: SWAP1
00004542: MLOAD
00004543: SWAP1
00004544: DUP2
00004545: SWAP1
00004546: SUB
00004547: PUSH1 0x64
00004549: ADD
0000454a: SWAP1
0000454b: REVERT
0000454c: JUMPDEST
0000454d: DUP4
0000454e: DUP2
0000454f: LT
00004550: ISZERO
00004551: PUSH2 0x45a1
00004554: JUMPI
00004555: PUSH1 0x40
00004557: DUP1
00004558: MLOAD
00004559: PUSH3 0x461bcd
0000455d: PUSH1 0xe5
0000455f: SHL
00004560: DUP2
00004561: MSTORE
00004562: PUSH1 0x20
00004564: PUSH1 0x04
00004566: DUP3
00004567: ADD
00004568: MSTORE
00004569: PUSH1 0x1b
0000456b: PUSH1 0x24
0000456d: DUP3
0000456e: ADD
0000456f: MSTORE
00004570: PUSH32 0x6275726e20616d6f756e7420657863656564732062616c616e63650000000000
00004591: PUSH1 0x44
00004593: DUP3
00004594: ADD
00004595: MSTORE
00004596: SWAP1
00004597: MLOAD
00004598: SWAP1
00004599: DUP2
0000459a: SWAP1
0000459b: SUB
0000459c: PUSH1 0x64
0000459e: ADD
0000459f: SWAP1
000045a0: REVERT
000045a1: JUMPDEST
000045a2: PUSH1 0x0b
000045a4: SLOAD
000045a5: PUSH2 0x45ae
000045a8: SWAP1
000045a9: DUP6
000045aa: PUSH2 0x3f3b
000045ad: JUMP
000045ae: JUMPDEST
000045af: PUSH1 0x0b
000045b1: SSTORE
000045b2: PUSH2 0x45bb
000045b5: DUP2
000045b6: DUP6
000045b7: PUSH2 0x3f3b
000045ba: JUMP
000045bb: JUMPDEST
000045bc: CALLER
000045bd: PUSH1 0x00
000045bf: DUP2
000045c0: DUP2
000045c1: MSTORE
000045c2: PUSH1 0x09
000045c4: PUSH1 0x20
000045c6: SWAP1
000045c7: DUP2
000045c8: MSTORE
000045c9: PUSH1 0x40
000045cb: SWAP2
000045cc: DUP3
000045cd: SWAP1
000045ce: KECCAK256
000045cf: SWAP4
000045d0: SWAP1
000045d1: SWAP4
000045d2: SSTORE
000045d3: DUP1
000045d4: MLOAD
000045d5: DUP8
000045d6: DUP2
000045d7: MSTORE
000045d8: SWAP1
000045d9: MLOAD
000045da: SWAP2
000045db: SWAP3
000045dc: PUSH32 0xcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5
000045fd: SWAP3
000045fe: SWAP2
000045ff: DUP3
00004600: SWAP1
00004601: SUB
00004602: ADD
00004603: SWAP1
00004604: LOG2
00004605: PUSH1 0x40
00004607: DUP1
00004608: MLOAD
00004609: DUP6
0000460a: DUP2
0000460b: MSTORE
0000460c: SWAP1
0000460d: MLOAD
0000460e: PUSH1 0x00
00004610: SWAP2
00004611: CALLER
00004612: SWAP2
00004613: PUSH1 0x00
00004615: DUP1
00004616: MLOAD
00004617: PUSH1 0x20
00004619: PUSH2 0x573a
0000461c: DUP4
0000461d: CODECOPY
0000461e: DUP2
0000461f: MLOAD
00004620: SWAP2
00004621: MSTORE
00004622: SWAP2
00004623: DUP2
00004624: SWAP1
00004625: SUB
00004626: PUSH1 0x20
00004628: ADD
00004629: SWAP1
0000462a: LOG3
0000462b: POP
0000462c: PUSH1 0x01
0000462e: SWAP4
0000462f: SWAP3
00004630: POP
00004631: POP
00004632: POP
00004633: JUMP
00004634: JUMPDEST
00004635: PUSH2 0x3477
00004638: DUP4
00004639: DUP4
0000463a: PUSH2 0x3fde
0000463d: DUP5
0000463e: PUSH1 0x40
00004640: MLOAD
00004641: DUP1
00004642: PUSH1 0x60
00004644: ADD
00004645: PUSH1 0x40
00004647: MSTORE
00004648: DUP1
00004649: PUSH1 0x25
0000464b: DUP2
0000464c: MSTORE
0000464d: PUSH1 0x20
0000464f: ADD
00004650: PUSH2 0x59c2
00004653: PUSH1 0x25
00004655: SWAP2
00004656: CODECOPY
00004657: PUSH1 0x01
00004659: PUSH1 0x01
0000465b: PUSH1 0xa0
0000465d: SHL
0000465e: SUB
0000465f: DUP1
00004660: DUP11
00004661: AND
00004662: PUSH1 0x00
00004664: SWAP1
00004665: DUP2
00004666: MSTORE
00004667: PUSH1 0x0a
00004669: PUSH1 0x20
0000466b: SWAP1
0000466c: DUP2
0000466d: MSTORE
0000466e: PUSH1 0x40
00004670: DUP1
00004671: DUP4
00004672: KECCAK256
00004673: SWAP4
00004674: DUP13
00004675: AND
00004676: DUP4
00004677: MSTORE
00004678: SWAP3
00004679: SWAP1
0000467a: MSTORE
0000467b: KECCAK256
0000467c: SLOAD
0000467d: SWAP2
0000467e: SWAP1
0000467f: PUSH2 0x4a89
00004682: JUMP
00004683: JUMPDEST
00004684: PUSH1 0x40
00004686: DUP1
00004687: MLOAD
00004688: PUSH1 0x01
0000468a: PUSH1 0x01
0000468c: PUSH1 0xa0
0000468e: SHL
0000468f: SUB
00004690: DUP5
00004691: AND
00004692: PUSH1 0x24
00004694: DUP3
00004695: ADD
00004696: MSTORE
00004697: PUSH1 0x44
00004699: DUP1
0000469a: DUP3
0000469b: ADD
0000469c: DUP5
0000469d: SWAP1
0000469e: MSTORE
0000469f: DUP3
000046a0: MLOAD
000046a1: DUP1
000046a2: DUP4
000046a3: SUB
000046a4: SWAP1
000046a5: SWAP2
000046a6: ADD
000046a7: DUP2
000046a8: MSTORE
000046a9: PUSH1 0x64
000046ab: SWAP1
000046ac: SWAP2
000046ad: ADD
000046ae: SWAP1
000046af: SWAP2
000046b0: MSTORE
000046b1: PUSH1 0x20
000046b3: DUP2
000046b4: ADD
000046b5: DUP1
000046b6: MLOAD
000046b7: PUSH1 0x01
000046b9: PUSH1 0x01
000046bb: PUSH1 0xe0
000046bd: SHL
000046be: SUB
000046bf: AND
000046c0: PUSH4 0xa9059cbb
000046c5: PUSH1 0xe0
000046c7: SHL
000046c8: OR
000046c9: SWAP1
000046ca: MSTORE
000046cb: PUSH2 0x3477
000046ce: SWAP1
000046cf: DUP5
000046d0: SWAP1
000046d1: PUSH2 0x4c43
000046d4: JUMP
000046d5: JUMPDEST
000046d6: TIMESTAMP
000046d7: DUP5
000046d8: LT
000046d9: ISZERO
000046da: PUSH2 0x472a
000046dd: JUMPI
000046de: PUSH1 0x40
000046e0: DUP1
000046e1: MLOAD
000046e2: PUSH3 0x461bcd
000046e6: PUSH1 0xe5
000046e8: SHL
000046e9: DUP2
000046ea: MSTORE
000046eb: PUSH1 0x20
000046ed: PUSH1 0x04
000046ef: DUP3
000046f0: ADD
000046f1: MSTORE
000046f2: PUSH1 0x1e
000046f4: PUSH1 0x24
000046f6: DUP3
000046f7: ADD
000046f8: MSTORE
000046f9: PUSH32 0x46696174546f6b656e56323a207065726d697420697320657870697265640000
0000471a: PUSH1 0x44
0000471c: DUP3
0000471d: ADD
0000471e: MSTORE
0000471f: SWAP1
00004720: MLOAD
00004721: SWAP1
00004722: DUP2
00004723: SWAP1
00004724: SUB
00004725: PUSH1 0x64
00004727: ADD
00004728: SWAP1
00004729: REVERT
0000472a: JUMPDEST
0000472b: PUSH1 0x01
0000472d: PUSH1 0x01
0000472f: PUSH1 0xa0
00004731: SHL
00004732: SUB
00004733: DUP1
00004734: DUP9
00004735: AND
00004736: PUSH1 0x00
00004738: DUP2
00004739: DUP2
0000473a: MSTORE
0000473b: PUSH1 0x11
0000473d: PUSH1 0x20
0000473f: SWAP1
00004740: DUP2
00004741: MSTORE
00004742: PUSH1 0x40
00004744: SWAP2
00004745: DUP3
00004746: SWAP1
00004747: KECCAK256
00004748: DUP1
00004749: SLOAD
0000474a: PUSH1 0x01
0000474c: DUP2
0000474d: ADD
0000474e: SWAP1
0000474f: SWAP2
00004750: SSTORE
00004751: DUP3
00004752: MLOAD
00004753: PUSH32 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9
00004774: SWAP3
00004775: DUP2
00004776: ADD
00004777: SWAP3
00004778: SWAP1
00004779: SWAP3
0000477a: MSTORE
0000477b: DUP2
0000477c: DUP4
0000477d: ADD
0000477e: DUP5
0000477f: SWAP1
00004780: MSTORE
00004781: SWAP4
00004782: DUP11
00004783: AND
00004784: PUSH1 0x60
00004786: DUP3
00004787: ADD
00004788: MSTORE
00004789: PUSH1 0x80
0000478b: DUP2
0000478c: ADD
0000478d: DUP10
0000478e: SWAP1
0000478f: MSTORE
00004790: PUSH1 0xa0
00004792: DUP2
00004793: ADD
00004794: SWAP4
00004795: SWAP1
00004796: SWAP4
00004797: MSTORE
00004798: PUSH1 0xc0
0000479a: DUP1
0000479b: DUP5
0000479c: ADD
0000479d: DUP9
0000479e: SWAP1
0000479f: MSTORE
000047a0: DUP2
000047a1: MLOAD
000047a2: DUP1
000047a3: DUP6
000047a4: SUB
000047a5: SWAP1
000047a6: SWAP2
000047a7: ADD
000047a8: DUP2
000047a9: MSTORE
000047aa: PUSH1 0xe0
000047ac: SWAP1
000047ad: SWAP4
000047ae: ADD
000047af: SWAP1
000047b0: MSTORE
000047b1: PUSH1 0x0f
000047b3: SLOAD
000047b4: PUSH2 0x47c0
000047b7: SWAP1
000047b8: DUP7
000047b9: DUP7
000047ba: DUP7
000047bb: DUP7
000047bc: PUSH2 0x4b87
000047bf: JUMP
000047c0: JUMPDEST
000047c1: PUSH1 0x01
000047c3: PUSH1 0x01
000047c5: PUSH1 0xa0
000047c7: SHL
000047c8: SUB
000047c9: AND
000047ca: EQ
000047cb: PUSH2 0x481b
000047ce: JUMPI
000047cf: PUSH1 0x40
000047d1: DUP1
000047d2: MLOAD
000047d3: PUSH3 0x461bcd
000047d7: PUSH1 0xe5
000047d9: SHL
000047da: DUP2
000047db: MSTORE
000047dc: PUSH1 0x20
000047de: PUSH1 0x04
000047e0: DUP3
000047e1: ADD
000047e2: MSTORE
000047e3: PUSH1 0x1a
000047e5: PUSH1 0x24
000047e7: DUP3
000047e8: ADD
000047e9: MSTORE
000047ea: PUSH32 0x454950323631323a20696e76616c6964207369676e6174757265000000000000
0000480b: PUSH1 0x44
0000480d: DUP3
0000480e: ADD
0000480f: MSTORE
00004810: SWAP1
00004811: MLOAD
00004812: SWAP1
00004813: DUP2
00004814: SWAP1
00004815: SUB
00004816: PUSH1 0x64
00004818: ADD
00004819: SWAP1
0000481a: REVERT
0000481b: JUMPDEST
0000481c: PUSH2 0x4826
0000481f: DUP9
00004820: DUP9
00004821: DUP9
00004822: PUSH2 0x3cd2
00004825: JUMP
00004826: JUMPDEST
00004827: POP
00004828: POP
00004829: POP
0000482a: POP
0000482b: POP
0000482c: POP
0000482d: POP
0000482e: POP
0000482f: JUMP
00004830: JUMPDEST
00004831: DUP2
00004832: MLOAD
00004833: PUSH1 0x20
00004835: SWAP3
00004836: DUP4
00004837: ADD
00004838: KECCAK256
00004839: DUP2
0000483a: MLOAD
0000483b: SWAP2
0000483c: DUP4
0000483d: ADD
0000483e: SWAP2
0000483f: SWAP1
00004840: SWAP2
00004841: KECCAK256
00004842: PUSH1 0x40
00004844: DUP1
00004845: MLOAD
00004846: PUSH32 0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f
00004867: DUP2
00004868: DUP7
00004869: ADD
0000486a: MSTORE
0000486b: DUP1
0000486c: DUP3
0000486d: ADD
0000486e: SWAP4
0000486f: SWAP1
00004870: SWAP4
00004871: MSTORE
00004872: PUSH1 0x60
00004874: DUP4
00004875: ADD
00004876: SWAP2
00004877: SWAP1
00004878: SWAP2
00004879: MSTORE
0000487a: CHAINID
0000487b: PUSH1 0x80
0000487d: DUP4
0000487e: ADD
0000487f: MSTORE
00004880: ADDRESS
00004881: PUSH1 0xa0
00004883: DUP1
00004884: DUP5
00004885: ADD
00004886: SWAP2
00004887: SWAP1
00004888: SWAP2
00004889: MSTORE
0000488a: DUP2
0000488b: MLOAD
0000488c: DUP1
0000488d: DUP5
0000488e: SUB
0000488f: SWAP1
00004890: SWAP2
00004891: ADD
00004892: DUP2
00004893: MSTORE
00004894: PUSH1 0xc0
00004896: SWAP1
00004897: SWAP3
00004898: ADD
00004899: SWAP1
0000489a: MSTORE
0000489b: DUP1
0000489c: MLOAD
0000489d: SWAP2
0000489e: ADD
0000489f: KECCAK256
000048a0: SWAP1
000048a1: JUMP
000048a2: JUMPDEST
000048a3: PUSH2 0x48ae
000048a6: DUP10
000048a7: DUP6
000048a8: DUP9
000048a9: DUP9
000048aa: PUSH2 0x4cf4
000048ad: JUMP
000048ae: JUMPDEST
000048af: PUSH1 0x40
000048b1: DUP1
000048b2: MLOAD
000048b3: PUSH32 0x7c7c6cdb67a18743f49ec6fa9b35f50d52ed05cbed4cc592e13b44501c1a2267
000048d4: PUSH1 0x20
000048d6: DUP3
000048d7: ADD
000048d8: MSTORE
000048d9: PUSH1 0x01
000048db: PUSH1 0x01
000048dd: PUSH1 0xa0
000048df: SHL
000048e0: SUB
000048e1: DUP1
000048e2: DUP13
000048e3: AND
000048e4: DUP3
000048e5: DUP5
000048e6: ADD
000048e7: DUP2
000048e8: SWAP1
000048e9: MSTORE
000048ea: SWAP1
000048eb: DUP12
000048ec: AND
000048ed: PUSH1 0x60
000048ef: DUP4
000048f0: ADD
000048f1: MSTORE
000048f2: PUSH1 0x80
000048f4: DUP3
000048f5: ADD
000048f6: DUP11
000048f7: SWAP1
000048f8: MSTORE
000048f9: PUSH1 0xa0
000048fb: DUP3
000048fc: ADD
000048fd: DUP10
000048fe: SWAP1
000048ff: MSTORE
00004900: PUSH1 0xc0
00004902: DUP3
00004903: ADD
00004904: DUP9
00004905: SWAP1
00004906: MSTORE
00004907: PUSH1 0xe0
00004909: DUP1
0000490a: DUP4
0000490b: ADD
0000490c: DUP9
0000490d: SWAP1
0000490e: MSTORE
0000490f: DUP4
00004910: MLOAD
00004911: DUP1
00004912: DUP5
00004913: SUB
00004914: SWAP1
00004915: SWAP2
00004916: ADD
00004917: DUP2
00004918: MSTORE
00004919: PUSH2 0x0100
0000491c: SWAP1
0000491d: SWAP3
0000491e: ADD
0000491f: SWAP1
00004920: SWAP3
00004921: MSTORE
00004922: PUSH1 0x0f
00004924: SLOAD
00004925: SWAP1
00004926: SWAP2
00004927: SWAP1
00004928: PUSH2 0x4934
0000492b: SWAP1
0000492c: DUP7
0000492d: DUP7
0000492e: DUP7
0000492f: DUP7
00004930: PUSH2 0x4b87
00004933: JUMP
00004934: JUMPDEST
00004935: PUSH1 0x01
00004937: PUSH1 0x01
00004939: PUSH1 0xa0
0000493b: SHL
0000493c: SUB
0000493d: AND
0000493e: EQ
0000493f: PUSH2 0x498f
00004942: JUMPI
00004943: PUSH1 0x40
00004945: DUP1
00004946: MLOAD
00004947: PUSH3 0x461bcd
0000494b: PUSH1 0xe5
0000494d: SHL
0000494e: DUP2
0000494f: MSTORE
00004950: PUSH1 0x20
00004952: PUSH1 0x04
00004954: DUP3
00004955: ADD
00004956: MSTORE
00004957: PUSH1 0x1e
00004959: PUSH1 0x24
0000495b: DUP3
0000495c: ADD
0000495d: MSTORE
0000495e: PUSH32 0x46696174546f6b656e56323a20696e76616c6964207369676e61747572650000
0000497f: PUSH1 0x44
00004981: DUP3
00004982: ADD
00004983: MSTORE
00004984: SWAP1
00004985: MLOAD
00004986: SWAP1
00004987: DUP2
00004988: SWAP1
00004989: SUB
0000498a: PUSH1 0x64
0000498c: ADD
0000498d: SWAP1
0000498e: REVERT
0000498f: JUMPDEST
00004990: PUSH2 0x4999
00004993: DUP11
00004994: DUP7
00004995: PUSH2 0x4d80
00004998: JUMP
00004999: JUMPDEST
0000499a: PUSH2 0x49a4
0000499d: DUP11
0000499e: DUP11
0000499f: DUP11
000049a0: PUSH2 0x3dbe
000049a3: JUMP
000049a4: JUMPDEST
000049a5: POP
000049a6: POP
000049a7: POP
000049a8: POP
000049a9: POP
000049aa: POP
000049ab: POP
000049ac: POP
000049ad: POP
000049ae: POP
000049af: JUMP
000049b0: JUMPDEST
000049b1: PUSH1 0x01
000049b3: PUSH1 0x01
000049b5: PUSH1 0xa0
000049b7: SHL
000049b8: SUB
000049b9: DUP9
000049ba: AND
000049bb: CALLER
000049bc: EQ
000049bd: PUSH2 0x49f7
000049c0: JUMPI
000049c1: PUSH1 0x40
000049c3: MLOAD
000049c4: PUSH3 0x461bcd
000049c8: PUSH1 0xe5
000049ca: SHL
000049cb: DUP2
000049cc: MSTORE
000049cd: PUSH1 0x04
000049cf: ADD
000049d0: DUP1
000049d1: DUP1
000049d2: PUSH1 0x20
000049d4: ADD
000049d5: DUP3
000049d6: DUP2
000049d7: SUB
000049d8: DUP3
000049d9: MSTORE
000049da: PUSH1 0x25
000049dc: DUP2
000049dd: MSTORE
000049de: PUSH1 0x20
000049e0: ADD
000049e1: DUP1
000049e2: PUSH2 0x56c4
000049e5: PUSH1 0x25
000049e7: SWAP2
000049e8: CODECOPY
000049e9: PUSH1 0x40
000049eb: ADD
000049ec: SWAP2
000049ed: POP
000049ee: POP
000049ef: PUSH1 0x40
000049f1: MLOAD
000049f2: DUP1
000049f3: SWAP2
000049f4: SUB
000049f5: SWAP1
000049f6: REVERT
000049f7: JUMPDEST
000049f8: PUSH2 0x4a03
000049fb: DUP10
000049fc: DUP6
000049fd: DUP9
000049fe: DUP9
000049ff: PUSH2 0x4cf4
00004a02: JUMP
00004a03: JUMPDEST
00004a04: PUSH1 0x40
00004a06: DUP1
00004a07: MLOAD
00004a08: PUSH32 0xd099cc98ef71107a616c4f0f941f04c322d8e254fe26b3c6668db87aae413de8
00004a29: PUSH1 0x20
00004a2b: DUP3
00004a2c: ADD
00004a2d: MSTORE
00004a2e: PUSH1 0x01
00004a30: PUSH1 0x01
00004a32: PUSH1 0xa0
00004a34: SHL
00004a35: SUB
00004a36: DUP1
00004a37: DUP13
00004a38: AND
00004a39: DUP3
00004a3a: DUP5
00004a3b: ADD
00004a3c: DUP2
00004a3d: SWAP1
00004a3e: MSTORE
00004a3f: SWAP1
00004a40: DUP12
00004a41: AND
00004a42: PUSH1 0x60
00004a44: DUP4
00004a45: ADD
00004a46: MSTORE
00004a47: PUSH1 0x80
00004a49: DUP3
00004a4a: ADD
00004a4b: DUP11
00004a4c: SWAP1
00004a4d: MSTORE
00004a4e: PUSH1 0xa0
00004a50: DUP3
00004a51: ADD
00004a52: DUP10
00004a53: SWAP1
00004a54: MSTORE
00004a55: PUSH1 0xc0
00004a57: DUP3
00004a58: ADD
00004a59: DUP9
00004a5a: SWAP1
00004a5b: MSTORE
00004a5c: PUSH1 0xe0
00004a5e: DUP1
00004a5f: DUP4
00004a60: ADD
00004a61: DUP9
00004a62: SWAP1
00004a63: MSTORE
00004a64: DUP4
00004a65: MLOAD
00004a66: DUP1
00004a67: DUP5
00004a68: SUB
00004a69: SWAP1
00004a6a: SWAP2
00004a6b: ADD
00004a6c: DUP2
00004a6d: MSTORE
00004a6e: PUSH2 0x0100
00004a71: SWAP1
00004a72: SWAP3
00004a73: ADD
00004a74: SWAP1
00004a75: SWAP3
00004a76: MSTORE
00004a77: PUSH1 0x0f
00004a79: SLOAD
00004a7a: SWAP1
00004a7b: SWAP2
00004a7c: SWAP1
00004a7d: PUSH2 0x4934
00004a80: SWAP1
00004a81: DUP7
00004a82: DUP7
00004a83: DUP7
00004a84: DUP7
00004a85: PUSH2 0x4b87
00004a88: JUMP
00004a89: JUMPDEST
00004a8a: PUSH1 0x00
00004a8c: DUP2
00004a8d: DUP5
00004a8e: DUP5
00004a8f: GT
00004a90: ISZERO
00004a91: PUSH2 0x4b18
00004a94: JUMPI
00004a95: PUSH1 0x40
00004a97: MLOAD
00004a98: PUSH3 0x461bcd
00004a9c: PUSH1 0xe5
00004a9e: SHL
00004a9f: DUP2
00004aa0: MSTORE
00004aa1: PUSH1 0x04
00004aa3: ADD
00004aa4: DUP1
00004aa5: DUP1
00004aa6: PUSH1 0x20
00004aa8: ADD
00004aa9: DUP3
00004aaa: DUP2
00004aab: SUB
00004aac: DUP3
00004aad: MSTORE
00004aae: DUP4
00004aaf: DUP2
00004ab0: DUP2
00004ab1: MLOAD
00004ab2: DUP2
00004ab3: MSTORE
00004ab4: PUSH1 0x20
00004ab6: ADD
00004ab7: SWAP2
00004ab8: POP
00004ab9: DUP1
00004aba: MLOAD
00004abb: SWAP1
00004abc: PUSH1 0x20
00004abe: ADD
00004abf: SWAP1
00004ac0: DUP1
00004ac1: DUP4
00004ac2: DUP4
00004ac3: PUSH1 0x00
00004ac5: JUMPDEST
00004ac6: DUP4
00004ac7: DUP2
00004ac8: LT
00004ac9: ISZERO
00004aca: PUSH2 0x4add
00004acd: JUMPI
00004ace: DUP2
00004acf: DUP2
00004ad0: ADD
00004ad1: MLOAD
00004ad2: DUP4
00004ad3: DUP3
00004ad4: ADD
00004ad5: MSTORE
00004ad6: PUSH1 0x20
00004ad8: ADD
00004ad9: PUSH2 0x4ac5
00004adc: JUMP
00004add: JUMPDEST
00004ade: POP
00004adf: POP
00004ae0: POP
00004ae1: POP
00004ae2: SWAP1
00004ae3: POP
00004ae4: SWAP1
00004ae5: DUP2
00004ae6: ADD
00004ae7: SWAP1
00004ae8: PUSH1 0x1f
00004aea: AND
00004aeb: DUP1
00004aec: ISZERO
00004aed: PUSH2 0x4b0a
00004af0: JUMPI
00004af1: DUP1
00004af2: DUP3
00004af3: SUB
00004af4: DUP1
00004af5: MLOAD
00004af6: PUSH1 0x01
00004af8: DUP4
00004af9: PUSH1 0x20
00004afb: SUB
00004afc: PUSH2 0x0100
00004aff: EXP
00004b00: SUB
00004b01: NOT
00004b02: AND
00004b03: DUP2
00004b04: MSTORE
00004b05: PUSH1 0x20
00004b07: ADD
00004b08: SWAP2
00004b09: POP
00004b0a: JUMPDEST
00004b0b: POP
00004b0c: SWAP3
00004b0d: POP
00004b0e: POP
00004b0f: POP
00004b10: PUSH1 0x40
00004b12: MLOAD
00004b13: DUP1
00004b14: SWAP2
00004b15: SUB
00004b16: SWAP1
00004b17: REVERT
00004b18: JUMPDEST
00004b19: POP
00004b1a: POP
00004b1b: POP
00004b1c: SWAP1
00004b1d: SUB
00004b1e: SWAP1
00004b1f: JUMP
00004b20: JUMPDEST
00004b21: PUSH1 0x01
00004b23: PUSH1 0x01
00004b25: PUSH1 0xa0
00004b27: SHL
00004b28: SUB
00004b29: DUP3
00004b2a: AND
00004b2b: PUSH1 0x00
00004b2d: SWAP1
00004b2e: DUP2
00004b2f: MSTORE
00004b30: PUSH1 0x10
00004b32: PUSH1 0x20
00004b34: SWAP1
00004b35: DUP2
00004b36: MSTORE
00004b37: PUSH1 0x40
00004b39: DUP1
00004b3a: DUP4
00004b3b: KECCAK256
00004b3c: DUP5
00004b3d: DUP5
00004b3e: MSTORE
00004b3f: SWAP1
00004b40: SWAP2
00004b41: MSTORE
00004b42: SWAP1
00004b43: KECCAK256
00004b44: SLOAD
00004b45: PUSH1 0xff
00004b47: AND
00004b48: ISZERO
00004b49: PUSH2 0x4b83
00004b4c: JUMPI
00004b4d: PUSH1 0x40
00004b4f: MLOAD
00004b50: PUSH3 0x461bcd
00004b54: PUSH1 0xe5
00004b56: SHL
00004b57: DUP2
00004b58: MSTORE
00004b59: PUSH1 0x04
00004b5b: ADD
00004b5c: DUP1
00004b5d: DUP1
00004b5e: PUSH1 0x20
00004b60: ADD
00004b61: DUP3
00004b62: DUP2
00004b63: SUB
00004b64: DUP3
00004b65: MSTORE
00004b66: PUSH1 0x2e
00004b68: DUP2
00004b69: MSTORE
00004b6a: PUSH1 0x20
00004b6c: ADD
00004b6d: DUP1
00004b6e: PUSH2 0x5918
00004b71: PUSH1 0x2e
00004b73: SWAP2
00004b74: CODECOPY
00004b75: PUSH1 0x40
00004b77: ADD
00004b78: SWAP2
00004b79: POP
00004b7a: POP
00004b7b: PUSH1 0x40
00004b7d: MLOAD
00004b7e: DUP1
00004b7f: SWAP2
00004b80: SUB
00004b81: SWAP1
00004b82: REVERT
00004b83: JUMPDEST
00004b84: POP
00004b85: POP
00004b86: JUMP
00004b87: JUMPDEST
00004b88: DUP1
00004b89: MLOAD
00004b8a: PUSH1 0x20
00004b8c: DUP1
00004b8d: DUP4
00004b8e: ADD
00004b8f: SWAP2
00004b90: SWAP1
00004b91: SWAP2
00004b92: KECCAK256
00004b93: PUSH1 0x40
00004b95: DUP1
00004b96: MLOAD
00004b97: PUSH2 0x1901
00004b9a: PUSH1 0xf0
00004b9c: SHL
00004b9d: DUP2
00004b9e: DUP6
00004b9f: ADD
00004ba0: MSTORE
00004ba1: PUSH1 0x22
00004ba3: DUP2
00004ba4: ADD
00004ba5: DUP10
00004ba6: SWAP1
00004ba7: MSTORE
00004ba8: PUSH1 0x42
00004baa: DUP1
00004bab: DUP3
00004bac: ADD
00004bad: SWAP4
00004bae: SWAP1
00004baf: SWAP4
00004bb0: MSTORE
00004bb1: DUP2
00004bb2: MLOAD
00004bb3: DUP1
00004bb4: DUP3
00004bb5: SUB
00004bb6: SWAP1
00004bb7: SWAP4
00004bb8: ADD
00004bb9: DUP4
00004bba: MSTORE
00004bbb: PUSH1 0x62
00004bbd: ADD
00004bbe: SWAP1
00004bbf: MSTORE
00004bc0: DUP1
00004bc1: MLOAD
00004bc2: SWAP2
00004bc3: ADD
00004bc4: KECCAK256
00004bc5: PUSH1 0x00
00004bc7: SWAP1
00004bc8: PUSH2 0x4bd3
00004bcb: DUP2
00004bcc: DUP8
00004bcd: DUP8
00004bce: DUP8
00004bcf: PUSH2 0x4dda
00004bd2: JUMP
00004bd3: JUMPDEST
00004bd4: SWAP8
00004bd5: SWAP7
00004bd6: POP
00004bd7: POP
00004bd8: POP
00004bd9: POP
00004bda: POP
00004bdb: POP
00004bdc: POP
00004bdd: JUMP
00004bde: JUMPDEST
00004bdf: PUSH1 0x00
00004be1: DUP2
00004be2: DUP4
00004be3: PUSH2 0x4c2d
00004be6: JUMPI
00004be7: PUSH1 0x40
00004be9: MLOAD
00004bea: PUSH3 0x461bcd
00004bee: PUSH1 0xe5
00004bf0: SHL
00004bf1: DUP2
00004bf2: MSTORE
00004bf3: PUSH1 0x20
00004bf5: PUSH1 0x04
00004bf7: DUP3
00004bf8: ADD
00004bf9: DUP2
00004bfa: DUP2
00004bfb: MSTORE
00004bfc: DUP4
00004bfd: MLOAD
00004bfe: PUSH1 0x24
00004c00: DUP5
00004c01: ADD
00004c02: MSTORE
00004c03: DUP4
00004c04: MLOAD
00004c05: SWAP1
00004c06: SWAP3
00004c07: DUP4
00004c08: SWAP3
00004c09: PUSH1 0x44
00004c0b: SWAP1
00004c0c: SWAP2
00004c0d: ADD
00004c0e: SWAP2
00004c0f: SWAP1
00004c10: DUP6
00004c11: ADD
00004c12: SWAP1
00004c13: DUP1
00004c14: DUP4
00004c15: DUP4
00004c16: PUSH1 0x00
00004c18: DUP4
00004c19: ISZERO
00004c1a: PUSH2 0x4add
00004c1d: JUMPI
00004c1e: DUP2
00004c1f: DUP2
00004c20: ADD
00004c21: MLOAD
00004c22: DUP4
00004c23: DUP3
00004c24: ADD
00004c25: MSTORE
00004c26: PUSH1 0x20
00004c28: ADD
00004c29: PUSH2 0x4ac5
00004c2c: JUMP
00004c2d: JUMPDEST
00004c2e: POP
00004c2f: PUSH1 0x00
00004c31: DUP4
00004c32: DUP6
00004c33: DUP2
00004c34: PUSH2 0x4c39
00004c37: JUMPI
00004c38: INVALID
00004c39: JUMPDEST
00004c3a: DIV
00004c3b: SWAP6
00004c3c: SWAP5
00004c3d: POP
00004c3e: POP
00004c3f: POP
00004c40: POP
00004c41: POP
00004c42: JUMP
00004c43: JUMPDEST
00004c44: PUSH1 0x60
00004c46: PUSH2 0x4c98
00004c49: DUP3
00004c4a: PUSH1 0x40
00004c4c: MLOAD
00004c4d: DUP1
00004c4e: PUSH1 0x40
00004c50: ADD
00004c51: PUSH1 0x40
00004c53: MSTORE
00004c54: DUP1
00004c55: PUSH1 0x20
00004c57: DUP2
00004c58: MSTORE
00004c59: PUSH1 0x20
00004c5b: ADD
00004c5c: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
00004c7d: DUP2
00004c7e: MSTORE
00004c7f: POP
00004c80: DUP6
00004c81: PUSH1 0x01
00004c83: PUSH1 0x01
00004c85: PUSH1 0xa0
00004c87: SHL
00004c88: SUB
00004c89: AND
00004c8a: PUSH2 0x4f5e
00004c8d: SWAP1
00004c8e: SWAP3
00004c8f: SWAP2
00004c90: SWAP1
00004c91: PUSH4 0xffffffff
00004c96: AND
00004c97: JUMP
00004c98: JUMPDEST
00004c99: DUP1
00004c9a: MLOAD
00004c9b: SWAP1
00004c9c: SWAP2
00004c9d: POP
00004c9e: ISZERO
00004c9f: PUSH2 0x3477
00004ca2: JUMPI
00004ca3: DUP1
00004ca4: DUP1
00004ca5: PUSH1 0x20
00004ca7: ADD
00004ca8: SWAP1
00004ca9: MLOAD
00004caa: PUSH1 0x20
00004cac: DUP2
00004cad: LT
00004cae: ISZERO
00004caf: PUSH2 0x4cb7
00004cb2: JUMPI
00004cb3: PUSH1 0x00
00004cb5: DUP1
00004cb6: REVERT
00004cb7: JUMPDEST
00004cb8: POP
00004cb9: MLOAD
00004cba: PUSH2 0x3477
00004cbd: JUMPI
00004cbe: PUSH1 0x40
00004cc0: MLOAD
00004cc1: PUSH3 0x461bcd
00004cc5: PUSH1 0xe5
00004cc7: SHL
00004cc8: DUP2
00004cc9: MSTORE
00004cca: PUSH1 0x04
00004ccc: ADD
00004ccd: DUP1
00004cce: DUP1
00004ccf: PUSH1 0x20
00004cd1: ADD
00004cd2: DUP3
00004cd3: DUP2
00004cd4: SUB
00004cd5: DUP3
00004cd6: MSTORE
00004cd7: PUSH1 0x2a
00004cd9: DUP2
00004cda: MSTORE
00004cdb: PUSH1 0x20
00004cdd: ADD
00004cde: DUP1
00004cdf: PUSH2 0x589d
00004ce2: PUSH1 0x2a
00004ce4: SWAP2
00004ce5: CODECOPY
00004ce6: PUSH1 0x40
00004ce8: ADD
00004ce9: SWAP2
00004cea: POP
00004ceb: POP
00004cec: PUSH1 0x40
00004cee: MLOAD
00004cef: DUP1
00004cf0: SWAP2
00004cf1: SUB
00004cf2: SWAP1
00004cf3: REVERT
00004cf4: JUMPDEST
00004cf5: DUP2
00004cf6: TIMESTAMP
00004cf7: GT
00004cf8: PUSH2 0x4d32
00004cfb: JUMPI
00004cfc: PUSH1 0x40
00004cfe: MLOAD
00004cff: PUSH3 0x461bcd
00004d03: PUSH1 0xe5
00004d05: SHL
00004d06: DUP2
00004d07: MSTORE
00004d08: PUSH1 0x04
00004d0a: ADD
00004d0b: DUP1
00004d0c: DUP1
00004d0d: PUSH1 0x20
00004d0f: ADD
00004d10: DUP3
00004d11: DUP2
00004d12: SUB
00004d13: DUP3
00004d14: MSTORE
00004d15: PUSH1 0x2b
00004d17: DUP2
00004d18: MSTORE
00004d19: PUSH1 0x20
00004d1b: ADD
00004d1c: DUP1
00004d1d: PUSH2 0x525b
00004d20: PUSH1 0x2b
00004d22: SWAP2
00004d23: CODECOPY
00004d24: PUSH1 0x40
00004d26: ADD
00004d27: SWAP2
00004d28: POP
00004d29: POP
00004d2a: PUSH1 0x40
00004d2c: MLOAD
00004d2d: DUP1
00004d2e: SWAP2
00004d2f: SUB
00004d30: SWAP1
00004d31: REVERT
00004d32: JUMPDEST
00004d33: DUP1
00004d34: TIMESTAMP
00004d35: LT
00004d36: PUSH2 0x4d70
00004d39: JUMPI
00004d3a: PUSH1 0x40
00004d3c: MLOAD
00004d3d: PUSH3 0x461bcd
00004d41: PUSH1 0xe5
00004d43: SHL
00004d44: DUP2
00004d45: MSTORE
00004d46: PUSH1 0x04
00004d48: ADD
00004d49: DUP1
00004d4a: DUP1
00004d4b: PUSH1 0x20
00004d4d: ADD
00004d4e: DUP3
00004d4f: DUP2
00004d50: SUB
00004d51: DUP3
00004d52: MSTORE
00004d53: PUSH1 0x25
00004d55: DUP2
00004d56: MSTORE
00004d57: PUSH1 0x20
00004d59: ADD
00004d5a: DUP1
00004d5b: PUSH2 0x599d
00004d5e: PUSH1 0x25
00004d60: SWAP2
00004d61: CODECOPY
00004d62: PUSH1 0x40
00004d64: ADD
00004d65: SWAP2
00004d66: POP
00004d67: POP
00004d68: PUSH1 0x40
00004d6a: MLOAD
00004d6b: DUP1
00004d6c: SWAP2
00004d6d: SUB
00004d6e: SWAP1
00004d6f: REVERT
00004d70: JUMPDEST
00004d71: PUSH2 0x4d7a
00004d74: DUP5
00004d75: DUP5
00004d76: PUSH2 0x4b20
00004d79: JUMP
00004d7a: JUMPDEST
00004d7b: POP
00004d7c: POP
00004d7d: POP
00004d7e: POP
00004d7f: JUMP
00004d80: JUMPDEST
00004d81: PUSH1 0x01
00004d83: PUSH1 0x01
00004d85: PUSH1 0xa0
00004d87: SHL
00004d88: SUB
00004d89: DUP3
00004d8a: AND
00004d8b: PUSH1 0x00
00004d8d: DUP2
00004d8e: DUP2
00004d8f: MSTORE
00004d90: PUSH1 0x10
00004d92: PUSH1 0x20
00004d94: SWAP1
00004d95: DUP2
00004d96: MSTORE
00004d97: PUSH1 0x40
00004d99: DUP1
00004d9a: DUP4
00004d9b: KECCAK256
00004d9c: DUP6
00004d9d: DUP5
00004d9e: MSTORE
00004d9f: SWAP1
00004da0: SWAP2
00004da1: MSTORE
00004da2: DUP1
00004da3: DUP3
00004da4: KECCAK256
00004da5: DUP1
00004da6: SLOAD
00004da7: PUSH1 0xff
00004da9: NOT
00004daa: AND
00004dab: PUSH1 0x01
00004dad: OR
00004dae: SWAP1
00004daf: SSTORE
00004db0: MLOAD
00004db1: DUP4
00004db2: SWAP3
00004db3: SWAP2
00004db4: PUSH32 0x98de503528ee59b575ef0c0a2576a82497bfc029a5685b209e9ec333479b10a5
00004dd5: SWAP2
00004dd6: LOG3
00004dd7: POP
00004dd8: POP
00004dd9: JUMP
00004dda: JUMPDEST
00004ddb: PUSH1 0x00
00004ddd: PUSH32 0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0
00004dfe: DUP3
00004dff: GT
00004e00: ISZERO
00004e01: PUSH2 0x4e3b
00004e04: JUMPI
00004e05: PUSH1 0x40
00004e07: MLOAD
00004e08: PUSH3 0x461bcd
00004e0c: PUSH1 0xe5
00004e0e: SHL
00004e0f: DUP2
00004e10: MSTORE
00004e11: PUSH1 0x04
00004e13: ADD
00004e14: DUP1
00004e15: DUP1
00004e16: PUSH1 0x20
00004e18: ADD
00004e19: DUP3
00004e1a: DUP2
00004e1b: SUB
00004e1c: DUP3
00004e1d: MSTORE
00004e1e: PUSH1 0x26
00004e20: DUP2
00004e21: MSTORE
00004e22: PUSH1 0x20
00004e24: ADD
00004e25: DUP1
00004e26: PUSH2 0x584e
00004e29: PUSH1 0x26
00004e2b: SWAP2
00004e2c: CODECOPY
00004e2d: PUSH1 0x40
00004e2f: ADD
00004e30: SWAP2
00004e31: POP
00004e32: POP
00004e33: PUSH1 0x40
00004e35: MLOAD
00004e36: DUP1
00004e37: SWAP2
00004e38: SUB
00004e39: SWAP1
00004e3a: REVERT
00004e3b: JUMPDEST
00004e3c: DUP4
00004e3d: PUSH1 0xff
00004e3f: AND
00004e40: PUSH1 0x1b
00004e42: EQ
00004e43: ISZERO
00004e44: DUP1
00004e45: ISZERO
00004e46: PUSH2 0x4e53
00004e49: JUMPI
00004e4a: POP
00004e4b: DUP4
00004e4c: PUSH1 0xff
00004e4e: AND
00004e4f: PUSH1 0x1c
00004e51: EQ
00004e52: ISZERO
00004e53: JUMPDEST
00004e54: ISZERO
00004e55: PUSH2 0x4e8f
00004e58: JUMPI
00004e59: PUSH1 0x40
00004e5b: MLOAD
00004e5c: PUSH3 0x461bcd
00004e60: PUSH1 0xe5
00004e62: SHL
00004e63: DUP2
00004e64: MSTORE
00004e65: PUSH1 0x04
00004e67: ADD
00004e68: DUP1
00004e69: DUP1
00004e6a: PUSH1 0x20
00004e6c: ADD
00004e6d: DUP3
00004e6e: DUP2
00004e6f: SUB
00004e70: DUP3
00004e71: MSTORE
00004e72: PUSH1 0x26
00004e74: DUP2
00004e75: MSTORE
00004e76: PUSH1 0x20
00004e78: ADD
00004e79: DUP1
00004e7a: PUSH2 0x52d2
00004e7d: PUSH1 0x26
00004e7f: SWAP2
00004e80: CODECOPY
00004e81: PUSH1 0x40
00004e83: ADD
00004e84: SWAP2
00004e85: POP
00004e86: POP
00004e87: PUSH1 0x40
00004e89: MLOAD
00004e8a: DUP1
00004e8b: SWAP2
00004e8c: SUB
00004e8d: SWAP1
00004e8e: REVERT
00004e8f: JUMPDEST
00004e90: PUSH1 0x00
00004e92: PUSH1 0x01
00004e94: DUP7
00004e95: DUP7
00004e96: DUP7
00004e97: DUP7
00004e98: PUSH1 0x40
00004e9a: MLOAD
00004e9b: PUSH1 0x00
00004e9d: DUP2
00004e9e: MSTORE
00004e9f: PUSH1 0x20
00004ea1: ADD
00004ea2: PUSH1 0x40
00004ea4: MSTORE
00004ea5: PUSH1 0x40
00004ea7: MLOAD
00004ea8: DUP1
00004ea9: DUP6
00004eaa: DUP2
00004eab: MSTORE
00004eac: PUSH1 0x20
00004eae: ADD
00004eaf: DUP5
00004eb0: PUSH1 0xff
00004eb2: AND
00004eb3: DUP2
00004eb4: MSTORE
00004eb5: PUSH1 0x20
00004eb7: ADD
00004eb8: DUP4
00004eb9: DUP2
00004eba: MSTORE
00004ebb: PUSH1 0x20
00004ebd: ADD
00004ebe: DUP3
00004ebf: DUP2
00004ec0: MSTORE
00004ec1: PUSH1 0x20
00004ec3: ADD
00004ec4: SWAP5
00004ec5: POP
00004ec6: POP
00004ec7: POP
00004ec8: POP
00004ec9: POP
00004eca: PUSH1 0x20
00004ecc: PUSH1 0x40
00004ece: MLOAD
00004ecf: PUSH1 0x20
00004ed1: DUP2
00004ed2: SUB
00004ed3: SWAP1
00004ed4: DUP1
00004ed5: DUP5
00004ed6: SUB
00004ed7: SWAP1
00004ed8: DUP6
00004ed9: GAS
00004eda: STATICCALL
00004edb: ISZERO
00004edc: DUP1
00004edd: ISZERO
00004ede: PUSH2 0x4eeb
00004ee1: JUMPI
00004ee2: RETURNDATASIZE
00004ee3: PUSH1 0x00
00004ee5: DUP1
00004ee6: RETURNDATACOPY
00004ee7: RETURNDATASIZE
00004ee8: PUSH1 0x00
00004eea: REVERT
00004eeb: JUMPDEST
00004eec: POP
00004eed: POP
00004eee: PUSH1 0x40
00004ef0: MLOAD
00004ef1: PUSH1 0x1f
00004ef3: NOT
00004ef4: ADD
00004ef5: MLOAD
00004ef6: SWAP2
00004ef7: POP
00004ef8: POP
00004ef9: PUSH1 0x01
00004efb: PUSH1 0x01
00004efd: PUSH1 0xa0
00004eff: SHL
00004f00: SUB
00004f01: DUP2
00004f02: AND
00004f03: PUSH2 0x4f53
00004f06: JUMPI
00004f07: PUSH1 0x40
00004f09: DUP1
00004f0a: MLOAD
00004f0b: PUSH3 0x461bcd
00004f0f: PUSH1 0xe5
00004f11: SHL
00004f12: DUP2
00004f13: MSTORE
00004f14: PUSH1 0x20
00004f16: PUSH1 0x04
00004f18: DUP3
00004f19: ADD
00004f1a: MSTORE
00004f1b: PUSH1 0x1c
00004f1d: PUSH1 0x24
00004f1f: DUP3
00004f20: ADD
00004f21: MSTORE
00004f22: PUSH32 0x45435265636f7665723a20696e76616c6964207369676e617475726500000000
00004f43: PUSH1 0x44
00004f45: DUP3
00004f46: ADD
00004f47: MSTORE
00004f48: SWAP1
00004f49: MLOAD
00004f4a: SWAP1
00004f4b: DUP2
00004f4c: SWAP1
00004f4d: SUB
00004f4e: PUSH1 0x64
00004f50: ADD
00004f51: SWAP1
00004f52: REVERT
00004f53: JUMPDEST
00004f54: SWAP1
00004f55: POP
00004f56: JUMPDEST
00004f57: SWAP5
00004f58: SWAP4
00004f59: POP
00004f5a: POP
00004f5b: POP
00004f5c: POP
00004f5d: JUMP
00004f5e: JUMPDEST
00004f5f: PUSH1 0x60
00004f61: PUSH2 0x4f56
00004f64: DUP5
00004f65: DUP5
00004f66: PUSH1 0x00
00004f68: DUP6
00004f69: PUSH1 0x60
00004f6b: PUSH2 0x4f73
00004f6e: DUP6
00004f6f: PUSH2 0x50d5
00004f72: JUMP
00004f73: JUMPDEST
00004f74: PUSH2 0x4fc4
00004f77: JUMPI
00004f78: PUSH1 0x40
00004f7a: DUP1
00004f7b: MLOAD
00004f7c: PUSH3 0x461bcd
00004f80: PUSH1 0xe5
00004f82: SHL
00004f83: DUP2
00004f84: MSTORE
00004f85: PUSH1 0x20
00004f87: PUSH1 0x04
00004f89: DUP3
00004f8a: ADD
00004f8b: MSTORE
00004f8c: PUSH1 0x1d
00004f8e: PUSH1 0x24
00004f90: DUP3
00004f91: ADD
00004f92: MSTORE
00004f93: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
00004fb4: PUSH1 0x44
00004fb6: DUP3
00004fb7: ADD
00004fb8: MSTORE
00004fb9: SWAP1
00004fba: MLOAD
00004fbb: SWAP1
00004fbc: DUP2
00004fbd: SWAP1
00004fbe: SUB
00004fbf: PUSH1 0x64
00004fc1: ADD
00004fc2: SWAP1
00004fc3: REVERT
00004fc4: JUMPDEST
00004fc5: PUSH1 0x00
00004fc7: PUSH1 0x60
00004fc9: DUP7
00004fca: PUSH1 0x01
00004fcc: PUSH1 0x01
00004fce: PUSH1 0xa0
00004fd0: SHL
00004fd1: SUB
00004fd2: AND
00004fd3: DUP6
00004fd4: DUP8
00004fd5: PUSH1 0x40
00004fd7: MLOAD
00004fd8: DUP1
00004fd9: DUP3
00004fda: DUP1
00004fdb: MLOAD
00004fdc: SWAP1
00004fdd: PUSH1 0x20
00004fdf: ADD
00004fe0: SWAP1
00004fe1: DUP1
00004fe2: DUP4
00004fe3: DUP4
00004fe4: JUMPDEST
00004fe5: PUSH1 0x20
00004fe7: DUP4
00004fe8: LT
00004fe9: PUSH2 0x5003
00004fec: JUMPI
00004fed: DUP1
00004fee: MLOAD
00004fef: DUP3
00004ff0: MSTORE
00004ff1: PUSH1 0x1f
00004ff3: NOT
00004ff4: SWAP1
00004ff5: SWAP3
00004ff6: ADD
00004ff7: SWAP2
00004ff8: PUSH1 0x20
00004ffa: SWAP2
00004ffb: DUP3
00004ffc: ADD
00004ffd: SWAP2
00004ffe: ADD
00004fff: PUSH2 0x4fe4
00005002: JUMP
00005003: JUMPDEST
00005004: PUSH1 0x01
00005006: DUP4
00005007: PUSH1 0x20
00005009: SUB
0000500a: PUSH2 0x0100
0000500d: EXP
0000500e: SUB
0000500f: DUP1
00005010: NOT
00005011: DUP3
00005012: MLOAD
00005013: AND
00005014: DUP2
00005015: DUP5
00005016: MLOAD
00005017: AND
00005018: DUP1
00005019: DUP3
0000501a: OR
0000501b: DUP6
0000501c: MSTORE
0000501d: POP
0000501e: POP
0000501f: POP
00005020: POP
00005021: POP
00005022: POP
00005023: SWAP1
00005024: POP
00005025: ADD
00005026: SWAP2
00005027: POP
00005028: POP
00005029: PUSH1 0x00
0000502b: PUSH1 0x40
0000502d: MLOAD
0000502e: DUP1
0000502f: DUP4
00005030: SUB
00005031: DUP2
00005032: DUP6
00005033: DUP8
00005034: GAS
00005035: CALL
00005036: SWAP3
00005037: POP
00005038: POP
00005039: POP
0000503a: RETURNDATASIZE
0000503b: DUP1
0000503c: PUSH1 0x00
0000503e: DUP2
0000503f: EQ
00005040: PUSH2 0x5065
00005043: JUMPI
00005044: PUSH1 0x40
00005046: MLOAD
00005047: SWAP2
00005048: POP
00005049: PUSH1 0x1f
0000504b: NOT
0000504c: PUSH1 0x3f
0000504e: RETURNDATASIZE
0000504f: ADD
00005050: AND
00005051: DUP3
00005052: ADD
00005053: PUSH1 0x40
00005055: MSTORE
00005056: RETURNDATASIZE
00005057: DUP3
00005058: MSTORE
00005059: RETURNDATASIZE
0000505a: PUSH1 0x00
0000505c: PUSH1 0x20
0000505e: DUP5
0000505f: ADD
00005060: RETURNDATACOPY
00005061: PUSH2 0x506a
00005064: JUMP
00005065: JUMPDEST
00005066: PUSH1 0x60
00005068: SWAP2
00005069: POP
0000506a: JUMPDEST
0000506b: POP
0000506c: SWAP2
0000506d: POP
0000506e: SWAP2
0000506f: POP
00005070: DUP2
00005071: ISZERO
00005072: PUSH2 0x507e
00005075: JUMPI
00005076: SWAP2
00005077: POP
00005078: PUSH2 0x4f56
0000507b: SWAP1
0000507c: POP
0000507d: JUMP
0000507e: JUMPDEST
0000507f: DUP1
00005080: MLOAD
00005081: ISZERO
00005082: PUSH2 0x508e
00005085: JUMPI
00005086: DUP1
00005087: MLOAD
00005088: DUP1
00005089: DUP3
0000508a: PUSH1 0x20
0000508c: ADD
0000508d: REVERT
0000508e: JUMPDEST
0000508f: PUSH1 0x40
00005091: MLOAD
00005092: PUSH3 0x461bcd
00005096: PUSH1 0xe5
00005098: SHL
00005099: DUP2
0000509a: MSTORE
0000509b: PUSH1 0x20
0000509d: PUSH1 0x04
0000509f: DUP3
000050a0: ADD
000050a1: DUP2
000050a2: DUP2
000050a3: MSTORE
000050a4: DUP7
000050a5: MLOAD
000050a6: PUSH1 0x24
000050a8: DUP5
000050a9: ADD
000050aa: MSTORE
000050ab: DUP7
000050ac: MLOAD
000050ad: DUP8
000050ae: SWAP4
000050af: SWAP2
000050b0: SWAP3
000050b1: DUP4
000050b2: SWAP3
000050b3: PUSH1 0x44
000050b5: ADD
000050b6: SWAP2
000050b7: SWAP1
000050b8: DUP6
000050b9: ADD
000050ba: SWAP1
000050bb: DUP1
000050bc: DUP4
000050bd: DUP4
000050be: PUSH1 0x00
000050c0: DUP4
000050c1: ISZERO
000050c2: PUSH2 0x4add
000050c5: JUMPI
000050c6: DUP2
000050c7: DUP2
000050c8: ADD
000050c9: MLOAD
000050ca: DUP4
000050cb: DUP3
000050cc: ADD
000050cd: MSTORE
000050ce: PUSH1 0x20
000050d0: ADD
000050d1: PUSH2 0x4ac5
000050d4: JUMP
000050d5: JUMPDEST
000050d6: PUSH1 0x00
000050d8: DUP2
000050d9: EXTCODEHASH
000050da: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
000050fb: DUP2
000050fc: DUP2
000050fd: EQ
000050fe: DUP1
000050ff: ISZERO
00005100: SWAP1
00005101: PUSH2 0x4f56
00005104: JUMPI
00005105: POP
00005106: POP
00005107: ISZERO
00005108: ISZERO
00005109: SWAP3
0000510a: SWAP2
0000510b: POP
0000510c: POP
0000510d: JUMP
0000510e: JUMPDEST
0000510f: DUP3
00005110: DUP1
00005111: SLOAD
00005112: PUSH1 0x01
00005114: DUP2
00005115: PUSH1 0x01
00005117: AND
00005118: ISZERO
00005119: PUSH2 0x0100
0000511c: MUL
0000511d: SUB
0000511e: AND
0000511f: PUSH1 0x02
00005121: SWAP1
00005122: DIV
00005123: SWAP1
00005124: PUSH1 0x00
00005126: MSTORE
00005127: PUSH1 0x20
00005129: PUSH1 0x00
0000512b: KECCAK256
0000512c: SWAP1
0000512d: PUSH1 0x1f
0000512f: ADD
00005130: PUSH1 0x20
00005132: SWAP1
00005133: DIV
00005134: DUP2
00005135: ADD
00005136: SWAP3
00005137: DUP3
00005138: PUSH1 0x1f
0000513a: LT
0000513b: PUSH2 0x514f
0000513e: JUMPI
0000513f: DUP1
00005140: MLOAD
00005141: PUSH1 0xff
00005143: NOT
00005144: AND
00005145: DUP4
00005146: DUP1
00005147: ADD
00005148: OR
00005149: DUP6
0000514a: SSTORE
0000514b: PUSH2 0x517c
0000514e: JUMP
0000514f: JUMPDEST
00005150: DUP3
00005151: DUP1
00005152: ADD
00005153: PUSH1 0x01
00005155: ADD
00005156: DUP6
00005157: SSTORE
00005158: DUP3
00005159: ISZERO
0000515a: PUSH2 0x517c
0000515d: JUMPI
0000515e: SWAP2
0000515f: DUP3
00005160: ADD
00005161: JUMPDEST
00005162: DUP3
00005163: DUP2
00005164: GT
00005165: ISZERO
00005166: PUSH2 0x517c
00005169: JUMPI
0000516a: DUP3
0000516b: MLOAD
0000516c: DUP3
0000516d: SSTORE
0000516e: SWAP2
0000516f: PUSH1 0x20
00005171: ADD
00005172: SWAP2
00005173: SWAP1
00005174: PUSH1 0x01
00005176: ADD
00005177: SWAP1
00005178: PUSH2 0x5161
0000517b: JUMP
0000517c: JUMPDEST
0000517d: POP
0000517e: PUSH2 0x5188
00005181: SWAP3
00005182: SWAP2
00005183: POP
00005184: PUSH2 0x51fa
00005187: JUMP
00005188: JUMPDEST
00005189: POP
0000518a: SWAP1
0000518b: JUMP
0000518c: JUMPDEST
0000518d: DUP3
0000518e: DUP1
0000518f: SLOAD
00005190: PUSH1 0x01
00005192: DUP2
00005193: PUSH1 0x01
00005195: AND
00005196: ISZERO
00005197: PUSH2 0x0100
0000519a: MUL
0000519b: SUB
0000519c: AND
0000519d: PUSH1 0x02
0000519f: SWAP1
000051a0: DIV
000051a1: SWAP1
000051a2: PUSH1 0x00
000051a4: MSTORE
000051a5: PUSH1 0x20
000051a7: PUSH1 0x00
000051a9: KECCAK256
000051aa: SWAP1
000051ab: PUSH1 0x1f
000051ad: ADD
000051ae: PUSH1 0x20
000051b0: SWAP1
000051b1: DIV
000051b2: DUP2
000051b3: ADD
000051b4: SWAP3
000051b5: DUP3
000051b6: PUSH1 0x1f
000051b8: LT
000051b9: PUSH2 0x51cd
000051bc: JUMPI
000051bd: DUP3
000051be: DUP1
000051bf: ADD
000051c0: PUSH1 0xff
000051c2: NOT
000051c3: DUP3
000051c4: CALLDATALOAD
000051c5: AND
000051c6: OR
000051c7: DUP6
000051c8: SSTORE
000051c9: PUSH2 0x517c
000051cc: JUMP
000051cd: JUMPDEST
000051ce: DUP3
000051cf: DUP1
000051d0: ADD
000051d1: PUSH1 0x01
000051d3: ADD
000051d4: DUP6
000051d5: SSTORE
000051d6: DUP3
000051d7: ISZERO
000051d8: PUSH2 0x517c
000051db: JUMPI
000051dc: SWAP2
000051dd: DUP3
000051de: ADD
000051df: JUMPDEST
000051e0: DUP3
000051e1: DUP2
000051e2: GT
000051e3: ISZERO
000051e4: PUSH2 0x517c
000051e7: JUMPI
000051e8: DUP3
000051e9: CALLDATALOAD
000051ea: DUP3
000051eb: SSTORE
000051ec: SWAP2
000051ed: PUSH1 0x20
000051ef: ADD
000051f0: SWAP2
000051f1: SWAP1
000051f2: PUSH1 0x01
000051f4: ADD
000051f5: SWAP1
000051f6: PUSH2 0x51df
000051f9: JUMP
000051fa: JUMPDEST
000051fb: JUMPDEST
000051fc: DUP1
000051fd: DUP3
000051fe: GT
000051ff: ISZERO
00005200: PUSH2 0x5188
00005203: JUMPI
00005204: PUSH1 0x00
00005206: DUP2
00005207: SSTORE
00005208: PUSH1 0x01
0000520a: ADD
0000520b: PUSH2 0x51fb
0000520e: JUMP
0000520f: INVALID
00005210: GASLIMIT
00005211: MSTORE
00005212: NUMBER
00005213: ORIGIN
00005214: ADDRESS
00005215: GASPRICE
00005216: KECCAK256
00005217: PUSH21 0x72616e7366657220746f20746865207a65726f2061
0000522d: PUSH5 0x6472657373
00005233: POP
00005234: PUSH2 0x7573
00005237: PUSH2 0x626c
0000523a: PUSH6 0x3a206e657720
00005241: PUSH17 0x617573657220697320746865207a65726f
00005253: KECCAK256
00005254: PUSH2 0x6464
00005257: PUSH19 0x65737346696174546f6b656e56323a20617574
0000526b: PUSH9 0x6f72697a6174696f6e
00005275: KECCAK256
00005276: PUSH10 0x73206e6f742079657420
00005281: PUSH23 0x616c696446696174546f6b656e3a206275726e20616d6f
00005299: PUSH22 0x6e74206e6f742067726561746572207468616e203046
000052b0: PUSH10 0x6174546f6b656e3a206d
000052bb: PUSH10 0x6e7420746f2074686520
000052c6: PUSH27 0x65726f206164647265737345435265636f7665723a20696e76616c
000052e2: PUSH10 0x64207369676e61747572
000052ed: PUSH6 0x202776272076
000052f4: PUSH2 0x6c75
000052f7: PUSH6 0x4f776e61626c
000052fe: PUSH6 0x3a206e657720
00005305: PUSH16 0x776e657220697320746865207a65726f
00005316: KECCAK256
00005317: PUSH2 0x6464
0000531a: PUSH19 0x65737345524332303a20617070726f76652074
0000532e: PUSH16 0x20746865207a65726f20616464726573
0000533f: PUSH20 0x46696174546f6b656e3a206e6577207061757365
00005354: PUSH19 0x20697320746865207a65726f20616464726573
00005368: PUSH20 0x526573637561626c653a206e6577207265736375
0000537d: PUSH6 0x722069732074
00005384: PUSH9 0x65207a65726f206164
0000538e: PUSH5 0x7265737346
00005394: PUSH10 0x6174546f6b656e3a206d
0000539f: PUSH10 0x6e7420616d6f756e7420
000053aa: PUSH15 0x6f742067726561746572207468616e
000053ba: KECCAK256
000053bb: ADDRESS
000053bc: GASLIMIT
000053bd: MSTORE
000053be: NUMBER
000053bf: ORIGIN
000053c0: ADDRESS
000053c1: GASPRICE
000053c2: KECCAK256
000053c3: PUSH21 0x72616e7366657220616d6f756e7420657863656564
000053d9: PUSH20 0x2062616c616e636546696174546f6b656e3a2063
000053ee: PUSH2 0x6c6c
000053f1: PUSH6 0x72206973206e
000053f8: PUSH16 0x7420746865206d61737465724d696e74
00005409: PUSH6 0x72426c61636b
00005410: PUSH13 0x69737461626c653a2063616c6c
0000541e: PUSH6 0x72206973206e
00005425: PUSH16 0x742074686520626c61636b6c69737465
00005436: PUSH19 0x5374616b6564546f6b656e56313a206e65774f
0000544a: PUSH17 0x657261746f7220697320616c7265616479
0000545c: KECCAK256
0000545d: PUSH21 0x6865206f70657261746f7246696174546f6b656e3a
00005473: KECCAK256
00005474: PUSH3 0x75726e
00005478: KECCAK256
00005479: PUSH2 0x6d6f
0000547c: PUSH22 0x6e7420657863656564732062616c616e63655374616b
00005493: PUSH6 0x64546f6b656e
0000549a: JUMP
0000549b: BALANCE
0000549c: GASPRICE
0000549d: KECCAK256
0000549e: PUSH15 0x657745746852656365697665722069
000054ae: PUSH20 0x20746865207a65726f2061646472657373537461
000054c3: PUSH12 0x6564546f6b656e56313a206e
000054d0: PUSH6 0x77206f726163
000054d7: PUSH13 0x6520697320616c726561647920
000054e5: PUSH21 0x6865206f7261636c655374616b6564546f6b656e56
000054fb: BALANCE
000054fc: GASPRICE
000054fd: KECCAK256
000054fe: PUSH15 0x65772065786368616e676520726174
0000550e: PUSH6 0x2063616e6e6f
00005515: PUSH21 0x206265206c657373207468616e2031653138466961
0000552b: PUSH21 0x546f6b656e3a2063616c6c6572206973206e6f7420
00005541: PUSH2 0x206d
00005544: PUSH10 0x6e74657246696174546f
0000554f: PUSH12 0x656e3a206e6577206d617374
0000555c: PUSH6 0x724d696e7465
00005563: PUSH19 0x20697320746865207a65726f20616464726573
00005577: PUSH20 0x526573637561626c653a2063616c6c6572206973
0000558c: KECCAK256
0000558d: PUSH15 0x6f7420746865207265736375657253
0000559d: PUSH21 0x616b6564546f6b656e56313a2063616c6c65722069
000055b3: PUSH20 0x206e6f7420746865206f7261636c655374616b65
000055c8: PUSH5 0x546f6b656e
000055ce: JUMP
000055cf: BALANCE
000055d0: GASPRICE
000055d1: KECCAK256
000055d2: PUSH15 0x657745746852656365697665722069
000055e2: PUSH20 0x20616c7265616479207468652065746852656365
000055f7: PUSH10 0x7665725374616b656454
00005602: PUSH16 0x6b656e56313a206d696e7420616d6f75
00005613: PUSH15 0x742065786365656473206d696e7465
00005623: PUSH19 0x416c6c6f77616e6365536166654d6174683a20
00005637: PUSH14 0x756c7469706c69636174696f6e20
00005646: PUSH16 0x766572666c6f7745524332303a207472
00005657: PUSH2 0x6e73
0000565a: PUSH7 0x657220616d6f75
00005662: PUSH15 0x74206578636565647320616c6c6f77
00005672: PUSH2 0x6e63
00005675: PUSH6 0x4f776e61626c
0000567c: PUSH6 0x3a2063616c6c
00005683: PUSH6 0x72206973206e
0000568a: PUSH16 0x7420746865206f776e65724669617454
0000569b: PUSH16 0x6b656e3a206e657720626c61636b6c69
000056ac: PUSH20 0x74657220697320746865207a65726f2061646472
000056c1: PUSH6 0x737346696174
000056c8: SLOAD
000056c9: PUSH16 0x6b656e56323a2063616c6c6572206d75
000056da: PUSH20 0x742062652074686520706179656546696174546f
000056ef: PUSH12 0x656e3a20636f6e7472616374
000056fc: KECCAK256
000056fd: PUSH10 0x7320616c726561647920
00005708: PUSH10 0x6e697469616c697a6564
00005713: MSTORE8
00005714: PUSH21 0x616b6564546f6b656e56313a206d696e7420746f20
0000572a: PUSH21 0x6865207a65726f2061646472657373ddf252ad1be2
00005740: UNKNOWN(0xC8)
00005741: SWAP12
00005742: PUSH10 0xc2b068fc378daa952ba7
0000574d: CALL
0000574e: PUSH4 0xc4a11628
00005753: CREATE2
00005754: GAS
00005755: UNKNOWN(0x4D)
00005756: CREATE2
00005757: UNKNOWN(0x23)
00005758: UNKNOWN(0xB3)
00005759: UNKNOWN(0xEF)
0000575a: GASLIMIT
0000575b: MSTORE
0000575c: NUMBER
0000575d: ORIGIN
0000575e: ADDRESS
0000575f: GASPRICE
00005760: KECCAK256
00005761: PUSH21 0x72616e736665722066726f6d20746865207a65726f
00005777: KECCAK256
00005778: PUSH2 0x6464
0000577b: PUSH19 0x6573735374616b6564546f6b656e56313a206e
0000578f: PUSH6 0x774f70657261
00005796: PUSH21 0x6f7220697320746865207a65726f20616464726573
000057ac: PUSH20 0x45524332303a20617070726f76652066726f6d20
000057c1: PUSH21 0x6865207a65726f206164647265737346696174546f
000057d7: PUSH12 0x656e3a206d696e7420616d6f
000057e4: PUSH22 0x6e742065786365656473206d696e746572416c6c6f77
000057fb: PUSH2 0x6e63
000057fe: PUSH6 0x506175736162
00005805: PUSH13 0x653a2063616c6c657220697320
00005813: PUSH15 0x6f7420746865207061757365725374
00005823: PUSH2 0x6b65
00005826: PUSH5 0x546f6b656e
0000582c: JUMP
0000582d: BALANCE
0000582e: GASPRICE
0000582f: KECCAK256
00005830: PUSH14 0x696e7420616d6f756e74206e6f74
0000583f: KECCAK256
00005840: PUSH8 0x7265617465722074
00005849: PUSH9 0x616e20304543526563
00005853: PUSH16 0x7665723a20696e76616c696420736967
00005864: PUSH15 0x6174757265202773272076616c7565
00005874: MSTORE8
00005875: PUSH21 0x616b6564546f6b656e56313a2063616c6c65722069
0000588b: PUSH20 0x206e6f7420746865206f70657261746f72536166
000058a0: PUSH6 0x45524332303a
000058a7: KECCAK256
000058a8: GASLIMIT
000058a9: MSTORE
000058aa: NUMBER
000058ab: ORIGIN
000058ac: ADDRESS
000058ad: KECCAK256
000058ae: PUSH16 0x7065726174696f6e20646964206e6f74
000058bf: KECCAK256
000058c0: PUSH20 0x7563636565645374616b6564546f6b656e56313a
000058d5: KECCAK256
000058d6: PUSH16 0x7261636c6520697320746865207a6572
000058e7: PUSH16 0x206164647265737346696174546f6b65
000058f8: PUSH15 0x3a206e6577206f776e657220697320
00005908: PUSH21 0x6865207a65726f206164647265737346696174546f
0000591e: PUSH12 0x656e56323a20617574686f72
0000592b: PUSH10 0x7a6174696f6e20697320
00005936: PUSH22 0x736564206f722063616e63656c6564426c61636b6c69
0000594d: PUSH20 0x7461626c653a206e657720626c61636b6c697374
00005962: PUSH6 0x722069732074
00005969: PUSH9 0x65207a65726f206164
00005973: PUSH5 0x7265737342
00005979: PUSH13 0x61636b6c69737461626c653a20
00005987: PUSH2 0x6363
0000598a: PUSH16 0x756e7420697320626c61636b6c697374
0000599b: PUSH6 0x644669617454
000059a2: PUSH16 0x6b656e56323a20617574686f72697a61
000059b3: PUSH21 0x696f6e206973206578706972656445524332303a20
000059c9: PUSH5 0x6563726561
000059cf: PUSH20 0x656420616c6c6f77616e63652062656c6f77207a
000059e4: PUSH6 0x726fa2646970
000059eb: PUSH7 0x73582212205f96
000059f3: UNKNOWN(0xB9)
000059f4: MSIZE
000059f5: UNKNOWN(0xBC)
000059f6: EXTCODESIZE
000059f7: UNKNOWN(0x0C)
000059f8: UNKNOWN(0xF7)
000059f9: UNKNOWN(0xB3)
000059fa: UNKNOWN(0xB6)
000059fb: GAS
000059fc: UNKNOWN(0x24)
000059fd: UNKNOWN(0xA7)
000059fe: MLOAD
000059ff: UNKNOWN(0xD6)
00005a00: CREATE
00005a01: UNKNOWN(0xCB)
00005a02: UNKNOWN(0x0C)
00005a03: REVERT
00005a04: UNKNOWN(0x0D)
00005a05: INVALID
00005a06: ADDMOD
00005a07: CREATE2
00005a08: JUMP
00005a09: PUSH3 0x54b80f
00005a0d: UNKNOWN(0xC1)
00005a0e: UNKNOWN(0x4F)
00005a0f: UNKNOWN(0xB2)
00005a10: UNKNOWN(0xC5)
00005a11: PUSH5 0x736f6c6343
00005a17: STOP
00005a18: MOD
00005a19: UNKNOWN(0x0C)
00005a1a: STOP
00005a1b: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
critical upgradeability codex Unprotected initialize allows proxy takeover and unlimited minting 90 no
view
evidence_json
{
    "evidence": "`initialize` is public and only checks `!initialized`, but sets `masterMinter`, `pauser`, `blacklister`, and `owner` from caller-supplied parameters.",
    "locations": [
        "contracts/centre-tokens/contracts/v1/FiatTokenV1.sol:59"
    ],
    "recommendation": "Restrict `initialize` to a trusted initializer (e.g., proxy-admin/initializer pattern) and execute initialization atomically in the deployment or upgrade transaction.",
    "exploit_scenario": "1) Monitor for a freshly deployed proxy or upgrade where `initialized` is still false. 2) Call `initialize(...)` and set `newOwner`, `newMasterMinter`, `newPauser`, and `newBlacklister` to attacker-controlled addresses. 3) As masterMinter, call `configureMinter(attacker, very_large_amount)` and then `mint(attacker, amount)` to mint unbacked wBETH. 4) Redeem via `requestWithdrawEth` or dump on AMMs to extract ETH/liquidity. Profit potential: up to the full ETH reserves backing wBETH (wrap/unwrap contract balances + market liquidity)."
}
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xef55bec6",
            "selector": "0xef55bec6",
            "calldata_variants": [
                "0xef55bec6",
                "0xef55bec60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf340fa01",
            "selector": "0xf340fa01",
            "calldata_variants": [
                "0xf340fa01",
                "0xf340fa010000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf9f92be4",
            "selector": "0xf9f92be4",
            "calldata_variants": [
                "0xf9f92be4",
                "0xf9f92be40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe575a87",
            "selector": "0xfe575a87",
            "calldata_variants": [
                "0xfe575a87",
                "0xfe575a870000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe3ee160e",
            "selector": "0xe3ee160e",
            "calldata_variants": [
                "0xe3ee160e",
                "0xe3ee160e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe5a6b10f",
            "selector": "0xe5a6b10f",
            "calldata_variants": [
                "0xe5a6b10f",
                "0xe5a6b10f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 21011,
            "type": "tx_origin_used"
        },
        {
            "pc": 21439,
            "type": "tx_origin_used"
        },
        {
            "pc": 22365,
            "type": "tx_origin_used"
        },
        {
            "pc": 22699,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xcde1d784d82b5b8e4997d38f0896817967e7556a7a9d7b32a3dbc29d80140627
call_targets: 0x9e021c9607bd3adb7424d3b25a2d35763ff180bb
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xcde1d784d82b5b8e4997d38f0896817967e7556a7a9d7b32a3dbc29d80140627",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x9e021c9607bd3adb7424d3b25a2d35763ff180bb"
    ],
    "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": "0xef55bec6",
            "selector": "0xef55bec6",
            "calldata_variants": [
                "0xef55bec6",
                "0xef55bec60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf340fa01",
            "selector": "0xf340fa01",
            "calldata_variants": [
                "0xf340fa01",
                "0xf340fa010000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf9f92be4",
            "selector": "0xf9f92be4",
            "calldata_variants": [
                "0xf9f92be4",
                "0xf9f92be40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe575a87",
            "selector": "0xfe575a87",
            "calldata_variants": [
                "0xfe575a87",
                "0xfe575a870000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe3ee160e",
            "selector": "0xe3ee160e",
            "calldata_variants": [
                "0xe3ee160e",
                "0xe3ee160e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe5a6b10f",
            "selector": "0xe5a6b10f",
            "calldata_variants": [
                "0xe5a6b10f",
                "0xe5a6b10f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 5276,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 10628,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 11867,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": [
        {
            "pc": 21011,
            "type": "tx_origin_used"
        },
        {
            "pc": 21439,
            "type": "tx_origin_used"
        },
        {
            "pc": 22365,
            "type": "tx_origin_used"
        },
        {
            "pc": 22699,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x7e484b036e5fbc2555bf595052d0e20676b31ad763f1762a5d60c60ee42e563e
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0x7e484b036e5fbc2555bf595052d0e20676b31ad763f1762a5d60c60ee42e563e",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0xef55bec6",
            "selector": "0xef55bec6",
            "calldata_variants": [
                "0xef55bec6",
                "0xef55bec60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf340fa01",
            "selector": "0xf340fa01",
            "calldata_variants": [
                "0xf340fa01",
                "0xf340fa010000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf9f92be4",
            "selector": "0xf9f92be4",
            "calldata_variants": [
                "0xf9f92be4",
                "0xf9f92be40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe575a87",
            "selector": "0xfe575a87",
            "calldata_variants": [
                "0xfe575a87",
                "0xfe575a870000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe3ee160e",
            "selector": "0xe3ee160e",
            "calldata_variants": [
                "0xe3ee160e",
                "0xe3ee160e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe5a6b10f",
            "selector": "0xe5a6b10f",
            "calldata_variants": [
                "0xe5a6b10f",
                "0xe5a6b10f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 3
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xcde1d784d82b5b8e4997d38f0896817967e7556a7a9d7b32a3dbc29d80140627
call_targets: 0x9e021c9607bd3adb7424d3b25a2d35763ff180bb
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xcde1d784d82b5b8e4997d38f0896817967e7556a7a9d7b32a3dbc29d80140627",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x9e021c9607bd3adb7424d3b25a2d35763ff180bb"
    ],
    "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": "0xef55bec6",
            "selector": "0xef55bec6",
            "calldata_variants": [
                "0xef55bec6",
                "0xef55bec60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf340fa01",
            "selector": "0xf340fa01",
            "calldata_variants": [
                "0xf340fa01",
                "0xf340fa010000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf9f92be4",
            "selector": "0xf9f92be4",
            "calldata_variants": [
                "0xf9f92be4",
                "0xf9f92be40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xfe575a87",
            "selector": "0xfe575a87",
            "calldata_variants": [
                "0xfe575a87",
                "0xfe575a870000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe3ee160e",
            "selector": "0xe3ee160e",
            "calldata_variants": [
                "0xe3ee160e",
                "0xe3ee160e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe5a6b10f",
            "selector": "0xe5a6b10f",
            "calldata_variants": [
                "0xe5a6b10f",
                "0xe5a6b10f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 5276,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 10628,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 11867,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [
        {
            "pc": 21011,
            "type": "tx_origin_used"
        },
        {
            "pc": 21439,
            "type": "tx_origin_used"
        },
        {
            "pc": 22365,
            "type": "tx_origin_used"
        },
        {
            "pc": 22699,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 5
}
medium upgradeability codex initializeV2_1 lets anyone sweep the contract’s own token balance 75 no
view
evidence_json
{
    "evidence": "`initializeV2_1` is external with only a version check and transfers `balances[address(this)]` to a caller-supplied address.",
    "locations": [
        "contracts/centre-tokens/contracts/v2/FiatTokenV2_1.sol:40"
    ],
    "recommendation": "Gate `initializeV2_1` behind an admin-only modifier and validate `lostAndFound` (non-zero), or execute upgrade + initialization in a single admin-controlled transaction.",
    "exploit_scenario": "1) After v2 is initialized (`_initializedVersion == 1`) and the v2.1 code is live but before the admin calls `initializeV2_1`, ensure there is a non-zero token balance at `address(this)` (anyone can transfer tokens to the token contract). 2) Call `initializeV2_1(attacker)`; it transfers `balances[address(this)]` to the attacker-controlled `lostAndFound`. 3) Sell or redeem the received tokens. Profit potential: up to the token balance held by the contract at the time of the call."
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 1,
    "create2_count": 3
}
info other cast Heavy EXTCODE*/BALANCE usage 55 no
view
evidence_json
{
    "notes": "frequent external code or balance checks; may indicate introspection or validation logic",
    "ext_balance_count": 8
}