mirror of
https://github.com/blockchain-etl/ethereum-etl.git
synced 2026-01-11 06:38:17 -05:00
Compare commits
218 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fbd57fc079 | ||
|
|
8204c0827d | ||
|
|
46b91a9ff2 | ||
|
|
b5fd64bdca | ||
|
|
d8547e9c7c | ||
|
|
7ef53859c1 | ||
|
|
e38d1c1f2f | ||
|
|
43fe6b49b3 | ||
|
|
db274c8a85 | ||
|
|
69247042a4 | ||
|
|
218e1e4356 | ||
|
|
5e0fc8cc75 | ||
|
|
77efda5106 | ||
|
|
ece0b7f422 | ||
|
|
b31b76a73a | ||
|
|
0cb7eb60b5 | ||
|
|
02943f7caf | ||
|
|
b844b95868 | ||
|
|
4d305a284f | ||
|
|
e161e6ef13 | ||
|
|
9b917b8ddd | ||
|
|
383caf8331 | ||
|
|
c61e91235f | ||
|
|
0e4b4a894b | ||
|
|
d58c1ebda7 | ||
|
|
f0bf07e60c | ||
|
|
efe7acdc13 | ||
|
|
20404eca9e | ||
|
|
435cbe0a74 | ||
|
|
b606e22cd5 | ||
|
|
4943b0b795 | ||
|
|
eed2068def | ||
|
|
313b4b1237 | ||
|
|
ad6149155e | ||
|
|
c55c0f68dc | ||
|
|
b031b04bc7 | ||
|
|
b314f1ed0c | ||
|
|
61eb2e6e21 | ||
|
|
9f62e7ecea | ||
|
|
4da7e7b23f | ||
|
|
de72ba3511 | ||
|
|
3aabf9aa54 | ||
|
|
284755bafc | ||
|
|
23133594e8 | ||
|
|
ca54ef6c4b | ||
|
|
836f30e198 | ||
|
|
1c6508f15d | ||
|
|
a4d6f8fcb1 | ||
|
|
bc79d7d9bf | ||
|
|
7fdcf0f7b7 | ||
|
|
d3330f7ddc | ||
|
|
1066ec9025 | ||
|
|
2a92ecbf31 | ||
|
|
c238e8b57b | ||
|
|
a27d2427e1 | ||
|
|
c18f78506c | ||
|
|
23bad940db | ||
|
|
0a52db4b8a | ||
|
|
9fd1f906f2 | ||
|
|
f08f93ddfe | ||
|
|
9e51c3b8d4 | ||
|
|
79d341ea45 | ||
|
|
9db1ff104a | ||
|
|
952a49ba4b | ||
|
|
aab122ebf3 | ||
|
|
438c9af751 | ||
|
|
3ec2af25e1 | ||
|
|
84101407c1 | ||
|
|
97a0275ced | ||
|
|
7cbfd0e533 | ||
|
|
94ebd3f3e9 | ||
|
|
c0fd158211 | ||
|
|
7529c43f4e | ||
|
|
ce906f0af1 | ||
|
|
eaf4bf0bf2 | ||
|
|
1a0a8cf0f8 | ||
|
|
f0e4302423 | ||
|
|
fb35431aa7 | ||
|
|
87b1669434 | ||
|
|
9678bb91c7 | ||
|
|
f4e2b57463 | ||
|
|
6599a438a0 | ||
|
|
f8a5f25376 | ||
|
|
de96e394ee | ||
|
|
a58fe4585d | ||
|
|
f8878ff320 | ||
|
|
993ebe67c8 | ||
|
|
f967d73a95 | ||
|
|
e8b0447a63 | ||
|
|
af2ef17832 | ||
|
|
161aa6e472 | ||
|
|
7c80c09500 | ||
|
|
3affbadac3 | ||
|
|
84518f70ae | ||
|
|
aae968cd4b | ||
|
|
6f44daf023 | ||
|
|
2da9d050f4 | ||
|
|
2939c0afbf | ||
|
|
2678a2a2e3 | ||
|
|
d801da96dd | ||
|
|
b876f2059e | ||
|
|
204bcb65f6 | ||
|
|
92c07982c4 | ||
|
|
b6dbf07dbf | ||
|
|
f0732961f5 | ||
|
|
8498a775da | ||
|
|
f0e98871a2 | ||
|
|
f7f192510b | ||
|
|
b1acfa3be7 | ||
|
|
372bf2cb16 | ||
|
|
45a089fe0c | ||
|
|
688ecdfa3f | ||
|
|
0f6234ade3 | ||
|
|
47308f4891 | ||
|
|
2c91a31061 | ||
|
|
956695b77b | ||
|
|
533f516296 | ||
|
|
d34b28e4bf | ||
|
|
3ed8b8bc3e | ||
|
|
e1f658bc36 | ||
|
|
aae2edb20b | ||
|
|
12851c17a5 | ||
|
|
f5115547a3 | ||
|
|
58f5d9020c | ||
|
|
f5fa89a916 | ||
|
|
262e5f65f1 | ||
|
|
6b64c2338b | ||
|
|
be64a901ab | ||
|
|
97e2749f2a | ||
|
|
ca9eb6696b | ||
|
|
6c3a0694a3 | ||
|
|
837c324448 | ||
|
|
7ef53acee0 | ||
|
|
119a54fca1 | ||
|
|
cb0f955c27 | ||
|
|
9725ff9122 | ||
|
|
a142542ef9 | ||
|
|
342c5df3bb | ||
|
|
d189e7a344 | ||
|
|
f8f22f93a1 | ||
|
|
f4403a7e3f | ||
|
|
4ee070627c | ||
|
|
7a337e724a | ||
|
|
ac812a0f36 | ||
|
|
1711d2e809 | ||
|
|
d251f21b04 | ||
|
|
dcdc776c1b | ||
|
|
59ddb23f45 | ||
|
|
64adeb77a8 | ||
|
|
caff3065f7 | ||
|
|
d5567bf343 | ||
|
|
26e940224b | ||
|
|
5efa6e0eb9 | ||
|
|
53c1b59c84 | ||
|
|
8c9d6a62cc | ||
|
|
d085d5a5a4 | ||
|
|
43227e54b2 | ||
|
|
00e63d2b83 | ||
|
|
d58e72974a | ||
|
|
817660199c | ||
|
|
50925fc94d | ||
|
|
e63e703390 | ||
|
|
8a87ba85e3 | ||
|
|
15ff2a2ecb | ||
|
|
e511dac818 | ||
|
|
64d16f581b | ||
|
|
898ce3f3bf | ||
|
|
da6cc6f653 | ||
|
|
53c74e9996 | ||
|
|
67e27a6536 | ||
|
|
3a28eb116d | ||
|
|
b80eac42a6 | ||
|
|
72dcfd4979 | ||
|
|
4bfa3e6ba4 | ||
|
|
1883a01e3f | ||
|
|
1883e5cdac | ||
|
|
8a49edcae3 | ||
|
|
ce2ce23ccd | ||
|
|
d1189ad721 | ||
|
|
c135afc4bc | ||
|
|
65feed595a | ||
|
|
e82a86ca7f | ||
|
|
ed31940391 | ||
|
|
a0689730e4 | ||
|
|
0beebb139d | ||
|
|
5dea830c16 | ||
|
|
37d89e9c9d | ||
|
|
baa79e74c9 | ||
|
|
db590188d1 | ||
|
|
87f5e45d17 | ||
|
|
b772ec7fd7 | ||
|
|
69bb6f9bb3 | ||
|
|
2a9e468c1e | ||
|
|
be1892dffa | ||
|
|
31fb4efc48 | ||
|
|
167b38b6bc | ||
|
|
7d47dd34d6 | ||
|
|
c6fbd10ef3 | ||
|
|
114cd60b5a | ||
|
|
1a0bac2e2c | ||
|
|
2a17fb67ad | ||
|
|
dba7adf8f1 | ||
|
|
75847dd6ba | ||
|
|
e3b83639c2 | ||
|
|
6bb0fffd38 | ||
|
|
b62a2f1b30 | ||
|
|
9d9c383ab8 | ||
|
|
79ad41aad9 | ||
|
|
38c2c1beec | ||
|
|
a582f73cd2 | ||
|
|
257da16c48 | ||
|
|
1b9c07862c | ||
|
|
0667b68cb6 | ||
|
|
28acabe45e | ||
|
|
f593053af3 | ||
|
|
8df7d901ee | ||
|
|
de4380fb89 | ||
|
|
42b96bcf7b |
4
.github/FUNDING.yml
vendored
4
.github/FUNDING.yml
vendored
@@ -1,4 +0,0 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
custom: https://gitcoin.co/grants/233/ethereumetl
|
||||
|
||||
2
.github/workflows/publish-to-dockerhub.yml
vendored
2
.github/workflows/publish-to-dockerhub.yml
vendored
@@ -7,7 +7,7 @@ on:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- name: Publish to DockerHub
|
||||
|
||||
2
.github/workflows/publish-to-pypi.yml
vendored
2
.github/workflows/publish-to-pypi.yml
vendored
@@ -8,7 +8,7 @@ on:
|
||||
jobs:
|
||||
build-n-publish:
|
||||
name: Build and publish to PyPI and TestPyPI
|
||||
runs-on: ubuntu-18.04
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- name: Set up Python 3.7
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -47,3 +47,6 @@ coverage.xml
|
||||
.venv
|
||||
venv/
|
||||
ENV/
|
||||
|
||||
# etl
|
||||
/last_synced_block.txt
|
||||
14
.readthedocs.yaml
Normal file
14
.readthedocs.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
# Read the Docs configuration file for MkDocs projects
|
||||
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
|
||||
|
||||
# Required
|
||||
version: 2
|
||||
|
||||
# Set the version of Python and other tools you might need
|
||||
build:
|
||||
os: ubuntu-22.04
|
||||
tools:
|
||||
python: "3.12"
|
||||
|
||||
mkdocs:
|
||||
configuration: mkdocs.yml
|
||||
10
.travis.yml
10
.travis.yml
@@ -2,15 +2,13 @@ language: python
|
||||
dist: xenial
|
||||
matrix:
|
||||
include:
|
||||
- python: "3.5"
|
||||
env: TOX_POSARGS="-e py35"
|
||||
- python: "3.6"
|
||||
env: TOX_POSARGS="-e py36"
|
||||
- python: "3.7"
|
||||
- python: "3.7.2"
|
||||
env: TOX_POSARGS="-e py37"
|
||||
- python: "3.8"
|
||||
env: TOX_POSARGS="-e py38"
|
||||
- python: "3.9"
|
||||
env: TOX_POSARGS="-e py39"
|
||||
install:
|
||||
- travis_retry pip install tox
|
||||
script:
|
||||
- tox $TOX_POSARGS
|
||||
- travis_wait tox $TOX_POSARGS
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM python:3.6
|
||||
FROM python:3.7
|
||||
MAINTAINER Evgeny Medvedev <evge.medvedev@gmail.com>
|
||||
ENV PROJECT_DIR=ethereum-etl
|
||||
|
||||
|
||||
4
LICENSE
4
LICENSE
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2018 Evgeny Medvedev, evge.medvedev@gmail.com, https://twitter.com/EvgeMedvedev
|
||||
Copyright (c) 2018-2025 Evgeny Medvedev, evge.medvedev@gmail.com, https://twitter.com/EvgeMedvedev
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
SOFTWARE.
|
||||
|
||||
25
README.md
25
README.md
@@ -1,9 +1,9 @@
|
||||
# Ethereum ETL
|
||||
|
||||
[](https://travis-ci.com/github/blockchain-etl/ethereum-etl)
|
||||
[](https://gitter.im/ethereum-etl/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://t.me/joinchat/GsMpbA3mv1OJ6YMp3T5ORQ)
|
||||
[](https://discord.gg/wukrezR)
|
||||
[](https://github.com/blockchain-etl/ethereum-etl/blob/develop/LICENSE)
|
||||
[](https://t.me/BlockchainETL)
|
||||
[](https://x.com/EthereumETL)
|
||||
|
||||
Ethereum ETL lets you convert blockchain data into convenient formats like CSVs and relational databases.
|
||||
|
||||
@@ -27,7 +27,7 @@ Export blocks and transactions ([Schema](docs/schema.md#blockscsv), [Reference](
|
||||
--provider-uri https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c
|
||||
```
|
||||
|
||||
Export ERC20 and ERC721 transfers ([Schema](docs/schema.md#token_transferscsv), [Reference](docs/commands.md##export_token_transfers)):
|
||||
Export ERC20 and ERC721 transfers ([Schema](docs/schema.md#token_transferscsv), [Reference](docs/commands.md#export_token_transfers)):
|
||||
|
||||
```bash
|
||||
> ethereumetl export_token_transfers --start-block 0 --end-block 500000 \
|
||||
@@ -78,7 +78,7 @@ For the latest version, check out the repo and call
|
||||
```bash
|
||||
> pip3 install -e .[dev,streaming]
|
||||
> export ETHEREUM_ETL_RUN_SLOW_TESTS=True
|
||||
> export PROVIDER_URL=<your_porvider_uri>
|
||||
> export PROVIDER_URL=<your_provider_uri>
|
||||
> pytest -vv
|
||||
```
|
||||
|
||||
@@ -91,7 +91,7 @@ For the latest version, check out the repo and call
|
||||
|
||||
## Running in Docker
|
||||
|
||||
1. Install Docker: https://docs.docker.com/install/
|
||||
1. Install Docker: https://docs.docker.com/get-docker/
|
||||
|
||||
2. Build a docker image
|
||||
|
||||
@@ -105,12 +105,19 @@ For the latest version, check out the repo and call
|
||||
|
||||
4. Run streaming to console or Pub/Sub
|
||||
|
||||
> docker build -t ethereum-etl:latest -f Dockerfile .
|
||||
> docker build -t ethereum-etl:latest .
|
||||
> echo "Stream to console"
|
||||
> docker run ethereum-etl:latest stream --start-block 500000 --log-file log.txt
|
||||
> echo "Stream to Pub/Sub"
|
||||
> docker run -v /path_to_credentials_file/:/ethereum-etl/ --env GOOGLE_APPLICATION_CREDENTIALS=/ethereum-etl/credentials_file.json ethereum-etl:latest stream --start-block 500000 --output projects/<your-project>/topics/crypto_ethereum
|
||||
> docker run -v /path_to_credentials_file/:/ethereum-etl/ --env GOOGLE_APPLICATION_CREDENTIALS=/ethereum-etl/credentials_file.json ethereum-etl:latest stream --start-block 500000 --output projects/<your_project>/topics/crypto_ethereum
|
||||
|
||||
If running on an Apple M1 chip add the `--platform linux/x86_64` option to the `build` and `run` commands e.g.:
|
||||
|
||||
```
|
||||
docker build --platform linux/x86_64 -t ethereum-etl:latest .
|
||||
docker run --platform linux/x86_64 ethereum-etl:latest stream --start-block 500000
|
||||
```
|
||||
|
||||
## Projects using Ethereum ETL
|
||||
* [Google](https://goo.gl/oY5BCQ) - Public BigQuery Ethereum datasets
|
||||
* [Nansen](https://www.nansen.ai/?ref=ethereumetl) - Analytics platform for Ethereum
|
||||
* [Nansen](https://nansen.ai/query?ref=ethereumetl) - Analytics platform for Ethereum
|
||||
|
||||
@@ -45,7 +45,7 @@ class BaseItemExporter(object):
|
||||
self._configure(kwargs)
|
||||
|
||||
def _configure(self, options, dont_fail=False):
|
||||
"""Configure the exporter by poping options from the ``options`` dict.
|
||||
"""Configure the exporter by popping options from the ``options`` dict.
|
||||
If dont_fail is set, it won't raise an exception on unexpected options
|
||||
(useful for using with keyword arguments in subclasses constructors)
|
||||
"""
|
||||
@@ -119,9 +119,16 @@ class CsvItemExporter(BaseItemExporter):
|
||||
return serializer(value)
|
||||
|
||||
def _join_if_needed(self, value):
|
||||
def to_string(x):
|
||||
if isinstance(x, dict):
|
||||
# Separators without whitespace for compact format.
|
||||
return JSONEncoder(separators=(',', ':')).encode(x)
|
||||
else:
|
||||
return str(x)
|
||||
|
||||
if isinstance(value, (list, tuple)):
|
||||
try:
|
||||
return self._join_multivalued.join(str(x) for x in value)
|
||||
return self._join_multivalued.join(to_string(x) for x in value)
|
||||
except TypeError: # list in value may not contain strings
|
||||
pass
|
||||
return value
|
||||
|
||||
@@ -30,13 +30,18 @@
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
|
||||
class SimpleItemConverter:
|
||||
|
||||
def __init__(self, field_converters=None):
|
||||
self.field_converters = field_converters
|
||||
|
||||
def convert_item(self, item):
|
||||
return {
|
||||
key: self.convert_field(key, value) for key, value in item.items()
|
||||
}
|
||||
|
||||
def convert_field(self, key, value):
|
||||
return value
|
||||
if self.field_converters is not None and key in self.field_converters:
|
||||
return self.field_converters[key](value)
|
||||
else:
|
||||
return value
|
||||
|
||||
54
blockchainetl/jobs/exporters/kafka_exporter.py
Normal file
54
blockchainetl/jobs/exporters/kafka_exporter.py
Normal file
@@ -0,0 +1,54 @@
|
||||
import collections
|
||||
import json
|
||||
import logging
|
||||
|
||||
from kafka import KafkaProducer
|
||||
|
||||
from blockchainetl.jobs.exporters.converters.composite_item_converter import CompositeItemConverter
|
||||
|
||||
|
||||
class KafkaItemExporter:
|
||||
|
||||
def __init__(self, output, item_type_to_topic_mapping, converters=()):
|
||||
self.item_type_to_topic_mapping = item_type_to_topic_mapping
|
||||
self.converter = CompositeItemConverter(converters)
|
||||
self.connection_url = self.get_connection_url(output)
|
||||
print(self.connection_url)
|
||||
self.producer = KafkaProducer(bootstrap_servers=self.connection_url)
|
||||
|
||||
def get_connection_url(self, output):
|
||||
try:
|
||||
return output.split('/')[1]
|
||||
except KeyError:
|
||||
raise Exception('Invalid kafka output param, It should be in format of "kafka/127.0.0.1:9092"')
|
||||
|
||||
def open(self):
|
||||
pass
|
||||
|
||||
def export_items(self, items):
|
||||
for item in items:
|
||||
self.export_item(item)
|
||||
|
||||
def export_item(self, item):
|
||||
item_type = item.get('type')
|
||||
if item_type is not None and item_type in self.item_type_to_topic_mapping:
|
||||
data = json.dumps(item).encode('utf-8')
|
||||
logging.debug(data)
|
||||
return self.producer.send(self.item_type_to_topic_mapping[item_type], value=data)
|
||||
else:
|
||||
logging.warning('Topic for item type "{}" is not configured.'.format(item_type))
|
||||
|
||||
def convert_items(self, items):
|
||||
for item in items:
|
||||
yield self.converter.convert_item(item)
|
||||
|
||||
def close(self):
|
||||
pass
|
||||
|
||||
|
||||
def group_by_item_type(items):
|
||||
result = collections.defaultdict(list)
|
||||
for item in items:
|
||||
result[item.get('type')].append(item)
|
||||
|
||||
return result
|
||||
82
blockchainetl/jobs/exporters/kinesis_item_exporter.py
Normal file
82
blockchainetl/jobs/exporters/kinesis_item_exporter.py
Normal file
@@ -0,0 +1,82 @@
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2022 CoinStats LLC
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
import json
|
||||
import typing as t
|
||||
import uuid
|
||||
from itertools import zip_longest
|
||||
|
||||
import boto3
|
||||
|
||||
_KINESIS_BATCH_LIMIT = 500
|
||||
|
||||
|
||||
def _uuid_partition_key(_: dict) -> str:
|
||||
return uuid.uuid4().hex
|
||||
|
||||
|
||||
class KinesisItemExporter:
|
||||
def __init__(
|
||||
self,
|
||||
stream_name: str,
|
||||
partition_key_callable: t.Callable[[dict], str] = _uuid_partition_key,
|
||||
):
|
||||
import boto3
|
||||
self._stream_name = stream_name
|
||||
self._partition_key_callable = partition_key_callable
|
||||
self._kinesis_client = None # initialized in .open
|
||||
|
||||
def open(self) -> None:
|
||||
self._kinesis_client = boto3.client('kinesis')
|
||||
|
||||
def export_items(self, items: t.Iterable[dict]) -> None:
|
||||
sentinel = object()
|
||||
chunks = zip_longest(
|
||||
*(iter(items),) * _KINESIS_BATCH_LIMIT,
|
||||
fillvalue=sentinel,
|
||||
)
|
||||
for chunk in chunks:
|
||||
self._kinesis_client.put_records(
|
||||
StreamName=self._stream_name,
|
||||
Records=[
|
||||
{
|
||||
'Data': _serialize_item(item),
|
||||
'PartitionKey': self._partition_key_callable(item),
|
||||
}
|
||||
for item in chunk
|
||||
if item is not sentinel
|
||||
],
|
||||
)
|
||||
|
||||
def export_item(self, item: dict) -> None:
|
||||
self._kinesis_client.put_record(
|
||||
StreamName=self._stream_name,
|
||||
Data=_serialize_item(item),
|
||||
PartitionKey=self._partition_key_callable(item),
|
||||
)
|
||||
|
||||
def close(self):
|
||||
pass
|
||||
|
||||
|
||||
def _serialize_item(item: dict) -> bytes:
|
||||
return json.dumps(item).encode()
|
||||
@@ -56,7 +56,7 @@ Include `--tokens <token1> --tokens <token2>` to filter only certain tokens, e.g
|
||||
```bash
|
||||
> ethereumetl export_token_transfers --start-block 0 --end-block 500000 \
|
||||
--provider-uri file://$HOME/Library/Ethereum/geth.ipc --output token_transfers.csv \
|
||||
--tokens 0x86fa049857e0209aa7d9e616f7eb3b3b78ecfdb0 --tokens 0x06012c8cf97bead5deae237070f9587f8e7a266d
|
||||
--tokens 0x1F573D6Fb3F13d689FF844B4cE37794d79a7FF1C --tokens 0x80fB784B7eD66730e8b1DBd9820aFD29931aab03
|
||||
```
|
||||
|
||||
You can tune `--batch-size`, `--max-workers` for performance.
|
||||
@@ -165,7 +165,7 @@ You can tune `--batch-size`, `--max-workers` for performance.
|
||||
Read [Differences between geth and parity traces.csv](schema.md#differences-between-geth-and-parity-tracescsv)
|
||||
|
||||
The API used in this command is not supported by Infura,
|
||||
so you will need a local Geth archive node (`geth --gcmode archive --syncmode full --ipcapi debug`).
|
||||
so you will need a local Geth archive node (`geth --gcmode archive --syncmode full --txlookuplimit 0`).
|
||||
When using rpc, add `--rpc --rpcapi debug` options.
|
||||
|
||||
```bash
|
||||
@@ -213,7 +213,9 @@ e.g. `-e block,transaction,log,token_transfer,trace,contract,token`.
|
||||
- For Postgres: `--output=postgresql+pg8000://<user>:<password>@<host>:<port>/<database_name>`,
|
||||
e.g. `--output=postgresql+pg8000://postgres:admin@127.0.0.1:5432/ethereum`.
|
||||
- For GCS: `--output=gs://<bucket_name>`. Make sure to install and initialize `gcloud` cli.
|
||||
- For Kafka: `--output=kafka/<host>:<port>`, e.g. `--output=kafka/127.0.0.1:9092`
|
||||
- Those output types can be combined with a comma e.g. `--output=gs://<bucket_name>,projects/<your-project>/topics/crypto_ethereum`
|
||||
|
||||
The [schema](https://github.com/blockchain-etl/ethereum-etl-postgres/tree/master/schema)
|
||||
and [indexes](https://github.com/blockchain-etl/ethereum-etl-postgres/tree/master/indexes) can be found in this
|
||||
repo [ethereum-etl-postgres](https://github.com/blockchain-etl/ethereum-etl-postgres).
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
# Contact
|
||||
|
||||
- [D5 Discord Server](https://discord.gg/wukrezR)
|
||||
- [Telegram Group](https://t.me/joinchat/GsMpbA3mv1OJ6YMp3T5ORQ)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Uploading to Docker Hub
|
||||
|
||||
```bash
|
||||
ETHEREUMETL_VERSION=1.8.0
|
||||
ETHEREUMETL_VERSION=1.11.0
|
||||
docker build -t ethereum-etl:${ETHEREUMETL_VERSION} -f Dockerfile .
|
||||
docker tag ethereum-etl:${ETHEREUMETL_VERSION} blockchainetl/ethereum-etl:${ETHEREUMETL_VERSION}
|
||||
docker push blockchainetl/ethereum-etl:${ETHEREUMETL_VERSION}
|
||||
|
||||
@@ -1,22 +1,21 @@
|
||||
## Exporting the Blockchain
|
||||
|
||||
If you'd like to have blockchain data set up and hosted for you, [get in touch with us at D5](https://d5.ai/?ref=ethereumetl).
|
||||
|
||||
1. Install python 3.5.3+ https://www.python.org/downloads/
|
||||
1. Install python 3.5.3+: [https://www.python.org/downloads/](https://www.python.org/downloads/)
|
||||
|
||||
1. You can use Infura if you don't need ERC20 transfers (Infura doesn't support eth_getFilterLogs JSON RPC method).
|
||||
For that use `-p https://mainnet.infura.io` option for the commands below. If you need ERC20 transfers or want to
|
||||
export the data ~40 times faster, you will need to set up a local Ethereum node:
|
||||
|
||||
1. Install geth https://github.com/ethereum/go-ethereum/wiki/Installing-Geth
|
||||
1. Install geth: [https://github.com/ethereum/go-ethereum/wiki/Installing-Geth](https://github.com/ethereum/go-ethereum/wiki/Installing-Geth)
|
||||
|
||||
1. Start geth.
|
||||
Make sure it downloaded the blocks that you need by executing `eth.syncing` in the JS console.
|
||||
You can export blocks below `currentBlock`,
|
||||
there is no need to wait until the full sync as the state is not needed (unless you also need contracts bytecode
|
||||
and token details; for those you need to wait until the full sync). Note that you may need to wait for another day or
|
||||
two for the node to download the states. See this issue https://github.com/blockchain-etl/ethereum-etl/issues/265#issuecomment-970451522
|
||||
|
||||
two for the node to download the states. See this issue [https://github.com/blockchain-etl/ethereum-etl/issues/265#issuecomment-970451522](https://github.com/blockchain-etl/ethereum-etl/issues/265#issuecomment-970451522).
|
||||
Make sure to set `--txlookuplimit 0` if you use geth.
|
||||
|
||||
1. Install Ethereum ETL: `> pip3 install ethereum-etl`
|
||||
|
||||
1. Export all:
|
||||
@@ -41,7 +40,7 @@ output/token_transfers/start_block=00000000/end_block=00099999/token_transfers_0
|
||||
|
||||
Should work with geth and parity, on Linux, Mac, Windows.
|
||||
If you use Parity you should disable warp mode with `--no-warp` option because warp mode
|
||||
does not place all of the block or receipt data into the database https://wiki.parity.io/Getting-Synced
|
||||
does not place all of the block or receipt data into the database [https://wiki.parity.io/Getting-Synced](https://wiki.parity.io/Getting-Synced)
|
||||
|
||||
If you see weird behavior, e.g. wrong number of rows in the CSV files or corrupted files,
|
||||
check out this issue: https://github.com/medvedev1088/ethereum-etl/issues/28
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Google BiqQuery
|
||||
# Google BigQuery
|
||||
|
||||
## Querying in BigQuery
|
||||
|
||||
@@ -16,4 +16,4 @@ Read [this article](https://medium.com/google-cloud/building-token-recommender-i
|
||||
|
||||
### Awesome BigQuery Views
|
||||
|
||||
https://github.com/blockchain-etl/awesome-bigquery-views
|
||||
[https://github.com/blockchain-etl/awesome-bigquery-views](https://github.com/blockchain-etl/awesome-bigquery-views)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
Ethereum ETL lets you convert blockchain data into convenient formats like CSVs and relational databases.
|
||||
|
||||
With 700+ likes on Github, Ethereum ETL is the most popular open source project for Ethereum data.
|
||||
With 1,700+ likes on GitHub, Ethereum ETL is the most popular open-source project for Ethereum data.
|
||||
|
||||
Data is available for you to query right away in [Google BigQuery](https://goo.gl/oY5BCQ).
|
||||
|
||||
@@ -17,8 +17,31 @@ Easily export:
|
||||
* Receipts
|
||||
* Logs
|
||||
* Contracts
|
||||
* Internal transactions
|
||||
* Internal transactions (traces)
|
||||
|
||||
## Advanced Features
|
||||
|
||||
* Stream blockchain data to Pub/Sub, Postgres, or other destinations in real-time
|
||||
* Filter and transform data using flexible command-line options
|
||||
* Support for multiple Ethereum node providers (Geth, Parity, Infura, etc.)
|
||||
* Handles chain reorganizations through configurable lag
|
||||
* Export data by block range or by date
|
||||
* Scalable architecture with configurable batch sizes and worker counts
|
||||
|
||||
## Use Cases
|
||||
|
||||
* Data analysis and visualization
|
||||
* Machine learning on blockchain data
|
||||
* Building analytics dashboards
|
||||
* Market research and token analysis
|
||||
* Compliance and audit reporting
|
||||
* Academic research on blockchain economics
|
||||
|
||||
## Projects using Ethereum ETL
|
||||
* [Google](https://goo.gl/oY5BCQ) - Public BigQuery Ethereum datasets
|
||||
* [Nansen](https://nansen.ai/?ref=ethereumetl) - Analytics platform for Ethereum
|
||||
* [Nansen](https://nansen.ai/query?ref=ethereumetl) - Analytics platform for Ethereum
|
||||
* [Ethereum Blockchain ETL on GCP](https://cloud.google.com/blog/products/data-analytics/ethereum-bigquery-public-dataset-smart-contract-analytics) - Official Google Cloud reference architecture
|
||||
|
||||
## Getting Started
|
||||
|
||||
Check the [Quickstart](quickstart.md) guide to begin using Ethereum ETL or explore the [Commands](commands.md) page for detailed usage instructions.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
which means `is_erc20` and `is_erc721` will always be false for proxy contracts and they will be missing in the `tokens`
|
||||
table.
|
||||
- The metadata methods (`symbol`, `name`, `decimals`, `total_supply`) for ERC20 are optional, so around 10% of the
|
||||
contracts are missing this data. Also some contracts (EOS) implement these methods but with wrong return type,
|
||||
contracts are missing this data. Also some contracts (EOS) implement these methods but with the wrong return type,
|
||||
so the metadata columns are missing in this case as well.
|
||||
- `token_transfers.value`, `tokens.decimals` and `tokens.total_supply` have type `STRING` in BigQuery tables,
|
||||
because numeric types there can't handle 32-byte integers. You should use
|
||||
@@ -12,4 +12,4 @@ because numeric types there can't handle 32-byte integers. You should use
|
||||
`safe_cast(value as NUMERIC)` (possible overflow) to convert to numbers.
|
||||
- The contracts that don't implement `decimals()` function but have the
|
||||
[fallback function](https://solidity.readthedocs.io/en/v0.4.21/contracts.html#fallback-function) that returns a `boolean`
|
||||
will have `0` or `1` in the `decimals` column in the CSVs.
|
||||
will have `0` or `1` in the `decimals` column in the CSVs.
|
||||
|
||||
@@ -7,5 +7,4 @@
|
||||
- [Introducing six new cryptocurrencies in BigQuery Public Datasets—and how to analyze them](https://cloud.google.com/blog/products/data-analytics/introducing-six-new-cryptocurrencies-in-bigquery-public-datasets-and-how-to-analyze-them)
|
||||
- [Querying the Ethereum Blockchain in Snowflake](https://community.snowflake.com/s/article/Querying-the-Ethereum-Blockchain-in-Snowflake)
|
||||
- [ConsenSys Grants funds third cohort of projects to benefit the Ethereum ecosystem](https://www.cryptoninjas.net/2020/02/17/consensys-grants-funds-third-cohort-of-projects-to-benefit-the-ethereum-ecosystem/)
|
||||
- [Ivan on Tech overviews crypto datasets in BigQuery](https://youtu.be/2IkJBNhsXNY?t=239)
|
||||
- [Unlocking the Power of Google BigQuery (Cloud Next '19)](https://youtu.be/KL_i5XZIaJg?t=131)
|
||||
|
||||
@@ -22,7 +22,11 @@ gas_limit | bigint |
|
||||
gas_used | bigint |
|
||||
timestamp | bigint |
|
||||
transaction_count | bigint |
|
||||
base_fee_per_gas | bigint |
|
||||
base_fee_per_gas | bigint |
|
||||
withdrawals_root | string |
|
||||
withdrawals | string |
|
||||
blob_gas_used | bigint |
|
||||
excess_blob_gas | bigint |
|
||||
|
||||
---
|
||||
|
||||
@@ -45,6 +49,8 @@ block_timestamp | bigint |
|
||||
max_fee_per_gas | bigint |
|
||||
max_priority_fee_per_gas | bigint |
|
||||
transaction_type | bigint |
|
||||
max_fee_per_blob_gas | bigint |
|
||||
blob_versioned_hashes | string |
|
||||
|
||||
---
|
||||
|
||||
@@ -76,6 +82,8 @@ contract_address | address |
|
||||
root | hex_string |
|
||||
status | bigint |
|
||||
effective_gas_price | bigint |
|
||||
blob_gas_price | bigint |
|
||||
blob_gas_used | bigint |
|
||||
|
||||
---
|
||||
|
||||
@@ -116,6 +124,7 @@ symbol | string |
|
||||
name | string |
|
||||
decimals | bigint |
|
||||
total_supply | numeric |
|
||||
block_number | bigint |
|
||||
|
||||
---
|
||||
|
||||
@@ -144,7 +153,7 @@ trace_id | string |
|
||||
|
||||
### Differences between geth and parity traces.csv
|
||||
|
||||
- `to_address` field differs for `callcode` trace (geth seems to return correct value, as parity value of `to_address` is same as `to_address` of parent call);
|
||||
- `to_address` field differs for `callcode` trace (geth seems to return correct value, as parity value of `to_address` is the same as `to_address` of parent call);
|
||||
- geth output doesn't have `reward` traces;
|
||||
- geth output doesn't have `to_address`, `from_address`, `value` for `suicide` traces;
|
||||
- `error` field contains human readable error message, which might differ in geth/parity output;
|
||||
@@ -155,4 +164,4 @@ trace_id | string |
|
||||
You can find column descriptions in [https://github.com/medvedev1088/ethereum-etl-airflow](https://github.com/medvedev1088/ethereum-etl-airflow/tree/master/dags/resources/stages/raw/schemas)
|
||||
|
||||
Note: for the `address` type all hex characters are lower-cased.
|
||||
`boolean` type can have 2 values: `True` or `False`.
|
||||
`boolean` type can have 2 values: `True` or `False`.
|
||||
|
||||
@@ -48,7 +48,7 @@ from ethereumetl.cli.stream import stream
|
||||
|
||||
|
||||
@click.group()
|
||||
@click.version_option(version='1.8.0')
|
||||
@click.version_option(version='2.4.2')
|
||||
@click.pass_context
|
||||
def cli(ctx):
|
||||
pass
|
||||
|
||||
@@ -27,7 +27,7 @@ import re
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from ethereumetl.jobs.export_all_common import export_all_common
|
||||
from ethereumetl.providers.auto import get_provider_from_uri
|
||||
@@ -74,7 +74,7 @@ def get_partitions(start, end, partition_batch_size, provider_uri):
|
||||
day = timedelta(days=1)
|
||||
|
||||
provider = get_provider_from_uri(provider_uri)
|
||||
web3 = Web3(provider)
|
||||
web3 = build_web3(provider)
|
||||
eth_service = EthService(web3)
|
||||
|
||||
while start_date <= end_date:
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
import click
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
from ethereumetl.jobs.export_origin_job import ExportOriginJob
|
||||
@@ -48,7 +48,7 @@ def export_origin(start_block, end_block, batch_size, marketplace_output, shop_o
|
||||
start_block=start_block,
|
||||
end_block=end_block,
|
||||
batch_size=batch_size,
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri))),
|
||||
ipfs_client=get_origin_ipfs_client(),
|
||||
marketplace_listing_exporter=origin_marketplace_listing_item_exporter(marketplace_output),
|
||||
shop_product_exporter=origin_shop_product_item_exporter(shop_output),
|
||||
|
||||
@@ -46,7 +46,7 @@ logging_basic_config()
|
||||
help='The output file for receipts. If not provided receipts will not be exported. Use "-" for stdout')
|
||||
@click.option('--logs-output', default=None, show_default=True, type=str,
|
||||
help='The output file for receipt logs. '
|
||||
'aIf not provided receipt logs will not be exported. Use "-" for stdout')
|
||||
'If not provided receipt logs will not be exported. Use "-" for stdout')
|
||||
@click.option('-c', '--chain', default='ethereum', show_default=True, type=str, help='The chain network to connect to.')
|
||||
def export_receipts_and_logs(batch_size, transaction_hashes, provider_uri, max_workers, receipts_output, logs_output,
|
||||
chain='ethereum'):
|
||||
|
||||
@@ -23,8 +23,9 @@
|
||||
|
||||
import click
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from ethereumetl.csv_utils import set_max_field_size_limit
|
||||
from ethereumetl.jobs.export_token_transfers_job import ExportTokenTransfersJob
|
||||
from ethereumetl.jobs.exporters.token_transfers_item_exporter import token_transfers_item_exporter
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
@@ -45,11 +46,12 @@ logging_basic_config()
|
||||
@click.option('-t', '--tokens', default=None, show_default=True, type=str, multiple=True, help='The list of token addresses to filter by.')
|
||||
def export_token_transfers(start_block, end_block, batch_size, output, max_workers, provider_uri, tokens):
|
||||
"""Exports ERC20/ERC721 transfers."""
|
||||
set_max_field_size_limit()
|
||||
job = ExportTokenTransfersJob(
|
||||
start_block=start_block,
|
||||
end_block=end_block,
|
||||
batch_size=batch_size,
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri))),
|
||||
item_exporter=token_transfers_item_exporter(output),
|
||||
max_workers=max_workers,
|
||||
tokens=tokens)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
import click
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from blockchainetl.file_utils import smart_open
|
||||
from ethereumetl.jobs.export_tokens_job import ExportTokensJob
|
||||
@@ -51,7 +51,7 @@ def export_tokens(token_addresses, output, max_workers, provider_uri, chain='eth
|
||||
with smart_open(token_addresses, 'r') as token_addresses_file:
|
||||
job = ExportTokensJob(
|
||||
token_addresses_iterable=(token_address.strip() for token_address in token_addresses_file),
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri))),
|
||||
item_exporter=tokens_item_exporter(output),
|
||||
max_workers=max_workers)
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
import click
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from ethereumetl.jobs.export_traces_job import ExportTracesJob
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
@@ -57,7 +57,7 @@ def export_traces(start_block, end_block, batch_size, output, max_workers, provi
|
||||
start_block=start_block,
|
||||
end_block=end_block,
|
||||
batch_size=batch_size,
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri, timeout=timeout))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri, timeout=timeout))),
|
||||
item_exporter=traces_item_exporter(output),
|
||||
max_workers=max_workers,
|
||||
include_genesis_traces=genesis_traces,
|
||||
|
||||
@@ -25,6 +25,7 @@ import click
|
||||
import csv
|
||||
import json
|
||||
|
||||
from ethereumetl.csv_utils import set_max_field_size_limit
|
||||
from blockchainetl.file_utils import smart_open
|
||||
from blockchainetl.jobs.exporters.converters.int_to_string_item_converter import IntToStringItemConverter
|
||||
from ethereumetl.jobs.exporters.token_transfers_item_exporter import token_transfers_item_exporter
|
||||
@@ -33,6 +34,7 @@ from blockchainetl.logging_utils import logging_basic_config
|
||||
|
||||
logging_basic_config()
|
||||
|
||||
set_max_field_size_limit()
|
||||
|
||||
@click.command(context_settings=dict(help_option_names=['-h', '--help']))
|
||||
@click.option('-l', '--logs', type=str, required=True, help='The CSV file containing receipt logs.')
|
||||
|
||||
@@ -33,7 +33,7 @@ from ethereumetl.jobs.extract_tokens_job import ExtractTokensJob
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
from ethereumetl.providers.auto import get_provider_from_uri
|
||||
from ethereumetl.thread_local_proxy import ThreadLocalProxy
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
logging_basic_config()
|
||||
|
||||
@@ -59,7 +59,7 @@ def extract_tokens(contracts, provider_uri, output, max_workers, values_as_strin
|
||||
converters = [IntToStringItemConverter(keys=['decimals', 'total_supply'])] if values_as_strings else []
|
||||
job = ExtractTokensJob(
|
||||
contracts_iterable=contracts_iterable,
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri))),
|
||||
max_workers=max_workers,
|
||||
item_exporter=tokens_item_exporter(output, converters))
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
import click
|
||||
|
||||
from datetime import datetime
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from blockchainetl.file_utils import smart_open
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
@@ -47,7 +47,7 @@ def get_block_range_for_date(provider_uri, date, output, chain='ethereum'):
|
||||
"""Outputs start and end blocks for given date."""
|
||||
provider_uri = check_classic_provider_uri(chain, provider_uri)
|
||||
provider = get_provider_from_uri(provider_uri)
|
||||
web3 = Web3(provider)
|
||||
web3 = build_web3(provider)
|
||||
eth_service = EthService(web3)
|
||||
|
||||
start_block, end_block = eth_service.get_block_range_for_date(date)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
import click
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
from blockchainetl.file_utils import smart_open
|
||||
from blockchainetl.logging_utils import logging_basic_config
|
||||
@@ -46,7 +46,7 @@ def get_block_range_for_timestamps(provider_uri, start_timestamp, end_timestamp,
|
||||
"""Outputs start and end blocks for given timestamps."""
|
||||
provider_uri = check_classic_provider_uri(chain, provider_uri)
|
||||
provider = get_provider_from_uri(provider_uri)
|
||||
web3 = Web3(provider)
|
||||
web3 = build_web3(provider)
|
||||
eth_service = EthService(web3)
|
||||
|
||||
start_block, end_block = eth_service.get_block_range_for_timestamps(start_timestamp, end_timestamp)
|
||||
|
||||
@@ -39,7 +39,10 @@ from ethereumetl.thread_local_proxy import ThreadLocalProxy
|
||||
'file://$HOME/Library/Ethereum/geth.ipc or https://mainnet.infura.io')
|
||||
@click.option('-o', '--output', type=str,
|
||||
help='Either Google PubSub topic path e.g. projects/your-project/topics/crypto_ethereum; '
|
||||
'or Postgres connection url e.g. postgresql+pg8000://postgres:admin@127.0.0.1:5432/ethereum. '
|
||||
'or Postgres connection url e.g. postgresql+pg8000://postgres:admin@127.0.0.1:5432/ethereum; '
|
||||
'or GCS bucket e.g. gs://your-bucket-name; '
|
||||
'or kafka, output name and connection host:port e.g. kafka/127.0.0.1:9092 '
|
||||
'or Kinesis, e.g. kinesis://your-data-stream-name'
|
||||
'If not specified will print to console')
|
||||
@click.option('-s', '--start-block', default=None, show_default=True, type=int, help='Start block')
|
||||
@click.option('-e', '--entity-types', default=','.join(EntityType.ALL_FOR_INFURA), show_default=True, type=str,
|
||||
@@ -56,9 +59,7 @@ def stream(last_synced_block_file, lag, provider_uri, output, start_block, entit
|
||||
configure_logging(log_file)
|
||||
configure_signals()
|
||||
entity_types = parse_entity_types(entity_types)
|
||||
validate_entity_types(entity_types, output)
|
||||
|
||||
from ethereumetl.streaming.item_exporter_creator import create_item_exporter
|
||||
from ethereumetl.streaming.eth_streamer_adapter import EthStreamerAdapter
|
||||
from blockchainetl.streaming.streamer import Streamer
|
||||
|
||||
@@ -98,12 +99,6 @@ def parse_entity_types(entity_types):
|
||||
return entity_types
|
||||
|
||||
|
||||
def validate_entity_types(entity_types, output):
|
||||
if output is not None and 'postgres' in output \
|
||||
and (EntityType.CONTRACT in entity_types or EntityType.TOKEN in entity_types):
|
||||
raise ValueError('contract and token are not yet supported entity types for postgres item exporter.')
|
||||
|
||||
|
||||
def pick_random_provider_uri(provider_uri):
|
||||
provider_uris = [uri.strip() for uri in provider_uri.split(',')]
|
||||
return random.choice(provider_uris)
|
||||
|
||||
@@ -40,7 +40,12 @@ class EthBlock(object):
|
||||
self.gas_limit = None
|
||||
self.gas_used = None
|
||||
self.timestamp = None
|
||||
self.withdrawals_root = None
|
||||
|
||||
self.transactions = []
|
||||
self.transaction_count = 0
|
||||
self.base_fee_per_gas = 0
|
||||
self.withdrawals = []
|
||||
|
||||
self.blob_gas_used = None
|
||||
self.excess_blob_gas = None
|
||||
|
||||
@@ -34,3 +34,9 @@ class EthReceipt(object):
|
||||
self.root = None
|
||||
self.status = None
|
||||
self.effective_gas_price = None
|
||||
self.l1_fee = None
|
||||
self.l1_gas_used = None
|
||||
self.l1_gas_price = None
|
||||
self.l1_fee_scalar = None
|
||||
self.blob_gas_price = None
|
||||
self.blob_gas_used = None
|
||||
|
||||
@@ -37,3 +37,5 @@ class EthTransaction(object):
|
||||
self.max_fee_per_gas = None
|
||||
self.max_priority_fee_per_gas = None
|
||||
self.transaction_type = None
|
||||
self.max_fee_per_blob_gas = None
|
||||
self.blob_versioned_hashes = []
|
||||
|
||||
@@ -24,7 +24,7 @@ import logging
|
||||
import time
|
||||
|
||||
from requests.exceptions import Timeout as RequestsTimeout, HTTPError, TooManyRedirects
|
||||
from web3.utils.threads import Timeout as Web3Timeout
|
||||
from web3._utils.threads import Timeout as Web3Timeout
|
||||
|
||||
from ethereumetl.executors.bounded_executor import BoundedExecutor
|
||||
from ethereumetl.executors.fail_safe_executor import FailSafeExecutor
|
||||
|
||||
@@ -44,7 +44,7 @@ class BaseItemExporter(object):
|
||||
self._configure(kwargs)
|
||||
|
||||
def _configure(self, options, dont_fail=False):
|
||||
"""Configure the exporter by poping options from the ``options`` dict.
|
||||
"""Configure the exporter by popping options from the ``options`` dict.
|
||||
If dont_fail is set, it won't raise an exception on unexpected options
|
||||
(useful for using with keyword arguments in subclasses constructors)
|
||||
"""
|
||||
|
||||
@@ -6,7 +6,7 @@ from ethereumetl.ipfs.client import IpfsClient
|
||||
|
||||
logger = logging.getLogger('origin')
|
||||
|
||||
IPFS_PRIMARY_GATEWAY_URL = 'https://ipfs-prod.ogn.app/ipfs'
|
||||
IPFS_PRIMARY_GATEWAY_URL = 'https://cf-ipfs.com/ipfs'
|
||||
IPFS_SECONDARY_GATEWAY_URL = 'https://gateway.ipfs.io/ipfs'
|
||||
|
||||
# Returns an IPFS client that can be used to fetch Origin Protocol's data.
|
||||
@@ -15,7 +15,7 @@ def get_origin_ipfs_client():
|
||||
|
||||
|
||||
# Parses the shop's HTML index page to extract the name of the IPFS directory under
|
||||
# which all the shops data is located.
|
||||
# which all the shop data is located.
|
||||
def _get_shop_data_dir(shop_index_page):
|
||||
match = re.search('<link rel="data-dir" href="(.+?)"', shop_index_page)
|
||||
return match.group(1) if match else None
|
||||
|
||||
@@ -41,7 +41,7 @@ from ethereumetl.jobs.exporters.token_transfers_item_exporter import token_trans
|
||||
from ethereumetl.jobs.exporters.tokens_item_exporter import tokens_item_exporter
|
||||
from ethereumetl.providers.auto import get_provider_from_uri
|
||||
from ethereumetl.thread_local_proxy import ThreadLocalProxy
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
logger = logging.getLogger('export_all')
|
||||
|
||||
@@ -146,7 +146,7 @@ def export_all_common(partitions, output_dir, provider_uri, max_workers, batch_s
|
||||
start_block=batch_start_block,
|
||||
end_block=batch_end_block,
|
||||
batch_size=batch_size,
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri))),
|
||||
item_exporter=token_transfers_item_exporter(token_transfers_file),
|
||||
max_workers=max_workers)
|
||||
job.run()
|
||||
@@ -272,7 +272,7 @@ def export_all_common(partitions, output_dir, provider_uri, max_workers, batch_s
|
||||
with smart_open(token_addresses_file, 'r') as token_addresses:
|
||||
job = ExportTokensJob(
|
||||
token_addresses_iterable=(token_address.strip() for token_address in token_addresses),
|
||||
web3=ThreadLocalProxy(lambda: Web3(get_provider_from_uri(provider_uri))),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(get_provider_from_uri(provider_uri))),
|
||||
item_exporter=tokens_item_exporter(tokens_file),
|
||||
max_workers=max_workers)
|
||||
job.run()
|
||||
|
||||
@@ -43,6 +43,7 @@ class ExportOriginJob(BaseJob):
|
||||
self.receipt_log_mapper = EthReceiptLogMapper()
|
||||
self.marketplace_listing_mapper = OriginMarketplaceListingMapper()
|
||||
self.shop_listing_mapper = OriginShopProductMapper()
|
||||
self._supports_eth_newFilter = True
|
||||
|
||||
|
||||
def _start(self):
|
||||
@@ -94,14 +95,24 @@ class ExportOriginJob(BaseJob):
|
||||
})
|
||||
|
||||
for batch in batches:
|
||||
# https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_getfilterlogs
|
||||
# https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterlogs
|
||||
filter_params = {
|
||||
'address': batch['contract_address'],
|
||||
'fromBlock': batch['from_block'],
|
||||
'toBlock': batch['to_block']
|
||||
}
|
||||
event_filter = self.web3.eth.filter(filter_params)
|
||||
events = event_filter.get_all_entries()
|
||||
if self._supports_eth_newFilter:
|
||||
try:
|
||||
event_filter = self.web3.eth.filter(filter_params)
|
||||
events = event_filter.get_all_entries()
|
||||
except ValueError as e:
|
||||
if str(e) == "{'code': -32000, 'message': 'the method is currently not implemented: eth_newFilter'}":
|
||||
self._supports_eth_newFilter = False
|
||||
events = self.web3.eth.getLogs(filter_params)
|
||||
else:
|
||||
raise(e)
|
||||
else:
|
||||
events = self.web3.eth.getLogs(filter_params)
|
||||
for event in events:
|
||||
log = self.receipt_log_mapper.web3_dict_to_receipt_log(event)
|
||||
listing, shop_products = self.event_extractor.extract_event_from_log(log, batch['contract_version'])
|
||||
@@ -112,9 +123,10 @@ class ExportOriginJob(BaseJob):
|
||||
item = self.shop_listing_mapper.product_to_dict(product)
|
||||
self.shop_product_exporter.export_item(item)
|
||||
|
||||
self.web3.eth.uninstallFilter(event_filter.filter_id)
|
||||
if self._supports_eth_newFilter:
|
||||
self.web3.eth.uninstallFilter(event_filter.filter_id)
|
||||
|
||||
def _end(self):
|
||||
self.batch_work_executor.shutdown()
|
||||
self.marketplace_listing_exporter.close()
|
||||
self.shop_product_exporter.close()
|
||||
self.shop_product_exporter.close()
|
||||
|
||||
@@ -51,6 +51,7 @@ class ExportTokenTransfersJob(BaseJob):
|
||||
self.receipt_log_mapper = EthReceiptLogMapper()
|
||||
self.token_transfer_mapper = EthTokenTransferMapper()
|
||||
self.token_transfer_extractor = EthTokenTransferExtractor()
|
||||
self._supports_eth_newFilter = True
|
||||
|
||||
def _start(self):
|
||||
self.item_exporter.open()
|
||||
@@ -64,7 +65,7 @@ class ExportTokenTransfersJob(BaseJob):
|
||||
|
||||
def _export_batch(self, block_number_batch):
|
||||
assert len(block_number_batch) > 0
|
||||
# https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_getfilterlogs
|
||||
# https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterlogs
|
||||
filter_params = {
|
||||
'fromBlock': block_number_batch[0],
|
||||
'toBlock': block_number_batch[-1],
|
||||
@@ -74,15 +75,23 @@ class ExportTokenTransfersJob(BaseJob):
|
||||
if self.tokens is not None and len(self.tokens) > 0:
|
||||
filter_params['address'] = self.tokens
|
||||
|
||||
event_filter = self.web3.eth.filter(filter_params)
|
||||
events = event_filter.get_all_entries()
|
||||
try:
|
||||
event_filter = self.web3.eth.filter(filter_params)
|
||||
events = event_filter.get_all_entries()
|
||||
except ValueError as e:
|
||||
if str(e) == "{'code': -32000, 'message': 'the method is currently not implemented: eth_newFilter'}":
|
||||
self._supports_eth_newFilter = False
|
||||
events = self.web3.eth.getLogs(filter_params)
|
||||
else:
|
||||
raise(e)
|
||||
for event in events:
|
||||
log = self.receipt_log_mapper.web3_dict_to_receipt_log(event)
|
||||
token_transfer = self.token_transfer_extractor.extract_transfer_from_log(log)
|
||||
if token_transfer is not None:
|
||||
self.item_exporter.export_item(self.token_transfer_mapper.token_transfer_to_dict(token_transfer))
|
||||
|
||||
self.web3.eth.uninstallFilter(event_filter.filter_id)
|
||||
if self._supports_eth_newFilter:
|
||||
self.web3.eth.uninstallFilter(event_filter.filter_id)
|
||||
|
||||
def _end(self):
|
||||
self.batch_work_executor.shutdown()
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
import logging
|
||||
|
||||
from ethereumetl.executors.batch_work_executor import BatchWorkExecutor
|
||||
from blockchainetl.jobs.base_job import BaseJob
|
||||
@@ -89,7 +90,7 @@ class ExportTracesJob(BaseJob):
|
||||
json_traces = self.web3.parity.traceBlock(block_number)
|
||||
|
||||
if json_traces is None:
|
||||
raise ValueError('Response from the node is None. Is the node fully synced?')
|
||||
raise ValueError('Response from the node is None. Is the node fully synced? Is the node started with tracing enabled? Is trace_block API enabled?')
|
||||
|
||||
traces = [self.trace_mapper.json_dict_to_trace(json_trace) for json_trace in json_traces]
|
||||
all_traces.extend(traces)
|
||||
|
||||
@@ -42,7 +42,11 @@ BLOCK_FIELDS_TO_EXPORT = [
|
||||
'gas_used',
|
||||
'timestamp',
|
||||
'transaction_count',
|
||||
'base_fee_per_gas'
|
||||
'base_fee_per_gas',
|
||||
'withdrawals_root',
|
||||
'withdrawals',
|
||||
'blob_gas_used',
|
||||
'excess_blob_gas'
|
||||
]
|
||||
|
||||
TRANSACTION_FIELDS_TO_EXPORT = [
|
||||
@@ -60,7 +64,9 @@ TRANSACTION_FIELDS_TO_EXPORT = [
|
||||
'block_timestamp',
|
||||
'max_fee_per_gas',
|
||||
'max_priority_fee_per_gas',
|
||||
'transaction_type'
|
||||
'transaction_type',
|
||||
'max_fee_per_blob_gas',
|
||||
'blob_versioned_hashes'
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -33,7 +33,13 @@ RECEIPT_FIELDS_TO_EXPORT = [
|
||||
'contract_address',
|
||||
'root',
|
||||
'status',
|
||||
'effective_gas_price'
|
||||
'effective_gas_price',
|
||||
'l1_fee',
|
||||
'l1_gas_used',
|
||||
'l1_gas_price',
|
||||
'l1_fee_scalar',
|
||||
'blob_gas_price',
|
||||
'blob_gas_used'
|
||||
]
|
||||
|
||||
LOG_FIELDS_TO_EXPORT = [
|
||||
|
||||
@@ -53,6 +53,9 @@ class EthBlockMapper(object):
|
||||
block.gas_used = hex_to_dec(json_dict.get('gasUsed'))
|
||||
block.timestamp = hex_to_dec(json_dict.get('timestamp'))
|
||||
block.base_fee_per_gas = hex_to_dec(json_dict.get('baseFeePerGas'))
|
||||
block.withdrawals_root = json_dict.get('withdrawalsRoot')
|
||||
block.blob_gas_used = hex_to_dec(json_dict.get('blobGasUsed'))
|
||||
block.excess_blob_gas = hex_to_dec(json_dict.get('excessBlobGas'))
|
||||
|
||||
if 'transactions' in json_dict:
|
||||
block.transactions = [
|
||||
@@ -63,8 +66,22 @@ class EthBlockMapper(object):
|
||||
|
||||
block.transaction_count = len(json_dict['transactions'])
|
||||
|
||||
if 'withdrawals' in json_dict:
|
||||
block.withdrawals = self.parse_withdrawals(json_dict['withdrawals'])
|
||||
|
||||
return block
|
||||
|
||||
def parse_withdrawals(self, withdrawals):
|
||||
return [
|
||||
{
|
||||
"index": hex_to_dec(withdrawal["index"]),
|
||||
"validator_index": hex_to_dec(withdrawal["validatorIndex"]),
|
||||
"address": withdrawal["address"],
|
||||
"amount": hex_to_dec(withdrawal["amount"]),
|
||||
}
|
||||
for withdrawal in withdrawals
|
||||
]
|
||||
|
||||
def block_to_dict(self, block):
|
||||
return {
|
||||
'type': 'block',
|
||||
@@ -86,5 +103,9 @@ class EthBlockMapper(object):
|
||||
'gas_used': block.gas_used,
|
||||
'timestamp': block.timestamp,
|
||||
'transaction_count': block.transaction_count,
|
||||
'base_fee_per_gas': block.base_fee_per_gas
|
||||
'base_fee_per_gas': block.base_fee_per_gas,
|
||||
'withdrawals_root': block.withdrawals_root,
|
||||
'withdrawals': block.withdrawals,
|
||||
'blob_gas_used': block.blob_gas_used,
|
||||
'excess_blob_gas': block.excess_blob_gas,
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
from ethereumetl.domain.receipt import EthReceipt
|
||||
from ethereumetl.mappers.receipt_log_mapper import EthReceiptLogMapper
|
||||
from ethereumetl.utils import hex_to_dec, to_normalized_address
|
||||
from ethereumetl.utils import hex_to_dec, to_normalized_address, to_float_or_none
|
||||
|
||||
|
||||
class EthReceiptMapper(object):
|
||||
@@ -50,6 +50,13 @@ class EthReceiptMapper(object):
|
||||
|
||||
receipt.effective_gas_price = hex_to_dec(json_dict.get('effectiveGasPrice'))
|
||||
|
||||
receipt.l1_fee = hex_to_dec(json_dict.get('l1Fee'))
|
||||
receipt.l1_gas_used = hex_to_dec(json_dict.get('l1GasUsed'))
|
||||
receipt.l1_gas_price = hex_to_dec(json_dict.get('l1GasPrice'))
|
||||
receipt.l1_fee_scalar = to_float_or_none(json_dict.get('l1FeeScalar'))
|
||||
receipt.blob_gas_price = hex_to_dec(json_dict.get('blobGasPrice'))
|
||||
receipt.blob_gas_used = hex_to_dec(json_dict.get('blobGasUsed'))
|
||||
|
||||
if 'logs' in json_dict:
|
||||
receipt.logs = [
|
||||
self.receipt_log_mapper.json_dict_to_receipt_log(log) for log in json_dict['logs']
|
||||
@@ -69,5 +76,11 @@ class EthReceiptMapper(object):
|
||||
'contract_address': receipt.contract_address,
|
||||
'root': receipt.root,
|
||||
'status': receipt.status,
|
||||
'effective_gas_price': receipt.effective_gas_price
|
||||
'effective_gas_price': receipt.effective_gas_price,
|
||||
'l1_fee': receipt.l1_fee,
|
||||
'l1_gas_used': receipt.l1_gas_used,
|
||||
'l1_gas_price': receipt.l1_gas_price,
|
||||
'l1_fee_scalar': receipt.l1_fee_scalar,
|
||||
'blob_gas_price': receipt.blob_gas_price,
|
||||
'blob_gas_used': receipt.blob_gas_used
|
||||
}
|
||||
|
||||
@@ -43,6 +43,11 @@ class EthTransactionMapper(object):
|
||||
transaction.max_fee_per_gas = hex_to_dec(json_dict.get('maxFeePerGas'))
|
||||
transaction.max_priority_fee_per_gas = hex_to_dec(json_dict.get('maxPriorityFeePerGas'))
|
||||
transaction.transaction_type = hex_to_dec(json_dict.get('type'))
|
||||
transaction.max_fee_per_blob_gas = hex_to_dec(json_dict.get('maxFeePerBlobGas'))
|
||||
|
||||
if 'blobVersionedHashes' in json_dict and isinstance(json_dict['blobVersionedHashes'], list):
|
||||
transaction.blob_versioned_hashes = json_dict['blobVersionedHashes']
|
||||
|
||||
return transaction
|
||||
|
||||
def transaction_to_dict(self, transaction):
|
||||
@@ -62,5 +67,7 @@ class EthTransactionMapper(object):
|
||||
'input': transaction.input,
|
||||
'max_fee_per_gas': transaction.max_fee_per_gas,
|
||||
'max_priority_fee_per_gas': transaction.max_priority_fee_per_gas,
|
||||
'transaction_type': transaction.transaction_type
|
||||
'transaction_type': transaction.transaction_type,
|
||||
"max_fee_per_blob_gas": transaction.max_fee_per_blob_gas,
|
||||
"blob_versioned_hashes": transaction.blob_versioned_hashes
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ import json
|
||||
import socket
|
||||
|
||||
from web3.providers.ipc import IPCProvider
|
||||
from web3.utils.threads import (
|
||||
from web3._utils.threads import (
|
||||
Timeout,
|
||||
)
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
|
||||
from web3 import HTTPProvider
|
||||
from web3.utils.request import make_post_request
|
||||
from web3._utils.request import make_post_request
|
||||
|
||||
|
||||
# Mostly copied from web3.py/providers/rpc.py. Supports batch requests.
|
||||
|
||||
@@ -54,7 +54,7 @@ class EthContractService:
|
||||
c.implements('allowance(address,address)')
|
||||
|
||||
# https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md
|
||||
# https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/token/ERC721/ERC721Basic.sol
|
||||
# https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC721/ERC721.sol
|
||||
# Doesn't check the below ERC721 methods to match CryptoKitties contract
|
||||
# getApproved(uint256)
|
||||
# setApprovalForAll(address,bool)
|
||||
|
||||
@@ -40,7 +40,7 @@ class EthService(object):
|
||||
start_timestamp = int(start_timestamp)
|
||||
end_timestamp = int(end_timestamp)
|
||||
if start_timestamp > end_timestamp:
|
||||
raise ValueError('start_timestamp must be greater or equal to end_timestamp')
|
||||
raise ValueError('start_timestamp must be lesser than end_timestamp')
|
||||
|
||||
try:
|
||||
start_block_bounds = self._graph_operations.get_bounds_for_y_coordinate(start_timestamp)
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
# SOFTWARE.
|
||||
import logging
|
||||
|
||||
from web3.exceptions import BadFunctionCallOutput
|
||||
from web3.exceptions import BadFunctionCallOutput, ContractLogicError
|
||||
|
||||
from ethereumetl.domain.token import EthToken
|
||||
from ethereumetl.erc20_abi import ERC20_ABI, ERC20_ABI_ALTERNATIVE_1
|
||||
@@ -82,7 +82,7 @@ class EthTokenService(object):
|
||||
# OverflowError exception happens if the return type of the function doesn't match the expected type
|
||||
result = call_contract_function(
|
||||
func=func,
|
||||
ignore_errors=(BadFunctionCallOutput, OverflowError, ValueError),
|
||||
ignore_errors=(BadFunctionCallOutput, ContractLogicError, OverflowError, ValueError),
|
||||
default_value=None)
|
||||
|
||||
if self._function_call_result_transformer is not None:
|
||||
|
||||
@@ -40,7 +40,7 @@ class EthTokenTransferExtractor(object):
|
||||
# This is normal, topics can be empty for anonymous events
|
||||
return None
|
||||
|
||||
if topics[0] == TRANSFER_EVENT_TOPIC:
|
||||
if (topics[0]).casefold() == TRANSFER_EVENT_TOPIC:
|
||||
# Handle unindexed event fields
|
||||
topics_with_data = topics + split_to_words(receipt_log.data)
|
||||
# if the number of topics and fields in data part != 4, then it's a weird event
|
||||
|
||||
@@ -76,7 +76,9 @@ def enrich_transactions(transactions, receipts):
|
||||
'block_hash',
|
||||
'max_fee_per_gas',
|
||||
'max_priority_fee_per_gas',
|
||||
'transaction_type'
|
||||
'transaction_type',
|
||||
'max_fee_per_blob_gas',
|
||||
'blob_versioned_hashes'
|
||||
],
|
||||
right_fields=[
|
||||
('cumulative_gas_used', 'receipt_cumulative_gas_used'),
|
||||
@@ -84,7 +86,13 @@ def enrich_transactions(transactions, receipts):
|
||||
('contract_address', 'receipt_contract_address'),
|
||||
('root', 'receipt_root'),
|
||||
('status', 'receipt_status'),
|
||||
('effective_gas_price', 'receipt_effective_gas_price')
|
||||
('effective_gas_price', 'receipt_effective_gas_price'),
|
||||
('l1_fee', 'receipt_l1_fee'),
|
||||
('l1_gas_used', 'receipt_l1_gas_used'),
|
||||
('l1_gas_price', 'receipt_l1_gas_price'),
|
||||
('l1_fee_scalar', 'receipt_l1_fee_scalar'),
|
||||
('blob_gas_price', 'receipt_blob_gas_price'),
|
||||
('blob_gas_used', 'receipt_blob_gas_used')
|
||||
]))
|
||||
|
||||
if len(result) != len(transactions):
|
||||
|
||||
@@ -14,7 +14,7 @@ from ethereumetl.streaming.enrich import enrich_transactions, enrich_logs, enric
|
||||
from ethereumetl.streaming.eth_item_id_calculator import EthItemIdCalculator
|
||||
from ethereumetl.streaming.eth_item_timestamp_calculator import EthItemTimestampCalculator
|
||||
from ethereumetl.thread_local_proxy import ThreadLocalProxy
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
|
||||
class EthStreamerAdapter:
|
||||
@@ -37,7 +37,8 @@ class EthStreamerAdapter:
|
||||
self.item_exporter.open()
|
||||
|
||||
def get_current_block_number(self):
|
||||
return int(Web3(self.batch_web3_provider).eth.getBlock("latest").number)
|
||||
w3 = build_web3(self.batch_web3_provider)
|
||||
return int(w3.eth.getBlock("latest").number)
|
||||
|
||||
def export_all(self, start_block, end_block):
|
||||
# Export blocks and transactions
|
||||
@@ -151,7 +152,7 @@ class EthStreamerAdapter:
|
||||
start_block=start_block,
|
||||
end_block=end_block,
|
||||
batch_size=self.batch_size,
|
||||
web3=ThreadLocalProxy(lambda: Web3(self.batch_web3_provider)),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(self.batch_web3_provider)),
|
||||
max_workers=self.max_workers,
|
||||
item_exporter=exporter
|
||||
)
|
||||
@@ -175,7 +176,7 @@ class EthStreamerAdapter:
|
||||
exporter = InMemoryItemExporter(item_types=['token'])
|
||||
job = ExtractTokensJob(
|
||||
contracts_iterable=contracts,
|
||||
web3=ThreadLocalProxy(lambda: Web3(self.batch_web3_provider)),
|
||||
web3=ThreadLocalProxy(lambda: build_web3(self.batch_web3_provider)),
|
||||
max_workers=self.max_workers,
|
||||
item_exporter=exporter
|
||||
)
|
||||
|
||||
@@ -51,13 +51,22 @@ def create_item_exporter(output):
|
||||
batch_max_latency=2,
|
||||
batch_max_messages=1000,
|
||||
enable_message_ordering=enable_message_ordering)
|
||||
elif item_exporter_type == ItemExporterType.KINESIS:
|
||||
from blockchainetl.jobs.exporters.kinesis_item_exporter import KinesisItemExporter
|
||||
item_exporter = KinesisItemExporter(
|
||||
stream_name=output[len('kinesis://'):],
|
||||
)
|
||||
elif item_exporter_type == ItemExporterType.POSTGRES:
|
||||
from blockchainetl.jobs.exporters.postgres_item_exporter import PostgresItemExporter
|
||||
from blockchainetl.streaming.postgres_utils import create_insert_statement_for_table
|
||||
from blockchainetl.jobs.exporters.converters.unix_timestamp_item_converter import UnixTimestampItemConverter
|
||||
from blockchainetl.jobs.exporters.converters.int_to_decimal_item_converter import IntToDecimalItemConverter
|
||||
from blockchainetl.jobs.exporters.converters.list_field_item_converter import ListFieldItemConverter
|
||||
from ethereumetl.streaming.postgres_tables import BLOCKS, TRANSACTIONS, LOGS, TOKEN_TRANSFERS, TRACES
|
||||
from blockchainetl.jobs.exporters.converters.simple_item_converter import SimpleItemConverter
|
||||
from ethereumetl.streaming.postgres_tables import BLOCKS, TRANSACTIONS, LOGS, TOKEN_TRANSFERS, TRACES, TOKENS, CONTRACTS
|
||||
|
||||
def array_to_str(val):
|
||||
return ','.join(val) if val is not None else None
|
||||
|
||||
item_exporter = PostgresItemExporter(
|
||||
output, item_type_to_insert_stmt_mapping={
|
||||
@@ -66,15 +75,33 @@ def create_item_exporter(output):
|
||||
'log': create_insert_statement_for_table(LOGS),
|
||||
'token_transfer': create_insert_statement_for_table(TOKEN_TRANSFERS),
|
||||
'trace': create_insert_statement_for_table(TRACES),
|
||||
'token': create_insert_statement_for_table(TOKENS),
|
||||
'contract': create_insert_statement_for_table(CONTRACTS),
|
||||
},
|
||||
converters=[UnixTimestampItemConverter(), IntToDecimalItemConverter(),
|
||||
ListFieldItemConverter('topics', 'topic', fill=4)])
|
||||
converters=[
|
||||
UnixTimestampItemConverter(),
|
||||
IntToDecimalItemConverter(),
|
||||
ListFieldItemConverter('topics', 'topic', fill=4),
|
||||
SimpleItemConverter(field_converters={'blob_versioned_hashes': array_to_str})
|
||||
])
|
||||
elif item_exporter_type == ItemExporterType.GCS:
|
||||
from blockchainetl.jobs.exporters.gcs_item_exporter import GcsItemExporter
|
||||
bucket, path = get_bucket_and_path_from_gcs_output(output)
|
||||
item_exporter = GcsItemExporter(bucket=bucket, path=path)
|
||||
elif item_exporter_type == ItemExporterType.CONSOLE:
|
||||
item_exporter = ConsoleItemExporter()
|
||||
elif item_exporter_type == ItemExporterType.KAFKA:
|
||||
from blockchainetl.jobs.exporters.kafka_exporter import KafkaItemExporter
|
||||
item_exporter = KafkaItemExporter(output, item_type_to_topic_mapping={
|
||||
'block': 'blocks',
|
||||
'transaction': 'transactions',
|
||||
'log': 'logs',
|
||||
'token_transfer': 'token_transfers',
|
||||
'trace': 'traces',
|
||||
'contract': 'contracts',
|
||||
'token': 'tokens',
|
||||
})
|
||||
|
||||
else:
|
||||
raise ValueError('Unable to determine item exporter type for output ' + output)
|
||||
|
||||
@@ -95,6 +122,10 @@ def get_bucket_and_path_from_gcs_output(output):
|
||||
def determine_item_exporter_type(output):
|
||||
if output is not None and output.startswith('projects'):
|
||||
return ItemExporterType.PUBSUB
|
||||
if output is not None and output.startswith('kinesis://'):
|
||||
return ItemExporterType.KINESIS
|
||||
if output is not None and output.startswith('kafka'):
|
||||
return ItemExporterType.KAFKA
|
||||
elif output is not None and output.startswith('postgresql'):
|
||||
return ItemExporterType.POSTGRES
|
||||
elif output is not None and output.startswith('gs://'):
|
||||
@@ -107,7 +138,9 @@ def determine_item_exporter_type(output):
|
||||
|
||||
class ItemExporterType:
|
||||
PUBSUB = 'pubsub'
|
||||
KINESIS = 'kinesis'
|
||||
POSTGRES = 'postgres'
|
||||
GCS = 'gcs'
|
||||
CONSOLE = 'console'
|
||||
KAFKA = 'kafka'
|
||||
UNKNOWN = 'unknown'
|
||||
|
||||
@@ -20,7 +20,9 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
from sqlalchemy import Table, Column, Integer, BigInteger, String, Numeric, MetaData, TIMESTAMP
|
||||
from sqlalchemy import Table, Column, Integer, BigInteger, Boolean, String, Numeric, \
|
||||
MetaData, PrimaryKeyConstraint, VARCHAR, TIMESTAMP, Float
|
||||
from sqlalchemy.dialects.postgresql import ARRAY
|
||||
|
||||
metadata = MetaData()
|
||||
|
||||
@@ -47,6 +49,9 @@ BLOCKS = Table(
|
||||
Column('gas_used', BigInteger),
|
||||
Column('transaction_count', BigInteger),
|
||||
Column('base_fee_per_gas', BigInteger),
|
||||
Column('withdrawals_root', String),
|
||||
Column('blob_gas_used', BigInteger),
|
||||
Column('excess_blob_gas', BigInteger),
|
||||
)
|
||||
|
||||
TRANSACTIONS = Table(
|
||||
@@ -72,6 +77,14 @@ TRANSACTIONS = Table(
|
||||
Column('max_priority_fee_per_gas', BigInteger),
|
||||
Column('transaction_type', BigInteger),
|
||||
Column('receipt_effective_gas_price', BigInteger),
|
||||
Column('receipt_l1_fee', BigInteger),
|
||||
Column('receipt_l1_gas_used', BigInteger),
|
||||
Column('receipt_l1_gas_price', BigInteger),
|
||||
Column('receipt_l1_fee_scalar', Float),
|
||||
Column('max_fee_per_blob_gas', BigInteger),
|
||||
Column('blob_versioned_hashes', String),
|
||||
Column('receipt_blob_gas_price', BigInteger),
|
||||
Column('receipt_blob_gas_used', BigInteger),
|
||||
)
|
||||
|
||||
LOGS = Table(
|
||||
@@ -127,4 +140,25 @@ TRACES = Table(
|
||||
Column('trace_id', String, primary_key=True),
|
||||
)
|
||||
|
||||
TOKENS = Table(
|
||||
'tokens', metadata,
|
||||
Column('address', VARCHAR(42)),
|
||||
Column('name', String),
|
||||
Column('symbol', String),
|
||||
Column('decimals', Integer),
|
||||
Column('function_sighashes', ARRAY(String)),
|
||||
Column('total_supply', Numeric(78)),
|
||||
Column('block_number', BigInteger),
|
||||
PrimaryKeyConstraint('address', 'block_number', name='tokens_pk'),
|
||||
)
|
||||
|
||||
CONTRACTS = Table(
|
||||
'contracts', metadata,
|
||||
Column('address', VARCHAR(42)),
|
||||
Column('bytecode', String),
|
||||
Column('function_sighashes', ARRAY(String)),
|
||||
Column('is_erc20', Boolean),
|
||||
Column('is_erc721', Boolean),
|
||||
Column('block_number', BigInteger),
|
||||
PrimaryKeyConstraint('address', 'block_number', name='contracts_pk'),
|
||||
)
|
||||
|
||||
@@ -47,6 +47,16 @@ def to_int_or_none(val):
|
||||
except ValueError:
|
||||
return None
|
||||
|
||||
def to_float_or_none(val):
|
||||
if isinstance(val, float):
|
||||
return val
|
||||
if val is None or val == "":
|
||||
return None
|
||||
try:
|
||||
return float(val)
|
||||
except ValueError:
|
||||
print("can't cast %s to float" % val)
|
||||
return val
|
||||
|
||||
def chunk_string(string, length):
|
||||
return (string[0 + i:length + i] for i in range(0, len(string), length))
|
||||
|
||||
30
ethereumetl/web3_utils.py
Normal file
30
ethereumetl/web3_utils.py
Normal file
@@ -0,0 +1,30 @@
|
||||
# MIT License
|
||||
#
|
||||
# Copyright (c) 2018 Evgeny Medvedev, evge.medvedev@gmail.com
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
from web3 import Web3
|
||||
from web3.middleware import geth_poa_middleware
|
||||
|
||||
|
||||
def build_web3(provider):
|
||||
w3 = Web3(provider)
|
||||
w3.middleware_onion.inject(geth_poa_middleware, layer=0)
|
||||
return w3
|
||||
@@ -16,3 +16,4 @@ nav:
|
||||
- Citing: citing.md
|
||||
theme: readthedocs
|
||||
repo_url: https://github.com/blockchain-etl/ethereum-etl/
|
||||
edit_uri: edit/develop/docs
|
||||
@@ -16,19 +16,11 @@ CREATE EXTERNAL TABLE IF NOT EXISTS blocks (
|
||||
gas_limit BIGINT,
|
||||
gas_used BIGINT,
|
||||
timestamp BIGINT,
|
||||
transaction_count BIGINT
|
||||
transaction_count BIGINT,
|
||||
base_fee_per_gas BIGINT
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/blocks'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
PARTITIONED BY (block_date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
|
||||
LOCATION 's3://<your_bucket>/export/blocks/';
|
||||
|
||||
MSCK REPAIR TABLE blocks;
|
||||
MSCK REPAIR TABLE blocks;
|
||||
|
||||
@@ -5,7 +5,7 @@ CREATE EXTERNAL TABLE IF NOT EXISTS contracts (
|
||||
is_erc20 BOOLEAN,
|
||||
is_erc721 BOOLEAN
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
|
||||
@@ -6,19 +6,10 @@ CREATE EXTERNAL TABLE IF NOT EXISTS logs (
|
||||
block_number BIGINT,
|
||||
address STRING,
|
||||
data STRING,
|
||||
topics STRING
|
||||
topics ARRAY<STRING>
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/logs'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
PARTITIONED BY (block_date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
|
||||
LOCATION 's3://<your_bucket>/export/logs/';
|
||||
|
||||
MSCK REPAIR TABLE logs;
|
||||
|
||||
@@ -7,19 +7,15 @@ CREATE EXTERNAL TABLE IF NOT EXISTS receipts (
|
||||
gas_used BIGINT,
|
||||
contract_address STRING,
|
||||
root STRING,
|
||||
status BIGINT
|
||||
status BIGINT,
|
||||
effective_gas_price BIGINT,
|
||||
l1_fee BIGINT,
|
||||
l1_gas_used BIGINT,
|
||||
l1_gas_price BIGINT,
|
||||
l1_fee_scalar DECIMAL
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/receipts'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
PARTITIONED BY (block_date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
|
||||
LOCATION 's3://<your_bucket>/export/receipts/';
|
||||
|
||||
MSCK REPAIR TABLE receipts;
|
||||
|
||||
@@ -2,22 +2,13 @@ CREATE EXTERNAL TABLE IF NOT EXISTS token_transfers (
|
||||
token_address STRING,
|
||||
from_address STRING,
|
||||
to_address STRING,
|
||||
value DECIMAL(38,0),
|
||||
value STRING,
|
||||
transaction_hash STRING,
|
||||
log_index BIGINT,
|
||||
block_number BIGINT
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/token_transfers'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
PARTITIONED BY (block_date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
|
||||
LOCATION 's3://<your_bucket>/export/token_transfers/';
|
||||
|
||||
MSCK REPAIR TABLE token_transfers;
|
||||
MSCK REPAIR TABLE token_transfers;
|
||||
|
||||
@@ -5,7 +5,7 @@ CREATE EXTERNAL TABLE IF NOT EXISTS tokens (
|
||||
decimals BIGINT,
|
||||
total_supply DECIMAL(38,0)
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
|
||||
@@ -9,19 +9,13 @@ CREATE EXTERNAL TABLE IF NOT EXISTS transactions (
|
||||
value DECIMAL(38,0),
|
||||
gas BIGINT,
|
||||
gas_price BIGINT,
|
||||
input STRING
|
||||
input STRING,
|
||||
max_fee_per_gas BIGINT,
|
||||
max_priority_fee_per_gas BIGINT,
|
||||
transaction_type BIGINT
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/transactions'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
PARTITIONED BY (block_date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
|
||||
LOCATION 's3://<your_bucket>/export/transactions/';
|
||||
|
||||
MSCK REPAIR TABLE transactions;
|
||||
MSCK REPAIR TABLE transactions;
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS blocks (
|
||||
number BIGINT,
|
||||
hash STRING,
|
||||
parent_hash STRING,
|
||||
nonce STRING,
|
||||
sha3_uncles STRING,
|
||||
logs_bloom STRING,
|
||||
transactions_root STRING,
|
||||
state_root STRING,
|
||||
receipts_root STRING,
|
||||
miner STRING,
|
||||
difficulty DECIMAL(38,0),
|
||||
total_difficulty DECIMAL(38,0),
|
||||
size BIGINT,
|
||||
extra_data STRING,
|
||||
gas_limit BIGINT,
|
||||
gas_used BIGINT,
|
||||
timestamp BIGINT,
|
||||
transaction_count BIGINT
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/blocks'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE blocks;
|
||||
@@ -1,21 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS contracts (
|
||||
address STRING,
|
||||
bytecode STRING,
|
||||
function_sighashes STRING,
|
||||
is_erc20 BOOLEAN,
|
||||
is_erc721 BOOLEAN
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/contracts'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE contracts;
|
||||
@@ -1,24 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS logs (
|
||||
log_index BIGINT,
|
||||
transaction_hash STRING,
|
||||
transaction_index BIGINT,
|
||||
block_hash STRING,
|
||||
block_number BIGINT,
|
||||
address STRING,
|
||||
data STRING,
|
||||
topics STRING
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/logs'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE logs;
|
||||
@@ -1,25 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS parquet_blocks (
|
||||
number BIGINT,
|
||||
hash STRING,
|
||||
parent_hash STRING,
|
||||
nonce STRING,
|
||||
sha3_uncles STRING,
|
||||
logs_bloom STRING,
|
||||
transactions_root STRING,
|
||||
state_root STRING,
|
||||
receipts_root STRING,
|
||||
miner STRING,
|
||||
difficulty DECIMAL(38,0),
|
||||
total_difficulty DECIMAL(38,0),
|
||||
size BIGINT,
|
||||
extra_data STRING,
|
||||
gas_limit BIGINT,
|
||||
gas_used BIGINT,
|
||||
timestamp BIGINT,
|
||||
transaction_count BIGINT
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
STORED AS PARQUET
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/parquet/blocks';
|
||||
|
||||
MSCK REPAIR TABLE parquet_blocks;
|
||||
@@ -1,14 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS parquet_token_transfers (
|
||||
token_address STRING,
|
||||
from_address STRING,
|
||||
to_address STRING,
|
||||
value DECIMAL(38,0),
|
||||
transaction_hash STRING,
|
||||
log_index BIGINT,
|
||||
block_number BIGINT
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
STORED AS PARQUET
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/parquet/token_transfers';
|
||||
|
||||
MSCK REPAIR TABLE parquet_token_transfers;
|
||||
@@ -1,18 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS parquet_transactions (
|
||||
hash STRING,
|
||||
nonce BIGINT,
|
||||
block_hash STRING,
|
||||
block_number BIGINT,
|
||||
transaction_index BIGINT,
|
||||
from_address STRING,
|
||||
to_address STRING,
|
||||
value DECIMAL(38,0),
|
||||
gas BIGINT,
|
||||
gas_price BIGINT,
|
||||
input STRING
|
||||
)
|
||||
PARTITIONED BY (start_block BIGINT, end_block BIGINT)
|
||||
STORED AS PARQUET
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/parquet/transactions';
|
||||
|
||||
MSCK REPAIR TABLE parquet_transactions;
|
||||
@@ -1,25 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS receipts (
|
||||
transaction_hash STRING,
|
||||
transaction_index BIGINT,
|
||||
block_hash STRING,
|
||||
block_number BIGINT,
|
||||
cumulative_gas_used BIGINT,
|
||||
gas_used BIGINT,
|
||||
contract_address STRING,
|
||||
root STRING,
|
||||
status BIGINT
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/receipts'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE receipts;
|
||||
@@ -1,23 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS token_transfers (
|
||||
token_address STRING,
|
||||
from_address STRING,
|
||||
to_address STRING,
|
||||
value DECIMAL(38,0),
|
||||
transaction_hash STRING,
|
||||
log_index BIGINT,
|
||||
block_number BIGINT
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/token_transfers'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE token_transfers;
|
||||
@@ -1,21 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS tokens (
|
||||
address STRING,
|
||||
symbol STRING,
|
||||
name STRING,
|
||||
decimals BIGINT,
|
||||
total_supply DECIMAL(38,0)
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/tokens'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE tokens;
|
||||
@@ -1,27 +0,0 @@
|
||||
CREATE EXTERNAL TABLE IF NOT EXISTS transactions (
|
||||
hash STRING,
|
||||
nonce BIGINT,
|
||||
block_hash STRING,
|
||||
block_number BIGINT,
|
||||
transaction_index BIGINT,
|
||||
from_address STRING,
|
||||
to_address STRING,
|
||||
value DECIMAL(38,0),
|
||||
gas BIGINT,
|
||||
gas_price BIGINT,
|
||||
input STRING
|
||||
)
|
||||
PARTITIONED BY (date STRING)
|
||||
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
|
||||
WITH SERDEPROPERTIES (
|
||||
'serialization.format' = ',',
|
||||
'field.delim' = ',',
|
||||
'escape.delim' = '\\'
|
||||
)
|
||||
STORED AS TEXTFILE
|
||||
LOCATION 's3://<your_bucket>/ethereumetl/export/transactions'
|
||||
TBLPROPERTIES (
|
||||
'skip.header.line.count' = '1'
|
||||
);
|
||||
|
||||
MSCK REPAIR TABLE transactions;
|
||||
41
setup.py
41
setup.py
@@ -1,6 +1,6 @@
|
||||
import os
|
||||
|
||||
from setuptools import setup, find_packages
|
||||
from setuptools import find_packages, setup
|
||||
|
||||
|
||||
def read(fname):
|
||||
@@ -11,7 +11,7 @@ long_description = read('README.md') if os.path.isfile("README.md") else ""
|
||||
|
||||
setup(
|
||||
name='ethereum-etl',
|
||||
version='1.8.0',
|
||||
version='2.4.2',
|
||||
author='Evgeny Medvedev',
|
||||
author_email='evge.medvedev@gmail.com',
|
||||
description='Tools for exporting Ethereum blockchain data to CSV or JSON',
|
||||
@@ -24,32 +24,41 @@ setup(
|
||||
'Intended Audience :: Developers',
|
||||
'License :: OSI Approved :: MIT License',
|
||||
'Programming Language :: Python :: 3',
|
||||
'Programming Language :: Python :: 3.5',
|
||||
'Programming Language :: Python :: 3.6',
|
||||
'Programming Language :: Python :: 3.7',
|
||||
'Programming Language :: Python :: 3.8'
|
||||
'Programming Language :: Python :: 3.8',
|
||||
'Programming Language :: Python :: 3.9'
|
||||
],
|
||||
keywords='ethereum',
|
||||
# web3.py doesn't work on 3.5.2 and less (https://github.com/ethereum/web3.py/issues/1012)
|
||||
python_requires='>=3.5.3,<4',
|
||||
python_requires='>=3.7.2,<4',
|
||||
install_requires=[
|
||||
'web3==4.7.2',
|
||||
'eth-utils==1.10.0',
|
||||
'eth-abi==1.3.0',
|
||||
'web3>=5.29,<6',
|
||||
'eth-utils==1.10',
|
||||
'eth-abi>=2.2.0,<3.0.0',
|
||||
# TODO: This has to be removed when "ModuleNotFoundError: No module named 'eth_utils.toolz'" is fixed at eth-abi
|
||||
'python-dateutil==2.8.0',
|
||||
'click==7.1.2',
|
||||
'python-dateutil>=2.8.0,<3',
|
||||
'click>=8.0.4,<9',
|
||||
'ethereum-dasm==0.1.4',
|
||||
'urllib3<2',
|
||||
'base58',
|
||||
'requests',
|
||||
'requests'
|
||||
],
|
||||
extras_require={
|
||||
'streaming': [
|
||||
'timeout-decorator==0.4.1',
|
||||
'google-cloud-pubsub==2.1.0',
|
||||
'google-cloud-pubsub==2.13.0',
|
||||
'google-cloud-storage==1.33.0',
|
||||
'sqlalchemy==1.3.13',
|
||||
'pg8000==1.13.2',
|
||||
'kafka-python==2.0.2',
|
||||
'sqlalchemy==1.4',
|
||||
'pg8000==1.16.6',
|
||||
# This library is a dependency for google-cloud-pubsub, starting from 0.3.22 it requires Rust,
|
||||
# that's why we lock the version here
|
||||
'libcst==0.3.21',
|
||||
# Later versions break the build in Travis CI for Python 3.7.2
|
||||
'grpcio==1.46.3'
|
||||
],
|
||||
'streaming-kinesis': [
|
||||
'boto3==1.24.11',
|
||||
'botocore==1.27.11',
|
||||
],
|
||||
'dev': [
|
||||
'pytest~=4.3.0'
|
||||
|
||||
@@ -21,6 +21,12 @@ def get_web3_provider(provider_type, read_resource_lambda=None, batch=False):
|
||||
provider = BatchHTTPProvider(provider_url)
|
||||
else:
|
||||
provider = HTTPProvider(provider_url)
|
||||
elif provider_type == 'goerli':
|
||||
provider_url = os.environ.get('GOERLI_PROVIDER_URL', 'https://goerli.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c')
|
||||
if batch:
|
||||
provider = BatchHTTPProvider(provider_url)
|
||||
else:
|
||||
provider = HTTPProvider(provider_url)
|
||||
else:
|
||||
raise ValueError('Provider type {} is unexpected'.format(provider_type))
|
||||
return provider
|
||||
|
||||
@@ -36,18 +36,21 @@ def read_resource(resource_group, file_name):
|
||||
return tests.resources.read_resource([RESOURCE_GROUP, resource_group], file_name)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("start_block,end_block,batch_size,resource_group,web3_provider_type", [
|
||||
(0, 0, 1, 'block_without_transactions', 'mock'),
|
||||
(483920, 483920, 1, 'block_with_logs', 'mock'),
|
||||
(47218, 47219, 1, 'blocks_with_transactions', 'mock'),
|
||||
(47218, 47219, 2, 'blocks_with_transactions', 'mock'),
|
||||
skip_if_slow_tests_disabled((0, 0, 1, 'block_without_transactions', 'infura')),
|
||||
skip_if_slow_tests_disabled((483920, 483920, 1, 'block_with_logs', 'infura')),
|
||||
skip_if_slow_tests_disabled((47218, 47219, 2, 'blocks_with_transactions', 'infura')),
|
||||
@pytest.mark.parametrize("start_block,end_block,batch_size,resource_group,web3_provider_type,format", [
|
||||
(0, 0, 1, 'block_without_transactions', 'mock', 'csv'),
|
||||
(483920, 483920, 1, 'block_with_logs', 'mock', 'csv'),
|
||||
(47218, 47219, 1, 'blocks_with_transactions', 'mock', 'csv'),
|
||||
(47218, 47219, 2, 'blocks_with_transactions', 'mock', 'csv'),
|
||||
(19537146, 19537146, 1, 'blocks_with_dencun_transactions', 'mock', 'csv'),
|
||||
skip_if_slow_tests_disabled((0, 0, 1, 'block_without_transactions', 'infura', 'csv')),
|
||||
skip_if_slow_tests_disabled((483920, 483920, 1, 'block_with_logs', 'infura', 'csv')),
|
||||
skip_if_slow_tests_disabled((47218, 47219, 2, 'blocks_with_transactions', 'infura', 'csv')),
|
||||
skip_if_slow_tests_disabled((17173049, 17173050, 2, 'blocks_with_transactions_and_withdrawals', 'infura', 'csv')),
|
||||
skip_if_slow_tests_disabled((17173049, 17173050, 2, 'blocks_with_transactions_and_withdrawals', 'infura', 'json')),
|
||||
])
|
||||
def test_export_blocks_job(tmpdir, start_block, end_block, batch_size, resource_group, web3_provider_type):
|
||||
blocks_output_file = str(tmpdir.join('actual_blocks.csv'))
|
||||
transactions_output_file = str(tmpdir.join('actual_transactions.csv'))
|
||||
def test_export_blocks_job(tmpdir, start_block, end_block, batch_size, resource_group, web3_provider_type, format):
|
||||
blocks_output_file = str(tmpdir.join(f'actual_blocks.{format}'))
|
||||
transactions_output_file = str(tmpdir.join(f'actual_transactions.{format}'))
|
||||
|
||||
job = ExportBlocksJob(
|
||||
start_block=start_block, end_block=end_block, batch_size=batch_size,
|
||||
@@ -62,9 +65,9 @@ def test_export_blocks_job(tmpdir, start_block, end_block, batch_size, resource_
|
||||
job.run()
|
||||
|
||||
compare_lines_ignore_order(
|
||||
read_resource(resource_group, 'expected_blocks.csv'), read_file(blocks_output_file)
|
||||
read_resource(resource_group, f'expected_blocks.{format}'), read_file(blocks_output_file)
|
||||
)
|
||||
|
||||
compare_lines_ignore_order(
|
||||
read_resource(resource_group, 'expected_transactions.csv'), read_file(transactions_output_file)
|
||||
read_resource(resource_group, f'expected_transactions.{format}'), read_file(transactions_output_file)
|
||||
)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
import pytest
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
import tests.resources
|
||||
from ethereumetl.jobs.export_geth_traces_job import ExportGethTracesJob
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import pytest
|
||||
import tests.resources
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
import tests.resources
|
||||
|
||||
@@ -35,7 +35,7 @@ def test_export_origin(tmpdir, start_block, end_block, batch_size, output_format
|
||||
end_block=end_block,
|
||||
batch_size=batch_size,
|
||||
web3=ThreadLocalProxy(
|
||||
lambda: Web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
lambda: build_web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
),
|
||||
ipfs_client=ipfs_client,
|
||||
marketplace_listing_exporter=origin_marketplace_listing_item_exporter(marketplace_output_file),
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
|
||||
import pytest
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
import tests.resources
|
||||
from ethereumetl.jobs.export_token_transfers_job import ExportTokenTransfersJob
|
||||
@@ -47,7 +47,7 @@ def test_export_token_transfers_job(tmpdir, start_block, end_block, batch_size,
|
||||
job = ExportTokenTransfersJob(
|
||||
start_block=start_block, end_block=end_block, batch_size=batch_size,
|
||||
web3=ThreadLocalProxy(
|
||||
lambda: Web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
lambda: build_web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
),
|
||||
item_exporter=token_transfers_item_exporter(output_file),
|
||||
max_workers=5
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
|
||||
import pytest
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
import tests.resources
|
||||
from ethereumetl.jobs.export_tokens_job import ExportTokensJob
|
||||
@@ -51,7 +51,7 @@ def test_export_tokens_job(tmpdir, token_addresses, resource_group, web3_provide
|
||||
job = ExportTokensJob(
|
||||
token_addresses_iterable=token_addresses,
|
||||
web3=ThreadLocalProxy(
|
||||
lambda: Web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
lambda: build_web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
),
|
||||
item_exporter=tokens_item_exporter(output_file),
|
||||
max_workers=5
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
import pytest
|
||||
|
||||
from web3 import Web3
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
|
||||
import tests.resources
|
||||
from ethereumetl.jobs.export_traces_job import ExportTracesJob
|
||||
@@ -51,7 +51,7 @@ def test_export_traces_job(tmpdir, start_block, end_block, resource_group, web3_
|
||||
job = ExportTracesJob(
|
||||
start_block=start_block, end_block=end_block, batch_size=1,
|
||||
web3=ThreadLocalProxy(
|
||||
lambda: Web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
lambda: build_web3(get_web3_provider(web3_provider_type, lambda file: read_resource(resource_group, file)))
|
||||
),
|
||||
max_workers=5,
|
||||
item_exporter=traces_item_exporter(traces_output_file),
|
||||
|
||||
@@ -27,6 +27,7 @@ from web3 import HTTPProvider, Web3
|
||||
|
||||
from ethereumetl.service.eth_service import EthService
|
||||
from ethereumetl.service.graph_operations import OutOfBoundsError
|
||||
from ethereumetl.web3_utils import build_web3
|
||||
from tests.helpers import skip_if_slow_tests_disabled
|
||||
|
||||
|
||||
@@ -76,5 +77,5 @@ def test_get_block_range_for_timestamps_fail(start_timestamp, end_timestamp):
|
||||
|
||||
def get_new_eth_service():
|
||||
provider_url = os.environ.get('PROVIDER_URL', 'https://mainnet.infura.io/v3/7aef3f0cd1f64408b163814b22cc643c')
|
||||
web3 = Web3(HTTPProvider(provider_url))
|
||||
web3 = build_web3(HTTPProvider(provider_url))
|
||||
return EthService(web3)
|
||||
|
||||
@@ -45,6 +45,8 @@ def read_resource(resource_group, file_name):
|
||||
skip_if_slow_tests_disabled([1755634, 1755635, 1, 'blocks_1755634_1755635', EntityType.ALL_FOR_INFURA, 'infura']),
|
||||
(508110, 508110, 1, 'blocks_508110_508110', ['trace', 'contract', 'token'], 'mock'),
|
||||
(2112234, 2112234, 1, 'blocks_2112234_2112234', ['trace', 'contract', 'token'], 'mock'),
|
||||
skip_if_slow_tests_disabled([17173049, 17173050, 1, 'blocks_17173049_17173050', EntityType.ALL_FOR_INFURA, 'infura']),
|
||||
skip_if_slow_tests_disabled([19528783, 19528783, 1, 'blocks_19528783_19528783', EntityType.ALL_FOR_INFURA, 'infura']),
|
||||
])
|
||||
def test_stream(tmpdir, start_block, end_block, batch_size, resource_group, entity_types, provider_type):
|
||||
try:
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas
|
||||
483920,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,0x2610dc6eb941f4bcbddfd2362b999087ccd956e978f0ece4f8da96851283a2ba,0x57a633e01197dc86,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000800000000000000000000000000000800000000000000000000000000000008000000000000000000000000000000000000021000000080000000004000008000000000000000000000400000000000000000000000000000000400000000000000000000000000000000000000010000000000000000000000000000000000000000400000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000010000000000000000000000000000000000000000000000004000000000000000000000000000000000000040080000,0x2744d46ab0647ed91a9bbd08e19d3bb67491067e8cbe04a276ad2afde5ecd65e,0x48b17dd0031aa97d748a886c912539de22997e861d631fd1eb6509fbabef9651,0xada95dd1e1590fe095e67c58f41d633193b238e0e0c588de46682db595738f0b,0x52bc44d5378309ee2abf1539bf71de1b7d7be3b5,7298514125186,2571481026230204460,1113,0xd783010203844765746887676f312e342e32856c696e7578,3141592,143706,1446561880,4,
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas,withdrawals_root,withdrawals,blob_gas_used,excess_blob_gas
|
||||
483920,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,0x2610dc6eb941f4bcbddfd2362b999087ccd956e978f0ece4f8da96851283a2ba,0x57a633e01197dc86,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000800000000000000000000000000000800000000000000000000000000000008000000000000000000000000000000000000021000000080000000004000008000000000000000000000400000000000000000000000000000000400000000000000000000000000000000000000010000000000000000000000000000000000000000400000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000010000000000000000000000000000000000000000000000004000000000000000000000000000000000000040080000,0x2744d46ab0647ed91a9bbd08e19d3bb67491067e8cbe04a276ad2afde5ecd65e,0x48b17dd0031aa97d748a886c912539de22997e861d631fd1eb6509fbabef9651,0xada95dd1e1590fe095e67c58f41d633193b238e0e0c588de46682db595738f0b,0x52bc44d5378309ee2abf1539bf71de1b7d7be3b5,7298514125186,2571481026230204460,1113,0xd783010203844765746887676f312e342e32856c696e7578,3141592,143706,1446561880,4,,,,,
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
hash,nonce,block_hash,block_number,transaction_index,from_address,to_address,value,gas,gas_price,input,block_timestamp,max_fee_per_gas,max_priority_fee_per_gas,transaction_type
|
||||
0x04cbcb236043d8fb7839e07bbc7f5eed692fb2ca55d897f1101eac3e3ad4fab8,12,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,0,0x1b63142628311395ceafeea5667e7c9026c862ca,0xf4eced2f682ce333f96f2d8966c613ded8fc95dd,0,150853,50000000000,0xa9059cbb000000000000000000000000ac4df82fe37ea2187bc8c011a23d743b4f39019a00000000000000000000000000000000000000000000000000000000000186a0,1446561880,,,
|
||||
0xcea6f89720cc1d2f46cc7a935463ae0b99dd5fad9c91bb7357de5421511cee49,84,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,1,0x9b22a80d5c7b3374a05b446081f97d0a34079e7f,0xf4eced2f682ce333f96f2d8966c613ded8fc95dd,0,150853,50000000000,0xa9059cbb00000000000000000000000066f183060253cfbe45beff1e6e7ebbe318c81e560000000000000000000000000000000000000000000000000000000000030d40,1446561880,,,
|
||||
0x463d53f0ad57677a3b430a007c1c31d15d62c37fab5eee598551697c297c235c,88,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,2,0x9df428a91ff0f3635c8f0ce752933b9788926804,0x9e669f970ec0f49bb735f20799a7e7c4a1c274e2,11000440000000000,90000,50000000000,0x,1446561880,,,
|
||||
0x05287a561f218418892ab053adfb3d919860988b19458c570c5c30f51c146f02,20085,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,3,0x2a65aca4d5fc5b5c859090a6c34d164135398226,0x743b8aeedc163c0e3a0fe9f3910d146c48e70da8,1530219620000000000,90000,50000000000,0x,1446561880,,,
|
||||
hash,nonce,block_hash,block_number,transaction_index,from_address,to_address,value,gas,gas_price,input,block_timestamp,max_fee_per_gas,max_priority_fee_per_gas,transaction_type,max_fee_per_blob_gas,blob_versioned_hashes
|
||||
0x04cbcb236043d8fb7839e07bbc7f5eed692fb2ca55d897f1101eac3e3ad4fab8,12,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,0,0x1b63142628311395ceafeea5667e7c9026c862ca,0xf4eced2f682ce333f96f2d8966c613ded8fc95dd,0,150853,50000000000,0xa9059cbb000000000000000000000000ac4df82fe37ea2187bc8c011a23d743b4f39019a00000000000000000000000000000000000000000000000000000000000186a0,1446561880,,,0,,
|
||||
0xcea6f89720cc1d2f46cc7a935463ae0b99dd5fad9c91bb7357de5421511cee49,84,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,1,0x9b22a80d5c7b3374a05b446081f97d0a34079e7f,0xf4eced2f682ce333f96f2d8966c613ded8fc95dd,0,150853,50000000000,0xa9059cbb00000000000000000000000066f183060253cfbe45beff1e6e7ebbe318c81e560000000000000000000000000000000000000000000000000000000000030d40,1446561880,,,0,,
|
||||
0x463d53f0ad57677a3b430a007c1c31d15d62c37fab5eee598551697c297c235c,88,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,2,0x9df428a91ff0f3635c8f0ce752933b9788926804,0x9e669f970ec0f49bb735f20799a7e7c4a1c274e2,11000440000000000,90000,50000000000,0x,1446561880,,,0,,
|
||||
0x05287a561f218418892ab053adfb3d919860988b19458c570c5c30f51c146f02,20085,0x246edb4b351d93c27926f4649bcf6c24366e2a7c7c718dc9158eea20c03bc6ae,483920,3,0x2a65aca4d5fc5b5c859090a6c34d164135398226,0x743b8aeedc163c0e3a0fe9f3910d146c48e70da8,1530219620000000000,90000,50000000000,0x,1446561880,,,0,,
|
||||
|
||||
|
@@ -43,6 +43,7 @@
|
||||
"standardV": "0x0",
|
||||
"to": "0xf4eced2f682ce333f96f2d8966c613ded8fc95dd",
|
||||
"transactionIndex": "0x0",
|
||||
"type": "0x0",
|
||||
"v": "0x1b",
|
||||
"value": "0x0"
|
||||
},
|
||||
@@ -65,6 +66,7 @@
|
||||
"standardV": "0x1",
|
||||
"to": "0xf4eced2f682ce333f96f2d8966c613ded8fc95dd",
|
||||
"transactionIndex": "0x1",
|
||||
"type": "0x0",
|
||||
"v": "0x1c",
|
||||
"value": "0x0"
|
||||
},
|
||||
@@ -87,6 +89,7 @@
|
||||
"standardV": "0x1",
|
||||
"to": "0x9e669f970ec0f49bb735f20799a7e7c4a1c274e2",
|
||||
"transactionIndex": "0x2",
|
||||
"type": "0x0",
|
||||
"v": "0x1c",
|
||||
"value": "0x2714d78692b000"
|
||||
},
|
||||
@@ -109,6 +112,7 @@
|
||||
"standardV": "0x0",
|
||||
"to": "0x743b8aeedc163c0e3a0fe9f3910d146c48e70da8",
|
||||
"transactionIndex": "0x3",
|
||||
"type": "0x0",
|
||||
"v": "0x1b",
|
||||
"value": "0x153c6ea30e6ee800"
|
||||
}
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas
|
||||
0,0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3,0x0000000000000000000000000000000000000000000000000000000000000000,0x0000000000000042,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421,0xd7f8974fb5ac78d9ac099b9ad5018bedc2ce0a72dad1827a1709da30580f0544,0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421,0x0000000000000000000000000000000000000000,17179869184,17179869184,540,0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa,5000,0,0,0,
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas,withdrawals_root,withdrawals,blob_gas_used,excess_blob_gas
|
||||
0,0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3,0x0000000000000000000000000000000000000000000000000000000000000000,0x0000000000000042,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421,0xd7f8974fb5ac78d9ac099b9ad5018bedc2ce0a72dad1827a1709da30580f0544,0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421,0x0000000000000000000000000000000000000000,17179869184,17179869184,540,0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa,5000,0,0,0,,,,,
|
||||
|
||||
|
@@ -0,0 +1,2 @@
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas,withdrawals_root,withdrawals,blob_gas_used,excess_blob_gas
|
||||
19537146,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,0x847079e3806831b02da236bc0817a729cdf3752d1264523230b4928240426c4d,0x0000000000000000,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x78e368c169a0233f1afa43269e995a853c45c21c5ddd7041ab3d19da197aac9d46900d2ae60baa8187073d127e1c3396e2dda6259eeae83c81483e43d0ea6a70d040aa0f7d0c18ef79f6443fa32cc2ffcdac1e0357462c627114fcb3a62697c5d714e8110ff444f1a44ce15461052e7de4d94fc38d9987fcd7d82ed93a0a0c1b1c065ad6c386d9cc814ff3744b2b4cc41497d903bd3d121f576cc06a5bf1893c7e90d3465353efdb4ab354c5a9566fceb4a596a5e0317cccee5c262aa880ac65ebc23f93242689e8c1c1df57cd4ff6bb9e4824bb4d4c899a63a4487bc1f86b643078ad4f2ada6230db2d098d76c89e04eae8d9bb2f76fa6df1ab2d31380f56fd,0xa3127b4fa2caabad009e9cd351b6cd64803585a017950e48189bdf4675374a40,0x6a8317f54f03679ad9b4d911db52cff4ff2f59eb2bb8d0ddcf15ca10e337227c,0x808e58559360e74a16782e909e0863c25d0d386df2aac048587c1dc15d279566,0x4838b106fce9647bdf1e7877bf73ce8b0bad5f97,0,58750003716598352816469,54072,0x546974616e2028746974616e6275696c6465722e78797a29,30000000,13743935,1711684859,164,23650844713,0x2a5defc36c775b5584b838a8809bbba0cce325f03fbabe286c9b176804df0786,"{""index"":40034966,""validator_index"":1089499,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18082404},{""index"":40034967,""validator_index"":1089500,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18056145},{""index"":40034968,""validator_index"":1089501,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18112607},{""index"":40034969,""validator_index"":1089502,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18039251},{""index"":40034970,""validator_index"":1089503,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18166026},{""index"":40034971,""validator_index"":1089504,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18101585},{""index"":40034972,""validator_index"":1089505,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":17984729},{""index"":40034973,""validator_index"":1089506,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18106463},{""index"":40034974,""validator_index"":1089507,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18165291},{""index"":40034975,""validator_index"":1089508,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18066624},{""index"":40034976,""validator_index"":1089509,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18121979},{""index"":40034977,""validator_index"":1089510,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18092740},{""index"":40034978,""validator_index"":1089511,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18160917},{""index"":40034979,""validator_index"":1089512,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18148794},{""index"":40034980,""validator_index"":1089513,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18137511},{""index"":40034981,""validator_index"":1089514,""address"":""0xc7c69e3f9bca6d935b7b8c1b4f170dc9cd658713"",""amount"":18050602}",786432,78381056
|
||||
|
@@ -0,0 +1,165 @@
|
||||
hash,nonce,block_hash,block_number,transaction_index,from_address,to_address,value,gas,gas_price,input,block_timestamp,max_fee_per_gas,max_priority_fee_per_gas,transaction_type,max_fee_per_blob_gas,blob_versioned_hashes
|
||||
0xd3e01b029507878490a13a691b760652293ec2a94c28beeadc5c222ded03c89f,453190,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,0,0x77ad3a15b78101883af36ad4a875e17c86ac65d1,0x00000000a991c429ee2ec6df19d40fe0c80088b8,941368520,142957,23650844713,0x3dfa3ec5be99a02c6857f9eac67bbce58df5572498f40c0aa76ba8,1711684859,23650844713,0,2,,
|
||||
0x3885833a0537aef469e21389bd9aaafd6230b333e4f11f231fe95fe8dde11d65,1947,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,1,0xda3acd82436ed4845834904152d8c005ed4dfed3,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,9000000000000000000,178794,25650844713,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063f4700000000000000000000000000000000000000000000000000000000000000020b080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000007ce66c50e2840000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000007ce66c50e28400000000000000000000000000000000000000000000000000000000178696d6e54500000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000d46ba6d942050d489dbd938a2c909a5d5039a161,1711684859,37129021667,2000000000,2,,
|
||||
0x39475ce2790fca0d6f4d2c29072c74b52610d1c60f1dab92b360d53e322c86d9,453191,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,2,0x77ad3a15b78101883af36ad4a875e17c86ac65d1,0x00000000a991c429ee2ec6df19d40fe0c80088b8,946163187,128056,214814096178,0xb0fa3ed46ba6d942050d489dbd938a2c909a5d5039a1610aa76ba5,1711684859,214814096178,191163251465,2,,
|
||||
0xcce13e265b664740a081f1159d5aefbfc7d4b4dfa7771dd1b8209bc0b4855522,175,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,3,0x5538070e889c0a517a306f93ac3343a737b4802d,0x3328f7f4a1d1c57c35df56bbf0c9dcafca309c49,0,503994,78650844713,0x75713a0800000000000000000000000069c20d3fa3aa0c9af173b66b83394d7e85756969000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000ebbe19efd88b5630bb296d1fa4121bd2bc2177b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c465cc50b7d5a29b9308968f870a4b242a8e187300000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002300000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000066063cfb0000000000000000000000000000000000000000000000000000000000000000,1711684859,83650844713,55000000000,2,,
|
||||
0xd8e84c0cbf5d79274adfd2ee67ab59970dbc453ee51bcd232b2dcbdab06e0847,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,4,0x7be7b0c2a0f134b166f03ef4a5c0d3a3b51fcee8,0x7be7b0c2a0f134b166f03ef4a5c0d3a3b51fcee8,0,21000,33650844713,0x,1711684859,200000000000,10000000000,2,,
|
||||
0x6654b18398194d78c0205c32464cbc21feea6418a200d3ff5cd16c4770931431,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,5,0x42a30fdfeff6eeece2df6a71d968625c3d6d3b66,0xf3de3c0d654fda23dad170f0f320a92172509127,3792068573500000,182173,31158500000,0x9871efa40000000000000000000187cf0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d6e85099626ac0000000000000000000000000000000000000000004bb768d1e636f9ee02ff990000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000130000000000000003b6d034042c2b823b358ad7617ac2de094400c26fa437f973ca20afc2aaa00000000001e96c195f6643a3d797cb90cb6ba0ae2776d51b5f3,1711684859,31158500000,31158500000,2,,
|
||||
0x950c6b6bb9a4e44c5cadc25731a956660bc585191e5d72f974b5d02a6770b573,6,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,6,0x19c8b24e1652df2e34e3d967bb0a245a4c7cac26,0x7c2e7d588346d90094ee95d22b68e94ecef71eb5,11817087880720902,21000,30103217333,0x,1711684859,30103217333,30103217333,2,,
|
||||
0x065870ef06bd081db10fcd770fa049957e1e83ea5400e9d91a0f2ee9cd51497d,4292,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,7,0xfc7a552fb07e83fe74b91638505a0b5bdb3e1d00,0xd37bbe5744d730a1d98d8dc97c42f0ca46ad7146,0,86462,30000000000,0x574da7170000000000000000000000004e73560f31d42e9fc2da324322c3962eb73a0d55000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000003f68f1fd000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000444f55543a4330434542324241463533363534323831344142433830424244434244423938424639344544354131383531363731453730373933394541363132313636414300000000000000000000000000000000000000000000000000000000,1711684859,,,0,,
|
||||
0xbb40db5327a19d97f8c47af61121a212cdb6b5ad96051dffb53ab26b072547b7,6,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,8,0xc09908a6b2c10e337365adc46d8ace8a4870007f,0xdac17f958d2ee523a2206206994597c13d831ec7,0,110400,29000000000,0xa9059cbb0000000000000000000000003d48af972d916a0551b6020f4b416cc081d37c9600000000000000000000000000000000000000000000000000000002964467c0,1711684859,,,0,,
|
||||
0x5ea5a70c66b2a9b2cb4b33f9929bffd395bbabdba424faafda9e9eb7b001096b,25079,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,9,0x43b603d4cdaed3dfa30855c9e354e300094a0a2d,0xdac17f958d2ee523a2206206994597c13d831ec7,0,64043,28650844713,0xa9059cbb0000000000000000000000007e9d81e133e44b15740c6e48901f80dbc1eb4ff70000000000000000000000000000000000000000000000000000000001e72d9e,1711684859,35080323460,5000000000,2,,
|
||||
0x51f55eb4adc0230f1d309c178888e8a46864d8e6c1662481c3936e84c5aaa93b,22625,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,10,0xfb183eb452cee258c7e429610cb7d9e2a5fa68ff,0xdac17f958d2ee523a2206206994597c13d831ec7,0,100000,28650844713,0xa9059cbb000000000000000000000000bc03144895f084d92a735fc437b4223eb536e9e60000000000000000000000000000000000000000000000000000000253ec1e06,1711684859,35080323460,5000000000,2,,
|
||||
0xbfff30905167d31bc86ca351dd6d9c265855ce780674b0112dcb61e827f5cfab,210232,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,11,0xb8ff877ed78ba520ece21b1de7843a8a57ca47cb,0x5a54fe5234e811466d5366846283323c954310b2,0,1778896,28104417337,0x6c459a280000000000000000000000004d73adb72bc3dd368966edd0f0b2148401a178e20000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000006606914f00000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000084704316e500000000000000000000000000000000000000000000000000000000000000d936085dd7aa257ff2b19cc2a69ff7301810128ef80d4b804213f1e9596391f82c000000000000000000000000000000000000000000000000000000000000000536085dd7aa257ff2b19cc2a69ff7301810128ef80d4b804213f1e9596391f82c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008206ff5e72d7b12e9ddda5fe09e76f889680376969b14d0cfc663fafd99ce269d27d5c44da6dec344ea535d122497cdbd21755d0b028fb78a873f43ffd8da7cfbd1c2f3f1ee2eaedebf555d49e3919a231c85df41b12ac9190501604497d7e8570b80460d459cdf53123af911a7484596c9f1e0f7b87de3145f62e72b99350e2ceca1b000000000000000000000000000000000000000000000000000000000000,1711684859,,,0,,
|
||||
0x896c21201ea95e5ea295bd432ae37f1a56e4f58b661047fd8e68c547d870d2d0,190614,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,12,0x2fc617e933a52713247ce25730f6695920b3befe,0x518bc8f390d5b0fece6f079d36ca7ab111c9d21e,154634000000000000,27300,26650844714,0x,1711684859,44128197308,3000000001,2,,
|
||||
0xf5a0cf415fc70379059fa1bd54192028c801755da4582ab0ea7f51912b6103bd,861,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,13,0xc914824871b0d09ae86b92efcc031e2434751191,0x80a64c6d7f12c47b7c66c5b4e20e72bc1fcd5d9e,100000000000000000,270957,26650844713,0xb6f9de9500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000c914824871b0d09ae86b92efcc031e24347511910000000000000000000000000000000000000000000000000000000066063d080000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000069c20d3fa3aa0c9af173b66b83394d7e85756969,1711684859,32933100340,3000000000,2,,
|
||||
0xfd4d2512adef2c3631746b323d154b2a347816dee0738e73390aa632dd9169ec,19601,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,14,0x406b5707c7436720fe93bfa12f9751f872f4a56e,0x8571c129f335832f6bbc76d49414ad2b8371a422,0,282654,25903186028,0xe9383a6800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000004a000000000000000000000000000000000000000000000000000000002cb4178000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009bc8430b2577b5a268bb3c5c020000000000000000000000008571c129f335832f6bbc76d49414ad2b8371a42266063cd70000b401045d0000000000000000681330479e032f67a4f442b0e17f000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000007b13b58ac5be96a6154530760ae62af702b8995000000000000000000000000008b067ad41e45babe5bbb52fc2fe7f692f628b06000000000000000000000000a88800cd213da5ae406ce248380802bd53b4764700000000000000000000000000000000000000000000000000000002cb4178000000000000000000000000000000000000000000000000002e742a991cae57410000013800000124000001240000012400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001efbfa75143000000000000000000000000000000000000000000000000000000a800000024000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a863592c2b0000000000000000000000000000000000000000000000000000000066063d98bf15fcd80000000000000000000000005e92d4021e49f9a2967b4ea1d20213b3a1c7c91200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000004020247080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008b067ad41e45babe5bbb52fc2fe7f692f628b06006c0068cf001800c49d000000000b8a49d816cc709b6eadb09498030ae3416b66dc00000000874d26f8f5dd55ee1a4167c49965b991c1c9530a00000000d1742b3c4fbb096990c8950fa635aec75b30781a00000000ad3b67bca8935cb510c8d18bd45f0b94f54a968f000000008571c129f335832f6bbc76d49414ad2b8371a42200000000f14f17989790a2116fc0a59ca88d5813e693528f00000000d14699b6b02e900a5c2338700d5181a674fdb9a2ffffffff3a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040dfed9cf38a956930fc0e3b535bd4f3ee22a3ca3f39c30cb66b3100fa3322f9c10fef67785a88f3781f93464a9d29186c466354adfcd1ecbf9a8304ada22d261300000000000000000000000000000000000000000000000000000000000000a9a88800cd213da5ae406ce248380802bd53b47647018571c129f335832f6bbc76d49414ad2b8371a422000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000002cb4178000000000000000000000000000000000000000000000000002eaceac0e90293bd0000000000000000000000000000000000000000000000,1711684859,25903186028,25903186028,2,,
|
||||
0x12b3ec14b3af29f2875ebdbf2b653d8b69f37cb8a231148a2ab2df3ec5e424a4,11,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,15,0x57e73979ce70e2fb2145161b9b52a008a667e79b,0xff742d05420b6aca4481f635ad8341f81a6300c2,0,38200,25762382559,0xa9059cbb000000000000000000000000983873529f95132bd1812a3b52c98fb271d2f6790000000000000000000000000000000000000000000004db0d31202e2bcd4000,1711684859,,,0,,
|
||||
0xafbe37a955f25a06352d97cb48f91321daa79893866d7d2175119f8841bc372d,2727,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,16,0xb7580490a51d3f48d451ba5f2dd79a835d266015,0xc221b7e65ffc80de234bbb6667abdd46593d34f0,0,42241,25651844713,0xa9059cbb000000000000000000000000f0bc8fddb1f358cef470d63f96ae65b1d7914953000000000000000000000000000000000000000000000a968163f0a57b400000,1711684859,29218820637,2001000000,2,,
|
||||
0xac253179c9cc7fc62baaec909327fefd33a8ee929e6100487e2f8609c3f9660e,245391,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,17,0xab782bc7d4a2b306825de5a7730034f8f63ee1bc,0xdac17f958d2ee523a2206206994597c13d831ec7,0,84000,25651844713,0xa9059cbb00000000000000000000000031dfd1180f0bc3754fabe846aba3429ac66d309800000000000000000000000000000000000000000000000000000000bfb207e4,1711684859,29218820637,2001000000,2,,
|
||||
0x678923b16dc772d8fc32d41ca44b58e182a082721f0812425e501c4e797899d6,143,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,18,0xc73cad97a5682cb19270cc0b6adec7472f95ff1b,0xc221b7e65ffc80de234bbb6667abdd46593d34f0,0,41829,25651844713,0xa9059cbb000000000000000000000000b7580490a51d3f48d451ba5f2dd79a835d2660150000000000000000000000000000000000000000000002834b3b24403b15bc00,1711684859,29218820637,2001000000,2,,
|
||||
0x372c21a252e407f44af23f644e8383a5d29c11b2be114a1da21ae40d91fa97fd,44,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,19,0x76c81c003a31ba5066ed39c10aa7c86356ebc92f,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,115960323026293214,178798,25650844713,0x24856bc30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000019bf94ca60591de000000000000000000000000000000000000000000000000000000000000010000000000000000000000000076c81c003a31ba5066ed39c10aa7c86356ebc92f000000000000000000000000000000000000000000000000019bf94ca60591de00000000000000000000000000000000000000000000002addb1edaeecdb672100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2002710dd66781d0e9a08d4fbb5ec7bac80b691be27f21d000000000000000000000000000000000000000000,1711684859,29664104563,2000000000,2,,
|
||||
0x127ea2d664965363eb02de18c142e64317d2e0008166248ca7b2177112c7a5d0,194,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,20,0x5256efaa1baac193eb0bcb27e1f52db900f44619,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,84000000000000000,183576,25650844713,0x24856bc30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000020b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000012a6d8e1122000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000005256efaa1baac193eb0bcb27e1f52db900f44619000000000000000000000000000000000000000000000000012a6d8e1122000000000000000000000000000000000000000000000000025fc68d1b174b27fdb500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2002710ebb1afb0a4ddc9b1f84d9aa72ff956cd1c1eb4be000000000000000000000000000000000000000000,1711684859,29937560317,2000000000,2,,
|
||||
0xd90e0f1b8766cd0e2d7e0e72655b678c991d937d459441ecd4cdf07860dc3afb,8,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,21,0x466cecc73f015db7c0e3c2542562b2521a23d3ae,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,3683168122892603,192293,25650844713,0x24856bc30000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000030b090c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000d15d2679cf13b0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000466cecc73f015db7c0e3c2542562b2521a23d3ae000000000000000000000000000000000000000000a56fa5b99019a5c8000000000000000000000000000000000000000000000000000000000d15d2679cf13b00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000b69753c06bb5c366be51e73bfc0cc2e3dc07e3710000000000000000000000000000000000000000000000000000000000000040000000000000000000000000466cecc73f015db7c0e3c2542562b2521a23d3ae0000000000000000000000000000000000000000000000000000000000000000,1711684859,29664104563,2000000000,2,,
|
||||
0x43ac6da3b21bae5bac4765cfdc060878b3a27a2633e43d2ee5e0d24bfe87d048,27849,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,22,0xdf49640412a9c20e0c682a32d5634e8329b01ce0,0x51c72848c68a965f66fa7a88855f9f7784502a7f,0,350000,25650844713,0x394b1de1000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000010000000000000000000000009f8f72aa9304c8b593d555f12ef6589cc3a579a200000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000014baddb5f53d600000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000eae7380dd4cef6fbd1144f49e4d1e6964258a4f4,1711684859,300000000000,2000000000,2,,
|
||||
0x12e9316ba481e24ae7735ae6e5f35a22cf762a36332e97024f62776ae5533c50,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,23,0x030a01714c976475f1f20407ad9b65326d9ff6bb,0x95ad61b0a150d79219dcf64e1e6cc01f0b64c4ce,0,34787,25650844713,0xa9059cbb000000000000000000000000a03400e098f4421b34a3a44a1b4e571419517687000000000000000000000000000000000000000000654a0315e995d3261e0000,1711684859,30308292742,2000000000,2,,
|
||||
0xb1d518c0125bae7ad35f9d858a88d005aef194175df542cbce11ef582f85f1bb,9088861,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,24,0x21a31ee1afc51d94c2efccaa2092ad1028285549,0xe41d2489571d322189246dafa5ebde1f4699f498,0,207128,25650844713,0xa9059cbb000000000000000000000000e267db5d77dda41816013c6ef3b40cfa38b1088c0000000000000000000000000000000000000000000005f271cdf2e7d68c8000,1711684859,102000000000,2000000000,2,,
|
||||
0x5b9723790ba1c6f14b8769a2c2f65ad5ea02539bc90c10ea483f53474de4236f,1533717,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,25,0x5041ed759dd4afc3a72b8192c143f72f4724081a,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,420000,25650844713,0xa9059cbb00000000000000000000000092c2921ec8cd91be8d88b56f287e2656f476d2c00000000000000000000000000000000000000000000000000000000058740b00,1711684859,400000000000,2000000000,2,,
|
||||
0xa247a03294ae779337aa703f3b07de5a73e3d49cb04a886676b42d7d7187ee20,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,26,0xac72919b15297ef71ed280a57c6cb395d63f554c,0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0,69546,25650844713,0x095ea7b300000000000000000000000069460570c93f9de5e2edbc3052bf10125f0ca22dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,29418798204,2000000000,2,,
|
||||
0xaa553b6860fc76833c347a8253226365453f0e2f5c014c68c647935c7129d054,13,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,27,0xaa9bd9bee111f433f49e9f87c863189da9063754,0xc0db17bc219c5ca8746c29ee47862ee3ad742f4a,0,77377,25650844713,0xa9059cbb000000000000000000000000cf2558d36e5721821175e431e02269a38432fad100000000000000000000000000000000000000000000043c4f9438a287a487c0,1711684859,36273497756,2000000000,2,,
|
||||
0x1644fcd4e0a15566ee14320b6279688e2e2b7c7b7f8dca215198ee1aa3e3933f,2002220,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,28,0xf60c2ea62edbfe808163751dd0d8693dcb30019c,0xc944e90c64b2c07662a292be6244bdf05cda44a7,0,207128,25650844713,0xa9059cbb00000000000000000000000062ff4e507409b71c36468f1113d3df22c1a95d94000000000000000000000000000000000000000000000002645853f4caae9800,1711684859,60000000000,2000000000,2,,
|
||||
0xe7c09b9e9299a821034b2649a9d9ee5f92ca62f2a4ad7c5720ccf31d6b346ec5,13820,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,29,0x147b12c06d9e8e3837280f783fd8070848d4412e,0x5c7bcd6e7de5423a257d81b442095a1a6ced35c5,0,131007,25218867582,0x2e37811500000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001000000000000000000000000e397c4883ec89ed4fc9d258f00c689708b2799c900000000000000000000000096acf191c0112806f9709366bad77642b99b21a900000000000000000000000000000000000000000000000000000000000000000000000000000000000000002791bca1f2de4661ed88a30c99a7a9449aa84174000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000000000000000000000000000000000000008208d4900000000000000000000000000000000000000000000000000000000074e78610000000000000000000000000000000000000000000000000000000000000089000000000000000000000000000000000000000000000000000000000012a61200000000000000000000000000000000000000000000000000000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000,1711684859,29356343102,1568022869,2,,
|
||||
0xbe46f8db54133d9d728d26344cb6243efb03625b0994b60df99b71165cb19d38,2,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,30,0x8843e9e86d591042e9e70e9bedc5c144de4107fa,0x32400084c286cf3e17e7b677ea9583e60a000324,4087435489412658586,135745,25150844713,0xeb6724190000000000000000000000008843e9e86d591042e9e70e9bedc5c144de4107fa00000000000000000000000000000000000000000000000038b7f0d89d05800000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000060f97000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000001000000000000000000000000008843e9e86d591042e9e70e9bedc5c144de4107fa00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,1711684859,34622494656,1500000000,2,,
|
||||
0xc48c125fdc54c47d205b92fa8e71d06c5c6d67aa072c7f1d28a01d67276b0977,208256,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,31,0xddb3cc4dc30ce0fcd9bbfc2a5f389b8c40aa023a,0x46950ba8946d7be4594399bcf203fb53e1fd7d37,0,61960,25150844713,0x8f975a6400000000000000000000000064bc2ca1be492be7185faa2c8835d9b824c8a19400000000000000000000000090ab10d1e4508b638c205f2b1dceb43f2eefc1bc00000000000000000000000000000000000000000000020b20a7001bd7880000,1711684859,47197997008,1500000000,2,,
|
||||
0xaaeecbd2dd919520dc48b017b6369547d87a90be0e62a30405d1ac3d28de540e,65,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,32,0x4eb6566d54f03227d6173eb99ccdef76ac60c39c,0x663dc15d3c1ac63ff12e45ab68fea3f0a883c251,45511799476917177,449084,25135000000,0x4d8160ba0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009e233eec2293b900000000000000000000000000000000000000000000000000000000000001400000000000000000000000001111111254eeb25477b68fb85ed929f73a9605820000000000000000000000000000000000000000000000000000000000000160000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000000000095dab580000000000000000000000004eb6566d54f03227d6173eb99ccdef76ac60c39c000000000000000000000000ef4fb24ad0916217251f553c0596f8edc630eb660000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e8f78dc253000000000000000000000000663dc15d3c1ac63ff12e45ab68fea3f0a883c2510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009e233eec2293b900000000000000000000000000000000000000000000000000000000095dafa500000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000180000000000000003b6d0340b4e16d0168e52d35cacd2c6185b44281ec28c9dca36e5de70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000404b930370100000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000018e885dc4ca0000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000139e00000000000000000000000000000000000000000000000000000000000003600000000000000000000000000000000000000000000000000000000000000380000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000000000095dab5800000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000008cb3bd00000000000000000000000000000000000000000000000000000000000736f6c00000000000000000000000000000000000000000000000000000000000001a00000000000000000000000004eb6566d54f03227d6173eb99ccdef76ac60c39c00000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000020c6fa7af3bedbad3a3d65f36aabc97431b1bbe4c2d2f6e0e47ca60203452f5d61000000000000000000000000000000000000000000000000000000000000002059dca0d43c8fe16088976a6347b2028017a36591428081cd2271e296dad577ec000000000000000000000000000000000000000000000000000000000000002059dca0d43c8fe16088976a6347b2028017a36591428081cd2271e296dad577ec0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410101010000b97320d79d6d0900000000000000000000000000d03bcb080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,1711684859,25135000000,2400000000,2,,
|
||||
0xf59d36c9ed2df8295bcf9caa33801df3a3ee430b6455e68cb2c8f1269869d355,122523,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,33,0x063ed6f59bd44d8bc99c3b170a3d52b49dcbcfff,0xdac17f958d2ee523a2206206994597c13d831ec7,0,126000,25036000000,0xa9059cbb000000000000000000000000191eb39d0510a9075e25c3e0662396abb36cb8430000000000000000000000000000000000000000000000000000000003e3492f,1711684859,25036000000,25036000000,2,,
|
||||
0xa44cf00ba6fe7d722d0d6ab164629bbf2f6ed2fbdc124a136ebb07627208f8a9,43,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,34,0x45c6e9a369b7a6b1b0b10f3924cadf5d6dc9c5f8,0x5b7533812759b45c2b44c19e320ba2cd2681b542,0,28000,24651844713,0xa9059cbb000000000000000000000000000000000000000000000000000000000000dead0000000000000000000000000000000000000000000000000000000000000000,1711684859,25040088381,1001000000,2,,
|
||||
0x9ef9ac0383bf83f40190fe4bc151a31b90a8ec378bfc9bf8b5021fb5e508f00d,8836,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,35,0x0d3250c3d5facb74ac15834096397a3ef790ec99,0xa8cb082a5a689e0d594d7da1e2d72a3d63adc1bd,0,8000000,24650844713,0x701f58c500000000000000000000000000000000000000000000000000000000000725ea384326a9fe0972a9e04bd8e3bf165af9bd9f421401cc2ac5609c378d911add8000000000000000000000000000000000000000000000000000000000113e584400000000000000000000000000000000000000000000000000000000000000112d09b19e62b5876b30fb36a82ff022f1605c42beaa0f068a99991bd3971eee170c0277d3892fb10f14b4ee369bf40d73c42d4f87d73d8ab5ec36f4b164e43b6f0000000000000000000000000000000000000000000000000000000066063a47f5946d41c180ee682b13b378549b44a10594e00bbe99d0e6d8c741fa321323be00000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000725eb0000000000000000000000000000000000000000000000000000000066063b9000000000000000000000000000000000000000000000000000000000113e614b205faa976595f874ec351d5bafd57fe94ef9e6384ace829c56ea7c54d158420a00000000000000000000000000000000000000000000000000000000000000117185bfed533c1a7f2bfd6a9c4d5c4c03b1ac3947a0252a1d9854da374a9a770c7b0bad6c2a13bf0c0b1e024e61870847c87a9cc1ef4f5a246ff6124f8964c510faa593b6eb1a618f8aca194eb25a2272e102323226fd6c5307a2b9981ca6b94600000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000031800000000000000000000000000000000000000000000800b0000000000000000000000000000000000000000000000000000000000000004384326a9fe0972a9e04bd8e3bf165af9bd9f421401cc2ac5609c378d911add80000010dc000000000000000000000000000000000000800b000000000000000000000000000000000000000000000000000000000000000300000000000000000000000066063b9000000000000000000000000066063cb4000110dc000000000000000000000000000000000000800100000000000000000000000000000000000000000000000000000000000000057185bfed533c1a7f2bfd6a9c4d5c4c03b1ac3947a0252a1d9854da374a9a770c000110dc000000000000000000000000000000000000800100000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000011000110dc0000000000000000000000000000000000008011000000000000000000000000000000000000000000000000000000000000000735127712a07eb8e142fd85ef6da347239f7754db859fced48562025899879aa4000110dc00000000000000000000000000000000000080110000000000000000000000000000000000000000000000000000000000000008969bc43621ba9af19c04364fca860423e699f0e59cf4feff9be16659d7e36dfe000110dc00000000000000000000000000000000000080080000000000000000000000000000000000000000000000000000000000000000cfadd7b1a5c08f9dcb8c0609d7668124865441fc7f908d069c1c77cec67443e3000110dc00000000000000000000000000000000000080080000000000000000000000000000000000000000000000000000000000000001edbc15f9fb83d4f9dfa312621c1d8c366779ce819a8fda8dc6878e47a9269ef0000110dc000000000000000000000000000000000000800800000000000000000000000000000000000000000000000000000000000000026ac8aa92d76bafd0201c635076655f59f53010246ebfae2bc1858d06912455c00000000000000000000000000000000000000000000000000000000000000000000000000000012101df573290af4b265772f0fbe066fa6e0e39c1231b077f71a90a09006b731d2fb449425eb69b4089a1a786f5f4075338138debe4a4156ee20429722fa9eb88561a9177487a5d86a33c6ebfeacfc6286f661c572a9487e251459300e778d8efeaa7abb3525a90ebe8cafdc9856ab7ccfe0c66bc7932dd02d33a9f724d89cbfa725b5bb0f53fa03f31648f99320c4f7d2d7f4501d6d55809af72da6ccaa8c5642d974dd01aa191b3054767cd5f11d6978a73e2159d1201b61994e57bebee84a68d2e88dc34f26d3aa9d29c52beac16f4553545b9dc16eb14d80cda7cbcc76ba5decb53b77e586f72e805b6c423ebfa92b7f48d7911ef2bf82643363f2e71ea3c362fec458e9bdbe422c90a61038bc9c382bef31db37d5fa7618630652ac92f6f6b4600000000000000000000000000000000000000000000000000000000000000,1711684859,25286655777,1000000000,3,18744003389,"0x01bfebb0065e551d514bca3be841ec1b438e76de06a1eddbab916fe6897f985f,0x018b2fe6529016cb0696e9b1b19b03599567b752d7b90005d5c7e701203c8bf4"
|
||||
0x495a751d5e50e0aa154073610f7c9218eeacbf2a5fbcf060233ee2e997db1466,28717,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,36,0xaa3cf4a9bb743f5cb307fe2c2c8196280be48ced,0x1111111254eeb25477b68fb85ed929f73a960582,0,1000000,24650844713,0x12aa3caf000000000000000000000000e37e799d5077682fa0a244d46e5649f71457bd09000000000000000000000000ba3335588d9403515223f109edc4eb7269a9ab5d000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000e37e799d5077682fa0a244d46e5649f71457bd09000000000000000000000000aa3cf4a9bb743f5cb307fe2c2c8196280be48ced000000000000000000000000000000000000000000009f5388bb583845f5c00000000000000000000000000000000000000000000000000032ebd52bc6f157e9000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e40000000000000000000000000000000000000000000000000000c60000b051200e9b5b092cad6f1c5e6bc7f89ffe1abb5c95f1c2ba3335588d9403515223f109edc4eb7269a9ab5d004465b2489b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000032904eaad3ecd30ec0611111111254eeb25477b68fb85ed929f73a960582000000000000000000000000000000000000000000000000000000008b1ccac8,1711684859,56772027340,1000000000,2,,
|
||||
0xed727fcd17f3ba14a869e9c629d900e0f31e468aeb350306bad75adc36d8e600,184,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,37,0x100d5164fc8c65df61fea01330948f435bb12100,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,0,254367,24650844713,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063f2f00000000000000000000000000000000000000000000000000000000000000030a080c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000016000000000000000000000000049c8efd98ac8114de2fce73d57e2944aebd5613d000000000000000000000000ffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000662dc9de00000000000000000000000000000000000000000000000000000000000000000000000000000000000000003fc91a3afd70395cd496c647d5a6cc9d4b2b7fad00000000000000000000000000000000000000000000000000000000660643e600000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000041a736fc1b8771b4fa67d703bb259c17180b1682da22db128f06fb86f3eee459fc615a136ec7ea1a02237bae22131b357cc4f05f33d9f20eeed724538336c4e70c1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000ae6bebd486ed00000000000000000000000000000000000000000000000004ecbb8273fc7e9800000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000049c8efd98ac8114de2fce73d57e2944aebd5613d000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000004ecbb8273fc7e98,1711684859,28664104563,1000000000,2,,
|
||||
0x018b3dc553b4023651e2ced583701d3993e6ded51a297e2f980d6df689579810,63274,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,38,0x852dc1c875f0117ea0808610010893e4c576b6a9,0xdac17f958d2ee523a2206206994597c13d831ec7,0,84000,24650844713,0xa9059cbb000000000000000000000000383d3b8fecd91f8ab425708fbc1a54efa2f314a7000000000000000000000000000000000000000000000000000000002ddeceef,1711684859,28217820637,1000000000,2,,
|
||||
0x19c01725f7f9e3088c68644cd01cf47445c51a5d4a03b1cbf59f0f524f8ef40f,71,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,39,0xa9587c42e9ce90f563c64bf95ae2ad4fd2a99102,0x4c19596f5aaff459fa38b0f7ed92f11ae6543784,0,79011,24650844713,0xa9059cbb000000000000000000000000d4ca66cbe53fc4c37fc50a632823668b80d26f4e00000000000000000000000000000000000000000000000000000002540be400,1711684859,29257794227,1000000000,2,,
|
||||
0x66fd5995ac3d696d4d8dc0d02ec55b9025a27e42c5db068729d56b997fc35769,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,40,0x053458be3fb128d8284eb1053c20116fd24c9566,0xf21661d0d1d76d3ecb8e1b9f1c923dbfffae4097,0,56282,24650844713,0x095ea7b300000000000000000000000000000023c10000eecb940000b914cdfd76cc83d1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,33849998507,1000000000,2,,
|
||||
0x04a9d77e88c586704b8007d55dc5333b962905f8ad637824b29805de9a4ca5cb,158,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,41,0x17cacc6c249a3b05fe817b79a25a33ebdb47d0bf,0xf9c8c18106ae4cc63cc1fcf1ddb373e66159f747,0,21438,24650844713,0x646174613a3b72756c653d65736970362c,1711684859,68285564074,1000000000,3,18870047816,0x01f3ee17d9bd3b1e37df90813b95b21ec3504d66c5fe52974712bc4efb7db300
|
||||
0x8c1de5928452f31df7986de2a2484ce818f81a1f776eed28a16378b6e9c5d110,1216,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,42,0xa25cfbeba46de881865dd0ab2c6710cf7d70525a,0xc5833628bbeb908f1cd89351e97fa73e265e6227,0,200000,24591365170,0xdc73e49c,1711684859,,,0,,
|
||||
0xe2737875525131f28578e0edc20d9b94cf4a8b70d684c5e66fe6ea5df146fc41,435,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,43,0x3e78d478f5696303d117fe44e32cef40a346cc14,0xf3de3c0d654fda23dad170f0f320a92172509127,0,312834,24150844713,0x9871efa4000000000000000000000000ddcc69879e1d2376ce799051afa98c689f234cca000000000000000000000000000000000000000000001911312856026ee2b66b00000000000000000000000000000000000000000000000002717ac97a72a00900000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001f0000000000000003b6d0340faad22e0407c278909590fed9013f37b9e2d1e58,1711684859,25531000000,500000000,2,,
|
||||
0xb5a5b3e5e0df6e89c1348b47ba32315d7e4e7cd1be0dd881f44c2c385256a273,34,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,44,0x1f2d33e652c3b265de2db9165939419d54d89bd1,0x3bbbb6a231d0a1a12c6b79ba5bc2ed6358db5160,0,72838,24150844713,0x4000aea00000000000000000000000002c3298912e3287ddc3e22b5a1c02270f57cc7179000000000000000000000000000000000000000000000154eae35cb2ba90f2c300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000,1711684859,31253000000,500000000,2,,
|
||||
0xb23a16d3bf8a18bf2a659e232bc820b15fb92084d347b189589227a52cbe2204,7,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,45,0x2a46baf54fa217b95e7ea070a930959106393ee2,0xabea9132b05a70803a4e85094fd0e1800777fbef,5000000000000000,95173,24150844713,0x2d2da8060000000000000000000000002a46baf54fa217b95e7ea070a930959106393ee2,1711684859,31253000000,500000000,2,,
|
||||
0xefdfef82dcda44436a62f62e76da9b362871363f7d661178d2e76e4ce738d548,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,46,0x45f28f8252345812e2109397edffa140664f8947,0xcdf7028ceab81fa0c6971208e83fa7872994bee5,0,70446,24150844713,0x095ea7b300000000000000000000000040aa958dd87fc8305b97f2ba922cddca374bcd7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,31158500000,500000000,2,,
|
||||
0xc70060da46bb0b07e8f361da834f3e5c58c06822b9c9f430e255ac74aa259aff,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,47,0x2f6e97cdcdbba9d97d40cbcb477f5f13fd6ed73d,0x859a5d9ad4eb04d8bd9f91d7923857f2dfd0cc51,10000000000000000,21000,24150844713,0x,1711684859,30000000000,500000000,2,,
|
||||
0x3773e708a7c39dbaaac80b4a27899c6ff6061e176bcce2089c0c5be65524e0a3,4,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,48,0x318a7b508977637750410c5f468e5438e27fac23,0x64bc2ca1be492be7185faa2c8835d9b824c8a194,0,43695,24150844713,0xa9059cbb000000000000000000000000c6b888d89f4a0ff3712e5457fb72a39632b5dd550000000000000000000000000000000000000000000000000000000000000000,1711684859,31158500000,500000000,2,,
|
||||
0x1c6554f90c297351efae1fa490fd3c35a1792152f26551792c3fee44c57a9efd,40,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,49,0x77788fc6b4949382d95c6626e953bee25c8e9d1d,0x77788fc6b4949382d95c6626e953bee25c8e9d1d,0,22487,24150844713,0x646174613a2c7b2270223a226572632d3230222c226f70223a226d696e74222c227469636b223a22626c6f6273222c226964223a2236363030222c22616d74223a2231303030227d,1711684859,31253000000,500000000,2,,
|
||||
0x41c713dddf217871db3421092d03f65a809b6104d1c398c799ae2bfa09ef7a19,88,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,50,0xd0036bad1b806c2a68c4c8835b3c4cabc8de973f,0x6f1e92fb8a685aaa0710bad194d7b1aa839f7f8a,0,128136,23950844713,0x2e1a7d4d00000000000000000000000000000000000000000000031285b4a66f4346eaa4,1711684859,30000000000,300000000,2,,
|
||||
0x71162b2eb23dc6660c942a9eacf155d76d6e18dee709b2cf2300c2adf70f5047,249,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,51,0x702a957f89c796a832686c293782b0a305ca8f8d,0x4d4c06fb91f6456c678a9cff0e0b15352849377b,0,800000,23750844713,0xece8c31c00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000c4fd88367d353fb356543ea7c867313ae555eecf000000000000000000000000ba7e8483d1dbf1a51a44fc25254bafda9837a22f00000000000000000000000055e324cbef0de8f62619261aa700e06bff2b5608000000000000000000000000b95c11a236a5bf7c900dbbd95d582be4efb9fa8a000000000000000000000000d2fc9d7b8397a1c566567bbac057895a8497ac9a0000000000000000000000009bed1a6a5503ab2ba7be8474f5dddbc7777e4e36,1711684859,100000000000,100000000,2,,
|
||||
0xe1675e401d290f5763509c70149dce3742190ce726178df743e3c1f8665368a4,2930,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,52,0x6519e6117480d140cd7d33163ac30fd01812f34a,0xb2ecfe4e4d61f8790bbb9de2d1259b9e2410cea5,82000000000000000,233723,23740844713,0x70bce2d600000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000917660a684d89f4713d2e22054fec8ea2e29c11a00000000000000000000000031385d3520bced94f77aae104b406994d8f2168c3aa8a623070ab6350c110d98ea261365f2912399f21a69b675bb53702372d0d50000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000006607714c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2dc8d718077c3c3ca3ee94095e9d1ff00000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003400000000000000000000000006519e6117480d140cd7d33163ac30fd01812f34a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000001895000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000001235290c79500000000000000000000000000000000000000000000000000000000000000001895000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000036266d6f5b64db06c4cf9d0d0e1dd73077fc786457f38202a85ac1a00d5074b8e6d3dd5a3b9217c9b787ecaf83658539c134cc83e9658f2d0c848fc776adf1a3fb35a2d8085fc08f088afb1520c965f9ffefebe1189ebeb6144f866a59b174bb60000000000000000000000000000000000000000000000000000000000000041c3fc88619f78fa9a0a3704bf6ec82df7b70eeecac1b0e734d440c2c992cdcd8356d6864c4f72d853404e3c7e6ea6e00a4dd05dc279fbc1895d62d4f0d4921ce11b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000590ff70ac7ff4e1b02f9d215efe73051dc45c535ef7b15a91bcabecf1561035ea81336b72c866c0fba47b89185d159537c34474b48796a50e8011533f6f9ba24861c012a1cf76af68e5d010513ff70a3aaed9afeb8661116e6ce0000000000000072db8c0b,1711684859,27420000000,90000000,2,,
|
||||
0xcc82fc3b9d1b7ee2a7419783a263a3c9a5e08aac6f2f0c21b66801b254ef35ba,71,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,53,0xe6adcfe20b6bcee8a8697180e837c91ac15e2f21,0xdac17f958d2ee523a2206206994597c13d831ec7,0,51126,23740844713,0xa9059cbb000000000000000000000000bf66dea1fd756c1de39a5071e568b75b413b260d00000000000000000000000000000000000000000000000000000000b2d05e00,1711684859,24586038573,90000000,2,,
|
||||
0xe5beaea65d0cc5d426e8c0dda8df593aaad90025907282bccdb7175bf1093aa3,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,54,0xcf57239a38d355b25a461b59c69fc6db31960b61,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,72678,23730844713,0x095ea7b30000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eaeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,31240000000,80000000,2,,
|
||||
0xe6af05111aadd09345e3132de93a67d435df11652e36ca8bcc841ff70d11148f,7,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,55,0xc1b21f2d029d671c11d46847cd14ec85b1703857,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,69348,23730844713,0xa9059cbb000000000000000000000000207bfad97ca2bf071cb07022b3e44c68587e9ca9000000000000000000000000000000000000000000000000000000003ef8cd51,1711684859,29070000000,80000000,2,,
|
||||
0x48334b8ed592439441594681bf5fb79e340ff7eba5ec7a75bf6430112813bcea,11569,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,56,0xda81a723e748c782284bbb06ab74e3d0a9dbbc77,0xf9d64d54d32ee2bdceaabfa60c4c438e224427d0,0,6000000,23705940580,0xad718d2a0000000000000000000000008898b472c54c31894e3b9bb83cea802a5d0e63c600000000000000000000000000000000000000000000000000000000000000a0b78cbeaca26b30d602a9fe692437a744b3699253affc1de7adb0b9eac4f7cfc8f81852c791ad1bc021e5b08a4f301b95a08a0205a16e9d0de57da5cf484bf99a930de12677923feb0f6f5fa4319baece17983546fd7f9493dc4b3db53b6947b9000000000000000000000000000000000000000000000000000000000000042463e3e7d2000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000004ffa5968857a6c8242e4a6ded2418155d33e82e70000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000006d6f646500000000000000000000000000000000000000000000000000000000006574680000000000000000000000000000000000000000000000000000000000657468000000000000000000000000c1036d6bba2fe24c65823110b348ee80d3386acd00000000000000000000000019b2b661af0673ae4d2bc3ee22a5f09ead909d38000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004d7572040b84b41a6aa2efe4a93efff182388f8800000000000000000000000000000000000000000000000619ede5e9a59ccfbd00000000000000000000000000000000000000000000000619ede5e9a59ccfbd00000000000000000000000000000000000000000000000000000000000006f2000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000619ede5e9a59ccfbd00000000000000000000000000000000000000000000000000000000000000010000000000000000000000006fd84ba95525c4ccd218f2f16f646a08b4b0a59800000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004104f36d2b437a55510f65c6824a633307b7a66b2eff9b56cc145e4668e2fdba07559480afe0aa04a985cb6047cb1fc2fd1d5dd1cfc70e919cde64782c1abe07d01b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041cfc2bc5d945043edc9e15e2f38e79a77e8cc02d305ebb81a17acb20726a04fb915127182eaae0eb75c445d8b234b5aacaa49f4af7b84888764dc939b39f2c0df1c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,1711684859,32842182756,55095867,2,,
|
||||
0x8680f7c7a82edbdc7b7fb2f2eb6d88a9427c9b5950b3372d64f8cbf2f1612783,122,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,57,0x2bf39a1004ff433938a5f933a44b8dad377937f6,0xe9572938bcbf08adcee86fd12a7c0d08dc4ab841,0,71007,23700844713,0x095ea7b300000000000000000000000074eee699c1bbe2411481e7c52116e8ffe7655830000000000000000000000000000000000000000000000642c5b3effd40f10000,1711684859,26000000000,50000000,2,,
|
||||
0x3ef51baed3a83a0cdededa3846f53c8d275d5e091433c758862fcea5b9213c02,41340,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,58,0x41ed843a086f44b8cb23decc8170c132bc257874,0x454aa564028268771252f63b333aa7f5438806ba,0,168518,23693364584,0x2da03409000000000000000000000000a2c82c4943130dd702d9475840c5d176c979e125000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7,1711684859,44205846079,42519871,2,,
|
||||
0x312cf8195774d03a1ab343173cc3fd885e0dee849045f3f518961c451a74eea5,492,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,59,0x85fa1990b8243bdef95d52b43752b1209478e83f,0x881d40237659c251811cec9c364ef91dc08d300c,0,313507,23688199691,0x5f575529000000000000000000000000000000000000000000000000000000000000008000000000000000000000000062d0a8458ed7719fdaf978fe5929c6d342b0bfce00000000000000000000000000000000000000000000062417d8af6a3820000000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000136f6e65496e6368563546656544796e616d696300000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000062d0a8458ed7719fdaf978fe5929c6d342b0bfce000000000000000000000000baac2b4491727d78d2b78815144570b9f2fe889900000000000000000000000000000000000000000000062417d8af6a38200000000000000000000000000000000000000000000000000ef8fc4c4d4a2a28e35c000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002acf35c9a3f4c5c3f4c78ef5fb64c3ee82f07c45000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e80502b1c500000000000000000000000062d0a8458ed7719fdaf978fe5929c6d342b0bfce00000000000000000000000000000000000000000000062417d8af6a38200000000000000000000000000000000000000000000000000ef8fc4c4d4a2a28e35c0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000200000000000000003b6d0340180efc1349a69390ade25667487a826164c9c6e480000000000000003b6d0340c96f20099d96b37d7ede66ff9e4de59b9b1065b14129127e00000000000000000000000000000000000000000000000000fd,1711684859,31040153796,37354978,2,,
|
||||
0x992438e5b985f996734b042aa80160b44984d4432e1cb24dc6a3973fffc5fef9,38,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,60,0xdaac20acc58d3f2f9faaaa3f69912e6224ffa34a,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,170000000000000000,245775,23687818514,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063f1700000000000000000000000000000000000000000000000000000000000000030b080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000025bf6196bd100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000f195a3c4ba000000000000000000000000000000000000000000000000df65af1d935f0718dd9800000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000040fd72257597aa14c7231a7b1aaa29fce868f67700000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000016a6075a7170000000000000000000000000000000000000000000000014d4f8787853e1a34bb8400000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200271040fd72257597aa14c7231a7b1aaa29fce868f677000000000000000000000000000000000000000000,1711684859,30998317317,36973801,2,,
|
||||
0x5847af80fa2a51f31f2251d204c7de84609a04fbaee89c24a9d4fcd862cbfa71,4,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,61,0x0c8d464184c0b7b471951a410abe0fa64b77110b,0x7122985656e38bdc0302db86685bb972b145bd3c,0,46995,23687818514,0x095ea7b3000000000000000000000000a62f9c5af106feee069f38de51098d9d81b90572ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,30998317317,36973801,2,,
|
||||
0x16f219d064b65bb1591fc3b66e8e9b951c8060058b3cc2c91a0066a758a8f826,8,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,62,0x3be4a4ccf4546d10296449b84b961e750a41d5b5,0xd19d4b5d358258f05d7b411e21a1460d11b0876f,2017205497272000,102463,23686709300,0x9f3ce55a0000000000000000000000003be4a4ccf4546d10296449b84b961e750a41d5b500000000000000000000000000000000000000000000000000000fa5f78d96c000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000,1711684859,30223929715,35864587,2,,
|
||||
0xa19519760f0b3306bf22f74b801594a9378508a369c8cbb708cf752db38b7a88,126,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,63,0xb64279c1f02d56ae0ff08d68ad07f3764712fb7e,0x881d40237659c251811cec9c364ef91dc08d300c,1250000000000000000,251826,23685992008,0x5f575529000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001158e460913d000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000f706d6d46656544796e616d69637634000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000113208c76701e8000000000000000000000000000000000000000000000000000000000101cc304000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000026db992a3b1800000000000000000000000000f326e4de8f66a0bdc0970b79e0924e33c79f1915000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000001070f0caa000000000000000000000000000000000000000000000000113208c76701e800000000000000000000000000a69babef1ca67a37ffaf7a485dfff3382056e78c00000000000000000000000074de5d4fcbf63e00296fd95d33236b9794016631000000000000000000000000b64279c1f02d56ae0ff08d68ad07f3764712fb7e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000066063d4c01ffffffffffffffffffffffffffffffffffffff22a42d3666063ce8000000330000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001c5f85d48b23a57b5b84afe2b6fa465010d14104d1011e08e076e987aa8d3e56c36a559b8151e2846a3aedf94d56d0d2ee3bc89c7e3947ecb2639015b645f44a38000000000000000000000000000000000000000000000000113208c76701e80000c6,1711684859,37573974573,35147295,2,,
|
||||
0x5ca162f59cdb72b00f0fdbe4e4251917f2370d90888e0c3db092f59afa1cebe3,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,64,0x9389d6ef9c66be72fa3c85a4db36091f971cc0f6,0x74a09653a083691711cf8215a6ab074bb4e99ef5,960000000000000000,670680,23657395568,0xf6326fb3,1711684859,30852698836,6550855,2,,
|
||||
0x8acf45d06c41dc77e37a3a95b21738e978462bc13c9a46765adf1bb4e7c9be85,41,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,65,0xba76c7c9a25e94592be05c5f762a0d79f4e5a00b,0x50002cdfe7ccb0c41f519c6eb0653158d11cd907,29976635116234282,252817,23657395568,0xca23bb4c74fbe6e70686eb07ba7c5d2c3fd1eb3e9ec0505c3085037980565d2a6c67d2950000000000000000000000000000000000000000000000000068ce17fcdfc000000000000000000000000000ba76c7c9a25e94592be05c5f762a0d79f4e5a00b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000006200020000000000000000000000000000000000000000000000000000000000002710000000000000000000000000000000000000000000000000000000000000000074fbe6e70686eb07ba7c5d2c3fd1eb3e9ec0505c3085037980565d2a6c67d295000000000000000000000000000000000000000000000000000000000000,1711684859,29816796046,6550855,2,,
|
||||
0xadf8959c8f92535eac75b9384d46ec8a1bbc6dc940c291aa6f0f7281f855c55d,246,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,66,0x49945151409185d2df87c4af797a4f909d224b07,0xe803684b9e391d01dc1cdf76bac9ae3a596b2ae0,0,343867,23657395568,0x9c67f5e40000000000000000000000000000000000000000000000000000000000003490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000429d069189e0000,1711684859,30852698836,6550855,2,,
|
||||
0xa190c25502b4b5cba1b842c89f7c9a347c7e5b11af9210aa405164c8a0b48eab,77,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,67,0x498dd4e138f648e05e91b15d200157f201e7f3af,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,0,235838,23657395568,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063f2f00000000000000000000000000000000000000000000000000000000000000030a000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000ae78736cd615f374d3085123a210448e74fc6393000000000000000000000000ffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000662dc9e200000000000000000000000000000000000000000000000000000000000000000000000000000000000000003fc91a3afd70395cd496c647d5a6cc9d4b2b7fad00000000000000000000000000000000000000000000000000000000660643ea00000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000041a5fc6483b89e8fd55c10a3f8ce4ed7e0cb4b1f9122a5b1020dba3bcf7f1cf8b50d582e388c1970d0cbaf9f607e56cafcb6b4fc6345af6ac211841fef139c20bb1b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000103c423c1280da00000000000000000000000000000000000000000000000000110a28fa36b85900000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002bae78736cd615f374d3085123a210448e74fc6393000064c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000110a28fa36b859,1711684859,29816796046,6550855,2,,
|
||||
0x7268ecd01ddebf0591932b88cdf9ae87f40682b472725206cd6df69990359196,2,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,68,0xd987403b4e0eea3c1e8b86cb28c8ef330af1acb8,0x6774bcbd5cecef1336b5300fb5186a12ddd8b367,600107868905018512,146073,23657395568,0xb2267a7b000000000000000000000000d987403b4e0eea3c1e8b86cb28c8ef330af1acb800000000000000000000000000000000000000000000000008539fea80f39490000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000290400000000000000000000000000000000000000000000000000000000000000000,1711684859,29816796046,6550855,2,,
|
||||
0xde92de4d307e1efe5d5d02f258f5213bc15b4971d26594e9269a4006a60023c8,29,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,69,0x83cb065a353dc0db389be3c442aa2cbf142abe88,0x6774bcbd5cecef1336b5300fb5186a12ddd8b367,43108864000000000,146049,23657395568,0xb2267a7b00000000000000000000000083cb065a353dc0db389be3c442aa2cbf142abe880000000000000000000000000000000000000000000000000098c445ad578000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000290400000000000000000000000000000000000000000000000000000000000000000,1711684859,29816796046,6550855,2,,
|
||||
0x1b5eadbc6e0c831236b32bb370389d7d434454b15792f466a1465fbed2b4b2b3,1238,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,70,0x32fb6aca62bfd1348ea07aeacee7729d63430e42,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,60000000000000000,186160,23657395568,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063f3b00000000000000000000000000000000000000000000000000000000000000020b080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000d529ae9e8600000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000d529ae9e860000000000000000000000000000000000000000000000000ed4e1c49317554c171200000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000008dbd1331b1de57835b24657ed21d0691e2e7362a,1711684859,29816796046,6550855,2,,
|
||||
0x2733795d6a6e11bd14fbecb86fcbe37941f97a725574f88e086893a0179e3812,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,71,0x140d794aff03409fcea5e7ecf7da6a441a802fc0,0xad9212664f98577ed1506c3ca369256310e52f86,0,287409,23657395568,0xfec53fc500000000000000000000000000000000000000000000009009483e9c54e400000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000ceb2a38a830d327a2c26965f217e0da39d4bf7957d3da68210fe89c1c38c96d609fdc3ba60c87869f0387f285453b0bca62174ef328d7ece9653d181a0507550f9f77748661527e5347c7e9e1c16cba699443f13bff5cc85ed6fdaef1d554dcb8678267d201535bdadaa8eaf4525ee8c5c80c4c9b982cab10cb104c99cbdf8cabf07c7924f1541bee93d36451c9cafb74ac9b8ab5d625ff3ca06aa25b5ac13245c28b534010acc698d15623cc5d413ea74d629fc9a5b77f105a3fa58bc659eff38ce11d4491410ec0b7e2ab4c9a939cae78a5003b77f04b087abfeeed09d702a3cb6eeff5efb7705c507088c7f26020ac39abca2343868126ea21369b1db81f7fb59843909a760b6a8074cda90ae40875b9f7f50ce762f819aed7382808268a14fe57812c673d8e0d2f21e5ca88699572533d675727844df865029c4e1b41451741ff45408915ffe8d28cbd8d5919f4cb3f23c6f3519cd8ee8864a02198fe5eb171baf3ccd7b297f0540560e6edf607953f3d00c10c2ef36554218c8cf9da8942,1711684859,29816796046,6550855,2,,
|
||||
0x37fed0bba1124bb6db9f574b2be831dc4089535cf71509db7c524e785de5b9e5,6,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,72,0x232d71f7d3056f7c340ac162830cabdbc460c73d,0xd07e86f68c7b9f9b215a3ca3e79e74bf94d6a847,0,213694,23657395568,0x52a438b8000000000000000000000000000000000000000000000076b85af4e1f9780000000000000000000000000000000000000000000000000000000000000000012c,1711684859,29816796046,6550855,2,,
|
||||
0x1bcdd0e484c84d44dc67b89aaf6cb486f8aad7ece5a1ef6a64900b0e0cce8578,15,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,73,0x67fdc63d6a63d99271a9f1d38cd97e0803af343b,0x49048044d57e1c92a77f79988d21fa8faf74e97e,24506000000000000,196234,23657395568,0xe9e05c4200000000000000000000000067fdc63d6a63d99271a9f1d38cd97e0803af343b00000000000000000000000000000000000000000000000000571013c0dda00000000000000000000000000000000000000000000000000000000000000186a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000000,1711684859,29816796046,6550855,2,,
|
||||
0x51fa71bf3bbd196b9e440b98833da48fe259788cce521eabbb218c43de522719,2,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,74,0xb32381699452f22bba5c4c5ba2ccb99bc13cb08d,0xf047ab4c75cebf0eb9ed34ae2c186f3611aeafa6,0,136246,23657395568,0xb3db428b000000000000000000000000bf5495efe5db9ce00f80364c8b423567e58d2110000000000000000000000000b32381699452f22bba5c4c5ba2ccb99bc13cb08d000000000000000000000000000000000000000000000000131fa3b2f47d0000,1711684859,29816796046,6550855,2,,
|
||||
0x50ed12d5db65e1e5237947ccffba8c6a7fbdd33c5fab53556bbe6da287662e26,3,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,75,0x00e1f587b90eb6ca1ddf0baa59ec9ef47c96f34d,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,56650,23657395568,0x095ea7b3000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,29816796046,6550855,2,,
|
||||
0x000e8cdbfe4fb5479e273e82747527b6698a6388b3669540ac600c655665d875,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,76,0xd1a2d3c1e82fdbd99c1ce135e5fa3d588ee09708,0x49048044d57e1c92a77f79988d21fa8faf74e97e,50000000000000000,196216,23657395568,0xe9e05c42000000000000000000000000d1a2d3c1e82fdbd99c1ce135e5fa3d588ee0970800000000000000000000000000000000000000000000000000b1a2bc2ec5000000000000000000000000000000000000000000000000000000000000000186a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000000,1711684859,30852698836,6550855,2,,
|
||||
0x520a88ce86491b142a99c82d35739952a598b1086e7f526c50dc31105109971f,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,77,0x45e79fff2aac8f2e6e8fc5335a41efaab6ccd6f3,0x970e3e52b3bdfbb0e9f4f30fe357e9eb732d21c8,6000000000000000,85410,23657395568,0xce6df2b900000000000000000000000045e79fff2aac8f2e6e8fc5335a41efaab6ccd6f30000000000000000000000000000000000000000000000000000000000000001,1711684859,29816796046,6550855,2,,
|
||||
0x9e3f29a6dae8e5bb189a451561e5dd197b237e0b80c8de660dd975540e7985dc,185,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,78,0xce9b7c0931f9a8196768a168e88d8b244338e328,0x6eccbfff19eb503f72b084bb7e604ca99dd703aa,0,132535,23657395568,0x23b872dd000000000000000000000000ce9b7c0931f9a8196768a168e88d8b244338e328000000000000000000000000bfc2736bf400d008590b35495f56ac7eca87b9e3000000000000000000000000000000000000000000000000000000000000000f,1711684859,30852698836,6550855,2,,
|
||||
0xe7a62aed4d9c35a0b18ec1f30d840b3fccf7c375d504d1deecf93ff8a854bdc0,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,79,0xa9e631c522097ae9d8c1e03472a310cfec3bea0b,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,56373,23657395568,0x095ea7b3000000000000000000000000bd3fa81b58ba92a82136038b25adec7066af31550000000000000000000000000000000000000000000000000000000002160ec0,1711684859,29816796046,6550855,2,,
|
||||
0xf251cd9d581a93acd501f44fe7b5a3cf06bdb34e6795374f29d412c949763a23,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,80,0xd4e5e4381a0971ef0cda88d4bdfced7be8bbbe76,0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb,0,70201,23657395568,0x095ea7b3000000000000000000000000b6d149c8dda37aaaa2f8ad0934f2e5682c35890b00000000000000000000000000000000000000000000021e27c1806e59a40000,1711684859,29816796046,6550855,2,,
|
||||
0x8eb83313390eb83f43ca2445dc69cc36a17a67ac21991e010f5b27713d4d8c6b,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,81,0x7015d4a29df29876a954f11f4b9ccfcaa3413e92,0xb131f4a55907b10d1f0a50d8ab8fa09ec342cd74,0,77410,23657395568,0xa9059cbb0000000000000000000000005ced10e6166b60b7162d7c075f7ba672ee9f905200000000000000000000000000000000000000000000008e9294f9a9ad580000,1711684859,29816796046,6550855,2,,
|
||||
0x25c6bfcd41908b4d967c5cf036f932218fd69c710a613ab7d0598f9a0b087bc5,63,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,82,0xef5c1b2559df3bca7fccc9d2d6c807b021daa7b1,0xf7a0383750fef5abace57cc4c9ff98e3790202b3,0,46890,23657395568,0x095ea7b3000000000000000000000000f7a0383750fef5abace57cc4c9ff98e3790202b3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,29816796046,6550855,2,,
|
||||
0x309a4dcebcaf692e8165bc35db33f1c022739b29c852dee2fb5d8ac86dbdc375,19,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,83,0xeacbf2f764f9cf638f84cd16b62d49bab803a4a0,0xb4c7e3573ea64e1138b588a12598a64bb4e8b521,300000000000000000,62872,23657395568,0x73d87a3e,1711684859,29816796046,6550855,2,,
|
||||
0x81487bc679e9da5225bbaf33cc06ab03f0f2003d4a08023151946880dae6c75d,56,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,84,0xd169d4b3caeab402a845c468b018dfd458483e40,0xdac17f958d2ee523a2206206994597c13d831ec7,0,96046,23657395568,0xa9059cbb000000000000000000000000b9dd21e2e613f9e3f476e109f41972f0504e5aa00000000000000000000000000000000000000000000000000000000077359400,1711684859,29816796046,6550855,2,,
|
||||
0x48636f675a83c1acd643d2ccc34bcc347bef7a4b14eb920431fa4617fdd2ab2e,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,85,0xda71d70c01b51c20e0c234d294c1d7fb6c64f484,0x932261f9fc8da46c4a22e31b45c4de60623848bf,0,114849,23657395568,0x1249c58b72db8c0b,1711684859,29816796046,6550855,2,,
|
||||
0xf1846485359c6d30d8e7d252c70ebe90148c8612ba68caffeadc2d9a4ed11680,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,86,0x914d34757d3eed63166e9ea7c1c372653b8f5eb4,0x932261f9fc8da46c4a22e31b45c4de60623848bf,0,114849,23657395568,0x1249c58b72db8c0b,1711684859,29816796046,6550855,2,,
|
||||
0xbf273c3788014b0c0e2f527850b30b770a87370b56babe44e805a467e024b76e,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,87,0x28470f06559ceda300565770c7a62a15e64b338a,0x932261f9fc8da46c4a22e31b45c4de60623848bf,0,114849,23657395568,0x1249c58b72db8c0b,1711684859,29816796046,6550855,2,,
|
||||
0x71f4c4816add3b35460eb6dfbc3a85a79e104345e617ab5c0cd2ededd066f386,284,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,88,0x7d29cd3853e7d36702bbb578105d38d4da69ce68,0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0,46350,23657395568,0x095ea7b30000000000000000000000001e0049783f008a0085193e00003d00cd54003c710000000000000000000000000000000000000000000000004563918244f40000,1711684859,29816796046,6550855,2,,
|
||||
0x6f4dd752c6573f8e79ad2ec952d5a07f8406b36779fcd1e7b1681693152e8018,20,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,89,0x94520be5f71d9ccddff13262f7747ee2f09207f6,0x7122985656e38bdc0302db86685bb972b145bd3c,0,46995,23657395568,0x095ea7b3000000000000000000000000a62f9c5af106feee069f38de51098d9d81b90572ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff,1711684859,29816796046,6550855,2,,
|
||||
0xb2675a9cf5af1c4dc0c80053e202dc8f5c3cf11d528938e94be8ac890c5fbec0,7403,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,90,0x499a1b7cd389033ceb0c7a0fadf5161adc068592,0x2a2a4b224cd91272a731a3587736c16827c56c6e,0,46590,23657395568,0x095ea7b30000000000000000000000006131b5fae19ea4f9d964eac0408e4408b66337b500000000000000000000000000000000000000000000002341cb627e4639f5f2,1711684859,29816796046,6550855,2,,
|
||||
0xee3c5dda0c0656eef980df4631a4365a9738e264dbff6e29e224498e668332f6,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,91,0x6024aecccfbd4b97b55dd58e4be630d77753fff9,0xf67366e83cc9b115ef8cca93baed1f03e6d3ca9a,0,47557,23657395568,0x095ea7b3000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba300000000000000000000000000000000000000000000004a7de3836548f3c000,1711684859,29816796046,6550855,2,,
|
||||
0x9e7324b295df346da2ca3a7b9eeb0a670d39e68cd87c9f54c0891aff740ba5f6,72,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,92,0xdc1f6b6ebdd04dd8b38cea9d14d9f1c5b4e9673d,0xdac17f958d2ee523a2206206994597c13d831ec7,0,48888,23657395568,0x095ea7b3000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000000000000000000000000000000000008907f4c0,1711684859,29816796046,6550855,2,,
|
||||
0x7865d99bfdfaf146244f86662dc405af5bbb18365d3c7b42508bed679c52d104,10975470,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,93,0x46340b20830761efd32832a74d7169b29feb9758,0xedd83081cb2c5654c646c65e0701217da1764367,5000000000000000,350000,25762382556,0x,1711684859,,,0,,
|
||||
0x72af384b79050eb3f07577c0500beb83fb1c9979bd077b9643f54de331d9f329,21467,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,94,0x9277abcae0e406ec0e20f244d554dd2199299ab8,0x7edc54a98bacd7d261fa810e28886ac703d1e924,18030000000000000,350000,25762382556,0x,1711684859,,,0,,
|
||||
0x768d110cf5098b275df55f6ae07a238dba0eef706669138dc90bb735077596b3,26378,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,95,0x6116a2dff620f292f61b27495a7d52b93e2ddb52,0xdc96a7a187b7359e83a220795449a5c5ced4dd7e,151262100000000000,21000,25651844713,0x,1711684859,29218820637,2001000000,2,,
|
||||
0x38bc88a2df0bdc4efc1677457cce196c39798093615b722d27b68caa1b913759,9369262,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,96,0x28c6c06298d514db089934071355e5743bf21d60,0x4951be541b8bb41c6d40763775deb81affc1b32c,61435500000000000,207128,25650844713,0x,1711684859,102000000000,2000000000,2,,
|
||||
0xf7c31f0ec8c014ad99c0094a051dae38ec5637ae9f8d9ea9101e9a4b6c3d2de1,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,97,0x1a80b182ea7465c57eefed6afbe0ec41e093f656,0x28c6c06298d514db089934071355e5743bf21d60,960000000000000000,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x92deba20780cf4325c22d86c754079c1bb2802a26937fb222be19b5be0836920,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,98,0xf6cbfa733579ccd0791181286a1d08b6571c2fd7,0x28c6c06298d514db089934071355e5743bf21d60,960000000000000000,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0xbb0a14c613cff46e348367daeedafb7a626bd37e6112d55c1a7525e05721f829,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,99,0xdd0be8dd4d498dd3f82cfc911e216db9edd8f784,0x28c6c06298d514db089934071355e5743bf21d60,1000652959933984759,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x0bb20b2e7dc51496370584019775763759c3352d328773a49c5115ed2c6ec1f0,3812405,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,100,0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0,0xf36bd2a769ad313862a9b865250a79372743aa89,390543500000000000,21000,25650844713,0x,1711684859,98250958998,2000000000,2,,
|
||||
0x89a7e7652dfe8fa208e2190c2934cd7ab8df1c78789de7fcea2d5883696549a1,12,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,101,0xb1f290a16a30cf197f7503159760161d49061dfb,0x28c6c06298d514db089934071355e5743bf21d60,1001048915707099925,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x903b37262cc032900c2a59606422228f52a218a4a5ecc70540c0facc2518a948,1347,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,102,0x7fa4182d9691754244740552954cd91ed3c79717,0x60919951a5eddacffe5774cb62314e7c19c6a269,28073530622841173,21000,25650844713,0x,1711684859,36273497756,2000000000,2,,
|
||||
0xd9ee6d36c474561d4c6abf9c064f146342c0869e4c1d8977b4b17c98c73e1a7e,7,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,103,0x46021d68fb7e202f4a82cb656c768fd76b08cfce,0x28c6c06298d514db089934071355e5743bf21d60,1055650321473584043,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0xb70cc26ea9d774b0ecffe31f95ec5b78ab7651ea8d615311daf16cea1e2b4b3c,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,104,0x4940b82cdd09207de8a46d38d4b73826050f4d8d,0x28c6c06298d514db089934071355e5743bf21d60,1030198878802211271,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x082c918e9329d503b64e76f48c8e4970ab20899d2c6473a461eaf5dc885d7386,8,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,105,0xabad172a6887000a7c19332d9a15eb109ea42b9f,0x28c6c06298d514db089934071355e5743bf21d60,1028694277997401000,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x7bf8f55df6b9a7d994319fde8b32859c21e589b0365962c23dcc8c888386547b,6399955,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,106,0x56eddb7aa87536c09ccc2793473599fd21a8b17f,0xf0cf6b2af598c1f2909e148cbc5f5cc7c27b878b,719997001370000000000,207128,25650844713,0x,1711684859,102000000000,2000000000,2,,
|
||||
0x90d85b59615e7ccea4e2de0dc67d7bf490564b6b1ebb36f752e510da6c9d59b3,1114444,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,107,0xf7858da8a6617f7c6d0ff2bcafdb6d2eedf64840,0x27ae646ba7edd0f0c20d878fc3536e62680b1b74,10000000000000000,210000,25650844713,0x,1711684859,400000000000,2000000000,2,,
|
||||
0x1e981225c730c833eed35588243537611462a73f2e1bd31f8e6b33a67145f8f4,2849649,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,108,0xf89d7b9c864f589bbf53a82105107622b35eaa40,0x250a9d7d07828eb177ffce1f7179e4e9090ceee3,85501710000000000,90000,25650844713,0x,1711684859,200000000000,2000000000,2,,
|
||||
0x41ca9542c6c19c30a9678727e33695df37389759436e4a94b1336840248068b5,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,109,0xdb98e1986076b3178c41d1ff83e76f7bf43152c6,0x28c6c06298d514db089934071355e5743bf21d60,1014451730000000000,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x39f1f7262694966cf413a0bc2976aa2ab8fc66be4846f78a58016a3f6af77dc8,4,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,110,0x5d53017d09b763b9daeabf2175ebce13f1983285,0x28c6c06298d514db089934071355e5743bf21d60,1097738255008678706,207128,25650844713,0x,1711684859,29000000000,2000000000,2,,
|
||||
0x564e379ab60a3e1f617a612c4d21b41fa37ff684365cc479c43de280a842d795,5384,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,111,0xbd5cdd1ca9ae5f1443aec2642d43a538c32a473f,0xffe2341ee17498794a657a2d951e7015aca08326,4000000000000000,21000,24650844713,0x,1711684859,28217820637,1000000000,2,,
|
||||
0xa8b4d5ee83caa557743d079c29fa934d3705709069d82495a224804276e0ce9e,820,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,112,0xd3f02c59ea88688ea6a646abdad7823c7e813c48,0xae5cb480ede4899a055521fd7079434abd2a1aa3,278297517130961000,21000,24580844713,0x,1711684859,32090000000,930000000,2,,
|
||||
0x04c8c78a9fc4f891094a34944ddc8ca2e9abb2e724920bac30041c30cdfb18ca,0,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,113,0xb9a77182e62f04f218f8aed330299b2ba4b5dcc9,0x077d360f11d220e4d5d831430c81c26c9be7c4a4,121115590000000000,22000,24000000000,0x,1711684859,,,0,,
|
||||
0x3b114013a81b7ebc3b1403e57d4f6129206be67d2efac433cf26b437aa06a8e5,1042245,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,114,0xa4e5961b58dbe487639929643dcb1dc3848daf5e,0xac29e540d7ee0c00371a59ce128007364c0f2d42,2161590000000000,22000,24000000000,0x,1711684859,,,0,,
|
||||
0x514e79b868221db87c7b51b722a35a206929bab85a9523af6f7d5980f8697cb5,1,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,115,0x36ada070e6f292818b8de22ceb7d6c4caa4ed253,0xe5ffd5ef6b3d7affabd1c4e77203034c0d3505be,1991460000000000,21000,23780844713,0x,1711684859,28000000000,130000000,2,,
|
||||
0x5738f05d851cc3c830dafa867f604561c43a6238b8885c6568340e2489e4b1be,794,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,116,0x6225d179e6e2840eaa483f8b6ce35776f2afb38b,0x933ebf58ef846ed58b2763993683808d6b20c08d,20000000000000000,21000,23686709300,0x,1711684859,29431110876,35864587,2,,
|
||||
0x4da90d5166557a5c1f8e090700b59f8a3b8864a83bcdaecb57cdd374a5351376,152,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,117,0xad816a3d13b516e3095fe8ef9f1b9d6565f03249,0xbb251f3eea75ab7d133f84128ca36aecee4d5e63,8420000000000000,21000,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0xdaa9d06182866110a2089433ac7e698e884253b8dac21d1893da25cf63a1aa96,3,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,118,0xfd3ff5cc84f5bc6d01ed30ddcc84efb0e1cbd98e,0xef7a3d754b2061ea512b5c9cb0025f86acf7bdeb,7000000000000000,21000,23657395568,0x,1711684859,30852698836,6550855,2,,
|
||||
0xf201f1c8b222cf24f83e30d6a993e3c83912bf1e7a6b5d0d123918986ed57ce3,9,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,119,0x1f746615f4c54d6140b01f9ccda344e11993d0c9,0x3389afdcc4cc2d77264c193660b56007e768521f,25948431731972190,21000,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0x9f968624638d251d7d8ee61fb1bb8204d52f02c7cd3f54441ec69c74e5a72803,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,120,0xf99d1d82c23be7d41173a22e9f159d4f44f32023,0xa889714c394c081b0576b490d962e69d002e0da5,30000000000000000,21000,23657395568,0x,1711684859,30852698836,6550855,2,,
|
||||
0x11294dd49d80f4cca6595d35174e1ed3e5f1487c18116438c43b391afd05a3ae,285,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,121,0x776b6a9a3f171e19bce33742f0852c1cc389f607,0x8f36c3aba0aff7e40dca364e84beafb334040a0c,14030000000000000,21000,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0xc04b4aac07a46de456507149e6c1625bb55edf951a5fcd4941ea3eef0d8ddf72,10,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,122,0x430070eb0bce9ab3e563cf286440959df078142c,0x3a05e5d33d7ab3864d53aaec93c8301c1fa49115,10000000000000000,875556,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0x6ef5cbcc0715f5766bd70c6d8b3b7e8bbdfd6ba37359c4054ab9516c83453e51,1645,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,123,0x1fec03eb0dbd4190deb139e429a9de6c29de70a6,0x3a05e5d33d7ab3864d53aaec93c8301c1fa49115,380000000000000000,875556,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0x73c9f257187ae26064180a592bcb9653558b44f86435df5a98d392677029565c,9,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,124,0x164fe02299cdd7ad4aca4cf3931177e7ba5a7ad9,0xa7832a6cf1261574e3b0cac4f95eaa561784d173,67846154145176624,21000,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0xb74f9ca0feabdd0fb258f6e321ec8fc482c8ec447e381a407f4e8be6a7d6b8ed,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,125,0x997d40b8ab7856c3865e32f1ae44e4ae2aaec6cf,0xcf7c0e950e3e53a3bdf79e45f1aea77f108839ff,250000000000000000,21000,23657395568,0x,1711684859,30852698836,6550855,2,,
|
||||
0xb5174e9b96584de6acec502e570ec42aa7f94c9ba993418ddbf4c55b91ae9562,7,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,126,0xa4a2808806b10919af40c6571c7f3ee97221cf4a,0xbcf54e4036dca8233440002b7db7988d9bcd27fe,410000000000000000,21000,23657395568,0x,1711684859,29816796046,6550855,2,,
|
||||
0x4a6fd8510aa74879d599fd223c1832bc852dc15895cadd317334d5967ce32599,145975,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,127,0x0113a6b755fbad36b4249fd63002e2035e401143,0x3f04d291679bb42ba35562967045a5f49a37a77b,2490751012576000,21000,23652844713,0x,1711684859,25763000000,2000000,2,,
|
||||
0x0047396f9a19f03af39e70a13cbcbd6295b4a5d587d68c1690d466336fc7cbeb,133399,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,128,0x356483dc32b004f32ea0ce58f7f88879886e9074,0xa13baf47339d63b743e7da8741db5456dac1e556,0,502506,23651844716,0x31fa742d00000000000000000000000000000000000000000000000000000000000000a0262acb259365b53b7b4d1859e5cef0314403c70dbeae97a9c7ccb1db99ae621e09635669f480a0baa1d1967e4e5961294e9aa1ccf25c6e4b814c0511eaa34bf22b09f3870b3640444df2ab3c58cacb0af304db7645249c34cc6bdea1cd02330b000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000590000000000000209180000000000000000000000000003d7a34eb52e5ad7e3a47670ad373f8a09bc7e76ae926e2e7054b1f83dbbada97865adc5afe9516649a9a99fed83174052a5582defab679ff7f386f1826040bf54e8bc0000000000000000000000000000000000000000000000000000000000000000000000000006e00000000000000000000000000000000000000000007aa303373be8ba91ae5dfd000000000000000000000000000000000000000000b5c9f9ccfa791d7bef6e8000000000000000000000000000000000000000000000204e5ead861ccc8dff360000000000000000000000000000000000000000004cc00340ec4efe9f763e30000000000000000000000000000000000000000000aff1fca08c79fca02a83af000000000000000000000000000000000000000000001c13d4ab7c09a69a4fc80000000000000000000000000000000000000000003ab0b014db0007642519db00000000000000000000000000000000000000000047a08d9fda2f2293e87840000000000000000000000000000000000000000000000ef4f88fe145b0faf3ee00000000000000000000000000000000000000000087191c423e2274c82726dc000000000000000000000000000000000000000000ae8f8ca2fbaaf36b37d5be0000000000000000000000000000000000000000000020c114ca9746cbd663400b94ec91e4d38329d76fc36c3cba0eb63e6669fd8f6a7f32f1ebdedb22baf570140b1e1d75a24db374fb9bce498f842c0b4a2ed12aeb10d69b341bf00fe451fa20504c1f913ae9061601b754419389ad532907836fec4cdaf0f894c5861cb1d12263951ff32def377b0bbbe9a2c73dcf780f7664ee5fa5a38f4648687f0d979d25a7f4faf837ba5f3181dbacb21119d09b7a6976da57138d002ec6e34aea9b8a0bf5672ac519ef7ac870d915e6b304561161c7ad918e21ea4e999b9f6485846e2871349e8500a225be711bc9c6c3ecc57535b354512849b0baf519fe44df9cc210bab48df131a1ec51cd203b1814e317da336a275783de379f86dff3a437c5be1041460e71eaf3293aea9cb68df58f56409ca9f12fc9ea384241177db70052bb066a6b600658b1410e7c26f5b7b9bc72c964a50c2c5125e3db94f0f27f81bc240000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000219300dec3e0152b997ae6d8ff8b648b4f00762cb1ae668502a1b359f628c2be41bb0da612a7b7f5b1d2f38bd2227dd7b72db314afa03e798a162807c0663ef491df8fbd1c90fc5ec053155fc5f27f6d4a0406303215810ce150dbb96d2706aee032da04c57dc8207b1927185b74e18d41125ea3ec4d631fc8a50d53a7d94a4b02f4050e4a656c1dc15153c725a473c322989eb25ab0f94b0182b8b9368560afd22c29355ad6f2506bd07003bdd3efa9111051ce23889563c03583ee7e3ad6f6d2601d968be1a332a41705e001decd6c3ecf9ef88c35fe798ddbc628e874616341a2cb8e888d2c2447ef51bcc1bdeaa3fabfd266112a42d5e65632586220eb00625bd8346468bb009b58fa158498548efdcb537a91ae13e166c2180d7b63b9ca12b56f750f64694c07b3aeae8fec3a528357a401029eaa2e2d6b200f5a34bf35e244c648701ac5e1b881f25566366efd66a23869eccccefc56ffa928a4d83b1f80acaaf614b42ce9cfd61ca1826f27fdd80aa6ebf7988c2d03a90629952b10979077a8e803213291bf33cc8454c3f70e51f8a8419b240a125cf43693ee60eaac601ff4adb3896a34a0af71c7c6ba07273acc7e752f8b720d200b417be27faaa6327f2f37c7d31ce63d462507bbc70a1b996d0270a552453228727c98e910fc0a11441c34f29f0dd3c500f6225212a5bba08ac762794560c3a184e792b02161243000000000000000000000000000000000000000000000000000000000000000101bb5b7fac5d678b63c47c9b03d28dd36ed5b6cc1bf6b65489afbb5cdb6d01ef1c0985ccaea3c09a7bc850a96d5d3dc593013ecf75ca0bdd2baa2f50cc8488f903aaf239dc4acabdf6e8850b42fc8387065c694f5162520a8cfe2816628c33280b52a81e2545d26e50f3f15448b13754347ede0897c6dac9176439f22edb0c7c25204ecdf3e459c76c2dbc092a52233dd36c2f6f0f2513d2c21912fcfdee0c240e651ecf39e9ed0ae27ba6e4cca65b531bde933f7c438b464f10ad91189c3b6e1828f1a4ec35259d5fbcc63be45a78e75a9f110bbe352c0e3101c478395410d30fdaacbff478e6f20a9c37b8448d8e47c49692787208ecae455f1da16fc0975f1cb8a9d6402b17f96aa018c14fea39552e030109ace4d37cf5318017f781321d0134c7adf12c3d91b718da6a5e8771bb62355a62cec33d4d959fab9ec1d1fa101020b08cb8272a88abe7e5ced8a39c9b4fcb65572f00d1a047b2a5ab263960431c910ebb1929bd07bd4bf5d04025012739cbcffc3d89eef69e0bdbecaae2ac1e06ffac73c4751ad9ed29c62af3658029ff018bd6e236f097751cc756d9f9f73621778d6ed7f348c795952d40e3882fc4d5cd69cc16ba8c60f97956d4b4947929,1711684859,45698997011,1000003,2,,
|
||||
0xc7cb26eb6817344540c964ceb1e41ccb377c224fb0407cf581d45de46b3c6b77,16626,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,129,0x64e968003c934f8d7ad9a4e30f48ee8e2409bae6,0xf2f305d14dcd8aaef887e0428b3c9534795d0d60,0,250000,23651844716,0x82e7ee3e000000000000000000000000125b367c16c5858f11e12948404f7a1371a0fda3000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0dc7135be1ba48cb2a27ecdf25f3ae3f0a33aabbf90e610b6ba1d9893d762e79a0000000000000000000000000000000000000000000000000000000000000030883ba78e67487ba8f2b6f507084e497a618e4be9fa320e92e48273ef3b087c36e7b5f298fcd4a27f957e780afb8ea7b1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a9c60bd31ad44cc9ad3605ba51343d4868f4eaacfbcefa890a0c894a1ba3022fcbadd2b63df2bb269802047ffe3866dc073d6c512e205c4de503f0db3551bc85d17a1b09fbbe31699f2b635cdc233a8e45c57285352bd53827b0d149ba47ca78,1711684859,45698997011,1000003,2,,
|
||||
0x5d784d577b7544d2c8b72c99c2b04c8fb3f0c856fa1b2ecc0717e751f4ec2490,27,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,130,0x381faa66cdd1f53e52923d5921dcdff05fa89040,0x1cc7047e15825f639e0752eb1b89e4225f5327f2,0,45322,23651844713,0x395093510000000000000000000000005a32a70d654da5fae3707f8d91675e923d1841920000000000000000000000000000000000000000000013e98a055bd052a40000,1711684859,45698997008,1000000,2,,
|
||||
0x769c3d77ce4524b75aa00ba79051f061e599ab9aab82156827a394610aeb20b6,4,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,131,0x12e6038b5e4e954c14dda8e86045ebf9d9beb40a,0xdef1c0ded9bec7f1a1670819833240f027b25eff,5895804292988400,158740,23651844713,0x706394d5000000000000000000000000808507121b80c02388fad14726482e061b8da827000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000461748734f930e280000000000000000000000000000000000000000000000000014f233e88c7df0000000000000000000000000ff8ba4d1fc3762f6154cc942ccf30049a2a0cec6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012e6038b5e4e954c14dda8e86045ebf9d9beb40a0000000066063d4d000000000000000000000000000000000000000066063cf40000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001bf94e67e04b90e6b65c5492b4cf8617585ed772c3470627767b72ce2640c7f4d03c8e8d09710d8158db0a1b6ea655b319d39f41996ba80289a5f7bb945b71a02a869584cd000000000000000000000000382ffce2287252f930e1c8dc9328dac5bf282ba100000000000000000000000000000000735110dd09b57b7d5b2c2e8632d428cb,1711684859,24336370826,1000000,2,,
|
||||
0x7f69e2f0a45aa52bf2c3453d04132f87c939fcc2a5fbd7ee660089ec65475e36,3,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,132,0x07fc221e794de3c5de1d4331b941f4a3c20c299a,0x95ad61b0a150d79219dcf64e1e6cc01f0b64c4ce,0,65116,23651844713,0xa9059cbb000000000000000000000000c80bd5fb270ff67055114b1b04585e012518eb700000000000000000000000000000000000000000000b80e56030e5e80bcef35d,1711684859,23842138739,1000000,2,,
|
||||
0x2ce2b26f5cf7374cc12b11ea7e54ffbddfe98eed3cb90e338d7c46b16a6759e6,81,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,133,0x8a826946865957a6c23184ad3fd212d5f123da22,0xdef1c0ded9bec7f1a1670819833240f027b25eff,2807525853804000220,214710,23651844713,0xd9627aa4000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000026f655e39db673dc00000000000000000000000000000000000000000000160c75502444c9e9f78d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000ae41b275aaaf484b541a5881a2dded9515184cca869584cd000000000000000000000000382ffce2287252f930e1c8dc9328dac5bf282ba100000000000000000000000000000000b87cbc688a30916eb610777eb0712a6b,1711684859,26608200303,1000000,2,,
|
||||
0x717efb7b79bfc2b20ca1b6e1d5801ab77fe5db7e767a2ff3de151aa1ab9be065,17,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,134,0xb874eef631914636ab1012f1d96b4f72a0183b55,0xdef1c0ded9bec7f1a1670819833240f027b25eff,16845155122824000,133925,23651844713,0xd9627aa40000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000003bd8944f48434000000000000000000000000000000000000000000000000c31b7d24ad1e93fba00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000a8c8cfb141a3bb59fea1e2ea6b79b5ecbcd7b6ca869584cd000000000000000000000000382ffce2287252f930e1c8dc9328dac5bf282ba100000000000000000000000000000000a2211f12a045dbc864f59cf97c77cb7d,1711684859,24550674012,1000000,2,,
|
||||
0x4a33630b3bed3a9f8abf39bf817f812811a5ee1db4b66cea8d7e10e1d5ad851e,28,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,135,0xb6e796057150cb93ab6233826839e5d3552bda2d,0xcc665390b03c5d324d8faf81c15ecee29a73bcb4,0,59327,23651844713,0x095ea7b30000000000000000000000001111111254eeb25477b68fb85ed929f73a96058200000000000000000000000000000000000000000000092b26c789ad561d08ae,1711684859,24089048808,1000000,2,,
|
||||
0x8360f32490a8ff9002805f226766ff5b90871e44a73f85c851554fb03aa1f160,97,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,136,0x4cc2e7a58763ba746e00f0d19003aa839fdc0d04,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,200000000000000000,263266,23651844713,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063d1f00000000000000000000000000000000000000000000000000000000000000020b080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000002c68af0bb1400000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000002c68af0bb14000000000000000000000000000000000000000000000000d4121c6d8f153213faca00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000097225fae89b370e7721f961d1145e64df56f2482,1711684859,25006072071,1000000,2,,
|
||||
0x7c8e881315e5d8b82cf54b23b04862e4aee1ddc33f995a13ce3503e583fd5e6a,2,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,137,0xc7e6ac051a450fec845d5da51e74b486957aca88,0x1111111254eeb25477b68fb85ed929f73a960582,14037629269020002,142364,23651844713,0x0502b1c500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031df2642118d620000000000000000000000000000000000000000001dbe4c1587daa21ae7efe40000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000180000000000000003b6d034097e1fcb93ae7267dbafad23f7b9afaa08264cfd893dc6da8,1711684859,24872354503,1000000,2,,
|
||||
0xf097e5eae8aab0067d3bf59b36df1726938b4e485111178c5c8b7c8561b8b168,638,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,138,0x6df18d128ae852d34201891c03e943a3e4a2a552,0xef87529ca9c67a849bd7013837fc42d4de92ca82,0,190650,23651844713,0xe4435e130000000000000000000000000000000000000000000000000000000000001a59,1711684859,24668274033,1000000,2,,
|
||||
0x82f5ceb2f23ae2cc96c2671ed044af83cc86de04c5ed79e6255a10a4470e1bcf,7,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,139,0xc500daa913d0e0f0d9b8bfd5aaa5e6493720f16e,0xc092a137df3cf2b9e5971ba1874d26487c12626d,0,104448,23651844713,0xa9059cbb00000000000000000000000033388dcad4b1d12945249a4781f86706d2b1e48d000000000000000000000000000000000000000000000384fcfe4685b5a13fce,1711684859,25366333280,1000000,2,,
|
||||
0xeef1f954a0faa61ca08c78ac1448dd7c446faa1a1c4a50141a94367362873b53,20,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,140,0x05b10271e3c0a6da1db92f306c3b7df5656c7c70,0x07ef9e82721ac16809d24dafbe1792ce01654db4,0,37898,23651844713,0xa9059cbb00000000000000000000000005b10271e3c0a6da1db92f306c3b7df5656c7c700000000000000000000000000000000000000000000000e453090278df5e18c0,1711684859,24184574981,1000000,2,,
|
||||
0xaa7c09720bb2902bc04114ca6fd3b24af5c1141da31518ed77c7895fd82255c4,22,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,141,0x62fca184ae63acfe49ae0f4d8d770dbebeddec3f,0x62fca184ae63acfe49ae0f4d8d770dbebeddec3f,0,21758,23651844713,0x646174613a3b72756c653d65736970362c6973626c6f622d626c6f626265642d66696c6573,1711684859,24846414127,1000000,3,20000000000,0x01816e625bc23c5f13eadd889e414e848ed9b5458b4e1130777927eece53958a
|
||||
0x4fdd3542fce8926d69ea92143417543457de87c63aef63cdf10eaa7ed7dd9f12,2,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,142,0xb94249a20b2eb42f372e6b0d94b239ca09083c00,0x430f4919d679b02dca4572579caabb7676d65f1e,20377000000000000,21000,23651844713,0x,1711684859,24499494288,1000000,2,,
|
||||
0x0383762c900debc84d9d240d5be35a635c208c7dbc530940d51e5fba1a70c775,52,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,143,0xb07c0d1f5d4056e5897bd804b7fda4d6e7e5591a,0xd5368973900bf19c16e91a1300733d048e02777d,5614000000000000,21000,23651844713,0x,1711684859,25403174377,1000000,2,,
|
||||
0x73b24df2f2708b64bb94773fa2afcdf4e1f1dff8ac9d7850ed68ed4a8d29f6c0,5,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,144,0xbbe7b67ac11391e4e94a5c1d42d1ca16a73c7330,0xe68d74b9be080abf66521d23ceab2a7135c0023d,0,21758,23651844713,0x646174613a3b72756c653d65736970362c6973626c6f622d626c6f626265642d66696c6573,1711684859,26221575523,1000000,3,20000000000,0x01816e625bc23c5f13eadd889e414e848ed9b5458b4e1130777927eece53958a
|
||||
0xb3479bf9071511afc0a627b803974d24421daf7d21742a7fc284f4e45a445c67,25,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,145,0x7ea9838f58ec4b9051f5eb0f3a4893f3cefd61c6,0xe68d74b9be080abf66521d23ceab2a7135c0023d,0,21758,23651844713,0x646174613a3b72756c653d65736970362c6973626c6f622d626c6f626265642d66696c6573,1711684859,26992227289,1000000,3,20000000000,0x01816e625bc23c5f13eadd889e414e848ed9b5458b4e1130777927eece53958a
|
||||
0xcbe5e9928815d934bbed497b20bc8ff2ab2ef5700748553ae1e1250fd1b2b0d4,29,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,146,0xb6e796057150cb93ab6233826839e5d3552bda2d,0x1111111254eeb25477b68fb85ed929f73a960582,0,264627,23651844713,0x0502b1c5000000000000000000000000cc665390b03c5d324d8faf81c15ecee29a73bcb40000000000000000000000000000000000000000000008bb61e29b8082abb4d10000000000000000000000000000000000000000000000e177799272135c52810000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000280000000000000003b6d034049aa60661199aeaf8b6f5abd51151f918875c3cd80000000000000003b6d034021ffaa1c83946a89bef4d639f71d070c868b869493dc6da8,1711684859,24143681463,1000000,2,,
|
||||
0xbb3334ec9f8e402d40f2bf7697792e6bd5b23b50f44609d321bb7dd362b459de,145976,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,147,0x0113a6b755fbad36b4249fd63002e2035e401143,0x2c317942ea356a3e2cd637a5c272bed662d67dbf,1908301373028622,21000,23652844713,0x,1711684859,25763000000,2000000,2,,
|
||||
0x2ec8c5b58be587251e742e4150fbe80a8a5e6317494000db5415e32e4cb7b8c0,3812406,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,148,0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0,0x87e3604f72e5d6e9294b13ae27ef3de3f0987b29,198190000000000000,21000,25650844713,0x,1711684859,98250958998,2000000000,2,,
|
||||
0x4dc5f892ea1d1f0a947fc77baeb7f941ebd21e0375fc6e896150b17392139b78,10975471,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,149,0x46340b20830761efd32832a74d7169b29feb9758,0xdac17f958d2ee523a2206206994597c13d831ec7,0,350000,25762382556,0xa9059cbb000000000000000000000000a2daf3d265fc111c792383f4d3bb5ace2d5c8e110000000000000000000000000000000000000000000000000000000011437f14,1711684859,,,0,,
|
||||
0x06296237b2e17a0671fe99e798fe89e4cab0e933604f87a16edd2131f192a930,10975472,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,150,0x46340b20830761efd32832a74d7169b29feb9758,0xf660d6a16d62b29a9e177beebba39bb37c754321,77180000000000000,350000,25762382556,0x,1711684859,,,0,,
|
||||
0x26dbf53f877c591e76bdce00870d4400655470064cf86e5309ad05024fc308da,10975473,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,151,0x46340b20830761efd32832a74d7169b29feb9758,0xdac17f958d2ee523a2206206994597c13d831ec7,0,350000,25762382556,0xa9059cbb000000000000000000000000841b8889ba2881d36643e864dab4a385980991bb000000000000000000000000000000000000000000000000000000000501bd00,1711684859,,,0,,
|
||||
0x5ac9ce77bdc497b80851a6013d3323b0281ce56c2b7a83c17ec8f5992e250a90,10975474,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,152,0x46340b20830761efd32832a74d7169b29feb9758,0x7f1dc37ac90e7e1b113a90eff11d742c27525da1,115472696616700000,350000,25762382556,0x,1711684859,,,0,,
|
||||
0x41bba321b2673150974d0db5eb3d483fb042ecddfb3af5ca014d00c823718139,10975475,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,153,0x46340b20830761efd32832a74d7169b29feb9758,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,350000,25762382556,0xa9059cbb000000000000000000000000a0db3e9698c8c5e26eda35656e88eb5b3ccece040000000000000000000000000000000000000000000000000000000046926800,1711684859,,,0,,
|
||||
0xf9f29570d00867dab368bcc3a542e18891c617a363ae008c5ea4c3921d148e1a,10975476,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,154,0x46340b20830761efd32832a74d7169b29feb9758,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0,350000,25762382556,0xa9059cbb000000000000000000000000f2e2aa2a8d115d988ecdf3467175222e1598ec160000000000000000000000000000000000000000000000000000000004912f6d,1711684859,,,0,,
|
||||
0xd4f01e085e916d9175e2acf66253a16ae71952d14e99e4b239a23e42c7b2749d,9369263,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,155,0x28c6c06298d514db089934071355e5743bf21d60,0xdac17f958d2ee523a2206206994597c13d831ec7,0,220436,25650844713,0xa9059cbb00000000000000000000000045bfcad312e474aa076b5980ff15dd7bdffe678100000000000000000000000000000000000000000000000000000001dcd65000,1711684859,102000000000,2000000000,2,,
|
||||
0x80920def28d0069d102bbbd56394546803068f7f5a4d65f4aac1affaa4d46f47,9369264,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,156,0x28c6c06298d514db089934071355e5743bf21d60,0x80c62fe4487e1351b47ba49809ebd60ed085bf52,0,207128,25650844713,0xa9059cbb000000000000000000000000b3130c9830767b9a218372db25111b3cd1fcd4c2000000000000000000000000000000000000000000000983ffbe0c8b32f90000,1711684859,102000000000,2000000000,2,,
|
||||
0x1234cc74cea93bf0bbba532587d1f2065290c0fa2568f3b5596f10470495b4f8,64,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,157,0x5e8da70ab7dfdc0850d2e75d2236db83d63fa1fb,0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad,0,260840,23685633362,0x3593564c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000066063d1f0000000000000000000000000000000000000000000000000000000000000002000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001000000000000000000000000005ced44f03ff443bbe14d8ea23bc24425fb89e3ed000000000000000000000000000000000000000000000000000000010946e2f3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002bdac17f958d2ee523a2206206994597c13d831ec70001f4c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000311dad35bca306526b800100000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000594daad7d77592a2b97b725a7ad59d7e188b5bfa,1711684859,31650908150,34788649,2,,
|
||||
0x096e0ef7b5a8dbc99351f052fee562fb175643e56947223d6e4e9a6209fadbdd,567258,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,158,0xe93685f3bba03016f02bd1828badd6195988d950,0x902f09715b6303d4173037652fa7377e5b98089e,0,1024604,28104417337,0x252f7b0100000000000000000000000000000000000000000000000000000000000000d90000000000000000000000007122985656e38bdc0302db86685bb972b145bd3c0000000000000000000000000000000000000000000000000000000000030d40d7e690add7d71f1ae6642d4e93a4ebc153d379dc7344ca6cf01cf8c0b90d4db6d7e690add7d71f1ae6642d4e93a4ebc153d379dc7344ca6cf01cf8c0b90d4db600000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000f400000000000000000000000038de71124f7a447a01d67945a51edce9ff4912510000000000001aa600d9ec901da9c68e90798bbbb74c11406a32a70652c300657122985656e38bdc0302db86685bb972b145bd3c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000de432ea83ea50000000000000000000000000000000000000000000000000000000000000000014f5d839676f90053908f4b456801198401b026936000000000000000000000000000000000000000000000000,1711684859,,,0,,
|
||||
0x4e85151a647aad5d66e53f904a34279e86a38b4e8693c5604cde32683d40b676,6,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,159,0xcf57239a38d355b25a461b59c69fc6db31960b61,0x1231deb6f5749ef6ce6943a275a1d3e7486f4eae,0,346411,23730844713,0xe40f24600000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000025911833af07fef26ded741bf76f2f08e2f2d15571213b5aef37a25616b2e247cb52d70000000000000000000000000000000000000000000000000000000000000004c6fa7af3bedbad3a3d65f36aabc97431b1bbe4c2d2f6e0e47ca60203452f5d6196c567b8ca6cc5708159ff355b1b7da7d559d0210bda805d9a6a2b466986984f0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000102599d7aeba0c8dacb55b58dcde1875d5c7aef8d32ced135fd65b5c7a6d117c4000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000004577a46a3ecf44e0ed44410b7793977ffbe22ce0000000000000000000000000000000000000000000000000000000002ffb5340000000000000000000000000000000000000000000000000000416edef1601be000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009616c6c627269646765000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077068616e746f6d00000000000000000000000000000000000000000000000000,1711684859,31240000000,80000000,2,,
|
||||
0x4f8d9f88295622dedbefa0e4175c19e7572aaa56fe96ef4024a146681067043d,293558,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,160,0x58edf78281334335effa23101bbe3371b6a36a51,0x408e41876cccdc0f92210600ef50372656052a38,0,65168,24650844713,0xa9059cbb0000000000000000000000005ba11fa7e47399e21101ef5cdcbdf281f476e91b000000000000000000000000000000000000000000003f870857a3e0e3800000,1711684859,46163326208,1000000000,2,,
|
||||
0x4098930bd306f25ddf8a45cbab7f83381051c54dfb5f09f42c7ef0803ac37cf5,4,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,161,0xdf01f14c52899f127d906d20a695f024538b4710,0xc3a105cf6534b447301679820db7911942d8d57e,0,200503,23657395568,0x3ccfd60b,1711684859,30852698836,6550855,2,,
|
||||
0x3bb7b1197faedc1e37599af6a519aa176dcb15af387fe44f0a327f50720db16c,3,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,162,0x46f9208bc894f06229b0c79b0c2d5535ed341da1,0x60a446c0785267d192ca861abf803d15d27ecd8b,11636630321547572,21000,46845043807,0x,1711684859,46845043807,46845043807,2,,
|
||||
0xef82524865dd832792bd134e212c45adaf6046019267dbdc7fdcefd2a105c313,250475,0x831e700060bf486b138a148f2e60b1ce8595d6c85ffae24e997e4e090705dc05,19537146,163,0x4838b106fce9647bdf1e7877bf73ce8b0bad5f97,0x388c818ca8b9251b393131c08a736a67ccb19297,38049315420960071,22111,23650844713,0x,1711684859,23650844713,0,2,,
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,3 @@
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas
|
||||
47218,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,0xfc1dd3249585b593ad18822a95873c75779ccbe8a420b457be380b977fc38e87,0xfaa1e51d379b21f7,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0xdef39a3afcfb55fabd16d7d5a19d8b078cb95a117ea9596af289525eb8592982,0xab6d1b109c04c1f43f86da33ece31689d9ba1c44ea809d0979c05057a0703c28,0xf0afaf08454f89092907f820c40db77afbd0270f179166907dc110f9723972d7,0x9746c7e1ef2bd21ff3997fa467593a89cb852bd0,1460233976906,44246932724217368,766,0x476574682f76312e302e312f77696e646f77732f676f312e342e32,42085,42000,1438936285,2,
|
||||
47219,0x944f09177142833c644c979a83900d8cae1ee67369774b88b3b330bb72825082,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,0x52cf720359834975,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0xd757552351d6a714feda148f8f6f1283e000e05ea407352d45bc9dfc4c16ffe9,0x05a16e52dbacec805dc881439ef54338e8324ee133a4dbbb8ab17f8c73290054,0x9c8327de15d9d1668feb6e3583ddc337fb857620a5a3ff66d0d66148864b9d55,0xf927a40c8b7f6e07c5af7fa2155b4864a4112b13,1459520972035,44248392245189403,763,0x476574682f76312e302e312f6c696e75782f676f312e342e32,42125,42000,1438936326,2,
|
||||
number,hash,parent_hash,nonce,sha3_uncles,logs_bloom,transactions_root,state_root,receipts_root,miner,difficulty,total_difficulty,size,extra_data,gas_limit,gas_used,timestamp,transaction_count,base_fee_per_gas,withdrawals_root,withdrawals,blob_gas_used,excess_blob_gas
|
||||
47218,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,0xfc1dd3249585b593ad18822a95873c75779ccbe8a420b457be380b977fc38e87,0xfaa1e51d379b21f7,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0xdef39a3afcfb55fabd16d7d5a19d8b078cb95a117ea9596af289525eb8592982,0xab6d1b109c04c1f43f86da33ece31689d9ba1c44ea809d0979c05057a0703c28,0xf0afaf08454f89092907f820c40db77afbd0270f179166907dc110f9723972d7,0x9746c7e1ef2bd21ff3997fa467593a89cb852bd0,1460233976906,44246932724217368,766,0x476574682f76312e302e312f77696e646f77732f676f312e342e32,42085,42000,1438936285,2,,,,,
|
||||
47219,0x944f09177142833c644c979a83900d8cae1ee67369774b88b3b330bb72825082,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,0x52cf720359834975,0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347,0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0xd757552351d6a714feda148f8f6f1283e000e05ea407352d45bc9dfc4c16ffe9,0x05a16e52dbacec805dc881439ef54338e8324ee133a4dbbb8ab17f8c73290054,0x9c8327de15d9d1668feb6e3583ddc337fb857620a5a3ff66d0d66148864b9d55,0xf927a40c8b7f6e07c5af7fa2155b4864a4112b13,1459520972035,44248392245189403,763,0x476574682f76312e302e312f6c696e75782f676f312e342e32,42125,42000,1438936326,2,,,,,
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
hash,nonce,block_hash,block_number,transaction_index,from_address,to_address,value,gas,gas_price,input,block_timestamp,max_fee_per_gas,max_priority_fee_per_gas,transaction_type
|
||||
0x99f1097abd8f33a68f0ed63d60de5f3e7e2a3e0579b90d5f46a4f201c658b46d,9,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,47218,0,0x1406854d149e081ac09cb4ca560da463f3123059,0xa0e74ae010d51894734c308d612131056bb721ad,110000000000000000000,40000,62227241854,0x,1438936285,,,
|
||||
0x95844e6c54b4aafc8e1f75784127529280e75c3a980d91f6dfca1c1b0eb078fb,78,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,47218,1,0xe6a7a1d47ff21b6321162aea7c6cb457d5476bca,0xee80ef3c49d9465c7fc2b3d7373fdbbbc3fe282f,8140416390630760000,21000,62222792381,0x,1438936285,,,
|
||||
0xbd5ab8937e52a6244209d804471be4878df6c364bca0111dd6d05e0d3edf63cf,79,0x944f09177142833c644c979a83900d8cae1ee67369774b88b3b330bb72825082,47219,0,0xe6a7a1d47ff21b6321162aea7c6cb457d5476bca,0xe25e3a1947405a1f82dd8e3048a9ca471dc782e1,8306052477120672000,21000,61580653163,0x,1438936326,,,
|
||||
0x4bcc1dd0c56c0b767b1ee3cb8bce7df44518f1696205299e34eb53a5e00a863e,1,0x944f09177142833c644c979a83900d8cae1ee67369774b88b3b330bb72825082,47219,1,0xf9a19aea1193d9b9e4ef2f5b8c9ec8df93a22356,0x32be343b94f860124dc4fee278fdcbd38c102d88,1998716170000000000,21000,61134768794,0x,1438936326,,,
|
||||
hash,nonce,block_hash,block_number,transaction_index,from_address,to_address,value,gas,gas_price,input,block_timestamp,max_fee_per_gas,max_priority_fee_per_gas,transaction_type,max_fee_per_blob_gas,blob_versioned_hashes
|
||||
0x99f1097abd8f33a68f0ed63d60de5f3e7e2a3e0579b90d5f46a4f201c658b46d,9,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,47218,0,0x1406854d149e081ac09cb4ca560da463f3123059,0xa0e74ae010d51894734c308d612131056bb721ad,110000000000000000000,40000,62227241854,0x,1438936285,,,0,,
|
||||
0x95844e6c54b4aafc8e1f75784127529280e75c3a980d91f6dfca1c1b0eb078fb,78,0x889c421abc62a48641eee140519e6da8c9dc01d85d8f5c4fbc3c13e3c6e4cb3e,47218,1,0xe6a7a1d47ff21b6321162aea7c6cb457d5476bca,0xee80ef3c49d9465c7fc2b3d7373fdbbbc3fe282f,8140416390630760000,21000,62222792381,0x,1438936285,,,0,,
|
||||
0xbd5ab8937e52a6244209d804471be4878df6c364bca0111dd6d05e0d3edf63cf,79,0x944f09177142833c644c979a83900d8cae1ee67369774b88b3b330bb72825082,47219,0,0xe6a7a1d47ff21b6321162aea7c6cb457d5476bca,0xe25e3a1947405a1f82dd8e3048a9ca471dc782e1,8306052477120672000,21000,61580653163,0x,1438936326,,,0,,
|
||||
0x4bcc1dd0c56c0b767b1ee3cb8bce7df44518f1696205299e34eb53a5e00a863e,1,0x944f09177142833c644c979a83900d8cae1ee67369774b88b3b330bb72825082,47219,1,0xf9a19aea1193d9b9e4ef2f5b8c9ec8df93a22356,0x32be343b94f860124dc4fee278fdcbd38c102d88,1998716170000000000,21000,61134768794,0x,1438936326,,,0,,
|
||||
|
||||
|
@@ -43,6 +43,7 @@
|
||||
"standardV": "0x0",
|
||||
"to": "0xa0e74ae010d51894734c308d612131056bb721ad",
|
||||
"transactionIndex": "0x0",
|
||||
"type": "0x0",
|
||||
"v": "0x1b",
|
||||
"value": "0x5f68e8131ecf80000"
|
||||
},
|
||||
@@ -65,6 +66,7 @@
|
||||
"standardV": "0x1",
|
||||
"to": "0xee80ef3c49d9465c7fc2b3d7373fdbbbc3fe282f",
|
||||
"transactionIndex": "0x1",
|
||||
"type": "0x0",
|
||||
"v": "0x1c",
|
||||
"value": "0x70f89193d7505e40"
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
"standardV": "0x1",
|
||||
"to": "0xe25e3a1947405a1f82dd8e3048a9ca471dc782e1",
|
||||
"transactionIndex": "0x0",
|
||||
"type": "0x0",
|
||||
"v": "0x1c",
|
||||
"value": "0x734506b87887f100"
|
||||
},
|
||||
@@ -65,6 +66,7 @@
|
||||
"standardV": "0x1",
|
||||
"to": "0x32be343b94f860124dc4fee278fdcbd38c102d88",
|
||||
"transactionIndex": "0x1",
|
||||
"type": "0x0",
|
||||
"v": "0x1c",
|
||||
"value": "0x1bbcddc457ade400"
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user