mirror of
https://github.com/ledgerwatch/erigon.git
synced 2026-02-06 11:21:50 +00:00
devel
931 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
714c259acc
|
Bor waypoint storage (#9793)
Implementation of db and snapshot storage for additional synced hiemdall waypoint types * Checkpoint * Milestones This is targeted at the Astrid downloader which uses waypoints to verify headers during syncing and fork choice selection. Post milestones for heimdall these types are currently downloaded by erigon but not persisted locally. This change adds persistence for these types. In addition to the pure persistence changes this PR also contains a refactor step which is part of the process of extracting polygon related types from erigon core into a seperate package which may eventually be extracted to a separate module and possibly repo. The aim is rather than the core `turbo\snapshotsync\freezeblocks` having to know about types it manages and how to exaract and index their contents this can concern it self with a set of macro shard management actions. This process is partially completed by this PR, a final step will be to remove BorSnapshots and to simplify the places in the code which has to remeber to deal with them. This requires further testing so has been left out of this PR to avoid delays in delivering the base types. # Status * Waypont types and storage are complete and integrated in to the BorHeimdall stage, The code has been tested to check that types are inserted into mdbx, extracted and merged correctly * I have verified that when produced from block 0 the new snapshot correctly follow the merging strategy of existing snapshots * The functionality is enables by a **--bor.waypoints=true** this is false by default. # Testing This has been tested as follows: * Run a Mumbai instance to the tip and check current processing for milestones and checkpoints # Post merge steps * Produce and release snapshots for mumbai and bor mainnet * Check existing node upgrades * Remove --bor.waypoints flags |
||
|
|
a5270bccf5
|
RPC: --http.dbg.single=true and custom HTTP header dbg: true (#10039)
- Added method `tx.Context()` - because Tx already bounded to context by
`db.BeginRo(ctx)`
- Removed ctx parameter from `BlockWithSenders` method in interfaces
- Added `dbg.ToContext()` and `dbg.Enabled(ctx)` methods to set/get
debugging tag to `ctx`.
Added way to debug single http request:
To print more detailed logs for 1 request - add `--http.dbg.single=true`
flag. Then can send HTTP header `"dbg: true"`:
```
curl -X POST -H "dbg: true" -H "Content-Type: application/json" --data '{"jsonrpc": "2.0", "method": "eth_blockNumber", "params": [], "id":1}' localhost:8545
```
---------
Co-authored-by: battlmonstr <battlmonstr@users.noreply.github.com>
|
||
|
|
17da5dd6c4
|
New overlays feature for doing ad-hoc simulations of existing contracts with modified bytecode (#9438)
In this PR I'm introducing so-called `overlays` for doing ad-hoc state simulations of contracts which replay the state with a modified bytecode for any given block range. The new feature adds two new RPC methods: `overlay_callConstructor` and `overlay_getLogs` I've also added a few bench tests and a new postman collection which checks both new methods for the WETH contract in original and modified version. ## Motivation Overlays allow you to add your custom logic to already deployed contracts and simulate on top of them. With overlays you can create new view functions, modify existing ones, change field visibility, emit new events and query the historical data of any contract with your modified source code. Similar commercial products exist in the space and I believe making this feature opensource in erigon will make it easier for everyone to tinker with it and build new cool things on top of it ✨ ## Usage 1) compile your contract to obtain the new deployment bytecode, append the constructor args at the end, if any 2) call `overlay_callConstructor` with the result from 1) to receive the runtime bytecode 3) call `overlay_getLogs` to simulate new logs, passing 2) as state overrides ([example](https://github.com/crebsy/erigon/blob/devel/cmd/rpcdaemon/postman/Overlay_Testing.json)) 4) call `eth_call` to simulate new view function calls passing 2) as state overrides ## Ad-hoc query performance & historical back-filling The current implementation for ad-hoc range queries of `overlay_getLogs` is optimized so that irrelevant blocks are skipped entirely from the simulation context. This can lead to very fast results of a few minutes or even seconds for simulating the entire historical logs of a contract which makes any infra for back-filling redundant. However, such shortcuts are only effectively working for contracts which are not touching too many blocks of the chain's history. So depending on the contract you're trying to patch, you still might need to create a custom back-filling script which simulates the new logs with e.g. 1000 or 10000 block ranges. As a reference for a "busy" contract the simulation rate for the [Uniswap V2 router ](https://etherscan.io/address/0x7a250d5630b4cf539739df2c5dacb4c659f2488d#code) was ~ 280 blocks/s on a host with 24 cores. So while small block ranges returned relatively quickly, the simulation of the entire historical logs for this contract took a few hours on a single node. I'm not collecting any perf metrics yet for this but this could be easily added in the future for tracking better implementations and insights about contract <-> block distribution. ## Configuration 1) Enable the `ots,overlay` api namespaces by adding it to the `--http.api` flag 2) The implementation of `overlay_getLogs` is parallelized so it's good practice to increase the `--db.read.concurrency` to a higher value, e.g. 256 so other erigon goroutines are not getting blocked. ## Supported networks Tested with ethereum and polygon nodes |
||
|
|
35071744a5
|
[Caplin Archive node]: full sepolia read experiment bug fixes (#9393)
Bugs fixed: * CurrentEpochAttestations misbehaviour near genesis. * Fixed Participation indices at the Altair Fork Boundary. * Confusing logs demoted to DBUG * Added 6 slots of margin of error for the forward downloader * Fixed nil exception in exits processing * Keep 1 state in the hot storage for reorgs at all costs * Fixed `make len: out range` |
||
|
|
4f76c6d3b2
|
turbo/jsonrpc: add support for bor state sync txn in Trace API endpoints (#9276)
Relates to: https://github.com/ledgerwatch/erigon/issues/7504 High-level changes: - add support for bor state sync txn in Trace API endpoints - refactor some code in `polygon/tracer` pkg for better re-usability of common logic between Trace and Debug APIs - tidy up some old code that is no longer needed - handle some missed err-s and fix some misaligned stream writes (invalid json cases) in err paths Tests: I've tested majority of the Trace API endpoints (trace_transaction, trace_block, trace_filter, trace_replayTransaction, trace_replayBlockTransactions) both with a bor state sync transaction and with a normal one. Here is an example of how the response of `trace_transaction` looks like for a bor state sync transaction: ``` curl http://localhost:9545/ \ -X POST \ -H "Content-Type: application/json" \ --data '{"method":"trace_transaction","params":["0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558"],"id":1,"jsonrpc":"2.0"}' | jq { "jsonrpc": "2.0", "id": 1, "result": [ { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x0", "input": "0x", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x0", "output": "0x" }, "subtraces": 13, "traceAddress": [], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962d0", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cab94a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000dcbeac120c51030a911a93895f7b431e5952cee6000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000001550f7dca70000a00ce8ccdb67a7cfd5421bfb4438e2dc1fa7d2321161fadf4e5f3fe9bb0bb3ba5882011e8331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x102de", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cab0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000dcbeac120c51030a911a93895f7b431e5952cee6000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000001550f7dca70000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb9d0", "output": "0x" }, "subtraces": 1, "traceAddress": [ 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cab0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000dcbeac120c51030a911a93895f7b431e5952cee6000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000001550f7dca70000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xa4ad", "output": "0x" }, "subtraces": 1, "traceAddress": [ 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb000000000000000000000000dcbeac120c51030a911a93895f7b431e5952cee600000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000001550f7dca70000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fd0", "output": "0x" }, "subtraces": 0, "traceAddress": [ 0, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962d0", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cac94a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000001b02ada9a41d8541441730ee43ea7d0effccaad9000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000002386f26fc10000a0c3a451b6d6cc319dcd797ac05887692fe44d63dc38b6322e563a3337fe6f305f82014a8331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x102de", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 1 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cac0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000001b02ada9a41d8541441730ee43ea7d0effccaad9000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000002386f26fc10000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb9d0", "output": "0x" }, "subtraces": 1, "traceAddress": [ 1, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cac0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000001b02ada9a41d8541441730ee43ea7d0effccaad9000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000002386f26fc10000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xa4ad", "output": "0x" }, "subtraces": 1, "traceAddress": [ 1, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb0000000000000000000000001b02ada9a41d8541441730ee43ea7d0effccaad900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000002386f26fc10000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fd0", "output": "0x" }, "subtraces": 0, "traceAddress": [ 1, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962b4", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000185f9018283215cad948397259c983751daf40400790063935a11afa28ab9014000000000000000000000000003c545163bd114d756c65dda1d97d37b89da2236000000000000000000000000cd1c7c85113b16a5b9e09576112d162281b5f860000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e3739000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e3000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000a0c346dbd1115e4a8a70c678e2dfad37318035a5f36d5bad652a985d1b3e90dd006483313337000000000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x1dc19", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 2 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000014000000000000000000000000003c545163bd114d756c65dda1d97d37b89da2236000000000000000000000000cd1c7c85113b16a5b9e09576112d162281b5f860000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e3739000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e3000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0x8397259c983751daf40400790063935a11afa28a", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x191db", "output": "0x" }, "subtraces": 1, "traceAddress": [ 2, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x8397259c983751daf40400790063935a11afa28a", "callType": "call", "gas": "0x4af990", "input": "0x9a7c4b710000000000000000000000000000000000000000000000000000000000215cad00000000000000000000000003c545163bd114d756c65dda1d97d37b89da2236000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e3739000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e3000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0xcd1c7c85113b16a5b9e09576112d162281b5f860", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x1709f", "output": "0x" }, "subtraces": 2, "traceAddress": [ 2, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xcd1c7c85113b16a5b9e09576112d162281b5f860", "callType": "staticcall", "gas": "0x49ac26", "input": "0x55064d85000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000077", "to": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x57a1", "output": "0x0000000000000000000000000000000000000000000000000000000000000000" }, "subtraces": 1, "traceAddress": [ 2, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "callType": "delegatecall", "gas": "0x4869fe", "input": "0x55064d85000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000077", "to": "0x16f78d75fabb869835236b5fb59c2b29f6cbbfcf", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x3b90", "output": "0x0000000000000000000000000000000000000000000000000000000000000000" }, "subtraces": 0, "traceAddress": [ 2, 0, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xcd1c7c85113b16a5b9e09576112d162281b5f860", "callType": "call", "gas": "0x49526d", "input": "0x6e1e3bbf000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e3739000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e3000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xe82a", "output": "0x" }, "subtraces": 1, "traceAddress": [ 2, 0, 0, 1 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "callType": "delegatecall", "gas": "0x482a83", "input": "0x6e1e3bbf000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e3739000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000e3000000000000000000000000000000000000000000000000000000000000007700000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0x16f78d75fabb869835236b5fb59c2b29f6cbbfcf", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xe559", "output": "0x" }, "subtraces": 0, "traceAddress": [ 2, 0, 0, 1, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962b4", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000185f9018283215cae948397259c983751daf40400790063935a11afa28ab9014000000000000000000000000003c545163bd114d756c65dda1d97d37b89da2236000000000000000000000000cd1c7c85113b16a5b9e09576112d162281b5f860000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e373900000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000007500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000a0c346dbd1115e4a8a70c678e2dfad37318035a5f36d5bad652a985d1b3e90dd006683313337000000000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x26f18", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 3 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cae0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000014000000000000000000000000003c545163bd114d756c65dda1d97d37b89da2236000000000000000000000000cd1c7c85113b16a5b9e09576112d162281b5f860000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e373900000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000007500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0x8397259c983751daf40400790063935a11afa28a", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x224da", "output": "0x" }, "subtraces": 1, "traceAddress": [ 3, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x8397259c983751daf40400790063935a11afa28a", "callType": "call", "gas": "0x4af990", "input": "0x9a7c4b710000000000000000000000000000000000000000000000000000000000215cae00000000000000000000000003c545163bd114d756c65dda1d97d37b89da2236000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e373900000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000007500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0xcd1c7c85113b16a5b9e09576112d162281b5f860", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x2039e", "output": "0x" }, "subtraces": 2, "traceAddress": [ 3, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xcd1c7c85113b16a5b9e09576112d162281b5f860", "callType": "staticcall", "gas": "0x49ac26", "input": "0x55064d85000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000075", "to": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb67a", "output": "0x0000000000000000000000000000000000000000000000000000000000000000" }, "subtraces": 1, "traceAddress": [ 3, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "callType": "delegatecall", "gas": "0x4869fe", "input": "0x55064d85000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000075", "to": "0x16f78d75fabb869835236b5fb59c2b29f6cbbfcf", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x9a69", "output": "0x0000000000000000000000000000000000000000000000000000000000000000" }, "subtraces": 0, "traceAddress": [ 3, 0, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xcd1c7c85113b16a5b9e09576112d162281b5f860", "callType": "call", "gas": "0x48f50f", "input": "0x6e1e3bbf000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e373900000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000007500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x11c50", "output": "0x" }, "subtraces": 1, "traceAddress": [ 3, 0, 0, 1 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x9d305a42a3975ee4c1c57555bed5919889dce63f", "callType": "delegatecall", "gas": "0x47ce9b", "input": "0x6e1e3bbf000000000000000000000000931eb9d2e9b0e496aac1dcdf778399ad762e373900000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000007500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000", "to": "0x16f78d75fabb869835236b5fb59c2b29f6cbbfcf", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x1197f", "output": "0x" }, "subtraces": 0, "traceAddress": [ 3, 0, 0, 1, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962dc", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000146f9014383215caf94a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000d649ec9b9acea96876909054219c2fdaa00742f8000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000021c0331d5dc000a0349272f2c8d6c53608b75ffb00e2bc792c1c4f6d4b2c9604942d58f1b4e5db6781e8833133370000000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xc012", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 4 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215caf0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000d649ec9b9acea96876909054219c2fdaa00742f8000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000021c0331d5dc000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7704", "output": "0x" }, "subtraces": 1, "traceAddress": [ 4, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215caf0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000d649ec9b9acea96876909054219c2fdaa00742f8000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000021c0331d5dc000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x61e1", "output": "0x" }, "subtraces": 1, "traceAddress": [ 4, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb000000000000000000000000d649ec9b9acea96876909054219c2fdaa00742f8000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000021c0331d5dc000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x3d04", "output": "0x" }, "subtraces": 0, "traceAddress": [ 4, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962d0", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb094a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000001dafb2f175e729aa49eaa0d229676b32f548d176000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000429d069189e0000a09f94436b9b34a033851b1bad2357adbf6c8800c2e71336f927559bee95c17a858201b48331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x102de", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 5 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000001dafb2f175e729aa49eaa0d229676b32f548d176000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000429d069189e0000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb9d0", "output": "0x" }, "subtraces": 1, "traceAddress": [ 5, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000001dafb2f175e729aa49eaa0d229676b32f548d176000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000429d069189e0000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xa4ad", "output": "0x" }, "subtraces": 1, "traceAddress": [ 5, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb0000000000000000000000001dafb2f175e729aa49eaa0d229676b32f548d176000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000429d069189e0000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fd0", "output": "0x" }, "subtraces": 0, "traceAddress": [ 5, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962dc", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000145f9014283215cb194a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000b3126d09ebf9b5de9eaf9937bfc3e5dcececa856000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000001f4eec0c1548000a0a66e30b0161aad6d238da536d64e9619007fb26a5391c4244503efa53337ef6d0d83313337000000000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xbfac", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 6 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb10000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000b3126d09ebf9b5de9eaf9937bfc3e5dcececa856000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000001f4eec0c1548000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7704", "output": "0x" }, "subtraces": 1, "traceAddress": [ 6, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb10000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000b3126d09ebf9b5de9eaf9937bfc3e5dcececa856000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000001f4eec0c1548000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x61e1", "output": "0x" }, "subtraces": 1, "traceAddress": [ 6, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb000000000000000000000000b3126d09ebf9b5de9eaf9937bfc3e5dcececa8560000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000001f4eec0c1548000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x3d04", "output": "0x" }, "subtraces": 0, "traceAddress": [ 6, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962c4", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb294a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000005395640f0d9d7e51428d1e11519ae9b8b1e547b3000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000007c585087238000a08e71ee5848a1519da380b8df689787abc315743ebb4353e774bca02406c062738201078331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xc012", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 7 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb20000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000005395640f0d9d7e51428d1e11519ae9b8b1e547b3000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000007c585087238000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7704", "output": "0x" }, "subtraces": 1, "traceAddress": [ 7, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb20000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000005395640f0d9d7e51428d1e11519ae9b8b1e547b3000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000007c585087238000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x61e1", "output": "0x" }, "subtraces": 1, "traceAddress": [ 7, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb0000000000000000000000005395640f0d9d7e51428d1e11519ae9b8b1e547b300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000007c585087238000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x3d04", "output": "0x" }, "subtraces": 0, "traceAddress": [ 7, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962c4", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd557500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb394a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000f8eb9c2248ce3b6357c7e7067d4d16d62b7ed004000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000002ea11e32ad50000a0efb741123130fa8c575b71460ff9fae3251094f690cfbf0758e42cac26fa52b08201748331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x102de", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 8 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000f8eb9c2248ce3b6357c7e7067d4d16d62b7ed004000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000002ea11e32ad50000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb9d0", "output": "0x" }, "subtraces": 1, "traceAddress": [ 8, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000f8eb9c2248ce3b6357c7e7067d4d16d62b7ed004000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000002ea11e32ad50000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xa4ad", "output": "0x" }, "subtraces": 1, "traceAddress": [ 8, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb000000000000000000000000f8eb9c2248ce3b6357c7e7067d4d16d62b7ed0040000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000002ea11e32ad50000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fd0", "output": "0x" }, "subtraces": 0, "traceAddress": [ 8, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962b8", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd55b100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb494a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000075099eada4834fc93140906e5186b695d7cfd115000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986ba07a9ef397ed31baaaed28ad5b5737908341b9bdcd3aba7c3bb9934258426b42338202548331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x102de", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 9 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000075099eada4834fc93140906e5186b695d7cfd115000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986b", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb9d0", "output": "0x" }, "subtraces": 1, "traceAddress": [ 9, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb40000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000075099eada4834fc93140906e5186b695d7cfd115000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986b", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xa4ad", "output": "0x" }, "subtraces": 1, "traceAddress": [ 9, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb00000000000000000000000075099eada4834fc93140906e5186b695d7cfd11500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986b", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fd0", "output": "0x" }, "subtraces": 0, "traceAddress": [ 9, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962b8", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd55b100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb594a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000852a1868ba523d787ee9306a3281f76458aa5e7b000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986ba011ea0586618611cf4e8782e41af70f41671ba28c555fa5aefe0e0c3c4748f1d282026f8331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xc012", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 10 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb50000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000852a1868ba523d787ee9306a3281f76458aa5e7b000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986b", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7704", "output": "0x" }, "subtraces": 1, "traceAddress": [ 10, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb50000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000852a1868ba523d787ee9306a3281f76458aa5e7b000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986b", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x61e1", "output": "0x" }, "subtraces": 1, "traceAddress": [ 10, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb000000000000000000000000852a1868ba523d787ee9306a3281f76458aa5e7b00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000e0303b699986b", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x3d04", "output": "0x" }, "subtraces": 0, "traceAddress": [ 10, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962ac", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd55b100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb694a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000c3bee8240dba8b0e5b2f4e06090a7eb1e18d4ace000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000006679f17951ff8a5a0f9b2810960898e373f702a4d5a95b74e32b083d93e8fb2d5c2a67ef320015a148203878331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x117c1", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 11 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb60000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000c3bee8240dba8b0e5b2f4e06090a7eb1e18d4ace000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000006679f17951ff8a5", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xceb3", "output": "0x" }, "subtraces": 1, "traceAddress": [ 11, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb60000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000c3bee8240dba8b0e5b2f4e06090a7eb1e18d4ace000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000006679f17951ff8a5", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb990", "output": "0x" }, "subtraces": 1, "traceAddress": [ 11, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb000000000000000000000000c3bee8240dba8b0e5b2f4e06090a7eb1e18d4ace0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000006679f17951ff8a5", "to": "0xae740d42e4ff0c5086b2b5b5d149eb2f9e1a754f", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x94b3", "output": "0x" }, "subtraces": 1, "traceAddress": [ 11, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xae740d42e4ff0c5086b2b5b5d149eb2f9e1a754f", "callType": "delegatecall", "gas": "0x487a24", "input": "0xcf2c52cb000000000000000000000000c3bee8240dba8b0e5b2f4e06090a7eb1e18d4ace0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000006679f17951ff8a5", "to": "0x0f1c828ae960a1780c7125b9b6be2f7e3dba22cd", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fba", "output": "0x" }, "subtraces": 0, "traceAddress": [ 11, 0, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xfffffffffffffffffffffffffffffffffffffffe", "callType": "call", "gas": "0x1c962c4", "input": "0x19494a170000000000000000000000000000000000000000000000000000000062bd55b100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000147f9014483215cb794a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aab9010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000027e931831b89dc5c5852e8238ff401125cb67682000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000009b6e64a8ec60000a0731a0e81b7d993604bc278d1fba6a8dce94cd0a475936ced9342e1f7d2700a6c8203898331333700000000000000000000000000000000000000000000000000", "to": "0x0000000000000000000000000000000000001001", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x102de", "output": "0x0000000000000000000000000000000000000000000000000000000000000001" }, "subtraces": 1, "traceAddress": [ 12 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0x0000000000000000000000000000000000001001", "callType": "call", "gas": "0x4c4b40", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb70000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000027e931831b89dc5c5852e8238ff401125cb67682000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000009b6e64a8ec60000", "to": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xb9d0", "output": "0x" }, "subtraces": 1, "traceAddress": [ 12, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "delegatecall", "gas": "0x4b0577", "input": "0x26c53bea0000000000000000000000000000000000000000000000000000000000215cb70000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010087a7811f4bfedea3d341ad165680ae306b01aaeacc205d227629cf157dd9f821000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000027e931831b89dc5c5852e8238ff401125cb67682000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000009b6e64a8ec60000", "to": "0xa40fc0782bee28dd2cf8cb4ac2ecdb05c537f1b5", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0xa4ad", "output": "0x" }, "subtraces": 1, "traceAddress": [ 12, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" }, { "action": { "from": "0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa", "callType": "call", "gas": "0x49b56c", "input": "0xcf2c52cb00000000000000000000000027e931831b89dc5c5852e8238ff401125cb676820000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000009b6e64a8ec60000", "to": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", "value": "0x0" }, "blockHash": "0x469990aac1faf8009a9bc3bc83ebd54968bf1af92a1fd39c16d3748ef4203452", "blockNumber": 30167616, "result": { "gasUsed": "0x7fd0", "output": "0x" }, "subtraces": 0, "traceAddress": [ 12, 0, 0, 0 ], "transactionHash": "0xd2b8d76bb5e9b7ab24aa25e8fbe56e28a333587bb7df9311448c3cac103d8558", "transactionPosition": 163, "type": "call" } ] } ``` |
||
|
|
a63b89334b
|
added logging for slow RPC requests (#8818)
Changed distribution of httpcfg.HttpCfg to be pointer.
Added new flags:
rpc.slow.log - which is false by default, this flag need to enable
logging slow RPC requests
rpc.slow.log.threshold - which is 100 by default, this flag specify slow
threshold in milliseconds
Updated rpc handler to log slow requests:
- added map[request id] {method, timestamp}
- put every request details to map above
- delete request details from map above
- added time interval check for elements in map and if time difference
is more than given threshold print request id and the method
- app will print slow requests in next cases:
1. As soon as request take more than given threshold
2. Every 20 seconds if request still in process
3. After request finished and it took more than give threshold
---------
Co-authored-by: alex.sharov <AskAlexSharov@gmail.com>
|
||
|
|
9b74cf0384
|
metrics: use prometheus histogram and summary interfaces (#8808) | ||
|
|
f3ce5f8a36
|
Bor proofgen tests (#8751)
Added initial proof generation tests for polygon reverse flow for devnet Blocks tested, receipts need trie proof clarification |
||
|
|
a6b5297b3e
|
dvovk/tunnelwws (#8745)
- changed communication tunnel to web socket in order to connect to remote nodes - changed diagnostics.url flag to diagnostics.addr as now user need to enter only address and support command will connect to it through websocket - changed flag debug.urls to debug.addrs in order to have ability to change connection type between erigon and support to websocket and don't change user API - added auto trying to connect to connect to ws if connection with was failed |
||
|
|
35bfffd621
|
sys deps up (#8695) | ||
|
|
3698e7f476
|
devnet: configuration fixes (#8592)
* fix "genesis hash does not match" when dev nodes connect
The "dev" nodes need to have the same --miner.etherbase in order to
generate the same genesis ExtraData by DeveloperGenesisBlock(). Override
DevnetEtherbase global var that's used if --miner.etherbase is not
passed. (for NonBlockProducer case)
* fix missing private key for the hardcoded DevnetEtherbase
Fixes panic if SigKey is not found. Bor non-producers will use a default
`DevnetEtherbase` while Dev nodes modify it. Save hardcoded
DevnetEtherbase/DevnetSignPrivateKey into accounts so that SigKey can
recover it.
* refactor devnet.node to contain Node config
This avoids interface{} type casts and fixes an error with
Heimdall.validatorSet == nil
* add connection retries to rpcCall and Subscribe of requestGenerator
Fixes "connection refused" errors due to node not ready to handle early
RPC requests.
* fix deadlock in Heimdall.NodeStarted
* fix GetBlockByNumber
Fixes "cannot unmarshal string into Go struct field body.transactions of
type jsonrpc.RPCTransaction"
* demote "no of blocks on childchain is less than confirmations
required" to Info (#8626)
* demote "mismatched pending subpool size" to Debug (#8615)
* revert wiggle testing code
|
||
|
|
436493350e
|
Sentinel refactor (#8296)
1. changes sentinel to use an http-like interface 2. moves hexutil, crypto/blake2b, metrics packages to erigon-lib |
||
|
|
0bdca6c457
|
Metrics label fixes (#8339)
Fixes for label discrepancies in collector for summaries etc which have a template which includes a quantile. Initial native Prometheus client implementation of metrics - which is currently turned off except for local testing and interface exports. |
||
|
|
f794438335
|
Diag session routing (#8232)
Code to support react based UI for diagnostics: * pprof, prometheus and diagnistics rationalized to use a single router (i.e. they can all run in the same port) * support_cmd updated to support node routing (was only first node) * Multi content support in router tunnel (application/octet-stream & appliaction/json) * Routing requests changed from using http forms to rest + query params * REST query requests can now be made against erigon base port and diagnostics with the same url format/params --------- Co-authored-by: dvovk <vovk.dimon@gmail.com> Co-authored-by: Mark Holt <mark@disributed.vision> |
||
|
|
dedf04caaa
|
Pre-allocate method metric labels (#8243)
Closes #8085 |
||
|
|
8ea0096d56
|
moved metrics sub packages types to metrics (#8119)
This is a non functional change which consolidates the various packages under metrics into the top level package now that the dead code is removed. It is a precursor to the removal of Victoria metrics after which all erigon metrics code will be contained in this single package. |
||
|
|
e81852320c
|
Remove unused metrics and out of date versions (#8109)
ergon/metrics contains a lot of unused types - the pull is removing them prior to rationalizing between Prometheus and Victoria Metrics types. It also have upgrades of golang-lru + sets types to v2 when possible. |
||
|
|
a4cfbe0d56
|
Heimdall metrics + Metrics HTTP server rationalization (#8094)
This is an update of: https://github.com/ledgerwatch/erigon/pull/7846 which uses a local fork of victoria metrics to include the changes that https://github.com/anshalshukla added to the original for we where using. It also includes code to address the duplicate metrics issue identified here: https://github.com/ledgerwatch/erigon/issues/8053 It has one more associated fix which is to correctly add a metadata label to counters, these where previously labelled as gauges. e.g. ``` # TYPE p2p_peers counter p2p_peers 0 ``` rather than ``` # TYPE p2p_peers gauge p2p_peers 0 ``` --------- Co-authored-by: Anshal Shukla <53994948+anshalshukla@users.noreply.github.com> Co-authored-by: Anshal Shukla <shukla.anshal85@gmail.com> |
||
|
|
ddf608f866
|
rpc: a bit less metrics allocations (#8084) | ||
|
|
c51573f333
|
Bor eth event flow (#8068)
Implemented polygon->eth flow |
||
|
|
db5b348673
|
Caplin block persistence (#7941)
Co-authored-by: Giulio <giulio.rebuffo@gmail.com> |
||
|
|
d69b20bc4e
|
Support engine_forkchoiceUpdatedV3 with ParentBeaconBlockRoot (EIP-4788) (#7969)
Prerequisites: https://github.com/ledgerwatch/interfaces/pull/187 & https://github.com/ledgerwatch/erigon-lib/pull/1069. Also implement https://github.com/ethereum/execution-apis/pull/426. |
||
|
|
1e575ea172
|
rpc service and stageloop logger updates (#7696)
This is another update to logging to replace the root logger with a contextual logger |
||
|
|
067f695fff
|
[devnet tool] Separate logging (#7553)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local> |
||
|
|
05597cb195
|
[devnet tool] separare logging (#7531)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local> |
||
|
|
201572c6f5
|
enable more linters #954 (#7179) | ||
|
|
165a6a950d
|
check for nil stream when running the null check in handler (#7105) | ||
|
|
84ec0a0b4b
|
check for nil before returning invalid json in rpc streaming calls (#7104)
should handle nil having already been written in any rpc call before writing it again causing invalid json to be returned. |
||
|
|
7190d89af3 | save | ||
|
|
2fa448c45f
|
Validate params of GetPayloadBodiesByHash and ByRange (#6785)
See https://github.com/ethereum/execution-apis/pull/366 and https://github.com/ethereum/execution-apis/pull/370. Also fix a couple of issues so that the Hive tests pass. |
||
|
|
966be04e6d
|
add eth_getFilterLogs, fix filter subscription ids (#6514)
this pr does the following: 1. adds new function to ApiImpl `GetFilterLogs` which should implement `eth_getFilterLogs` (eth_getFilterChanges except with only logs filters) 2. changes the ID generator of rpchelper.Filters to use crypto/rand. 3. switched logs subscriptions to use the secure ID instead of number 4. changes subcription ids from an 8 byte hex string to a 16 byte |
||
|
|
7dcbfbc283
|
reference hash, address, and chain config from lib (#6536) | ||
|
|
389a2e8392
|
Eth call limits (#6523)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local> Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local> |
||
|
|
ad7be30679
|
jsonrpc HTTP Get handler & logs topic filter with map (#5922)
this pr has two things in it 1. changed filter logs to use a map for the topics. this will speed up queries with many topics in them. I still don't have a use case for this though. i put is as a method of Logs, since that made sense to me, happy to move it back out though. 2. allows json-rpc over http get request. since firefox is a great json viewer (can search through, collapse large results) i often use it to debug. it is also useful for sharing data with those who are less familiar with command line / programming. example get request: http://rpcdaemon/?method=eth_getLogs¶ms=[{"fromBlock":"0xf2316b","toBlock":"0xf2316b"}] it is based on the old jsonrpc http specification https://www.jsonrpc.org/historical/json-rpc-over-http.html#encoded-parameters except we also accept not base64 encoded params. since every eth rpc request has a [], it will immediately fail validation for base64 and attempt to use the parameters as a they are. otherwise it will attempt to parse the rest of the payload as base64 and use that. Co-authored-by: a <a@a.a> Co-authored-by: gfx <86091021+gfxlabs@users.noreply.github.com> |
||
|
|
42aa80e059
|
rpc: fix implemented filter methods being forbidden (#5801)
Addresses issue #4833 Removes implemented methods from the forbidden method list. The forbidden list seems to have been created as a bugfix before the filters methods were implemented. Now that the filter methods are implemented, these entries are causing unexpected behaviour. |
||
|
|
44266a9237
|
rcpdaemon, erigon: add --rpc.evmtimeout flag (#5395) | ||
|
|
566cd65664
|
Revert "cancel context before waiting for waitgroup to avoid deadlock in RPC on error (#5345)" (#5360)
This reverts commit
|
||
|
|
9ff5b21a1e
|
cancel context before waiting for waitgroup to avoid deadlock in RPC on error (#5345)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local> |
||
|
|
19a178bf19
|
missing return; (#5328) | ||
|
|
ea6b92b132
|
Enable gosec linter (#5083)
* Ignore pseudo random generators * Enable gosec linter |
||
|
|
52fd0d0e8b
|
Aggregator22.Unwind() (#5039)
* save * save |
||
|
|
351cd49c21
|
go1.19 gofmt (#4988) | ||
|
|
c12d298f1c
|
new rpc block number (#4953)
* new rpc block number * log * ops |
||
|
|
cce64f6a33
|
Fix rpc json #4838 (#4894)
* Fixing RPC JSON errors
* Use local rpc mod
* Revert "Use local rpc mod"
This reverts commit
|
||
|
|
2681ee392a
|
rpc: fix error stream (#4860) | ||
|
|
f927ac8037
|
Increase JWT issued-at window to 60s (#4835) | ||
|
|
66758c7960
|
RetireBlocks: less arguments (#4785)
* save * save |
||
|
|
d9cb87a149
|
RPC: Enable back json streaming for non-batch and non-websocket cases (#4647)
* enable rpc streaming * enable rpc streaming |
||
|
|
8de7c5e41c
|
JSON parsing of safe & finalized (#4524) | ||
|
|
64067a2b77
|
Debugging Engine API (#4488)
* defer tx rollback * Add http.trace flag * Fixed http.trace flag * Fix lint * Fix lint * Delete unused tests * Fix lint * Fix lint * Fix lint * Fix lint Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local> |