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

Analysis Run

019c0ea9-073f-707e-aad6-50c2613920db

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

What survived the funnel

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

Confirmed
0
Validated
0
Source
Verified
Review Backing
Present
Best current signal
Untrusted CALL target/value reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
41550 artifact.fetch complete 1 / 3 2 months ago
41551 proxy.resolve complete 1 / 3 2 months ago
41552 tool.cast_disasm complete 1 / 3 2 months ago
41553 analysis.bundle complete 1 / 3 2 months ago
41554 capability.graph complete 1 / 3 2 months ago
41555 detector.run complete 1 / 3 2 months ago
41556 validation.fork complete 1 / 3 2 months ago
42198 report.consolidate complete 1 / 6 2 months ago
42199 tool.slither complete 1 / 2 2 months ago

Artifact

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

Slither

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

FromResponsibleInvestors (contracts/Contract.sol#155-415) contract sets array length with a user-controlled value:
	- depositors[msg.sender].push(Queue.length - 1) (contracts/Contract.sol#218)
FromResponsibleInvestors (contracts/Contract.sol#155-415) contract sets array length with a user-controlled value:
	- depositors[depositor].push(ImportedQueue.length - 1) (contracts/Contract.sol#301-302)
FromResponsibleInvestors (contracts/Contract.sol#155-415) contract sets array length with a user-controlled value:
	- Queue.push(Deposit({depositor:msg.sender,deposit:msg.value,expects:expect,paymentTime:0})) (contracts/Contract.sol#214-216)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#array-length-assignment

Reentrancy in FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303):
	External calls:
	- maxLen = ImportContract.getLastDepositId() (contracts/Contract.sol#283-284)
	- (depositor,amount,depositeTime,paymentTime) = ImportContract.getDeposit(i) (contracts/Contract.sol#286-289)
	State variables written after the call(s):
	- ImportedQueue.push(Deposit({depositor:depositor,deposit:uint256(amount),expects:uint256(MULTIPLIER.mul(amount)),paymentTime:0})) (contracts/Contract.sol#299-301)
	FromResponsibleInvestors.ImportedQueue (contracts/Contract.sol#185) can be used in cross function reentrancies:
	- FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303)
	- FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255)
	- FromResponsibleInvestors.getImportedDeposit(uint256) (contracts/Contract.sol#338-343)
	- FromResponsibleInvestors.getImportedDepositsCount() (contracts/Contract.sol#327-328)
	- FromResponsibleInvestors.getImportedUserDeposits(address) (contracts/Contract.sol#395-415)
	- FromResponsibleInvestors.getImportedUserDepositsCount(address) (contracts/Contract.sol#362-371)
	- FromResponsibleInvestors.getLastImportedPayments(uint256) (contracts/Contract.sol#352-355)
	- FromResponsibleInvestors.setMinBalanceForDistribution() (contracts/Contract.sol#258-274)
	- depositors[depositor].push(ImportedQueue.length - 1) (contracts/Contract.sol#301-302)
	FromResponsibleInvestors.depositors (contracts/Contract.sol#187-190) can be used in cross function reentrancies:
	- FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303)
	- FromResponsibleInvestors.depositors (contracts/Contract.sol#187-190)
	- FromResponsibleInvestors.fallback() (contracts/Contract.sol#204-223)
	- FromResponsibleInvestors.getUserDeposits(address) (contracts/Contract.sol#372-391)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-1

FromResponsibleInvestors.fallback() (contracts/Contract.sol#204-223) ignores return value by advertisingAddress.send(advertperc) (contracts/Contract.sol#220)
FromResponsibleInvestors.fallback() (contracts/Contract.sol#204-223) ignores return value by adminsAddress.send(m_adminsPercent.mul(msg.value)) (contracts/Contract.sol#220-221)
FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255) ignores return value by ImportedQueue[currentImportedReceiverIndex].depositor.send(toSend) (contracts/Contract.sol#243-244)
FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255) ignores return value by Queue[currentReceiverIndex].depositor.send(toSend) (contracts/Contract.sol#251-252)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#unchecked-send

FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255) has external calls inside a loop: ImportedQueue[currentImportedReceiverIndex].depositor.send(toSend) (contracts/Contract.sol#243-244)
FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255) has external calls inside a loop: Queue[currentReceiverIndex].depositor.send(toSend) (contracts/Contract.sol#251-252)
FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303) has external calls inside a loop: (depositor,amount,depositeTime,paymentTime) = ImportContract.getDeposit(i) (contracts/Contract.sol#286-289)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation/#calls-inside-a-loop

Reentrancy in FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303):
	External calls:
	- maxLen = ImportContract.getLastDepositId() (contracts/Contract.sol#283-284)
	- (depositor,amount,depositeTime,paymentTime) = ImportContract.getDeposit(i) (contracts/Contract.sol#286-289)
	Event emitted after the call(s):
	- LogImportInvestorsPartComplete(now,c,_to) (contracts/Contract.sol#302-303)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-3

FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255) has costly operations inside a loop:
	- currentImportedReceiverIndex += 1 (contracts/Contract.sol#244-245)
FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255) has costly operations inside a loop:
	- currentReceiverIndex += 1 (contracts/Contract.sol#252-253)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#costly-operations-inside-a-loop

Version constraint ^0.4.25 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- DirtyBytesArrayToStorage
	- ABIDecodeTwoDimensionalArrayMemory
	- KeccakCaching
	- EmptyByteArrayCopy
	- DynamicArrayCleanup
	- ImplicitConstructorCallvalueCheck
	- TupleAssignmentMultiStackSlotComponents
	- MemoryArrayCreationOverflow
	- privateCanBeOverridden
	- SignedArrayStorageCopy
	- ABIEncoderV2StorageArrayWithMultiSlotElement
	- DynamicConstructorArgumentsClippedABIV2
	- UninitializedFunctionPointerInConstructor_0.4.x
	- IncorrectEventSignatureInLibraries_0.4.x
	- ABIEncoderV2PackedStorage_0.4.x.
It is used by:
	- ^0.4.25 (contracts/Contract.sol#1)
solc-0.4.25 is an outdated solc version. Use a more recent version (at least 0.8.0), if possible.
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-versions-of-solidity

Struct Percent.percent (contracts/Contract.sol#20-22) is not in CapWords
Parameter SafeMath.mul(uint256,uint256)._a (contracts/Contract.sol#46) is not in mixedCase
Parameter SafeMath.mul(uint256,uint256)._b (contracts/Contract.sol#46) is not in mixedCase
Parameter SafeMath.add(uint256,uint256)._a (contracts/Contract.sol#63) is not in mixedCase
Parameter SafeMath.add(uint256,uint256)._b (contracts/Contract.sol#63) is not in mixedCase
Contract distribution (contracts/Contract.sol#129-155) is not in CapWords
Function FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303) is not in mixedCase
Parameter FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256)._ImportContract (contracts/Contract.sol#274-275) is not in mixedCase
Parameter FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256)._from (contracts/Contract.sol#276-277) is not in mixedCase
Parameter FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256)._to (contracts/Contract.sol#277) is not in mixedCase
Variable FromResponsibleInvestors.m_adminsPercent (contracts/Contract.sol#168-169) is not in mixedCase
Variable FromResponsibleInvestors.m_advertisingPercent (contracts/Contract.sol#169-172) is not in mixedCase
Variable FromResponsibleInvestors.MULTIPLIER (contracts/Contract.sol#172-173) is not in mixedCase
Variable FromResponsibleInvestors.ImportedQueue (contracts/Contract.sol#185) is not in mixedCase
Variable FromResponsibleInvestors.Queue (contracts/Contract.sol#186) is not in mixedCase
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#conformance-to-solidity-naming-conventions

Reentrancy in FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255):
	External calls:
	- ImportedQueue[currentImportedReceiverIndex].depositor.send(toSend) (contracts/Contract.sol#243-244)
	- Queue[currentReceiverIndex].depositor.send(toSend) (contracts/Contract.sol#251-252)
	State variables written after the call(s):
	- ImportedQueue[currentImportedReceiverIndex].paymentTime = now (contracts/Contract.sol#242-243)
	- Queue[currentReceiverIndex].paymentTime = now (contracts/Contract.sol#249-251)
	- currentImportedReceiverIndex += 1 (contracts/Contract.sol#244-245)
	- currentReceiverIndex += 1 (contracts/Contract.sol#252-253)
	- setMinBalanceForDistribution() (contracts/Contract.sol#254-255)
		- minBalanceForDistribution = Queue[currentReceiverIndex].expects (contracts/Contract.sol#265-267)
		- minBalanceForDistribution = 12000000000000000000 (contracts/Contract.sol#267-268)
		- minBalanceForDistribution = minBalanceForDistribution.add(importedExpects) (contracts/Contract.sol#272-274)
Reentrancy in FromResponsibleInvestors.fallback() (contracts/Contract.sol#204-223):
	External calls:
	- advertisingAddress.send(advertperc) (contracts/Contract.sol#220)
	- adminsAddress.send(m_adminsPercent.mul(msg.value)) (contracts/Contract.sol#220-221)
	State variables written after the call(s):
	- advertAmountRaised += advertperc (contracts/Contract.sol#221-223)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#reentrancy-vulnerabilities-4

distribution (contracts/Contract.sol#129-155) does not implement functions:
	- distribution.getAllDepositesCount() (contracts/Contract.sol#147-151)
	- distribution.getDeposit(uint256) (contracts/Contract.sol#153-155)
	- distribution.getLastDepositId() (contracts/Contract.sol#151-153)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#unimplemented-functions

Loop condition i < Queue.length (contracts/Contract.sol#358) should use cached array length instead of referencing `length` member of the storage array.
 Loop condition i < ImportedQueue.length (contracts/Contract.sol#365) should use cached array length instead of referencing `length` member of the storage array.
 Loop condition i < ImportedQueue.length (contracts/Contract.sol#406) should use cached array length instead of referencing `length` member of the storage array.
 Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#cache-array-length

distribution.amountForDistribution (contracts/Contract.sol#136-137) should be constant 
distribution.amountRaised (contracts/Contract.sol#137-139) should be constant 
distribution.currentPaymentIndex (contracts/Contract.sol#131-135) should be constant 
distribution.depositorsCount (contracts/Contract.sol#135-136) should be constant 
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#state-variables-that-could-be-declared-constant
. analyzed (6 contracts with 100 detectors), 41 result(s) found
Metadata
{
    "solc": {
        "status": "ok",
        "use_rc": 0,
        "version": "0.4.25",
        "strategy": "solc-select",
        "solc_path": "/var/www/tripwire/.venv/bin/solc",
        "install_rc": 0,
        "use_stderr": null,
        "use_stdout": "Switched global version to 0.4.25",
        "install_stderr": null,
        "install_stdout": "Version '0.4.25' is already installed, skipping..."
    },
    "solc_args": "--base-path /tmp/slither-7c_zlgus --allow-paths /tmp/slither-7c_zlgus,/tmp/slither-7c_zlgus/lib,/tmp/slither-7c_zlgus/src",
    "remappings": [],
    "source_files": [
        "contracts/Contract.sol"
    ],
    "contract_count": 0,
    "contract_names": [],
    "detector_count": 41,
    "workspace_hash": "c97644da65eaa6af4cc59e7a6e1d8ac9c16c02bf022612ec42b1c862ed42b328",
    "duration_seconds": 0.8013045787811279,
    "solc_version_requested": "0.4.25"
}

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
2
No findings?
no
Summary
Unchecked send calls can silently skip payouts and mis-account, and imported deposit indices are mixed with main queue indices causing getUserDeposits to revert for some users.
View stdout
{"no_findings":false,"summary":"Unchecked send calls can silently skip payouts and mis-account, and imported deposit indices are mixed with main queue indices causing getUserDeposits to revert for some users.","findings":[{"severity":"medium","category":"other","title":"Unchecked send can silently skip payouts while advancing indices","exploit_scenario":"If a depositor is a contract whose fallback reverts or needs more than 2300 gas, `send` will return false. The code still sets `paymentTime` and advances the receiver index, permanently skipping that depositor while the balance remains available for later payouts. This results in incorrect accounting and lost payouts for the skipped depositor.","recommendation":"Use a pull-payment pattern (withdrawals), or check the return value of `send` and only advance indices on success (or revert on failure). Consider replacing `send` with `call.value(...)` and handling failure explicitly.","evidence":"`send` return values are ignored in `distribute` for both queues, but indices advance regardless of success.","locations":["contracts/Contract.sol:247","contracts/Contract.sol:253","contracts/Contract.sol:262"]},{"severity":"low","category":"other","title":"Imported deposit indices are mixed with main queue indices, breaking getUserDeposits","exploit_scenario":"During migration, imported deposit indices are appended into the same `depositors` array used for main queue indices. If a user’s imported entries precede later main-queue deposits, `getUserDeposits` will read an imported index and use it against the main `Queue`, potentially reverting or returning incorrect data. This can break off-chain integrations and user queries.","recommendation":"Track imported and main queue indices separately (e.g., two mappings), or store a struct indicating queue type and index so lookups don’t index the wrong array.","evidence":"Migration pushes `ImportedQueue` indices into `depositors`, while `getUserDeposits` assumes indices refer to `Queue`.","locations":["contracts/Contract.sol:288","contracts/Contract.sol:309","contracts/Contract.sol:388","contracts/Contract.sol:400"]}]}
View stderr
OpenAI Codex v0.77.0 (research preview)
--------
workdir: /tmp/codex-nxrcexx9
model: gpt-5.2-codex
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: auto
session id: 019c0ec3-1257-71c1-9be8-e8d6b4456826
--------
user
You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.

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

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.

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

================================================================================
FILE: contracts/Contract.sol
================================================================================
pragma solidity ^0.4.25;

library Math {
  function min(uint a, uint b) internal pure returns(uint) {
    if (a > b) {
      return b;
    }
    return a;
  }
  
  function max(uint a, uint b) internal pure returns(uint) {
    if (a > b) {
      return a;
    }
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '1,240p'" in /tmp/codex-nxrcexx9 succeeded in 6ms:
     1	This file concatenates the full contents of first-party Solidity sources for auditing.
     2	Do not treat dependency code under lib/ or @openzeppelin/ as first-party.
     3	
     4	================================================================================
     5	FILE: contracts/Contract.sol
     6	================================================================================
     7	pragma solidity ^0.4.25;
     8	
     9	library Math {
    10	  function min(uint a, uint b) internal pure returns(uint) {
    11	    if (a > b) {
    12	      return b;
    13	    }
    14	    return a;
    15	  }
    16	  
    17	  function max(uint a, uint b) internal pure returns(uint) {
    18	    if (a > b) {
    19	      return a;
    20	    }
exec
/bin/bash -lc "nl -ba AUDIT_BUNDLE.txt | sed -n '240,520p'" in /tmp/codex-nxrcexx9 succeeded in 6ms:
   240	        uint money = address(this).balance;
   241	        require(money >= minBalanceForDistribution, "Not enough funds to pay");//на балансе недостаточно денег для выплат
   242	        uint ImportedQueueLen = ImportedQueue.length;
   243	        uint QueueLen = Queue.length;
   244	        uint toSend = 0;
   245	        maxIterations = maxIterations.max(5);//минимум 5 итераций
   246	        
   247	        for (uint i = 0; i < maxIterations; i++) {
   248	            if (currentImportedReceiverIndex < ImportedQueueLen){
   249	                toSend = ImportedQueue[currentImportedReceiverIndex].expects;
   250	                if (money >= toSend){
   251	                    money = money.sub(toSend);
   252	                    ImportedQueue[currentImportedReceiverIndex].paymentTime = now;
   253	                    ImportedQueue[currentImportedReceiverIndex].depositor.send(toSend);
   254	                    currentImportedReceiverIndex += 1;
   255	                }
   256	            }
   257	            if (currentReceiverIndex < QueueLen){
   258	                toSend = Queue[currentReceiverIndex].expects;
   259	                if (money >= toSend){
codex
{"no_findings":false,"summary":"Unchecked send calls can silently skip payouts and mis-account, and imported deposit indices are mixed with main queue indices causing getUserDeposits to revert for some users.","findings":[{"severity":"medium","category":"other","title":"Unchecked send can silently skip payouts while advancing indices","exploit_scenario":"If a depositor is a contract whose fallback reverts or needs more than 2300 gas, `send` will return false. The code still sets `paymentTime` and advances the receiver index, permanently skipping that depositor while the balance remains available for later payouts. This results in incorrect accounting and lost payouts for the skipped depositor.","recommendation":"Use a pull-payment pattern (withdrawals), or check the return value of `send` and only advance indices on success (or revert on failure). Consider replacing `send` with `call.value(...)` and handling failure explicitly.","evidence":"`send` return values are ignored in `distribute` for both queues, but indices advance regardless of success.","locations":["contracts/Contract.sol:247","contracts/Contract.sol:253","contracts/Contract.sol:262"]},{"severity":"low","category":"other","title":"Imported deposit indices are mixed with main queue indices, breaking getUserDeposits","exploit_scenario":"During migration, imported deposit indices are appended into the same `depositors` array used for main queue indices. If a user’s imported entries precede later main-queue deposits, `getUserDeposits` will read an imported index and use it against the main `Queue`, potentially reverting or returning incorrect data. This can break off-chain integrations and user queries.","recommendation":"Track imported and main queue indices separately (e.g., two mappings), or store a struct indicating queue type and index so lookups don’t index the wrong array.","evidence":"Migration pushes `ImportedQueue` indices into `depositors`, while `getUserDeposits` assumes indices refer to `Queue`.","locations":["contracts/Contract.sol:288","contracts/Contract.sol:309","contracts/Contract.sol:388","contracts/Contract.sol:400"]}]}
tokens used
17,794
Metadata
{
    "codex": {
        "ran_at": "2026-01-30T11:57:38.036766+00:00",
        "returncode": 0
    },
    "project": {
        "mode": "source",
        "file_count": 1,
        "import_count": 0,
        "first_party_contracts_count": 1
    },
    "summary": "Unchecked send calls can silently skip payouts and mis-account, and imported deposit indices are mixed with main queue indices causing getUserDeposits to revert for some users.",
    "raw_final": {
        "summary": "Unchecked send calls can silently skip payouts and mis-account, and imported deposit indices are mixed with main queue indices causing getUserDeposits to revert for some users.",
        "findings": [
            {
                "title": "Unchecked send can silently skip payouts while advancing indices",
                "category": "other",
                "evidence": "`send` return values are ignored in `distribute` for both queues, but indices advance regardless of success.",
                "severity": "medium",
                "locations": [
                    "contracts/Contract.sol:247",
                    "contracts/Contract.sol:253",
                    "contracts/Contract.sol:262"
                ],
                "recommendation": "Use a pull-payment pattern (withdrawals), or check the return value of `send` and only advance indices on success (or revert on failure). Consider replacing `send` with `call.value(...)` and handling failure explicitly.",
                "exploit_scenario": "If a depositor is a contract whose fallback reverts or needs more than 2300 gas, `send` will return false. The code still sets `paymentTime` and advances the receiver index, permanently skipping that depositor while the balance remains available for later payouts. This results in incorrect accounting and lost payouts for the skipped depositor."
            },
            {
                "title": "Imported deposit indices are mixed with main queue indices, breaking getUserDeposits",
                "category": "other",
                "evidence": "Migration pushes `ImportedQueue` indices into `depositors`, while `getUserDeposits` assumes indices refer to `Queue`.",
                "severity": "low",
                "locations": [
                    "contracts/Contract.sol:288",
                    "contracts/Contract.sol:309",
                    "contracts/Contract.sol:388",
                    "contracts/Contract.sol:400"
                ],
                "recommendation": "Track imported and main queue indices separately (e.g., two mappings), or store a struct indicating queue type and index so lookups don\u2019t index the wrong array.",
                "exploit_scenario": "During migration, imported deposit indices are appended into the same `depositors` array used for main queue indices. If a user\u2019s imported entries precede later main-queue deposits, `getUserDeposits` will read an imported index and use it against the main `Queue`, potentially reverting or returning incorrect data. This can break off-chain integrations and user queries."
            }
        ],
        "no_findings": false
    },
    "no_findings": false,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
6
EXT*/BALANCE
6
Total opcodes
3949
Flags
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 0x015b
0000000c: JUMPI
0000000d: PUSH4 0xffffffff
00000012: PUSH1 0xe0
00000014: PUSH1 0x02
00000016: EXP
00000017: PUSH1 0x00
00000019: CALLDATALOAD
0000001a: DIV
0000001b: AND
0000001c: PUSH4 0x059f8b16
00000021: DUP2
00000022: EQ
00000023: PUSH2 0x041c
00000026: JUMPI
00000027: DUP1
00000028: PUSH4 0x12065fe0
0000002d: EQ
0000002e: PUSH2 0x044a
00000031: JUMPI
00000032: DUP1
00000033: PUSH4 0x1686531a
00000038: EQ
00000039: PUSH2 0x0471
0000003c: JUMPI
0000003d: DUP1
0000003e: PUSH4 0x297563bb
00000043: EQ
00000044: PUSH2 0x04a2
00000047: JUMPI
00000048: DUP1
00000049: PUSH4 0x2a5bf6d2
0000004e: EQ
0000004f: PUSH2 0x04b7
00000052: JUMPI
00000053: DUP1
00000054: PUSH4 0x2d95663b
00000059: EQ
0000005a: PUSH2 0x05fb
0000005d: JUMPI
0000005e: DUP1
0000005f: PUSH4 0x30102055
00000064: EQ
00000065: PUSH2 0x0610
00000068: JUMPI
00000069: DUP1
0000006a: PUSH4 0x3a561ae2
0000006f: EQ
00000070: PUSH2 0x0625
00000073: JUMPI
00000074: DUP1
00000075: PUSH4 0x3f9e23e5
0000007a: EQ
0000007b: PUSH2 0x063a
0000007e: JUMPI
0000007f: DUP1
00000080: PUSH4 0x466c01b8
00000085: EQ
00000086: PUSH2 0x0663
00000089: JUMPI
0000008a: DUP1
0000008b: PUSH4 0x4c5822e4
00000090: EQ
00000091: PUSH2 0x0687
00000094: JUMPI
00000095: DUP1
00000096: PUSH4 0x62d2c555
0000009b: EQ
0000009c: PUSH2 0x069c
0000009f: JUMPI
000000a0: DUP1
000000a1: PUSH4 0x715018a6
000000a6: EQ
000000a7: PUSH2 0x06b1
000000aa: JUMPI
000000ab: DUP1
000000ac: PUSH4 0x7b3e5e7b
000000b1: EQ
000000b2: PUSH2 0x06c8
000000b5: JUMPI
000000b6: DUP1
000000b7: PUSH4 0x7cc79255
000000bc: EQ
000000bd: PUSH2 0x06dd
000000c0: JUMPI
000000c1: DUP1
000000c2: PUSH4 0x8364b0f7
000000c7: EQ
000000c8: PUSH2 0x0704
000000cb: JUMPI
000000cc: DUP1
000000cd: PUSH4 0x88ca8ba1
000000d2: EQ
000000d3: PUSH2 0x074c
000000d6: JUMPI
000000d7: DUP1
000000d8: PUSH4 0x88d761f2
000000dd: EQ
000000de: PUSH2 0x076d
000000e1: JUMPI
000000e2: DUP1
000000e3: PUSH4 0x8da5cb5b
000000e8: EQ
000000e9: PUSH2 0x0782
000000ec: JUMPI
000000ed: DUP1
000000ee: PUSH4 0x8f32d59b
000000f3: EQ
000000f4: PUSH2 0x0797
000000f7: JUMPI
000000f8: DUP1
000000f9: PUSH4 0x907f9c57
000000fe: EQ
000000ff: PUSH2 0x07ac
00000102: JUMPI
00000103: DUP1
00000104: PUSH4 0x91c05b0b
00000109: EQ
0000010a: PUSH2 0x07ec
0000010d: JUMPI
0000010e: DUP1
0000010f: PUSH4 0x940a9737
00000114: EQ
00000115: PUSH2 0x0804
00000118: JUMPI
00000119: DUP1
0000011a: PUSH4 0x9f9fb968
0000011f: EQ
00000120: PUSH2 0x0819
00000123: JUMPI
00000124: DUP1
00000125: PUSH4 0xd6a13301
0000012a: EQ
0000012b: PUSH2 0x0831
0000012e: JUMPI
0000012f: DUP1
00000130: PUSH4 0xd74f8e9a
00000135: EQ
00000136: PUSH2 0x0852
00000139: JUMPI
0000013a: DUP1
0000013b: PUSH4 0xe7cc14e9
00000140: EQ
00000141: PUSH2 0x086a
00000144: JUMPI
00000145: DUP1
00000146: PUSH4 0xf5316314
0000014b: EQ
0000014c: PUSH2 0x087f
0000014f: JUMPI
00000150: DUP1
00000151: PUSH4 0xfc398325
00000156: EQ
00000157: PUSH2 0x08a0
0000015a: JUMPI
0000015b: JUMPDEST
0000015c: PUSH1 0x00
0000015e: DUP1
0000015f: PUSH1 0x00
00000161: CALLVALUE
00000162: GT
00000163: ISZERO
00000164: PUSH2 0x0418
00000167: JUMPI
00000168: PUSH7 0x2386f26fc10000
00000170: CALLVALUE
00000171: LT
00000172: ISZERO
00000173: PUSH2 0x01c6
00000176: JUMPI
00000177: PUSH1 0x40
00000179: DUP1
0000017a: MLOAD
0000017b: PUSH1 0xe5
0000017d: PUSH1 0x02
0000017f: EXP
00000180: PUSH3 0x461bcd
00000184: MUL
00000185: DUP2
00000186: MSTORE
00000187: PUSH1 0x20
00000189: PUSH1 0x04
0000018b: DUP3
0000018c: ADD
0000018d: DUP2
0000018e: SWAP1
0000018f: MSTORE
00000190: PUSH1 0x24
00000192: DUP3
00000193: ADD
00000194: MSTORE
00000195: PUSH32 0x696e766573746d656e74206d757374206265203e3d20302e3031206574686572
000001b6: PUSH1 0x44
000001b8: DUP3
000001b9: ADD
000001ba: MSTORE
000001bb: SWAP1
000001bc: MLOAD
000001bd: SWAP1
000001be: DUP2
000001bf: SWAP1
000001c0: SUB
000001c1: PUSH1 0x64
000001c3: ADD
000001c4: SWAP1
000001c5: REVERT
000001c6: JUMPDEST
000001c7: PUSH8 0x8ac7230489e80000
000001d0: CALLVALUE
000001d1: GT
000001d2: ISZERO
000001d3: PUSH2 0x0226
000001d6: JUMPI
000001d7: PUSH1 0x40
000001d9: DUP1
000001da: MLOAD
000001db: PUSH1 0xe5
000001dd: PUSH1 0x02
000001df: EXP
000001e0: PUSH3 0x461bcd
000001e4: MUL
000001e5: DUP2
000001e6: MSTORE
000001e7: PUSH1 0x20
000001e9: PUSH1 0x04
000001eb: DUP3
000001ec: ADD
000001ed: MSTORE
000001ee: PUSH1 0x1e
000001f0: PUSH1 0x24
000001f2: DUP3
000001f3: ADD
000001f4: MSTORE
000001f5: PUSH32 0x696e766573746d656e74206d757374206265203c3d2031302065746865720000
00000216: PUSH1 0x44
00000218: DUP3
00000219: ADD
0000021a: MSTORE
0000021b: SWAP1
0000021c: MLOAD
0000021d: SWAP1
0000021e: DUP2
0000021f: SWAP1
00000220: SUB
00000221: PUSH1 0x64
00000223: ADD
00000224: SWAP1
00000225: REVERT
00000226: JUMPDEST
00000227: PUSH2 0x0237
0000022a: PUSH1 0x05
0000022c: CALLVALUE
0000022d: PUSH4 0xffffffff
00000232: PUSH2 0x08b5
00000235: AND
00000236: JUMP
00000237: JUMPDEST
00000238: PUSH1 0x40
0000023a: DUP1
0000023b: MLOAD
0000023c: PUSH1 0x80
0000023e: DUP2
0000023f: ADD
00000240: DUP3
00000241: MSTORE
00000242: CALLER
00000243: DUP1
00000244: DUP3
00000245: MSTORE
00000246: CALLVALUE
00000247: PUSH1 0x20
00000249: DUP1
0000024a: DUP5
0000024b: ADD
0000024c: DUP3
0000024d: DUP2
0000024e: MSTORE
0000024f: DUP5
00000250: DUP7
00000251: ADD
00000252: DUP8
00000253: DUP2
00000254: MSTORE
00000255: PUSH1 0x00
00000257: PUSH1 0x60
00000259: DUP8
0000025a: ADD
0000025b: DUP2
0000025c: DUP2
0000025d: MSTORE
0000025e: PUSH1 0x0b
00000260: DUP1
00000261: SLOAD
00000262: PUSH1 0x01
00000264: DUP2
00000265: ADD
00000266: DUP3
00000267: SSTORE
00000268: SWAP1
00000269: DUP4
0000026a: MSTORE
0000026b: SWAP8
0000026c: MLOAD
0000026d: PUSH32 0x0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9
0000028e: PUSH1 0x04
00000290: SWAP1
00000291: SWAP10
00000292: MUL
00000293: SWAP9
00000294: DUP10
00000295: ADD
00000296: DUP1
00000297: SLOAD
00000298: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002ad: NOT
000002ae: AND
000002af: PUSH1 0x01
000002b1: PUSH1 0xa0
000002b3: PUSH1 0x02
000002b5: EXP
000002b6: SUB
000002b7: SWAP1
000002b8: SWAP3
000002b9: AND
000002ba: SWAP2
000002bb: SWAP1
000002bc: SWAP2
000002bd: OR
000002be: SWAP1
000002bf: SSTORE
000002c0: SWAP3
000002c1: MLOAD
000002c2: PUSH32 0x0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01dba
000002e3: DUP9
000002e4: ADD
000002e5: SSTORE
000002e6: SWAP1
000002e7: MLOAD
000002e8: PUSH32 0x0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01dbb
00000309: DUP8
0000030a: ADD
0000030b: SSTORE
0000030c: SWAP1
0000030d: MLOAD
0000030e: PUSH32 0x0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01dbc
0000032f: SWAP1
00000330: SWAP6
00000331: ADD
00000332: SWAP5
00000333: SWAP1
00000334: SWAP5
00000335: SSTORE
00000336: PUSH1 0x08
00000338: DUP1
00000339: SLOAD
0000033a: SWAP1
0000033b: SWAP3
0000033c: ADD
0000033d: SWAP1
0000033e: SWAP2
0000033f: SSTORE
00000340: SWAP1
00000341: DUP3
00000342: MSTORE
00000343: PUSH1 0x0c
00000345: SWAP1
00000346: MSTORE
00000347: KECCAK256
00000348: SLOAD
00000349: SWAP1
0000034a: SWAP3
0000034b: POP
0000034c: ISZERO
0000034d: ISZERO
0000034e: PUSH2 0x035b
00000351: JUMPI
00000352: PUSH1 0x0d
00000354: DUP1
00000355: SLOAD
00000356: PUSH1 0x01
00000358: ADD
00000359: SWAP1
0000035a: SSTORE
0000035b: JUMPDEST
0000035c: CALLER
0000035d: PUSH1 0x00
0000035f: SWAP1
00000360: DUP2
00000361: MSTORE
00000362: PUSH1 0x0c
00000364: PUSH1 0x20
00000366: SWAP1
00000367: DUP2
00000368: MSTORE
00000369: PUSH1 0x40
0000036b: DUP3
0000036c: KECCAK256
0000036d: PUSH1 0x0b
0000036f: SLOAD
00000370: DUP2
00000371: SLOAD
00000372: PUSH1 0x01
00000374: DUP2
00000375: ADD
00000376: DUP4
00000377: SSTORE
00000378: SWAP2
00000379: DUP5
0000037a: MSTORE
0000037b: SWAP2
0000037c: SWAP1
0000037d: SWAP3
0000037e: KECCAK256
0000037f: PUSH1 0x00
00000381: NOT
00000382: SWAP1
00000383: SWAP2
00000384: ADD
00000385: SWAP2
00000386: ADD
00000387: SSTORE
00000388: PUSH2 0x0398
0000038b: PUSH1 0x03
0000038d: CALLVALUE
0000038e: PUSH4 0xffffffff
00000393: PUSH2 0x08b5
00000396: AND
00000397: JUMP
00000398: JUMPDEST
00000399: PUSH1 0x40
0000039b: MLOAD
0000039c: SWAP1
0000039d: SWAP2
0000039e: POP
0000039f: PUSH20 0x43571afea3c3c6f02569bdc59325f4f95463014d
000003b4: SWAP1
000003b5: DUP3
000003b6: ISZERO
000003b7: PUSH2 0x08fc
000003ba: MUL
000003bb: SWAP1
000003bc: DUP4
000003bd: SWAP1
000003be: PUSH1 0x00
000003c0: DUP2
000003c1: DUP2
000003c2: DUP2
000003c3: DUP6
000003c4: DUP9
000003c5: DUP9
000003c6: CALL
000003c7: POP
000003c8: PUSH20 0x8008bd6fddf2c26382b4c19d714a1bfea317ec57
000003dd: SWAP4
000003de: POP
000003df: PUSH2 0x08fc
000003e2: SWAP3
000003e3: POP
000003e4: PUSH2 0x03f8
000003e7: SWAP2
000003e8: POP
000003e9: PUSH1 0x01
000003eb: SWAP1
000003ec: POP
000003ed: CALLVALUE
000003ee: PUSH4 0xffffffff
000003f3: PUSH2 0x08b5
000003f6: AND
000003f7: JUMP
000003f8: JUMPDEST
000003f9: PUSH1 0x40
000003fb: MLOAD
000003fc: DUP2
000003fd: ISZERO
000003fe: SWAP1
000003ff: SWAP3
00000400: MUL
00000401: SWAP2
00000402: PUSH1 0x00
00000404: DUP2
00000405: DUP2
00000406: DUP2
00000407: DUP6
00000408: DUP9
00000409: DUP9
0000040a: CALL
0000040b: POP
0000040c: POP
0000040d: PUSH1 0x09
0000040f: DUP1
00000410: SLOAD
00000411: DUP6
00000412: ADD
00000413: SWAP1
00000414: SSTORE
00000415: POP
00000416: POP
00000417: POP
00000418: JUMPDEST
00000419: POP
0000041a: POP
0000041b: STOP
0000041c: JUMPDEST
0000041d: CALLVALUE
0000041e: DUP1
0000041f: ISZERO
00000420: PUSH2 0x0428
00000423: JUMPI
00000424: PUSH1 0x00
00000426: DUP1
00000427: REVERT
00000428: JUMPDEST
00000429: POP
0000042a: PUSH2 0x0431
0000042d: PUSH2 0x08e2
00000430: JUMP
00000431: JUMPDEST
00000432: PUSH1 0x40
00000434: DUP1
00000435: MLOAD
00000436: SWAP3
00000437: DUP4
00000438: MSTORE
00000439: PUSH1 0x20
0000043b: DUP4
0000043c: ADD
0000043d: SWAP2
0000043e: SWAP1
0000043f: SWAP2
00000440: MSTORE
00000441: DUP1
00000442: MLOAD
00000443: SWAP2
00000444: DUP3
00000445: SWAP1
00000446: SUB
00000447: ADD
00000448: SWAP1
00000449: RETURN
0000044a: JUMPDEST
0000044b: CALLVALUE
0000044c: DUP1
0000044d: ISZERO
0000044e: PUSH2 0x0456
00000451: JUMPI
00000452: PUSH1 0x00
00000454: DUP1
00000455: REVERT
00000456: JUMPDEST
00000457: POP
00000458: PUSH2 0x045f
0000045b: PUSH2 0x08eb
0000045e: JUMP
0000045f: JUMPDEST
00000460: PUSH1 0x40
00000462: DUP1
00000463: MLOAD
00000464: SWAP2
00000465: DUP3
00000466: MSTORE
00000467: MLOAD
00000468: SWAP1
00000469: DUP2
0000046a: SWAP1
0000046b: SUB
0000046c: PUSH1 0x20
0000046e: ADD
0000046f: SWAP1
00000470: RETURN
00000471: JUMPDEST
00000472: CALLVALUE
00000473: DUP1
00000474: ISZERO
00000475: PUSH2 0x047d
00000478: JUMPI
00000479: PUSH1 0x00
0000047b: DUP1
0000047c: REVERT
0000047d: JUMPDEST
0000047e: POP
0000047f: PUSH2 0x0486
00000482: PUSH2 0x08f0
00000485: JUMP
00000486: JUMPDEST
00000487: PUSH1 0x40
00000489: DUP1
0000048a: MLOAD
0000048b: PUSH1 0x01
0000048d: PUSH1 0xa0
0000048f: PUSH1 0x02
00000491: EXP
00000492: SUB
00000493: SWAP1
00000494: SWAP3
00000495: AND
00000496: DUP3
00000497: MSTORE
00000498: MLOAD
00000499: SWAP1
0000049a: DUP2
0000049b: SWAP1
0000049c: SUB
0000049d: PUSH1 0x20
0000049f: ADD
000004a0: SWAP1
000004a1: RETURN
000004a2: JUMPDEST
000004a3: CALLVALUE
000004a4: DUP1
000004a5: ISZERO
000004a6: PUSH2 0x04ae
000004a9: JUMPI
000004aa: PUSH1 0x00
000004ac: DUP1
000004ad: REVERT
000004ae: JUMPDEST
000004af: POP
000004b0: PUSH2 0x045f
000004b3: PUSH2 0x0908
000004b6: JUMP
000004b7: JUMPDEST
000004b8: CALLVALUE
000004b9: DUP1
000004ba: ISZERO
000004bb: PUSH2 0x04c3
000004be: JUMPI
000004bf: PUSH1 0x00
000004c1: DUP1
000004c2: REVERT
000004c3: JUMPDEST
000004c4: POP
000004c5: PUSH2 0x04d8
000004c8: PUSH1 0x01
000004ca: PUSH1 0xa0
000004cc: PUSH1 0x02
000004ce: EXP
000004cf: SUB
000004d0: PUSH1 0x04
000004d2: CALLDATALOAD
000004d3: AND
000004d4: PUSH2 0x090e
000004d7: JUMP
000004d8: JUMPDEST
000004d9: PUSH1 0x40
000004db: MLOAD
000004dc: DUP1
000004dd: DUP1
000004de: PUSH1 0x20
000004e0: ADD
000004e1: DUP1
000004e2: PUSH1 0x20
000004e4: ADD
000004e5: DUP1
000004e6: PUSH1 0x20
000004e8: ADD
000004e9: DUP1
000004ea: PUSH1 0x20
000004ec: ADD
000004ed: DUP6
000004ee: DUP2
000004ef: SUB
000004f0: DUP6
000004f1: MSTORE
000004f2: DUP10
000004f3: DUP2
000004f4: DUP2
000004f5: MLOAD
000004f6: DUP2
000004f7: MSTORE
000004f8: PUSH1 0x20
000004fa: ADD
000004fb: SWAP2
000004fc: POP
000004fd: DUP1
000004fe: MLOAD
000004ff: SWAP1
00000500: PUSH1 0x20
00000502: ADD
00000503: SWAP1
00000504: PUSH1 0x20
00000506: MUL
00000507: DUP1
00000508: DUP4
00000509: DUP4
0000050a: PUSH1 0x00
0000050c: JUMPDEST
0000050d: DUP4
0000050e: DUP2
0000050f: LT
00000510: ISZERO
00000511: PUSH2 0x0524
00000514: JUMPI
00000515: DUP2
00000516: DUP2
00000517: ADD
00000518: MLOAD
00000519: DUP4
0000051a: DUP3
0000051b: ADD
0000051c: MSTORE
0000051d: PUSH1 0x20
0000051f: ADD
00000520: PUSH2 0x050c
00000523: JUMP
00000524: JUMPDEST
00000525: POP
00000526: POP
00000527: POP
00000528: POP
00000529: SWAP1
0000052a: POP
0000052b: ADD
0000052c: DUP6
0000052d: DUP2
0000052e: SUB
0000052f: DUP5
00000530: MSTORE
00000531: DUP9
00000532: DUP2
00000533: DUP2
00000534: MLOAD
00000535: DUP2
00000536: MSTORE
00000537: PUSH1 0x20
00000539: ADD
0000053a: SWAP2
0000053b: POP
0000053c: DUP1
0000053d: MLOAD
0000053e: SWAP1
0000053f: PUSH1 0x20
00000541: ADD
00000542: SWAP1
00000543: PUSH1 0x20
00000545: MUL
00000546: DUP1
00000547: DUP4
00000548: DUP4
00000549: PUSH1 0x00
0000054b: JUMPDEST
0000054c: DUP4
0000054d: DUP2
0000054e: LT
0000054f: ISZERO
00000550: PUSH2 0x0563
00000553: JUMPI
00000554: DUP2
00000555: DUP2
00000556: ADD
00000557: MLOAD
00000558: DUP4
00000559: DUP3
0000055a: ADD
0000055b: MSTORE
0000055c: PUSH1 0x20
0000055e: ADD
0000055f: PUSH2 0x054b
00000562: JUMP
00000563: JUMPDEST
00000564: POP
00000565: POP
00000566: POP
00000567: POP
00000568: SWAP1
00000569: POP
0000056a: ADD
0000056b: DUP6
0000056c: DUP2
0000056d: SUB
0000056e: DUP4
0000056f: MSTORE
00000570: DUP8
00000571: DUP2
00000572: DUP2
00000573: MLOAD
00000574: DUP2
00000575: MSTORE
00000576: PUSH1 0x20
00000578: ADD
00000579: SWAP2
0000057a: POP
0000057b: DUP1
0000057c: MLOAD
0000057d: SWAP1
0000057e: PUSH1 0x20
00000580: ADD
00000581: SWAP1
00000582: PUSH1 0x20
00000584: MUL
00000585: DUP1
00000586: DUP4
00000587: DUP4
00000588: PUSH1 0x00
0000058a: JUMPDEST
0000058b: DUP4
0000058c: DUP2
0000058d: LT
0000058e: ISZERO
0000058f: PUSH2 0x05a2
00000592: JUMPI
00000593: DUP2
00000594: DUP2
00000595: ADD
00000596: MLOAD
00000597: DUP4
00000598: DUP3
00000599: ADD
0000059a: MSTORE
0000059b: PUSH1 0x20
0000059d: ADD
0000059e: PUSH2 0x058a
000005a1: JUMP
000005a2: JUMPDEST
000005a3: POP
000005a4: POP
000005a5: POP
000005a6: POP
000005a7: SWAP1
000005a8: POP
000005a9: ADD
000005aa: DUP6
000005ab: DUP2
000005ac: SUB
000005ad: DUP3
000005ae: MSTORE
000005af: DUP7
000005b0: DUP2
000005b1: DUP2
000005b2: MLOAD
000005b3: DUP2
000005b4: MSTORE
000005b5: PUSH1 0x20
000005b7: ADD
000005b8: SWAP2
000005b9: POP
000005ba: DUP1
000005bb: MLOAD
000005bc: SWAP1
000005bd: PUSH1 0x20
000005bf: ADD
000005c0: SWAP1
000005c1: PUSH1 0x20
000005c3: MUL
000005c4: DUP1
000005c5: DUP4
000005c6: DUP4
000005c7: PUSH1 0x00
000005c9: JUMPDEST
000005ca: DUP4
000005cb: DUP2
000005cc: LT
000005cd: ISZERO
000005ce: PUSH2 0x05e1
000005d1: JUMPI
000005d2: DUP2
000005d3: DUP2
000005d4: ADD
000005d5: MLOAD
000005d6: DUP4
000005d7: DUP3
000005d8: ADD
000005d9: MSTORE
000005da: PUSH1 0x20
000005dc: ADD
000005dd: PUSH2 0x05c9
000005e0: JUMP
000005e1: JUMPDEST
000005e2: POP
000005e3: POP
000005e4: POP
000005e5: POP
000005e6: SWAP1
000005e7: POP
000005e8: ADD
000005e9: SWAP9
000005ea: POP
000005eb: POP
000005ec: POP
000005ed: POP
000005ee: POP
000005ef: POP
000005f0: POP
000005f1: POP
000005f2: POP
000005f3: PUSH1 0x40
000005f5: MLOAD
000005f6: DUP1
000005f7: SWAP2
000005f8: SUB
000005f9: SWAP1
000005fa: RETURN
000005fb: JUMPDEST
000005fc: CALLVALUE
000005fd: DUP1
000005fe: ISZERO
000005ff: PUSH2 0x0607
00000602: JUMPI
00000603: PUSH1 0x00
00000605: DUP1
00000606: REVERT
00000607: JUMPDEST
00000608: POP
00000609: PUSH2 0x045f
0000060c: PUSH2 0x0ad5
0000060f: JUMP
00000610: JUMPDEST
00000611: CALLVALUE
00000612: DUP1
00000613: ISZERO
00000614: PUSH2 0x061c
00000617: JUMPI
00000618: PUSH1 0x00
0000061a: DUP1
0000061b: REVERT
0000061c: JUMPDEST
0000061d: POP
0000061e: PUSH2 0x045f
00000621: PUSH2 0x0adb
00000624: JUMP
00000625: JUMPDEST
00000626: CALLVALUE
00000627: DUP1
00000628: ISZERO
00000629: PUSH2 0x0631
0000062c: JUMPI
0000062d: PUSH1 0x00
0000062f: DUP1
00000630: REVERT
00000631: JUMPDEST
00000632: POP
00000633: PUSH2 0x045f
00000636: PUSH2 0x0ae1
00000639: JUMP
0000063a: JUMPDEST
0000063b: CALLVALUE
0000063c: DUP1
0000063d: ISZERO
0000063e: PUSH2 0x0646
00000641: JUMPI
00000642: PUSH1 0x00
00000644: DUP1
00000645: REVERT
00000646: JUMPDEST
00000647: POP
00000648: PUSH2 0x064f
0000064b: PUSH2 0x0ae7
0000064e: JUMP
0000064f: JUMPDEST
00000650: PUSH1 0x40
00000652: DUP1
00000653: MLOAD
00000654: SWAP2
00000655: ISZERO
00000656: ISZERO
00000657: DUP3
00000658: MSTORE
00000659: MLOAD
0000065a: SWAP1
0000065b: DUP2
0000065c: SWAP1
0000065d: SUB
0000065e: PUSH1 0x20
00000660: ADD
00000661: SWAP1
00000662: RETURN
00000663: JUMPDEST
00000664: CALLVALUE
00000665: DUP1
00000666: ISZERO
00000667: PUSH2 0x066f
0000066a: JUMPI
0000066b: PUSH1 0x00
0000066d: DUP1
0000066e: REVERT
0000066f: JUMPDEST
00000670: POP
00000671: PUSH2 0x045f
00000674: PUSH1 0x01
00000676: PUSH1 0xa0
00000678: PUSH1 0x02
0000067a: EXP
0000067b: SUB
0000067c: PUSH1 0x04
0000067e: CALLDATALOAD
0000067f: AND
00000680: PUSH1 0x24
00000682: CALLDATALOAD
00000683: PUSH2 0x0af0
00000686: JUMP
00000687: JUMPDEST
00000688: CALLVALUE
00000689: DUP1
0000068a: ISZERO
0000068b: PUSH2 0x0693
0000068e: JUMPI
0000068f: PUSH1 0x00
00000691: DUP1
00000692: REVERT
00000693: JUMPDEST
00000694: POP
00000695: PUSH2 0x045f
00000698: PUSH2 0x0b20
0000069b: JUMP
0000069c: JUMPDEST
0000069d: CALLVALUE
0000069e: DUP1
0000069f: ISZERO
000006a0: PUSH2 0x06a8
000006a3: JUMPI
000006a4: PUSH1 0x00
000006a6: DUP1
000006a7: REVERT
000006a8: JUMPDEST
000006a9: POP
000006aa: PUSH2 0x0486
000006ad: PUSH2 0x0b3e
000006b0: JUMP
000006b1: JUMPDEST
000006b2: CALLVALUE
000006b3: DUP1
000006b4: ISZERO
000006b5: PUSH2 0x06bd
000006b8: JUMPI
000006b9: PUSH1 0x00
000006bb: DUP1
000006bc: REVERT
000006bd: JUMPDEST
000006be: POP
000006bf: PUSH2 0x06c6
000006c2: PUSH2 0x0b56
000006c5: JUMP
000006c6: JUMPDEST
000006c7: STOP
000006c8: JUMPDEST
000006c9: CALLVALUE
000006ca: DUP1
000006cb: ISZERO
000006cc: PUSH2 0x06d4
000006cf: JUMPI
000006d0: PUSH1 0x00
000006d2: DUP1
000006d3: REVERT
000006d4: JUMPDEST
000006d5: POP
000006d6: PUSH2 0x045f
000006d9: PUSH2 0x0bc0
000006dc: JUMP
000006dd: JUMPDEST
000006de: CALLVALUE
000006df: DUP1
000006e0: ISZERO
000006e1: PUSH2 0x06e9
000006e4: JUMPI
000006e5: PUSH1 0x00
000006e7: DUP1
000006e8: REVERT
000006e9: JUMPDEST
000006ea: POP
000006eb: PUSH2 0x06c6
000006ee: PUSH1 0x01
000006f0: PUSH1 0xa0
000006f2: PUSH1 0x02
000006f4: EXP
000006f5: SUB
000006f6: PUSH1 0x04
000006f8: CALLDATALOAD
000006f9: AND
000006fa: PUSH1 0x24
000006fc: CALLDATALOAD
000006fd: PUSH1 0x44
000006ff: CALLDATALOAD
00000700: PUSH2 0x0bc6
00000703: JUMP
00000704: JUMPDEST
00000705: CALLVALUE
00000706: DUP1
00000707: ISZERO
00000708: PUSH2 0x0710
0000070b: JUMPI
0000070c: PUSH1 0x00
0000070e: DUP1
0000070f: REVERT
00000710: JUMPDEST
00000711: POP
00000712: PUSH2 0x071c
00000715: PUSH1 0x04
00000717: CALLDATALOAD
00000718: PUSH2 0x0efc
0000071b: JUMP
0000071c: JUMPDEST
0000071d: PUSH1 0x40
0000071f: DUP1
00000720: MLOAD
00000721: PUSH1 0x01
00000723: PUSH1 0xa0
00000725: PUSH1 0x02
00000727: EXP
00000728: SUB
00000729: SWAP1
0000072a: SWAP6
0000072b: AND
0000072c: DUP6
0000072d: MSTORE
0000072e: PUSH1 0x20
00000730: DUP6
00000731: ADD
00000732: SWAP4
00000733: SWAP1
00000734: SWAP4
00000735: MSTORE
00000736: DUP4
00000737: DUP4
00000738: ADD
00000739: SWAP2
0000073a: SWAP1
0000073b: SWAP2
0000073c: MSTORE
0000073d: PUSH1 0x60
0000073f: DUP4
00000740: ADD
00000741: MSTORE
00000742: MLOAD
00000743: SWAP1
00000744: DUP2
00000745: SWAP1
00000746: SUB
00000747: PUSH1 0x80
00000749: ADD
0000074a: SWAP1
0000074b: RETURN
0000074c: JUMPDEST
0000074d: CALLVALUE
0000074e: DUP1
0000074f: ISZERO
00000750: PUSH2 0x0758
00000753: JUMPI
00000754: PUSH1 0x00
00000756: DUP1
00000757: REVERT
00000758: JUMPDEST
00000759: POP
0000075a: PUSH2 0x04d8
0000075d: PUSH1 0x01
0000075f: PUSH1 0xa0
00000761: PUSH1 0x02
00000763: EXP
00000764: SUB
00000765: PUSH1 0x04
00000767: CALLDATALOAD
00000768: AND
00000769: PUSH2 0x0f4f
0000076c: JUMP
0000076d: JUMPDEST
0000076e: CALLVALUE
0000076f: DUP1
00000770: ISZERO
00000771: PUSH2 0x0779
00000774: JUMPI
00000775: PUSH1 0x00
00000777: DUP1
00000778: REVERT
00000779: JUMPDEST
0000077a: POP
0000077b: PUSH2 0x06c6
0000077e: PUSH2 0x10f9
00000781: JUMP
00000782: JUMPDEST
00000783: CALLVALUE
00000784: DUP1
00000785: ISZERO
00000786: PUSH2 0x078e
00000789: JUMPI
0000078a: PUSH1 0x00
0000078c: DUP1
0000078d: REVERT
0000078e: JUMPDEST
0000078f: POP
00000790: PUSH2 0x0486
00000793: PUSH2 0x1123
00000796: JUMP
00000797: JUMPDEST
00000798: CALLVALUE
00000799: DUP1
0000079a: ISZERO
0000079b: PUSH2 0x07a3
0000079e: JUMPI
0000079f: PUSH1 0x00
000007a1: DUP1
000007a2: REVERT
000007a3: JUMPDEST
000007a4: POP
000007a5: PUSH2 0x064f
000007a8: PUSH2 0x1132
000007ab: JUMP
000007ac: JUMPDEST
000007ad: CALLVALUE
000007ae: DUP1
000007af: ISZERO
000007b0: PUSH2 0x07b8
000007b3: JUMPI
000007b4: PUSH1 0x00
000007b6: DUP1
000007b7: REVERT
000007b8: JUMPDEST
000007b9: POP
000007ba: PUSH2 0x07c4
000007bd: PUSH1 0x04
000007bf: CALLDATALOAD
000007c0: PUSH2 0x1143
000007c3: JUMP
000007c4: JUMPDEST
000007c5: PUSH1 0x40
000007c7: DUP1
000007c8: MLOAD
000007c9: PUSH1 0x01
000007cb: PUSH1 0xa0
000007cd: PUSH1 0x02
000007cf: EXP
000007d0: SUB
000007d1: SWAP1
000007d2: SWAP5
000007d3: AND
000007d4: DUP5
000007d5: MSTORE
000007d6: PUSH1 0x20
000007d8: DUP5
000007d9: ADD
000007da: SWAP3
000007db: SWAP1
000007dc: SWAP3
000007dd: MSTORE
000007de: DUP3
000007df: DUP3
000007e0: ADD
000007e1: MSTORE
000007e2: MLOAD
000007e3: SWAP1
000007e4: DUP2
000007e5: SWAP1
000007e6: SUB
000007e7: PUSH1 0x60
000007e9: ADD
000007ea: SWAP1
000007eb: RETURN
000007ec: JUMPDEST
000007ed: CALLVALUE
000007ee: DUP1
000007ef: ISZERO
000007f0: PUSH2 0x07f8
000007f3: JUMPI
000007f4: PUSH1 0x00
000007f6: DUP1
000007f7: REVERT
000007f8: JUMPDEST
000007f9: POP
000007fa: PUSH2 0x06c6
000007fd: PUSH1 0x04
000007ff: CALLDATALOAD
00000800: PUSH2 0x11ec
00000803: JUMP
00000804: JUMPDEST
00000805: CALLVALUE
00000806: DUP1
00000807: ISZERO
00000808: PUSH2 0x0810
0000080b: JUMPI
0000080c: PUSH1 0x00
0000080e: DUP1
0000080f: REVERT
00000810: JUMPDEST
00000811: POP
00000812: PUSH2 0x045f
00000815: PUSH2 0x1470
00000818: JUMP
00000819: JUMPDEST
0000081a: CALLVALUE
0000081b: DUP1
0000081c: ISZERO
0000081d: PUSH2 0x0825
00000820: JUMPI
00000821: PUSH1 0x00
00000823: DUP1
00000824: REVERT
00000825: JUMPDEST
00000826: POP
00000827: PUSH2 0x071c
0000082a: PUSH1 0x04
0000082c: CALLDATALOAD
0000082d: PUSH2 0x1476
00000830: JUMP
00000831: JUMPDEST
00000832: CALLVALUE
00000833: DUP1
00000834: ISZERO
00000835: PUSH2 0x083d
00000838: JUMPI
00000839: PUSH1 0x00
0000083b: DUP1
0000083c: REVERT
0000083d: JUMPDEST
0000083e: POP
0000083f: PUSH2 0x045f
00000842: PUSH1 0x01
00000844: PUSH1 0xa0
00000846: PUSH1 0x02
00000848: EXP
00000849: SUB
0000084a: PUSH1 0x04
0000084c: CALLDATALOAD
0000084d: AND
0000084e: PUSH2 0x148d
00000851: JUMP
00000852: JUMPDEST
00000853: CALLVALUE
00000854: DUP1
00000855: ISZERO
00000856: PUSH2 0x085e
00000859: JUMPI
0000085a: PUSH1 0x00
0000085c: DUP1
0000085d: REVERT
0000085e: JUMPDEST
0000085f: POP
00000860: PUSH2 0x07c4
00000863: PUSH1 0x04
00000865: CALLDATALOAD
00000866: PUSH2 0x14eb
00000869: JUMP
0000086a: JUMPDEST
0000086b: CALLVALUE
0000086c: DUP1
0000086d: ISZERO
0000086e: PUSH2 0x0876
00000871: JUMPI
00000872: PUSH1 0x00
00000874: DUP1
00000875: REVERT
00000876: JUMPDEST
00000877: POP
00000878: PUSH2 0x045f
0000087b: PUSH2 0x1568
0000087e: JUMP
0000087f: JUMPDEST
00000880: CALLVALUE
00000881: DUP1
00000882: ISZERO
00000883: PUSH2 0x088b
00000886: JUMPI
00000887: PUSH1 0x00
00000889: DUP1
0000088a: REVERT
0000088b: JUMPDEST
0000088c: POP
0000088d: PUSH2 0x045f
00000890: PUSH1 0x01
00000892: PUSH1 0xa0
00000894: PUSH1 0x02
00000896: EXP
00000897: SUB
00000898: PUSH1 0x04
0000089a: CALLDATALOAD
0000089b: AND
0000089c: PUSH2 0x1581
0000089f: JUMP
000008a0: JUMPDEST
000008a1: CALLVALUE
000008a2: DUP1
000008a3: ISZERO
000008a4: PUSH2 0x08ac
000008a7: JUMPI
000008a8: PUSH1 0x00
000008aa: DUP1
000008ab: REVERT
000008ac: JUMPDEST
000008ad: POP
000008ae: PUSH2 0x045f
000008b1: PUSH2 0x15d8
000008b4: JUMP
000008b5: JUMPDEST
000008b6: PUSH1 0x00
000008b8: DUP2
000008b9: ISZERO
000008ba: ISZERO
000008bb: PUSH2 0x08c6
000008be: JUMPI
000008bf: POP
000008c0: PUSH1 0x00
000008c2: PUSH2 0x08dc
000008c5: JUMP
000008c6: JUMPDEST
000008c7: PUSH1 0x01
000008c9: DUP4
000008ca: ADD
000008cb: SLOAD
000008cc: DUP4
000008cd: SLOAD
000008ce: DUP4
000008cf: MUL
000008d0: DUP2
000008d1: ISZERO
000008d2: ISZERO
000008d3: PUSH2 0x08d8
000008d6: JUMPI
000008d7: INVALID
000008d8: JUMPDEST
000008d9: DIV
000008da: SWAP1
000008db: POP
000008dc: JUMPDEST
000008dd: SWAP3
000008de: SWAP2
000008df: POP
000008e0: POP
000008e1: JUMP
000008e2: JUMPDEST
000008e3: PUSH1 0x05
000008e5: SLOAD
000008e6: PUSH1 0x06
000008e8: SLOAD
000008e9: DUP3
000008ea: JUMP
000008eb: JUMPDEST
000008ec: ADDRESS
000008ed: BALANCE
000008ee: SWAP1
000008ef: JUMP
000008f0: JUMPDEST
000008f1: PUSH20 0x43571afea3c3c6f02569bdc59325f4f95463014d
00000906: DUP2
00000907: JUMP
00000908: JUMPDEST
00000909: PUSH1 0x10
0000090b: SLOAD
0000090c: DUP2
0000090d: JUMP
0000090e: JUMPDEST
0000090f: PUSH1 0x60
00000911: DUP1
00000912: PUSH1 0x60
00000914: DUP1
00000915: PUSH1 0x00
00000917: DUP1
00000918: PUSH1 0x00
0000091a: DUP1
0000091b: PUSH1 0x00
0000091d: PUSH2 0x0925
00000920: DUP11
00000921: PUSH2 0x148d
00000924: JUMP
00000925: JUMPDEST
00000926: SWAP5
00000927: POP
00000928: DUP5
00000929: PUSH1 0x40
0000092b: MLOAD
0000092c: SWAP1
0000092d: DUP1
0000092e: DUP3
0000092f: MSTORE
00000930: DUP1
00000931: PUSH1 0x20
00000933: MUL
00000934: PUSH1 0x20
00000936: ADD
00000937: DUP3
00000938: ADD
00000939: PUSH1 0x40
0000093b: MSTORE
0000093c: DUP1
0000093d: ISZERO
0000093e: PUSH2 0x0951
00000941: JUMPI
00000942: DUP2
00000943: PUSH1 0x20
00000945: ADD
00000946: PUSH1 0x20
00000948: DUP3
00000949: MUL
0000094a: DUP1
0000094b: CODESIZE
0000094c: DUP4
0000094d: CODECOPY
0000094e: ADD
0000094f: SWAP1
00000950: POP
00000951: JUMPDEST
00000952: POP
00000953: SWAP9
00000954: POP
00000955: DUP5
00000956: PUSH1 0x40
00000958: MLOAD
00000959: SWAP1
0000095a: DUP1
0000095b: DUP3
0000095c: MSTORE
0000095d: DUP1
0000095e: PUSH1 0x20
00000960: MUL
00000961: PUSH1 0x20
00000963: ADD
00000964: DUP3
00000965: ADD
00000966: PUSH1 0x40
00000968: MSTORE
00000969: DUP1
0000096a: ISZERO
0000096b: PUSH2 0x097e
0000096e: JUMPI
0000096f: DUP2
00000970: PUSH1 0x20
00000972: ADD
00000973: PUSH1 0x20
00000975: DUP3
00000976: MUL
00000977: DUP1
00000978: CODESIZE
00000979: DUP4
0000097a: CODECOPY
0000097b: ADD
0000097c: SWAP1
0000097d: POP
0000097e: JUMPDEST
0000097f: POP
00000980: SWAP8
00000981: POP
00000982: DUP5
00000983: PUSH1 0x40
00000985: MLOAD
00000986: SWAP1
00000987: DUP1
00000988: DUP3
00000989: MSTORE
0000098a: DUP1
0000098b: PUSH1 0x20
0000098d: MUL
0000098e: PUSH1 0x20
00000990: ADD
00000991: DUP3
00000992: ADD
00000993: PUSH1 0x40
00000995: MSTORE
00000996: DUP1
00000997: ISZERO
00000998: PUSH2 0x09ab
0000099b: JUMPI
0000099c: DUP2
0000099d: PUSH1 0x20
0000099f: ADD
000009a0: PUSH1 0x20
000009a2: DUP3
000009a3: MUL
000009a4: DUP1
000009a5: CODESIZE
000009a6: DUP4
000009a7: CODECOPY
000009a8: ADD
000009a9: SWAP1
000009aa: POP
000009ab: JUMPDEST
000009ac: POP
000009ad: SWAP6
000009ae: POP
000009af: DUP5
000009b0: PUSH1 0x40
000009b2: MLOAD
000009b3: SWAP1
000009b4: DUP1
000009b5: DUP3
000009b6: MSTORE
000009b7: DUP1
000009b8: PUSH1 0x20
000009ba: MUL
000009bb: PUSH1 0x20
000009bd: ADD
000009be: DUP3
000009bf: ADD
000009c0: PUSH1 0x40
000009c2: MSTORE
000009c3: DUP1
000009c4: ISZERO
000009c5: PUSH2 0x09d8
000009c8: JUMPI
000009c9: DUP2
000009ca: PUSH1 0x20
000009cc: ADD
000009cd: PUSH1 0x20
000009cf: DUP3
000009d0: MUL
000009d1: DUP1
000009d2: CODESIZE
000009d3: DUP4
000009d4: CODECOPY
000009d5: ADD
000009d6: SWAP1
000009d7: POP
000009d8: JUMPDEST
000009d9: POP
000009da: SWAP7
000009db: POP
000009dc: PUSH1 0x00
000009de: SWAP4
000009df: POP
000009e0: PUSH1 0x00
000009e2: DUP6
000009e3: GT
000009e4: ISZERO
000009e5: PUSH2 0x0ac9
000009e8: JUMPI
000009e9: PUSH1 0x00
000009eb: SWAP3
000009ec: POP
000009ed: PUSH1 0x00
000009ef: SWAP2
000009f0: POP
000009f1: JUMPDEST
000009f2: DUP5
000009f3: DUP3
000009f4: LT
000009f5: ISZERO
000009f6: PUSH2 0x0ac9
000009f9: JUMPI
000009fa: PUSH1 0x01
000009fc: PUSH1 0xa0
000009fe: PUSH1 0x02
00000a00: EXP
00000a01: SUB
00000a02: DUP11
00000a03: AND
00000a04: PUSH1 0x00
00000a06: SWAP1
00000a07: DUP2
00000a08: MSTORE
00000a09: PUSH1 0x0c
00000a0b: PUSH1 0x20
00000a0d: MSTORE
00000a0e: PUSH1 0x40
00000a10: SWAP1
00000a11: KECCAK256
00000a12: DUP1
00000a13: SLOAD
00000a14: DUP4
00000a15: SWAP1
00000a16: DUP2
00000a17: LT
00000a18: PUSH2 0x0a1d
00000a1b: JUMPI
00000a1c: INVALID
00000a1d: JUMPDEST
00000a1e: SWAP1
00000a1f: PUSH1 0x00
00000a21: MSTORE
00000a22: PUSH1 0x20
00000a24: PUSH1 0x00
00000a26: KECCAK256
00000a27: ADD
00000a28: SLOAD
00000a29: SWAP4
00000a2a: POP
00000a2b: PUSH1 0x0b
00000a2d: DUP5
00000a2e: DUP2
00000a2f: SLOAD
00000a30: DUP2
00000a31: LT
00000a32: ISZERO
00000a33: ISZERO
00000a34: PUSH2 0x0a39
00000a37: JUMPI
00000a38: INVALID
00000a39: JUMPDEST
00000a3a: SWAP1
00000a3b: PUSH1 0x00
00000a3d: MSTORE
00000a3e: PUSH1 0x20
00000a40: PUSH1 0x00
00000a42: KECCAK256
00000a43: SWAP1
00000a44: PUSH1 0x04
00000a46: MUL
00000a47: ADD
00000a48: SWAP1
00000a49: POP
00000a4a: DUP2
00000a4b: DUP10
00000a4c: DUP5
00000a4d: DUP2
00000a4e: MLOAD
00000a4f: DUP2
00000a50: LT
00000a51: ISZERO
00000a52: ISZERO
00000a53: PUSH2 0x0a58
00000a56: JUMPI
00000a57: INVALID
00000a58: JUMPDEST
00000a59: PUSH1 0x20
00000a5b: SWAP1
00000a5c: DUP2
00000a5d: MUL
00000a5e: SWAP1
00000a5f: SWAP2
00000a60: ADD
00000a61: ADD
00000a62: MSTORE
00000a63: PUSH1 0x03
00000a65: DUP2
00000a66: ADD
00000a67: SLOAD
00000a68: DUP9
00000a69: MLOAD
00000a6a: DUP10
00000a6b: SWAP1
00000a6c: DUP6
00000a6d: SWAP1
00000a6e: DUP2
00000a6f: LT
00000a70: PUSH2 0x0a75
00000a73: JUMPI
00000a74: INVALID
00000a75: JUMPDEST
00000a76: PUSH1 0x20
00000a78: SWAP1
00000a79: DUP2
00000a7a: MUL
00000a7b: SWAP1
00000a7c: SWAP2
00000a7d: ADD
00000a7e: ADD
00000a7f: MSTORE
00000a80: PUSH1 0x01
00000a82: DUP2
00000a83: ADD
00000a84: SLOAD
00000a85: DUP8
00000a86: MLOAD
00000a87: DUP9
00000a88: SWAP1
00000a89: DUP6
00000a8a: SWAP1
00000a8b: DUP2
00000a8c: LT
00000a8d: PUSH2 0x0a92
00000a90: JUMPI
00000a91: INVALID
00000a92: JUMPDEST
00000a93: PUSH1 0x20
00000a95: SWAP1
00000a96: DUP2
00000a97: MUL
00000a98: SWAP1
00000a99: SWAP2
00000a9a: ADD
00000a9b: ADD
00000a9c: MSTORE
00000a9d: PUSH1 0x02
00000a9f: DUP2
00000aa0: ADD
00000aa1: SLOAD
00000aa2: DUP7
00000aa3: MLOAD
00000aa4: DUP8
00000aa5: SWAP1
00000aa6: DUP6
00000aa7: SWAP1
00000aa8: DUP2
00000aa9: LT
00000aaa: PUSH2 0x0aaf
00000aad: JUMPI
00000aae: INVALID
00000aaf: JUMPDEST
00000ab0: PUSH1 0x20
00000ab2: SWAP1
00000ab3: DUP2
00000ab4: MUL
00000ab5: SWAP1
00000ab6: SWAP2
00000ab7: ADD
00000ab8: ADD
00000ab9: MSTORE
00000aba: PUSH1 0x01
00000abc: SWAP3
00000abd: DUP4
00000abe: ADD
00000abf: SWAP3
00000ac0: SWAP2
00000ac1: SWAP1
00000ac2: SWAP2
00000ac3: ADD
00000ac4: SWAP1
00000ac5: PUSH2 0x09f1
00000ac8: JUMP
00000ac9: JUMPDEST
00000aca: POP
00000acb: POP
00000acc: POP
00000acd: POP
00000ace: POP
00000acf: SWAP2
00000ad0: SWAP4
00000ad1: POP
00000ad2: SWAP2
00000ad3: SWAP4
00000ad4: JUMP
00000ad5: JUMPDEST
00000ad6: PUSH1 0x0f
00000ad8: SLOAD
00000ad9: DUP2
00000ada: JUMP
00000adb: JUMPDEST
00000adc: PUSH1 0x0e
00000ade: SLOAD
00000adf: DUP2
00000ae0: JUMP
00000ae1: JUMPDEST
00000ae2: PUSH1 0x0d
00000ae4: SLOAD
00000ae5: DUP2
00000ae6: JUMP
00000ae7: JUMPDEST
00000ae8: PUSH1 0x07
00000aea: SLOAD
00000aeb: PUSH1 0xff
00000aed: AND
00000aee: DUP2
00000aef: JUMP
00000af0: JUMPDEST
00000af1: PUSH1 0x0c
00000af3: PUSH1 0x20
00000af5: MSTORE
00000af6: DUP2
00000af7: PUSH1 0x00
00000af9: MSTORE
00000afa: PUSH1 0x40
00000afc: PUSH1 0x00
00000afe: KECCAK256
00000aff: DUP2
00000b00: DUP2
00000b01: SLOAD
00000b02: DUP2
00000b03: LT
00000b04: ISZERO
00000b05: ISZERO
00000b06: PUSH2 0x0b0b
00000b09: JUMPI
00000b0a: INVALID
00000b0b: JUMPDEST
00000b0c: SWAP1
00000b0d: PUSH1 0x00
00000b0f: MSTORE
00000b10: PUSH1 0x20
00000b12: PUSH1 0x00
00000b14: KECCAK256
00000b15: ADD
00000b16: PUSH1 0x00
00000b18: SWAP2
00000b19: POP
00000b1a: SWAP2
00000b1b: POP
00000b1c: POP
00000b1d: SLOAD
00000b1e: DUP2
00000b1f: JUMP
00000b20: JUMPDEST
00000b21: PUSH1 0x0f
00000b23: SLOAD
00000b24: PUSH1 0x0b
00000b26: SLOAD
00000b27: PUSH1 0x00
00000b29: SWAP2
00000b2a: PUSH2 0x0b39
00000b2d: SWAP2
00000b2e: SWAP1
00000b2f: PUSH4 0xffffffff
00000b34: PUSH2 0x15f1
00000b37: AND
00000b38: JUMP
00000b39: JUMPDEST
00000b3a: SWAP1
00000b3b: POP
00000b3c: SWAP1
00000b3d: JUMP
00000b3e: JUMPDEST
00000b3f: PUSH20 0x8008bd6fddf2c26382b4c19d714a1bfea317ec57
00000b54: DUP2
00000b55: JUMP
00000b56: JUMPDEST
00000b57: PUSH2 0x0b5e
00000b5a: PUSH2 0x1132
00000b5d: JUMP
00000b5e: JUMPDEST
00000b5f: ISZERO
00000b60: ISZERO
00000b61: PUSH2 0x0b69
00000b64: JUMPI
00000b65: PUSH1 0x00
00000b67: DUP1
00000b68: REVERT
00000b69: JUMPDEST
00000b6a: PUSH1 0x00
00000b6c: DUP1
00000b6d: SLOAD
00000b6e: PUSH1 0x40
00000b70: MLOAD
00000b71: PUSH1 0x01
00000b73: PUSH1 0xa0
00000b75: PUSH1 0x02
00000b77: EXP
00000b78: SUB
00000b79: SWAP1
00000b7a: SWAP2
00000b7b: AND
00000b7c: SWAP1
00000b7d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00000b9e: SWAP1
00000b9f: DUP4
00000ba0: SWAP1
00000ba1: LOG3
00000ba2: PUSH1 0x00
00000ba4: DUP1
00000ba5: SLOAD
00000ba6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bbb: NOT
00000bbc: AND
00000bbd: SWAP1
00000bbe: SSTORE
00000bbf: JUMP
00000bc0: JUMPDEST
00000bc1: PUSH1 0x08
00000bc3: SLOAD
00000bc4: DUP2
00000bc5: JUMP
00000bc6: JUMPDEST
00000bc7: PUSH1 0x00
00000bc9: DUP1
00000bca: PUSH1 0x00
00000bcc: DUP1
00000bcd: PUSH1 0x00
00000bcf: DUP1
00000bd0: PUSH1 0x00
00000bd2: DUP1
00000bd3: PUSH2 0x0bda
00000bd6: PUSH2 0x1132
00000bd9: JUMP
00000bda: JUMPDEST
00000bdb: ISZERO
00000bdc: ISZERO
00000bdd: PUSH2 0x0be5
00000be0: JUMPI
00000be1: PUSH1 0x00
00000be3: DUP1
00000be4: REVERT
00000be5: JUMPDEST
00000be6: PUSH1 0x07
00000be8: SLOAD
00000be9: PUSH1 0xff
00000beb: AND
00000bec: ISZERO
00000bed: PUSH2 0x0bf5
00000bf0: JUMPI
00000bf1: PUSH1 0x00
00000bf3: DUP1
00000bf4: REVERT
00000bf5: JUMPDEST
00000bf6: DUP11
00000bf7: SWAP8
00000bf8: POP
00000bf9: PUSH1 0x00
00000bfb: SWAP3
00000bfc: POP
00000bfd: DUP8
00000bfe: PUSH1 0x01
00000c00: PUSH1 0xa0
00000c02: PUSH1 0x02
00000c04: EXP
00000c05: SUB
00000c06: AND
00000c07: PUSH4 0xdd9ea299
00000c0c: PUSH1 0x40
00000c0e: MLOAD
00000c0f: DUP2
00000c10: PUSH4 0xffffffff
00000c15: AND
00000c16: PUSH1 0xe0
00000c18: PUSH1 0x02
00000c1a: EXP
00000c1b: MUL
00000c1c: DUP2
00000c1d: MSTORE
00000c1e: PUSH1 0x04
00000c20: ADD
00000c21: PUSH1 0x20
00000c23: PUSH1 0x40
00000c25: MLOAD
00000c26: DUP1
00000c27: DUP4
00000c28: SUB
00000c29: DUP2
00000c2a: PUSH1 0x00
00000c2c: DUP8
00000c2d: DUP1
00000c2e: EXTCODESIZE
00000c2f: ISZERO
00000c30: DUP1
00000c31: ISZERO
00000c32: PUSH2 0x0c3a
00000c35: JUMPI
00000c36: PUSH1 0x00
00000c38: DUP1
00000c39: REVERT
00000c3a: JUMPDEST
00000c3b: POP
00000c3c: GAS
00000c3d: CALL
00000c3e: ISZERO
00000c3f: DUP1
00000c40: ISZERO
00000c41: PUSH2 0x0c4e
00000c44: JUMPI
00000c45: RETURNDATASIZE
00000c46: PUSH1 0x00
00000c48: DUP1
00000c49: RETURNDATACOPY
00000c4a: RETURNDATASIZE
00000c4b: PUSH1 0x00
00000c4d: REVERT
00000c4e: JUMPDEST
00000c4f: POP
00000c50: POP
00000c51: POP
00000c52: POP
00000c53: PUSH1 0x40
00000c55: MLOAD
00000c56: RETURNDATASIZE
00000c57: PUSH1 0x20
00000c59: DUP2
00000c5a: LT
00000c5b: ISZERO
00000c5c: PUSH2 0x0c64
00000c5f: JUMPI
00000c60: PUSH1 0x00
00000c62: DUP1
00000c63: REVERT
00000c64: JUMPDEST
00000c65: POP
00000c66: MLOAD
00000c67: SWAP2
00000c68: POP
00000c69: PUSH2 0x0c78
00000c6c: DUP10
00000c6d: DUP4
00000c6e: PUSH4 0xffffffff
00000c73: PUSH2 0x1608
00000c76: AND
00000c77: JUMP
00000c78: JUMPDEST
00000c79: SWAP9
00000c7a: POP
00000c7b: DUP10
00000c7c: SWAP1
00000c7d: POP
00000c7e: JUMPDEST
00000c7f: DUP9
00000c80: DUP2
00000c81: GT
00000c82: PUSH2 0x0eaf
00000c85: JUMPI
00000c86: DUP8
00000c87: PUSH1 0x01
00000c89: PUSH1 0xa0
00000c8b: PUSH1 0x02
00000c8d: EXP
00000c8e: SUB
00000c8f: AND
00000c90: PUSH4 0x9f9fb968
00000c95: DUP3
00000c96: PUSH1 0x40
00000c98: MLOAD
00000c99: DUP3
00000c9a: PUSH4 0xffffffff
00000c9f: AND
00000ca0: PUSH1 0xe0
00000ca2: PUSH1 0x02
00000ca4: EXP
00000ca5: MUL
00000ca6: DUP2
00000ca7: MSTORE
00000ca8: PUSH1 0x04
00000caa: ADD
00000cab: DUP1
00000cac: DUP3
00000cad: DUP2
00000cae: MSTORE
00000caf: PUSH1 0x20
00000cb1: ADD
00000cb2: SWAP2
00000cb3: POP
00000cb4: POP
00000cb5: PUSH1 0x80
00000cb7: PUSH1 0x40
00000cb9: MLOAD
00000cba: DUP1
00000cbb: DUP4
00000cbc: SUB
00000cbd: DUP2
00000cbe: PUSH1 0x00
00000cc0: DUP8
00000cc1: DUP1
00000cc2: EXTCODESIZE
00000cc3: ISZERO
00000cc4: DUP1
00000cc5: ISZERO
00000cc6: PUSH2 0x0cce
00000cc9: JUMPI
00000cca: PUSH1 0x00
00000ccc: DUP1
00000ccd: REVERT
00000cce: JUMPDEST
00000ccf: POP
00000cd0: GAS
00000cd1: CALL
00000cd2: ISZERO
00000cd3: DUP1
00000cd4: ISZERO
00000cd5: PUSH2 0x0ce2
00000cd8: JUMPI
00000cd9: RETURNDATASIZE
00000cda: PUSH1 0x00
00000cdc: DUP1
00000cdd: RETURNDATACOPY
00000cde: RETURNDATASIZE
00000cdf: PUSH1 0x00
00000ce1: REVERT
00000ce2: JUMPDEST
00000ce3: POP
00000ce4: POP
00000ce5: POP
00000ce6: POP
00000ce7: PUSH1 0x40
00000ce9: MLOAD
00000cea: RETURNDATASIZE
00000ceb: PUSH1 0x80
00000ced: DUP2
00000cee: LT
00000cef: ISZERO
00000cf0: PUSH2 0x0cf8
00000cf3: JUMPI
00000cf4: PUSH1 0x00
00000cf6: DUP1
00000cf7: REVERT
00000cf8: JUMPDEST
00000cf9: POP
00000cfa: DUP1
00000cfb: MLOAD
00000cfc: PUSH1 0x20
00000cfe: DUP3
00000cff: ADD
00000d00: MLOAD
00000d01: PUSH1 0x40
00000d03: DUP4
00000d04: ADD
00000d05: MLOAD
00000d06: PUSH1 0x60
00000d08: SWAP1
00000d09: SWAP4
00000d0a: ADD
00000d0b: MLOAD
00000d0c: SWAP2
00000d0d: SWAP10
00000d0e: POP
00000d0f: SWAP8
00000d10: POP
00000d11: SWAP1
00000d12: SWAP6
00000d13: POP
00000d14: SWAP4
00000d15: POP
00000d16: PUSH1 0x01
00000d18: PUSH1 0xa0
00000d1a: PUSH1 0x02
00000d1c: EXP
00000d1d: SUB
00000d1e: DUP8
00000d1f: AND
00000d20: PUSH20 0x494a7a2d0599f2447487d7fa10baeafcb301c41b
00000d35: EQ
00000d36: DUP1
00000d37: ISZERO
00000d38: SWAP1
00000d39: PUSH2 0x0d5f
00000d3c: JUMPI
00000d3d: POP
00000d3e: PUSH1 0x01
00000d40: PUSH1 0xa0
00000d42: PUSH1 0x02
00000d44: EXP
00000d45: SUB
00000d46: DUP8
00000d47: AND
00000d48: PUSH20 0xfd3093a4a3bd68b46db42b7e59e2d88c6d58a99e
00000d5d: EQ
00000d5e: ISZERO
00000d5f: JUMPDEST
00000d60: DUP1
00000d61: ISZERO
00000d62: PUSH2 0x0d88
00000d65: JUMPI
00000d66: POP
00000d67: PUSH1 0x01
00000d69: PUSH1 0xa0
00000d6b: PUSH1 0x02
00000d6d: EXP
00000d6e: SUB
00000d6f: DUP8
00000d70: AND
00000d71: PUSH20 0xbaa2cb97b6e28ef5c0a7b957398edf7ab5f01a1b
00000d86: EQ
00000d87: ISZERO
00000d88: JUMPDEST
00000d89: DUP1
00000d8a: ISZERO
00000d8b: PUSH2 0x0db1
00000d8e: JUMPI
00000d8f: POP
00000d90: PUSH1 0x01
00000d92: PUSH1 0xa0
00000d94: PUSH1 0x02
00000d96: EXP
00000d97: SUB
00000d98: DUP8
00000d99: AND
00000d9a: PUSH20 0xfdd46866c279c90f463a08518e151bc78a1a5f38
00000daf: EQ
00000db0: ISZERO
00000db1: JUMPDEST
00000db2: DUP1
00000db3: ISZERO
00000db4: PUSH2 0x0dda
00000db7: JUMPI
00000db8: POP
00000db9: PUSH1 0x01
00000dbb: PUSH1 0xa0
00000dbd: PUSH1 0x02
00000dbf: EXP
00000dc0: SUB
00000dc1: DUP8
00000dc2: AND
00000dc3: PUSH20 0xdfa5662b5495e34c2aa8f06feb358a6d90a6d62e
00000dd8: EQ
00000dd9: ISZERO
00000dda: JUMPDEST
00000ddb: ISZERO
00000ddc: PUSH2 0x0ea7
00000ddf: JUMPI
00000de0: PUSH1 0x40
00000de2: DUP1
00000de3: MLOAD
00000de4: PUSH1 0x80
00000de6: DUP2
00000de7: ADD
00000de8: DUP3
00000de9: MSTORE
00000dea: PUSH1 0x01
00000dec: PUSH1 0xa0
00000dee: PUSH1 0x02
00000df0: EXP
00000df1: SUB
00000df2: DUP10
00000df3: AND
00000df4: DUP2
00000df5: MSTORE
00000df6: PUSH1 0x20
00000df8: DUP2
00000df9: ADD
00000dfa: DUP9
00000dfb: SWAP1
00000dfc: MSTORE
00000dfd: PUSH1 0x0a
00000dff: SWAP2
00000e00: DUP2
00000e01: ADD
00000e02: PUSH2 0x0e12
00000e05: PUSH1 0x05
00000e07: DUP11
00000e08: PUSH4 0xffffffff
00000e0d: PUSH2 0x08b5
00000e10: AND
00000e11: JUMP
00000e12: JUMPDEST
00000e13: DUP2
00000e14: MSTORE
00000e15: PUSH1 0x00
00000e17: PUSH1 0x20
00000e19: SWAP2
00000e1a: DUP3
00000e1b: ADD
00000e1c: DUP2
00000e1d: SWAP1
00000e1e: MSTORE
00000e1f: DUP4
00000e20: SLOAD
00000e21: PUSH1 0x01
00000e23: DUP1
00000e24: DUP3
00000e25: ADD
00000e26: DUP7
00000e27: SSTORE
00000e28: SWAP5
00000e29: DUP3
00000e2a: MSTORE
00000e2b: DUP3
00000e2c: DUP3
00000e2d: KECCAK256
00000e2e: DUP5
00000e2f: MLOAD
00000e30: PUSH1 0x04
00000e32: SWAP1
00000e33: SWAP3
00000e34: MUL
00000e35: ADD
00000e36: DUP1
00000e37: SLOAD
00000e38: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e4d: NOT
00000e4e: AND
00000e4f: PUSH1 0x01
00000e51: PUSH1 0xa0
00000e53: PUSH1 0x02
00000e55: EXP
00000e56: SUB
00000e57: SWAP3
00000e58: DUP4
00000e59: AND
00000e5a: OR
00000e5b: DUP2
00000e5c: SSTORE
00000e5d: DUP5
00000e5e: DUP5
00000e5f: ADD
00000e60: MLOAD
00000e61: DUP2
00000e62: DUP8
00000e63: ADD
00000e64: SSTORE
00000e65: PUSH1 0x40
00000e67: DUP1
00000e68: DUP7
00000e69: ADD
00000e6a: MLOAD
00000e6b: PUSH1 0x02
00000e6d: DUP4
00000e6e: ADD
00000e6f: SSTORE
00000e70: PUSH1 0x60
00000e72: SWAP1
00000e73: SWAP6
00000e74: ADD
00000e75: MLOAD
00000e76: PUSH1 0x03
00000e78: SWAP1
00000e79: SWAP2
00000e7a: ADD
00000e7b: SSTORE
00000e7c: DUP12
00000e7d: AND
00000e7e: DUP2
00000e7f: MSTORE
00000e80: PUSH1 0x0c
00000e82: DUP3
00000e83: MSTORE
00000e84: SWAP2
00000e85: DUP3
00000e86: KECCAK256
00000e87: PUSH1 0x0a
00000e89: SLOAD
00000e8a: DUP2
00000e8b: SLOAD
00000e8c: DUP1
00000e8d: DUP7
00000e8e: ADD
00000e8f: DUP4
00000e90: SSTORE
00000e91: SWAP2
00000e92: DUP5
00000e93: MSTORE
00000e94: SWAP2
00000e95: SWAP1
00000e96: SWAP3
00000e97: KECCAK256
00000e98: PUSH1 0x00
00000e9a: NOT
00000e9b: SWAP2
00000e9c: SWAP1
00000e9d: SWAP2
00000e9e: ADD
00000e9f: SWAP2
00000ea0: ADD
00000ea1: SSTORE
00000ea2: SWAP3
00000ea3: SWAP1
00000ea4: SWAP3
00000ea5: ADD
00000ea6: SWAP2
00000ea7: JUMPDEST
00000ea8: PUSH1 0x01
00000eaa: ADD
00000eab: PUSH2 0x0c7e
00000eae: JUMP
00000eaf: JUMPDEST
00000eb0: PUSH1 0x40
00000eb2: DUP1
00000eb3: MLOAD
00000eb4: TIMESTAMP
00000eb5: DUP2
00000eb6: MSTORE
00000eb7: PUSH1 0x20
00000eb9: DUP2
00000eba: ADD
00000ebb: DUP6
00000ebc: SWAP1
00000ebd: MSTORE
00000ebe: DUP1
00000ebf: DUP3
00000ec0: ADD
00000ec1: DUP12
00000ec2: SWAP1
00000ec3: MSTORE
00000ec4: SWAP1
00000ec5: MLOAD
00000ec6: PUSH32 0x758f7d44874cb30a3b92e65fea37e4c9cf36dccea81ba280d751eec98d97248e
00000ee7: SWAP2
00000ee8: DUP2
00000ee9: SWAP1
00000eea: SUB
00000eeb: PUSH1 0x60
00000eed: ADD
00000eee: SWAP1
00000eef: LOG1
00000ef0: POP
00000ef1: POP
00000ef2: POP
00000ef3: POP
00000ef4: POP
00000ef5: POP
00000ef6: POP
00000ef7: POP
00000ef8: POP
00000ef9: POP
00000efa: POP
00000efb: JUMP
00000efc: JUMPDEST
00000efd: PUSH1 0x00
00000eff: DUP1
00000f00: PUSH1 0x00
00000f02: DUP1
00000f03: PUSH1 0x00
00000f05: PUSH1 0x0a
00000f07: DUP7
00000f08: DUP2
00000f09: SLOAD
00000f0a: DUP2
00000f0b: LT
00000f0c: ISZERO
00000f0d: ISZERO
00000f0e: PUSH2 0x0f13
00000f11: JUMPI
00000f12: INVALID
00000f13: JUMPDEST
00000f14: PUSH1 0x00
00000f16: SWAP2
00000f17: DUP3
00000f18: MSTORE
00000f19: PUSH1 0x20
00000f1b: SWAP1
00000f1c: SWAP2
00000f1d: KECCAK256
00000f1e: PUSH1 0x04
00000f20: SWAP1
00000f21: SWAP2
00000f22: MUL
00000f23: ADD
00000f24: DUP1
00000f25: SLOAD
00000f26: PUSH1 0x01
00000f28: DUP3
00000f29: ADD
00000f2a: SLOAD
00000f2b: PUSH1 0x02
00000f2d: DUP4
00000f2e: ADD
00000f2f: SLOAD
00000f30: PUSH1 0x03
00000f32: SWAP1
00000f33: SWAP4
00000f34: ADD
00000f35: SLOAD
00000f36: PUSH1 0x01
00000f38: PUSH1 0xa0
00000f3a: PUSH1 0x02
00000f3c: EXP
00000f3d: SUB
00000f3e: SWAP1
00000f3f: SWAP3
00000f40: AND
00000f41: SWAP10
00000f42: SWAP1
00000f43: SWAP9
00000f44: POP
00000f45: SWAP2
00000f46: SWAP7
00000f47: POP
00000f48: SWAP5
00000f49: POP
00000f4a: SWAP3
00000f4b: POP
00000f4c: POP
00000f4d: POP
00000f4e: JUMP
00000f4f: JUMPDEST
00000f50: PUSH1 0x60
00000f52: DUP1
00000f53: PUSH1 0x60
00000f55: DUP1
00000f56: PUSH1 0x00
00000f58: DUP1
00000f59: PUSH1 0x00
00000f5b: DUP1
00000f5c: PUSH2 0x0f64
00000f5f: DUP10
00000f60: PUSH2 0x1581
00000f63: JUMP
00000f64: JUMPDEST
00000f65: SWAP4
00000f66: POP
00000f67: DUP4
00000f68: PUSH1 0x40
00000f6a: MLOAD
00000f6b: SWAP1
00000f6c: DUP1
00000f6d: DUP3
00000f6e: MSTORE
00000f6f: DUP1
00000f70: PUSH1 0x20
00000f72: MUL
00000f73: PUSH1 0x20
00000f75: ADD
00000f76: DUP3
00000f77: ADD
00000f78: PUSH1 0x40
00000f7a: MSTORE
00000f7b: DUP1
00000f7c: ISZERO
00000f7d: PUSH2 0x0f90
00000f80: JUMPI
00000f81: DUP2
00000f82: PUSH1 0x20
00000f84: ADD
00000f85: PUSH1 0x20
00000f87: DUP3
00000f88: MUL
00000f89: DUP1
00000f8a: CODESIZE
00000f8b: DUP4
00000f8c: CODECOPY
00000f8d: ADD
00000f8e: SWAP1
00000f8f: POP
00000f90: JUMPDEST
00000f91: POP
00000f92: SWAP8
00000f93: POP
00000f94: DUP4
00000f95: PUSH1 0x40
00000f97: MLOAD
00000f98: SWAP1
00000f99: DUP1
00000f9a: DUP3
00000f9b: MSTORE
00000f9c: DUP1
00000f9d: PUSH1 0x20
00000f9f: MUL
00000fa0: PUSH1 0x20
00000fa2: ADD
00000fa3: DUP3
00000fa4: ADD
00000fa5: PUSH1 0x40
00000fa7: MSTORE
00000fa8: DUP1
00000fa9: ISZERO
00000faa: PUSH2 0x0fbd
00000fad: JUMPI
00000fae: DUP2
00000faf: PUSH1 0x20
00000fb1: ADD
00000fb2: PUSH1 0x20
00000fb4: DUP3
00000fb5: MUL
00000fb6: DUP1
00000fb7: CODESIZE
00000fb8: DUP4
00000fb9: CODECOPY
00000fba: ADD
00000fbb: SWAP1
00000fbc: POP
00000fbd: JUMPDEST
00000fbe: POP
00000fbf: SWAP7
00000fc0: POP
00000fc1: DUP4
00000fc2: PUSH1 0x40
00000fc4: MLOAD
00000fc5: SWAP1
00000fc6: DUP1
00000fc7: DUP3
00000fc8: MSTORE
00000fc9: DUP1
00000fca: PUSH1 0x20
00000fcc: MUL
00000fcd: PUSH1 0x20
00000fcf: ADD
00000fd0: DUP3
00000fd1: ADD
00000fd2: PUSH1 0x40
00000fd4: MSTORE
00000fd5: DUP1
00000fd6: ISZERO
00000fd7: PUSH2 0x0fea
00000fda: JUMPI
00000fdb: DUP2
00000fdc: PUSH1 0x20
00000fde: ADD
00000fdf: PUSH1 0x20
00000fe1: DUP3
00000fe2: MUL
00000fe3: DUP1
00000fe4: CODESIZE
00000fe5: DUP4
00000fe6: CODECOPY
00000fe7: ADD
00000fe8: SWAP1
00000fe9: POP
00000fea: JUMPDEST
00000feb: POP
00000fec: SWAP5
00000fed: POP
00000fee: DUP4
00000fef: PUSH1 0x40
00000ff1: MLOAD
00000ff2: SWAP1
00000ff3: DUP1
00000ff4: DUP3
00000ff5: MSTORE
00000ff6: DUP1
00000ff7: PUSH1 0x20
00000ff9: MUL
00000ffa: PUSH1 0x20
00000ffc: ADD
00000ffd: DUP3
00000ffe: ADD
00000fff: PUSH1 0x40
00001001: MSTORE
00001002: DUP1
00001003: ISZERO
00001004: PUSH2 0x1017
00001007: JUMPI
00001008: DUP2
00001009: PUSH1 0x20
0000100b: ADD
0000100c: PUSH1 0x20
0000100e: DUP3
0000100f: MUL
00001010: DUP1
00001011: CODESIZE
00001012: DUP4
00001013: CODECOPY
00001014: ADD
00001015: SWAP1
00001016: POP
00001017: JUMPDEST
00001018: POP
00001019: SWAP6
0000101a: POP
0000101b: PUSH1 0x00
0000101d: DUP5
0000101e: GT
0000101f: ISZERO
00001020: PUSH2 0x10ee
00001023: JUMPI
00001024: PUSH1 0x00
00001026: SWAP3
00001027: POP
00001028: PUSH1 0x00
0000102a: SWAP2
0000102b: POP
0000102c: JUMPDEST
0000102d: PUSH1 0x0a
0000102f: SLOAD
00001030: DUP3
00001031: LT
00001032: ISZERO
00001033: PUSH2 0x10ee
00001036: JUMPI
00001037: PUSH1 0x0a
00001039: DUP1
0000103a: SLOAD
0000103b: DUP4
0000103c: SWAP1
0000103d: DUP2
0000103e: LT
0000103f: PUSH2 0x1044
00001042: JUMPI
00001043: INVALID
00001044: JUMPDEST
00001045: PUSH1 0x00
00001047: SWAP2
00001048: DUP3
00001049: MSTORE
0000104a: PUSH1 0x20
0000104c: SWAP1
0000104d: SWAP2
0000104e: KECCAK256
0000104f: PUSH1 0x04
00001051: SWAP1
00001052: SWAP2
00001053: MUL
00001054: ADD
00001055: DUP1
00001056: SLOAD
00001057: SWAP1
00001058: SWAP2
00001059: POP
0000105a: PUSH1 0x01
0000105c: PUSH1 0xa0
0000105e: PUSH1 0x02
00001060: EXP
00001061: SUB
00001062: DUP11
00001063: DUP2
00001064: AND
00001065: SWAP2
00001066: AND
00001067: EQ
00001068: ISZERO
00001069: PUSH2 0x10e3
0000106c: JUMPI
0000106d: DUP2
0000106e: DUP9
0000106f: DUP5
00001070: DUP2
00001071: MLOAD
00001072: DUP2
00001073: LT
00001074: ISZERO
00001075: ISZERO
00001076: PUSH2 0x107b
00001079: JUMPI
0000107a: INVALID
0000107b: JUMPDEST
0000107c: PUSH1 0x20
0000107e: SWAP1
0000107f: DUP2
00001080: MUL
00001081: SWAP1
00001082: SWAP2
00001083: ADD
00001084: ADD
00001085: MSTORE
00001086: PUSH1 0x03
00001088: DUP2
00001089: ADD
0000108a: SLOAD
0000108b: DUP8
0000108c: MLOAD
0000108d: DUP9
0000108e: SWAP1
0000108f: DUP6
00001090: SWAP1
00001091: DUP2
00001092: LT
00001093: PUSH2 0x1098
00001096: JUMPI
00001097: INVALID
00001098: JUMPDEST
00001099: PUSH1 0x20
0000109b: SWAP1
0000109c: DUP2
0000109d: MUL
0000109e: SWAP1
0000109f: SWAP2
000010a0: ADD
000010a1: ADD
000010a2: MSTORE
000010a3: PUSH1 0x01
000010a5: DUP2
000010a6: ADD
000010a7: SLOAD
000010a8: DUP7
000010a9: MLOAD
000010aa: DUP8
000010ab: SWAP1
000010ac: DUP6
000010ad: SWAP1
000010ae: DUP2
000010af: LT
000010b0: PUSH2 0x10b5
000010b3: JUMPI
000010b4: INVALID
000010b5: JUMPDEST
000010b6: PUSH1 0x20
000010b8: SWAP1
000010b9: DUP2
000010ba: MUL
000010bb: SWAP1
000010bc: SWAP2
000010bd: ADD
000010be: ADD
000010bf: MSTORE
000010c0: PUSH1 0x02
000010c2: DUP2
000010c3: ADD
000010c4: SLOAD
000010c5: DUP6
000010c6: MLOAD
000010c7: DUP7
000010c8: SWAP1
000010c9: DUP6
000010ca: SWAP1
000010cb: DUP2
000010cc: LT
000010cd: PUSH2 0x10d2
000010d0: JUMPI
000010d1: INVALID
000010d2: JUMPDEST
000010d3: PUSH1 0x20
000010d5: SWAP1
000010d6: DUP2
000010d7: MUL
000010d8: SWAP1
000010d9: SWAP2
000010da: ADD
000010db: ADD
000010dc: MSTORE
000010dd: PUSH1 0x01
000010df: SWAP1
000010e0: SWAP3
000010e1: ADD
000010e2: SWAP2
000010e3: JUMPDEST
000010e4: DUP2
000010e5: PUSH1 0x01
000010e7: ADD
000010e8: SWAP2
000010e9: POP
000010ea: PUSH2 0x102c
000010ed: JUMP
000010ee: JUMPDEST
000010ef: POP
000010f0: POP
000010f1: POP
000010f2: POP
000010f3: SWAP2
000010f4: SWAP4
000010f5: POP
000010f6: SWAP2
000010f7: SWAP4
000010f8: JUMP
000010f9: JUMPDEST
000010fa: PUSH2 0x1101
000010fd: PUSH2 0x1132
00001100: JUMP
00001101: JUMPDEST
00001102: ISZERO
00001103: ISZERO
00001104: PUSH2 0x110c
00001107: JUMPI
00001108: PUSH1 0x00
0000110a: DUP1
0000110b: REVERT
0000110c: JUMPDEST
0000110d: PUSH1 0x07
0000110f: DUP1
00001110: SLOAD
00001111: PUSH1 0xff
00001113: NOT
00001114: AND
00001115: PUSH1 0x01
00001117: OR
00001118: SWAP1
00001119: SSTORE
0000111a: PUSH2 0x1121
0000111d: PUSH2 0x0b56
00001120: JUMP
00001121: JUMPDEST
00001122: JUMP
00001123: JUMPDEST
00001124: PUSH1 0x00
00001126: SLOAD
00001127: PUSH1 0x01
00001129: PUSH1 0xa0
0000112b: PUSH1 0x02
0000112d: EXP
0000112e: SUB
0000112f: AND
00001130: SWAP1
00001131: JUMP
00001132: JUMPDEST
00001133: PUSH1 0x00
00001135: SLOAD
00001136: PUSH1 0x01
00001138: PUSH1 0xa0
0000113a: PUSH1 0x02
0000113c: EXP
0000113d: SUB
0000113e: AND
0000113f: CALLER
00001140: EQ
00001141: SWAP1
00001142: JUMP
00001143: JUMPDEST
00001144: PUSH1 0x00
00001146: DUP1
00001147: PUSH1 0x00
00001149: DUP1
0000114a: PUSH2 0x116f
0000114d: PUSH1 0x01
0000114f: PUSH2 0x1163
00001152: DUP8
00001153: PUSH1 0x0e
00001155: SLOAD
00001156: PUSH2 0x15f1
00001159: SWAP1
0000115a: SWAP2
0000115b: SWAP1
0000115c: PUSH4 0xffffffff
00001161: AND
00001162: JUMP
00001163: JUMPDEST
00001164: SWAP1
00001165: PUSH4 0xffffffff
0000116a: PUSH2 0x15f1
0000116d: AND
0000116e: JUMP
0000116f: JUMPDEST
00001170: SWAP1
00001171: POP
00001172: PUSH1 0x0a
00001174: DUP2
00001175: DUP2
00001176: SLOAD
00001177: DUP2
00001178: LT
00001179: ISZERO
0000117a: ISZERO
0000117b: PUSH2 0x1180
0000117e: JUMPI
0000117f: INVALID
00001180: JUMPDEST
00001181: PUSH1 0x00
00001183: SWAP2
00001184: DUP3
00001185: MSTORE
00001186: PUSH1 0x20
00001188: SWAP1
00001189: SWAP2
0000118a: KECCAK256
0000118b: PUSH1 0x04
0000118d: SWAP1
0000118e: SWAP2
0000118f: MUL
00001190: ADD
00001191: SLOAD
00001192: PUSH1 0x0a
00001194: DUP1
00001195: SLOAD
00001196: PUSH1 0x01
00001198: PUSH1 0xa0
0000119a: PUSH1 0x02
0000119c: EXP
0000119d: SUB
0000119e: SWAP1
0000119f: SWAP3
000011a0: AND
000011a1: SWAP2
000011a2: DUP4
000011a3: SWAP1
000011a4: DUP2
000011a5: LT
000011a6: PUSH2 0x11ab
000011a9: JUMPI
000011aa: INVALID
000011ab: JUMPDEST
000011ac: SWAP1
000011ad: PUSH1 0x00
000011af: MSTORE
000011b0: PUSH1 0x20
000011b2: PUSH1 0x00
000011b4: KECCAK256
000011b5: SWAP1
000011b6: PUSH1 0x04
000011b8: MUL
000011b9: ADD
000011ba: PUSH1 0x03
000011bc: ADD
000011bd: SLOAD
000011be: PUSH1 0x0a
000011c0: DUP4
000011c1: DUP2
000011c2: SLOAD
000011c3: DUP2
000011c4: LT
000011c5: ISZERO
000011c6: ISZERO
000011c7: PUSH2 0x11cc
000011ca: JUMPI
000011cb: INVALID
000011cc: JUMPDEST
000011cd: SWAP1
000011ce: PUSH1 0x00
000011d0: MSTORE
000011d1: PUSH1 0x20
000011d3: PUSH1 0x00
000011d5: KECCAK256
000011d6: SWAP1
000011d7: PUSH1 0x04
000011d9: MUL
000011da: ADD
000011db: PUSH1 0x02
000011dd: ADD
000011de: SLOAD
000011df: SWAP4
000011e0: POP
000011e1: SWAP4
000011e2: POP
000011e3: SWAP4
000011e4: POP
000011e5: POP
000011e6: SWAP2
000011e7: SWAP4
000011e8: SWAP1
000011e9: SWAP3
000011ea: POP
000011eb: JUMP
000011ec: JUMPDEST
000011ed: PUSH1 0x00
000011ef: DUP1
000011f0: DUP1
000011f1: DUP1
000011f2: DUP1
000011f3: PUSH1 0x64
000011f5: DUP7
000011f6: GT
000011f7: ISZERO
000011f8: PUSH2 0x124b
000011fb: JUMPI
000011fc: PUSH1 0x40
000011fe: DUP1
000011ff: MLOAD
00001200: PUSH1 0xe5
00001202: PUSH1 0x02
00001204: EXP
00001205: PUSH3 0x461bcd
00001209: MUL
0000120a: DUP2
0000120b: MSTORE
0000120c: PUSH1 0x20
0000120e: PUSH1 0x04
00001210: DUP3
00001211: ADD
00001212: MSTORE
00001213: PUSH1 0x1b
00001215: PUSH1 0x24
00001217: DUP3
00001218: ADD
00001219: MSTORE
0000121a: PUSH32 0x6e6f206d6f7265207468616e2031303020697465726174696f6e730000000000
0000123b: PUSH1 0x44
0000123d: DUP3
0000123e: ADD
0000123f: MSTORE
00001240: SWAP1
00001241: MLOAD
00001242: SWAP1
00001243: DUP2
00001244: SWAP1
00001245: SUB
00001246: PUSH1 0x64
00001248: ADD
00001249: SWAP1
0000124a: REVERT
0000124b: JUMPDEST
0000124c: PUSH1 0x10
0000124e: SLOAD
0000124f: ADDRESS
00001250: BALANCE
00001251: SWAP6
00001252: POP
00001253: DUP6
00001254: LT
00001255: ISZERO
00001256: PUSH2 0x12a9
00001259: JUMPI
0000125a: PUSH1 0x40
0000125c: DUP1
0000125d: MLOAD
0000125e: PUSH1 0xe5
00001260: PUSH1 0x02
00001262: EXP
00001263: PUSH3 0x461bcd
00001267: MUL
00001268: DUP2
00001269: MSTORE
0000126a: PUSH1 0x20
0000126c: PUSH1 0x04
0000126e: DUP3
0000126f: ADD
00001270: MSTORE
00001271: PUSH1 0x17
00001273: PUSH1 0x24
00001275: DUP3
00001276: ADD
00001277: MSTORE
00001278: PUSH32 0x4e6f7420656e6f7567682066756e647320746f20706179000000000000000000
00001299: PUSH1 0x44
0000129b: DUP3
0000129c: ADD
0000129d: MSTORE
0000129e: SWAP1
0000129f: MLOAD
000012a0: SWAP1
000012a1: DUP2
000012a2: SWAP1
000012a3: SUB
000012a4: PUSH1 0x64
000012a6: ADD
000012a7: SWAP1
000012a8: REVERT
000012a9: JUMPDEST
000012aa: PUSH1 0x0a
000012ac: SLOAD
000012ad: PUSH1 0x0b
000012af: SLOAD
000012b0: SWAP1
000012b1: SWAP5
000012b2: POP
000012b3: SWAP3
000012b4: POP
000012b5: PUSH1 0x00
000012b7: SWAP2
000012b8: POP
000012b9: PUSH2 0x12c9
000012bc: DUP7
000012bd: PUSH1 0x05
000012bf: PUSH4 0xffffffff
000012c4: PUSH2 0x1620
000012c7: AND
000012c8: JUMP
000012c9: JUMPDEST
000012ca: SWAP6
000012cb: POP
000012cc: PUSH1 0x00
000012ce: SWAP1
000012cf: POP
000012d0: JUMPDEST
000012d1: DUP6
000012d2: DUP2
000012d3: LT
000012d4: ISZERO
000012d5: PUSH2 0x1460
000012d8: JUMPI
000012d9: DUP4
000012da: PUSH1 0x0e
000012dc: SLOAD
000012dd: LT
000012de: ISZERO
000012df: PUSH2 0x1398
000012e2: JUMPI
000012e3: PUSH1 0x0a
000012e5: PUSH1 0x0e
000012e7: SLOAD
000012e8: DUP2
000012e9: SLOAD
000012ea: DUP2
000012eb: LT
000012ec: ISZERO
000012ed: ISZERO
000012ee: PUSH2 0x12f3
000012f1: JUMPI
000012f2: INVALID
000012f3: JUMPDEST
000012f4: SWAP1
000012f5: PUSH1 0x00
000012f7: MSTORE
000012f8: PUSH1 0x20
000012fa: PUSH1 0x00
000012fc: KECCAK256
000012fd: SWAP1
000012fe: PUSH1 0x04
00001300: MUL
00001301: ADD
00001302: PUSH1 0x02
00001304: ADD
00001305: SLOAD
00001306: SWAP2
00001307: POP
00001308: DUP2
00001309: DUP6
0000130a: LT
0000130b: ISZERO
0000130c: ISZERO
0000130d: PUSH2 0x1398
00001310: JUMPI
00001311: PUSH2 0x1320
00001314: DUP6
00001315: DUP4
00001316: PUSH4 0xffffffff
0000131b: PUSH2 0x15f1
0000131e: AND
0000131f: JUMP
00001320: JUMPDEST
00001321: SWAP5
00001322: POP
00001323: TIMESTAMP
00001324: PUSH1 0x0a
00001326: PUSH1 0x0e
00001328: SLOAD
00001329: DUP2
0000132a: SLOAD
0000132b: DUP2
0000132c: LT
0000132d: ISZERO
0000132e: ISZERO
0000132f: PUSH2 0x1334
00001332: JUMPI
00001333: INVALID
00001334: JUMPDEST
00001335: SWAP1
00001336: PUSH1 0x00
00001338: MSTORE
00001339: PUSH1 0x20
0000133b: PUSH1 0x00
0000133d: KECCAK256
0000133e: SWAP1
0000133f: PUSH1 0x04
00001341: MUL
00001342: ADD
00001343: PUSH1 0x03
00001345: ADD
00001346: DUP2
00001347: SWAP1
00001348: SSTORE
00001349: POP
0000134a: PUSH1 0x0a
0000134c: PUSH1 0x0e
0000134e: SLOAD
0000134f: DUP2
00001350: SLOAD
00001351: DUP2
00001352: LT
00001353: ISZERO
00001354: ISZERO
00001355: PUSH2 0x135a
00001358: JUMPI
00001359: INVALID
0000135a: JUMPDEST
0000135b: PUSH1 0x00
0000135d: SWAP2
0000135e: DUP3
0000135f: MSTORE
00001360: PUSH1 0x20
00001362: DUP3
00001363: KECCAK256
00001364: PUSH1 0x04
00001366: SWAP1
00001367: SWAP2
00001368: MUL
00001369: ADD
0000136a: SLOAD
0000136b: PUSH1 0x40
0000136d: MLOAD
0000136e: PUSH1 0x01
00001370: PUSH1 0xa0
00001372: PUSH1 0x02
00001374: EXP
00001375: SUB
00001376: SWAP1
00001377: SWAP2
00001378: AND
00001379: SWAP2
0000137a: DUP5
0000137b: ISZERO
0000137c: PUSH2 0x08fc
0000137f: MUL
00001380: SWAP2
00001381: DUP6
00001382: SWAP2
00001383: DUP2
00001384: DUP2
00001385: DUP2
00001386: DUP6
00001387: DUP9
00001388: DUP9
00001389: CALL
0000138a: POP
0000138b: POP
0000138c: PUSH1 0x0e
0000138e: DUP1
0000138f: SLOAD
00001390: PUSH1 0x01
00001392: ADD
00001393: SWAP1
00001394: SSTORE
00001395: POP
00001396: POP
00001397: POP
00001398: JUMPDEST
00001399: DUP3
0000139a: PUSH1 0x0f
0000139c: SLOAD
0000139d: LT
0000139e: ISZERO
0000139f: PUSH2 0x1458
000013a2: JUMPI
000013a3: PUSH1 0x0b
000013a5: PUSH1 0x0f
000013a7: SLOAD
000013a8: DUP2
000013a9: SLOAD
000013aa: DUP2
000013ab: LT
000013ac: ISZERO
000013ad: ISZERO
000013ae: PUSH2 0x13b3
000013b1: JUMPI
000013b2: INVALID
000013b3: JUMPDEST
000013b4: SWAP1
000013b5: PUSH1 0x00
000013b7: MSTORE
000013b8: PUSH1 0x20
000013ba: PUSH1 0x00
000013bc: KECCAK256
000013bd: SWAP1
000013be: PUSH1 0x04
000013c0: MUL
000013c1: ADD
000013c2: PUSH1 0x02
000013c4: ADD
000013c5: SLOAD
000013c6: SWAP2
000013c7: POP
000013c8: DUP2
000013c9: DUP6
000013ca: LT
000013cb: ISZERO
000013cc: ISZERO
000013cd: PUSH2 0x1458
000013d0: JUMPI
000013d1: PUSH2 0x13e0
000013d4: DUP6
000013d5: DUP4
000013d6: PUSH4 0xffffffff
000013db: PUSH2 0x15f1
000013de: AND
000013df: JUMP
000013e0: JUMPDEST
000013e1: SWAP5
000013e2: POP
000013e3: TIMESTAMP
000013e4: PUSH1 0x0b
000013e6: PUSH1 0x0f
000013e8: SLOAD
000013e9: DUP2
000013ea: SLOAD
000013eb: DUP2
000013ec: LT
000013ed: ISZERO
000013ee: ISZERO
000013ef: PUSH2 0x13f4
000013f2: JUMPI
000013f3: INVALID
000013f4: JUMPDEST
000013f5: SWAP1
000013f6: PUSH1 0x00
000013f8: MSTORE
000013f9: PUSH1 0x20
000013fb: PUSH1 0x00
000013fd: KECCAK256
000013fe: SWAP1
000013ff: PUSH1 0x04
00001401: MUL
00001402: ADD
00001403: PUSH1 0x03
00001405: ADD
00001406: DUP2
00001407: SWAP1
00001408: SSTORE
00001409: POP
0000140a: PUSH1 0x0b
0000140c: PUSH1 0x0f
0000140e: SLOAD
0000140f: DUP2
00001410: SLOAD
00001411: DUP2
00001412: LT
00001413: ISZERO
00001414: ISZERO
00001415: PUSH2 0x141a
00001418: JUMPI
00001419: INVALID
0000141a: JUMPDEST
0000141b: PUSH1 0x00
0000141d: SWAP2
0000141e: DUP3
0000141f: MSTORE
00001420: PUSH1 0x20
00001422: DUP3
00001423: KECCAK256
00001424: PUSH1 0x04
00001426: SWAP1
00001427: SWAP2
00001428: MUL
00001429: ADD
0000142a: SLOAD
0000142b: PUSH1 0x40
0000142d: MLOAD
0000142e: PUSH1 0x01
00001430: PUSH1 0xa0
00001432: PUSH1 0x02
00001434: EXP
00001435: SUB
00001436: SWAP1
00001437: SWAP2
00001438: AND
00001439: SWAP2
0000143a: DUP5
0000143b: ISZERO
0000143c: PUSH2 0x08fc
0000143f: MUL
00001440: SWAP2
00001441: DUP6
00001442: SWAP2
00001443: DUP2
00001444: DUP2
00001445: DUP2
00001446: DUP6
00001447: DUP9
00001448: DUP9
00001449: CALL
0000144a: POP
0000144b: POP
0000144c: PUSH1 0x0f
0000144e: DUP1
0000144f: SLOAD
00001450: PUSH1 0x01
00001452: ADD
00001453: SWAP1
00001454: SSTORE
00001455: POP
00001456: POP
00001457: POP
00001458: JUMPDEST
00001459: PUSH1 0x01
0000145b: ADD
0000145c: PUSH2 0x12d0
0000145f: JUMP
00001460: JUMPDEST
00001461: PUSH2 0x1468
00001464: PUSH2 0x1637
00001467: JUMP
00001468: JUMPDEST
00001469: POP
0000146a: POP
0000146b: POP
0000146c: POP
0000146d: POP
0000146e: POP
0000146f: JUMP
00001470: JUMPDEST
00001471: PUSH1 0x09
00001473: SLOAD
00001474: DUP2
00001475: JUMP
00001476: JUMPDEST
00001477: PUSH1 0x00
00001479: DUP1
0000147a: PUSH1 0x00
0000147c: DUP1
0000147d: PUSH1 0x00
0000147f: PUSH1 0x0b
00001481: DUP7
00001482: DUP2
00001483: SLOAD
00001484: DUP2
00001485: LT
00001486: ISZERO
00001487: ISZERO
00001488: PUSH2 0x0f13
0000148b: JUMPI
0000148c: INVALID
0000148d: JUMPDEST
0000148e: PUSH1 0x00
00001490: DUP1
00001491: DUP1
00001492: JUMPDEST
00001493: PUSH1 0x0b
00001495: SLOAD
00001496: DUP2
00001497: LT
00001498: ISZERO
00001499: PUSH2 0x14e4
0000149c: JUMPI
0000149d: DUP4
0000149e: PUSH1 0x01
000014a0: PUSH1 0xa0
000014a2: PUSH1 0x02
000014a4: EXP
000014a5: SUB
000014a6: AND
000014a7: PUSH1 0x0b
000014a9: DUP3
000014aa: DUP2
000014ab: SLOAD
000014ac: DUP2
000014ad: LT
000014ae: ISZERO
000014af: ISZERO
000014b0: PUSH2 0x14b5
000014b3: JUMPI
000014b4: INVALID
000014b5: JUMPDEST
000014b6: PUSH1 0x00
000014b8: SWAP2
000014b9: DUP3
000014ba: MSTORE
000014bb: PUSH1 0x20
000014bd: SWAP1
000014be: SWAP2
000014bf: KECCAK256
000014c0: PUSH1 0x04
000014c2: SWAP1
000014c3: SWAP2
000014c4: MUL
000014c5: ADD
000014c6: SLOAD
000014c7: PUSH1 0x01
000014c9: PUSH1 0xa0
000014cb: PUSH1 0x02
000014cd: EXP
000014ce: SUB
000014cf: AND
000014d0: EQ
000014d1: ISZERO
000014d2: PUSH2 0x14dc
000014d5: JUMPI
000014d6: PUSH1 0x01
000014d8: SWAP1
000014d9: SWAP2
000014da: ADD
000014db: SWAP1
000014dc: JUMPDEST
000014dd: PUSH1 0x01
000014df: ADD
000014e0: PUSH2 0x1492
000014e3: JUMP
000014e4: JUMPDEST
000014e5: POP
000014e6: SWAP3
000014e7: SWAP2
000014e8: POP
000014e9: POP
000014ea: JUMP
000014eb: JUMPDEST
000014ec: PUSH1 0x00
000014ee: DUP1
000014ef: PUSH1 0x00
000014f1: DUP1
000014f2: PUSH2 0x150b
000014f5: PUSH1 0x01
000014f7: PUSH2 0x1163
000014fa: DUP8
000014fb: PUSH1 0x0f
000014fd: SLOAD
000014fe: PUSH2 0x15f1
00001501: SWAP1
00001502: SWAP2
00001503: SWAP1
00001504: PUSH4 0xffffffff
00001509: AND
0000150a: JUMP
0000150b: JUMPDEST
0000150c: SWAP1
0000150d: POP
0000150e: PUSH1 0x0b
00001510: DUP2
00001511: DUP2
00001512: SLOAD
00001513: DUP2
00001514: LT
00001515: ISZERO
00001516: ISZERO
00001517: PUSH2 0x151c
0000151a: JUMPI
0000151b: INVALID
0000151c: JUMPDEST
0000151d: PUSH1 0x00
0000151f: SWAP2
00001520: DUP3
00001521: MSTORE
00001522: PUSH1 0x20
00001524: SWAP1
00001525: SWAP2
00001526: KECCAK256
00001527: PUSH1 0x04
00001529: SWAP1
0000152a: SWAP2
0000152b: MUL
0000152c: ADD
0000152d: SLOAD
0000152e: PUSH1 0x0b
00001530: DUP1
00001531: SLOAD
00001532: PUSH1 0x01
00001534: PUSH1 0xa0
00001536: PUSH1 0x02
00001538: EXP
00001539: SUB
0000153a: SWAP1
0000153b: SWAP3
0000153c: AND
0000153d: SWAP2
0000153e: DUP4
0000153f: SWAP1
00001540: DUP2
00001541: LT
00001542: PUSH2 0x1547
00001545: JUMPI
00001546: INVALID
00001547: JUMPDEST
00001548: SWAP1
00001549: PUSH1 0x00
0000154b: MSTORE
0000154c: PUSH1 0x20
0000154e: PUSH1 0x00
00001550: KECCAK256
00001551: SWAP1
00001552: PUSH1 0x04
00001554: MUL
00001555: ADD
00001556: PUSH1 0x03
00001558: ADD
00001559: SLOAD
0000155a: PUSH1 0x0b
0000155c: DUP4
0000155d: DUP2
0000155e: SLOAD
0000155f: DUP2
00001560: LT
00001561: ISZERO
00001562: ISZERO
00001563: PUSH2 0x11cc
00001566: JUMPI
00001567: INVALID
00001568: JUMPDEST
00001569: PUSH20 0x43571afea3c3c6f02569bdc59325f4f95463014d
0000157e: BALANCE
0000157f: SWAP1
00001580: JUMP
00001581: JUMPDEST
00001582: PUSH1 0x00
00001584: DUP1
00001585: DUP1
00001586: JUMPDEST
00001587: PUSH1 0x0a
00001589: SLOAD
0000158a: DUP2
0000158b: LT
0000158c: ISZERO
0000158d: PUSH2 0x14e4
00001590: JUMPI
00001591: DUP4
00001592: PUSH1 0x01
00001594: PUSH1 0xa0
00001596: PUSH1 0x02
00001598: EXP
00001599: SUB
0000159a: AND
0000159b: PUSH1 0x0a
0000159d: DUP3
0000159e: DUP2
0000159f: SLOAD
000015a0: DUP2
000015a1: LT
000015a2: ISZERO
000015a3: ISZERO
000015a4: PUSH2 0x15a9
000015a7: JUMPI
000015a8: INVALID
000015a9: JUMPDEST
000015aa: PUSH1 0x00
000015ac: SWAP2
000015ad: DUP3
000015ae: MSTORE
000015af: PUSH1 0x20
000015b1: SWAP1
000015b2: SWAP2
000015b3: KECCAK256
000015b4: PUSH1 0x04
000015b6: SWAP1
000015b7: SWAP2
000015b8: MUL
000015b9: ADD
000015ba: SLOAD
000015bb: PUSH1 0x01
000015bd: PUSH1 0xa0
000015bf: PUSH1 0x02
000015c1: EXP
000015c2: SUB
000015c3: AND
000015c4: EQ
000015c5: ISZERO
000015c6: PUSH2 0x15d0
000015c9: JUMPI
000015ca: PUSH1 0x01
000015cc: SWAP1
000015cd: SWAP2
000015ce: ADD
000015cf: SWAP1
000015d0: JUMPDEST
000015d1: PUSH1 0x01
000015d3: ADD
000015d4: PUSH2 0x1586
000015d7: JUMP
000015d8: JUMPDEST
000015d9: PUSH1 0x0e
000015db: SLOAD
000015dc: PUSH1 0x0a
000015de: SLOAD
000015df: PUSH1 0x00
000015e1: SWAP2
000015e2: PUSH2 0x0b39
000015e5: SWAP2
000015e6: SWAP1
000015e7: PUSH4 0xffffffff
000015ec: PUSH2 0x15f1
000015ef: AND
000015f0: JUMP
000015f1: JUMPDEST
000015f2: PUSH1 0x00
000015f4: DUP1
000015f5: DUP4
000015f6: DUP4
000015f7: GT
000015f8: ISZERO
000015f9: PUSH2 0x1601
000015fc: JUMPI
000015fd: PUSH1 0x00
000015ff: DUP1
00001600: REVERT
00001601: JUMPDEST
00001602: POP
00001603: POP
00001604: SWAP1
00001605: SUB
00001606: SWAP1
00001607: JUMP
00001608: JUMPDEST
00001609: PUSH1 0x00
0000160b: DUP2
0000160c: DUP4
0000160d: GT
0000160e: ISZERO
0000160f: PUSH2 0x1619
00001612: JUMPI
00001613: POP
00001614: DUP1
00001615: PUSH2 0x08dc
00001618: JUMP
00001619: JUMPDEST
0000161a: POP
0000161b: SWAP1
0000161c: SWAP2
0000161d: SWAP1
0000161e: POP
0000161f: JUMP
00001620: JUMPDEST
00001621: PUSH1 0x00
00001623: DUP2
00001624: DUP4
00001625: GT
00001626: ISZERO
00001627: PUSH2 0x1631
0000162a: JUMPI
0000162b: POP
0000162c: DUP2
0000162d: PUSH2 0x08dc
00001630: JUMP
00001631: JUMPDEST
00001632: POP
00001633: SWAP2
00001634: SWAP1
00001635: POP
00001636: JUMP
00001637: JUMPDEST
00001638: PUSH1 0x0a
0000163a: SLOAD
0000163b: PUSH1 0x0e
0000163d: SLOAD
0000163e: PUSH1 0x00
00001640: SWAP2
00001641: GT
00001642: ISZERO
00001643: PUSH2 0x166c
00001646: JUMPI
00001647: PUSH1 0x0a
00001649: PUSH1 0x0e
0000164b: SLOAD
0000164c: DUP2
0000164d: SLOAD
0000164e: DUP2
0000164f: LT
00001650: ISZERO
00001651: ISZERO
00001652: PUSH2 0x1657
00001655: JUMPI
00001656: INVALID
00001657: JUMPDEST
00001658: SWAP1
00001659: PUSH1 0x00
0000165b: MSTORE
0000165c: PUSH1 0x20
0000165e: PUSH1 0x00
00001660: KECCAK256
00001661: SWAP1
00001662: PUSH1 0x04
00001664: MUL
00001665: ADD
00001666: PUSH1 0x02
00001668: ADD
00001669: SLOAD
0000166a: SWAP1
0000166b: POP
0000166c: JUMPDEST
0000166d: PUSH1 0x0b
0000166f: SLOAD
00001670: PUSH1 0x0f
00001672: SLOAD
00001673: LT
00001674: ISZERO
00001675: PUSH2 0x16a6
00001678: JUMPI
00001679: PUSH1 0x0b
0000167b: PUSH1 0x0f
0000167d: SLOAD
0000167e: DUP2
0000167f: SLOAD
00001680: DUP2
00001681: LT
00001682: ISZERO
00001683: ISZERO
00001684: PUSH2 0x1689
00001687: JUMPI
00001688: INVALID
00001689: JUMPDEST
0000168a: SWAP1
0000168b: PUSH1 0x00
0000168d: MSTORE
0000168e: PUSH1 0x20
00001690: PUSH1 0x00
00001692: KECCAK256
00001693: SWAP1
00001694: PUSH1 0x04
00001696: MUL
00001697: ADD
00001698: PUSH1 0x02
0000169a: ADD
0000169b: SLOAD
0000169c: PUSH1 0x10
0000169e: DUP2
0000169f: SWAP1
000016a0: SSTORE
000016a1: POP
000016a2: PUSH2 0x16b3
000016a5: JUMP
000016a6: JUMPDEST
000016a7: PUSH8 0xa688906bd8b00000
000016b0: PUSH1 0x10
000016b2: SSTORE
000016b3: JUMPDEST
000016b4: PUSH1 0x00
000016b6: DUP2
000016b7: GT
000016b8: ISZERO
000016b9: PUSH2 0x16d3
000016bc: JUMPI
000016bd: PUSH1 0x10
000016bf: SLOAD
000016c0: PUSH2 0x16cf
000016c3: SWAP1
000016c4: DUP3
000016c5: PUSH4 0xffffffff
000016ca: PUSH2 0x16d6
000016cd: AND
000016ce: JUMP
000016cf: JUMPDEST
000016d0: PUSH1 0x10
000016d2: SSTORE
000016d3: JUMPDEST
000016d4: POP
000016d5: JUMP
000016d6: JUMPDEST
000016d7: PUSH1 0x00
000016d9: DUP3
000016da: DUP3
000016db: ADD
000016dc: DUP4
000016dd: DUP2
000016de: LT
000016df: ISZERO
000016e0: PUSH2 0x16e8
000016e3: JUMPI
000016e4: PUSH1 0x00
000016e6: DUP1
000016e7: REVERT
000016e8: JUMPDEST
000016e9: SWAP4
000016ea: SWAP3
000016eb: POP
000016ec: POP
000016ed: POP
000016ee: JUMP
000016ef: STOP
000016f0: LOG1
000016f1: PUSH6 0x627a7a723058
000016f8: KECCAK256
000016f9: UNKNOWN(0xE2)
000016fa: UNKNOWN(0xB2)
000016fb: ADD
000016fc: SWAP7
000016fd: UNKNOWN(0x2E)
000016fe: PUSH12 0xcdea88e7f7122b1c1cb12e0c
0000170b: UNKNOWN(0xC6)
0000170c: BALANCE
0000170d: PUSH30

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xe3ab4777164777513a31c9f12c6c0e375ca68bbb42ff561ce0ca0a656c3633e2
call_targets: 0xbb4f286f88881afff196f8170105ad91b6217e0b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xe3ab4777164777513a31c9f12c6c0e375ca68bbb42ff561ce0ca0a656c3633e2",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xbb4f286f88881afff196f8170105ad91b6217e0b"
    ],
    "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": "0x059f8b16",
            "selector": "0x059f8b16",
            "calldata_variants": [
                "0x059f8b16",
                "0x059f8b160000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x12065fe0",
            "selector": "0x12065fe0",
            "calldata_variants": [
                "0x12065fe0",
                "0x12065fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1686531a",
            "selector": "0x1686531a",
            "calldata_variants": [
                "0x1686531a",
                "0x1686531a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x297563bb",
            "selector": "0x297563bb",
            "calldata_variants": [
                "0x297563bb",
                "0x297563bb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2a5bf6d2",
            "selector": "0x2a5bf6d2",
            "calldata_variants": [
                "0x2a5bf6d2",
                "0x2a5bf6d20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2d95663b",
            "selector": "0x2d95663b",
            "calldata_variants": [
                "0x2d95663b",
                "0x2d95663b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x30102055",
            "selector": "0x30102055",
            "calldata_variants": [
                "0x30102055",
                "0x301020550000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3a561ae2",
            "selector": "0x3a561ae2",
            "calldata_variants": [
                "0x3a561ae2",
                "0x3a561ae20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 966,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1034,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3133,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 6,
    "guards_detected": [],
    "untrusted_call_count": 6
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xe3ab4777164777513a31c9f12c6c0e375ca68bbb42ff561ce0ca0a656c3633e2
call_targets: 0xbb4f286f88881afff196f8170105ad91b6217e0b
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xe3ab4777164777513a31c9f12c6c0e375ca68bbb42ff561ce0ca0a656c3633e2",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xbb4f286f88881afff196f8170105ad91b6217e0b"
    ],
    "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": "0x059f8b16",
            "selector": "0x059f8b16",
            "calldata_variants": [
                "0x059f8b16",
                "0x059f8b160000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x12065fe0",
            "selector": "0x12065fe0",
            "calldata_variants": [
                "0x12065fe0",
                "0x12065fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1686531a",
            "selector": "0x1686531a",
            "calldata_variants": [
                "0x1686531a",
                "0x1686531a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x297563bb",
            "selector": "0x297563bb",
            "calldata_variants": [
                "0x297563bb",
                "0x297563bb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2a5bf6d2",
            "selector": "0x2a5bf6d2",
            "calldata_variants": [
                "0x2a5bf6d2",
                "0x2a5bf6d20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2d95663b",
            "selector": "0x2d95663b",
            "calldata_variants": [
                "0x2d95663b",
                "0x2d95663b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x30102055",
            "selector": "0x30102055",
            "calldata_variants": [
                "0x30102055",
                "0x301020550000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3a561ae2",
            "selector": "0x3a561ae2",
            "calldata_variants": [
                "0x3a561ae2",
                "0x3a561ae20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 966,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1034,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 3133,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 6,
    "guards_detected": []
}
medium other codex Unchecked send can silently skip payouts while advancing indices 75 no
view
evidence_json
{
    "evidence": "`send` return values are ignored in `distribute` for both queues, but indices advance regardless of success.",
    "locations": [
        "contracts/Contract.sol:247",
        "contracts/Contract.sol:253",
        "contracts/Contract.sol:262"
    ],
    "recommendation": "Use a pull-payment pattern (withdrawals), or check the return value of `send` and only advance indices on success (or revert on failure). Consider replacing `send` with `call.value(...)` and handling failure explicitly.",
    "exploit_scenario": "If a depositor is a contract whose fallback reverts or needs more than 2300 gas, `send` will return false. The code still sets `paymentTime` and advances the receiver index, permanently skipping that depositor while the balance remains available for later payouts. This results in incorrect accounting and lost payouts for the skipped depositor."
}
medium reentrancy slither Reentrancy in FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303): 75 no
view
evidence_json
{
    "impact": "Medium",
    "detector": "reentrancy-no-eth",
    "elements": [
        {
            "name": "FromMMM30Reload",
            "type": "function",
            "source_mapping": {
                "lines": [
                    274,
                    275,
                    276,
                    277,
                    278,
                    279,
                    280,
                    281,
                    282,
                    283,
                    284,
                    285,
                    286,
                    287,
                    288,
                    289,
                    290,
                    291,
                    292,
                    293,
                    294,
                    295,
                    296,
                    297,
                    298,
                    299,
                    300,
                    301,
                    302,
                    303
                ],
                "start": 9954,
                "length": 1487,
                "ending_column": 36,
                "is_dependency": false,
                "filename_short": "contracts/Contract.sol",
                "starting_column": 104,
                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                "filename_relative": "contracts/Contract.sol"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "FromResponsibleInvestors",
                    "type": "contract",
                    "source_mapping": {
                        "lines": [
                            155,
                            156,
                            157,
                            158,
                            159,
                            160,
                            161,
                            162,
                            163,
                            164,
                            165,
                            166,
                            167,
                            168,
                            169,
                            170,
                            171,
                            172,
                            173,
                            174,
                            175,
                            176,
                            177,
                            178,
                            179,
                            180,
                            181,
                            182,
                            183,
                            184,
                            185,
                            186,
                            187,
                            188,
                            189,
                            190,
                            191,
                            192,
                            193,
                            194,
                            195,
                            196,
                            197,
                            198,
                            199,
                            200,
                            201,
                            202,
                            203,
                            204,
                            205,
                            206,
                            207,
                            208,
                            209,
                            210,
                            211,
                            212,
                            213,
                            214,
                            215,
                            216,
                            217,
                            218,
                            219,
                            220,
                            221,
                            222,
                            223,
                            224,
                            225,
                            226,
                            227,
                            228,
                            229,
                            230,
                            231,
                            232,
                            233,
                            234,
                            235,
                            236,
                            237,
                            238,
                            239,
                            240,
                            241,
                            242,
                            243,
                            244,
                            245,
                            246,
                            247,
                            248,
                            249,
                            250,
                            251,
                            252,
                            253,
                            254,
                            255,
                            256,
                            257,
                            258,
                            259,
                            260,
                            261,
                            262,
                            263,
                            264,
                            265,
                            266,
                            267,
                            268,
                            269,
                            270,
                            271,
                            272,
                            273,
                            274,
                            275,
                            276,
                            277,
                            278,
                            279,
                            280,
                            281,
                            282,
                            283,
                            284,
                            285,
                            286,
                            287,
                            288,
                            289,
                            290,
                            291,
                            292,
                            293,
                            294,
                            295,
                            296,
                            297,
                            298,
                            299,
                            300,
                            301,
                            302,
                            303,
                            304,
                            305,
                            306,
                            307,
                            308,
                            309,
                            310,
                            311,
                            312,
                            313,
                            314,
                            315,
                            316,
                            317,
                            318,
                            319,
                            320,
                            321,
                            322,
                            323,
                            324,
                            325,
                            326,
                            327,
                            328,
                            329,
                            330,
                            331,
                            332,
                            333,
                            334,
                            335,
                            336,
                            337,
                            338,
                            339,
                            340,
                            341,
                            342,
                            343,
                            344,
                            345,
                            346,
                            347,
                            348,
                            349,
                            350,
                            351,
                            352,
                            353,
                            354,
                            355,
                            356,
                            357,
                            358,
                            359,
                            360,
                            361,
                            362,
                            363,
                            364,
                            365,
                            366,
                            367,
                            368,
                            369,
                            370,
                            371,
                            372,
                            373,
                            374,
                            375,
                            376,
                            377,
                            378,
                            379,
                            380,
                            381,
                            382,
                            383,
                            384,
                            385,
                            386,
                            387,
                            388,
                            389,
                            390,
                            391,
                            392,
                            393,
                            394,
                            395,
                            396,
                            397,
                            398,
                            399,
                            400,
                            401,
                            402,
                            403,
                            404,
                            405,
                            406,
                            407,
                            408,
                            409,
                            410,
                            411,
                            412,
                            413,
                            414,
                            415
                        ],
                        "start": 3624,
                        "length": 13292,
                        "ending_column": 23,
                        "is_dependency": false,
                        "filename_short": "contracts/Contract.sol",
                        "starting_column": 65,
                        "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                        "filename_relative": "contracts/Contract.sol"
                    }
                },
                "signature": "FromMMM30Reload(address,uint256,uint256)"
            }
        },
        {
            "name": "maxLen = ImportContract.getLastDepositId()",
            "type": "node",
            "source_mapping": {
                "lines": [
                    283,
                    284
                ],
                "start": 10289,
                "length": 47,
                "ending_column": 9,
                "is_dependency": false,
                "filename_short": "contracts/Contract.sol",
                "starting_column": 58,
                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                "filename_relative": "contracts/Contract.sol"
            },
            "additional_fields": {
                "underlying_type": "external_calls"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "FromMMM30Reload",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            274,
                            275,
                            276,
                            277,
                            278,
                            279,
                            280,
                            281,
                            282,
                            283,
                            284,
                            285,
                            286,
                            287,
                            288,
                            289,
                            290,
                            291,
                            292,
                            293,
                            294,
                            295,
                            296,
                            297,
                            298,
                            299,
                            300,
                            301,
                            302,
                            303
                        ],
                        "start": 9954,
                        "length": 1487,
                        "ending_column": 36,
                        "is_dependency": false,
                        "filename_short": "contracts/Contract.sol",
                        "starting_column": 104,
                        "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                        "filename_relative": "contracts/Contract.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "FromResponsibleInvestors",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    155,
                                    156,
                                    157,
                                    158,
                                    159,
                                    160,
                                    161,
                                    162,
                                    163,
                                    164,
                                    165,
                                    166,
                                    167,
                                    168,
                                    169,
                                    170,
                                    171,
                                    172,
                                    173,
                                    174,
                                    175,
                                    176,
                                    177,
                                    178,
                                    179,
                                    180,
                                    181,
                                    182,
                                    183,
                                    184,
                                    185,
                                    186,
                                    187,
                                    188,
                                    189,
                                    190,
                                    191,
                                    192,
                                    193,
                                    194,
                                    195,
                                    196,
                                    197,
                                    198,
                                    199,
                                    200,
                                    201,
                                    202,
                                    203,
                                    204,
                                    205,
                                    206,
                                    207,
                                    208,
                                    209,
                                    210,
                                    211,
                                    212,
                                    213,
                                    214,
                                    215,
                                    216,
                                    217,
                                    218,
                                    219,
                                    220,
                                    221,
                                    222,
                                    223,
                                    224,
                                    225,
                                    226,
                                    227,
                                    228,
                                    229,
                                    230,
                                    231,
                                    232,
                                    233,
                                    234,
                                    235,
                                    236,
                                    237,
                                    238,
                                    239,
                                    240,
                                    241,
                                    242,
                                    243,
                                    244,
                                    245,
                                    246,
                                    247,
                                    248,
                                    249,
                                    250,
                                    251,
                                    252,
                                    253,
                                    254,
                                    255,
                                    256,
                                    257,
                                    258,
                                    259,
                                    260,
                                    261,
                                    262,
                                    263,
                                    264,
                                    265,
                                    266,
                                    267,
                                    268,
                                    269,
                                    270,
                                    271,
                                    272,
                                    273,
                                    274,
                                    275,
                                    276,
                                    277,
                                    278,
                                    279,
                                    280,
                                    281,
                                    282,
                                    283,
                                    284,
                                    285,
                                    286,
                                    287,
                                    288,
                                    289,
                                    290,
                                    291,
                                    292,
                                    293,
                                    294,
                                    295,
                                    296,
                                    297,
                                    298,
                                    299,
                                    300,
                                    301,
                                    302,
                                    303,
                                    304,
                                    305,
                                    306,
                                    307,
                                    308,
                                    309,
                                    310,
                                    311,
                                    312,
                                    313,
                                    314,
                                    315,
                                    316,
                                    317,
                                    318,
                                    319,
                                    320,
                                    321,
                                    322,
                                    323,
                                    324,
                                    325,
                                    326,
                                    327,
                                    328,
                                    329,
                                    330,
                                    331,
                                    332,
                                    333,
                                    334,
                                    335,
                                    336,
                                    337,
                                    338,
                                    339,
                                    340,
                                    341,
                                    342,
                                    343,
                                    344,
                                    345,
                                    346,
                                    347,
                                    348,
                                    349,
                                    350,
                                    351,
                                    352,
                                    353,
                                    354,
                                    355,
                                    356,
                                    357,
                                    358,
                                    359,
                                    360,
                                    361,
                                    362,
                                    363,
                                    364,
                                    365,
                                    366,
                                    367,
                                    368,
                                    369,
                                    370,
                                    371,
                                    372,
                                    373,
                                    374,
                                    375,
                                    376,
                                    377,
                                    378,
                                    379,
                                    380,
                                    381,
                                    382,
                                    383,
                                    384,
                                    385,
                                    386,
                                    387,
                                    388,
                                    389,
                                    390,
                                    391,
                                    392,
                                    393,
                                    394,
                                    395,
                                    396,
                                    397,
                                    398,
                                    399,
                                    400,
                                    401,
                                    402,
                                    403,
                                    404,
                                    405,
                                    406,
                                    407,
                                    408,
                                    409,
                                    410,
                                    411,
                                    412,
                                    413,
                                    414,
                                    415
                                ],
                                "start": 3624,
                                "length": 13292,
                                "ending_column": 23,
                                "is_dependency": false,
                                "filename_short": "contracts/Contract.sol",
                                "starting_column": 65,
                                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                                "filename_relative": "contracts/Contract.sol"
                            }
                        },
                        "signature": "FromMMM30Reload(address,uint256,uint256)"
                    }
                }
            }
        },
        {
            "name": "(depositor,amount,depositeTime,paymentTime) = ImportContract.getDeposit(i)",
            "type": "node",
            "source_mapping": {
                "lines": [
                    286,
                    287,
                    288,
                    289
                ],
                "start": 10440,
                "length": 77,
                "ending_column": 22,
                "is_dependency": false,
                "filename_short": "contracts/Contract.sol",
                "starting_column": 5,
                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                "filename_relative": "contracts/Contract.sol"
            },
            "additional_fields": {
                "underlying_type": "external_calls"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "FromMMM30Reload",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            274,
                            275,
                            276,
                            277,
                            278,
                            279,
                            280,
                            281,
                            282,
                            283,
                            284,
                            285,
                            286,
                            287,
                            288,
                            289,
                            290,
                            291,
                            292,
                            293,
                            294,
                            295,
                            296,
                            297,
                            298,
                            299,
                            300,
                            301,
                            302,
                            303
                        ],
                        "start": 9954,
                        "length": 1487,
                        "ending_column": 36,
                        "is_dependency": false,
                        "filename_short": "contracts/Contract.sol",
                        "starting_column": 104,
                        "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                        "filename_relative": "contracts/Contract.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "FromResponsibleInvestors",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    155,
                                    156,
                                    157,
                                    158,
                                    159,
                                    160,
                                    161,
                                    162,
                                    163,
                                    164,
                                    165,
                                    166,
                                    167,
                                    168,
                                    169,
                                    170,
                                    171,
                                    172,
                                    173,
                                    174,
                                    175,
                                    176,
                                    177,
                                    178,
                                    179,
                                    180,
                                    181,
                                    182,
                                    183,
                                    184,
                                    185,
                                    186,
                                    187,
                                    188,
                                    189,
                                    190,
                                    191,
                                    192,
                                    193,
                                    194,
                                    195,
                                    196,
                                    197,
                                    198,
                                    199,
                                    200,
                                    201,
                                    202,
                                    203,
                                    204,
                                    205,
                                    206,
                                    207,
                                    208,
                                    209,
                                    210,
                                    211,
                                    212,
                                    213,
                                    214,
                                    215,
                                    216,
                                    217,
                                    218,
                                    219,
                                    220,
                                    221,
                                    222,
                                    223,
                                    224,
                                    225,
                                    226,
                                    227,
                                    228,
                                    229,
                                    230,
                                    231,
                                    232,
                                    233,
                                    234,
                                    235,
                                    236,
                                    237,
                                    238,
                                    239,
                                    240,
                                    241,
                                    242,
                                    243,
                                    244,
                                    245,
                                    246,
                                    247,
                                    248,
                                    249,
                                    250,
                                    251,
                                    252,
                                    253,
                                    254,
                                    255,
                                    256,
                                    257,
                                    258,
                                    259,
                                    260,
                                    261,
                                    262,
                                    263,
                                    264,
                                    265,
                                    266,
                                    267,
                                    268,
                                    269,
                                    270,
                                    271,
                                    272,
                                    273,
                                    274,
                                    275,
                                    276,
                                    277,
                                    278,
                                    279,
                                    280,
                                    281,
                                    282,
                                    283,
                                    284,
                                    285,
                                    286,
                                    287,
                                    288,
                                    289,
                                    290,
                                    291,
                                    292,
                                    293,
                                    294,
                                    295,
                                    296,
                                    297,
                                    298,
                                    299,
                                    300,
                                    301,
                                    302,
                                    303,
                                    304,
                                    305,
                                    306,
                                    307,
                                    308,
                                    309,
                                    310,
                                    311,
                                    312,
                                    313,
                                    314,
                                    315,
                                    316,
                                    317,
                                    318,
                                    319,
                                    320,
                                    321,
                                    322,
                                    323,
                                    324,
                                    325,
                                    326,
                                    327,
                                    328,
                                    329,
                                    330,
                                    331,
                                    332,
                                    333,
                                    334,
                                    335,
                                    336,
                                    337,
                                    338,
                                    339,
                                    340,
                                    341,
                                    342,
                                    343,
                                    344,
                                    345,
                                    346,
                                    347,
                                    348,
                                    349,
                                    350,
                                    351,
                                    352,
                                    353,
                                    354,
                                    355,
                                    356,
                                    357,
                                    358,
                                    359,
                                    360,
                                    361,
                                    362,
                                    363,
                                    364,
                                    365,
                                    366,
                                    367,
                                    368,
                                    369,
                                    370,
                                    371,
                                    372,
                                    373,
                                    374,
                                    375,
                                    376,
                                    377,
                                    378,
                                    379,
                                    380,
                                    381,
                                    382,
                                    383,
                                    384,
                                    385,
                                    386,
                                    387,
                                    388,
                                    389,
                                    390,
                                    391,
                                    392,
                                    393,
                                    394,
                                    395,
                                    396,
                                    397,
                                    398,
                                    399,
                                    400,
                                    401,
                                    402,
                                    403,
                                    404,
                                    405,
                                    406,
                                    407,
                                    408,
                                    409,
                                    410,
                                    411,
                                    412,
                                    413,
                                    414,
                                    415
                                ],
                                "start": 3624,
                                "length": 13292,
                                "ending_column": 23,
                                "is_dependency": false,
                                "filename_short": "contracts/Contract.sol",
                                "starting_column": 65,
                                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                                "filename_relative": "contracts/Contract.sol"
                            }
                        },
                        "signature": "FromMMM30Reload(address,uint256,uint256)"
                    }
                }
            }
        },
        {
            "name": "ImportedQueue.push(Deposit({depositor:depositor,deposit:uint256(amount),expects:uint256(MULTIPLIER.mul(amount)),paymentTime:0}))",
            "type": "node",
            "source_mapping": {
                "lines": [
                    299,
                    300,
                    301
                ],
                "start": 11124,
                "length": 125,
                "ending_column": 27,
                "is_dependency": false,
                "filename_short": "contracts/Contract.sol",
                "starting_column": 86,
                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                "filename_relative": "contracts/Contract.sol"
            },
            "additional_fields": {
                "variable_name": "ImportedQueue",
                "underlying_type": "variables_written"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "FromMMM30Reload",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            274,
                            275,
                            276,
                            277,
                            278,
                            279,
                            280,
                            281,
                            282,
                            283,
                            284,
                            285,
                            286,
                            287,
                            288,
                            289,
                            290,
                            291,
                            292,
                            293,
                            294,
                            295,
                            296,
                            297,
                            298,
                            299,
                            300,
                            301,
                            302,
                            303
                        ],
                        "start": 9954,
                        "length": 1487,
                        "ending_column": 36,
                        "is_dependency": false,
                        "filename_short": "contracts/Contract.sol",
                        "starting_column": 104,
                        "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                        "filename_relative": "contracts/Contract.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "FromResponsibleInvestors",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    155,
                                    156,
                                    157,
                                    158,
                                    159,
                                    160,
                                    161,
                                    162,
                                    163,
                                    164,
                                    165,
                                    166,
                                    167,
                                    168,
                                    169,
                                    170,
                                    171,
                                    172,
                                    173,
                                    174,
                                    175,
                                    176,
                                    177,
                                    178,
                                    179,
                                    180,
                                    181,
                                    182,
                                    183,
                                    184,
                                    185,
                                    186,
                                    187,
                                    188,
                                    189,
                                    190,
                                    191,
                                    192,
                                    193,
                                    194,
                                    195,
                                    196,
                                    197,
                                    198,
                                    199,
                                    200,
                                    201,
                                    202,
                                    203,
                                    204,
                                    205,
                                    206,
                                    207,
                                    208,
                                    209,
                                    210,
                                    211,
                                    212,
                                    213,
                                    214,
                                    215,
                                    216,
                                    217,
                                    218,
                                    219,
                                    220,
                                    221,
                                    222,
                                    223,
                                    224,
                                    225,
                                    226,
                                    227,
                                    228,
                                    229,
                                    230,
                                    231,
                                    232,
                                    233,
                                    234,
                                    235,
                                    236,
                                    237,
                                    238,
                                    239,
                                    240,
                                    241,
                                    242,
                                    243,
                                    244,
                                    245,
                                    246,
                                    247,
                                    248,
                                    249,
                                    250,
                                    251,
                                    252,
                                    253,
                                    254,
                                    255,
                                    256,
                                    257,
                                    258,
                                    259,
                                    260,
                                    261,
                                    262,
                                    263,
                                    264,
                                    265,
                                    266,
                                    267,
                                    268,
                                    269,
                                    270,
                                    271,
                                    272,
                                    273,
                                    274,
                                    275,
                                    276,
                                    277,
                                    278,
                                    279,
                                    280,
                                    281,
                                    282,
                                    283,
                                    284,
                                    285,
                                    286,
                                    287,
                                    288,
                                    289,
                                    290,
                                    291,
                                    292,
                                    293,
                                    294,
                                    295,
                                    296,
                                    297,
                                    298,
                                    299,
                                    300,
                                    301,
                                    302,
                                    303,
                                    304,
                                    305,
                                    306,
                                    307,
                                    308,
                                    309,
                                    310,
                                    311,
                                    312,
                                    313,
                                    314,
                                    315,
                                    316,
                                    317,
                                    318,
                                    319,
                                    320,
                                    321,
                                    322,
                                    323,
                                    324,
                                    325,
                                    326,
                                    327,
                                    328,
                                    329,
                                    330,
                                    331,
                                    332,
                                    333,
                                    334,
                                    335,
                                    336,
                                    337,
                                    338,
                                    339,
                                    340,
                                    341,
                                    342,
                                    343,
                                    344,
                                    345,
                                    346,
                                    347,
                                    348,
                                    349,
                                    350,
                                    351,
                                    352,
                                    353,
                                    354,
                                    355,
                                    356,
                                    357,
                                    358,
                                    359,
                                    360,
                                    361,
                                    362,
                                    363,
                                    364,
                                    365,
                                    366,
                                    367,
                                    368,
                                    369,
                                    370,
                                    371,
                                    372,
                                    373,
                                    374,
                                    375,
                                    376,
                                    377,
                                    378,
                                    379,
                                    380,
                                    381,
                                    382,
                                    383,
                                    384,
                                    385,
                                    386,
                                    387,
                                    388,
                                    389,
                                    390,
                                    391,
                                    392,
                                    393,
                                    394,
                                    395,
                                    396,
                                    397,
                                    398,
                                    399,
                                    400,
                                    401,
                                    402,
                                    403,
                                    404,
                                    405,
                                    406,
                                    407,
                                    408,
                                    409,
                                    410,
                                    411,
                                    412,
                                    413,
                                    414,
                                    415
                                ],
                                "start": 3624,
                                "length": 13292,
                                "ending_column": 23,
                                "is_dependency": false,
                                "filename_short": "contracts/Contract.sol",
                                "starting_column": 65,
                                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                                "filename_relative": "contracts/Contract.sol"
                            }
                        },
                        "signature": "FromMMM30Reload(address,uint256,uint256)"
                    }
                }
            }
        },
        {
            "name": "depositors[depositor].push(ImportedQueue.length - 1)",
            "type": "node",
            "source_mapping": {
                "lines": [
                    301,
                    302
                ],
                "start": 11271,
                "length": 52,
                "ending_column": 9,
                "is_dependency": false,
                "filename_short": "contracts/Contract.sol",
                "starting_column": 49,
                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                "filename_relative": "contracts/Contract.sol"
            },
            "additional_fields": {
                "variable_name": "depositors",
                "underlying_type": "variables_written"
            },
            "type_specific_fields": {
                "parent": {
                    "name": "FromMMM30Reload",
                    "type": "function",
                    "source_mapping": {
                        "lines": [
                            274,
                            275,
                            276,
                            277,
                            278,
                            279,
                            280,
                            281,
                            282,
                            283,
                            284,
                            285,
                            286,
                            287,
                            288,
                            289,
                            290,
                            291,
                            292,
                            293,
                            294,
                            295,
                            296,
                            297,
                            298,
                            299,
                            300,
                            301,
                            302,
                            303
                        ],
                        "start": 9954,
                        "length": 1487,
                        "ending_column": 36,
                        "is_dependency": false,
                        "filename_short": "contracts/Contract.sol",
                        "starting_column": 104,
                        "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                        "filename_relative": "contracts/Contract.sol"
                    },
                    "type_specific_fields": {
                        "parent": {
                            "name": "FromResponsibleInvestors",
                            "type": "contract",
                            "source_mapping": {
                                "lines": [
                                    155,
                                    156,
                                    157,
                                    158,
                                    159,
                                    160,
                                    161,
                                    162,
                                    163,
                                    164,
                                    165,
                                    166,
                                    167,
                                    168,
                                    169,
                                    170,
                                    171,
                                    172,
                                    173,
                                    174,
                                    175,
                                    176,
                                    177,
                                    178,
                                    179,
                                    180,
                                    181,
                                    182,
                                    183,
                                    184,
                                    185,
                                    186,
                                    187,
                                    188,
                                    189,
                                    190,
                                    191,
                                    192,
                                    193,
                                    194,
                                    195,
                                    196,
                                    197,
                                    198,
                                    199,
                                    200,
                                    201,
                                    202,
                                    203,
                                    204,
                                    205,
                                    206,
                                    207,
                                    208,
                                    209,
                                    210,
                                    211,
                                    212,
                                    213,
                                    214,
                                    215,
                                    216,
                                    217,
                                    218,
                                    219,
                                    220,
                                    221,
                                    222,
                                    223,
                                    224,
                                    225,
                                    226,
                                    227,
                                    228,
                                    229,
                                    230,
                                    231,
                                    232,
                                    233,
                                    234,
                                    235,
                                    236,
                                    237,
                                    238,
                                    239,
                                    240,
                                    241,
                                    242,
                                    243,
                                    244,
                                    245,
                                    246,
                                    247,
                                    248,
                                    249,
                                    250,
                                    251,
                                    252,
                                    253,
                                    254,
                                    255,
                                    256,
                                    257,
                                    258,
                                    259,
                                    260,
                                    261,
                                    262,
                                    263,
                                    264,
                                    265,
                                    266,
                                    267,
                                    268,
                                    269,
                                    270,
                                    271,
                                    272,
                                    273,
                                    274,
                                    275,
                                    276,
                                    277,
                                    278,
                                    279,
                                    280,
                                    281,
                                    282,
                                    283,
                                    284,
                                    285,
                                    286,
                                    287,
                                    288,
                                    289,
                                    290,
                                    291,
                                    292,
                                    293,
                                    294,
                                    295,
                                    296,
                                    297,
                                    298,
                                    299,
                                    300,
                                    301,
                                    302,
                                    303,
                                    304,
                                    305,
                                    306,
                                    307,
                                    308,
                                    309,
                                    310,
                                    311,
                                    312,
                                    313,
                                    314,
                                    315,
                                    316,
                                    317,
                                    318,
                                    319,
                                    320,
                                    321,
                                    322,
                                    323,
                                    324,
                                    325,
                                    326,
                                    327,
                                    328,
                                    329,
                                    330,
                                    331,
                                    332,
                                    333,
                                    334,
                                    335,
                                    336,
                                    337,
                                    338,
                                    339,
                                    340,
                                    341,
                                    342,
                                    343,
                                    344,
                                    345,
                                    346,
                                    347,
                                    348,
                                    349,
                                    350,
                                    351,
                                    352,
                                    353,
                                    354,
                                    355,
                                    356,
                                    357,
                                    358,
                                    359,
                                    360,
                                    361,
                                    362,
                                    363,
                                    364,
                                    365,
                                    366,
                                    367,
                                    368,
                                    369,
                                    370,
                                    371,
                                    372,
                                    373,
                                    374,
                                    375,
                                    376,
                                    377,
                                    378,
                                    379,
                                    380,
                                    381,
                                    382,
                                    383,
                                    384,
                                    385,
                                    386,
                                    387,
                                    388,
                                    389,
                                    390,
                                    391,
                                    392,
                                    393,
                                    394,
                                    395,
                                    396,
                                    397,
                                    398,
                                    399,
                                    400,
                                    401,
                                    402,
                                    403,
                                    404,
                                    405,
                                    406,
                                    407,
                                    408,
                                    409,
                                    410,
                                    411,
                                    412,
                                    413,
                                    414,
                                    415
                                ],
                                "start": 3624,
                                "length": 13292,
                                "ending_column": 23,
                                "is_dependency": false,
                                "filename_short": "contracts/Contract.sol",
                                "starting_column": 65,
                                "filename_absolute": "/tmp/slither-7c_zlgus/contracts/Contract.sol",
                                "filename_relative": "contracts/Contract.sol"
                            }
                        },
                        "signature": "FromMMM30Reload(address,uint256,uint256)"
                    }
                }
            }
        }
    ],
    "locations": [
        {
            "file": "contracts/Contract.sol",
            "name": "FromMMM30Reload",
            "type": "function",
            "lines": [
                274,
                275,
                276,
                277,
                278,
                279,
                280,
                281,
                282,
                283,
                284,
                285,
                286,
                287,
                288,
                289,
                290,
                291,
                292,
                293,
                294,
                295,
                296,
                297,
                298,
                299,
                300,
                301,
                302,
                303
            ]
        },
        {
            "file": "contracts/Contract.sol",
            "name": "maxLen = ImportContract.getLastDepositId()",
            "type": "node",
            "lines": [
                283,
                284
            ]
        },
        {
            "file": "contracts/Contract.sol",
            "name": "(depositor,amount,depositeTime,paymentTime) = ImportContract.getDeposit(i)",
            "type": "node",
            "lines": [
                286,
                287,
                288,
                289
            ]
        },
        {
            "file": "contracts/Contract.sol",
            "name": "ImportedQueue.push(Deposit({depositor:depositor,deposit:uint256(amount),expects:uint256(MULTIPLIER.mul(amount)),paymentTime:0}))",
            "type": "node",
            "lines": [
                299,
                300,
                301
            ]
        },
        {
            "file": "contracts/Contract.sol",
            "name": "depositors[depositor].push(ImportedQueue.length - 1)",
            "type": "node",
            "lines": [
                301,
                302
            ]
        }
    ],
    "description": "Reentrancy in FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303):\n\tExternal calls:\n\t- maxLen = ImportContract.getLastDepositId() (contracts/Contract.sol#283-284)\n\t- (depositor,amount,depositeTime,paymentTime) = ImportContract.getDeposit(i) (contracts/Contract.sol#286-289)\n\tState variables written after the call(s):\n\t- ImportedQueue.push(Deposit({depositor:depositor,deposit:uint256(amount),expects:uint256(MULTIPLIER.mul(amount)),paymentTime:0})) (contracts/Contract.sol#299-301)\n\tFromResponsibleInvestors.ImportedQueue (contracts/Contract.sol#185) can be used in cross function reentrancies:\n\t- FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303)\n\t- FromResponsibleInvestors.distribute(uint256) (contracts/Contract.sol#230-255)\n\t- FromResponsibleInvestors.getImportedDeposit(uint256) (contracts/Contract.sol#338-343)\n\t- FromResponsibleInvestors.getImportedDepositsCount() (contracts/Contract.sol#327-328)\n\t- FromResponsibleInvestors.getImportedUserDeposits(address) (contracts/Contract.sol#395-415)\n\t- FromResponsibleInvestors.getImportedUserDepositsCount(address) (contracts/Contract.sol#362-371)\n\t- FromResponsibleInvestors.getLastImportedPayments(uint256) (contracts/Contract.sol#352-355)\n\t- FromResponsibleInvestors.setMinBalanceForDistribution() (contracts/Contract.sol#258-274)\n\t- depositors[depositor].push(ImportedQueue.length - 1) (contracts/Contract.sol#301-302)\n\tFromResponsibleInvestors.depositors (contracts/Contract.sol#187-190) can be used in cross function reentrancies:\n\t- FromResponsibleInvestors.FromMMM30Reload(address,uint256,uint256) (contracts/Contract.sol#274-303)\n\t- FromResponsibleInvestors.depositors (contracts/Contract.sol#187-190)\n\t- FromResponsibleInvestors.fallback() (contracts/Contract.sol#204-223)\n\t- FromResponsibleInvestors.getUserDeposits(address) (contracts/Contract.sol#372-391)"
}
low other codex Imported deposit indices are mixed with main queue indices, breaking getUserDeposits 65 no
view
evidence_json
{
    "evidence": "Migration pushes `ImportedQueue` indices into `depositors`, while `getUserDeposits` assumes indices refer to `Queue`.",
    "locations": [
        "contracts/Contract.sol:288",
        "contracts/Contract.sol:309",
        "contracts/Contract.sol:388",
        "contracts/Contract.sol:400"
    ],
    "recommendation": "Track imported and main queue indices separately (e.g., two mappings), or store a struct indicating queue type and index so lookups don\u2019t index the wrong array.",
    "exploit_scenario": "During migration, imported deposit indices are appended into the same `depositors` array used for main queue indices. If a user\u2019s imported entries precede later main-queue deposits, `getUserDeposits` will read an imported index and use it against the main `Queue`, potentially reverting or returning incorrect data. This can break off-chain integrations and user queries."
}
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": 6
}