Point 29: one command to run a node, proven from a fresh clone
run-node.sh folds the four manual steps (apply patches, build the fork, load the registries, set BESU_OPTS) into a single deterministic, idempotent command. It verifies the genesis sha256 and every registry against SHA256SUMS and refuses on mismatch; applies patches 0001,0003,0004,0005 on a pristine upstream checkout (0002 testnet excluded) with a reverse-apply idempotence check; builds with installDist; starts a follower with the correct BESU_OPTS. It holds no key. The registries a from-genesis follower needs were missing from this package, only the code that reads them was here, so nobody outside could cross block 13,014,000. Added them as public data (Falcon public keys, validator addresses, possession proofs; no private material), byte-identical across three independent validators, with SHA256SUMS and a provenance README. Secret gate passes. Proven from a fresh git clone in WSL, as a stranger: built (BUILD SUCCESSFUL), idempotent on re-run, started, loaded all three registries with verified possession proofs, block-0 hash equals the network genesis, and synced from block 0 with zero anchor rejections and zero stateroot mismatches. A real finding this test surfaced, fixed and documented: a from-genesis node starts into the genesis validator set N=3, where the published seal schedule (K=3 at 13,034,000, K=6 at 14,961,456) is unreachable, so PqAnchorThresholdGuard refuses to start. The fix baked in is the guard's own documented remedy, minSealsCeiling=1, which relaxes only the seal-count floor (a proposer-liveness property) without weakening the PQ binding: every anchor still needs a valid registry-verified Falcon seal. A validator does not set this. Honest limit: crossing 13,014,000 was not reached in-session because the two public bootnodes serve historical block bodies at only ~7 blk/s sustained (ETA ~19 days), and syncing bodies from validators would breach the read-only fleet rule. The crossing rests on these registries being byte-identical to those in the Aug 15 import proof that reached the live tip.
This commit is contained in:
parent
9109adce96
commit
edfc637ebd
2
.gitattributes
vendored
2
.gitattributes
vendored
@ -1,3 +1,5 @@
|
||||
genesis.json -text
|
||||
patches/*.patch -text
|
||||
vectors/** -text
|
||||
registries/*.json -text
|
||||
registries/*.properties -text
|
||||
|
||||
@ -11,14 +11,56 @@ is a node nobody can sync from, and the bootnodes section says plainly how diali
|
||||
|
||||
---
|
||||
|
||||
## The three things you need
|
||||
## The one command
|
||||
|
||||
If you have JDK 21 and git, one command verifies the genesis and the registries by sha256, fetches
|
||||
upstream Besu at the named commit, applies the four mainnet patches in order, builds the node, and
|
||||
starts a full node syncing chain 2800 from block 0:
|
||||
|
||||
```
|
||||
./run-node.sh --bootnode <enode://...@host:port>
|
||||
```
|
||||
|
||||
That is the whole setup. The script is deterministic and idempotent: it refuses to run if the
|
||||
genesis or the registries do not match their published sha256, it re-uses a build it already made,
|
||||
and re-running it re-applies nothing and rebuilds nothing. It holds no key and signs nothing. It
|
||||
configures a node that VALIDATES chain 2800, including the post-quantum certificate anchor, but does
|
||||
not PRODUCE seals; producing seals needs a validator Falcon key, which is not in this repository and
|
||||
is not required to follow the chain.
|
||||
|
||||
```
|
||||
./run-node.sh --help # --data-path, --p2p-port, --rpc-port, --sync-min-peers, --no-start, --rebuild
|
||||
./run-node.sh --no-start ... # verify, patch and build, but do not start the node
|
||||
./run-node.sh --sync-min-peers 1 # on a young network with few reachable peers (Besu's default is 5)
|
||||
```
|
||||
|
||||
You still need a bootnode enode for discovery (see the bootnodes section below for how to get one
|
||||
today). Everything except peer discovery works without it; if you omit `--bootnode` the script says
|
||||
so plainly and stops with instructions rather than starting a node that can never find a peer.
|
||||
|
||||
Everything the one command does is also written out by hand below, unchanged, for anyone who wants to
|
||||
audit each step rather than run it.
|
||||
|
||||
---
|
||||
|
||||
## The four things you need
|
||||
|
||||
| What | Where |
|
||||
|---|---|
|
||||
| `genesis.json` | The genesis file, byte for byte as it sits on the Foundation nodes. sha256 `361709dccec4e9fc85be5aec33b30b58a55dc53424087d84c1ad11bd1d944c24` (of the published file with LF line endings, exactly as `curl` fetches it; a Windows checkout that converts line endings will hash differently) |
|
||||
| `registries/` | The public Falcon validator registries. Without them a node imports fine to block 13,014,000 (the first anchor) and then refuses every anchor block, because it cannot map a certificate's seal indices to validator addresses. See `registries/README.md`; sha256 of each below. |
|
||||
| a bootnode enode | requested by mail for now; see the bootnodes section below |
|
||||
| `patches/`, `precompiles/` | The Besu fork, see `README.md`. Needed to sync past block 9,189,161 |
|
||||
|
||||
The registries are public (Falcon public keys and validator addresses, each carrying a proof of
|
||||
possession and an ECDSA claim; no private key material). Their sha256, also in `registries/SHA256SUMS`:
|
||||
|
||||
```
|
||||
006b1b3fb814ed84622539160956263faca7c0b76585c22f2e8acb926c0bcb7f manifest-13014000.json
|
||||
23736b7d4ba1d3213496f8b5a5f756d5c958b08efebdeb1329b24d7dfa45fb6e manifest-13600000.json
|
||||
c9a215d294e106f69fb2f16e3af21f9787523969e4b7260a3098f4b2cf458059 registru-2800-v2-13600000.properties
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Which Besu
|
||||
@ -107,8 +149,62 @@ measured heights of each run.
|
||||
|
||||
---
|
||||
|
||||
## The configuration a follower passes (BESU_OPTS)
|
||||
|
||||
The Aere fork reads its per-node configuration from JVM system properties passed through the
|
||||
`BESU_OPTS` environment variable, not from the genesis file. `run-node.sh` sets these for you; this
|
||||
is what it sets, and what a manual operator must export before the `besu` command below, or the node
|
||||
will refuse the first anchor at block 13,014,000.
|
||||
|
||||
```bash
|
||||
REG=/path/to/aere-node/registries
|
||||
export BESU_OPTS="\
|
||||
-Daere.basefee.floor.forkBlock=10141734 \
|
||||
-Daere.basefee.floor.value=1000000000 \
|
||||
-Daere.pq.chainId=2800 \
|
||||
-Daere.pq.anchorBlock=13014000 \
|
||||
-Daere.pq.anchorInterval=32 \
|
||||
-Daere.pq.anchor.maxSeals=9 \
|
||||
-Daere.pq.anchorMinSeals=13014000:0,13034000:3,14961456:6 \
|
||||
-Daere.pq.anchor.minSealsCeiling=1 \
|
||||
-Daere.falcon.anchor.address=0x5214F0e53899Dad805ef3AdF0624F5e49d2a5EB5 \
|
||||
-Daere.falcon.anchor.block=13889290 \
|
||||
-Daere.falcon.manifest=$REG/manifest-13600000.json \
|
||||
-Daere.falcon.registry.history=$REG/manifest-13014000.json,$REG/registru-2800-v2-13600000.properties"
|
||||
```
|
||||
|
||||
### Why the seal-threshold ceiling, for a from-genesis node
|
||||
|
||||
A node syncing from block 0 starts into the GENESIS validator set, which is small (three
|
||||
validators). The startup threshold guard (`PqAnchorThresholdGuard`) refuses to arm a seal threshold
|
||||
at or above that set's QBFT quorum, because a proposer at that set size could never gather it. The
|
||||
published schedule reaches K=3 (block 13,034,000) and K=6 (block 14,961,456), both unreachable at
|
||||
N=3, so without `aere.pq.anchor.minSealsCeiling` a from-genesis node refuses to start with
|
||||
`AERE-PQC-THRESHOLD-01`. The ceiling lowers the EFFECTIVE threshold to what the genesis set supports
|
||||
(`quorum(3) - 1 = 1`) WITHOUT editing the published schedule, exactly as that guard's own message
|
||||
instructs (`--Xaere-pq-anchor-min-seals-max`). It does not weaken the post-quantum binding a
|
||||
follower checks: every anchor must still carry a valid validator Falcon seal that verifies against
|
||||
the registry, and its digest must still bind the certificate under the block hash; only the
|
||||
seal-COUNT floor, which is a proposer-liveness property relative to the current set and not a
|
||||
history-verification property, is relaxed to one. Real anchor blocks carry three to nine seals, so
|
||||
all import cleanly. A validator, which starts into the full set and proposes, does not set this.
|
||||
|
||||
This is the FOLLOWER subset, and the distinction is in the code under `anchor/`, not guessed. A
|
||||
validator additionally passes `aere.falcon.key` (the signing key), the `aere.falcon.attach*` and
|
||||
`aere.falcon.validatorCount` properties (these drive seal PRODUCTION only), and
|
||||
`aere.falcon.forkBlock` (a per-block Falcon rule the shipped code retires at the anchor block, so it
|
||||
is inert; leaving it unset keeps the non-blocking baseline). What is above is exactly what the
|
||||
IMPORT path reads: the registries (`aere.falcon.manifest` loads only together with
|
||||
`aere.falcon.anchor.address`, so those two are registry wiring here, not attach knobs;
|
||||
`aere.falcon.registry.history` carries every earlier registry the chain was signed against), the
|
||||
anchor-validation schedule (`aere.pq.*`), and the 1 Gwei base-fee floor live from block 10,141,734.
|
||||
|
||||
---
|
||||
|
||||
## Start it
|
||||
|
||||
Export `BESU_OPTS` as above first, then:
|
||||
|
||||
```bash
|
||||
besu \
|
||||
--genesis-file=/path/to/aere-node/genesis.json \
|
||||
|
||||
59
registries/README.md
Normal file
59
registries/README.md
Normal file
@ -0,0 +1,59 @@
|
||||
# Falcon validator registries for chain 2800
|
||||
|
||||
These files are the **public** Falcon-512 validator registries that a node must hold to validate the
|
||||
post-quantum certificate anchor (see `../anchor/README.md` and `../RUN-A-NODE.md`). Without them a
|
||||
from-genesis node imports fine up to block **13,014,000**, the first anchor, and then refuses every
|
||||
anchor block, because the seal-validation rule cannot map a certificate's seal indices to validator
|
||||
addresses. The refusal is deliberate and fail-closed: `AERE-PQC-REG-BLOCK-01`.
|
||||
|
||||
## What is in a registry, and why it is safe to publish
|
||||
|
||||
Each entry binds a validator index to:
|
||||
|
||||
- `pk` / the row value: the validator's Falcon-512 **public** key.
|
||||
- `.addr`: the validator's chain-2800 account address (already public on-chain in every seal).
|
||||
- `.pop`: a Falcon proof-of-possession, signed by that row's key. Proves someone holds the private
|
||||
key for this public key.
|
||||
- `.claim`: an ECDSA signature by the validator's own account. Proves the validator asked for this
|
||||
key, so that whoever writes the file cannot credit a seal to an index they do not control.
|
||||
|
||||
There is no private key material here. Falcon signing keys are never in this repository and are not
|
||||
on the same footing as these files on the hosts: the registries are world-readable, the signing keys
|
||||
are mode 600 and stay on the validators. The repository's secret gate passes on this directory
|
||||
(0 findings) precisely because every byte is public.
|
||||
|
||||
## Files
|
||||
|
||||
| File | Bind height | Keys | Role |
|
||||
|---|---|---|---|
|
||||
| `manifest-13014000.json` | 13,014,000 | 7 | the registry in force from the first anchor; carried in `registry.history` |
|
||||
| `registru-2800-v2-13600000.properties` | 13,600,000 | 9 | the nine-validator registry from the set expansion; carried in `registry.history` |
|
||||
| `manifest-13600000.json` | 13,600,000 | 9 | the head registry, passed as `aere.falcon.manifest` |
|
||||
|
||||
`SHA256SUMS` carries the digests. Verify after copying:
|
||||
|
||||
```
|
||||
sha256sum -c SHA256SUMS
|
||||
```
|
||||
|
||||
```
|
||||
006b1b3fb814ed84622539160956263faca7c0b76585c22f2e8acb926c0bcb7f manifest-13014000.json
|
||||
23736b7d4ba1d3213496f8b5a5f756d5c958b08efebdeb1329b24d7dfa45fb6e manifest-13600000.json
|
||||
c9a215d294e106f69fb2f16e3af21f9787523969e4b7260a3098f4b2cf458059 registru-2800-v2-13600000.properties
|
||||
```
|
||||
|
||||
## Provenance
|
||||
|
||||
Fetched from the running fleet and cross-checked so that these are the bytes the network validates
|
||||
against, not a local rebuild. Each of the three files was read from three independent validator hosts
|
||||
and produced the **same** sha256 on all three. A registry is only meaningful if it is the one the
|
||||
chain was signed against; a fingerprint that agrees across three independently operated hosts is that
|
||||
evidence. The digests above are those agreed fingerprints.
|
||||
|
||||
## How a node uses them
|
||||
|
||||
A following node wires the head registry through `aere.falcon.manifest` and the older registries
|
||||
through `aere.falcon.registry.history` (comma-separated, never pruned: a node syncing from genesis
|
||||
verifies every block ever produced, so every registry ever scheduled has to stay reachable forever).
|
||||
`run-node.sh` in the parent directory does this for you. The exact flags are printed there and echoed
|
||||
at start.
|
||||
3
registries/SHA256SUMS
Normal file
3
registries/SHA256SUMS
Normal file
@ -0,0 +1,3 @@
|
||||
006b1b3fb814ed84622539160956263faca7c0b76585c22f2e8acb926c0bcb7f *manifest-13014000.json
|
||||
23736b7d4ba1d3213496f8b5a5f756d5c958b08efebdeb1329b24d7dfa45fb6e *manifest-13600000.json
|
||||
c9a215d294e106f69fb2f16e3af21f9787523969e4b7260a3098f4b2cf458059 *registru-2800-v2-13600000.properties
|
||||
48
registries/manifest-13014000.json
Normal file
48
registries/manifest-13014000.json
Normal file
@ -0,0 +1,48 @@
|
||||
{
|
||||
"count": 7,
|
||||
"formatVersion": "2",
|
||||
"chainId": "2800",
|
||||
"bindHeight": "13014000",
|
||||
"0": {
|
||||
"addr": "0x4bf6f91d84b37454544279cba152581ed6820044",
|
||||
"pk": "3b946f7ac3adbb6b49eb1426d60f07725a1b9409d472c9e8ea47a8e4ba38bfc773de905f06c51860d4e83eecf5f5621329634c3d9061816305c1fc89d55ba937f97b6482cd055895c8b4864b549ca4bb197244771d0635828882718142fb6800cbac04bd6005e3ae582f7e3ab704471877faec7aa6e1e96d1912a6e763f74dae69c2ccee323c06e5515fcc6880a2d96935220f50ac5bb02343fd2985a1b3b78f0a8548abd6702adc2e298bc113dd37411454286c29ec5592b963fae4bd7042fa6877e2363fd03c9a95e97da50144f02690d0b97ca332d14f9332edc0b0c5e5b27279569526523034d65b618147d267fdc5a35220091cca00b7456ed9bb1def448f4105bded1e79e1e34a6de8bed08a24383b954d47b3df5d1d8ae8b5e8592a92bc80b4220a7c0bb123cba55ae14371ca1716282276416c82772795ab0191c2562f189700469714ca5500b94beb23ad45a41ddef1184eda4d06f4286da21c0fdcb450e760d84401968a4e0fd19dc49bb1fa0bd79be005d781a4f19d5c40e71a4e6ab3ccf4413bd7f922799d28554f19609d7e4746e6519c8d029a1a1a548d369498feef77438051dbc2e024ac08220934dd42264acc038beebb5314f198589b211a81d8f1ef97e41af8d9b0de9fcc7b645cd80fc72c8c255e34495c51a060628205d48a11f9992b3865d59e692879a9ea9c6af9b831986e852c2583f35b1ef9aa55d41b1d18dd7162aab0ff4931476092f9d7e2f078f44ea2d0da699d362b8a0de3f140640826788faf7c7d4c0aee4b88a14cde9300a7253ac6c9b8de188515720f130a94673465e0f1e84a501b6c390b2ae84ba44a449320de37b26520e12988a11911465afdd2fc9b161965d3ccc15a0559930810104a6e40d17f629cacb8fb3973af0967c679a7d8c93b8aa833a28d6ae975913d0096a1416d79779c00052b2f19f479251a76264084552e99a76d42cc8572dd2573de7497472bc096e29cd7b81a2c1e8c20688e84245a46e159080bc976d98581b7a1023f94a5947cd244ad487b0193a62cb799afd30a8bfebb6a23ead4da7d2c7993919913583deef2311da82a924594d11f1e337b1ebd4364405c0cc88f57254261441d7a0b416492af894a9920e2c34cddcae506e16581b977e978150402663246b709bf9a4a0264050c4c972d86258d40eb8a046755ab187663109ad0aeab371f798b503c2ae73da67c5b8069dbaf06c0b6af28e0007dc22a766fdc3e1a87439258e65a701d8098d474",
|
||||
"pop": "391116f21d1c25632456dc07484168b582e8404245936ff15409b34fcbce6b80c17c229d64c444d05b117eedd10408a7549e06cb505ae75026bf85f4bcd1b9450b98a0f19c62046b8cfcfa129ec55a2860481842a1b35dff45ef49b4747129690bdcfc3046a745a4e7679def13b50fe499375e093952a01a818f4193e757f512a2434ed76b68ba6a2d26d1b4891062b5915ab46ece68ec1a95216aa1e848ae260694a779e7a8c2f8677f9b5a2d14c28d7472e39b988f0b0b986c95180bbdbb9ab5c419084ebdf77ff32d058be7e20d9bccbcd410741539b744d158746d85b546fe58618640d18e1959e32c0e1bcb31588cfe7749855da0e98f6af3a4fd5291169a14b39e0d36818821590a2a62c0cbcb64553bb1fc3d908b5d67fdce94957d174d21d21ca8ec526ace28a6f90163b094edbd0676bfc4ca4c9b90dadf123f3c83c73f91edbac73197a329e9395db561d0d685ca98e72eadcb5fa28448a73a1fd5474be8c3949d9556c18aa2395cc5534ec3f3cb86fcdf49f11076d52435f5b6699aa86bd45695416e64f56e36783b3d7937d1a06626884a2f44241a94a76eb8eb9764b8abf02629121936276ba938703ddb67a74d0a468b452a6678146f228b9ad2b58c4370cd4de9fcb9366e2f20a61cf72e67132dace761356d7f583da14844141afb2ed0a10c448e098cb961d60afa6d299bb81942f8e6f27556bd66dfdf0db194247ca6bee40baacf634d92cf6c2f4686dd5a84308b863616f7c4caf41d0b815da5092d7b1f20cf8f66c62ab7e9158eb5d3d8cd217b4a9b19356850e41263e8ef2dd88d6c54b5ead803432ca94206de0b7f68c90b0c9df7744f1e30c4160c08e1e9a899f279c4c9436b52d6279b5c4a983a5a536d9cf5bd177467e28026cf677a11e1f46e6db218eccd9f57dde8",
|
||||
"claim": "2a3a676d7e9f0cf99770e9b42923b7e4d64244b015cf166df453a8b1e07a01e14eeba6397d2d8e83071775b42631d4e9d205a0d49e0344fd3ed4cf33ee31217501"
|
||||
},
|
||||
"1": {
|
||||
"addr": "0x5f50fc4e1b129bbd5e6e9f80c57680b0b4a86eb0",
|
||||
"pk": "1125a8c8ceab68078dadd35101e64ac8fff297aec01181732a50ed24098c5106cc1acebc7ab349380a595c7207f93e8cc96aec66e74a5ad73c0d9658e450776448d8b7f6901e8799525b6bafdc0401bda562c5a42e7e66f67ba1645c70f9473769ec01d01239f9d26b6134abe28fd2cc361852138c657455657bba806c37a1eca1b5ef42f4a498a987b7614f41a99752be9e640804d4fb74db16be5e9b3b101f20b37264a31b5efe4b5d2388cc92dab1c82218e24de139ea69e51b9d7f5e190691e6d20626806686939b7d2e593409532d4c465af2b5c8848f298ea7601fdddf2f5c2420b7e02f8bac6273da2b2c91b24e4329dc1c42640b00455ddd4c040b9accd0a90d993062de6e1f82618d523ac0d5b80d407689cdf05c100a758702f60e395df0525a7d0421b1e2bc60c612b89b945765f0b251adc824d9a6a7c4ff48761f36350de36bc7de94900ce4e91486424d1a1901c45abaa1188acb4e45f4bf61753b41287e73ea33213c153b661032e1e158db1d12d5532a0387870ec896e5267e6d290d53850cbe3e4d12ab5f0ef223b6e307c34c9285c122f75090439d152d466f49012bf9135860468886c954a574212d438c99013a878e9295b44686187b92783ef22c53aa95e2ac84d143a1b20e1ef74fc5ac39f2e03566871a42e67b340455da2922ebd9e4400b17a4f1965764039bd864e278d7b5a5a1ab600ea6edb0512a932acc47186db7f0cc5d429e984ec1b4af06747e1e09374d372d65b9c9c9540731d6e5e9f54005011570d3525eabb3c0c6056aa3522b9d3246f818834fa18cdb069807270ee3e6b30e945d0d9009444b303a50f7313d800f11020d49b80d27696a3519e1145b62f678d0206dc6be78cd321459dba0f444e96ea529be49b0d864d56ea2368b60661bc259184154722c1332de5593a5e29235569936210ca761cd9518de96855c328a517c8f4a6a3cbb75ac1f0a6834e9e6ff4d426d22b547ecc88e1ab45d3678481585e1ecba71a54421c0fd83dccc39ad0e4764366e740a482ae8ee05f22f541ac79c48c57eda102288836b3b6242334e96ed85ca3790d3e40ebc859778b844503c5c8a97980ee347294bd9606f226831db0aa40250bdb073312baaa92a86a31770469b7fe041e33f85a40a34f1071aa3ad4af426619fda690e6e60a3b8534c63e080438a123f97fab6f0b66c677de4ed35b65db81fca0521dc99b20e5474466412ca5151f6497893988970d3684f90d95b8283e8d040a5",
|
||||
"pop": "39f5000f94992d07037c37b518e89cec504a9e67255380bae96fbadea56523ee3e09d98702d629d6d76945921801e63ee50d514aa1dbb81c065c9c409356d216942b1ddcf486a66d354aed7721fcf3de3312bd4c0be7144a73673574b8b0b11479a3c19984558ecc9b36ecac270791ae6d93279a429d5da76e35253941d5ae0c19c1ceb4283366d45ae93d920f3df5b916477b7f922f3c7b1288dac5e832e9035befb6a00aacd6238cb3ba0dd75f29c64a4db221b593e051ba7e5f788164e29bfb19d88be9135d966f050b71a854bd1a1d83ab304eaec12f7092220b4a287999379ebbd28ca10c122ad525b5e952d85ea7723779d087ca94346dc452124ecb78f7b1f25ecc510a47d32abd53ed7ce05427c308dcfaf7e6e2ffb6c6f09019032cba5539f1e23da526e3051e5a50568b5323a56f2c5cb39d5a41ab6ecdd725e5450f4fd30bc89cbab506015e61a7261eeba0731c8bd93c668308b742a1c75670f6c1310c4217b97c5350b5e711254f112dc6bb4558b34014a6757dc89bf9c44a371edba3b78b059f53a4a2cc5a44eb3f54ea161a9be11ee73d3a54059891a776845ed518d470358df661944b1c9787c1ac20aaffb2b71c7b2518547ecac6687148d34ab4b05cff5f8f7a4487c3655d451749c766ffb2fa5fe9ab86ef42a461b18213cfa3fffecbca15911b081a790253e41aad5c54bd31a4efcb12f660130582deef3ae53f64f955a688395ef8a1d82d634daa593c0c734d203a98aca4f14c8351b9297354bff45686ec54d0358a43dacdf3c9077eb0c9e1abba02828ea52d92a8a8458e4d05085214866d22605a24c05b2e2a8c29108861ecd33c01f08d1e78eb132511e9ab14c56914c9618e5e1eca4648df334961ea8f067c8c40ea5b6a7d4c8f2b2e535e8da19796262997ffdbde78",
|
||||
"claim": "0af001cacd0d40b367c39c151b2d205d230b9fbaff7c6440a185e915d7e050947509b0a987d3114b09d7122945cfd0010ca34473199eae0289b6fa0e1f3ecfc901"
|
||||
},
|
||||
"2": {
|
||||
"addr": "0x97473985d04723299559f49b856effb47d7abfad",
|
||||
"pk": "8cf6831a6196601d69c0db2725e6b0c2ddf4179d8c2eed5bc1e46528a7f9cd046199a53e8e6c127d6dbc35d1a0d0450f6f660dd0a22debe45654788a5b8ec849aafcb2a0ed8345bae07a262769b1a8ee57ac92f496b8ad4082ea0d8f7cdbb9a52040b59dd0f69a9206bd9e48aa41d1852c217cb885a4238e6234b5bd2ee5771a3eb2e70010056438744fd85b4a74d5f080256d65789967c0e0c835a12a36f7e12c32f42107514374220d3a19fd9bf6570c6a53596cfc035024bb9fd1aa67182060f2e8c115a66376d445d840b92b44105d376af967528561cdb18d9492d15c6d7dc2562b310fca6cd1d7da395fb6684467b5451afd1a485aab16af8540247df46be18a78d9840526e7b84bb48c45fe8bbe2f8a43149c04403326ae48b99e684d1d30201fe904226cc3c453dbf407ca84344e882f47c1d32b93597f958c1642d39b23402d8ec498a529534eabf50365f4845e68b34d89d8910c5024dac2208e8610e5aa536a0048d0c62b5364233e96b690124dbdca104adfe8217e3472127c15a8a0ee55a99a29af316ee18460e9440f6192664fe0a36b191d5048eded163ef0e0b32a1b81767672bf13d6b881ad6833500c2418d2f65c530b100689b5f368956a92175425cdb0b2fdcd0346c73f148545d463c99128a859e64f0028447286e7965b58374023b94804bf26a56b88b55feb0b0de8243cd3c1aad0b12affd69a9661829bbbc823264edb8084ea4a71212cc34209af973efb92d0d591838695b91b44da5a88a71a1b0b2c583951584a13c872b007167edaac130aa9fb2386a66f7c83a887af6a7100e9c80e2770bd4d9a535ac7c40b78ffbb148bdead7a6631824bff5da6d781a50310bd827cf0345d8c2d15060995824f98ca752154da4441f17e0739999854eaa6474067ceb026fe705aacfe0c1cb23a192f4d38404b7651a9d416b139a4ba0e7191289999fb41127e2937997fe39f83a090a1d15fb27e689ab7fa9254b79d0321966cd4253c50c197886a7f35209421038d81bc8b66d124066f78ac80936dad17c0cd653244e80771abe442d2f0905da80ad50a3a994cfd282cd7b727097fa444aa384e090668ff174b86e8b072b0c938bbbd9f416b0d9f1a742421a7443eab4a0d66298764016168f5630f2f840a3744d4dce2af0c41f094a3ff6bb57c6af71c03a255939be159379c66fb0bda9a5bb47ee375aa6f9943447ee2cb1b916c0458bbdbc4dca2497c166e586c70b9d47a53ca74a5793537430dc7",
|
||||
"pop": "39e2035ce0cd76c333e8583aaad397344cc4566aaaf5a708e509042738fcd97041b98f323319d164c600c6f177de968cd1272671c1dd9b434efd6fb8f894c91f4a312543b78a431f9b6439d628dc1a024f5fea521f9b124b50e05b21bd62219cce1e1f7630d4d31ac8eb7fcb7fa8fd49a2648021b4584395474f99766bf2d3b812d26fe45d23a44102766c3483bf6191b2e55539c5dcb0c479747e9246998b489cd6858d254b1a725e1d0823e396aa3c12d9925f3b6c55357d8662d824a85af3aceb05549e23112c3ce35ee833da7cbe7fe3834ed068545108c18abc269ea6e8d504315fd06a26ca1eed458110c2e7b00f9b491ce9c2f9302cb44af34eb83a1f747d4e7f19dcebfed8a449a65945c17cb6ba0778f5c6dc0d153919583332c8a42ca6f5de56ff81509b359134a22e6b9a07290879930f1b9d7c9bd6d6550cd1fb193fed7ea246707f1ea7ceb9af9bf4a5c4ddc1d3bf084247aadef35c9b1495d7c6d86e4c1319b7cc3bdd2d9c5cbdecb64ac5c7edb156530519baada04692a06beb397a41297df5de4b42418ba93a1cbcdc525cc9dd30747bdea941dd61bd7cfb879e819ba3c5ab3af35d15ccf729988c7528c36258d389ad6bb7293e44d39a5ae108e4ce2486206625c3d3bce12f9cb4e4d6c978baf7c1eb2ac96f4b9fed43680cae0c4f71cbbae8f5f109bb70a308b9052831a51746f4bb359e531cfc37f4244a878f7bd0135b9a30ea2642a5585272143601f8f23e16c6e68a9c89fe8f7ba2546b3a967e8948b2b0eb13196d9db1c4c31f0e6b9e6c28d130e904895a8463b4cbc3aafb9ec7b367e8577f94edcbc472da0553058374f00c9a4bef7633555ed93ddbc0ee9074d29175cdb73c7d16a59cb47ebb85d775b1fde962e154b0d5184ebae65e98a6812b72150727f5c75a5324",
|
||||
"claim": "c6cd8cb888cce26c8f4726270be52138430a4a1583972509ec8980105bfe604a55469ddee595607faa64391f0c7348a5fe5effec367870697e5f101589f8131601"
|
||||
},
|
||||
"3": {
|
||||
"addr": "0xb5e768cb3117ea25175f51aa956b48691025c2a8",
|
||||
"pk": "b991d68a909506b5ec27a59c86a2b0b815f1fc8d60a9224f75f40b8b4fd0a73885821d9982e7f829dbf24a824b1a85292145807041d10005944d107b70cf9636a15765096ed8a5320797415fc709456a85bb47037279d692bcefee14ca4284b9495e0eb80353461c10304d8ac592d665aea90f30b2ca0331e84b0139a4c98e3e47bb48d616198ea14b8b2dfd77453b4065c33a2d4daa44976ecc4d440b772f43700e341c22e146026e75de104be7fdbe4d95a52cd40997eda2a0092a299b44d4274ceff272c05abb0bc59607249be4a58a0093f2fa34c14957250d5bc4ed23339d3a2d0750a77e14e8d107324ed12938c592071335bcc165ea62009145885bca6e2a6937ec815af86c670d2abb119488e2056689090623578b9ec28108654c93806ee0d664e2b7c53146fd981b65b177e8de61fd8f3a47987e6ae66221241a68e64534ca22351c8990641210851fe997b669f848a891337bfeb0faa42e88bc406741cd943685512ef7bfc65440e86340dd96b57408cec4d1648550129fe838e201a86164b081055926b6fae0b6e5f65a65eef5061d6d40681c648c9aad426927134bcb2e38ac7b63e2120a97b21007d553db0dc64be0b2ca1a2c6449c6f9873496b49973af9ca1514e3217fb0608aa3d82246f55dd6504a8c8ae0ad1a634d54bc1c1f0bdd008332817f25ddd700244d68c0b6a8f480cdf90ae1ef1a3a619961bf67c7208697151c2af54fad43471de38739cd6c4067a056587542782a422325a174db998c552d5c48095a0ad555d8b784d32c3645ac4d099165071d662ec365587d954e7128db6cedbc3172621d58c1b242d4a202841374c126c2e80a8830d570301717936b2c328ac7ec61379a7bf1b06be385162ae0c8139d25b010bbe166f1899299862acc316ba59a6313a6bc6a10f590248b2575e243f66be6d62b851bd685413535894e2ab09f2519290bc3f701d52e2518276621df409172f3695e628580432ba096327ce4efb170ead3701c899a7e84f00ac926e21564cf0a78eb662f5df31c2c57540423039b12f402ea20135a62d3c4d90fac5ad8096bf7ec667e919a006ba518a49187744122f783d12ce69a1bcdbbcc486b4e9d2f81c6bd09839a5902e575aba9ec4c81629e6b3e480d74f81aa245c546185542d8a2c1c39942a6e1c6a32f94a8d201eb85b6230e9dd16cd03827eedda829e8f35e6049e9725fce18066a77dae2456c62c82790629494b699a8d648a853eea8d322dd869005025",
|
||||
"pop": "3901b22ed9771f20c0b0828c879b5416bc214762fb8e3b25ab145898fa86c5a5e44ff04e59189a3b1e979619281f050e6f8d434872250a0af1313252b613f89fa21ddc9ef73c9eb3b8ac64db2989256b0d25a66a5503e2a6ddb34a156519afba73091e14de350d0147b16939538eccbb42f86499c3ab1f87563fd75cf4344de505d25042c4ad0c615152e2feb3041725799d7438c41a3b23cda81b4c1da3db8c29875f7d30cf4ee006dd62b4af44776f85ccdc718adb7d58565fd4e6f8ec6bc61ddce2aeba19971122c21a92b9c4476d0f3f01b9e697c32ec93315847ab5f0c7a9ad1c45c26a139cedd1d69743ab6aaf86c7c8c412a7e3d685f71cf204f2ae505e12deac2dd219bf4d8c1ab5e1b44326abacb0a0d6acba1f2a079a90fbc9f1e957564d53450766c75c8f954cbb379c27269e3b719bc112029f7eb76e2abee4f90a39e98e1cd13169f4299d35667a2ac8240e8631cc5f9cbc8101fe40ba919e314ff047ae0d3e1cb2c861d0f427a8c94d4c679696bb2f85c27f7a8ce72babdc5a08ebe11c3e5e99c8a152e30e948b18a847a2582f564e3c5469e8fae986e72658397b78bfc4e7192d4116cb44d908eeaf755388780912090e290dbb74c2761b554d1da3d77c12c839166d8832c53b9855ca9da086a315bf2482fdb7df4b9d29cb5fa2d52909d7751c8fb458684915ce7335ce93bb4794b0492efddc33566c470a353f85cde5e5fd505e2f75edac69b9789bd21c43a033c35bc3e02ce6df20a045252c8c2e5752d8c46ed26c7a3648dc5d6e0e3e853d57e7e5a47efcd54dd7e581f9530948a3cd2d709425216f5be49e5ea71c7dcc66eb4db86e4ec40a4442dbd69e12fe663e0e9b004a5bd70f0ae14c4ced9c89d7208648a161469342dd62a8eea47666f3229916e968c8189479e4a0a204",
|
||||
"claim": "7520fa7a23d424aa47c467adf4c55725a3a64209b206f67000e73ca069819d1b5aae39f959584134d6ef8ee85bcb7f143007cc83e9f4fb0f186be99d0d65a12f00"
|
||||
},
|
||||
"4": {
|
||||
"addr": "0xc3314fd768bb68b986e80c0a14175f6f72630d7a",
|
||||
"pk": "6e9ada38d7da61bb7062c6812dba3954f433ad08157ce4e9d340c3bb80d6b9b1d1027cbfe1514b2a9e5266da4757f9536a3efccfe15255baa4f48fd442d9c2731d8c63a29f936c1a6908f96fdd393dcda5ad19b81b1ca5c4472cfca358bf1566eecd9e3082dac612c158cc3788681f5f0868ec68a06cb04621465a4fca948f7e118352813e5d2138366c97296dc15649c99394b1bdd0e7969f913c255d694a989d75b6499a7c19bb1ce46f313e6a2fb6f4faa7ba63e4814e3348f7ee68bef4b823486dd6baf6f5b847a48b78bc1003bb125d3b26aaa9694a026c75da351064ff868061a78543677db940eb33a4636baa3e756948d61845dc43c04595427a6e9568a216b50eeea2428d82887931632a5a1d33803b392ed142bbd5cea9f619ce563a3c7b35d2f0a7709ed1e20edf0754f3f60aec60b329c0f51b2ecea714d079d2d4ed5f58a737feabee9c26a0320157147a3295a0eb00399eec3bb82d0a33a9e18789496f4e4d6dd6f29f106eab227336b49f688f95b33398c5489f5c32033cab2176749445c208500778e3955bafb2521628740896a9525d85d61aa2220379f8bbe8a16c44b45652d9ae7b2bfd3664a2a64133edae4b4edc930c64e6d99f97d707fcca1242467c9d0c71c441e59073e0d879e3af0529fdaf99eecc7c5219ec66d2c61c8294bd90dd53a21ffc0b230c6f6a89142336478c1179d6ecd91881d85e1e6535c1692979f217883feafc45b9a539834f0b9d74554901a8b83835c983fc43fe41141281c5234f02d50ea5f7a774a5d4dd9b8aabe902d2d0659bd1773bb62a5b1750a75f24ae7ae492cf2a5469563ad5062b4592037401ac334d8f6b2beb46a8aee678c11e98503e0be846dc5992e43b2019085e2872baa217547855e2d5b9984073b020b5224b577352c1a4bb900d8f5fd974c2c027cd633ec0c08ccae82134453b720a67b78e5d01f617343d81fa0864d6b0b1be09d35f1d707b688d134c4b82af9eaeb8908f40b259a8334c04a5223074638a82046cfaeba392c21f58f0be565492958f6282baf64d98a0d6af810490705136d1d1fc16e43b4668c9cb4fbfbf58d943ce5de56fbc5e44a684990b7df050981e559dd9d34a3fc4962b1282a15e63ac0e85d8d5794cf15a94c9409be98e9652e59176689d153214f2c6d011aa41f5709e536e267a9c897a10dc61081e012c51a2467464023c1dd870091db16b54665070a4db581cca14bd3843c3d42e907ef1f7c053d0a535a4d4f92752",
|
||||
"pop": "392621a1e2bb24f4a12c64e2b2335e1e18b8ade582d7d1e4005fdf355e105460dd837b7a6c5f51088a9940f0368be61b35064616fea62a4deffd3f79d6b8ab20fbb2e1ed88acd794f4ee4a31752ae71708ca3c8d746af586092c72c537e078246d7eaad0cf121376689c749cfec403188ce2b9bda552652459936f04a5c4aae608ce3e68bc377f77371794a0c790ba1e7f49539a9f6397d93b262489bc7718245510b1552f16fb3ea95d943fdc5926d614e173b965c6a35f19f45322e039e790c0c0e55ead714dba312d22b19e46aa8c159b5b2adaf891fcbad7babec30661107173eb552cba31ad7c8104c7a519835f73fdc657a725533b7ec986304e2cffb7425dc04cf92ed0a2e7ad9ffb44695183612f9256fdbea092e56ac1fd60a1967d6afb05fdb6ad5992549c1443d1084a50bbeb47f59fc4c8e9c0ab110e7b3dbdeed9748ed3d679599ca387b2f620939e0398c9895dee21ab47d0cc3dc73e637d786a3adbc8991de5cb577990f11af48a0754b6a635c9a910afa1be52a25ba08e014cc870623e19d97db0bf4c623c70875f28d93730b2006d598d4f04dafb71ff443df89ba1abdc4f64600f8ae93a494ec664ef2e70aa4b7f9cb1f2593af373c056fa5c8bb4b70784c5426448645dab67bdca57330ed82bf503e2c8cfd1e2c7f76bb0980104487b35f571e55bf73993b8500a321053743759142133bb71f84ac2c59ef666384f4262de5f7c537eb27dd4e746ed9f146e695fadc82c0a638b0b7daa69bbace33312b588639672e6d8febc8a258f3ab321068337e7e6681a34c4bee35fc8f193d2dd34c50b797142a2cb7ec94353a108efe7b3727c2791e7c8b876ba1332958d53d16481ece11b35c3f9d2f1f1b00dce0cc74a566204c79c52e39c4d31703b299ce74d38d2fcdc3a324c0659",
|
||||
"claim": "9cf806af0ec3d002e2023064b245a9c77b84a1d1d5e2fbf69eb0353ab48a432f0d6554a4cbab6ed3e715164e33791cf5305cb2010bd85e66991444fe2d11232101"
|
||||
},
|
||||
"5": {
|
||||
"addr": "0xe13aa491abbc1252dd714e7ca0e55717a2143eaf",
|
||||
"pk": "a2b859c229911277f188666a63981fc25ea2b38df500cc8851ccee2f467d0fb1f8aaf84f9e757b7b5db61479c1a6a196677ff6d46779ef8d910a78604f04d8591c5de80ad1c32422ccbb3bc71914cd159001a2c78a9a00480fda69321a6ef54104bd0d1a1b8764d537b5909c107dde111786d5c6b943f52a06bebae81ed7168066aa0723ed5de103d0880994341828d3bbc78546b5e602cd842baeb162c8c099bf1112bff3f3ccaea4cec0ab5b4cc276a81351cc692d463cb6e1c4573036f1d07adad56f0210ee755c474614cd7ac618afa673197716ce24cb041225e4c72062873c8da49d13d11b70e05a71a35b384a90e95290735d9cf1ba9d0eb0abc5aabb728ad13d6cfa3ac2819411684629ff07db9306d6f5c52ac680ba31a2e1e41b1cf0f1b6d190ed3ad00470cbaeff956e7da446016360b515d2da9dad49f26a274957e45a6948843b0ea49c7995403667885a86f6f116e52eb7701615b75dc75801f5a5855c5e1b262746ed991aaeca6f3b9b59ab0406baa1e74a33617dfb6b54afb796c1d2299be9aa68b9bbd71c212f23909466471f8b04a5801408929474ce5304cd87801d01e1e8ff1d2b0842f727bfc3611138a3431e12867bcc000147238d659c7e241703444c26eaa6a161883a91e4e0afdaf39cc57d38615fccb1edf56a2adf1e401df1d5100467ac261772d695f29be1b3113a2a6f8e48f1b47380b97651a852b2c5da942a3ce92d17db15a669a4eaad2f116a25c4beaf1f9d72bfe1d665411c28041761d0960f5d3995e86fa15906195b2a1d163dae8e750b1a5c06b5fb32092b0ea47501da5e6d9a5941d82b5704299ff56e49299ec82c62fee9828ae56bdd2a90eadcdb94fcf2963d02349909dcf27e02224120d6b66747dbafec302bbc6b166e5eb3692b55a35495b15af063bb746d8c99c5c81719d42efb8d851537f875f6deab96b5860f26d6d0b036aa62d8f744692f256093f61f9e2e669f87feda1b60ded5d0574c521860665472ea9d44b1ba317d12e7b5480aa449c6d55f70d7a4341c22560a037b30df071f36573793efd2b098a6138cd74265e0493b71a228463c00a0260e0cbddc7905795261980edafbd3d30a0102ed9bd9e99630116341ef583f387e9ec5f9a6ba035e33d6b6c96faa9e27f6420a952496b540badfed26ceead61d590a5eba9f329ca9a5a0d562f4d0137f643128e6ee270e175c0ee0f5e68c03cc05338f2dc481723857fdc42d9134b908ae43367fb2601355a326",
|
||||
"pop": "39ace3d53e6e33b8523abf6d522515bdae29a971d44d2a7a21f4ea0d9494eca5ccec4c92988b8d77636bd5bba397e64c704a9bab445c5b141508dc6ceb30ff967f74b96a244fa13c432d1f7247e63cf17719e7731de904393e45d7fb6700591de6fe9e99e9326809c393306361f4b3c806663337e11c3f3d751b51a9db171f7334189feae7c02c0b090965f576dd9d108274a10a6134c76fa44a2e1b191f475a8d24e7225063c7218ccd674d2433c372f771b867611d329bdd3b829f2a7c5895b568acb4cf3e9e7d4192c431acdf1713e69f962c9b00d0aefec906bf43753071affa6cc022e841d1afac056da74c22bd18ecb12fe96f943d3cf1f4acb61de43e41089632e9b45d60609a358229d7dab4b4bcdb0570418a8f1a3dc8cb7ea6162db2b17ad0deca36a18f94a099352559e68b3d6246956a99aa8bd4eba13fbf3e1696ab9956116b65f066222d49aaece015afae6f7eb66e3349fa048b9dfbea34b75357db7a6b3f21ae07ae0899a0b1bd5fada38cbdc91c36ce230d07cb0eb1c6524d342340a4b58ba7a5c1bee2859e307998147a8d9afeff6d15ea65e2f6c4c9b63278f51ba7d6f8a16eaa73f9a5b7db9e4c8214270c9109657f5d9d7d0fb4ced4c81287c74c9d1f1af978cfa5598d8db55b201f86b5ac3979f6405d04c697bb2ea91246f920ae2607bd844512c3a988829f43370de1597dcc21a8df355235aa2ac09c5ca330c61dd4f31e18261daa88b330fc5a479daacefbb93c03d982f6363a6396fa407b8efe5d3c7238c84cccdee5e6f8f503090e578d0d8d0e4e50f95acf28b1182cfb4c9773654dc9914706c19977135631c589ceae237d9b20d9c6254ce8902a8372e3c3d55a140b53af8053f5ff7c319a24cce917cee66ea6751612fa663f0b2972d179fc1fa6d0b44b0b34e020",
|
||||
"claim": "a2b999cf24a5bd218daa1a606b1acce6835cec77e673222220ecb83c09d734bc236b7c3057d313bf834370300afbebb41aa5424c316b21e27612e158b7ea022a01"
|
||||
},
|
||||
"6": {
|
||||
"addr": "0xf73bbbd26a82dbc769066550d8d4585eab2fc00d",
|
||||
"pk": "ae79ca93fae11c333ca673090a4b548553614bc1ce7f6aa2773e17b972caf48a07efb416581422605f12400494db84accd432c148168db7794ecff419e83d4738d98f6b0de8f0d742902359aed104a1582cb8ef976965502c28bf4466efdd9ae0350021542a563c9ad2c22b7b0da1f5cb832c5a54d58284ed0f172091dee7be8f94bbae38a4ec0a7c1dca67ca50de962ca09ecae9a66d227841b2c66cb8600a1f01fe2d48be3c64999d1f8236762983a80c3a58fedaa0bd09e3912223b4415cde3fe63d70a62acb564cae57b3ab760780ff26c422d6675920eac389b91659aa3738a5055a76a9046f443ca1c101da8fcca37fe0be18fc9c6851706367cb65f035615d3150acbb738c66eb6eacd7b9a1b03b06e4f046f8615754d85e69d262d8674e8e82052bdbf753591474488488c714a066592718dbfe08d0b91bf387d2b9ee6a86bd0bdf96082fa523e5b6851c27723b99af0aa0722b185d52440c9c82a2a61d6729ec27999f9019f071e9852e813c0ab9318e2cc791a6e7203c27ad48a68ed1385319985aace0112e17999c80662b12a135b5e1a2c9067d5e06d0b33f5a691b65e2181b8b7f389a364543a058268a97c20928b490ceffe1520fa52d143a495941996b527712beecb17786f982425a8ea6cea000f191226855eca65f069782bd777baf11ac781a5b77492e2b69c039903c991259b92a93d18fe6ac74e064370f3dbbbc5ad82b478648ccff8ab45d133b1853a1d21d2e7d525027b2d9740bc82fa16201fb16318da37ec6494c9ddd1af864ef8b50b266f1227134a99c40d8571879b8a660964f6217ca41c6c0435056e5aafb494f4763984a55b196ba4e6691c57a66ec82b886e3e9da601acd9a2ac3584975255ae13c2781abb2a089e423c36cea35126fca8728a82a9bb8dfbf1ed0795a46a83c22945b08f6c7048e3d5f3bc7874164ca39b05ea81d9f75e778cea8b01b1c19a8a5e89991419cea779aa49ae6d562d38be70784def475ca78a3ee40e86de917557d716b008a0819410625ba6d3603b53ce821d1cbc0009dc4d518e025c246e5b6904196e22667a9df22192d22195ccb2694e0cba7fd011553081520d24f53344d5da90299c150b968f7412d51a638bb853d52065e49ae471b5cd979b11953eed2ea89c2d1366a48a664502a96dbad1d8e527d2064d5885cd510898880110cfc7ec002de2029e02516682b953a88fa72b00c55632415e9b52eae8640d866d4074880443ac6f791270a208d2",
|
||||
"pop": "39a25eeb486016683ed131f7bb6601c5382d88ba69ff982d0d9b5283f753d6dac3b905a443828b414743d25461c8a6d969cac62b8b0452e9b4a8e1b0f5fc3e8ea6cca853999bb4754877714a484a1c4189de5e303f12a72283ef954e11be46f61693f551b7507f18ecb19f6a73d0d77b54de4d357337a21f4380792384d1261cf4b71bd6668685f4515daca6e49836283659204c6e9085f7b93dca234a892699f21f44d6fdfad5d81aee142689217c99ef5edd42957a70c77dda7f6591ad2de937836b61d4bc631b42c090e2aec11fcc51f0f226ae79bd529291d2aee52227e226a05a3f307618401f2598a0ccfd1c496305b9bc366db2637e6a76e86b52f3c19b179f30d694c9a697692a904509daa8adc418a2f345a54392beea878c6c330f945f70a4313b69d22ed62d931294781e57bf1500a1e05e7f7634f0289bd4f165329724b338c570b2a7b1d6fd8866e643097d94445aad0e4ac42214b92d3b9a2b356530a62916f3a2c6995b64da3f6ff6879850b9e2d9bae15c30a8a2931fddaab589aa9b607f505fcee713955930e64ece44ddeef6e5488cbccf41b8bd64bd4d12113587e7d3184185a32ad4dc2f4b0e7d50ece40090e4759d4a40907772fdecbb3ac799e53db1b3cbe51cf21ee491c48a1bc8e166ab0793db8a4458fc98e9ea1a27ef80ae6063cbc73f17a332e46d208edc3aba796b893da849f24ccf691394c970464e0e388c12a912471ab3896751ffbb6a9945e43e8c554b4ba64bf672dd02e497c57f91556fba62aa89652d7065e64b4c3e1b914ece5c49a55af2b00a9e84d476bcbcac155a6883db6b694bcd4d7dbb4c8aadee3b63d3726bd8d474b4cf6ad01426408619d435ce2ed0a846ccd73b68ecaa8374983f184f429883bad814e0a825f0e9bc5141d9491198210e6aa0",
|
||||
"claim": "544c3943786f34719faee1a3a5253af26a6c746b643a546dd625fabc8dad992b61dc05d59d72e581bef313be7843c919acee98a383f61305d0bae30f6574c53700"
|
||||
}
|
||||
}
|
||||
60
registries/manifest-13600000.json
Normal file
60
registries/manifest-13600000.json
Normal file
@ -0,0 +1,60 @@
|
||||
{
|
||||
"count": 9,
|
||||
"formatVersion": "2",
|
||||
"chainId": "2800",
|
||||
"bindHeight": "13600000",
|
||||
"0": {
|
||||
"addr": "0x4bf6f91d84b37454544279cba152581ed6820044",
|
||||
"pk": "3b946f7ac3adbb6b49eb1426d60f07725a1b9409d472c9e8ea47a8e4ba38bfc773de905f06c51860d4e83eecf5f5621329634c3d9061816305c1fc89d55ba937f97b6482cd055895c8b4864b549ca4bb197244771d0635828882718142fb6800cbac04bd6005e3ae582f7e3ab704471877faec7aa6e1e96d1912a6e763f74dae69c2ccee323c06e5515fcc6880a2d96935220f50ac5bb02343fd2985a1b3b78f0a8548abd6702adc2e298bc113dd37411454286c29ec5592b963fae4bd7042fa6877e2363fd03c9a95e97da50144f02690d0b97ca332d14f9332edc0b0c5e5b27279569526523034d65b618147d267fdc5a35220091cca00b7456ed9bb1def448f4105bded1e79e1e34a6de8bed08a24383b954d47b3df5d1d8ae8b5e8592a92bc80b4220a7c0bb123cba55ae14371ca1716282276416c82772795ab0191c2562f189700469714ca5500b94beb23ad45a41ddef1184eda4d06f4286da21c0fdcb450e760d84401968a4e0fd19dc49bb1fa0bd79be005d781a4f19d5c40e71a4e6ab3ccf4413bd7f922799d28554f19609d7e4746e6519c8d029a1a1a548d369498feef77438051dbc2e024ac08220934dd42264acc038beebb5314f198589b211a81d8f1ef97e41af8d9b0de9fcc7b645cd80fc72c8c255e34495c51a060628205d48a11f9992b3865d59e692879a9ea9c6af9b831986e852c2583f35b1ef9aa55d41b1d18dd7162aab0ff4931476092f9d7e2f078f44ea2d0da699d362b8a0de3f140640826788faf7c7d4c0aee4b88a14cde9300a7253ac6c9b8de188515720f130a94673465e0f1e84a501b6c390b2ae84ba44a449320de37b26520e12988a11911465afdd2fc9b161965d3ccc15a0559930810104a6e40d17f629cacb8fb3973af0967c679a7d8c93b8aa833a28d6ae975913d0096a1416d79779c00052b2f19f479251a76264084552e99a76d42cc8572dd2573de7497472bc096e29cd7b81a2c1e8c20688e84245a46e159080bc976d98581b7a1023f94a5947cd244ad487b0193a62cb799afd30a8bfebb6a23ead4da7d2c7993919913583deef2311da82a924594d11f1e337b1ebd4364405c0cc88f57254261441d7a0b416492af894a9920e2c34cddcae506e16581b977e978150402663246b709bf9a4a0264050c4c972d86258d40eb8a046755ab187663109ad0aeab371f798b503c2ae73da67c5b8069dbaf06c0b6af28e0007dc22a766fdc3e1a87439258e65a701d8098d474",
|
||||
"pop": "396e2664ccd6ca94f76fff588a59dadacc08cb9215a90a0d9220bb260e80e1dad4d10acd3b29253f3e06f33390f58d1ed78f3e9d4a363a060a7cfb43318b6c2157f03e70173b054a6fd14fcb8f98b2e9e1a65caac4694c2cbbbea5e9281a3c34f1e5feebac690ddbf76ca5b3fde81b8f2a601c047feb69a714cf74da3eb1b3edff7afd2b8d0c015991134a6425c63aeb39ce298bcd927cadc47f7ec7a113cf9223b0b1a2272daa8f6505ffc387d0f58cfebdcc48b9edc144373abcfc8dd6bbc4119adb9b0272dbe696bd2fe79335f750c5933d07f23b6864993f565748edb929592e73fdaa56212472e4274e22a6657ccbeb56cadaebf69a221326abe9a0acbb618c4d29d89af1b6552cb1126b1d611046b2fb05a94b395d6468ffcd272f254be05baede5c4a53c9cbc91746a748fcefafc8d1909320ed8a47345b9045fdb575f76e451999519996522f53423cca2b245272ddfbbca77b4a32475d56506d090461c2c9f79104070d682cb1ec9279ced0c9ccacc896e1d20956793947068758c21a3f618f902488ce3f35022b6f3e46e89e51b71e4c496520f9063993133e255754d71a1635769c25fb1351b2a4a5b28f3979e3f1d15dc08c57e4ceba14b860c867e5b09a08377fd32bb3a39b4600db7c6068059f104bda82aa44ed6b515cee321ce95e3d6ed462191eebb0a0eff3880b3d0a54503c0b626ca2a8d3170575a5e77a1ee99ec8392ee95b66aa0efa3aa46d0bfb61182c5e5571a05967ba89ff3e2c87e59947dd14204c3cce9d82f9db9fff9caf1ae6c80a6f29d1d0b50ea49e0e85c288827a9554c9aed550e8d4ae2fa70f332acd94ebd8f24f315a72a37d48364d4b1edbc455be63f5b848a2a9aaefe64faf32569e06d3d52b83ff377d98d802819993dbf1d76ef21288b4be6d7a2745b8a0",
|
||||
"claim": "368969e111970b8772d0b85540de5497ac036e4e1b30e6dda7e8778ea26ed2640519161648722b974dd94063e7fa14d351bf906d7ee99a721355aa30f206ae5f01"
|
||||
},
|
||||
"1": {
|
||||
"addr": "0x5f50fc4e1b129bbd5e6e9f80c57680b0b4a86eb0",
|
||||
"pk": "1125a8c8ceab68078dadd35101e64ac8fff297aec01181732a50ed24098c5106cc1acebc7ab349380a595c7207f93e8cc96aec66e74a5ad73c0d9658e450776448d8b7f6901e8799525b6bafdc0401bda562c5a42e7e66f67ba1645c70f9473769ec01d01239f9d26b6134abe28fd2cc361852138c657455657bba806c37a1eca1b5ef42f4a498a987b7614f41a99752be9e640804d4fb74db16be5e9b3b101f20b37264a31b5efe4b5d2388cc92dab1c82218e24de139ea69e51b9d7f5e190691e6d20626806686939b7d2e593409532d4c465af2b5c8848f298ea7601fdddf2f5c2420b7e02f8bac6273da2b2c91b24e4329dc1c42640b00455ddd4c040b9accd0a90d993062de6e1f82618d523ac0d5b80d407689cdf05c100a758702f60e395df0525a7d0421b1e2bc60c612b89b945765f0b251adc824d9a6a7c4ff48761f36350de36bc7de94900ce4e91486424d1a1901c45abaa1188acb4e45f4bf61753b41287e73ea33213c153b661032e1e158db1d12d5532a0387870ec896e5267e6d290d53850cbe3e4d12ab5f0ef223b6e307c34c9285c122f75090439d152d466f49012bf9135860468886c954a574212d438c99013a878e9295b44686187b92783ef22c53aa95e2ac84d143a1b20e1ef74fc5ac39f2e03566871a42e67b340455da2922ebd9e4400b17a4f1965764039bd864e278d7b5a5a1ab600ea6edb0512a932acc47186db7f0cc5d429e984ec1b4af06747e1e09374d372d65b9c9c9540731d6e5e9f54005011570d3525eabb3c0c6056aa3522b9d3246f818834fa18cdb069807270ee3e6b30e945d0d9009444b303a50f7313d800f11020d49b80d27696a3519e1145b62f678d0206dc6be78cd321459dba0f444e96ea529be49b0d864d56ea2368b60661bc259184154722c1332de5593a5e29235569936210ca761cd9518de96855c328a517c8f4a6a3cbb75ac1f0a6834e9e6ff4d426d22b547ecc88e1ab45d3678481585e1ecba71a54421c0fd83dccc39ad0e4764366e740a482ae8ee05f22f541ac79c48c57eda102288836b3b6242334e96ed85ca3790d3e40ebc859778b844503c5c8a97980ee347294bd9606f226831db0aa40250bdb073312baaa92a86a31770469b7fe041e33f85a40a34f1071aa3ad4af426619fda690e6e60a3b8534c63e080438a123f97fab6f0b66c677de4ed35b65db81fca0521dc99b20e5474466412ca5151f6497893988970d3684f90d95b8283e8d040a5",
|
||||
"pop": "39ec0d61382825bb96a0facd4dd5b7b3961fac490c9cacb7344c44e33ca00950bc02eecd992b31eb8194760cdc157a7013c54facf5b6087a9e91f3eb9926663bcda5c6b2e93dd362cf99b9d452336cca60502c868b9384a0cb7ca72796baa707829b3579e606fd0e218d8619e9facd14071deef1e5dcb943d2b25c258a4ce52e8396c3b39842a90ae4bdd3839b952573c69754b612d92c34a88d3486269b592dde368598d6e69f99d4c04c3208d160bcbfc97a8148e9b1e41ba9a02592197eff95e7a54faf860d662e5dc67d39c3c4c9fa5fed47993af66b65a0399a490907e92af60688cfe9df09e64afea5c9cd6a4cab445a0220c219b9aa7689dd3c4a1d9a2e8fd17eef466bc95a6e5054655af0c29c671a8c736d555eca6266388deee11a739a78cf0516701f7ee7d7e08b67465f80620fc37490930e2ad6356570d00993e1cf531cf8df0633c18d47e48767e19acd9b3758ca55fd7356498763261727c70f824e530532efffaab0022a3e48ef9b924fd6a7db746f0c157d79cef31125b27316952a8e475ecc88d00bac7a1f9f181e3ce9a87f2b318f444d823a1354311c723f0af09a14c83df27ec8bc31f5cb4e64ad1c683aaedb5d931f922b2c53d8b5fe8909f22d8783387c66fd561e3fc28ff7f94c195a7d7dec02a0bacdf5cfe3fc58d3641c83a9538bba295aee11b6ba3b4f93e71563c6f7679f4cb9b7410d4f9141f412faeb32b045fbca33f240d78e2e0976acfbb7bb77057aeec872da9dc40a77b9e260de5e2753cb96ca221c136326b7bc3c1fc45702a56bf6cd83296c4b67082f558de9c9ee747ada1ac7f3a5da1636b92baf4c5e3aa4694793a765b0e744f1496c69163c133c2373ff7a7c7abcb2ba477edc34d7bfa570a8e752022837dd0d6b7b8a27d1479e38f74c6184ae00ab88",
|
||||
"claim": "a2fda63d2ea63808adbb89c1a095b929372ca456ce4cef1b60924861988feea302b38d827f3f82bd5c1eccb6da44653eb4321908dbdb543ea54d968d1104beb301"
|
||||
},
|
||||
"2": {
|
||||
"addr": "0x97473985d04723299559f49b856effb47d7abfad",
|
||||
"pk": "8cf6831a6196601d69c0db2725e6b0c2ddf4179d8c2eed5bc1e46528a7f9cd046199a53e8e6c127d6dbc35d1a0d0450f6f660dd0a22debe45654788a5b8ec849aafcb2a0ed8345bae07a262769b1a8ee57ac92f496b8ad4082ea0d8f7cdbb9a52040b59dd0f69a9206bd9e48aa41d1852c217cb885a4238e6234b5bd2ee5771a3eb2e70010056438744fd85b4a74d5f080256d65789967c0e0c835a12a36f7e12c32f42107514374220d3a19fd9bf6570c6a53596cfc035024bb9fd1aa67182060f2e8c115a66376d445d840b92b44105d376af967528561cdb18d9492d15c6d7dc2562b310fca6cd1d7da395fb6684467b5451afd1a485aab16af8540247df46be18a78d9840526e7b84bb48c45fe8bbe2f8a43149c04403326ae48b99e684d1d30201fe904226cc3c453dbf407ca84344e882f47c1d32b93597f958c1642d39b23402d8ec498a529534eabf50365f4845e68b34d89d8910c5024dac2208e8610e5aa536a0048d0c62b5364233e96b690124dbdca104adfe8217e3472127c15a8a0ee55a99a29af316ee18460e9440f6192664fe0a36b191d5048eded163ef0e0b32a1b81767672bf13d6b881ad6833500c2418d2f65c530b100689b5f368956a92175425cdb0b2fdcd0346c73f148545d463c99128a859e64f0028447286e7965b58374023b94804bf26a56b88b55feb0b0de8243cd3c1aad0b12affd69a9661829bbbc823264edb8084ea4a71212cc34209af973efb92d0d591838695b91b44da5a88a71a1b0b2c583951584a13c872b007167edaac130aa9fb2386a66f7c83a887af6a7100e9c80e2770bd4d9a535ac7c40b78ffbb148bdead7a6631824bff5da6d781a50310bd827cf0345d8c2d15060995824f98ca752154da4441f17e0739999854eaa6474067ceb026fe705aacfe0c1cb23a192f4d38404b7651a9d416b139a4ba0e7191289999fb41127e2937997fe39f83a090a1d15fb27e689ab7fa9254b79d0321966cd4253c50c197886a7f35209421038d81bc8b66d124066f78ac80936dad17c0cd653244e80771abe442d2f0905da80ad50a3a994cfd282cd7b727097fa444aa384e090668ff174b86e8b072b0c938bbbd9f416b0d9f1a742421a7443eab4a0d66298764016168f5630f2f840a3744d4dce2af0c41f094a3ff6bb57c6af71c03a255939be159379c66fb0bda9a5bb47ee375aa6f9943447ee2cb1b916c0458bbdbc4dca2497c166e586c70b9d47a53ca74a5793537430dc7",
|
||||
"pop": "39be1ee617d60e058ae6d51566dd8d4651d339979c574fe8fe28991aafb30c294a95b7954830445237bb4344a57061997d26e8a42a3d2d01846b09a0e113364abb8b13a926e6e5d35154cda3662d5043a917f2200c2ce5a04473d76683b2a6f41f86eebd29c82632066e3f35a035882b22282bdcf99c7b1166d5b65fa0d435f6eba3a556bfd13e141baefb48a6f8acdc4dba8f5148e282407796280119cd5ea0aa6a8902d0b46a4ce8b3422c543ed2630bc16249723c86f9f8d822b8a9df90b911ef4af4715f9a91537d328951cdebe4552819019f293364cf6f2f1091d3c4c83c9255947b288fb275000c8dd2f27e745e8916b78da521cf4c53c7899793453b5faa4c1976e8de749b8627bf8b9ca644261b20b1d0157a6e60fb542611e678e991baeb07a61d29619fc39a2e5bc56a520e96756a3bf9643678c132ca32c51946626e6613759749ccb31aa3ce7e10f90745af28d31dbe31d669d427422ea0fc19a1055418df64e9eb37fc866f168c119c735950bb47dba6bbe5726d31e8735ca4f988a2026b2370a7937b71436affe64d004fe7079518a2f462397f641de74824deb6e345024e92b553b34c5819c84b0552ed4f5f9d45ca4e8057687c98643ea6cfb9e9691a5527e816a517600c3c7d87146d7afda1298ad1df49d006c865d645013bc9d6514c8edd1e9f4a88620f959a3a3ea61ecf7d5c509cdfd7c2ebe313d95f38ccf1d84472b3f397098c576091ef65f228658f4ba6d6becfcc4d78962b10d5468a90a1d0a8da87d9c9b9079e4b8a70b87bf6575f87e530528306a579112748c248e4290152762af82d526cb026703736c2b4bfd2f96a5fa84afe37cc14d34ec5389157166f1bd1c7a56405238df7180324d6bd9e7f1f56e5b9525964120ac5d061c7891b9593e8452608bfd63a63d040",
|
||||
"claim": "4629ab23b0d3e559e9beddd8e37671d1993c7d0f07b29be638fb92886269eb123384e5cd5ab18fa3c9828daa6aa99396f1c5ac3ae9f51be80155f2dc9ad7301e01"
|
||||
},
|
||||
"3": {
|
||||
"addr": "0xb5e768cb3117ea25175f51aa956b48691025c2a8",
|
||||
"pk": "b991d68a909506b5ec27a59c86a2b0b815f1fc8d60a9224f75f40b8b4fd0a73885821d9982e7f829dbf24a824b1a85292145807041d10005944d107b70cf9636a15765096ed8a5320797415fc709456a85bb47037279d692bcefee14ca4284b9495e0eb80353461c10304d8ac592d665aea90f30b2ca0331e84b0139a4c98e3e47bb48d616198ea14b8b2dfd77453b4065c33a2d4daa44976ecc4d440b772f43700e341c22e146026e75de104be7fdbe4d95a52cd40997eda2a0092a299b44d4274ceff272c05abb0bc59607249be4a58a0093f2fa34c14957250d5bc4ed23339d3a2d0750a77e14e8d107324ed12938c592071335bcc165ea62009145885bca6e2a6937ec815af86c670d2abb119488e2056689090623578b9ec28108654c93806ee0d664e2b7c53146fd981b65b177e8de61fd8f3a47987e6ae66221241a68e64534ca22351c8990641210851fe997b669f848a891337bfeb0faa42e88bc406741cd943685512ef7bfc65440e86340dd96b57408cec4d1648550129fe838e201a86164b081055926b6fae0b6e5f65a65eef5061d6d40681c648c9aad426927134bcb2e38ac7b63e2120a97b21007d553db0dc64be0b2ca1a2c6449c6f9873496b49973af9ca1514e3217fb0608aa3d82246f55dd6504a8c8ae0ad1a634d54bc1c1f0bdd008332817f25ddd700244d68c0b6a8f480cdf90ae1ef1a3a619961bf67c7208697151c2af54fad43471de38739cd6c4067a056587542782a422325a174db998c552d5c48095a0ad555d8b784d32c3645ac4d099165071d662ec365587d954e7128db6cedbc3172621d58c1b242d4a202841374c126c2e80a8830d570301717936b2c328ac7ec61379a7bf1b06be385162ae0c8139d25b010bbe166f1899299862acc316ba59a6313a6bc6a10f590248b2575e243f66be6d62b851bd685413535894e2ab09f2519290bc3f701d52e2518276621df409172f3695e628580432ba096327ce4efb170ead3701c899a7e84f00ac926e21564cf0a78eb662f5df31c2c57540423039b12f402ea20135a62d3c4d90fac5ad8096bf7ec667e919a006ba518a49187744122f783d12ce69a1bcdbbcc486b4e9d2f81c6bd09839a5902e575aba9ec4c81629e6b3e480d74f81aa245c546185542d8a2c1c39942a6e1c6a32f94a8d201eb85b6230e9dd16cd03827eedda829e8f35e6049e9725fce18066a77dae2456c62c82790629494b699a8d648a853eea8d322dd869005025",
|
||||
"pop": "39b4602846b08ca6db8d14b399980769d05f8523772390259518a06255d76e4a4b35f117f8b3ae5b9b1b9eb97d8ed40b382e31120a355d56092ea5c928ae244f9295ca576763a51621867c62b6689b06896fca866dbd5af5d854e1f6f334d253f760ca7bdce42353ea6cf8528e86e582b0c57e10585366932664b1af9a155a0a18aab48c4cf1458e22adbc3a44d6343e76299d3178e8d0d574313d6be57746623331150b398450d38d89289cc473db21bffde60fe3b7535636ac1cc4ff51e7883df896cb2635e71bcd9b90a4c3704a20a4a57d5b3c8d9e91013c5559bda6feb15db2a6ed894d21680d79209f9cba2f6eb3f06baf1e49e958c191af84cbae23187876ea85e2f4ba713a278ac2e13a0b3e624c287e370e9b39cb7fdd9acc1e5ded9252566f03b172350e01698e5af6f8372dfd754eb41cc2c3dd8cba465636fb79870de5d657b6b37dc2dbb6ea3098151b304110a58d9a73dff5614faadefc33caf682768e71734e74610beda1fdc435bed2fa726bc78f08de9be93cc1c9d67410b1a5824f18f4ba2d39d0463299c2632e81280e1effc15575a0ac91defae5d08fdd625b7171cd213467b4b9725d96195cf78f3b4dd5d85106254bb86adc55016ff34fc40622cd38107b7e30e662f25351e28f31483109c8a0664d9fe97c72285be366b0cd6791e7674ecc69e0b185c91149a0d3295bead53e95ecb4bf5bd529057e23a0515c0aaec189852939d8bd6b4d0a8146d48b2fa76fbc6a3f0426cf2f50a87a1a9f1d099f59ef2f2c17f183e630a7cb87017fb65b1b4f6daca87865d72c49f29094c966d9198dbdc8679d416cf4eedecf9a885c6ff3168ac3dac512d8622e9553712e113c86caa16b4dfd61d01e6abd0177eac951838de45979e8c73a02d66a53ad6416c999c2f7dc38",
|
||||
"claim": "4e6ce5501d4754a03f1288deed8cd22ac25451a564ca20e43b2776c9b4ae77374ad67cf6459b2a3e8e31bfa38f83cf5bfbcf3afa91f9db157ff65f2342a061e800"
|
||||
},
|
||||
"4": {
|
||||
"addr": "0xc3314fd768bb68b986e80c0a14175f6f72630d7a",
|
||||
"pk": "6e9ada38d7da61bb7062c6812dba3954f433ad08157ce4e9d340c3bb80d6b9b1d1027cbfe1514b2a9e5266da4757f9536a3efccfe15255baa4f48fd442d9c2731d8c63a29f936c1a6908f96fdd393dcda5ad19b81b1ca5c4472cfca358bf1566eecd9e3082dac612c158cc3788681f5f0868ec68a06cb04621465a4fca948f7e118352813e5d2138366c97296dc15649c99394b1bdd0e7969f913c255d694a989d75b6499a7c19bb1ce46f313e6a2fb6f4faa7ba63e4814e3348f7ee68bef4b823486dd6baf6f5b847a48b78bc1003bb125d3b26aaa9694a026c75da351064ff868061a78543677db940eb33a4636baa3e756948d61845dc43c04595427a6e9568a216b50eeea2428d82887931632a5a1d33803b392ed142bbd5cea9f619ce563a3c7b35d2f0a7709ed1e20edf0754f3f60aec60b329c0f51b2ecea714d079d2d4ed5f58a737feabee9c26a0320157147a3295a0eb00399eec3bb82d0a33a9e18789496f4e4d6dd6f29f106eab227336b49f688f95b33398c5489f5c32033cab2176749445c208500778e3955bafb2521628740896a9525d85d61aa2220379f8bbe8a16c44b45652d9ae7b2bfd3664a2a64133edae4b4edc930c64e6d99f97d707fcca1242467c9d0c71c441e59073e0d879e3af0529fdaf99eecc7c5219ec66d2c61c8294bd90dd53a21ffc0b230c6f6a89142336478c1179d6ecd91881d85e1e6535c1692979f217883feafc45b9a539834f0b9d74554901a8b83835c983fc43fe41141281c5234f02d50ea5f7a774a5d4dd9b8aabe902d2d0659bd1773bb62a5b1750a75f24ae7ae492cf2a5469563ad5062b4592037401ac334d8f6b2beb46a8aee678c11e98503e0be846dc5992e43b2019085e2872baa217547855e2d5b9984073b020b5224b577352c1a4bb900d8f5fd974c2c027cd633ec0c08ccae82134453b720a67b78e5d01f617343d81fa0864d6b0b1be09d35f1d707b688d134c4b82af9eaeb8908f40b259a8334c04a5223074638a82046cfaeba392c21f58f0be565492958f6282baf64d98a0d6af810490705136d1d1fc16e43b4668c9cb4fbfbf58d943ce5de56fbc5e44a684990b7df050981e559dd9d34a3fc4962b1282a15e63ac0e85d8d5794cf15a94c9409be98e9652e59176689d153214f2c6d011aa41f5709e536e267a9c897a10dc61081e012c51a2467464023c1dd870091db16b54665070a4db581cca14bd3843c3d42e907ef1f7c053d0a535a4d4f92752",
|
||||
"pop": "3931edae48178015ea9ae47ac7914b8a18807ba47b01c97594f93a525872b1890de7dbf73aa6d65046899f7a2a051079a6dce8e8ee918d1e80742ab18c8659a03fb333109bb337daecdbe6e9bf2d9b18c550e955ef8fba133fb399b928eed422978de91d88212d8a8531e9be4e0a142d52a65a11a2344c4a6712d874736c10aa73507322487d14bb9340c9a87d2559172b169f3e1137b0f0914e29eb89246e86e7f956718f66baebb95b8a9ae505cf6dd2cdccab85606488739884b94a8ee7d7892fba94d73b5b3412e27d25cadea735059964b4410b46ea2f7a85a7340320fff120ceb132b77a11f46d99de2e0640a794b6af0de8f6d064dc1a8e81b6b8b6b21680d58cf9d3c8d01e120e4e131c769f348d5d6d88fcecc71f9400c261eb35420f41cf669286b4f32f9c34fee5b09ed1737a241f37299bb155cca1906d0812f3786b2190faa0f0d2780dbeaa07d1639e442eea5411293762cda58c4cf72da77fc5b9dacaae853a765c37cfc401d5abe5c8e23ac95b29adb6ca34e433a9848a0c228791c82fd366775d897aa2aedebb23e967fb7badc340ad78fecdd6830b018f3a32342d36525b49c49ef111cca9779d01549d2be4911e63c8d4391989495b0ec3c1cb536b6f6a19ee8cc90c85414161d63364e65529486906df20bdd1266a568259cde459e28a17456790281668ab89dffb4f8b6dd92eb6505719548a43758023fa7bb328ecf675ccdb2a7d9545ad428aa2bbc236d055d30c0e069b3ad05c15a9db4838fc56060feb54154f9d09b3641fc4f25b3060886d23cf33689e98eef168eaa619398e45e260e807b9b8407572cd170df1c25f0884471ff251ec318fa26ae7330e1dae034ac1b8d6d69a8d1163beaa078d475e25a816894cd0903ce4c338ff7072316c2e20d15fd5721bd9aca0",
|
||||
"claim": "9924a7ae89127f8d98563bb87bce744f4e4175c9fe8216814702cd109b1058a01245d7330ad19d18ba96bb745b24350119279735a28db0c948f6b4c093af2df000"
|
||||
},
|
||||
"5": {
|
||||
"addr": "0xe13aa491abbc1252dd714e7ca0e55717a2143eaf",
|
||||
"pk": "a2b859c229911277f188666a63981fc25ea2b38df500cc8851ccee2f467d0fb1f8aaf84f9e757b7b5db61479c1a6a196677ff6d46779ef8d910a78604f04d8591c5de80ad1c32422ccbb3bc71914cd159001a2c78a9a00480fda69321a6ef54104bd0d1a1b8764d537b5909c107dde111786d5c6b943f52a06bebae81ed7168066aa0723ed5de103d0880994341828d3bbc78546b5e602cd842baeb162c8c099bf1112bff3f3ccaea4cec0ab5b4cc276a81351cc692d463cb6e1c4573036f1d07adad56f0210ee755c474614cd7ac618afa673197716ce24cb041225e4c72062873c8da49d13d11b70e05a71a35b384a90e95290735d9cf1ba9d0eb0abc5aabb728ad13d6cfa3ac2819411684629ff07db9306d6f5c52ac680ba31a2e1e41b1cf0f1b6d190ed3ad00470cbaeff956e7da446016360b515d2da9dad49f26a274957e45a6948843b0ea49c7995403667885a86f6f116e52eb7701615b75dc75801f5a5855c5e1b262746ed991aaeca6f3b9b59ab0406baa1e74a33617dfb6b54afb796c1d2299be9aa68b9bbd71c212f23909466471f8b04a5801408929474ce5304cd87801d01e1e8ff1d2b0842f727bfc3611138a3431e12867bcc000147238d659c7e241703444c26eaa6a161883a91e4e0afdaf39cc57d38615fccb1edf56a2adf1e401df1d5100467ac261772d695f29be1b3113a2a6f8e48f1b47380b97651a852b2c5da942a3ce92d17db15a669a4eaad2f116a25c4beaf1f9d72bfe1d665411c28041761d0960f5d3995e86fa15906195b2a1d163dae8e750b1a5c06b5fb32092b0ea47501da5e6d9a5941d82b5704299ff56e49299ec82c62fee9828ae56bdd2a90eadcdb94fcf2963d02349909dcf27e02224120d6b66747dbafec302bbc6b166e5eb3692b55a35495b15af063bb746d8c99c5c81719d42efb8d851537f875f6deab96b5860f26d6d0b036aa62d8f744692f256093f61f9e2e669f87feda1b60ded5d0574c521860665472ea9d44b1ba317d12e7b5480aa449c6d55f70d7a4341c22560a037b30df071f36573793efd2b098a6138cd74265e0493b71a228463c00a0260e0cbddc7905795261980edafbd3d30a0102ed9bd9e99630116341ef583f387e9ec5f9a6ba035e33d6b6c96faa9e27f6420a952496b540badfed26ceead61d590a5eba9f329ca9a5a0d562f4d0137f643128e6ee270e175c0ee0f5e68c03cc05338f2dc481723857fdc42d9134b908ae43367fb2601355a326",
|
||||
"pop": "3947bc4a7a6698d2b7889b89b6ccc1bd89b468001e7f27a031a2fbc557afd233937be4df7a2cf67db99ab234796ae4658ab7b62e3c5dbe613313139b4d63db75d900f5fbdd48bf43211155eb17f5f7be91764ee35915c39d0f4c5bf4beccc8ce8aa59683716dae362fce8fd19dc8c48a59a09a888c990754ee96263a22b9497353e4c6a68dd16b8c839ddfca50bc90f38193ea475e8de7455188d166a9e77eb06d66096674c9abd95473d4ce20b2c409bb86d0f00624efcfcbc3f3737da5128486d3045e8a93a7e34a7ba8b4d1f091292c5469a98799e26ed1eaf3c8ca3da56ce05ff84a39d18d65a2cee3f931d1f65cdf2e9b93ac6171698a6466d42f6a96aaba9092d15de72776fd3f44e399b96f1f875dee2a05a24289412e8d0d9e3e9642d6025b7ba34e163a9fb6204499bf066f27a1df9a4c23573e4f6c3b1e36cb3329fcb184b1dccbb3f6879268b753d357863784bb35f09bcf9dd08a71af8d4a5a4c7573181b299a185b864f9b9377ba6e1db2bb6985d7fc8a9e8107972bb813530a66b5565a3328ccd61416208a10d39a8736ac9c5394b6e168b46ce9adb0f634d762d7d2232f4fbe54e079285c85c19d21bac4af9ada96d56fa4fa392c8e1dcfec51dd28a8c1fa176ff571b9596aa9aa65fb6436ca57f72bab21742362954e6224da557ff2929a078e6ccd3cb755c3cbb55670999ae457513ef85abf07ccf3f4a78de9d4ffce5a647f1e78288d98e43893b421de5165a7310ad77930eac3bb718842bd76473fcf2d683b555cf0bc747cdee76d6fcbcc96e59f2e7d502afa74dcc07047699e79f1cae5762ed5632956e1c175ed5ed47893302c8601859ec0d049a52b08cbb97d46373f1183b724cf76aebc469ba3a0a7c0d9756ac32b51544fece178b9a41b4d25bf49b2d03af0",
|
||||
"claim": "681a9c3746716b58ed54085ff394131920e0fee87a8970f1395c9a0e61636915580b7828973de824cad866d3aa35e02ea820cf8d2595e6184be077da78090d7101"
|
||||
},
|
||||
"6": {
|
||||
"addr": "0xf73bbbd26a82dbc769066550d8d4585eab2fc00d",
|
||||
"pk": "ae79ca93fae11c333ca673090a4b548553614bc1ce7f6aa2773e17b972caf48a07efb416581422605f12400494db84accd432c148168db7794ecff419e83d4738d98f6b0de8f0d742902359aed104a1582cb8ef976965502c28bf4466efdd9ae0350021542a563c9ad2c22b7b0da1f5cb832c5a54d58284ed0f172091dee7be8f94bbae38a4ec0a7c1dca67ca50de962ca09ecae9a66d227841b2c66cb8600a1f01fe2d48be3c64999d1f8236762983a80c3a58fedaa0bd09e3912223b4415cde3fe63d70a62acb564cae57b3ab760780ff26c422d6675920eac389b91659aa3738a5055a76a9046f443ca1c101da8fcca37fe0be18fc9c6851706367cb65f035615d3150acbb738c66eb6eacd7b9a1b03b06e4f046f8615754d85e69d262d8674e8e82052bdbf753591474488488c714a066592718dbfe08d0b91bf387d2b9ee6a86bd0bdf96082fa523e5b6851c27723b99af0aa0722b185d52440c9c82a2a61d6729ec27999f9019f071e9852e813c0ab9318e2cc791a6e7203c27ad48a68ed1385319985aace0112e17999c80662b12a135b5e1a2c9067d5e06d0b33f5a691b65e2181b8b7f389a364543a058268a97c20928b490ceffe1520fa52d143a495941996b527712beecb17786f982425a8ea6cea000f191226855eca65f069782bd777baf11ac781a5b77492e2b69c039903c991259b92a93d18fe6ac74e064370f3dbbbc5ad82b478648ccff8ab45d133b1853a1d21d2e7d525027b2d9740bc82fa16201fb16318da37ec6494c9ddd1af864ef8b50b266f1227134a99c40d8571879b8a660964f6217ca41c6c0435056e5aafb494f4763984a55b196ba4e6691c57a66ec82b886e3e9da601acd9a2ac3584975255ae13c2781abb2a089e423c36cea35126fca8728a82a9bb8dfbf1ed0795a46a83c22945b08f6c7048e3d5f3bc7874164ca39b05ea81d9f75e778cea8b01b1c19a8a5e89991419cea779aa49ae6d562d38be70784def475ca78a3ee40e86de917557d716b008a0819410625ba6d3603b53ce821d1cbc0009dc4d518e025c246e5b6904196e22667a9df22192d22195ccb2694e0cba7fd011553081520d24f53344d5da90299c150b968f7412d51a638bb853d52065e49ae471b5cd979b11953eed2ea89c2d1366a48a664502a96dbad1d8e527d2064d5885cd510898880110cfc7ec002de2029e02516682b953a88fa72b00c55632415e9b52eae8640d866d4074880443ac6f791270a208d2",
|
||||
"pop": "3922660f4804b28323dce5ab01be86754742cacb2d2a29ae578cad568ce0c36a069af8c3b1525d82fe6fe92e26ff2924515b9c4ed33e50b43dfdaba15e3c0e9384336cdffb39ab440c818c3afae4c4e92968e76efa5473ad33162589ad02f710f7500e109240d83eb24c2ed33f6f9685ed7a94fdc9a595c3166b17da66b45193d4cd0bae4aa9cef7ba0a8a54da786462cd85a0759ca4220ab034dad855838b53c228edce15398ba1acf1586ade9a041387d0553b4d7eb36b46e1229f9cb2a1d05a3478e7775ecf24cc1355fd813f9a3cc666517bb7a8aafa119ec67406e2950b8fe99b56af2eb729957cce6a6677fea49930bdc4f715041d17eae29cd7062867f20d0f74999489bac62fa215cffe0a8a4c93d2210c79cdd8a6497aa4d44becd86178eaa612e5c7bda995eeb938adadd1d1e54b9820d8f76748b7cd92c1f4dbf163f2bd968f2f3a2c91491424221bf7f5f796da2ce48919b7c525202418a56b5befe5bd42cb13cdd7edb856b70cb397c653931875deb6c5c7e0ff08811cd8763edd9a8f4c91340ae6e5a74b1b2cdd95dc7f24e44e2d6551ae3adbdec15b6b1bf54e1f88b9eebebc736d6182d6ad3a0c77d38e86397449dfb266cfaa33caa7c20a9a417ebdc7cba31d6f1986c4985ce1d96c4fc1aa24957543f0c93b64b0731b2efb25ca3a593a764c2006c0feebd599cdc72299e390db05ccc55cef9c7debd0baf5d3fee5ea3f1abda2958b6d0f90ea95892a2990aaa6f7da0666a53598214600829c09ceccf9378e6fabd346268ae702853661dbe3719057fb514587ecd063911fda42fada8f64ba9a6e1c27f954e2b0d9691b7146a16c78927f0202ebfc750815038111a8189dc26be8cf419229457e789132589a6c65dffccd36300f345ddfbacbe37d49dd357bd8590badb480",
|
||||
"claim": "6a5f446db8033ce9d9d20a26405ed248c85593ce317a49d7a7cd6e3e94639ad678523869098e091dd6900eff856f4d29e1b1e29f456e2d290503ff3853d8c5a700"
|
||||
},
|
||||
"7": {
|
||||
"addr": "0xdf09b32c761620c5be77da398b97a64f03c3980c",
|
||||
"pk": "b3e68f6854452ead92a798ea4db7116c6fb4f249d222909490f1837648185d207752134d8830bb9949597b70e7fa8297be87eafd8b7d116d1fece81701e0924d6a745bb64e884a54e1e949238e497868d2bd2960918a07a3cb1100364043d3218d2e76ceae07859de4182c85f7080a6baec87cd2235e908b2ca1a5c2e903bb387c067f2c514aec16c42f1ecf45b2eba63dad3b08a2da6bb6ae485156735261194cb8426fb8d10686527c4567a64195891acd62ba2c368152d2d36c5c24bbfea36412a74830c00135dc21941cea0010dc6d5c14ea61d1181f2db9ece691f151f1976e9a4a375d75964dc3363699f030ca842572c8e322854209f796268bd831e2975bb26f0c43332c2e7c5f5a959a50e7697e218f968e0039664e585a8fd5204261d6d29c287f13dc874122a3c3649169b0e6a2aa3dc93d70dfeefba3aa2970a788112f1c8085802174759594f33fadea69a413e5dee35f8dd13841f29234393a59052787cd8bf4b5f51b8ec26185ef65b788306f317121386a23456a1a64b1abc415d4b4f6281a8074526a19e8dd51b8317342e1de9f4c86a4c7fc90f64d628a909f5b0a2c146fd0b6861165487a75f606536a7abb9aec8571984a90b9b254447df27945cfec9f01ad1e82e54ab3617d22d38d912a4fc93c8bd4154648129bd17818892004605a7a6980b2a54842c5c6be2ca0071527a5b279156983ceea138ed86d93808b732fb492a036088c8864b7e1daa6b589982aca418d73358adb00aad06da91845f80723b4b3903f79f18fca2e3a49e31a21253bb6fae64f08a3350951a454d0fc84cece51f9ca3504d8665933088ca47c2345a744410ada4b41c29639299127c5a38ec701aeccb82a1caa59c0abf4be05bf4d10b119cadb9382f5e785900b70578a3de5659d2c1dee6a5338df1d0b90c293084620b9bacd2602839f75e83aa4258e03be9e541437d0481af11535d4e049b2568190f6cfaf2ed6b2e4d48e8979168299bf96fb192112e99a4589855ad9470a5a8f451e8a61f3eb4a51885865080c8dbc98e71bae8f0c4ab1e15247c79d207a5ad11796c85e6e62733a483e0f022cb05097243e1e61143805cd3ede3cb2640aea3300829821276803d1ab1898401e0196e070b89cfcbbc194e86f49108a45e01bb4a3dc4bbc73a05b5d1a674a9d28b16958812d4ca7bcd475b5e99957e9ee4236506d33f5179e6f804b59db5bb81f0a94500a668302599121fb67a62a4dc56048029c907d226bfcdbf3",
|
||||
"pop": "398f3d3900e8f3360dc56b9c672ff214b90694d4517b3eada26d2dee11314490adbe600759bbe186542c8fc27b6b56e36b28376d98e0b96bdbe0bf28f7937068fedd82690e5e384b9705f2fc47b5ce632a92aa48222e843b798809c2cae6a2854a0913476fa68281482d3c5c928742afe84a2ff29338eeee528814ed7d6f4d1b50d8de39fb0ef6f3252047287dc4fbe0b236d7472e11128479eb2c148e331ca72af9fd3192e3a13a36565ab2f2724ade7524280928e6b0fb6bb492d4b1eea78fcce25abf5519f76e22e56ed0a186c331113d63bf1d3a8f220246f2fcd60094ddbf9a2c444ab1a789a8ba9f1f4f567511860d6d4ed8737683d20835de947f9b96d6827824abdec344e00d7418e7b2bdd58b711ed2e226d23d926cc6626f579ce214f950223b34f628689aedd45ae0cb1fc914b50bbc2451246dd8be412e9a1d20b6d4d3b6e989d2d00475fadf15f496675cc021b8ecefd71a4d8ec451a1cf772bb31f4320569c565134bbb48ff7ddd15311be25e30733fd244d666abcc6ee4ce2bf30494a268f17b69d5c1a16b67f16dfd8f0b6661c6048caf394a7860a576ee790ee66dfc138833ab9199f12268b509776cfb587cd9de8b4fa66a86ab197bc9366cab16e6f29b57ba02fd7223aa2cc579b7515d3bdb33cff7ce5d4a98c121db7361909391d2dc656247ba31071bd62088cab454fe65d715db188775e66bdfc3bf339ea3a76598521fec00f2a0eef651a2d11044ef8ce66b948e970fa293d2b8d02c11cf58f0aebfd3c7ed22eb146b1ddfeab7110ba3338ec5782e1bc8cc70a10cc1e1f4a15eca6334cf6b35fa26d32da9bdcd471b50d461c80238c91dfc99f8a1bcaa16c9c643f253c943ebf497e63cf6acf5b6f7b967139d3c8345f9a97d5ef8365b44739e7493106d8801091a7f5c0",
|
||||
"claim": "feeab3b9960c07f94214c6e1b7e93752d777c5b70b54a4f397b4fcd08b9bb3145a8adbe7191e449054dacbc624e81cfd55327bd8ff1a63589465c2c3a42ec1ed00"
|
||||
},
|
||||
"8": {
|
||||
"addr": "0x1bd5514286f5602a6762b0075266379d29af1c9d",
|
||||
"pk": "820cdb49fa91e522cafe7550a586b94132cae78b762b166f6bd819a1a25409c534a0846a6173d047cfbc67f518518f1fef1c0ed22a006ec77175f78b1ba5240ec600a721e7c8444a770bba44fe186a5edb2a8078bd55b823ab4fd0b6991748d142dc710691d574d4f64768167776ed9559de1dc6a466c5103585602f0bb21f2a85b1a76fe9a27ef5d5e6eef099d255c841ee8a12481d9bac050955e049398e228a8bf63013ee4a504a7c50573e65193872fa271f58cb848205112b29592d9222c6242e581ca10bb10ad04852f276182a1db822d63e66926b9b2229b8551a06520f9c89828d053864dc6717d107b9660ac6f5ccdc5696e013774f28a050ba02b787c4801139f33445231b87d44bb0ae5a8b5b16dd08ff174221f51e00bc4ca26712d6d2bbc03aa918cb95f999b23a4d71c1846ad5ab887f71ac294f42359d33b9aa6421d604b1e81eccaaa9ea7787469a68541103cf0a3b8234efc146cab85f4900f9188eddb6e00d68eb04debe0afe14572b1f924de61b610daebc7e7c20b18c97787448e199a79d5316e9b8c2e695b3b030335dcc60927d8d62d6526a4fba58763992605508ae16e3efd27a861d1796c0a6b746d4479c4fbea6f51597c9aa2062e2b8538dd1e85cd5350095472852e15d09b68ba1572c466555616134c8caa3330974244d3d31d00d256b654f92bb5bad3d75f668e69567263c1ae2e5ce6a2a218468b1c02c89f971e474efb8b59283578443f79e425a06e3ed7c344176db59e899a180eef9e0a5440ff4570b385ac700cd7fa290940b9201c56aad19e584ee08a19b4e38bdca2c38ebee649c404495df9ea22cae49b48767eca88e9e784319598688df4223ef1890450c597b2519044230a209488a56856cd1890045967e12006acdb128e4121614a1fd5996df927b6d3d60a84bc362cf4044b5243569639c19821adad4c4e09839a1789b82e9051cec285e611d0ea0170703e5f317496dd0ba0a330ef00bc7e70911463c534be4c1e8296ad5a05256a72712b9cb31d5adb0b4e8c5f89255211d1d41c121ce7d80f1132ec33b91494cd7c22378b3bce21b689d24a9bd933b68aaa917a8df5bf9513014897fd66d9451b62e30fa7c09d5116a11c5f2a9bd21ba718362a40484fe6b93f76c1008316d552bda724634edf50b184eba5a0c1413c17e5b82b16762629746fa5302b352c525e97bc189593e93adcd4430684d2c0237117611f615edfe21c8a4b531354925e7638570bacbc3868ae7",
|
||||
"pop": "399c665dfc4c5a84e8660b229cfe2a8161e7affdd52ccca8ebbc9d191ac3f11e6540419176f45b2f5e02fe61ec33d485c555e399e197340758845032713cdae695629f8ed40b8372b89c1ed629d0e136b39670412b7b42699a6fe6455312edb7b18daa07fcc9d20d9a5fd2671f25bd5ab0912472c1c3819059ed37b8d7f85b88a0edc2ae55850893929bd5533840741abe7d31358a775242a17272fb71f5e3db158f66ba58d650f0c3fbff7a4726455624c4e58c364e2a3aaed4b94b0d2f3a8a757f4daf7faa6e79b9c9414e5e4c818c71cbf6d7cd1cb92cedd94693c08c312bd3e2a29b49fd8fd16448572ac61706f1cb936a1f29d87d1bd1b1d92dffa5152f428ca77f5ac672e65c210fd52e08e2ae48327f6591037c20d02c9a39855a273e36667bd0d3be9306293888e625343e9c4b23615d389c4160569d652f41b666e1ca690742d05aa405b5bc6f628f13c18b67219fec8cdf90c3d27547719ddab4d4cde7ad8ac09a895c0693689bc5529c0c41b41f8f33fdcef4e765e24754a425914b7ea2684eca04ce678d46fccc768109c107baabd7cea3f88843a14fb20cb6ae0a13dcf25bd37c210cd5aa1e63cc5cd582326ac3a53fa2e3c693529bbe4ba470ffe5124222b8c33aa60f74f85ca177f207e975dacc770b4c9911b87c15caca406c91af7faf41103a2d31aaf2d5644dc77aadded8689aaf723499d3abf76de284c3d0b2ccbe78fd4dcd23779988facc290b452496b45908aa16a5498b6c5858a27da36d25ca977255d9dac15548ce0dc21da2238c15245e7ac973653241f290def8abea530b855644d23d1f6548a4ee76cb975988235d97d518de6b9b266d8c6451ba75c7e74811f7c9652e0e56a48fa44cf2f6eb159ad4b21d8ad91078d251bbfaf7bf2864d5ad25bd9c14e1d1e171d184",
|
||||
"claim": "022736cb764b88fee04dc13d648b88e9763c6f68197ff114d8a6127b279248f01ab20c20e680d35540ccc30d07aa33328c800187d96a88f8389113fa1807e70600"
|
||||
}
|
||||
}
|
||||
63
registries/registru-2800-v2-13600000.properties
Normal file
63
registries/registru-2800-v2-13600000.properties
Normal file
@ -0,0 +1,63 @@
|
||||
# AERE - registrul Falcon al validatorilor. ADDRESS-BOUND si LEGAT (v2, D-146).
|
||||
# eticheta : REAL
|
||||
# construit : 2026-08-10T17:31:28.615510515Z
|
||||
# chain-id : 2800
|
||||
# bindHeight : 13600000
|
||||
#
|
||||
# Fiecare rand poarta DOUA dovezi peste aceeasi pre-imagine canonica:
|
||||
# .pop Falcon, semnata de cheia randului -> cineva TINE cheia
|
||||
# .claim ECDSA, semnata de validatorul randului -> validatorul A CERUT cheia
|
||||
# Fara a doua, oricine scrie fisierul decide cui i se crediteaza un sigiliu, si
|
||||
# aceeasi cheie pusa la doua indexuri satisface singura pragul de cvorum.
|
||||
#
|
||||
# index adresa validator amprenta_pk
|
||||
# 0 0x4bf6f91d84b37454544279cba152581ed6820044 fd07f92c9e3260f1
|
||||
# 1 0x5f50fc4e1b129bbd5e6e9f80c57680b0b4a86eb0 d46510fa0bb7a9a4
|
||||
# 2 0x97473985d04723299559f49b856effb47d7abfad e959ac2a6209a4b9
|
||||
# 3 0xb5e768cb3117ea25175f51aa956b48691025c2a8 6c8d2be5c3a2ae33
|
||||
# 4 0xc3314fd768bb68b986e80c0a14175f6f72630d7a f719af63d9296c18
|
||||
# 5 0xe13aa491abbc1252dd714e7ca0e55717a2143eaf 05991af0f4c8d8dd
|
||||
# 6 0xf73bbbd26a82dbc769066550d8d4585eab2fc00d 075bc8630e79658c
|
||||
# 7 0xdf09b32c761620c5be77da398b97a64f03c3980c 949d1b4777391fc7
|
||||
# 8 0x1bd5514286f5602a6762b0075266379d29af1c9d be91e6d03b9b66f8
|
||||
|
||||
formatVersion=2
|
||||
chainId=2800
|
||||
bindHeight=13600000
|
||||
count=9
|
||||
0=3b946f7ac3adbb6b49eb1426d60f07725a1b9409d472c9e8ea47a8e4ba38bfc773de905f06c51860d4e83eecf5f5621329634c3d9061816305c1fc89d55ba937f97b6482cd055895c8b4864b549ca4bb197244771d0635828882718142fb6800cbac04bd6005e3ae582f7e3ab704471877faec7aa6e1e96d1912a6e763f74dae69c2ccee323c06e5515fcc6880a2d96935220f50ac5bb02343fd2985a1b3b78f0a8548abd6702adc2e298bc113dd37411454286c29ec5592b963fae4bd7042fa6877e2363fd03c9a95e97da50144f02690d0b97ca332d14f9332edc0b0c5e5b27279569526523034d65b618147d267fdc5a35220091cca00b7456ed9bb1def448f4105bded1e79e1e34a6de8bed08a24383b954d47b3df5d1d8ae8b5e8592a92bc80b4220a7c0bb123cba55ae14371ca1716282276416c82772795ab0191c2562f189700469714ca5500b94beb23ad45a41ddef1184eda4d06f4286da21c0fdcb450e760d84401968a4e0fd19dc49bb1fa0bd79be005d781a4f19d5c40e71a4e6ab3ccf4413bd7f922799d28554f19609d7e4746e6519c8d029a1a1a548d369498feef77438051dbc2e024ac08220934dd42264acc038beebb5314f198589b211a81d8f1ef97e41af8d9b0de9fcc7b645cd80fc72c8c255e34495c51a060628205d48a11f9992b3865d59e692879a9ea9c6af9b831986e852c2583f35b1ef9aa55d41b1d18dd7162aab0ff4931476092f9d7e2f078f44ea2d0da699d362b8a0de3f140640826788faf7c7d4c0aee4b88a14cde9300a7253ac6c9b8de188515720f130a94673465e0f1e84a501b6c390b2ae84ba44a449320de37b26520e12988a11911465afdd2fc9b161965d3ccc15a0559930810104a6e40d17f629cacb8fb3973af0967c679a7d8c93b8aa833a28d6ae975913d0096a1416d79779c00052b2f19f479251a76264084552e99a76d42cc8572dd2573de7497472bc096e29cd7b81a2c1e8c20688e84245a46e159080bc976d98581b7a1023f94a5947cd244ad487b0193a62cb799afd30a8bfebb6a23ead4da7d2c7993919913583deef2311da82a924594d11f1e337b1ebd4364405c0cc88f57254261441d7a0b416492af894a9920e2c34cddcae506e16581b977e978150402663246b709bf9a4a0264050c4c972d86258d40eb8a046755ab187663109ad0aeab371f798b503c2ae73da67c5b8069dbaf06c0b6af28e0007dc22a766fdc3e1a87439258e65a701d8098d474
|
||||
0.addr=0x4bf6f91d84b37454544279cba152581ed6820044
|
||||
0.pop=396e2664ccd6ca94f76fff588a59dadacc08cb9215a90a0d9220bb260e80e1dad4d10acd3b29253f3e06f33390f58d1ed78f3e9d4a363a060a7cfb43318b6c2157f03e70173b054a6fd14fcb8f98b2e9e1a65caac4694c2cbbbea5e9281a3c34f1e5feebac690ddbf76ca5b3fde81b8f2a601c047feb69a714cf74da3eb1b3edff7afd2b8d0c015991134a6425c63aeb39ce298bcd927cadc47f7ec7a113cf9223b0b1a2272daa8f6505ffc387d0f58cfebdcc48b9edc144373abcfc8dd6bbc4119adb9b0272dbe696bd2fe79335f750c5933d07f23b6864993f565748edb929592e73fdaa56212472e4274e22a6657ccbeb56cadaebf69a221326abe9a0acbb618c4d29d89af1b6552cb1126b1d611046b2fb05a94b395d6468ffcd272f254be05baede5c4a53c9cbc91746a748fcefafc8d1909320ed8a47345b9045fdb575f76e451999519996522f53423cca2b245272ddfbbca77b4a32475d56506d090461c2c9f79104070d682cb1ec9279ced0c9ccacc896e1d20956793947068758c21a3f618f902488ce3f35022b6f3e46e89e51b71e4c496520f9063993133e255754d71a1635769c25fb1351b2a4a5b28f3979e3f1d15dc08c57e4ceba14b860c867e5b09a08377fd32bb3a39b4600db7c6068059f104bda82aa44ed6b515cee321ce95e3d6ed462191eebb0a0eff3880b3d0a54503c0b626ca2a8d3170575a5e77a1ee99ec8392ee95b66aa0efa3aa46d0bfb61182c5e5571a05967ba89ff3e2c87e59947dd14204c3cce9d82f9db9fff9caf1ae6c80a6f29d1d0b50ea49e0e85c288827a9554c9aed550e8d4ae2fa70f332acd94ebd8f24f315a72a37d48364d4b1edbc455be63f5b848a2a9aaefe64faf32569e06d3d52b83ff377d98d802819993dbf1d76ef21288b4be6d7a2745b8a0
|
||||
0.claim=368969e111970b8772d0b85540de5497ac036e4e1b30e6dda7e8778ea26ed2640519161648722b974dd94063e7fa14d351bf906d7ee99a721355aa30f206ae5f01
|
||||
1=1125a8c8ceab68078dadd35101e64ac8fff297aec01181732a50ed24098c5106cc1acebc7ab349380a595c7207f93e8cc96aec66e74a5ad73c0d9658e450776448d8b7f6901e8799525b6bafdc0401bda562c5a42e7e66f67ba1645c70f9473769ec01d01239f9d26b6134abe28fd2cc361852138c657455657bba806c37a1eca1b5ef42f4a498a987b7614f41a99752be9e640804d4fb74db16be5e9b3b101f20b37264a31b5efe4b5d2388cc92dab1c82218e24de139ea69e51b9d7f5e190691e6d20626806686939b7d2e593409532d4c465af2b5c8848f298ea7601fdddf2f5c2420b7e02f8bac6273da2b2c91b24e4329dc1c42640b00455ddd4c040b9accd0a90d993062de6e1f82618d523ac0d5b80d407689cdf05c100a758702f60e395df0525a7d0421b1e2bc60c612b89b945765f0b251adc824d9a6a7c4ff48761f36350de36bc7de94900ce4e91486424d1a1901c45abaa1188acb4e45f4bf61753b41287e73ea33213c153b661032e1e158db1d12d5532a0387870ec896e5267e6d290d53850cbe3e4d12ab5f0ef223b6e307c34c9285c122f75090439d152d466f49012bf9135860468886c954a574212d438c99013a878e9295b44686187b92783ef22c53aa95e2ac84d143a1b20e1ef74fc5ac39f2e03566871a42e67b340455da2922ebd9e4400b17a4f1965764039bd864e278d7b5a5a1ab600ea6edb0512a932acc47186db7f0cc5d429e984ec1b4af06747e1e09374d372d65b9c9c9540731d6e5e9f54005011570d3525eabb3c0c6056aa3522b9d3246f818834fa18cdb069807270ee3e6b30e945d0d9009444b303a50f7313d800f11020d49b80d27696a3519e1145b62f678d0206dc6be78cd321459dba0f444e96ea529be49b0d864d56ea2368b60661bc259184154722c1332de5593a5e29235569936210ca761cd9518de96855c328a517c8f4a6a3cbb75ac1f0a6834e9e6ff4d426d22b547ecc88e1ab45d3678481585e1ecba71a54421c0fd83dccc39ad0e4764366e740a482ae8ee05f22f541ac79c48c57eda102288836b3b6242334e96ed85ca3790d3e40ebc859778b844503c5c8a97980ee347294bd9606f226831db0aa40250bdb073312baaa92a86a31770469b7fe041e33f85a40a34f1071aa3ad4af426619fda690e6e60a3b8534c63e080438a123f97fab6f0b66c677de4ed35b65db81fca0521dc99b20e5474466412ca5151f6497893988970d3684f90d95b8283e8d040a5
|
||||
1.addr=0x5f50fc4e1b129bbd5e6e9f80c57680b0b4a86eb0
|
||||
1.pop=39ec0d61382825bb96a0facd4dd5b7b3961fac490c9cacb7344c44e33ca00950bc02eecd992b31eb8194760cdc157a7013c54facf5b6087a9e91f3eb9926663bcda5c6b2e93dd362cf99b9d452336cca60502c868b9384a0cb7ca72796baa707829b3579e606fd0e218d8619e9facd14071deef1e5dcb943d2b25c258a4ce52e8396c3b39842a90ae4bdd3839b952573c69754b612d92c34a88d3486269b592dde368598d6e69f99d4c04c3208d160bcbfc97a8148e9b1e41ba9a02592197eff95e7a54faf860d662e5dc67d39c3c4c9fa5fed47993af66b65a0399a490907e92af60688cfe9df09e64afea5c9cd6a4cab445a0220c219b9aa7689dd3c4a1d9a2e8fd17eef466bc95a6e5054655af0c29c671a8c736d555eca6266388deee11a739a78cf0516701f7ee7d7e08b67465f80620fc37490930e2ad6356570d00993e1cf531cf8df0633c18d47e48767e19acd9b3758ca55fd7356498763261727c70f824e530532efffaab0022a3e48ef9b924fd6a7db746f0c157d79cef31125b27316952a8e475ecc88d00bac7a1f9f181e3ce9a87f2b318f444d823a1354311c723f0af09a14c83df27ec8bc31f5cb4e64ad1c683aaedb5d931f922b2c53d8b5fe8909f22d8783387c66fd561e3fc28ff7f94c195a7d7dec02a0bacdf5cfe3fc58d3641c83a9538bba295aee11b6ba3b4f93e71563c6f7679f4cb9b7410d4f9141f412faeb32b045fbca33f240d78e2e0976acfbb7bb77057aeec872da9dc40a77b9e260de5e2753cb96ca221c136326b7bc3c1fc45702a56bf6cd83296c4b67082f558de9c9ee747ada1ac7f3a5da1636b92baf4c5e3aa4694793a765b0e744f1496c69163c133c2373ff7a7c7abcb2ba477edc34d7bfa570a8e752022837dd0d6b7b8a27d1479e38f74c6184ae00ab88
|
||||
1.claim=a2fda63d2ea63808adbb89c1a095b929372ca456ce4cef1b60924861988feea302b38d827f3f82bd5c1eccb6da44653eb4321908dbdb543ea54d968d1104beb301
|
||||
2=8cf6831a6196601d69c0db2725e6b0c2ddf4179d8c2eed5bc1e46528a7f9cd046199a53e8e6c127d6dbc35d1a0d0450f6f660dd0a22debe45654788a5b8ec849aafcb2a0ed8345bae07a262769b1a8ee57ac92f496b8ad4082ea0d8f7cdbb9a52040b59dd0f69a9206bd9e48aa41d1852c217cb885a4238e6234b5bd2ee5771a3eb2e70010056438744fd85b4a74d5f080256d65789967c0e0c835a12a36f7e12c32f42107514374220d3a19fd9bf6570c6a53596cfc035024bb9fd1aa67182060f2e8c115a66376d445d840b92b44105d376af967528561cdb18d9492d15c6d7dc2562b310fca6cd1d7da395fb6684467b5451afd1a485aab16af8540247df46be18a78d9840526e7b84bb48c45fe8bbe2f8a43149c04403326ae48b99e684d1d30201fe904226cc3c453dbf407ca84344e882f47c1d32b93597f958c1642d39b23402d8ec498a529534eabf50365f4845e68b34d89d8910c5024dac2208e8610e5aa536a0048d0c62b5364233e96b690124dbdca104adfe8217e3472127c15a8a0ee55a99a29af316ee18460e9440f6192664fe0a36b191d5048eded163ef0e0b32a1b81767672bf13d6b881ad6833500c2418d2f65c530b100689b5f368956a92175425cdb0b2fdcd0346c73f148545d463c99128a859e64f0028447286e7965b58374023b94804bf26a56b88b55feb0b0de8243cd3c1aad0b12affd69a9661829bbbc823264edb8084ea4a71212cc34209af973efb92d0d591838695b91b44da5a88a71a1b0b2c583951584a13c872b007167edaac130aa9fb2386a66f7c83a887af6a7100e9c80e2770bd4d9a535ac7c40b78ffbb148bdead7a6631824bff5da6d781a50310bd827cf0345d8c2d15060995824f98ca752154da4441f17e0739999854eaa6474067ceb026fe705aacfe0c1cb23a192f4d38404b7651a9d416b139a4ba0e7191289999fb41127e2937997fe39f83a090a1d15fb27e689ab7fa9254b79d0321966cd4253c50c197886a7f35209421038d81bc8b66d124066f78ac80936dad17c0cd653244e80771abe442d2f0905da80ad50a3a994cfd282cd7b727097fa444aa384e090668ff174b86e8b072b0c938bbbd9f416b0d9f1a742421a7443eab4a0d66298764016168f5630f2f840a3744d4dce2af0c41f094a3ff6bb57c6af71c03a255939be159379c66fb0bda9a5bb47ee375aa6f9943447ee2cb1b916c0458bbdbc4dca2497c166e586c70b9d47a53ca74a5793537430dc7
|
||||
2.addr=0x97473985d04723299559f49b856effb47d7abfad
|
||||
2.pop=39be1ee617d60e058ae6d51566dd8d4651d339979c574fe8fe28991aafb30c294a95b7954830445237bb4344a57061997d26e8a42a3d2d01846b09a0e113364abb8b13a926e6e5d35154cda3662d5043a917f2200c2ce5a04473d76683b2a6f41f86eebd29c82632066e3f35a035882b22282bdcf99c7b1166d5b65fa0d435f6eba3a556bfd13e141baefb48a6f8acdc4dba8f5148e282407796280119cd5ea0aa6a8902d0b46a4ce8b3422c543ed2630bc16249723c86f9f8d822b8a9df90b911ef4af4715f9a91537d328951cdebe4552819019f293364cf6f2f1091d3c4c83c9255947b288fb275000c8dd2f27e745e8916b78da521cf4c53c7899793453b5faa4c1976e8de749b8627bf8b9ca644261b20b1d0157a6e60fb542611e678e991baeb07a61d29619fc39a2e5bc56a520e96756a3bf9643678c132ca32c51946626e6613759749ccb31aa3ce7e10f90745af28d31dbe31d669d427422ea0fc19a1055418df64e9eb37fc866f168c119c735950bb47dba6bbe5726d31e8735ca4f988a2026b2370a7937b71436affe64d004fe7079518a2f462397f641de74824deb6e345024e92b553b34c5819c84b0552ed4f5f9d45ca4e8057687c98643ea6cfb9e9691a5527e816a517600c3c7d87146d7afda1298ad1df49d006c865d645013bc9d6514c8edd1e9f4a88620f959a3a3ea61ecf7d5c509cdfd7c2ebe313d95f38ccf1d84472b3f397098c576091ef65f228658f4ba6d6becfcc4d78962b10d5468a90a1d0a8da87d9c9b9079e4b8a70b87bf6575f87e530528306a579112748c248e4290152762af82d526cb026703736c2b4bfd2f96a5fa84afe37cc14d34ec5389157166f1bd1c7a56405238df7180324d6bd9e7f1f56e5b9525964120ac5d061c7891b9593e8452608bfd63a63d040
|
||||
2.claim=4629ab23b0d3e559e9beddd8e37671d1993c7d0f07b29be638fb92886269eb123384e5cd5ab18fa3c9828daa6aa99396f1c5ac3ae9f51be80155f2dc9ad7301e01
|
||||
3=b991d68a909506b5ec27a59c86a2b0b815f1fc8d60a9224f75f40b8b4fd0a73885821d9982e7f829dbf24a824b1a85292145807041d10005944d107b70cf9636a15765096ed8a5320797415fc709456a85bb47037279d692bcefee14ca4284b9495e0eb80353461c10304d8ac592d665aea90f30b2ca0331e84b0139a4c98e3e47bb48d616198ea14b8b2dfd77453b4065c33a2d4daa44976ecc4d440b772f43700e341c22e146026e75de104be7fdbe4d95a52cd40997eda2a0092a299b44d4274ceff272c05abb0bc59607249be4a58a0093f2fa34c14957250d5bc4ed23339d3a2d0750a77e14e8d107324ed12938c592071335bcc165ea62009145885bca6e2a6937ec815af86c670d2abb119488e2056689090623578b9ec28108654c93806ee0d664e2b7c53146fd981b65b177e8de61fd8f3a47987e6ae66221241a68e64534ca22351c8990641210851fe997b669f848a891337bfeb0faa42e88bc406741cd943685512ef7bfc65440e86340dd96b57408cec4d1648550129fe838e201a86164b081055926b6fae0b6e5f65a65eef5061d6d40681c648c9aad426927134bcb2e38ac7b63e2120a97b21007d553db0dc64be0b2ca1a2c6449c6f9873496b49973af9ca1514e3217fb0608aa3d82246f55dd6504a8c8ae0ad1a634d54bc1c1f0bdd008332817f25ddd700244d68c0b6a8f480cdf90ae1ef1a3a619961bf67c7208697151c2af54fad43471de38739cd6c4067a056587542782a422325a174db998c552d5c48095a0ad555d8b784d32c3645ac4d099165071d662ec365587d954e7128db6cedbc3172621d58c1b242d4a202841374c126c2e80a8830d570301717936b2c328ac7ec61379a7bf1b06be385162ae0c8139d25b010bbe166f1899299862acc316ba59a6313a6bc6a10f590248b2575e243f66be6d62b851bd685413535894e2ab09f2519290bc3f701d52e2518276621df409172f3695e628580432ba096327ce4efb170ead3701c899a7e84f00ac926e21564cf0a78eb662f5df31c2c57540423039b12f402ea20135a62d3c4d90fac5ad8096bf7ec667e919a006ba518a49187744122f783d12ce69a1bcdbbcc486b4e9d2f81c6bd09839a5902e575aba9ec4c81629e6b3e480d74f81aa245c546185542d8a2c1c39942a6e1c6a32f94a8d201eb85b6230e9dd16cd03827eedda829e8f35e6049e9725fce18066a77dae2456c62c82790629494b699a8d648a853eea8d322dd869005025
|
||||
3.addr=0xb5e768cb3117ea25175f51aa956b48691025c2a8
|
||||
3.pop=39b4602846b08ca6db8d14b399980769d05f8523772390259518a06255d76e4a4b35f117f8b3ae5b9b1b9eb97d8ed40b382e31120a355d56092ea5c928ae244f9295ca576763a51621867c62b6689b06896fca866dbd5af5d854e1f6f334d253f760ca7bdce42353ea6cf8528e86e582b0c57e10585366932664b1af9a155a0a18aab48c4cf1458e22adbc3a44d6343e76299d3178e8d0d574313d6be57746623331150b398450d38d89289cc473db21bffde60fe3b7535636ac1cc4ff51e7883df896cb2635e71bcd9b90a4c3704a20a4a57d5b3c8d9e91013c5559bda6feb15db2a6ed894d21680d79209f9cba2f6eb3f06baf1e49e958c191af84cbae23187876ea85e2f4ba713a278ac2e13a0b3e624c287e370e9b39cb7fdd9acc1e5ded9252566f03b172350e01698e5af6f8372dfd754eb41cc2c3dd8cba465636fb79870de5d657b6b37dc2dbb6ea3098151b304110a58d9a73dff5614faadefc33caf682768e71734e74610beda1fdc435bed2fa726bc78f08de9be93cc1c9d67410b1a5824f18f4ba2d39d0463299c2632e81280e1effc15575a0ac91defae5d08fdd625b7171cd213467b4b9725d96195cf78f3b4dd5d85106254bb86adc55016ff34fc40622cd38107b7e30e662f25351e28f31483109c8a0664d9fe97c72285be366b0cd6791e7674ecc69e0b185c91149a0d3295bead53e95ecb4bf5bd529057e23a0515c0aaec189852939d8bd6b4d0a8146d48b2fa76fbc6a3f0426cf2f50a87a1a9f1d099f59ef2f2c17f183e630a7cb87017fb65b1b4f6daca87865d72c49f29094c966d9198dbdc8679d416cf4eedecf9a885c6ff3168ac3dac512d8622e9553712e113c86caa16b4dfd61d01e6abd0177eac951838de45979e8c73a02d66a53ad6416c999c2f7dc38
|
||||
3.claim=4e6ce5501d4754a03f1288deed8cd22ac25451a564ca20e43b2776c9b4ae77374ad67cf6459b2a3e8e31bfa38f83cf5bfbcf3afa91f9db157ff65f2342a061e800
|
||||
4=6e9ada38d7da61bb7062c6812dba3954f433ad08157ce4e9d340c3bb80d6b9b1d1027cbfe1514b2a9e5266da4757f9536a3efccfe15255baa4f48fd442d9c2731d8c63a29f936c1a6908f96fdd393dcda5ad19b81b1ca5c4472cfca358bf1566eecd9e3082dac612c158cc3788681f5f0868ec68a06cb04621465a4fca948f7e118352813e5d2138366c97296dc15649c99394b1bdd0e7969f913c255d694a989d75b6499a7c19bb1ce46f313e6a2fb6f4faa7ba63e4814e3348f7ee68bef4b823486dd6baf6f5b847a48b78bc1003bb125d3b26aaa9694a026c75da351064ff868061a78543677db940eb33a4636baa3e756948d61845dc43c04595427a6e9568a216b50eeea2428d82887931632a5a1d33803b392ed142bbd5cea9f619ce563a3c7b35d2f0a7709ed1e20edf0754f3f60aec60b329c0f51b2ecea714d079d2d4ed5f58a737feabee9c26a0320157147a3295a0eb00399eec3bb82d0a33a9e18789496f4e4d6dd6f29f106eab227336b49f688f95b33398c5489f5c32033cab2176749445c208500778e3955bafb2521628740896a9525d85d61aa2220379f8bbe8a16c44b45652d9ae7b2bfd3664a2a64133edae4b4edc930c64e6d99f97d707fcca1242467c9d0c71c441e59073e0d879e3af0529fdaf99eecc7c5219ec66d2c61c8294bd90dd53a21ffc0b230c6f6a89142336478c1179d6ecd91881d85e1e6535c1692979f217883feafc45b9a539834f0b9d74554901a8b83835c983fc43fe41141281c5234f02d50ea5f7a774a5d4dd9b8aabe902d2d0659bd1773bb62a5b1750a75f24ae7ae492cf2a5469563ad5062b4592037401ac334d8f6b2beb46a8aee678c11e98503e0be846dc5992e43b2019085e2872baa217547855e2d5b9984073b020b5224b577352c1a4bb900d8f5fd974c2c027cd633ec0c08ccae82134453b720a67b78e5d01f617343d81fa0864d6b0b1be09d35f1d707b688d134c4b82af9eaeb8908f40b259a8334c04a5223074638a82046cfaeba392c21f58f0be565492958f6282baf64d98a0d6af810490705136d1d1fc16e43b4668c9cb4fbfbf58d943ce5de56fbc5e44a684990b7df050981e559dd9d34a3fc4962b1282a15e63ac0e85d8d5794cf15a94c9409be98e9652e59176689d153214f2c6d011aa41f5709e536e267a9c897a10dc61081e012c51a2467464023c1dd870091db16b54665070a4db581cca14bd3843c3d42e907ef1f7c053d0a535a4d4f92752
|
||||
4.addr=0xc3314fd768bb68b986e80c0a14175f6f72630d7a
|
||||
4.pop=3931edae48178015ea9ae47ac7914b8a18807ba47b01c97594f93a525872b1890de7dbf73aa6d65046899f7a2a051079a6dce8e8ee918d1e80742ab18c8659a03fb333109bb337daecdbe6e9bf2d9b18c550e955ef8fba133fb399b928eed422978de91d88212d8a8531e9be4e0a142d52a65a11a2344c4a6712d874736c10aa73507322487d14bb9340c9a87d2559172b169f3e1137b0f0914e29eb89246e86e7f956718f66baebb95b8a9ae505cf6dd2cdccab85606488739884b94a8ee7d7892fba94d73b5b3412e27d25cadea735059964b4410b46ea2f7a85a7340320fff120ceb132b77a11f46d99de2e0640a794b6af0de8f6d064dc1a8e81b6b8b6b21680d58cf9d3c8d01e120e4e131c769f348d5d6d88fcecc71f9400c261eb35420f41cf669286b4f32f9c34fee5b09ed1737a241f37299bb155cca1906d0812f3786b2190faa0f0d2780dbeaa07d1639e442eea5411293762cda58c4cf72da77fc5b9dacaae853a765c37cfc401d5abe5c8e23ac95b29adb6ca34e433a9848a0c228791c82fd366775d897aa2aedebb23e967fb7badc340ad78fecdd6830b018f3a32342d36525b49c49ef111cca9779d01549d2be4911e63c8d4391989495b0ec3c1cb536b6f6a19ee8cc90c85414161d63364e65529486906df20bdd1266a568259cde459e28a17456790281668ab89dffb4f8b6dd92eb6505719548a43758023fa7bb328ecf675ccdb2a7d9545ad428aa2bbc236d055d30c0e069b3ad05c15a9db4838fc56060feb54154f9d09b3641fc4f25b3060886d23cf33689e98eef168eaa619398e45e260e807b9b8407572cd170df1c25f0884471ff251ec318fa26ae7330e1dae034ac1b8d6d69a8d1163beaa078d475e25a816894cd0903ce4c338ff7072316c2e20d15fd5721bd9aca0
|
||||
4.claim=9924a7ae89127f8d98563bb87bce744f4e4175c9fe8216814702cd109b1058a01245d7330ad19d18ba96bb745b24350119279735a28db0c948f6b4c093af2df000
|
||||
5=a2b859c229911277f188666a63981fc25ea2b38df500cc8851ccee2f467d0fb1f8aaf84f9e757b7b5db61479c1a6a196677ff6d46779ef8d910a78604f04d8591c5de80ad1c32422ccbb3bc71914cd159001a2c78a9a00480fda69321a6ef54104bd0d1a1b8764d537b5909c107dde111786d5c6b943f52a06bebae81ed7168066aa0723ed5de103d0880994341828d3bbc78546b5e602cd842baeb162c8c099bf1112bff3f3ccaea4cec0ab5b4cc276a81351cc692d463cb6e1c4573036f1d07adad56f0210ee755c474614cd7ac618afa673197716ce24cb041225e4c72062873c8da49d13d11b70e05a71a35b384a90e95290735d9cf1ba9d0eb0abc5aabb728ad13d6cfa3ac2819411684629ff07db9306d6f5c52ac680ba31a2e1e41b1cf0f1b6d190ed3ad00470cbaeff956e7da446016360b515d2da9dad49f26a274957e45a6948843b0ea49c7995403667885a86f6f116e52eb7701615b75dc75801f5a5855c5e1b262746ed991aaeca6f3b9b59ab0406baa1e74a33617dfb6b54afb796c1d2299be9aa68b9bbd71c212f23909466471f8b04a5801408929474ce5304cd87801d01e1e8ff1d2b0842f727bfc3611138a3431e12867bcc000147238d659c7e241703444c26eaa6a161883a91e4e0afdaf39cc57d38615fccb1edf56a2adf1e401df1d5100467ac261772d695f29be1b3113a2a6f8e48f1b47380b97651a852b2c5da942a3ce92d17db15a669a4eaad2f116a25c4beaf1f9d72bfe1d665411c28041761d0960f5d3995e86fa15906195b2a1d163dae8e750b1a5c06b5fb32092b0ea47501da5e6d9a5941d82b5704299ff56e49299ec82c62fee9828ae56bdd2a90eadcdb94fcf2963d02349909dcf27e02224120d6b66747dbafec302bbc6b166e5eb3692b55a35495b15af063bb746d8c99c5c81719d42efb8d851537f875f6deab96b5860f26d6d0b036aa62d8f744692f256093f61f9e2e669f87feda1b60ded5d0574c521860665472ea9d44b1ba317d12e7b5480aa449c6d55f70d7a4341c22560a037b30df071f36573793efd2b098a6138cd74265e0493b71a228463c00a0260e0cbddc7905795261980edafbd3d30a0102ed9bd9e99630116341ef583f387e9ec5f9a6ba035e33d6b6c96faa9e27f6420a952496b540badfed26ceead61d590a5eba9f329ca9a5a0d562f4d0137f643128e6ee270e175c0ee0f5e68c03cc05338f2dc481723857fdc42d9134b908ae43367fb2601355a326
|
||||
5.addr=0xe13aa491abbc1252dd714e7ca0e55717a2143eaf
|
||||
5.pop=3947bc4a7a6698d2b7889b89b6ccc1bd89b468001e7f27a031a2fbc557afd233937be4df7a2cf67db99ab234796ae4658ab7b62e3c5dbe613313139b4d63db75d900f5fbdd48bf43211155eb17f5f7be91764ee35915c39d0f4c5bf4beccc8ce8aa59683716dae362fce8fd19dc8c48a59a09a888c990754ee96263a22b9497353e4c6a68dd16b8c839ddfca50bc90f38193ea475e8de7455188d166a9e77eb06d66096674c9abd95473d4ce20b2c409bb86d0f00624efcfcbc3f3737da5128486d3045e8a93a7e34a7ba8b4d1f091292c5469a98799e26ed1eaf3c8ca3da56ce05ff84a39d18d65a2cee3f931d1f65cdf2e9b93ac6171698a6466d42f6a96aaba9092d15de72776fd3f44e399b96f1f875dee2a05a24289412e8d0d9e3e9642d6025b7ba34e163a9fb6204499bf066f27a1df9a4c23573e4f6c3b1e36cb3329fcb184b1dccbb3f6879268b753d357863784bb35f09bcf9dd08a71af8d4a5a4c7573181b299a185b864f9b9377ba6e1db2bb6985d7fc8a9e8107972bb813530a66b5565a3328ccd61416208a10d39a8736ac9c5394b6e168b46ce9adb0f634d762d7d2232f4fbe54e079285c85c19d21bac4af9ada96d56fa4fa392c8e1dcfec51dd28a8c1fa176ff571b9596aa9aa65fb6436ca57f72bab21742362954e6224da557ff2929a078e6ccd3cb755c3cbb55670999ae457513ef85abf07ccf3f4a78de9d4ffce5a647f1e78288d98e43893b421de5165a7310ad77930eac3bb718842bd76473fcf2d683b555cf0bc747cdee76d6fcbcc96e59f2e7d502afa74dcc07047699e79f1cae5762ed5632956e1c175ed5ed47893302c8601859ec0d049a52b08cbb97d46373f1183b724cf76aebc469ba3a0a7c0d9756ac32b51544fece178b9a41b4d25bf49b2d03af0
|
||||
5.claim=681a9c3746716b58ed54085ff394131920e0fee87a8970f1395c9a0e61636915580b7828973de824cad866d3aa35e02ea820cf8d2595e6184be077da78090d7101
|
||||
6=ae79ca93fae11c333ca673090a4b548553614bc1ce7f6aa2773e17b972caf48a07efb416581422605f12400494db84accd432c148168db7794ecff419e83d4738d98f6b0de8f0d742902359aed104a1582cb8ef976965502c28bf4466efdd9ae0350021542a563c9ad2c22b7b0da1f5cb832c5a54d58284ed0f172091dee7be8f94bbae38a4ec0a7c1dca67ca50de962ca09ecae9a66d227841b2c66cb8600a1f01fe2d48be3c64999d1f8236762983a80c3a58fedaa0bd09e3912223b4415cde3fe63d70a62acb564cae57b3ab760780ff26c422d6675920eac389b91659aa3738a5055a76a9046f443ca1c101da8fcca37fe0be18fc9c6851706367cb65f035615d3150acbb738c66eb6eacd7b9a1b03b06e4f046f8615754d85e69d262d8674e8e82052bdbf753591474488488c714a066592718dbfe08d0b91bf387d2b9ee6a86bd0bdf96082fa523e5b6851c27723b99af0aa0722b185d52440c9c82a2a61d6729ec27999f9019f071e9852e813c0ab9318e2cc791a6e7203c27ad48a68ed1385319985aace0112e17999c80662b12a135b5e1a2c9067d5e06d0b33f5a691b65e2181b8b7f389a364543a058268a97c20928b490ceffe1520fa52d143a495941996b527712beecb17786f982425a8ea6cea000f191226855eca65f069782bd777baf11ac781a5b77492e2b69c039903c991259b92a93d18fe6ac74e064370f3dbbbc5ad82b478648ccff8ab45d133b1853a1d21d2e7d525027b2d9740bc82fa16201fb16318da37ec6494c9ddd1af864ef8b50b266f1227134a99c40d8571879b8a660964f6217ca41c6c0435056e5aafb494f4763984a55b196ba4e6691c57a66ec82b886e3e9da601acd9a2ac3584975255ae13c2781abb2a089e423c36cea35126fca8728a82a9bb8dfbf1ed0795a46a83c22945b08f6c7048e3d5f3bc7874164ca39b05ea81d9f75e778cea8b01b1c19a8a5e89991419cea779aa49ae6d562d38be70784def475ca78a3ee40e86de917557d716b008a0819410625ba6d3603b53ce821d1cbc0009dc4d518e025c246e5b6904196e22667a9df22192d22195ccb2694e0cba7fd011553081520d24f53344d5da90299c150b968f7412d51a638bb853d52065e49ae471b5cd979b11953eed2ea89c2d1366a48a664502a96dbad1d8e527d2064d5885cd510898880110cfc7ec002de2029e02516682b953a88fa72b00c55632415e9b52eae8640d866d4074880443ac6f791270a208d2
|
||||
6.addr=0xf73bbbd26a82dbc769066550d8d4585eab2fc00d
|
||||
6.pop=3922660f4804b28323dce5ab01be86754742cacb2d2a29ae578cad568ce0c36a069af8c3b1525d82fe6fe92e26ff2924515b9c4ed33e50b43dfdaba15e3c0e9384336cdffb39ab440c818c3afae4c4e92968e76efa5473ad33162589ad02f710f7500e109240d83eb24c2ed33f6f9685ed7a94fdc9a595c3166b17da66b45193d4cd0bae4aa9cef7ba0a8a54da786462cd85a0759ca4220ab034dad855838b53c228edce15398ba1acf1586ade9a041387d0553b4d7eb36b46e1229f9cb2a1d05a3478e7775ecf24cc1355fd813f9a3cc666517bb7a8aafa119ec67406e2950b8fe99b56af2eb729957cce6a6677fea49930bdc4f715041d17eae29cd7062867f20d0f74999489bac62fa215cffe0a8a4c93d2210c79cdd8a6497aa4d44becd86178eaa612e5c7bda995eeb938adadd1d1e54b9820d8f76748b7cd92c1f4dbf163f2bd968f2f3a2c91491424221bf7f5f796da2ce48919b7c525202418a56b5befe5bd42cb13cdd7edb856b70cb397c653931875deb6c5c7e0ff08811cd8763edd9a8f4c91340ae6e5a74b1b2cdd95dc7f24e44e2d6551ae3adbdec15b6b1bf54e1f88b9eebebc736d6182d6ad3a0c77d38e86397449dfb266cfaa33caa7c20a9a417ebdc7cba31d6f1986c4985ce1d96c4fc1aa24957543f0c93b64b0731b2efb25ca3a593a764c2006c0feebd599cdc72299e390db05ccc55cef9c7debd0baf5d3fee5ea3f1abda2958b6d0f90ea95892a2990aaa6f7da0666a53598214600829c09ceccf9378e6fabd346268ae702853661dbe3719057fb514587ecd063911fda42fada8f64ba9a6e1c27f954e2b0d9691b7146a16c78927f0202ebfc750815038111a8189dc26be8cf419229457e789132589a6c65dffccd36300f345ddfbacbe37d49dd357bd8590badb480
|
||||
6.claim=6a5f446db8033ce9d9d20a26405ed248c85593ce317a49d7a7cd6e3e94639ad678523869098e091dd6900eff856f4d29e1b1e29f456e2d290503ff3853d8c5a700
|
||||
7=b3e68f6854452ead92a798ea4db7116c6fb4f249d222909490f1837648185d207752134d8830bb9949597b70e7fa8297be87eafd8b7d116d1fece81701e0924d6a745bb64e884a54e1e949238e497868d2bd2960918a07a3cb1100364043d3218d2e76ceae07859de4182c85f7080a6baec87cd2235e908b2ca1a5c2e903bb387c067f2c514aec16c42f1ecf45b2eba63dad3b08a2da6bb6ae485156735261194cb8426fb8d10686527c4567a64195891acd62ba2c368152d2d36c5c24bbfea36412a74830c00135dc21941cea0010dc6d5c14ea61d1181f2db9ece691f151f1976e9a4a375d75964dc3363699f030ca842572c8e322854209f796268bd831e2975bb26f0c43332c2e7c5f5a959a50e7697e218f968e0039664e585a8fd5204261d6d29c287f13dc874122a3c3649169b0e6a2aa3dc93d70dfeefba3aa2970a788112f1c8085802174759594f33fadea69a413e5dee35f8dd13841f29234393a59052787cd8bf4b5f51b8ec26185ef65b788306f317121386a23456a1a64b1abc415d4b4f6281a8074526a19e8dd51b8317342e1de9f4c86a4c7fc90f64d628a909f5b0a2c146fd0b6861165487a75f606536a7abb9aec8571984a90b9b254447df27945cfec9f01ad1e82e54ab3617d22d38d912a4fc93c8bd4154648129bd17818892004605a7a6980b2a54842c5c6be2ca0071527a5b279156983ceea138ed86d93808b732fb492a036088c8864b7e1daa6b589982aca418d73358adb00aad06da91845f80723b4b3903f79f18fca2e3a49e31a21253bb6fae64f08a3350951a454d0fc84cece51f9ca3504d8665933088ca47c2345a744410ada4b41c29639299127c5a38ec701aeccb82a1caa59c0abf4be05bf4d10b119cadb9382f5e785900b70578a3de5659d2c1dee6a5338df1d0b90c293084620b9bacd2602839f75e83aa4258e03be9e541437d0481af11535d4e049b2568190f6cfaf2ed6b2e4d48e8979168299bf96fb192112e99a4589855ad9470a5a8f451e8a61f3eb4a51885865080c8dbc98e71bae8f0c4ab1e15247c79d207a5ad11796c85e6e62733a483e0f022cb05097243e1e61143805cd3ede3cb2640aea3300829821276803d1ab1898401e0196e070b89cfcbbc194e86f49108a45e01bb4a3dc4bbc73a05b5d1a674a9d28b16958812d4ca7bcd475b5e99957e9ee4236506d33f5179e6f804b59db5bb81f0a94500a668302599121fb67a62a4dc56048029c907d226bfcdbf3
|
||||
7.addr=0xdf09b32c761620c5be77da398b97a64f03c3980c
|
||||
7.pop=398f3d3900e8f3360dc56b9c672ff214b90694d4517b3eada26d2dee11314490adbe600759bbe186542c8fc27b6b56e36b28376d98e0b96bdbe0bf28f7937068fedd82690e5e384b9705f2fc47b5ce632a92aa48222e843b798809c2cae6a2854a0913476fa68281482d3c5c928742afe84a2ff29338eeee528814ed7d6f4d1b50d8de39fb0ef6f3252047287dc4fbe0b236d7472e11128479eb2c148e331ca72af9fd3192e3a13a36565ab2f2724ade7524280928e6b0fb6bb492d4b1eea78fcce25abf5519f76e22e56ed0a186c331113d63bf1d3a8f220246f2fcd60094ddbf9a2c444ab1a789a8ba9f1f4f567511860d6d4ed8737683d20835de947f9b96d6827824abdec344e00d7418e7b2bdd58b711ed2e226d23d926cc6626f579ce214f950223b34f628689aedd45ae0cb1fc914b50bbc2451246dd8be412e9a1d20b6d4d3b6e989d2d00475fadf15f496675cc021b8ecefd71a4d8ec451a1cf772bb31f4320569c565134bbb48ff7ddd15311be25e30733fd244d666abcc6ee4ce2bf30494a268f17b69d5c1a16b67f16dfd8f0b6661c6048caf394a7860a576ee790ee66dfc138833ab9199f12268b509776cfb587cd9de8b4fa66a86ab197bc9366cab16e6f29b57ba02fd7223aa2cc579b7515d3bdb33cff7ce5d4a98c121db7361909391d2dc656247ba31071bd62088cab454fe65d715db188775e66bdfc3bf339ea3a76598521fec00f2a0eef651a2d11044ef8ce66b948e970fa293d2b8d02c11cf58f0aebfd3c7ed22eb146b1ddfeab7110ba3338ec5782e1bc8cc70a10cc1e1f4a15eca6334cf6b35fa26d32da9bdcd471b50d461c80238c91dfc99f8a1bcaa16c9c643f253c943ebf497e63cf6acf5b6f7b967139d3c8345f9a97d5ef8365b44739e7493106d8801091a7f5c0
|
||||
7.claim=feeab3b9960c07f94214c6e1b7e93752d777c5b70b54a4f397b4fcd08b9bb3145a8adbe7191e449054dacbc624e81cfd55327bd8ff1a63589465c2c3a42ec1ed00
|
||||
8=820cdb49fa91e522cafe7550a586b94132cae78b762b166f6bd819a1a25409c534a0846a6173d047cfbc67f518518f1fef1c0ed22a006ec77175f78b1ba5240ec600a721e7c8444a770bba44fe186a5edb2a8078bd55b823ab4fd0b6991748d142dc710691d574d4f64768167776ed9559de1dc6a466c5103585602f0bb21f2a85b1a76fe9a27ef5d5e6eef099d255c841ee8a12481d9bac050955e049398e228a8bf63013ee4a504a7c50573e65193872fa271f58cb848205112b29592d9222c6242e581ca10bb10ad04852f276182a1db822d63e66926b9b2229b8551a06520f9c89828d053864dc6717d107b9660ac6f5ccdc5696e013774f28a050ba02b787c4801139f33445231b87d44bb0ae5a8b5b16dd08ff174221f51e00bc4ca26712d6d2bbc03aa918cb95f999b23a4d71c1846ad5ab887f71ac294f42359d33b9aa6421d604b1e81eccaaa9ea7787469a68541103cf0a3b8234efc146cab85f4900f9188eddb6e00d68eb04debe0afe14572b1f924de61b610daebc7e7c20b18c97787448e199a79d5316e9b8c2e695b3b030335dcc60927d8d62d6526a4fba58763992605508ae16e3efd27a861d1796c0a6b746d4479c4fbea6f51597c9aa2062e2b8538dd1e85cd5350095472852e15d09b68ba1572c466555616134c8caa3330974244d3d31d00d256b654f92bb5bad3d75f668e69567263c1ae2e5ce6a2a218468b1c02c89f971e474efb8b59283578443f79e425a06e3ed7c344176db59e899a180eef9e0a5440ff4570b385ac700cd7fa290940b9201c56aad19e584ee08a19b4e38bdca2c38ebee649c404495df9ea22cae49b48767eca88e9e784319598688df4223ef1890450c597b2519044230a209488a56856cd1890045967e12006acdb128e4121614a1fd5996df927b6d3d60a84bc362cf4044b5243569639c19821adad4c4e09839a1789b82e9051cec285e611d0ea0170703e5f317496dd0ba0a330ef00bc7e70911463c534be4c1e8296ad5a05256a72712b9cb31d5adb0b4e8c5f89255211d1d41c121ce7d80f1132ec33b91494cd7c22378b3bce21b689d24a9bd933b68aaa917a8df5bf9513014897fd66d9451b62e30fa7c09d5116a11c5f2a9bd21ba718362a40484fe6b93f76c1008316d552bda724634edf50b184eba5a0c1413c17e5b82b16762629746fa5302b352c525e97bc189593e93adcd4430684d2c0237117611f615edfe21c8a4b531354925e7638570bacbc3868ae7
|
||||
8.addr=0x1bd5514286f5602a6762b0075266379d29af1c9d
|
||||
8.pop=399c665dfc4c5a84e8660b229cfe2a8161e7affdd52ccca8ebbc9d191ac3f11e6540419176f45b2f5e02fe61ec33d485c555e399e197340758845032713cdae695629f8ed40b8372b89c1ed629d0e136b39670412b7b42699a6fe6455312edb7b18daa07fcc9d20d9a5fd2671f25bd5ab0912472c1c3819059ed37b8d7f85b88a0edc2ae55850893929bd5533840741abe7d31358a775242a17272fb71f5e3db158f66ba58d650f0c3fbff7a4726455624c4e58c364e2a3aaed4b94b0d2f3a8a757f4daf7faa6e79b9c9414e5e4c818c71cbf6d7cd1cb92cedd94693c08c312bd3e2a29b49fd8fd16448572ac61706f1cb936a1f29d87d1bd1b1d92dffa5152f428ca77f5ac672e65c210fd52e08e2ae48327f6591037c20d02c9a39855a273e36667bd0d3be9306293888e625343e9c4b23615d389c4160569d652f41b666e1ca690742d05aa405b5bc6f628f13c18b67219fec8cdf90c3d27547719ddab4d4cde7ad8ac09a895c0693689bc5529c0c41b41f8f33fdcef4e765e24754a425914b7ea2684eca04ce678d46fccc768109c107baabd7cea3f88843a14fb20cb6ae0a13dcf25bd37c210cd5aa1e63cc5cd582326ac3a53fa2e3c693529bbe4ba470ffe5124222b8c33aa60f74f85ca177f207e975dacc770b4c9911b87c15caca406c91af7faf41103a2d31aaf2d5644dc77aadded8689aaf723499d3abf76de284c3d0b2ccbe78fd4dcd23779988facc290b452496b45908aa16a5498b6c5858a27da36d25ca977255d9dac15548ce0dc21da2238c15245e7ac973653241f290def8abea530b855644d23d1f6548a4ee76cb975988235d97d518de6b9b266d8c6451ba75c7e74811f7c9652e0e56a48fa44cf2f6eb159ad4b21d8ad91078d251bbfaf7bf2864d5ad25bd9c14e1d1e171d184
|
||||
8.claim=022736cb764b88fee04dc13d648b88e9763c6f68197ff114d8a6127b279248f01ab20c20e680d35540ccc30d07aa33328c800187d96a88f8389113fa1807e70600
|
||||
289
run-node.sh
Normal file
289
run-node.sh
Normal file
@ -0,0 +1,289 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# run-node.sh - one command to build the Aere Network (chain 2800) fork and follow the chain
|
||||
# from block 0: verify -> patch -> build -> sync -> validate the post-quantum anchor.
|
||||
#
|
||||
# This script is deterministic and idempotent. It checks its preconditions loudly, verifies the
|
||||
# genesis and the registries by sha256 and refuses to run on a mismatch, fetches upstream Besu at
|
||||
# the exact named commit, applies the Aere patches in order, builds the node, and starts it syncing
|
||||
# chain 2800 from genesis with the registry and anchor configuration a following node needs.
|
||||
#
|
||||
# It holds no key and signs nothing. It configures a node that VALIDATES the chain, including the
|
||||
# post-quantum certificate anchor, but does not PRODUCE seals; producing seals needs a validator
|
||||
# Falcon key, which is not in this repository and is not required to follow the chain.
|
||||
#
|
||||
# Re-running it does not rebuild what is already built or re-apply patches already applied.
|
||||
#
|
||||
# Usage:
|
||||
# ./run-node.sh --bootnode <enode://...@host:port> [options]
|
||||
#
|
||||
# Options:
|
||||
# --bootnode <enode> Peer to dial for discovery. Required to actually sync (see "Bootnode" below).
|
||||
# --data-path <dir> Node data directory. Default: ./aere-data next to this script.
|
||||
# --build-dir <dir> Where upstream Besu is cloned and built. Default: ./.besu-build next to this script.
|
||||
# --p2p-port <n> P2P (TCP+UDP) port. Default: 30303.
|
||||
# --rpc-port <n> JSON-RPC HTTP port. Default: 8545.
|
||||
# --sync-min-peers <n> Minimum peers before full sync starts. Default: Besu's default (5). Lower it
|
||||
# (e.g. 1) on a young network where few public peers are reachable.
|
||||
# --rebuild Force a rebuild even if a built node is already present.
|
||||
# --no-start Do everything up to and including the build, then stop. Does not start the node.
|
||||
# -h | --help Print this help and exit.
|
||||
#
|
||||
# Bootnode: chain 2800 does not publish a public bootnode in this repository yet (publishing a node's
|
||||
# p2p address is an infrastructure decision, and validator addresses are deliberately not printed).
|
||||
# Until a dedicated public bootnode exists, request a current enode by mail (office@aere.network,
|
||||
# subject "bootnode") and pass it with --bootnode. Everything except peer discovery works without one.
|
||||
#
|
||||
set -euo pipefail
|
||||
|
||||
# --- constants ---------------------------------------------------------------------------------
|
||||
BESU_UPSTREAM_URL="https://github.com/hyperledger/besu.git"
|
||||
BASE_COMMIT="d2032017bb3b8cb215a97303980a1e4a643f7180" # Besu develop line after 26.4.0; see anchor/BASE.txt
|
||||
GENESIS_SHA256="361709dccec4e9fc85be5aec33b30b58a55dc53424087d84c1ad11bd1d944c24"
|
||||
NETWORK_ID=2800
|
||||
# Patches applied in this order. 0002 (testnet precompiles) is deliberately NOT applied on mainnet.
|
||||
PATCHES=(
|
||||
"0001-aere-pqc-precompiles-mainnet.patch"
|
||||
"0003-aere-pq-anchor.patch"
|
||||
"0004-aere-basefee-floor.patch"
|
||||
"0005-aere-eip2935-futureeips.patch"
|
||||
)
|
||||
|
||||
# --- locate self -------------------------------------------------------------------------------
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
# --- defaults ----------------------------------------------------------------------------------
|
||||
BOOTNODE=""
|
||||
DATA_PATH="$SCRIPT_DIR/aere-data"
|
||||
BUILD_DIR="$SCRIPT_DIR/.besu-build"
|
||||
P2P_PORT=30303
|
||||
RPC_PORT=8545
|
||||
REBUILD=0
|
||||
NO_START=0
|
||||
SYNC_MIN_PEERS="" # empty = Besu default (5); lower it on a young network with few reachable peers
|
||||
|
||||
# --- helpers -----------------------------------------------------------------------------------
|
||||
say() { printf '\n\033[1;36m==> %s\033[0m\n' "$*"; }
|
||||
ok() { printf ' \033[1;32mOK\033[0m %s\n' "$*"; }
|
||||
die() { printf '\n\033[1;31mFATAL: %s\033[0m\n' "$*" >&2; exit 1; }
|
||||
note() { printf ' %s\n' "$*"; }
|
||||
|
||||
usage() { awk 'NR>=2 && /^#/{sub(/^# ?/,"");print;next} NR>=2{exit}' "${BASH_SOURCE[0]}"; exit 0; }
|
||||
|
||||
sha256_of() { # portable: prefer sha256sum, fall back to shasum
|
||||
if command -v sha256sum >/dev/null 2>&1; then sha256sum "$1" | cut -d' ' -f1
|
||||
elif command -v shasum >/dev/null 2>&1; then shasum -a 256 "$1" | cut -d' ' -f1
|
||||
else die "no sha256sum or shasum on PATH; cannot verify file integrity"; fi
|
||||
}
|
||||
|
||||
# --- parse args --------------------------------------------------------------------------------
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
--bootnode) BOOTNODE="${2:-}"; shift 2 ;;
|
||||
--data-path) DATA_PATH="${2:-}"; shift 2 ;;
|
||||
--build-dir) BUILD_DIR="${2:-}"; shift 2 ;;
|
||||
--p2p-port) P2P_PORT="${2:-}"; shift 2 ;;
|
||||
--rpc-port) RPC_PORT="${2:-}"; shift 2 ;;
|
||||
--sync-min-peers) SYNC_MIN_PEERS="${2:-}"; shift 2 ;;
|
||||
--rebuild) REBUILD=1; shift ;;
|
||||
--no-start) NO_START=1; shift ;;
|
||||
-h|--help) usage ;;
|
||||
*) die "unknown argument: $1 (try --help)" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
say "Aere Network chain 2800 node setup"
|
||||
note "bundle: $SCRIPT_DIR"
|
||||
note "build dir: $BUILD_DIR"
|
||||
note "data path: $DATA_PATH"
|
||||
|
||||
# --- 1. preconditions --------------------------------------------------------------------------
|
||||
say "1/6 Checking preconditions"
|
||||
|
||||
command -v git >/dev/null 2>&1 || die "git not found on PATH"
|
||||
ok "git: $(git --version | awk '{print $3}')"
|
||||
|
||||
command -v java >/dev/null 2>&1 || die "java not found on PATH; JDK 21 is required"
|
||||
JAVA_VER_LINE="$(java -version 2>&1 | head -1)"
|
||||
JAVA_MAJOR="$(printf '%s' "$JAVA_VER_LINE" | sed -E 's/.*version "([0-9]+).*/\1/')"
|
||||
[ "$JAVA_MAJOR" = "21" ] || die "JDK 21 is required, found: $JAVA_VER_LINE"
|
||||
ok "java: $JAVA_VER_LINE"
|
||||
|
||||
# Disk: a full sync from genesis to the live tip stores tens of GB (headers are ~95% of it),
|
||||
# plus a few GB for the build. Warn (do not hard-fail) below ~40 GB free on the build filesystem.
|
||||
FREE_KB="$(df -Pk "$SCRIPT_DIR" | awk 'NR==2{print $4}')"
|
||||
FREE_GB=$(( FREE_KB / 1024 / 1024 ))
|
||||
if [ "$FREE_GB" -lt 40 ]; then
|
||||
note "WARNING: only ${FREE_GB} GB free here. A full from-genesis sync needs tens of GB; the run may fill the disk."
|
||||
else
|
||||
ok "disk: ${FREE_GB} GB free"
|
||||
fi
|
||||
|
||||
# --- 2. verify genesis -------------------------------------------------------------------------
|
||||
say "2/6 Verifying genesis.json"
|
||||
[ -f "$SCRIPT_DIR/genesis.json" ] || die "genesis.json missing from bundle"
|
||||
GOT="$(sha256_of "$SCRIPT_DIR/genesis.json")"
|
||||
[ "$GOT" = "$GENESIS_SHA256" ] || die "genesis.json sha256 mismatch
|
||||
expected $GENESIS_SHA256
|
||||
got $GOT
|
||||
This is not the chain-2800 genesis (a CRLF checkout will also fail here). Refusing to run."
|
||||
ok "genesis.json sha256 $GOT"
|
||||
|
||||
# --- 3. verify registries ----------------------------------------------------------------------
|
||||
say "3/6 Verifying Falcon validator registries"
|
||||
REG_DIR="$SCRIPT_DIR/registries"
|
||||
[ -d "$REG_DIR" ] || die "registries/ directory missing. A node cannot validate the anchor past block 13,014,000 without it."
|
||||
for f in manifest-13014000.json manifest-13600000.json registru-2800-v2-13600000.properties; do
|
||||
[ -f "$REG_DIR/$f" ] || die "registries/$f missing"
|
||||
done
|
||||
if [ -f "$REG_DIR/SHA256SUMS" ]; then
|
||||
( cd "$REG_DIR" && \
|
||||
if command -v sha256sum >/dev/null 2>&1; then sha256sum -c SHA256SUMS >/dev/null
|
||||
else shasum -a 256 -c SHA256SUMS >/dev/null; fi ) \
|
||||
|| die "registries failed their SHA256SUMS check. Refusing to run with tampered registries."
|
||||
ok "registries verified against SHA256SUMS (7 keys @ 13,014,000; 9 keys @ 13,600,000)"
|
||||
else
|
||||
note "WARNING: registries/SHA256SUMS not found; skipping registry integrity check"
|
||||
fi
|
||||
|
||||
# --- 4. fetch upstream Besu at the named base + apply patches -----------------------------------
|
||||
say "4/6 Fetching upstream Besu at $BASE_COMMIT and applying Aere patches"
|
||||
# sanity: the short base in anchor/BASE.txt must be a prefix of BASE_COMMIT
|
||||
if [ -f "$SCRIPT_DIR/anchor/BASE.txt" ]; then
|
||||
SHORT="$(grep -oE 'd[0-9a-f]{6,}' "$SCRIPT_DIR/anchor/BASE.txt" | head -1 || true)"
|
||||
case "$BASE_COMMIT" in "$SHORT"*) : ;; *) [ -z "$SHORT" ] || die "BASE_COMMIT does not match anchor/BASE.txt ($SHORT)";; esac
|
||||
fi
|
||||
|
||||
if [ ! -d "$BUILD_DIR/.git" ]; then
|
||||
note "cloning upstream Besu (blob:none partial clone; this fetches ~the working tree, not full history)"
|
||||
git clone --filter=blob:none "$BESU_UPSTREAM_URL" "$BUILD_DIR"
|
||||
git -C "$BUILD_DIR" checkout "$BASE_COMMIT"
|
||||
else
|
||||
ok "upstream Besu clone already present"
|
||||
fi
|
||||
|
||||
HEAD_NOW="$(git -C "$BUILD_DIR" rev-parse HEAD)"
|
||||
[ "$HEAD_NOW" = "$BASE_COMMIT" ] || die "Besu build dir is not at the named base commit
|
||||
expected $BASE_COMMIT
|
||||
got $HEAD_NOW
|
||||
Delete $BUILD_DIR and re-run to get a pristine base."
|
||||
ok "at base commit $BASE_COMMIT"
|
||||
|
||||
apply_patch() {
|
||||
local patch="$SCRIPT_DIR/patches/$1"
|
||||
[ -f "$patch" ] || die "patch not found: $patch"
|
||||
# already applied? (reverse-apply check succeeds only if the change is present)
|
||||
if git -C "$BUILD_DIR" apply --reverse --check "$patch" >/dev/null 2>&1; then
|
||||
ok "already applied: $1"
|
||||
return 0
|
||||
fi
|
||||
# will it apply cleanly? fail loudly if the base moved under it.
|
||||
git -C "$BUILD_DIR" apply --check "$patch" \
|
||||
|| die "patch does not apply cleanly on this base: $1
|
||||
This means the Besu tree is not the pristine named base. Delete $BUILD_DIR and re-run."
|
||||
git -C "$BUILD_DIR" apply "$patch"
|
||||
ok "applied: $1"
|
||||
}
|
||||
for p in "${PATCHES[@]}"; do apply_patch "$p"; done
|
||||
|
||||
# --- 5. build ----------------------------------------------------------------------------------
|
||||
say "5/6 Building the node (gradlew installDist)"
|
||||
BESU_BIN="$BUILD_DIR/build/install/besu/bin/besu"
|
||||
if [ -x "$BESU_BIN" ] && [ "$REBUILD" -eq 0 ]; then
|
||||
ok "built node already present: $BESU_BIN (use --rebuild to force)"
|
||||
else
|
||||
note "this compiles Besu from source and can take many minutes on the first run"
|
||||
( cd "$BUILD_DIR" && ./gradlew --no-daemon installDist -x spotlessJavaCheck -x test )
|
||||
[ -x "$BESU_BIN" ] || die "build finished but $BESU_BIN is missing"
|
||||
ok "built: $BESU_BIN"
|
||||
fi
|
||||
|
||||
if [ "$NO_START" -eq 1 ]; then
|
||||
say "Stopping before start (--no-start). The node is built at:"
|
||||
note "$BESU_BIN"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# --- 6. start ----------------------------------------------------------------------------------
|
||||
say "6/6 Starting the node"
|
||||
if [ -z "$BOOTNODE" ]; then
|
||||
die "no --bootnode given. A node with no peers cannot sync.
|
||||
Chain 2800 does not publish a public bootnode in this repository yet. Request a current enode by
|
||||
mail (office@aere.network, subject \"bootnode\") and re-run with:
|
||||
./run-node.sh --bootnode <enode://...@host:port>"
|
||||
fi
|
||||
|
||||
mkdir -p "$DATA_PATH"
|
||||
|
||||
# BESU_OPTS: the follower subset of chain 2800's post-quantum configuration.
|
||||
#
|
||||
# WHY THESE AND NOT THE VALIDATOR SET. A validator additionally sets, and a follower deliberately
|
||||
# OMITS: aere.falcon.key (the signing key, not in this repo), aere.falcon.attachBlock /
|
||||
# attachInterval / minAttachFutureMargin / validatorCount (these drive seal PRODUCTION only), and
|
||||
# aere.falcon.forkBlock (a per-block Falcon rule that the shipped code retires at the anchor block,
|
||||
# so it is inert; leaving it unset keeps the non-blocking baseline). What is below is exactly what
|
||||
# the IMPORT (validation) path reads, verified against anchor/ source:
|
||||
# - registries: aere.falcon.manifest is the head registry; it loads only WITH
|
||||
# aere.falcon.anchor.address (the manifest source is pending until that on-chain anchor is
|
||||
# observed), so anchor.address / anchor.block are import-relevant here, not attach knobs.
|
||||
# aere.falcon.registry.history carries every earlier registry the chain was signed against.
|
||||
# - anchor validation: aere.pq.anchorBlock / anchorInterval / anchorMinSeals / anchor.maxSeals / chainId.
|
||||
# - the 1 Gwei base-fee floor active from block 10,141,734: aere.basefee.floor.forkBlock / value.
|
||||
# A node syncing from block 0 starts into the GENESIS validator set, which is small (N=3). The
|
||||
# startup threshold guard (PqAnchorThresholdGuard) refuses to arm a seal threshold at or above that
|
||||
# set's QBFT quorum, because a proposer at that set size could never gather it; the schedule reaches
|
||||
# K=3 (block 13,034,000) and K=6 (block 14,961,456), both unreachable at N=3, so a from-genesis node
|
||||
# refuses to start (AERE-PQC-THRESHOLD-01) without the line below. The emergency ceiling lowers the
|
||||
# EFFECTIVE threshold to what the genesis set supports (quorum(3) - 1 = 1) WITHOUT editing the
|
||||
# published schedule, exactly as that guard's own message instructs (--Xaere-pq-anchor-min-seals-max).
|
||||
# This does not weaken the post-quantum binding a follower checks: every anchor must still carry a
|
||||
# valid validator Falcon seal that verifies against the registry, and its digest must still bind the
|
||||
# certificate under the block hash; only the seal-COUNT floor (a proposer-liveness property relative
|
||||
# to the current set, not a history-verification property) is relaxed to one. Real anchor blocks
|
||||
# carry three to nine seals, so all import cleanly. A validator, which starts into the full set and
|
||||
# proposes, does not set this.
|
||||
ANCHOR_MIN_SEALS_CEILING="${AERE_ANCHOR_MIN_SEALS_CEILING:-1}"
|
||||
REG="$REG_DIR"
|
||||
export BESU_OPTS="\
|
||||
-Daere.basefee.floor.forkBlock=10141734 \
|
||||
-Daere.basefee.floor.value=1000000000 \
|
||||
-Daere.pq.chainId=2800 \
|
||||
-Daere.pq.anchorBlock=13014000 \
|
||||
-Daere.pq.anchorInterval=32 \
|
||||
-Daere.pq.anchor.maxSeals=9 \
|
||||
-Daere.pq.anchorMinSeals=13014000:0,13034000:3,14961456:6 \
|
||||
-Daere.pq.anchor.minSealsCeiling=$ANCHOR_MIN_SEALS_CEILING \
|
||||
-Daere.falcon.anchor.address=0x5214F0e53899Dad805ef3AdF0624F5e49d2a5EB5 \
|
||||
-Daere.falcon.anchor.block=13889290 \
|
||||
-Daere.falcon.manifest=$REG/manifest-13600000.json \
|
||||
-Daere.falcon.registry.history=$REG/manifest-13014000.json,$REG/registru-2800-v2-13600000.properties"
|
||||
|
||||
note "BESU_OPTS (follower subset):"
|
||||
printf '%s\n' "$BESU_OPTS" | tr ' ' '\n' | sed 's/^/ /'
|
||||
note ""
|
||||
note "bootnode: $BOOTNODE"
|
||||
note "data path: $DATA_PATH"
|
||||
note "rpc: http://127.0.0.1:$RPC_PORT (eth_blockNumber to watch height)"
|
||||
note ""
|
||||
note "Starting FULL sync from block 0. This verifies history rather than trusting a peer for state."
|
||||
note "Crossing block 13,014,000 (first anchor) and 13,034,000 (first enforced 3-seal threshold)"
|
||||
note "without anchor rejections is the proof that the registries and patches are correct."
|
||||
|
||||
SYNC_MIN_PEERS_ARG=()
|
||||
if [ -n "$SYNC_MIN_PEERS" ]; then
|
||||
SYNC_MIN_PEERS_ARG=(--sync-min-peers="$SYNC_MIN_PEERS")
|
||||
note "sync-min-peers: $SYNC_MIN_PEERS (Besu default is 5; lower this only on a young network with few reachable peers)"
|
||||
fi
|
||||
|
||||
exec "$BESU_BIN" \
|
||||
--genesis-file="$SCRIPT_DIR/genesis.json" \
|
||||
--data-path="$DATA_PATH" \
|
||||
--network-id="$NETWORK_ID" \
|
||||
--sync-mode=FULL \
|
||||
--data-storage-format=BONSAI \
|
||||
--bootnodes="$BOOTNODE" \
|
||||
--p2p-port="$P2P_PORT" \
|
||||
"${SYNC_MIN_PEERS_ARG[@]}" \
|
||||
--rpc-http-enabled --rpc-http-port="$RPC_PORT" \
|
||||
--rpc-http-api=ETH,NET,WEB3,QBFT \
|
||||
--min-gas-price=0
|
||||
Loading…
Reference in New Issue
Block a user