From 22f1ad3a078d90f32188216547af1414fbc463ce Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Wed, 15 Jul 2020 11:22:21 +1000 Subject: [PATCH 01/86] Bump cardano-node to latest master --- cardano-1.15.x.yaml => cardano-1.16.x.yaml | 14 +-- nix/.stack.nix/Win32-network.nix | 4 +- nix/.stack.nix/byron-spec-chain.nix | 6 +- nix/.stack.nix/byron-spec-ledger.nix | 7 +- nix/.stack.nix/cardano-api.nix | 7 +- nix/.stack.nix/cardano-binary-test.nix | 4 +- nix/.stack.nix/cardano-binary.nix | 4 +- nix/.stack.nix/cardano-cli.nix | 19 +++- nix/.stack.nix/cardano-config.nix | 5 +- nix/.stack.nix/cardano-crypto-class.nix | 4 +- nix/.stack.nix/cardano-crypto-praos.nix | 4 +- nix/.stack.nix/cardano-crypto-test.nix | 4 +- nix/.stack.nix/cardano-crypto-wrapper.nix | 4 +- nix/.stack.nix/cardano-ledger-test.nix | 5 +- nix/.stack.nix/cardano-ledger.nix | 5 +- nix/.stack.nix/cardano-node.nix | 10 +- nix/.stack.nix/cardano-shell.nix | 82 ---------------- nix/.stack.nix/cardano-slotting.nix | 4 +- nix/.stack.nix/cardano-wallet-shelley.nix | 2 + nix/.stack.nix/default.nix | 2 +- nix/.stack.nix/io-sim-classes.nix | 4 +- nix/.stack.nix/io-sim.nix | 4 +- nix/.stack.nix/network-mux.nix | 4 +- nix/.stack.nix/ntp-client.nix | 4 +- nix/.stack.nix/ouroboros-consensus-byron.nix | 6 +- .../ouroboros-consensus-byronspec.nix | 4 +- .../ouroboros-consensus-cardano.nix | 30 +++++- nix/.stack.nix/ouroboros-consensus-mock.nix | 6 +- .../ouroboros-consensus-shelley.nix | 6 +- .../ouroboros-consensus-test-infra.nix | 11 ++- nix/.stack.nix/ouroboros-consensus.nix | 7 +- .../ouroboros-network-framework.nix | 53 +++++----- nix/.stack.nix/ouroboros-network-testing.nix | 4 +- nix/.stack.nix/ouroboros-network.nix | 80 +++++++-------- nix/.stack.nix/shelley-spec-ledger-test.nix | 5 +- nix/.stack.nix/shelley-spec-ledger.nix | 10 +- nix/.stack.nix/shelley-spec-non-integral.nix | 4 +- nix/.stack.nix/small-steps-test.nix | 98 +++++++++++++++++++ nix/.stack.nix/small-steps.nix | 35 ++----- nix/.stack.nix/typed-protocols-examples.nix | 4 +- nix/.stack.nix/typed-protocols.nix | 4 +- nix/sources.json | 8 +- stack.yaml | 2 +- 43 files changed, 312 insertions(+), 277 deletions(-) rename cardano-1.15.x.yaml => cardano-1.16.x.yaml (90%) delete mode 100644 nix/.stack.nix/cardano-shell.nix create mode 100644 nix/.stack.nix/small-steps-test.nix diff --git a/cardano-1.15.x.yaml b/cardano-1.16.x.yaml similarity index 90% rename from cardano-1.15.x.yaml rename to cardano-1.16.x.yaml index 2a976c38ac2..cf803d75b26 100644 --- a/cardano-1.15.x.yaml +++ b/cardano-1.16.x.yaml @@ -54,7 +54,7 @@ packages: - word-wrap-0.4.1 - git: https://github.com/input-output-hk/cardano-base - commit: 5e0b8bc8c7862be12da6989440f8644ba7c1e1cf + commit: 7d795c3040ea7785812efa1c97864bbb41b15d3e subdirs: - binary - binary/test @@ -66,7 +66,7 @@ packages: commit: 2547ad1e80aeabca2899951601079408becbc92c - git: https://github.com/input-output-hk/cardano-ledger-specs - commit: 12b13f390d64df6af6054b0d33bb3767756da041 + commit: 550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed subdirs: - byron/ledger/impl - byron/crypto @@ -75,12 +75,13 @@ packages: - byron/chain/executable-spec - byron/ledger/executable-spec - semantics/executable-spec + - semantics/small-steps-test - shelley/chain-and-ledger/dependencies/non-integer - shelley/chain-and-ledger/executable-spec - shelley/chain-and-ledger/executable-spec/test - git: https://github.com/input-output-hk/cardano-node - commit: 97b3e95c67940608f5acda929cf861e8ebfeddd1 + commit: e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89 subdirs: - cardano-api - cardano-cli @@ -93,11 +94,6 @@ packages: - . - test -- git: https://github.com/input-output-hk/cardano-shell - commit: 5257fc818ef7df60986834310432e197aac90711 - subdirs: - - cardano-shell - - git: https://github.com/input-output-hk/cardano-sl-x509 commit: 43a036c5bbe68ca2e9cbe611eab7982e2348fe49 @@ -117,7 +113,7 @@ packages: - plugins/backend-trace-forwarder - git: https://github.com/input-output-hk/ouroboros-network - commit: 1361bb92814c65e5964732777fc7f8ec9ebdccfe + commit: 1c8924b856baf809f193798ff686cdb2c0ed25d2 subdirs: - io-sim - io-sim-classes diff --git a/nix/.stack.nix/Win32-network.nix b/nix/.stack.nix/Win32-network.nix index b1e03c24af8..79e4843085f 100644 --- a/nix/.stack.nix/Win32-network.nix +++ b/nix/.stack.nix/Win32-network.nix @@ -74,8 +74,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/Win32-network; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/byron-spec-chain.nix b/nix/.stack.nix/byron-spec-chain.nix index a0aa7f8e49e..4b8a19b2faa 100644 --- a/nix/.stack.nix/byron-spec-chain.nix +++ b/nix/.stack.nix/byron-spec-chain.nix @@ -36,6 +36,7 @@ (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) (hsPkgs."lens" or (errorHandler.buildDepError "lens")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) ]; buildable = true; }; @@ -53,6 +54,7 @@ (hsPkgs."byron-spec-chain" or (errorHandler.buildDepError "byron-spec-chain")) (hsPkgs."byron-spec-ledger" or (errorHandler.buildDepError "byron-spec-ledger")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) ]; buildable = true; }; @@ -61,8 +63,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/byron/chain/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/byron-spec-ledger.nix b/nix/.stack.nix/byron-spec-ledger.nix index 5dd4ba18820..de98ef8a1e7 100644 --- a/nix/.stack.nix/byron-spec-ledger.nix +++ b/nix/.stack.nix/byron-spec-ledger.nix @@ -40,6 +40,7 @@ (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) ]; buildable = true; }; @@ -54,6 +55,7 @@ (hsPkgs."memory" or (errorHandler.buildDepError "memory")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) (hsPkgs."byron-spec-ledger" or (errorHandler.buildDepError "byron-spec-ledger")) ]; build-tools = [ @@ -74,6 +76,7 @@ (hsPkgs."Unique" or (errorHandler.buildDepError "Unique")) (hsPkgs."byron-spec-ledger" or (errorHandler.buildDepError "byron-spec-ledger")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) ]; buildable = true; }; @@ -82,8 +85,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/byron/ledger/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-api.nix b/nix/.stack.nix/cardano-api.nix index dd381725867..a51d9dff114 100644 --- a/nix/.stack.nix/cardano-api.nix +++ b/nix/.stack.nix/cardano-api.nix @@ -11,7 +11,7 @@ flags = {}; package = { specVersion = "1.10"; - identifier = { name = "cardano-api"; version = "1.15.0"; }; + identifier = { name = "cardano-api"; version = "1.16.0"; }; license = "Apache-2.0"; copyright = ""; maintainer = "operations@iohk.io"; @@ -42,7 +42,6 @@ (hsPkgs."cardano-crypto-wrapper" or (errorHandler.buildDepError "cardano-crypto-wrapper")) (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-shell" or (errorHandler.buildDepError "cardano-shell")) (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) @@ -110,8 +109,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "97b3e95c67940608f5acda929cf861e8ebfeddd1"; - sha256 = "1b50lv1lmc3qb5i4x9jry1nq88hqwavk857c1wp7v9666pq4nb9a"; + rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; + sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; }); postUnpack = "sourceRoot+=/cardano-api; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-binary-test.nix b/nix/.stack.nix/cardano-binary-test.nix index 91ca3d5912b..53de64e2b0d 100644 --- a/nix/.stack.nix/cardano-binary-test.nix +++ b/nix/.stack.nix/cardano-binary-test.nix @@ -48,8 +48,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-base"; - rev = "5e0b8bc8c7862be12da6989440f8644ba7c1e1cf"; - sha256 = "06i2wpla5hp4vz873zqy1f2p0pmbhnkmabw3ibhcf476qh3vfa3p"; + rev = "7d795c3040ea7785812efa1c97864bbb41b15d3e"; + sha256 = "130i0yj4y9br1m2bhisi6wni3f40i31nfhg878hv0kwi17chl9sz"; }); postUnpack = "sourceRoot+=/binary/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-binary.nix b/nix/.stack.nix/cardano-binary.nix index a3703d1d858..29bffc23530 100644 --- a/nix/.stack.nix/cardano-binary.nix +++ b/nix/.stack.nix/cardano-binary.nix @@ -71,8 +71,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-base"; - rev = "5e0b8bc8c7862be12da6989440f8644ba7c1e1cf"; - sha256 = "06i2wpla5hp4vz873zqy1f2p0pmbhnkmabw3ibhcf476qh3vfa3p"; + rev = "7d795c3040ea7785812efa1c97864bbb41b15d3e"; + sha256 = "130i0yj4y9br1m2bhisi6wni3f40i31nfhg878hv0kwi17chl9sz"; }); postUnpack = "sourceRoot+=/binary; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-cli.nix b/nix/.stack.nix/cardano-cli.nix index c74935f03ac..82c86619974 100644 --- a/nix/.stack.nix/cardano-cli.nix +++ b/nix/.stack.nix/cardano-cli.nix @@ -11,7 +11,7 @@ flags = { unexpected_thunks = false; }; package = { specVersion = "1.10"; - identifier = { name = "cardano-cli"; version = "1.15.0"; }; + identifier = { name = "cardano-cli"; version = "1.16.0"; }; license = "Apache-2.0"; copyright = ""; maintainer = "operations@iohk.io"; @@ -52,8 +52,8 @@ (hsPkgs."formatting" or (errorHandler.buildDepError "formatting")) (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) - (hsPkgs."lens" or (errorHandler.buildDepError "lens")) (hsPkgs."memory" or (errorHandler.buildDepError "memory")) + (hsPkgs."microlens" or (errorHandler.buildDepError "microlens")) (hsPkgs."network" or (errorHandler.buildDepError "network")) (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."network-uri" or (errorHandler.buildDepError "network-uri")) @@ -65,6 +65,7 @@ (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) (hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) (hsPkgs."shelley-spec-ledger" or (errorHandler.buildDepError "shelley-spec-ledger")) + (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."time" or (errorHandler.buildDepError "time")) (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) @@ -110,15 +111,25 @@ "cardano-cli-pioneers" = { depends = [ (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) (hsPkgs."bech32" or (errorHandler.buildDepError "bech32")) + (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) + (hsPkgs."base16-bytestring" or (errorHandler.buildDepError "base16-bytestring")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) (hsPkgs."cardano-cli" or (errorHandler.buildDepError "cardano-cli")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."containers" or (errorHandler.buildDepError "containers")) + (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) + (hsPkgs."lifted-base" or (errorHandler.buildDepError "lifted-base")) (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) + (hsPkgs."process" or (errorHandler.buildDepError "process")) + (hsPkgs."temporary" or (errorHandler.buildDepError "temporary")) (hsPkgs."text" or (errorHandler.buildDepError "text")) + (hsPkgs."time" or (errorHandler.buildDepError "time")) (hsPkgs."transformers-except" or (errorHandler.buildDepError "transformers-except")) + (hsPkgs."unordered-containers" or (errorHandler.buildDepError "unordered-containers")) ]; buildable = true; }; @@ -127,8 +138,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "97b3e95c67940608f5acda929cf861e8ebfeddd1"; - sha256 = "1b50lv1lmc3qb5i4x9jry1nq88hqwavk857c1wp7v9666pq4nb9a"; + rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; + sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; }); postUnpack = "sourceRoot+=/cardano-cli; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-config.nix b/nix/.stack.nix/cardano-config.nix index 487627bd0a9..8b3415537a8 100644 --- a/nix/.stack.nix/cardano-config.nix +++ b/nix/.stack.nix/cardano-config.nix @@ -39,7 +39,6 @@ (hsPkgs."cardano-crypto-wrapper" or (errorHandler.buildDepError "cardano-crypto-wrapper")) (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-shell" or (errorHandler.buildDepError "cardano-shell")) (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) @@ -82,8 +81,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "97b3e95c67940608f5acda929cf861e8ebfeddd1"; - sha256 = "1b50lv1lmc3qb5i4x9jry1nq88hqwavk857c1wp7v9666pq4nb9a"; + rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; + sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; }); postUnpack = "sourceRoot+=/cardano-config; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-crypto-class.nix b/nix/.stack.nix/cardano-crypto-class.nix index bfa44fcf9ce..f03c9610b31 100644 --- a/nix/.stack.nix/cardano-crypto-class.nix +++ b/nix/.stack.nix/cardano-crypto-class.nix @@ -58,8 +58,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-base"; - rev = "5e0b8bc8c7862be12da6989440f8644ba7c1e1cf"; - sha256 = "06i2wpla5hp4vz873zqy1f2p0pmbhnkmabw3ibhcf476qh3vfa3p"; + rev = "7d795c3040ea7785812efa1c97864bbb41b15d3e"; + sha256 = "130i0yj4y9br1m2bhisi6wni3f40i31nfhg878hv0kwi17chl9sz"; }); postUnpack = "sourceRoot+=/cardano-crypto-class; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-crypto-praos.nix b/nix/.stack.nix/cardano-crypto-praos.nix index 83bc405a482..58f8935854d 100644 --- a/nix/.stack.nix/cardano-crypto-praos.nix +++ b/nix/.stack.nix/cardano-crypto-praos.nix @@ -47,8 +47,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-base"; - rev = "5e0b8bc8c7862be12da6989440f8644ba7c1e1cf"; - sha256 = "06i2wpla5hp4vz873zqy1f2p0pmbhnkmabw3ibhcf476qh3vfa3p"; + rev = "7d795c3040ea7785812efa1c97864bbb41b15d3e"; + sha256 = "130i0yj4y9br1m2bhisi6wni3f40i31nfhg878hv0kwi17chl9sz"; }); postUnpack = "sourceRoot+=/cardano-crypto-praos; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-crypto-test.nix b/nix/.stack.nix/cardano-crypto-test.nix index d7cf9662d23..6370539fdde 100644 --- a/nix/.stack.nix/cardano-crypto-test.nix +++ b/nix/.stack.nix/cardano-crypto-test.nix @@ -44,8 +44,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/byron/crypto/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-crypto-wrapper.nix b/nix/.stack.nix/cardano-crypto-wrapper.nix index f25cd6ba013..eaa1e8bf4e0 100644 --- a/nix/.stack.nix/cardano-crypto-wrapper.nix +++ b/nix/.stack.nix/cardano-crypto-wrapper.nix @@ -69,8 +69,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/byron/crypto; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-ledger-test.nix b/nix/.stack.nix/cardano-ledger-test.nix index e4c1086e538..82d48ffb5c2 100644 --- a/nix/.stack.nix/cardano-ledger-test.nix +++ b/nix/.stack.nix/cardano-ledger-test.nix @@ -52,6 +52,7 @@ (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) (hsPkgs."resourcet" or (errorHandler.buildDepError "resourcet")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) (hsPkgs."streaming" or (errorHandler.buildDepError "streaming")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-hedgehog" or (errorHandler.buildDepError "tasty-hedgehog")) @@ -65,8 +66,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/byron/ledger/impl/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-ledger.nix b/nix/.stack.nix/cardano-ledger.nix index 8d319bcaca3..30013feb007 100644 --- a/nix/.stack.nix/cardano-ledger.nix +++ b/nix/.stack.nix/cardano-ledger.nix @@ -94,6 +94,7 @@ (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) (hsPkgs."resourcet" or (errorHandler.buildDepError "resourcet")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) (hsPkgs."streaming" or (errorHandler.buildDepError "streaming")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-hedgehog" or (errorHandler.buildDepError "tasty-hedgehog")) @@ -133,8 +134,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/byron/ledger/impl; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-node.nix b/nix/.stack.nix/cardano-node.nix index d82557ceb68..ce223c98c52 100644 --- a/nix/.stack.nix/cardano-node.nix +++ b/nix/.stack.nix/cardano-node.nix @@ -11,7 +11,7 @@ flags = { unexpected_thunks = false; systemd = true; }; package = { specVersion = "1.10"; - identifier = { name = "cardano-node"; version = "1.15.0"; }; + identifier = { name = "cardano-node"; version = "1.16.0"; }; license = "Apache-2.0"; copyright = ""; maintainer = "operations@iohk.io"; @@ -33,10 +33,10 @@ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) (hsPkgs."cardano-config" or (errorHandler.buildDepError "cardano-config")) + (hsPkgs."cardano-crypto-class" or (errorHandler.buildDepError "cardano-crypto-class")) (hsPkgs."cardano-crypto-wrapper" or (errorHandler.buildDepError "cardano-crypto-wrapper")) (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-shell" or (errorHandler.buildDepError "cardano-shell")) (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) @@ -112,7 +112,6 @@ (hsPkgs."cardano-config" or (errorHandler.buildDepError "cardano-config")) (hsPkgs."cardano-node" or (errorHandler.buildDepError "cardano-node")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-shell" or (errorHandler.buildDepError "cardano-shell")) (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) (hsPkgs."text" or (errorHandler.buildDepError "text")) ] ++ (if system.isWindows @@ -128,6 +127,7 @@ (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) (hsPkgs."cardano-config" or (errorHandler.buildDepError "cardano-config")) + (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) @@ -181,8 +181,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "97b3e95c67940608f5acda929cf861e8ebfeddd1"; - sha256 = "1b50lv1lmc3qb5i4x9jry1nq88hqwavk857c1wp7v9666pq4nb9a"; + rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; + sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; }); postUnpack = "sourceRoot+=/cardano-node; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-shell.nix b/nix/.stack.nix/cardano-shell.nix deleted file mode 100644 index b17ba9ded4a..00000000000 --- a/nix/.stack.nix/cardano-shell.nix +++ /dev/null @@ -1,82 +0,0 @@ -{ system - , compiler - , flags - , pkgs - , hsPkgs - , pkgconfPkgs - , errorHandler - , config - , ... }: - { - flags = {}; - package = { - specVersion = "2.2"; - identifier = { name = "cardano-shell"; version = "0.1.0.0"; }; - license = "Apache-2.0"; - copyright = "2018 IOHK"; - maintainer = "operations@iohk.io"; - author = "IOHK"; - homepage = "https://github.com/input-output-hk/cardano-shell#readme"; - url = ""; - synopsis = ""; - description = "Please see the README on GitHub at "; - buildType = "Simple"; - isLocal = true; - }; - components = { - "library" = { - depends = [ - (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) - (hsPkgs."base" or (errorHandler.buildDepError "base")) - (hsPkgs."binary" or (errorHandler.buildDepError "binary")) - (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) - (hsPkgs."Cabal" or (errorHandler.buildDepError "Cabal")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."concurrency" or (errorHandler.buildDepError "concurrency")) - (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."formatting" or (errorHandler.buildDepError "formatting")) - (hsPkgs."process" or (errorHandler.buildDepError "process")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) - (hsPkgs."safe-exceptions" or (errorHandler.buildDepError "safe-exceptions")) - (hsPkgs."async" or (errorHandler.buildDepError "async")) - (hsPkgs."text" or (errorHandler.buildDepError "text")) - (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) - ] ++ (pkgs.lib).optional (system.isWindows) (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")); - buildable = true; - }; - exes = { - "node-ipc" = { - depends = [ - (hsPkgs."base" or (errorHandler.buildDepError "base")) - (hsPkgs."cardano-shell" or (errorHandler.buildDepError "cardano-shell")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - ]; - buildable = true; - }; - }; - tests = { - "cardano-shell-test" = { - depends = [ - (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) - (hsPkgs."base" or (errorHandler.buildDepError "base")) - (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) - (hsPkgs."cardano-shell" or (errorHandler.buildDepError "cardano-shell")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) - (hsPkgs."quickcheck-state-machine" or (errorHandler.buildDepError "quickcheck-state-machine")) - (hsPkgs."text" or (errorHandler.buildDepError "text")) - (hsPkgs."tree-diff" or (errorHandler.buildDepError "tree-diff")) - (hsPkgs."hspec" or (errorHandler.buildDepError "hspec")) - ]; - buildable = true; - }; - }; - }; - } // { - src = (pkgs.lib).mkDefault (pkgs.fetchgit { - url = "https://github.com/input-output-hk/cardano-shell"; - rev = "5257fc818ef7df60986834310432e197aac90711"; - sha256 = "1si7jb084m2z9h773b1v4mgdkcjbbfpsyys3d6iz6gn0pzkijvc8"; - }); - postUnpack = "sourceRoot+=/cardano-shell; echo source root reset to \$sourceRoot"; - } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-slotting.nix b/nix/.stack.nix/cardano-slotting.nix index 294d9988c86..6864059971d 100644 --- a/nix/.stack.nix/cardano-slotting.nix +++ b/nix/.stack.nix/cardano-slotting.nix @@ -43,8 +43,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-base"; - rev = "5e0b8bc8c7862be12da6989440f8644ba7c1e1cf"; - sha256 = "06i2wpla5hp4vz873zqy1f2p0pmbhnkmabw3ibhcf476qh3vfa3p"; + rev = "7d795c3040ea7785812efa1c97864bbb41b15d3e"; + sha256 = "130i0yj4y9br1m2bhisi6wni3f40i31nfhg878hv0kwi17chl9sz"; }); postUnpack = "sourceRoot+=/slotting; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-wallet-shelley.nix b/nix/.stack.nix/cardano-wallet-shelley.nix index 85b7f8231a3..64a2c89c17d 100644 --- a/nix/.stack.nix/cardano-wallet-shelley.nix +++ b/nix/.stack.nix/cardano-wallet-shelley.nix @@ -62,6 +62,8 @@ (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) (hsPkgs."ouroboros-consensus" or (errorHandler.buildDepError "ouroboros-consensus")) + (hsPkgs."ouroboros-consensus-byron" or (errorHandler.buildDepError "ouroboros-consensus-byron")) + (hsPkgs."ouroboros-consensus-cardano" or (errorHandler.buildDepError "ouroboros-consensus-cardano")) (hsPkgs."ouroboros-consensus-shelley" or (errorHandler.buildDepError "ouroboros-consensus-shelley")) (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) diff --git a/nix/.stack.nix/default.nix b/nix/.stack.nix/default.nix index 8f26b90d115..7b2da5fafd6 100644 --- a/nix/.stack.nix/default.nix +++ b/nix/.stack.nix/default.nix @@ -87,6 +87,7 @@ byron-spec-chain = ./byron-spec-chain.nix; byron-spec-ledger = ./byron-spec-ledger.nix; small-steps = ./small-steps.nix; + small-steps-test = ./small-steps-test.nix; shelley-spec-non-integral = ./shelley-spec-non-integral.nix; shelley-spec-ledger = ./shelley-spec-ledger.nix; shelley-spec-ledger-test = ./shelley-spec-ledger-test.nix; @@ -96,7 +97,6 @@ cardano-node = ./cardano-node.nix; cardano-prelude = ./cardano-prelude.nix; cardano-prelude-test = ./cardano-prelude-test.nix; - cardano-shell = ./cardano-shell.nix; cardano-sl-x509 = ./cardano-sl-x509.nix; goblins = ./goblins.nix; contra-tracer = ./contra-tracer.nix; diff --git a/nix/.stack.nix/io-sim-classes.nix b/nix/.stack.nix/io-sim-classes.nix index aa0fd533072..16ec9b27041 100644 --- a/nix/.stack.nix/io-sim-classes.nix +++ b/nix/.stack.nix/io-sim-classes.nix @@ -51,8 +51,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/io-sim-classes; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/io-sim.nix b/nix/.stack.nix/io-sim.nix index 394294f6db6..1842d273a3f 100644 --- a/nix/.stack.nix/io-sim.nix +++ b/nix/.stack.nix/io-sim.nix @@ -55,8 +55,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/io-sim; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/network-mux.nix b/nix/.stack.nix/network-mux.nix index 9420d7f50ba..0d8e954614c 100644 --- a/nix/.stack.nix/network-mux.nix +++ b/nix/.stack.nix/network-mux.nix @@ -105,8 +105,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/network-mux; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ntp-client.nix b/nix/.stack.nix/ntp-client.nix index 590d47177c7..979b7383f6a 100644 --- a/nix/.stack.nix/ntp-client.nix +++ b/nix/.stack.nix/ntp-client.nix @@ -67,8 +67,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ntp-client; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-byron.nix b/nix/.stack.nix/ouroboros-consensus-byron.nix index d89b748b36a..f6e3c90c16e 100644 --- a/nix/.stack.nix/ouroboros-consensus-byron.nix +++ b/nix/.stack.nix/ouroboros-consensus-byron.nix @@ -58,7 +58,6 @@ (hsPkgs."cardano-crypto-wrapper" or (errorHandler.buildDepError "cardano-crypto-wrapper")) (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) @@ -68,7 +67,6 @@ (hsPkgs."resourcet" or (errorHandler.buildDepError "resourcet")) (hsPkgs."streaming" or (errorHandler.buildDepError "streaming")) (hsPkgs."text" or (errorHandler.buildDepError "text")) - (hsPkgs."time" or (errorHandler.buildDepError "time")) (hsPkgs."ouroboros-consensus" or (errorHandler.buildDepError "ouroboros-consensus")) (hsPkgs."ouroboros-consensus-byron" or (errorHandler.buildDepError "ouroboros-consensus-byron")) ]; @@ -79,8 +77,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-byron; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-byronspec.nix b/nix/.stack.nix/ouroboros-consensus-byronspec.nix index ca6d5c5ec32..efdb95bfc38 100644 --- a/nix/.stack.nix/ouroboros-consensus-byronspec.nix +++ b/nix/.stack.nix/ouroboros-consensus-byronspec.nix @@ -52,8 +52,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-byronspec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-cardano.nix b/nix/.stack.nix/ouroboros-consensus-cardano.nix index cce7730e25c..56603ad2e84 100644 --- a/nix/.stack.nix/ouroboros-consensus-cardano.nix +++ b/nix/.stack.nix/ouroboros-consensus-cardano.nix @@ -34,7 +34,6 @@ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."text" or (errorHandler.buildDepError "text")) @@ -78,6 +77,30 @@ ]; buildable = true; }; + "db-validator" = { + depends = [ + (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) + (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) + (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) + (hsPkgs."cardano-crypto-wrapper" or (errorHandler.buildDepError "cardano-crypto-wrapper")) + (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."directory" or (errorHandler.buildDepError "directory")) + (hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) + (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) + (hsPkgs."optparse-applicative" or (errorHandler.buildDepError "optparse-applicative")) + (hsPkgs."optparse-generic" or (errorHandler.buildDepError "optparse-generic")) + (hsPkgs."shelley-spec-ledger" or (errorHandler.buildDepError "shelley-spec-ledger")) + (hsPkgs."text" or (errorHandler.buildDepError "text")) + (hsPkgs."time" or (errorHandler.buildDepError "time")) + (hsPkgs."ouroboros-consensus" or (errorHandler.buildDepError "ouroboros-consensus")) + (hsPkgs."ouroboros-consensus-byron" or (errorHandler.buildDepError "ouroboros-consensus-byron")) + (hsPkgs."ouroboros-consensus-cardano" or (errorHandler.buildDepError "ouroboros-consensus-cardano")) + (hsPkgs."ouroboros-consensus-shelley" or (errorHandler.buildDepError "ouroboros-consensus-shelley")) + ]; + buildable = true; + }; }; tests = { "test" = { @@ -96,6 +119,7 @@ (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) + (hsPkgs."sop-core" or (errorHandler.buildDepError "sop-core")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) (hsPkgs."time" or (errorHandler.buildDepError "time")) @@ -116,8 +140,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-cardano; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-mock.nix b/nix/.stack.nix/ouroboros-consensus-mock.nix index 806af0c1353..0790a9b2037 100644 --- a/nix/.stack.nix/ouroboros-consensus-mock.nix +++ b/nix/.stack.nix/ouroboros-consensus-mock.nix @@ -37,7 +37,6 @@ (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) (hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) @@ -58,7 +57,6 @@ (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) @@ -75,8 +73,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus/ouroboros-consensus-mock; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-shelley.nix b/nix/.stack.nix/ouroboros-consensus-shelley.nix index b86bc88f9c5..bc15b6cc7e8 100644 --- a/nix/.stack.nix/ouroboros-consensus-shelley.nix +++ b/nix/.stack.nix/ouroboros-consensus-shelley.nix @@ -40,9 +40,9 @@ (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) + (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) (hsPkgs."shelley-spec-ledger" or (errorHandler.buildDepError "shelley-spec-ledger")) (hsPkgs."shelley-spec-non-integral" or (errorHandler.buildDepError "shelley-spec-non-integral")) @@ -56,8 +56,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-shelley; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-test-infra.nix b/nix/.stack.nix/ouroboros-consensus-test-infra.nix index 21d955a12ac..a921c2af48c 100644 --- a/nix/.stack.nix/ouroboros-consensus-test-infra.nix +++ b/nix/.stack.nix/ouroboros-consensus-test-infra.nix @@ -39,9 +39,11 @@ (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) + (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."fgl" or (errorHandler.buildDepError "fgl")) + (hsPkgs."file-embed" or (errorHandler.buildDepError "file-embed")) + (hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) (hsPkgs."generics-sop" or (errorHandler.buildDepError "generics-sop")) (hsPkgs."graphviz" or (errorHandler.buildDepError "graphviz")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) @@ -51,12 +53,15 @@ (hsPkgs."random" or (errorHandler.buildDepError "random")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) + (hsPkgs."tasty-golden" or (errorHandler.buildDepError "tasty-golden")) (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) + (hsPkgs."template-haskell" or (errorHandler.buildDepError "template-haskell")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."time" or (errorHandler.buildDepError "time")) (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) (hsPkgs."tree-diff" or (errorHandler.buildDepError "tree-diff")) + (hsPkgs."utf8-string" or (errorHandler.buildDepError "utf8-string")) (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) @@ -83,8 +88,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus/ouroboros-consensus-test-infra; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus.nix b/nix/.stack.nix/ouroboros-consensus.nix index 05b2c8ee2e9..1ee708156b1 100644 --- a/nix/.stack.nix/ouroboros-consensus.nix +++ b/nix/.stack.nix/ouroboros-consensus.nix @@ -39,7 +39,6 @@ (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) (hsPkgs."digest" or (errorHandler.buildDepError "digest")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) @@ -114,7 +113,6 @@ (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) (hsPkgs."binary" or (errorHandler.buildDepError "binary")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) (hsPkgs."random" or (errorHandler.buildDepError "random")) ]; @@ -158,7 +156,6 @@ (hsPkgs."ouroboros-network-testing" or (errorHandler.buildDepError "ouroboros-network-testing")) (hsPkgs."ouroboros-consensus" or (errorHandler.buildDepError "ouroboros-consensus")) (hsPkgs."base16-bytestring" or (errorHandler.buildDepError "base16-bytestring")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) ]; buildable = true; @@ -168,8 +165,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-consensus; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-network-framework.nix b/nix/.stack.nix/ouroboros-network-framework.nix index 550b34299da..94cdafe50ca 100644 --- a/nix/.stack.nix/ouroboros-network-framework.nix +++ b/nix/.stack.nix/ouroboros-network-framework.nix @@ -32,27 +32,24 @@ (hsPkgs."base" or (errorHandler.buildDepError "base")) (hsPkgs."async" or (errorHandler.buildDepError "async")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) + (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) + (hsPkgs."dns" or (errorHandler.buildDepError "dns")) + (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."stm" or (errorHandler.buildDepError "stm")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."time" or (errorHandler.buildDepError "time")) - (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) + (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) - (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) (hsPkgs."network" or (errorHandler.buildDepError "network")) (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) (hsPkgs."Win32-network" or (errorHandler.buildDepError "Win32-network")) - (hsPkgs."dns" or (errorHandler.buildDepError "dns")) - (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."typed-protocols-examples" or (errorHandler.buildDepError "typed-protocols-examples")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - ] ++ (pkgs.lib).optionals (system.isWindows) [ - (hsPkgs."Win32-network" or (errorHandler.buildDepError "Win32-network")) - (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")) - ]; + ] ++ (pkgs.lib).optional (system.isWindows) (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")); buildable = true; }; exes = { @@ -63,14 +60,14 @@ (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) - (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."network" or (errorHandler.buildDepError "network")) - (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) - (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) (hsPkgs."stm" or (errorHandler.buildDepError "stm")) (hsPkgs."text" or (errorHandler.buildDepError "text")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) + (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) + (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) (hsPkgs."typed-protocols-examples" or (errorHandler.buildDepError "typed-protocols-examples")) ] ++ (pkgs.lib).optionals (system.isWindows) [ @@ -85,26 +82,26 @@ depends = [ (hsPkgs."base" or (errorHandler.buildDepError "base")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) + (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) + (hsPkgs."dns" or (errorHandler.buildDepError "dns")) + (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) + (hsPkgs."network" or (errorHandler.buildDepError "network")) + (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."time" or (errorHandler.buildDepError "time")) - (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) - (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) + (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) + (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) + (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) - (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) - (hsPkgs."typed-protocols-examples" or (errorHandler.buildDepError "typed-protocols-examples")) - (hsPkgs."network" or (errorHandler.buildDepError "network")) (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) (hsPkgs."ouroboros-network-testing" or (errorHandler.buildDepError "ouroboros-network-testing")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) - (hsPkgs."dns" or (errorHandler.buildDepError "dns")) - (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) - (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) - (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) - (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) + (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) + (hsPkgs."typed-protocols-examples" or (errorHandler.buildDepError "typed-protocols-examples")) ] ++ (pkgs.lib).optionals (system.isWindows) [ (hsPkgs."Win32-network" or (errorHandler.buildDepError "Win32-network")) (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")) @@ -116,8 +113,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-network-framework; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-network-testing.nix b/nix/.stack.nix/ouroboros-network-testing.nix index 4d2173c2168..80591c0c8f9 100644 --- a/nix/.stack.nix/ouroboros-network-testing.nix +++ b/nix/.stack.nix/ouroboros-network-testing.nix @@ -38,8 +38,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-network-testing; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-network.nix b/nix/.stack.nix/ouroboros-network.nix index f4ddfbae0e1..ce35fff1407 100644 --- a/nix/.stack.nix/ouroboros-network.nix +++ b/nix/.stack.nix/ouroboros-network.nix @@ -27,30 +27,30 @@ "library" = { depends = [ (hsPkgs."base" or (errorHandler.buildDepError "base")) - (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) - (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) - (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) - (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."async" or (errorHandler.buildDepError "async")) (hsPkgs."base16-bytestring" or (errorHandler.buildDepError "base16-bytestring")) (hsPkgs."binary" or (errorHandler.buildDepError "binary")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) - (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."dns" or (errorHandler.buildDepError "dns")) - (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."fingertree" or (errorHandler.buildDepError "fingertree")) (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) + (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."network" or (errorHandler.buildDepError "network")) (hsPkgs."psqueues" or (errorHandler.buildDepError "psqueues")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."stm" or (errorHandler.buildDepError "stm")) (hsPkgs."time" or (errorHandler.buildDepError "time")) + (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) + (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) + (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) + (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) + (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) (hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) (hsPkgs."text" or (errorHandler.buildDepError "text")) ]; @@ -73,9 +73,9 @@ (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) - (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) - (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) + (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) + (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) ]; buildable = true; }; @@ -87,18 +87,18 @@ (hsPkgs."async" or (errorHandler.buildDepError "async")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) - (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."network" or (errorHandler.buildDepError "network")) - (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) - (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) (hsPkgs."random" or (errorHandler.buildDepError "random")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."splitmix" or (errorHandler.buildDepError "splitmix")) (hsPkgs."stm" or (errorHandler.buildDepError "stm")) + (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) + (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) + (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) ]; buildable = true; }; @@ -107,43 +107,43 @@ "test-network" = { depends = [ (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) (hsPkgs."array" or (errorHandler.buildDepError "array")) (hsPkgs."async" or (errorHandler.buildDepError "async")) (hsPkgs."binary" or (errorHandler.buildDepError "binary")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) - (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."dns" or (errorHandler.buildDepError "dns")) (hsPkgs."fingertree" or (errorHandler.buildDepError "fingertree")) (hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) - (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) - (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) - (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."network" or (errorHandler.buildDepError "network")) - (hsPkgs."psqueues" or (errorHandler.buildDepError "psqueues")) - (hsPkgs."ouroboros-network-testing" or (errorHandler.buildDepError "ouroboros-network-testing")) (hsPkgs."pipes" or (errorHandler.buildDepError "pipes")) (hsPkgs."process" or (errorHandler.buildDepError "process")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) + (hsPkgs."psqueues" or (errorHandler.buildDepError "psqueues")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) (hsPkgs."splitmix" or (errorHandler.buildDepError "splitmix")) (hsPkgs."stm" or (errorHandler.buildDepError "stm")) + (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) - (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."time" or (errorHandler.buildDepError "time")) - (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) - (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) + (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) + (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) + (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) + (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) + (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) + (hsPkgs."ouroboros-network-testing" or (errorHandler.buildDepError "ouroboros-network-testing")) (hsPkgs."ouroboros-protocol-tests" or (errorHandler.buildDepError "ouroboros-protocol-tests")) + (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) ] ++ (pkgs.lib).optionals (system.isWindows) [ (hsPkgs."Win32-network" or (errorHandler.buildDepError "Win32-network")) (hsPkgs."Win32" or (errorHandler.buildDepError "Win32")) @@ -154,26 +154,26 @@ depends = [ (hsPkgs."base" or (errorHandler.buildDepError "base")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) - (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) - (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) (hsPkgs."fingertree" or (errorHandler.buildDepError "fingertree")) (hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) - (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) - (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) - (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."pipes" or (errorHandler.buildDepError "pipes")) (hsPkgs."process-extras" or (errorHandler.buildDepError "process-extras")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) (hsPkgs."serialise" or (errorHandler.buildDepError "serialise")) + (hsPkgs."text" or (errorHandler.buildDepError "text")) + (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) - (hsPkgs."text" or (errorHandler.buildDepError "text")) + (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) + (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) + (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) + (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) + (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) + (hsPkgs."network-mux" or (errorHandler.buildDepError "network-mux")) (hsPkgs."typed-protocols" or (errorHandler.buildDepError "typed-protocols")) (hsPkgs."ouroboros-network-framework" or (errorHandler.buildDepError "ouroboros-network-framework")) (hsPkgs."ouroboros-network" or (errorHandler.buildDepError "ouroboros-network")) @@ -186,8 +186,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/ouroboros-network; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/shelley-spec-ledger-test.nix b/nix/.stack.nix/shelley-spec-ledger-test.nix index 0cc8c2a73a9..5a29d367796 100644 --- a/nix/.stack.nix/shelley-spec-ledger-test.nix +++ b/nix/.stack.nix/shelley-spec-ledger-test.nix @@ -56,6 +56,7 @@ (hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) (hsPkgs."shelley-spec-ledger" or (errorHandler.buildDepError "shelley-spec-ledger")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-hedgehog" or (errorHandler.buildDepError "tasty-hedgehog")) (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) @@ -70,8 +71,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/shelley/chain-and-ledger/executable-spec/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/shelley-spec-ledger.nix b/nix/.stack.nix/shelley-spec-ledger.nix index 925c8b4fb77..f0788c47fe7 100644 --- a/nix/.stack.nix/shelley-spec-ledger.nix +++ b/nix/.stack.nix/shelley-spec-ledger.nix @@ -46,6 +46,7 @@ (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."network" or (errorHandler.buildDepError "network")) + (hsPkgs."quiet" or (errorHandler.buildDepError "quiet")) (hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) (hsPkgs."shelley-spec-non-integral" or (errorHandler.buildDepError "shelley-spec-non-integral")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) @@ -88,11 +89,13 @@ (hsPkgs."generic-random" or (errorHandler.buildDepError "generic-random")) (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) (hsPkgs."hedgehog-quickcheck" or (errorHandler.buildDepError "hedgehog-quickcheck")) + (hsPkgs."HUnit" or (errorHandler.buildDepError "HUnit")) (hsPkgs."iproute" or (errorHandler.buildDepError "iproute")) (hsPkgs."multiset" or (errorHandler.buildDepError "multiset")) (hsPkgs."process-extras" or (errorHandler.buildDepError "process-extras")) (hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."tasty-hedgehog" or (errorHandler.buildDepError "tasty-hedgehog")) (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) @@ -125,12 +128,15 @@ (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) (hsPkgs."time" or (errorHandler.buildDepError "time")) + (hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) (hsPkgs."criterion" or (errorHandler.buildDepError "criterion")) (hsPkgs."random" or (errorHandler.buildDepError "random")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."MonadRandom" or (errorHandler.buildDepError "MonadRandom")) (hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) + (hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) ]; buildable = true; }; @@ -139,8 +145,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/shelley/chain-and-ledger/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/shelley-spec-non-integral.nix b/nix/.stack.nix/shelley-spec-non-integral.nix index 757875008ff..313aa503184 100644 --- a/nix/.stack.nix/shelley-spec-non-integral.nix +++ b/nix/.stack.nix/shelley-spec-non-integral.nix @@ -42,8 +42,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/shelley/chain-and-ledger/dependencies/non-integer; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/small-steps-test.nix b/nix/.stack.nix/small-steps-test.nix new file mode 100644 index 00000000000..f7e77353c83 --- /dev/null +++ b/nix/.stack.nix/small-steps-test.nix @@ -0,0 +1,98 @@ +{ system + , compiler + , flags + , pkgs + , hsPkgs + , pkgconfPkgs + , errorHandler + , config + , ... }: + { + flags = { development = false; }; + package = { + specVersion = "1.10"; + identifier = { name = "small-steps-test"; version = "0.1.0.0"; }; + license = "LicenseRef-Apache"; + copyright = ""; + maintainer = "formal.methods@iohk.io"; + author = "IOHK Formal Methods Team"; + homepage = "https://github.com/input-output-hk/cardano-legder-specs"; + url = ""; + synopsis = "Small step semantics testing library"; + description = ""; + buildType = "Simple"; + isLocal = true; + }; + components = { + "library" = { + depends = [ + (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) + (hsPkgs."containers" or (errorHandler.buildDepError "containers")) + (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) + (hsPkgs."free" or (errorHandler.buildDepError "free")) + (hsPkgs."goblins" or (errorHandler.buildDepError "goblins")) + (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) + (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) + (hsPkgs."lens" or (errorHandler.buildDepError "lens")) + (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) + (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) + (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) + (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."cardano-crypto-class" or (errorHandler.buildDepError "cardano-crypto-class")) + (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + ]; + buildable = true; + }; + tests = { + "doctests" = { + depends = [ + (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."containers" or (errorHandler.buildDepError "containers")) + (hsPkgs."data-default" or (errorHandler.buildDepError "data-default")) + (hsPkgs."free" or (errorHandler.buildDepError "free")) + (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) + (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) + (hsPkgs."lens" or (errorHandler.buildDepError "lens")) + (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) + (hsPkgs."sequence" or (errorHandler.buildDepError "sequence")) + (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) + (hsPkgs."doctest" or (errorHandler.buildDepError "doctest")) + (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) + ]; + build-tools = [ + (hsPkgs.buildPackages.doctest-discover or (pkgs.buildPackages.doctest-discover or (errorHandler.buildToolDepError "doctest-discover"))) + ]; + buildable = true; + }; + "examples" = { + depends = [ + (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."containers" or (errorHandler.buildDepError "containers")) + (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) + (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) + (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) + (hsPkgs."tasty-hedgehog" or (errorHandler.buildDepError "tasty-hedgehog")) + (hsPkgs."tasty-expected-failure" or (errorHandler.buildDepError "tasty-expected-failure")) + (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) + (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) + (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) + (hsPkgs."Unique" or (errorHandler.buildDepError "Unique")) + (hsPkgs."cardano-crypto-class" or (errorHandler.buildDepError "cardano-crypto-class")) + (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) + (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) + (hsPkgs."small-steps-test" or (errorHandler.buildDepError "small-steps-test")) + ]; + buildable = true; + }; + }; + }; + } // { + src = (pkgs.lib).mkDefault (pkgs.fetchgit { + url = "https://github.com/input-output-hk/cardano-ledger-specs"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + }); + postUnpack = "sourceRoot+=/semantics/small-steps-test; echo source root reset to \$sourceRoot"; + } \ No newline at end of file diff --git a/nix/.stack.nix/small-steps.nix b/nix/.stack.nix/small-steps.nix index 6df6aedb5f8..cd5039fe16a 100644 --- a/nix/.stack.nix/small-steps.nix +++ b/nix/.stack.nix/small-steps.nix @@ -8,7 +8,7 @@ , config , ... }: { - flags = { development = false; }; + flags = { development = false; sts_assert = false; }; package = { specVersion = "1.10"; identifier = { name = "small-steps"; version = "0.1.0.0"; }; @@ -31,15 +31,13 @@ (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."free" or (errorHandler.buildDepError "free")) - (hsPkgs."goblins" or (errorHandler.buildDepError "goblins")) - (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) - (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) - (hsPkgs."lens" or (errorHandler.buildDepError "lens")) (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) (hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) - (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."ansi-wl-pprint" or (errorHandler.buildDepError "ansi-wl-pprint")) (hsPkgs."cardano-crypto-class" or (errorHandler.buildDepError "cardano-crypto-class")) + (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) + (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) ]; buildable = true; }; @@ -64,32 +62,13 @@ ]; buildable = true; }; - "examples" = { - depends = [ - (hsPkgs."base" or (errorHandler.buildDepError "base")) - (hsPkgs."containers" or (errorHandler.buildDepError "containers")) - (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) - (hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) - (hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) - (hsPkgs."tasty-hedgehog" or (errorHandler.buildDepError "tasty-hedgehog")) - (hsPkgs."tasty-expected-failure" or (errorHandler.buildDepError "tasty-expected-failure")) - (hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) - (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) - (hsPkgs."tasty-hunit" or (errorHandler.buildDepError "tasty-hunit")) - (hsPkgs."Unique" or (errorHandler.buildDepError "Unique")) - (hsPkgs."cardano-crypto-class" or (errorHandler.buildDepError "cardano-crypto-class")) - (hsPkgs."cardano-binary" or (errorHandler.buildDepError "cardano-binary")) - (hsPkgs."small-steps" or (errorHandler.buildDepError "small-steps")) - ]; - buildable = true; - }; }; }; } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "12b13f390d64df6af6054b0d33bb3767756da041"; - sha256 = "0v9zj73sz984xpg0azckfpibkllribbzksg18isx2m7w58bya77m"; + rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; + sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; }); postUnpack = "sourceRoot+=/semantics/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/typed-protocols-examples.nix b/nix/.stack.nix/typed-protocols-examples.nix index 1f88b7d1388..a751af15ba2 100644 --- a/nix/.stack.nix/typed-protocols-examples.nix +++ b/nix/.stack.nix/typed-protocols-examples.nix @@ -57,8 +57,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/typed-protocols-examples; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/typed-protocols.nix b/nix/.stack.nix/typed-protocols.nix index 157a164deba..24ed39cf685 100644 --- a/nix/.stack.nix/typed-protocols.nix +++ b/nix/.stack.nix/typed-protocols.nix @@ -35,8 +35,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1361bb92814c65e5964732777fc7f8ec9ebdccfe"; - sha256 = "1znl9zzw5hswcd09zcvmgq50ppp46nbzjmw67wm4wpnw5lhnlwfy"; + rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; + sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; }); postUnpack = "sourceRoot+=/typed-protocols; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/sources.json b/nix/sources.json index c56a5f0473b..2b2e6db0197 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -1,14 +1,14 @@ { "cardano-node": { - "branch": "1.15.1", + "branch": "1.16.0", "description": null, "homepage": null, "owner": "input-output-hk", "repo": "cardano-node", - "rev": "712a287602797e8fd889fbf73e56a08c3d8b004a", - "sha256": "1lg1g702x5q6m8n61bfyji7pmj2gsw44mm41nxhc5rv2wk4g996c", + "rev": "ab846e5e884ac1f3d044a0d15b9e69efc8256036", + "sha256": "1zm4ck89wqab9iw4kav9s0sjqr03xi0711asyzzysrszad24alpl", "type": "tarball", - "url": "https://github.com/input-output-hk/cardano-node/archive/712a287602797e8fd889fbf73e56a08c3d8b004a.tar.gz", + "url": "https://github.com/input-output-hk/cardano-node/archive/ab846e5e884ac1f3d044a0d15b9e69efc8256036.tar.gz", "url_template": "https://github.com///archive/.tar.gz" }, "haskell.nix": { diff --git a/stack.yaml b/stack.yaml index beda29067a0..9a2c15a4229 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,4 +1,4 @@ -resolver: cardano-1.15.x.yaml +resolver: cardano-1.16.x.yaml packages: - lib/core From e19290b7fe7301f4801e3640b29355923c19b4d4 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Sun, 19 Jul 2020 00:58:23 +1000 Subject: [PATCH 02/86] Regenerate nix --- nix/.stack.nix/cardano-wallet-shelley.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nix/.stack.nix/cardano-wallet-shelley.nix b/nix/.stack.nix/cardano-wallet-shelley.nix index 64a2c89c17d..c4eb15e4f0c 100644 --- a/nix/.stack.nix/cardano-wallet-shelley.nix +++ b/nix/.stack.nix/cardano-wallet-shelley.nix @@ -33,6 +33,7 @@ (hsPkgs."bech32" or (errorHandler.buildDepError "bech32")) (hsPkgs."bech32-th" or (errorHandler.buildDepError "bech32-th")) (hsPkgs."binary" or (errorHandler.buildDepError "binary")) + (hsPkgs."byron-spec-ledger" or (errorHandler.buildDepError "byron-spec-ledger")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) (hsPkgs."cardano-addresses" or (errorHandler.buildDepError "cardano-addresses")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) @@ -52,6 +53,7 @@ (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."exceptions" or (errorHandler.buildDepError "exceptions")) + (hsPkgs."extra" or (errorHandler.buildDepError "extra")) (hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) (hsPkgs."fmt" or (errorHandler.buildDepError "fmt")) (hsPkgs."generic-lens" or (errorHandler.buildDepError "generic-lens")) From 1cf38d1a164c7d81a1d5b9c3c09ad02fa29f1026 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Sun, 19 Jul 2020 00:59:08 +1000 Subject: [PATCH 03/86] Bump iohk-nix --- nix/sources.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nix/sources.json b/nix/sources.json index 2b2e6db0197..9c43ab36130 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -29,10 +29,10 @@ "homepage": null, "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "dd76e961f568f78208ec4514937e53252ae00007", - "sha256": "08l3wz76c6ga7rg6iirpkh7688hkjjcghhsgq094sgfk5g7czzrd", + "rev": "437649c24ab8e30d6f08154a22da809a991971a3", + "sha256": "1y784yhdwpmgdjwxnrbzabnpfkbzy9lxi7kpqf9w9kypv9qmszpq", "type": "tarball", - "url": "https://github.com/input-output-hk/iohk-nix/archive/dd76e961f568f78208ec4514937e53252ae00007.tar.gz", + "url": "https://github.com/input-output-hk/iohk-nix/archive/437649c24ab8e30d6f08154a22da809a991971a3.tar.gz", "url_template": "https://github.com///archive/.tar.gz" }, "niv": { From ba14f342a746bb0209fc6fb60f8621dfd634afcf Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Wed, 15 Jul 2020 13:14:18 +1000 Subject: [PATCH 04/86] =?UTF-8?q?Cardano.Api=20=E2=86=92=20Cardano.Api.Typ?= =?UTF-8?q?ed=20and=20HardForkBlock=20support?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/core/src/Cardano/Wallet/Network.hs | 6 +- .../src/Cardano/Wallet/Primitive/Slotting.hs | 88 +-- .../src/Ouroboros/Network/Client/Wallet.hs | 2 +- lib/shelley/cardano-wallet-shelley.cabal | 5 + .../src/Cardano/Wallet/Byron/Compatibility.hs | 511 ++++++++++++++++++ lib/shelley/src/Cardano/Wallet/Shelley.hs | 14 +- .../Cardano/Wallet/Shelley/Compatibility.hs | 340 +++++++----- .../src/Cardano/Wallet/Shelley/Launch.hs | 109 +++- .../src/Cardano/Wallet/Shelley/Network.hs | 378 ++++++++----- .../src/Cardano/Wallet/Shelley/Pools.hs | 101 ++-- .../src/Cardano/Wallet/Shelley/Transaction.hs | 176 +++--- .../Wallet/Shelley/CompatibilitySpec.hs | 13 +- 12 files changed, 1262 insertions(+), 481 deletions(-) create mode 100644 lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs diff --git a/lib/core/src/Cardano/Wallet/Network.hs b/lib/core/src/Cardano/Wallet/Network.hs index ef73aea4312..c09b3d0f7d8 100644 --- a/lib/core/src/Cardano/Wallet/Network.hs +++ b/lib/core/src/Cardano/Wallet/Network.hs @@ -141,11 +141,12 @@ data NetworkLayer m target block = NetworkLayer -- ^ Broadcast a transaction to the chain producer , stakeDistribution - :: GetStakeDistribution target m + :: GetStakeDistribution target block m , getAccountBalance :: ChimericAccount -> ExceptT ErrGetAccountBalance m (Quantity "lovelace" Word64) + , timeInterpreter :: TimeInterpreter m } @@ -153,6 +154,7 @@ data NetworkLayer m target block = NetworkLayer instance Functor m => Functor (NetworkLayer m target) where fmap f nl = nl { nextBlocks = fmap (fmap f) . nextBlocks nl + , stakeDistribution = error "fixme: functor instance" } {------------------------------------------------------------------------------- @@ -242,7 +244,7 @@ defaultRetryPolicy = Queries -------------------------------------------------------------------------------} -type family GetStakeDistribution target (m :: * -> *) :: * +type family GetStakeDistribution target block (m :: * -> *) :: * {------------------------------------------------------------------------------- Chain Sync diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index 1ceaa917939..f9d04111fb0 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -29,6 +29,9 @@ module Cardano.Wallet.Primitive.Slotting -- ** Running queries , TimeInterpreter , singleEraInterpreter + , interpreterFromGenesis + , mkTimeInterpreter + , MyInterpreter(..) , Qry -- * Legacy api @@ -66,10 +69,13 @@ import Cardano.Wallet.Primitive.Types , unsafeEpochNo , wholeRange ) +import Control.Exception (throwIO) import Control.Monad ( ap, liftM, (<=<) ) import Control.Monad.IO.Class ( MonadIO, liftIO ) +import Data.Coerce + ( coerce ) import Data.Functor.Identity ( Identity ) import Data.Generics.Internal.VL.Lens @@ -86,10 +92,13 @@ import GHC.Generics ( Generic ) import Numeric.Natural ( Natural ) -import Ouroboros.Consensus.HardFork.History.EraParams - ( EraParams (..), noLowerBoundSafeZone ) +import Ouroboros.Consensus.BlockchainTime.WallClock.Types + ( SystemStart (..) ) +import Ouroboros.Consensus.HardFork.History.Qry + ( Interpreter, mkInterpreter ) import Ouroboros.Consensus.HardFork.History.Summary - ( Summary (..), neverForksSummary ) + ( neverForksSummary ) +import Ouroboros.Consensus.Util.CallStack (HasCallStack) import qualified Cardano.Slotting.Slot as Cardano import qualified Ouroboros.Consensus.BlockchainTime.WallClock.Types as Cardano @@ -206,43 +215,46 @@ slotAtTimeDetailed t = do -- We cannot manually specify when the fetching happens. -- -- This may or may not be what we actually want. -type TimeInterpreter m = forall a. Qry a -> m a --- --- Interpretation -- +-- fixme: this rank-2 type is inconvenient to set up in network layer. +-- fixme: this is backend-specific code -- it should be moved to the shelley package. +type TimeInterpreter m = forall a. Qry a -> m a -data Interpreter xs = Interpreter - { _iSummary :: Summary xs - , _iGenesisStartDate :: StartTime - } +-- | The hardfork query intepreter plus start time information. +data MyInterpreter xs = MyInterpreter SystemStart (Interpreter xs) -- | An 'Interpreter' for a single era, where the slotting from -- @GenesisParameters@ cannot change. -- --- Queries can never fail with @singleEraInterpreter@. -singleEraInterpreter :: GenesisParameters -> TimeInterpreter Identity -singleEraInterpreter gp q = either bomb return $ runQuery q int +-- Queries can never fail with @singleEraInterpreter@. This function will throw +-- a 'PastHorizonException' if they do. +singleEraInterpreter :: HasCallStack => GenesisParameters -> TimeInterpreter Identity +singleEraInterpreter gp = mkTimeInterpreterI gp (mkInterpreter summary) where - bomb x = error $ "singleEraIntepreter: the impossible happened: " <> show x - int = flip Interpreter (gp ^. #getGenesisBlockDate) - $ neverForksSummary - $ EraParams - { eraEpochSize = - Cardano.EpochSize - . fromIntegral - . unEpochLength - $ gp ^. #getEpochLength - - , eraSlotLength = - Cardano.mkSlotLength - . unSlotLength - $ gp ^. #getSlotLength - - , eraSafeZone = - noLowerBoundSafeZone (k * 2) - } - where - k = fromIntegral $ getQuantity $ getEpochStability gp + summary = neverForksSummary sz len + sz = Cardano.EpochSize $ fromIntegral $ unEpochLength $ gp ^. #getEpochLength + len = Cardano.mkSlotLength $ unSlotLength $ gp ^. #getSlotLength + +mkTimeInterpreterI :: HasCallStack => GenesisParameters -> Interpreter xs -> TimeInterpreter Identity +mkTimeInterpreterI gp int q = neverFails $ runQuery (MyInterpreter start int) q + where + start = coerce (gp ^. #getGenesisBlockDate) + + neverFails = either bomb pure + bomb x = error $ "singleEraInterpreter: the impossible happened: " <> show x + +interpreterFromGenesis :: GenesisParameters -> TimeInterpreter IO +interpreterFromGenesis gp = mkTimeInterpreter start (mkInterpreter summary) + where + summary = neverForksSummary sz len + sz = Cardano.EpochSize $ fromIntegral $ unEpochLength $ gp ^. #getEpochLength + len = Cardano.mkSlotLength $ unSlotLength $ gp ^. #getSlotLength + start = gp ^. #getGenesisBlockDate + +mkTimeInterpreter :: StartTime -> Interpreter xs -> TimeInterpreter IO +mkTimeInterpreter start int = either throwIO pure . runQuery mine + where + mine = MyInterpreter (coerce start) int -- | Wrapper around HF.Qry to allow converting times relative to the genesis -- block date to absolute ones @@ -264,11 +276,11 @@ instance Monad Qry where return = pure (>>=) = QBind -runQuery :: (Qry a) -> Interpreter xs -> Either HF.PastHorizonException a -runQuery qry (Interpreter summary (StartTime t0)) = go qry +runQuery :: HasCallStack => MyInterpreter xs -> Qry a -> Either HF.PastHorizonException a +runQuery (MyInterpreter systemStart int) = go where go :: Qry a -> Either HF.PastHorizonException a - go (HardForkQry q) = HF.runQuery q summary + go (HardForkQry q) = HF.interpretQuery int q go (QPure a) = return a go (QBind x f) = do @@ -277,11 +289,9 @@ runQuery qry (Interpreter summary (StartTime t0)) = go qry pure $ Cardano.fromRelativeTime systemStart rel go (UTCTimeToRel utc) -- Cardano.toRelativeTime may throw, so we need this guard: - | utc < t0 = pure Nothing + | utc < getSystemStart systemStart = pure Nothing | otherwise = pure $ Just $ Cardano.toRelativeTime systemStart utc - systemStart = Cardano.SystemStart t0 - -- ----------------------------------------------------------------------------- -- Legacy functions -- These only work for a single era. We need to stop using them diff --git a/lib/core/src/Ouroboros/Network/Client/Wallet.hs b/lib/core/src/Ouroboros/Network/Client/Wallet.hs index ff5179bda6d..d6c01018451 100644 --- a/lib/core/src/Ouroboros/Network/Client/Wallet.hs +++ b/lib/core/src/Ouroboros/Network/Client/Wallet.hs @@ -82,7 +82,7 @@ import Network.TypedProtocol.Pipelined import Numeric.Natural ( Natural ) import Ouroboros.Consensus.Ledger.Abstract - ( Query (..) ) + ( Query ) import Ouroboros.Network.Block ( BlockNo (..) , HasHeader (..) diff --git a/lib/shelley/cardano-wallet-shelley.cabal b/lib/shelley/cardano-wallet-shelley.cabal index ac9b0b8c693..33054f272bb 100644 --- a/lib/shelley/cardano-wallet-shelley.cabal +++ b/lib/shelley/cardano-wallet-shelley.cabal @@ -36,6 +36,7 @@ library , bech32 , bech32-th , binary + , byron-spec-ledger , bytestring , cardano-addresses , cardano-api @@ -55,6 +56,7 @@ library , cryptonite , directory , exceptions + , extra , filepath , fmt , generic-lens @@ -65,6 +67,8 @@ library , network-mux , optparse-applicative , ouroboros-consensus + , ouroboros-consensus-byron + , ouroboros-consensus-cardano , ouroboros-consensus-shelley , ouroboros-network , ouroboros-network-framework @@ -85,6 +89,7 @@ library hs-source-dirs: src exposed-modules: + Cardano.Wallet.Byron.Compatibility Cardano.Wallet.Shelley Cardano.Wallet.Shelley.Api.Server Cardano.Wallet.Shelley.Compatibility diff --git a/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs new file mode 100644 index 00000000000..78eeb753ad9 --- /dev/null +++ b/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs @@ -0,0 +1,511 @@ +{-# LANGUAGE AllowAmbiguousTypes #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DuplicateRecordFields #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE LambdaCase #-} +{-# LANGUAGE NamedFieldPuns #-} +{-# LANGUAGE NumericUnderscores #-} +{-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TupleSections #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} + +-- Orphan instances for {Encode,Decode}Address until we get rid of the +-- Jörmungandr dual support. +{-# OPTIONS_GHC -fno-warn-orphans #-} + +-- | +-- Copyright: © 2020 IOHK +-- License: Apache-2.0 +-- +-- Conversion functions and static chain settings for Byron. + +module Cardano.Wallet.Byron.Compatibility + ( Byron + , ByronBlock + , NodeVersionData + + -- * Chain Parameters + , mainnetVersionData + , testnetVersionData + + , mainnetNetworkParameters + + -- * Genesis + , emptyGenesis + , genesisTip + , genesisBlockFromTxOuts + + -- * Conversions + , toByronHash + , toGenTx + , toPoint + , toSlotInEpoch + + , fromBlockNo + , fromByronBlock + , toByronBlockHeader + , fromByronHash + , fromChainHash + , fromGenesisData + , byronCodecConfig + , fromNetworkMagic + , fromProtocolMagicId + , fromSlotNo + , fromTip + , fromTxAux + , fromTxIn + , fromTxOut + + , protocolParametersFromUpdateState + ) where + +import Prelude + +import Cardano.Binary + ( fromCBOR, serialize' ) +import Cardano.Chain.Block + ( ABlockOrBoundary (..), blockTxPayload ) +import Cardano.Chain.Common + ( BlockCount (..) + , Lovelace + , TxFeePolicy (..) + , TxSizeLinear (..) + , unsafeGetLovelace + ) +import Cardano.Chain.Genesis + ( GenesisData (..), GenesisHash (..), GenesisNonAvvmBalances (..) ) +import Cardano.Chain.MempoolPayload + ( AMempoolPayload (..) ) +import Cardano.Chain.Slotting + ( EpochSlots (..) ) +import Cardano.Chain.Update + ( ProtocolParameters (..) ) +import Cardano.Chain.UTxO + ( Tx (..), TxAux, TxIn (..), TxOut (..), annotateTxAux, taTx, unTxPayload ) +import Cardano.Crypto + ( serializeCborHash ) +import Cardano.Crypto.ProtocolMagic + ( ProtocolMagicId, unProtocolMagicId ) +import Cardano.Wallet.Primitive.Slotting + ( flatSlot, fromFlatSlot ) +import Cardano.Wallet.Unsafe + ( unsafeDeserialiseCbor, unsafeFromHex ) +import Crypto.Hash.Utils + ( blake2b256 ) +import Data.Coerce + ( coerce ) +import Data.Quantity + ( Quantity (..) ) +import Data.Text + ( Text ) +import Data.Time.Clock.POSIX + ( posixSecondsToUTCTime ) +import Data.Word + ( Word16, Word32 ) +import GHC.Stack + ( HasCallStack ) +import Numeric.Natural + ( Natural ) +import Ouroboros.Consensus.Block.Abstract + ( headerPrevHash ) +import Ouroboros.Consensus.Byron.Ledger + ( ByronBlock (..), ByronHash (..), GenTx, fromMempoolPayload ) +import Ouroboros.Consensus.Byron.Ledger.Config + ( CodecConfig (..) ) +import Ouroboros.Consensus.Config.SecurityParam + ( SecurityParam (..) ) +import Ouroboros.Network.Block + ( BlockNo (..) + , ChainHash + , Point (..) + , SlotNo (..) + , Tip (..) + , genesisPoint + , getLegacyTipBlockNo + , getTipPoint + , legacyTip + ) +import Ouroboros.Network.CodecCBORTerm + ( CodecCBORTerm ) +import Ouroboros.Network.Magic + ( NetworkMagic (..) ) +import Ouroboros.Network.NodeToClient + ( NodeToClientVersionData (..), nodeToClientCodecCBORTerm ) +import Ouroboros.Network.Point + ( WithOrigin (..) ) + +import qualified Cardano.Chain.Update as Update +import qualified Cardano.Chain.Update.Validation.Interface as Update +import qualified Cardano.Crypto.Hashing as CC +import qualified Cardano.Wallet.Primitive.Types as W +import qualified Data.ByteString as BS +import qualified Data.ByteString.Lazy as BL +import qualified Data.List.NonEmpty as NE +import qualified Data.Map.Strict as Map +import qualified Ouroboros.Consensus.Block as O +import qualified Ouroboros.Network.Block as O +import qualified Ouroboros.Network.Point as Point + +data Byron + +type NodeVersionData = + (NodeToClientVersionData, CodecCBORTerm Text NodeToClientVersionData) + +-------------------------------------------------------------------------------- +-- +-- Chain Parameters + + +mainnetNetworkParameters :: W.NetworkParameters +mainnetNetworkParameters = W.NetworkParameters + { genesisParameters = W.GenesisParameters + { getGenesisBlockHash = W.Hash $ unsafeFromHex + "5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb" + , getGenesisBlockDate = + W.StartTime $ posixSecondsToUTCTime 1506203091 + , getSlotLength = + W.SlotLength 20 + , getEpochLength = + W.EpochLength 21600 + , getEpochStability = + Quantity 2160 + , getActiveSlotCoefficient = + W.ActiveSlotCoefficient 1.0 + } + , protocolParameters = W.ProtocolParameters + { decentralizationLevel = + minBound + , txParameters = W.TxParameters + { getFeePolicy = + W.LinearFee (Quantity 155381) (Quantity 43.946) (Quantity 0) + , getTxMaxSize = + Quantity 4096 + } + , desiredNumberOfStakePools = 0 + , minimumUTxOvalue = W.Coin 0 + } + } + +-- NOTE +-- For MainNet and TestNet, we can get away with empty genesis blocks with +-- the following assumption: +-- +-- - Users won't ever restore a wallet that has genesis UTxO. +-- +-- This assumption is _true_ for any user using HD wallets (sequential or +-- random) which means, any user of cardano-wallet. +emptyGenesis :: W.GenesisParameters -> W.Block +emptyGenesis gp = W.Block + { transactions = [] + , delegations = [] + , header = W.BlockHeader + { slotNo = + W.SlotNo 0 + , blockHeight = + Quantity 0 + , headerHash = + coerce $ W.getGenesisBlockHash gp + , parentHeaderHash = + W.Hash (BS.replicate 32 0) + } + } + +-------------------------------------------------------------------------------- +-- +-- Genesis + + +genesisTip :: Tip ByronBlock +genesisTip = legacyTip genesisPoint genesisBlockNo + where + -- NOTE: ourobouros-network states that: + -- + -- There /is/ no block number if we are at genesis + -- ('genesisBlockNo' is the block number of the first block on the chain). + -- Usage of this function should be phased out. + genesisBlockNo = BlockNo 0 + +-- | Construct a ("fake") genesis block from genesis transaction outputs. +-- +-- The genesis data on haskell nodes is not a block at all, unlike the block0 on +-- jormungandr. This function is a method to deal with the discrepancy. +genesisBlockFromTxOuts :: W.GenesisParameters -> [W.TxOut] -> W.Block +genesisBlockFromTxOuts gp outs = W.Block + { delegations = [] + , header = W.BlockHeader + { slotNo = + SlotNo 0 + , blockHeight = + Quantity 0 + , headerHash = + coerce $ W.getGenesisBlockHash gp + , parentHeaderHash = + W.Hash (BS.replicate 32 0) + } + , transactions = mkTx <$> outs + } + where + mkTx out@(W.TxOut (W.Address bytes) _) = + W.Tx (W.Hash $ blake2b256 bytes) [] [out] mempty + +-------------------------------------------------------------------------------- +-- +-- Network Parameters + +-- | Settings for configuring a MainNet network client +mainnetVersionData + :: NodeVersionData +mainnetVersionData = + ( NodeToClientVersionData + { networkMagic = + NetworkMagic $ fromIntegral $ W.getProtocolMagic W.mainnetMagic + } + , nodeToClientCodecCBORTerm + ) + +-- | Settings for configuring a TestNet network client +testnetVersionData + :: W.ProtocolMagic + -> NodeVersionData +testnetVersionData pm = + ( NodeToClientVersionData + { networkMagic = + NetworkMagic $ fromIntegral $ W.getProtocolMagic pm + } + , nodeToClientCodecCBORTerm + ) + +-------------------------------------------------------------------------------- +-- +-- Type Conversions + +-- fixme: maybe just toByronHash = ByronHash . CC.unsafeHashFromBytes +toByronHash :: W.Hash "BlockHeader" -> ByronHash +toByronHash (W.Hash bytes) = + case CC.hashFromBytes bytes of + Just h -> + ByronHash h + Nothing -> + error "unsafeHash: failed to convert bytes to hash?" + +toEpochSlots :: W.EpochLength -> EpochSlots +toEpochSlots = + EpochSlots . fromIntegral . W.unEpochLength + +-- | Magic value for the absence of a block. +hashOfNoParent :: W.Hash "BlockHeader" +hashOfNoParent = W.Hash . BS.pack $ replicate 0 32 + +toPoint + :: W.Hash "Genesis" + -> W.BlockHeader + -> Point ByronBlock +toPoint genesisH (W.BlockHeader sl _ h _) + | h == (coerce genesisH) = O.GenesisPoint + | otherwise = O.Point $ Point.block sl (toByronHash h) + +toSlotInEpoch :: W.EpochLength -> W.SlotId -> SlotNo +toSlotInEpoch epLength = + SlotNo . flatSlot epLength + +-- | SealedTx are the result of rightfully constructed byron transactions so, it +-- is relatively safe to unserialize them from CBOR. +toGenTx :: HasCallStack => W.SealedTx -> GenTx ByronBlock +toGenTx = + fromMempoolPayload + . MempoolTx + . annotateTxAux + . unsafeDeserialiseCbor fromCBOR + . BL.fromStrict + . W.getSealedTx + +byronCodecConfig :: W.GenesisParameters -> CodecConfig ByronBlock +byronCodecConfig W.GenesisParameters{getEpochLength,getEpochStability} = + ByronCodecConfig (toEpochSlots getEpochLength) (SecurityParam k) + where + k = fromIntegral . getQuantity $ getEpochStability + +fromByronBlock :: W.GenesisParameters -> ByronBlock -> W.Block +fromByronBlock gp byronBlk = case byronBlockRaw byronBlk of + ABOBBlock blk -> + mkBlock $ fromTxAux <$> unTxPayload (blockTxPayload blk) + ABOBBoundary _ -> + mkBlock [] + where + mkBlock :: [W.Tx] -> W.Block + mkBlock txs = W.Block + { header = toByronBlockHeader gp byronBlk + , transactions = txs + , delegations = [] + } + +toByronBlockHeader + :: W.GenesisParameters + -> ByronBlock + -> W.BlockHeader +toByronBlockHeader gp blk = W.BlockHeader + { slotNo = + O.blockSlot blk + , blockHeight = + fromBlockNo $ O.blockNo blk + , headerHash = + fromByronHash $ O.blockHash blk + , parentHeaderHash = + fromChainHash (W.getGenesisBlockHash gp) $ + headerPrevHash cfg (O.getHeader blk) + } + where + cfg = byronCodecConfig gp + +fromTxAux :: TxAux -> W.Tx +fromTxAux txAux = case taTx txAux of + tx@(UnsafeTx inputs outputs _attributes) -> W.Tx + { txId = W.Hash $ CC.hashToBytes $ serializeCborHash tx + + -- TODO: Review 'W.Tx' to not require resolved inputs but only inputs + , resolvedInputs = + (, W.Coin 0) . fromTxIn <$> NE.toList inputs + + , outputs = + fromTxOut <$> NE.toList outputs + + , withdrawals = + mempty + } + +fromTxIn :: TxIn -> W.TxIn +fromTxIn (TxInUtxo id_ ix) = W.TxIn + { inputId = W.Hash $ CC.hashToBytes id_ + , inputIx = ix + } + +fromTxOut :: TxOut -> W.TxOut +fromTxOut (TxOut addr coin) = W.TxOut + { address = W.Address (serialize' addr) + , coin = W.Coin (unsafeGetLovelace coin) + } + +fromByronHash :: ByronHash -> W.Hash "BlockHeader" +fromByronHash = + W.Hash . CC.hashToBytes . unByronHash + +fromChainHash :: W.Hash "Genesis" -> ChainHash ByronBlock -> W.Hash "BlockHeader" +fromChainHash genesisHash = \case + O.GenesisHash -> coerce genesisHash + O.BlockHash h -> fromByronHash h + +fromSlotNo :: W.EpochLength -> SlotNo -> W.SlotId +fromSlotNo epLength (SlotNo sl) = + fromFlatSlot epLength sl + +-- FIXME unsafe conversion (Word64 -> Word32) +fromBlockNo :: BlockNo -> Quantity "block" Word32 +fromBlockNo (BlockNo h) = + Quantity (fromIntegral h) + +fromTip :: W.Hash "Genesis" -> Tip ByronBlock -> W.BlockHeader +fromTip genesisHash tip = case getPoint (getTipPoint tip) of + Origin -> W.BlockHeader + { slotNo = W.SlotNo 0 + , blockHeight = Quantity 0 + , headerHash = coerce genesisHash + , parentHeaderHash = hashOfNoParent + } + At blk -> W.BlockHeader + { slotNo = Point.blockPointSlot blk + , blockHeight = fromBlockNo $ getLegacyTipBlockNo tip + , headerHash = fromByronHash $ Point.blockPointHash blk + -- TODO + -- We only use the parentHeaderHash in the + -- 'Cardano.Wallet.Network.BlockHeaders' chain follower only required for + -- Jörmungandr, this is therefore useless to have in 'normal' BlockHeader + -- + -- Yet, since we also serialize these to the database, this requires + -- some non-trivial changes. Not fixing this right now is also a + -- possibility. + , parentHeaderHash = W.Hash "parentHeaderHash - unused in Byron" + } + +fromTxFeePolicy :: TxFeePolicy -> W.FeePolicy +fromTxFeePolicy (TxFeePolicyTxSizeLinear (TxSizeLinear a b)) = + W.LinearFee + (Quantity (lovelaceToDouble a)) + (Quantity (rationalToDouble b)) + (Quantity 0) -- certificates do not exist for Byron + where + lovelaceToDouble :: Lovelace -> Double + lovelaceToDouble = fromIntegral . unsafeGetLovelace + + rationalToDouble :: Rational -> Double + rationalToDouble = fromRational + +fromSlotDuration :: Natural -> W.SlotLength +fromSlotDuration = + W.SlotLength . toEnum . (*1_000_000_000) . fromIntegral + +-- NOTE: Unsafe conversion from Word64 -> Word32 here. +-- +-- Although... Word64 for `k`? For real? +fromBlockCount :: BlockCount -> W.EpochLength +fromBlockCount (BlockCount k) = + W.EpochLength (10 * fromIntegral k) + +-- NOTE: Unsafe conversion from Natural -> Word16 +fromMaxTxSize :: Natural -> Quantity "byte" Word16 +fromMaxTxSize = + Quantity . fromIntegral + +protocolParametersFromPP :: Update.ProtocolParameters -> W.ProtocolParameters +protocolParametersFromPP pp = W.ProtocolParameters + { decentralizationLevel = minBound + , txParameters = W.TxParameters + { getFeePolicy = fromTxFeePolicy $ Update.ppTxFeePolicy pp + , getTxMaxSize = fromMaxTxSize $ Update.ppMaxTxSize pp + } + , desiredNumberOfStakePools = 0 + , minimumUTxOvalue = W.Coin 0 + } + +-- | Extract the protocol parameters relevant to the wallet out of the +-- cardano-chain update state record. +protocolParametersFromUpdateState :: Update.State -> W.ProtocolParameters +protocolParametersFromUpdateState = + protocolParametersFromPP . Update.adoptedProtocolParameters + +-- | Convert non AVVM balances to genesis UTxO. +fromNonAvvmBalances :: GenesisNonAvvmBalances -> [W.TxOut] +fromNonAvvmBalances (GenesisNonAvvmBalances m) = + fromTxOut . uncurry TxOut <$> Map.toList m + +-- | Convert genesis data into blockchain params and an initial set of UTxO +fromGenesisData :: (GenesisData, GenesisHash) -> (W.NetworkParameters, [W.TxOut]) +fromGenesisData (genesisData, genesisHash) = + ( W.NetworkParameters + { genesisParameters = W.GenesisParameters + { getGenesisBlockHash = + W.Hash . CC.hashToBytes . unGenesisHash $ genesisHash + , getGenesisBlockDate = + W.StartTime . gdStartTime $ genesisData + , getSlotLength = + fromSlotDuration . ppSlotDuration . gdProtocolParameters $ genesisData + , getEpochLength = + fromBlockCount . gdK $ genesisData + , getEpochStability = + Quantity . fromIntegral . unBlockCount . gdK $ genesisData + , getActiveSlotCoefficient = + W.ActiveSlotCoefficient 1.0 + } + , protocolParameters = + protocolParametersFromPP . gdProtocolParameters $ genesisData + } + , fromNonAvvmBalances . gdNonAvvmBalances $ genesisData + ) + +fromNetworkMagic :: NetworkMagic -> W.ProtocolMagic +fromNetworkMagic (NetworkMagic magic) = + W.ProtocolMagic (fromIntegral magic) + +fromProtocolMagicId :: ProtocolMagicId -> W.ProtocolMagic +fromProtocolMagicId = W.ProtocolMagic . fromIntegral . unProtocolMagicId diff --git a/lib/shelley/src/Cardano/Wallet/Shelley.hs b/lib/shelley/src/Cardano/Wallet/Shelley.hs index 2025f7d7d33..d8c17eabaf1 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley.hs @@ -45,6 +45,8 @@ module Cardano.Wallet.Shelley import Prelude +import Cardano.Api.Typed + ( Shelley ) import Cardano.BM.Data.Severity ( Severity (..) ) import Cardano.BM.Data.Tracer @@ -114,7 +116,7 @@ import Cardano.Wallet.Registry import Cardano.Wallet.Shelley.Api.Server ( server ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley, ShelleyBlock, fromNetworkMagic, fromShelleyBlock ) + ( CardanoBlock, TPraosStandardCrypto, fromCardanoBlock, fromNetworkMagic ) import Cardano.Wallet.Shelley.Network ( NetworkLayerLog, withNetworkLayer ) import Cardano.Wallet.Shelley.Pools @@ -308,7 +310,7 @@ serveWallet withPoolsMonitoring :: Maybe FilePath -> GenesisParameters - -> NetworkLayer IO t ShelleyBlock + -> NetworkLayer IO t (CardanoBlock TPraosStandardCrypto) -> (StakePoolLayer -> IO a) -> IO a withPoolsMonitoring dir gp nl action = @@ -331,7 +333,7 @@ serveWallet , WalletKey k ) => TransactionLayer t k - -> NetworkLayer IO t ShelleyBlock + -> NetworkLayer IO t (CardanoBlock TPraosStandardCrypto) -> (WorkerCtx (ApiLayer s t k) -> WalletId -> IO ()) -> IO (ApiLayer s t k) apiLayer tl nl coworker = do @@ -351,8 +353,8 @@ serveWallet databaseDir Server.newApiLayer walletEngineTracer params nl' tl db coworker where - gp@GenesisParameters{getGenesisBlockHash} = genesisParameters np - nl' = fromShelleyBlock getGenesisBlockHash <$> nl + gp = genesisParameters np + nl' = fromCardanoBlock gp <$> nl -- FIXME: reduce duplication (see Cardano.Wallet.Jormungandr) handleApiServerStartupError :: ListenError -> IO ExitCode @@ -426,7 +428,7 @@ data Tracers' f = Tracers , poolsEngineTracer :: f (WorkerLog Text StakePoolLog) , poolsDbTracer :: f DBLog , ntpClientTracer :: f NtpTrace - , networkTracer :: f NetworkLayerLog + , networkTracer :: f (NetworkLayerLog TPraosStandardCrypto) } -- | All of the Shelley 'Tracer's. diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index a11444645b5..c8f5eb6dd05 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -24,9 +24,7 @@ module Cardano.Wallet.Shelley.Compatibility ( Shelley - , ShelleyBlock - , Delegations - , RewardAccounts + , CardanoBlock , NodeVersionData , TPraosStandardCrypto @@ -40,9 +38,9 @@ module Cardano.Wallet.Shelley.Compatibility , genesisTip -- * Conversions - , toShelleyHash + , toCardanoHash , toEpochSize - , toGenTx + , toShelleyGenTx , toPoint , toCardanoTxId , toCardanoTxIn @@ -65,18 +63,21 @@ module Cardano.Wallet.Shelley.Compatibility , getProducer , fromBlockNo - , fromShelleyBlock - , fromShelleyBlock' - , toBlockHeader + , fromCardanoBlock + , poolCertsFromShelleyBlock + , toCardanoBlockHeader + , toShelleyBlockHeader , fromShelleyHash - , fromPrevHash + , fromCardanoHash , fromChainHash + , fromPrevHash + , fromShelleyChainHash , fromGenesisData , fromNetworkMagic , toByronNetworkMagic , fromTip , fromTip' - , fromPParams + , fromShelleyPParams , fromNetworkDiscriminant -- * Internal Conversions @@ -92,10 +93,12 @@ import Cardano.Address.Derivation ( XPub, xpubPublicKey ) import Cardano.Api.Shelley.Genesis ( ShelleyGenesis (..) ) +import Cardano.Api.Typed + ( Shelley ) import Cardano.Binary ( fromCBOR, serialize' ) import Cardano.Crypto.Hash.Class - ( Hash (UnsafeHash), getHash ) + ( Hash (UnsafeHash), hashToBytes ) import Cardano.Slotting.Slot ( EpochNo (..), EpochSize (..) ) import Cardano.Wallet.Api.Types @@ -104,6 +107,8 @@ import Cardano.Wallet.Api.Types , EncodeAddress (..) , EncodeStakeAddress (..) ) +import Cardano.Wallet.Byron.Compatibility + ( fromByronBlock, toByronBlockHeader ) import Cardano.Wallet.Primitive.AddressDerivation ( NetworkDiscriminant (..) ) import Cardano.Wallet.Primitive.Types @@ -137,6 +142,8 @@ import Data.ByteString ( ByteString ) import Data.ByteString.Base58 ( bitcoinAlphabet, decodeBase58, encodeBase58 ) +import Data.ByteString.Short + ( fromShort, toShort ) import Data.Coerce ( coerce ) import Data.Foldable @@ -144,7 +151,7 @@ import Data.Foldable import Data.Map.Strict ( Map ) import Data.Maybe - ( fromMaybe, isJust, mapMaybe ) + ( isJust, mapMaybe ) import Data.Proxy ( Proxy ) import Data.Quantity @@ -163,8 +170,14 @@ import GHC.Stack ( HasCallStack ) import Numeric.Natural ( Natural ) +import Ouroboros.Consensus.Cardano.Block + ( CardanoBlock, CardanoEras, CardanoGenTx, GenTx (..), HardForkBlock (..) ) +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras + ( OneEraHash (..) ) import Ouroboros.Consensus.Shelley.Ledger - ( GenTx, ShelleyHash (..) ) + ( Crypto, ShelleyHash (..) ) +import Ouroboros.Consensus.Shelley.Ledger.Block + ( ShelleyBlock (..) ) import Ouroboros.Consensus.Shelley.Protocol.Crypto ( TPraosStandardCrypto ) import Ouroboros.Network.Block @@ -194,7 +207,7 @@ import Shelley.Spec.Ledger.BaseTypes import Type.Reflection ( Typeable, typeRep ) -import qualified Cardano.Api as Cardano +import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Byron.Codec.Cbor as CBOR import qualified Cardano.Chain.Common as Byron import qualified Cardano.Wallet.Primitive.Types as W @@ -217,29 +230,15 @@ import qualified Shelley.Spec.Ledger.Credential as SL import qualified Shelley.Spec.Ledger.Delegation.Certificates as SL import qualified Shelley.Spec.Ledger.Genesis as SL import qualified Shelley.Spec.Ledger.Keys as SL -import qualified Shelley.Spec.Ledger.LedgerState as SL import qualified Shelley.Spec.Ledger.PParams as SL import qualified Shelley.Spec.Ledger.Scripts as SL import qualified Shelley.Spec.Ledger.Tx as SL import qualified Shelley.Spec.Ledger.TxData as SL import qualified Shelley.Spec.Ledger.UTxO as SL -data Shelley - type NodeVersionData = (NodeToClientVersionData, CodecCBORTerm Text NodeToClientVersionData) --- | Concrete block type, using shelley crypto. -type ShelleyBlock = O.ShelleyBlock TPraosStandardCrypto - --- | Shorthand for shelley delegations. Maps staking credentials to stake pool --- key hash. -type Delegations = - Map Cardano.ShelleyCredentialStaking Cardano.ShelleyVerificationKeyHashStakePool - --- | Concrete type for a shelley reward account. -type RewardAccounts = SL.RewardAccounts TPraosStandardCrypto - -------------------------------------------------------------------------------- -- -- Chain Parameters @@ -273,7 +272,7 @@ emptyGenesis gp = W.Block -- Genesis -genesisTip :: Tip (O.ShelleyBlock TPraosStandardCrypto) +genesisTip :: Tip (CardanoBlock sc) genesisTip = legacyTip genesisPoint genesisBlockNo where -- NOTE: ourobouros-network states that: @@ -320,10 +319,9 @@ hashOfNoParent :: W.Hash "BlockHeader" hashOfNoParent = W.Hash . BS.pack $ replicate 32 0 --- fixme: maybe just toShelleyHash = ShelleyHash . CC.unsafeHashFromBytes -toShelleyHash :: W.Hash "BlockHeader" -> ShelleyHash c -toShelleyHash (W.Hash bytes) = - ShelleyHash $ SL.HashHeader $ UnsafeHash bytes +toCardanoHash :: W.Hash "BlockHeader" -> OneEraHash (CardanoEras sc) +toCardanoHash (W.Hash bytes) = + OneEraHash $ toShort bytes toEpochSize :: W.EpochLength -> EpochSize toEpochSize = @@ -332,70 +330,89 @@ toEpochSize = toPoint :: W.Hash "Genesis" -> W.BlockHeader - -> Point ShelleyBlock -toPoint genesisH (W.BlockHeader sl _ h _) + -> Point (CardanoBlock sc) +toPoint genesisH (W.BlockHeader sl _ (W.Hash h) _) | h == (coerce genesisH) = O.GenesisPoint - | otherwise = O.Point $ Point.block sl (toShelleyHash h) + | otherwise = O.BlockPoint sl (OneEraHash $ toShort h) -toBlockHeader - :: W.Hash "Genesis" - -> ShelleyBlock +toCardanoBlockHeader + :: O.Crypto sc + => W.GenesisParameters + -> CardanoBlock sc + -> W.BlockHeader +toCardanoBlockHeader gp = \case + BlockByron blk -> + toByronBlockHeader gp blk + BlockShelley blk -> + toShelleyBlockHeader (W.getGenesisBlockHash gp) blk + +toShelleyBlockHeader + :: O.Crypto sc + => W.Hash "Genesis" + -> ShelleyBlock sc -> W.BlockHeader -toBlockHeader genesisHash blk = +toShelleyBlockHeader genesisHash blk = let - O.ShelleyBlock (SL.Block (SL.BHeader header _) _) headerHash = blk + ShelleyBlock (SL.Block (SL.BHeader header _) _) headerHash = blk in - W.BlockHeader - { slotNo = SL.bheaderSlotNo header - , blockHeight = - fromBlockNo $ SL.bheaderBlockNo header - , headerHash = - fromShelleyHash headerHash - , parentHeaderHash = - fromPrevHash (coerce genesisHash) $ - SL.bheaderPrev header - } + W.BlockHeader + { slotNo = + SL.bheaderSlotNo header + , blockHeight = + fromBlockNo $ SL.bheaderBlockNo header + , headerHash = + fromShelleyHash headerHash + , parentHeaderHash = + fromPrevHash (coerce genesisHash) $ + SL.bheaderPrev header + } -getProducer :: ShelleyBlock -> W.PoolId -getProducer blk = - let - O.ShelleyBlock (SL.Block (SL.BHeader header _) _) _ = blk - in - fromPoolKeyHash $ SL.hashKey (SL.bheaderVk header) +getProducer :: O.Crypto sc => ShelleyBlock sc -> W.PoolId +getProducer (ShelleyBlock (SL.Block (SL.BHeader header _) _) _) = + fromPoolKeyHash $ SL.hashKey (SL.bheaderVk header) -fromShelleyBlock - :: W.Hash "Genesis" - -> ShelleyBlock +fromCardanoBlock + :: O.Crypto sc + => W.GenesisParameters + -> CardanoBlock sc -> W.Block -fromShelleyBlock genesisHash blk = - let - O.ShelleyBlock (SL.Block _ txSeq) _ = blk - SL.TxSeq txs' = txSeq - (txs, certs, _) = unzip3 $ map fromShelleyTx $ toList txs' - - in W.Block - { header = toBlockHeader genesisHash blk - , transactions = txs - , delegations = mconcat certs - } +fromCardanoBlock gp = \case + BlockByron blk -> + fromByronBlock gp blk + BlockShelley blk -> + fromShelleyBlock blk + where + fromShelleyBlock blk@(ShelleyBlock (SL.Block _ (SL.TxSeq txs')) _) = + let + (txs, certs, _) = unzip3 $ map fromShelleyTx $ toList txs' + + in W.Block + { header = toShelleyBlockHeader (W.getGenesisBlockHash gp) blk + , transactions = txs + , delegations = mconcat certs + } -fromShelleyBlock' - :: ShelleyBlock +poolCertsFromShelleyBlock + :: O.Crypto sc + => ShelleyBlock sc -> (W.SlotNo, [W.PoolCertificate]) -fromShelleyBlock' blk = +poolCertsFromShelleyBlock blk = let - O.ShelleyBlock (SL.Block (SL.BHeader header _) txSeq) _ = blk + ShelleyBlock (SL.Block (SL.BHeader header _) txSeq) _ = blk SL.TxSeq txs' = txSeq (_, _, certs) = unzip3 $ map fromShelleyTx $ toList txs' in (SL.bheaderSlotNo header, mconcat certs) fromShelleyHash :: ShelleyHash c -> W.Hash "BlockHeader" -fromShelleyHash (ShelleyHash (SL.HashHeader h)) = W.Hash (getHash h) +fromShelleyHash (ShelleyHash (SL.HashHeader h)) = W.Hash (hashToBytes h) + +fromCardanoHash :: O.HeaderHash (CardanoBlock sc) -> W.Hash "BlockHeader" +fromCardanoHash = W.Hash . fromShort . getOneEraHash fromPrevHash :: W.Hash "BlockHeader" - -> SL.PrevHash TPraosStandardCrypto + -> SL.PrevHash sc -> W.Hash "BlockHeader" fromPrevHash genesisHash = \case SL.GenesisHash -> genesisHash @@ -403,9 +420,17 @@ fromPrevHash genesisHash = \case fromChainHash :: W.Hash "Genesis" - -> ChainHash ShelleyBlock + -> ChainHash (CardanoBlock sc) -> W.Hash "BlockHeader" fromChainHash genesisHash = \case + O.GenesisHash -> coerce genesisHash + O.BlockHash (OneEraHash h) -> W.Hash $ fromShort h + +fromShelleyChainHash + :: W.Hash "Genesis" + -> ChainHash (ShelleyBlock sc) + -> W.Hash "BlockHeader" +fromShelleyChainHash genesisHash = \case O.GenesisHash -> coerce genesisHash O.BlockHash h -> fromShelleyHash h @@ -414,9 +439,12 @@ fromBlockNo :: BlockNo -> Quantity "block" Word32 fromBlockNo (BlockNo h) = Quantity (fromIntegral h) +fromTip' :: W.GenesisParameters -> Tip (CardanoBlock sc) -> W.BlockHeader +fromTip' gp = fromTip (W.getGenesisBlockHash gp) + fromTip :: W.Hash "Genesis" - -> Tip ShelleyBlock + -> Tip (CardanoBlock sc) -> W.BlockHeader fromTip genesisHash tip = case getPoint (getTipPoint tip) of Origin -> W.BlockHeader @@ -428,7 +456,7 @@ fromTip genesisHash tip = case getPoint (getTipPoint tip) of At blk -> W.BlockHeader { slotNo = Point.blockPointSlot blk , blockHeight = fromBlockNo $ getLegacyTipBlockNo tip - , headerHash = fromShelleyHash $ Point.blockPointHash blk + , headerHash = fromCardanoHash $ Point.blockPointHash blk -- TODO -- We only use the parentHeaderHash in the -- 'Cardano.Wallet.Network.BlockHeaders' chain follower only required for @@ -440,20 +468,13 @@ fromTip genesisHash tip = case getPoint (getTipPoint tip) of , parentHeaderHash = W.Hash "parentHeaderHash - unused in Shelley" } -fromTip' :: W.GenesisParameters -> Tip ShelleyBlock -> W.BlockHeader -fromTip' gp = fromTip getGenesisBlockHash - where - W.GenesisParameters - { getGenesisBlockHash - } = gp - -- NOTE: Unsafe conversion from Natural -> Word16 fromMaxTxSize :: Natural -> Quantity "byte" Word16 fromMaxTxSize = Quantity . fromIntegral -fromPParams :: SL.PParams -> W.ProtocolParameters -fromPParams pp = W.ProtocolParameters +fromShelleyPParams :: SL.PParams -> W.ProtocolParameters +fromShelleyPParams pp = W.ProtocolParameters { decentralizationLevel = decentralizationLevelFromPParams pp , txParameters = @@ -499,14 +520,17 @@ txParametersFromPParams txParametersFromPParams pp = W.TxParameters { getFeePolicy = W.LinearFee (Quantity (naturalToDouble (SL._minfeeB pp))) - (Quantity (fromIntegral (SL._minfeeA pp))) - (Quantity (fromIntegral (SL._keyDeposit pp))) + (Quantity (naturalToDouble (SL._minfeeA pp))) + (Quantity (coinToDouble (SL._keyDeposit pp))) , getTxMaxSize = fromMaxTxSize $ SL._maxTxSize pp } where naturalToDouble :: Natural -> Double naturalToDouble = fromIntegral + coinToDouble :: SL.Coin -> Double + coinToDouble (SL.Coin c) = fromIntegral c + desiredNumberOfStakePoolsFromPParams :: SL.PParams -> Word16 @@ -515,12 +539,13 @@ desiredNumberOfStakePoolsFromPParams pp = fromIntegral (SL._nOpt pp) minimumUTxOvalueFromPParams :: SL.PParams -> W.Coin -minimumUTxOvalueFromPParams pp = W.Coin . fromIntegral $ SL._minUTxOValue pp +minimumUTxOvalueFromPParams pp = toWalletCoin $ SL._minUTxOValue pp -- | Convert genesis data into blockchain params and an initial set of UTxO fromGenesisData - :: ShelleyGenesis TPraosStandardCrypto - -> [(SL.Addr TPraosStandardCrypto, SL.Coin)] + :: forall crypto. (O.Crypto crypto) + => ShelleyGenesis crypto + -> [(SL.Addr crypto, SL.Coin)] -> (W.NetworkParameters, W.Block) fromGenesisData g initialFunds = ( W.NetworkParameters @@ -537,7 +562,7 @@ fromGenesisData g initialFunds = , getActiveSlotCoefficient = W.ActiveSlotCoefficient . fromRational . sgActiveSlotsCoeff $ g } - , protocolParameters = fromPParams . sgProtocolParams $ g + , protocolParameters = fromShelleyPParams . sgProtocolParams $ g } , genesisBlockFromTxOuts initialFunds ) @@ -556,7 +581,7 @@ fromGenesisData g initialFunds = -- block0 on jormungandr. This function is a method to deal with the -- discrepancy. genesisBlockFromTxOuts - :: [(SL.Addr TPraosStandardCrypto, SL.Coin)] -> W.Block + :: [(SL.Addr crypto, SL.Coin)] -> W.Block genesisBlockFromTxOuts outs = W.Block { delegations = [] , header = W.BlockHeader @@ -579,7 +604,7 @@ fromGenesisData g initialFunds = mempty where W.TxIn pseudoHash _ = fromShelleyTxIn $ - SL.initialFundsPseudoTxIn @TPraosStandardCrypto addr + SL.initialFundsPseudoTxIn @crypto addr fromNetworkMagic :: NetworkMagic -> W.ProtocolMagic fromNetworkMagic (NetworkMagic magic) = @@ -590,10 +615,10 @@ fromNetworkMagic (NetworkMagic magic) = -- fromPoolId :: SL.KeyHash 'SL.StakePool crypto -> W.PoolId -fromPoolId (SL.KeyHash x) = W.PoolId $ getHash x +fromPoolId (SL.KeyHash x) = W.PoolId $ hashToBytes x fromPoolDistr - :: SL.PoolDistr TPraosStandardCrypto + :: SL.PoolDistr crypto -> Map W.PoolId Percentage fromPoolDistr = Map.map (unsafeMkPercentage . fst) @@ -602,10 +627,10 @@ fromPoolDistr = -- NOTE: This function disregards results that are using staking keys fromNonMyopicMemberRewards - :: O.NonMyopicMemberRewards TPraosStandardCrypto + :: O.NonMyopicMemberRewards crypto -> Map (Either W.Coin W.ChimericAccount) (Map W.PoolId (Quantity "lovelace" Word64)) fromNonMyopicMemberRewards = - Map.map (Map.map (Quantity . fromIntegral) . Map.mapKeys fromPoolId) + Map.map (Map.map lovelaceFromCoin . Map.mapKeys fromPoolId) . Map.mapKeys (bimap fromShelleyCoin fromStakeCredential) . O.unNonMyopicMemberRewards @@ -622,22 +647,26 @@ optimumNumberOfPools = unsafeConvert . SL._nOpt -- | SealedTx are the result of rightfully constructed shelley transactions so, it -- is relatively safe to unserialize them from CBOR. -toGenTx :: HasCallStack => W.SealedTx -> GenTx ShelleyBlock -toGenTx = unsafeDeserialiseCbor fromCBOR +toShelleyGenTx + :: (HasCallStack, Crypto c) + => W.SealedTx + -> CardanoGenTx c +toShelleyGenTx = GenTxShelley + . unsafeDeserialiseCbor fromCBOR . BL.fromStrict . W.getSealedTx fromShelleyTxId :: SL.TxId crypto -> W.Hash "Tx" -fromShelleyTxId (SL.TxId (UnsafeHash h)) = W.Hash h +fromShelleyTxId (SL.TxId (UnsafeHash h)) = W.Hash $ fromShort h -fromShelleyTxIn :: SL.TxIn crypto -> W.TxIn +fromShelleyTxIn :: Crypto crypto => SL.TxIn crypto -> W.TxIn fromShelleyTxIn (SL.TxIn txid ix) = W.TxIn (fromShelleyTxId txid) (unsafeCast ix) where unsafeCast :: Natural -> Word32 unsafeCast = fromIntegral -fromShelleyTxOut :: SL.TxOut crypto -> W.TxOut +fromShelleyTxOut :: Crypto crypto => SL.TxOut crypto -> W.TxOut fromShelleyTxOut (SL.TxOut addr amount) = W.TxOut (fromShelleyAddress addr) (fromShelleyCoin amount) @@ -660,7 +689,8 @@ toShelleyCoin (W.Coin c) = SL.Coin $ safeCast c -- NOTE: For resolved inputs we have to pass in a dummy value of 0. fromShelleyTx - :: SL.Tx TPraosStandardCrypto + :: Crypto crypto + => SL.Tx crypto -> ( W.Tx , [W.DelegationCertificate] , [W.PoolCertificate] @@ -675,14 +705,14 @@ fromShelleyTx (SL.Tx bod@(SL.TxBody ins outs certs wdrls _ _ _ _) _ _) = , mapMaybe fromShelleyRegistrationCert (toList certs) ) -fromShelleyWdrl :: SL.Wdrl TPraosStandardCrypto -> Map W.ChimericAccount W.Coin +fromShelleyWdrl :: SL.Wdrl crypto -> Map W.ChimericAccount W.Coin fromShelleyWdrl (SL.Wdrl wdrl) = Map.fromList $ bimap (fromStakeCredential . SL.getRwdCred) fromShelleyCoin <$> Map.toList wdrl -- Convert & filter Shelley certificate into delegation certificate. Returns -- 'Nothing' if certificates aren't delegation certificate. fromShelleyDelegationCert - :: SL.DCert TPraosStandardCrypto + :: SL.DCert crypto -> Maybe W.DelegationCertificate fromShelleyDelegationCert = \case SL.DCertDeleg (SL.Delegate delegation) -> @@ -702,7 +732,7 @@ fromShelleyDelegationCert = \case -- Convert & filter Shelley certificate into delegation certificate. Returns -- 'Nothing' if certificates aren't delegation certificate. fromShelleyRegistrationCert - :: SL.DCert TPraosStandardCrypto + :: SL.DCert crypto -> Maybe (W.PoolCertificate) fromShelleyRegistrationCert = \case SL.DCertPool (SL.RegPool pp) -> Just $ Registration @@ -710,8 +740,8 @@ fromShelleyRegistrationCert = \case { W.poolId = fromPoolKeyHash $ SL._poolPubKey pp , W.poolOwners = fromOwnerKeyHash <$> Set.toList (SL._poolOwners pp) , W.poolMargin = fromUnitInterval (SL._poolMargin pp) - , W.poolCost = Quantity $ fromIntegral (SL._poolCost pp) - , W.poolPledge = Quantity $ fromIntegral (SL._poolPledge pp) + , W.poolCost = lovelaceFromCoin (SL._poolCost pp) + , W.poolPledge = lovelaceFromCoin (SL._poolPledge pp) , W.poolMetadata = fromPoolMetaData <$> strictMaybeToMaybe (SL._poolMD pp) } ) @@ -724,29 +754,40 @@ fromShelleyRegistrationCert = \case SL.DCertGenesis{} -> Nothing SL.DCertMir{} -> Nothing +lovelaceFromCoin :: SL.Coin -> Quantity "lovelace" Word64 +lovelaceFromCoin = Quantity . unsafeCoinToWord64 + +toWalletCoin :: SL.Coin -> W.Coin +toWalletCoin = W.Coin . unsafeCoinToWord64 + +-- | The reverse of 'word64ToCoin', without overflow checks. +unsafeCoinToWord64 :: SL.Coin -> Word64 +unsafeCoinToWord64 (SL.Coin c) = fromIntegral c + fromPoolMetaData :: SL.PoolMetaData -> (W.StakePoolMetadataUrl, W.StakePoolMetadataHash) fromPoolMetaData meta = ( W.StakePoolMetadataUrl (urlToText (SL._poolMDUrl meta)) , W.StakePoolMetadataHash (SL._poolMDHash meta) ) + -- | Convert a stake credentials to a 'ChimericAccount' type. Unlike with -- Jörmungandr, the Chimeric payload doesn't represent a public key but a HASH -- of a public key. -fromStakeCredential :: Cardano.ShelleyCredentialStaking -> W.ChimericAccount +fromStakeCredential :: SL.Credential 'SL.Staking crypto -> W.ChimericAccount fromStakeCredential = \case SL.ScriptHashObj (SL.ScriptHash h) -> - W.ChimericAccount (getHash h) + W.ChimericAccount (hashToBytes h) SL.KeyHashObj (SL.KeyHash h) -> - W.ChimericAccount (getHash h) + W.ChimericAccount (hashToBytes h) -fromPoolKeyHash :: SL.KeyHash rol TPraosStandardCrypto -> W.PoolId +fromPoolKeyHash :: SL.KeyHash rol sc -> W.PoolId fromPoolKeyHash (SL.KeyHash h) = - W.PoolId (getHash h) + W.PoolId (hashToBytes h) -fromOwnerKeyHash :: SL.KeyHash 'SL.Staking TPraosStandardCrypto -> W.PoolOwner +fromOwnerKeyHash :: SL.KeyHash 'SL.Staking crypto -> W.PoolOwner fromOwnerKeyHash (SL.KeyHash h) = - W.PoolOwner (getHash h) + W.PoolOwner (hashToBytes h) fromUnitInterval :: HasCallStack => SL.UnitInterval -> Percentage fromUnitInterval x = @@ -775,7 +816,7 @@ toByronNetworkMagic pm@(W.ProtocolMagic magic) = Byron.NetworkTestnet (fromIntegral magic) -- NOTE: Arguably breaks naming conventions. Perhaps fromCardanoSignedTx instead -toSealed :: SL.Tx TPraosStandardCrypto -> (W.Tx, W.SealedTx) +toSealed :: Crypto crypto => SL.Tx crypto -> (W.Tx, W.SealedTx) toSealed tx = let (wtx, _, _) = fromShelleyTx tx @@ -783,19 +824,11 @@ toSealed tx = in (wtx, sealed) toCardanoTxId :: W.Hash "Tx" -> Cardano.TxId -toCardanoTxId (W.Hash h) = Cardano.TxId $ UnsafeHash h +toCardanoTxId (W.Hash h) = Cardano.TxId $ UnsafeHash $ toShort h toCardanoTxIn :: W.TxIn -> Cardano.TxIn toCardanoTxIn (W.TxIn tid ix) = - Cardano.TxIn (toCardanoTxId tid) (fromIntegral ix) - --- NOTE: Only creates Shelley addresses. -toCardanoAddress :: W.Address -> Cardano.Address -toCardanoAddress (W.Address bytes) = - Cardano.AddressShelley - . fromMaybe (error "toCardanoAddress: invalid address") - . SL.deserialiseAddr @TPraosStandardCrypto - $ bytes + Cardano.TxIn (toCardanoTxId tid) (Cardano.TxIx (fromIntegral ix)) toCardanoLovelace :: W.Coin -> Cardano.Lovelace toCardanoLovelace (W.Coin c) = Cardano.Lovelace $ safeCast c @@ -803,31 +836,46 @@ toCardanoLovelace (W.Coin c) = Cardano.Lovelace $ safeCast c safeCast :: Word64 -> Integer safeCast = fromIntegral -toCardanoTxOut :: W.TxOut -> Cardano.TxOut -toCardanoTxOut (W.TxOut addr coin) = - Cardano.TxOut (toCardanoAddress addr) (toCardanoLovelace coin) +toCardanoTxOut :: Cardano.NetworkId -> Cardano.PaymentCredential -> Cardano.StakeAddressReference -> W.TxOut -> Cardano.TxOut Cardano.Shelley +toCardanoTxOut net cred stake (W.TxOut addr coin) = + Cardano.TxOut addr' (toCardanoLovelace coin) + where + addr' = Cardano.makeShelleyAddress net cred stake -- | Convert from a chimeric account address (which is a hash of a public key) -- to a shelley ledger stake credential. -toStakeCredential :: W.ChimericAccount -> Cardano.ShelleyCredentialStaking -toStakeCredential = Cardano.mkShelleyStakingCredential - . SL.KeyHash . UnsafeHash . W.unChimericAccount +toStakeCredential :: W.ChimericAccount -> SL.StakeCredential crypto +toStakeCredential = SL.KeyHashObj + . SL.KeyHash . UnsafeHash . toShort . W.unChimericAccount toStakeKeyDeregCert :: XPub -> Cardano.Certificate -toStakeKeyDeregCert xpub = - Cardano.shelleyDeregisterStakingAddress - (SL.KeyHash $ UnsafeHash $ blake2b224 $ xpubPublicKey xpub) +toStakeKeyDeregCert = Cardano.makeStakeAddressDeregistrationCertificate + . Cardano.StakeCredentialByKey + . Cardano.StakeKeyHash + . SL.KeyHash + . UnsafeHash + . toShort + . blake2b224 + . xpubPublicKey toStakeKeyRegCert :: XPub -> Cardano.Certificate -toStakeKeyRegCert xpub = - Cardano.shelleyRegisterStakingAddress - (SL.KeyHash $ UnsafeHash $ blake2b224 $ xpubPublicKey xpub) +toStakeKeyRegCert = Cardano.makeStakeAddressRegistrationCertificate + . Cardano.StakeCredentialByKey + . Cardano.StakeKeyHash + . SL.KeyHash + . UnsafeHash + . toShort + . blake2b224 + . xpubPublicKey toStakePoolDlgCert :: XPub -> W.PoolId -> Cardano.Certificate toStakePoolDlgCert xpub (W.PoolId pid) = - Cardano.shelleyDelegateStake - (SL.KeyHash $ UnsafeHash $ blake2b224 $ xpubPublicKey xpub) - (SL.KeyHash $ UnsafeHash pid) + Cardano.makeStakeAddressDelegationCertificate + (Cardano.StakeCredentialByKey $ Cardano.StakeKeyHash cred) + (Cardano.StakePoolKeyHash pool) + where + cred = SL.KeyHash $ UnsafeHash $ toShort $ blake2b224 $ xpubPublicKey xpub + pool = SL.KeyHash $ UnsafeHash $ toShort pid {------------------------------------------------------------------------------- Address Encoding / Decoding @@ -873,7 +921,7 @@ _decodeStakeAddress _decodeStakeAddress serverNetwork txt = do (_, dp) <- left (const errBech32) $ Bech32.decodeLenient txt bytes <- maybe (Left errBech32) Right $ dataPartToBytes dp - rewardAcnt <- runGetOrFail' SL.getRewardAcnt bytes + rewardAcnt <- runGetOrFail' (SL.getRewardAcnt @TPraosStandardCrypto) bytes guardNetwork (SL.getRwdNetwork rewardAcnt) serverNetwork diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index ac8ff8d69ea..2ead289fdc0 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -49,6 +49,8 @@ import Cardano.BM.Data.Severity ( Severity (..) ) import Cardano.BM.Data.Tracer ( HasPrivacyAnnotation (..), HasSeverityAnnotation (..) ) +import Cardano.Chain.Genesis + ( GenesisData (..), readGenesisData ) import Cardano.CLI ( optionT ) import Cardano.Launcher @@ -59,6 +61,8 @@ import Cardano.Launcher.Node , NodePort (..) , withCardanoNode ) +import Cardano.Wallet.Byron.Compatibility + ( mainnetVersionData ) import Cardano.Wallet.Logging ( BracketLog, bracketTracer ) import Cardano.Wallet.Network.Ports @@ -89,9 +93,11 @@ import Control.Concurrent.MVar import Control.Exception ( SomeException, finally, handle, throwIO ) import Control.Monad - ( forM, forM_, replicateM, replicateM_, unless, void, (>=>) ) + ( forM, forM_, replicateM, replicateM_, unless, void, when, (>=>) ) import Control.Monad.Fail ( MonadFail ) +import Control.Monad.Trans.Except + ( ExceptT, withExceptT ) import Control.Monad.Trans.Except ( ExceptT (..) ) import Control.Retry @@ -125,7 +131,7 @@ import Data.Time.Clock import GHC.TypeLits ( KnownNat, Nat, SomeNat (..), someNatVal ) import Options.Applicative - ( Parser, help, long, metavar, (<|>) ) + ( Parser, flag', help, long, metavar, (<|>) ) import Ouroboros.Consensus.Shelley.Node ( sgNetworkMagic ) import Ouroboros.Consensus.Shelley.Protocol @@ -153,6 +159,7 @@ import Test.Utils.Paths import Test.Utils.StaticServer ( withStaticServer ) +import qualified Cardano.Wallet.Byron.Compatibility as Byron import qualified Data.Aeson as Aeson import qualified Data.Aeson.Types as Aeson import qualified Data.ByteString.Lazy as BL @@ -166,22 +173,42 @@ import qualified Data.Yaml as Yaml import qualified Shelley.Spec.Ledger.Address as SL import qualified Shelley.Spec.Ledger.Coin as SL +-- | Shelley hard fork network configuration has two genesis datas. +-- As a special case for mainnet, we hardcode the byron genesis data. data NetworkConfiguration where + -- | Mainnet does not have network discrimination. + MainnetConfig + :: (SomeNetworkDiscriminant, NodeVersionData) + -- ^ Byron mainnet configuration + -> FilePath + -- ^ Genesis data in JSON format, for shelley era. + -> NetworkConfiguration + + -- | Testnet has network magic. TestnetConfig :: FilePath + -- ^ Genesis data in JSON format, for byron era. + -> FilePath + -- ^ Genesis data in JSON format, for shelley era. -> NetworkConfiguration + -- | Staging does not have network discrimination. StagingConfig :: FilePath + -- ^ Genesis data in JSON format, for byron era. + -> FilePath + -- ^ Genesis data in JSON format, for shelley era. -> NetworkConfiguration -- | Hand-written as there's no Show instance for 'NodeVersionData' instance Show NetworkConfiguration where show = \case - TestnetConfig genesisFile -> - "TestnetConfig " <> show genesisFile - StagingConfig genesisFile -> - "StagingConfig " <> show genesisFile + MainnetConfig _ shelleyGenesisFile -> + "MainnetConfig " <> show shelleyGenesisFile + TestnetConfig byronGenesisFile shelleyGenesisFile -> + "TestnetConfig " <> show (byronGenesisFile, shelleyGenesisFile) + StagingConfig byronGenesisFile shelleyGenesisFile -> + "StagingConfig " <> show (byronGenesisFile, shelleyGenesisFile) -- | --node-socket=FILE nodeSocketOption :: Parser FilePath @@ -190,20 +217,27 @@ nodeSocketOption = optionT $ mempty <> metavar "FILE" <> help "Path to the node's domain socket." --- | --testnet=FILE +-- | --mainnet --shelley-genesis=FILE +-- --testnet --byron-genesis=FILE --shelley-genesis=FILE +-- --staging --byron-genesis=FILE --shelley-genesis=FILE networkConfigurationOption :: Parser NetworkConfiguration -networkConfigurationOption = - (TestnetConfig <$> customNetworkOption "testnet") - <|> - (StagingConfig <$> customNetworkOption "staging") +networkConfigurationOption = mainnet <|> testnet <|> staging where - customNetworkOption - :: String - -> Parser FilePath - customNetworkOption network = optionT $ mempty - <> long network + mainnet = mainnetFlag <*> genesisFileOption "shelley" + testnet = testnetFlag <*> genesisFileOption "byron" <*> genesisFileOption "shelley" + staging = stagingFlag <*> genesisFileOption "byron" <*> genesisFileOption "shelley" + + mainnetFlag = flag' + (MainnetConfig (SomeNetworkDiscriminant $ Proxy @'Mainnet, mainnetVersionData)) + (long "mainnet") + testnetFlag = flag' TestnetConfig (long "testnet") + stagingFlag = flag' StagingConfig (long "staging") + + genesisFileOption :: String -> Parser FilePath + genesisFileOption era = optionT $ mempty + <> long (era ++ "-genesis") <> metavar "FILE" - <> help "Path to the genesis .json file." + <> help ("Path to the " <> era <> " genesis data in JSON format.") someCustomDiscriminant :: (forall (pm :: Nat). KnownNat pm => Proxy pm -> SomeNetworkDiscriminant) @@ -223,9 +257,23 @@ parseGenesisData -> ExceptT String IO (SomeNetworkDiscriminant, NetworkParameters, NodeVersionData, Block) parseGenesisData = \case - TestnetConfig genesisFile -> do + MainnetConfig (discriminant, vData) shelleyGenesisFile -> do (genesis :: ShelleyGenesis TPraosStandardCrypto) - <- ExceptT $ eitherDecode <$> BL.readFile genesisFile + <- ExceptT $ eitherDecode <$> BL.readFile shelleyGenesisFile + + let (np, block0) = fromGenesisData genesis (Map.toList $ sgInitialFunds genesis) + pure + ( discriminant + , np + , vData + , block0 + ) + + TestnetConfig byronGenesisFile shelleyGenesisFile -> do + (genesisData, genesisHash) <- + withExceptT show $ readGenesisData byronGenesisFile + (shelleyGenesis :: ShelleyGenesis TPraosStandardCrypto) + <- ExceptT $ eitherDecode <$> BL.readFile shelleyGenesisFile let mkSomeNetwork :: forall (pm :: Nat). KnownNat pm @@ -233,20 +281,29 @@ parseGenesisData = \case -> SomeNetworkDiscriminant mkSomeNetwork _ = SomeNetworkDiscriminant $ Proxy @('Testnet pm) - let nm = sgNetworkMagic genesis + let nm = sgNetworkMagic shelleyGenesis let pm = ProtocolMagic $ fromIntegral nm - let (discriminant, vData) = someCustomDiscriminant mkSomeNetwork pm - let (np, block0) = fromGenesisData genesis (Map.toList $ sgInitialFunds genesis) + let (shelleyDiscriminant, shelleyVData) = someCustomDiscriminant mkSomeNetwork pm + let (np, block0) = fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) + + let byronPm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData + let (_byronDiscriminant, _byronVData) = someCustomDiscriminant mkSomeNetwork byronPm + let (bnp, bouts) = Byron.fromGenesisData (genesisData, genesisHash) + let _bblock0 = Byron.genesisBlockFromTxOuts (genesisParameters bnp) bouts + + when (byronPm /= pm) $ + fail "Network discriminants in genesis files to not match." + pure - ( discriminant + ( shelleyDiscriminant , np - , vData + , shelleyVData , block0 ) - StagingConfig genesisFile -> do + StagingConfig byronGenesisFile _shelleyGenesisFile -> do (genesis :: ShelleyGenesis TPraosStandardCrypto) - <- ExceptT $ eitherDecode <$> BL.readFile genesisFile + <- ExceptT $ eitherDecode <$> BL.readFile byronGenesisFile let mkSomeNetwork :: forall (pm :: Nat). KnownNat pm diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index a610dbb7ddd..59b063b16b0 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -5,7 +5,9 @@ {-# LANGUAGE LambdaCase #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE NumericUnderscores #-} +{-# LANGUAGE PartialTypeSignatures #-} {-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE Rank2Types #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} @@ -38,6 +40,8 @@ import Cardano.BM.Data.Severity ( Severity (..) ) import Cardano.BM.Data.Tracer ( HasPrivacyAnnotation (..), HasSeverityAnnotation (..) ) +import Cardano.Wallet.Byron.Compatibility + ( byronCodecConfig, protocolParametersFromUpdateState ) import Cardano.Wallet.Logging ( BracketLog, bracketTracer ) import Cardano.Wallet.Network @@ -50,24 +54,21 @@ import Cardano.Wallet.Network , mapCursor ) import Cardano.Wallet.Primitive.Slotting - ( singleEraInterpreter ) + ( TimeInterpreter, interpreterFromGenesis, mkTimeInterpreter ) import Cardano.Wallet.Shelley.Compatibility - ( Delegations - , RewardAccounts - , Shelley - , ShelleyBlock + ( Shelley , TPraosStandardCrypto + , fromCardanoHash , fromChainHash , fromNonMyopicMemberRewards - , fromPParams , fromPoolDistr - , fromShelleyHash + , fromShelleyPParams , fromTip , fromTip' , optimumNumberOfPools - , toGenTx , toPoint , toShelleyCoin + , toShelleyGenTx , toStakeCredential ) import Control.Concurrent @@ -89,6 +90,7 @@ import Control.Monad.Class.MonadST import Control.Monad.Class.MonadSTM ( MonadSTM , TQueue + , TVar , atomically , newTMVarM , newTQueue @@ -114,16 +116,20 @@ import Data.ByteArray.Encoding ( Base (..), convertToBase ) import Data.ByteString.Lazy ( ByteString ) +import Data.Either.Extra + ( eitherToMaybe ) import Data.Function ( (&) ) -import Data.Functor.Identity - ( runIdentity ) import Data.List ( isInfixOf ) import Data.Map ( Map ) +import Data.Map + ( (!) ) import Data.Maybe ( fromMaybe ) +import Data.Proxy + ( Proxy (..) ) import Data.Quantity ( Percentage, Quantity (..) ) import Data.Text @@ -140,12 +146,32 @@ import GHC.Stack ( HasCallStack ) import Network.Mux ( MuxError (..), MuxErrorType (..), WithMuxBearer (..) ) +import Ouroboros.Consensus.Cardano + ( CardanoBlock ) +import Ouroboros.Consensus.Cardano.Block + ( CardanoApplyTxErr + , CardanoEras + , CardanoGenTx + , CodecConfig (..) + , GenTx (..) + , Query (..) + ) +import Ouroboros.Consensus.HardFork.Combinator + ( QueryHardFork (..) ) +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras + ( MismatchEraInfo ) +import Ouroboros.Consensus.HardFork.History.Qry + ( Interpreter ) import Ouroboros.Consensus.Network.NodeToClient ( ClientCodecs, Codecs' (..), DefaultCodecs, clientCodecs, defaultCodecs ) +import Ouroboros.Consensus.Node.NetworkProtocolVersion + ( HasNetworkProtocolVersion (..), SupportedNetworkProtocolVersion (..) ) import Ouroboros.Consensus.Shelley.Ledger - ( GenTx, Query (..), ShelleyNodeToClientVersion (..) ) + ( Crypto ) import Ouroboros.Consensus.Shelley.Ledger.Config ( CodecConfig (..) ) +import Ouroboros.Consensus.Shelley.Protocol + ( TPraosCrypto ) import Ouroboros.Network.Block ( Point , SlotNo (..) @@ -218,10 +244,13 @@ import qualified Data.Map as Map import qualified Data.Set as Set import qualified Data.Text as T import qualified Data.Text.Encoding as T -import qualified Ouroboros.Consensus.Shelley.Ledger as OC +import qualified Ouroboros.Consensus.Byron.Ledger as Byron +import qualified Ouroboros.Consensus.Shelley.Ledger as Shelley import qualified Ouroboros.Network.Point as Point import qualified Shelley.Spec.Ledger.Coin as SL -import qualified Shelley.Spec.Ledger.PParams as SL +import qualified Shelley.Spec.Ledger.Credential as SL +import qualified Shelley.Spec.Ledger.Keys as SL +import qualified Shelley.Spec.Ledger.LedgerState as SL {- HLINT ignore "Use readTVarIO" -} @@ -229,12 +258,13 @@ import qualified Shelley.Spec.Ledger.PParams as SL -- stateful and the node's keep track of the associated connection's cursor. data instance Cursor (m Shelley) = Cursor (Async ()) - (Point ShelleyBlock) - (TQueue m (ChainSyncCmd ShelleyBlock m)) + (Point (CardanoBlock TPraosStandardCrypto)) + (TQueue m (ChainSyncCmd (CardanoBlock TPraosStandardCrypto) m)) -- | Create an instance of the network layer withNetworkLayer - :: Tracer IO NetworkLayerLog + :: forall sc a. (sc ~ TPraosStandardCrypto) + => Tracer IO (NetworkLayerLog sc) -- ^ Logging of network layer startup -> W.NetworkParameters -- ^ Initial blockchain parameters @@ -242,7 +272,7 @@ withNetworkLayer -- ^ Socket for communicating with the node -> (NodeToClientVersionData, CodecCBORTerm Text NodeToClientVersionData) -- ^ Codecs for the node's client - -> (NetworkLayer IO (IO Shelley) ShelleyBlock -> IO a) + -> (NetworkLayer IO (IO Shelley) (CardanoBlock sc) -> IO a) -- ^ Callback function with the network layer -> IO a withNetworkLayer tr np addrInfo versionData action = do @@ -254,12 +284,12 @@ withNetworkLayer tr np addrInfo versionData action = do -- doesn't rely on the intersection to be up-to-date. let handlers = retryOnConnectionLost tr - (nodeTipChan, protocolParamsVar, localTxSubmissionQ) <- + (nodeTipChan, protocolParamsVar, interpreterVar, localTxSubmissionQ) <- connectNodeTipClient handlers queryRewardQ <- connectDelegationRewardsClient handlers - nodeTipVar <- atomically $ newTVar TipGenesis + nodeTipVar <- atomically $ newTVar TipGenesis :: IO (TVar IO (Tip (CardanoBlock sc))) let updateNodeTip = readChan nodeTipChan >>= (atomically . writeTVar nodeTipVar) link =<< async (forever updateNodeTip) @@ -271,30 +301,34 @@ withNetworkLayer tr np addrInfo versionData action = do , destroyCursor = _destroyCursor , cursorSlotNo = _cursorSlotNo , getProtocolParameters = atomically $ readTVar protocolParamsVar - , postTx = _postTx localTxSubmissionQ + , postTx = _postSealedTx localTxSubmissionQ , stakeDistribution = _stakeDistribution queryRewardQ , getAccountBalance = _getAccountBalance nodeTipVar queryRewardQ - , timeInterpreter = pure . runIdentity . singleEraInterpreter gp + , timeInterpreter = _timeInterpreterQuery interpreterVar } where gp@W.GenesisParameters { getGenesisBlockHash + , getGenesisBlockDate } = W.genesisParameters np + cfg = codecConfig gp connectNodeTipClient handlers = do localTxSubmissionQ <- atomically newTQueue nodeTipChan <- newChan protocolParamsVar <- atomically $ newTVar $ W.protocolParameters np + interpreterVar <- atomically $ newTVar Nothing nodeTipClient <- mkTipSyncClient tr np localTxSubmissionQ (writeChan nodeTipChan) (atomically . writeTVar protocolParamsVar) + (atomically . writeTVar interpreterVar . Just) link =<< async (connectClient tr handlers nodeTipClient versionData addrInfo) - pure (nodeTipChan, protocolParamsVar, localTxSubmissionQ) + pure (nodeTipChan, protocolParamsVar, interpreterVar, localTxSubmissionQ) connectDelegationRewardsClient handlers = do cmdQ <- atomically newTQueue - let cl = mkDelegationRewardsClient tr cmdQ + let cl = mkDelegationRewardsClient tr cfg cmdQ link =<< async (connectClient tr handlers cl versionData addrInfo) pure cmdQ @@ -338,15 +372,16 @@ withNetworkLayer tr np addrInfo versionData action = do let bh = fromTip' gp tip liftIO $ traceWith tr $ MsgGetRewardAccountBalance bh acct let cred = toStakeCredential acct - let q = OC.GetFilteredDelegationsAndRewardAccounts (Set.singleton cred) + let q = QueryIfCurrentShelley (Shelley.GetFilteredDelegationsAndRewardAccounts (Set.singleton cred)) let cmd = CmdQueryLocalState (getTipPoint tip) q liftIO (queryRewardQ `send` cmd) >>= \case - Right (deleg, rewardAccounts) -> do + Right (Right (deleg, rewardAccounts)) -> do liftIO $ traceWith tr $ MsgAccountDelegationAndRewards acct deleg rewardAccounts case Map.elems rewardAccounts of [SL.Coin amt] -> pure (Quantity (fromIntegral amt)) _ -> throwE $ ErrGetAccountBalanceAccountNotFound acct + Right (Left _) -> pure minBound -- wrong era Left acqFail -> do -- NOTE: this could possibly happen in rare circumstances when -- the chain is switched and the local state query is made @@ -363,38 +398,48 @@ withNetworkLayer tr np addrInfo versionData action = do atomically (readTVar nodeTipVar) _postTx localTxSubmissionQ tx = do - liftIO $ traceWith tr $ MsgPostSealedTx tx - result <- liftIO $ localTxSubmissionQ `send` CmdSubmitTx (toGenTx tx) + liftIO $ traceWith tr $ MsgPostTx tx + result <- liftIO $ localTxSubmissionQ `send` CmdSubmitTx tx case result of SubmitSuccess -> pure () SubmitFail err -> throwE $ ErrPostTxBadRequest $ T.pack (show err) - handleQueryFailure = withExceptT - (\e -> ErrNetworkUnreachable $ T.pack $ "Unexpected" ++ show e) . ExceptT + -- fixme: only shelley transactions can be submitted like this, because they + -- are deserialised as shelley transactions before submitting. + _postSealedTx localTxSubmissionQ tx = do + liftIO $ traceWith tr $ MsgPostSealedTx tx + _postTx localTxSubmissionQ (toShelleyGenTx tx) + + handleQueryFailure :: forall e r. Show e => IO (Either e r) -> ExceptT ErrNetworkUnavailable IO r + handleQueryFailure = + withExceptT (\e -> ErrNetworkUnreachable $ T.pack $ "Unexpected " ++ show e) . ExceptT _stakeDistribution queue pt coin = do - stakeMap <- fromPoolDistr <$> handleQueryFailure - (queue `send` CmdQueryLocalState pt OC.GetStakeDistribution) + stakeMap <- handleQueryFailure + (queue `send` CmdQueryLocalState pt (QueryIfCurrentShelley Shelley.GetStakeDistribution)) let toStake = Set.singleton $ Left $ toShelleyCoin coin liftIO $ traceWith tr $ MsgWillQueryRewardsForStake coin - rewardsPerAccount <- fromNonMyopicMemberRewards <$> handleQueryFailure - (queue `send` CmdQueryLocalState pt (OC.GetNonMyopicMemberRewards toStake)) + rewardsPerAccount <- handleQueryFailure + (queue `send` CmdQueryLocalState pt (QueryIfCurrentShelley (Shelley.GetNonMyopicMemberRewards toStake))) pparams <- handleQueryFailure - (queue `send` CmdQueryLocalState pt OC.GetCurrentPParams) - - let rewardMap = fromMaybe - (error "stakeDistribution: requested rewards not included in response") - (Map.lookup (Left coin) rewardsPerAccount) - - let res = NodePoolLsqData - (optimumNumberOfPools pparams) - rewardMap - stakeMap - liftIO $ traceWith tr $ MsgFetchedNodePoolLsqDataSummary - (Map.size stakeMap) - (Map.size rewardMap) - liftIO $ traceWith tr $ MsgFetchedNodePoolLsqData res - return res + (queue `send` CmdQueryLocalState pt (QueryIfCurrentShelley Shelley.GetCurrentPParams)) + + let fromJustRewards = fromMaybe (error "stakeDistribution: requested rewards not included in response") + let getRewardMap = fromJustRewards . Map.lookup (Left coin) . fromNonMyopicMemberRewards + + -- The result will be Nothing if query occurs during the byron era + let mres = eitherToMaybe $ NodePoolLsqData + <$> fmap optimumNumberOfPools pparams + <*> fmap getRewardMap rewardsPerAccount + <*> fmap fromPoolDistr stakeMap + liftIO $ traceWith tr $ MsgFetchedNodePoolLsqData mres + case mres of + Just res -> do + liftIO $ traceWith tr $ MsgFetchedNodePoolLsqDataSummary + (Map.size $ stake res) + (Map.size $ rewards res) + return res + Nothing -> pure $ NodePoolLsqData 0 mempty mempty _watchNodeTip nodeTipChan cb = do chan <- dupChan nodeTipChan @@ -404,8 +449,13 @@ withNetworkLayer tr np addrInfo versionData action = do bracketTracer (contramap (MsgWatcherUpdate header) tr) $ cb header -type instance GetStakeDistribution (IO Shelley) m - = (Point ShelleyBlock + _timeInterpreterQuery :: TVar IO (Maybe (CardanoInterpreter sc)) -> TimeInterpreter IO + _timeInterpreterQuery var q = atomically (readTVar var) >>= \case + Just i -> mkTimeInterpreter getGenesisBlockDate i q + Nothing -> interpreterFromGenesis gp q + +type instance GetStakeDistribution (IO Shelley) (CardanoBlock sc) m + = (Point (CardanoBlock sc) -> W.Coin -> ExceptT ErrNetworkUnavailable m NodePoolLsqData) @@ -446,11 +496,11 @@ type NetworkClient m = OuroborosApplication -- | Construct a network client with the given communication channel, for the -- purposes of syncing blocks to a single wallet. mkWalletClient - :: (MonadThrow m, MonadST m, MonadTimer m, MonadAsync m) + :: (MonadThrow m, MonadST m, MonadTimer m, MonadAsync m, Crypto sc, TPraosCrypto sc) => Tracer m (ChainSyncLog Text Text) -> W.GenesisParameters -- ^ Static blockchain parameters - -> TQueue m (ChainSyncCmd ShelleyBlock m) + -> TQueue m (ChainSyncCmd (CardanoBlock sc) m) -- ^ Communication channel with the ChainSync client -> m (NetworkClient m) mkWalletClient tr gp chainSyncQ = do @@ -458,7 +508,7 @@ mkWalletClient tr gp chainSyncQ = do pure $ nodeToClientProtocols (const $ return $ NodeToClientProtocols { localChainSyncProtocol = InitiatorProtocolOnly $ MuxPeerRaw $ \channel -> - runPipelinedPeer nullTracer (cChainSyncCodec codecs) channel + runPipelinedPeer nullTracer (cChainSyncCodec $ codecs cfg) channel $ chainSyncClientPeerPipelined $ chainSyncWithBlocks tr' (fromTip' gp) chainSyncQ stash @@ -468,7 +518,7 @@ mkWalletClient tr gp chainSyncQ = do , localStateQueryProtocol = doNothingProtocol }) - NodeToClientV_2 + NodeToClientV_3 where tr' = contramap (mapChainSyncLog showB showP) tr showB = showP . blockPoint @@ -478,20 +528,22 @@ mkWalletClient tr gp chainSyncQ = do [ "(slotNo " , T.pack $ show $ unSlotNo $ Point.blockPointSlot blk , ", " - , pretty $ fromShelleyHash $ Point.blockPointHash blk + , pretty $ fromCardanoHash $ Point.blockPointHash blk , ")" ] + cfg = codecConfig gp -- | Construct a network client with the given communication channel, for the -- purposes of querying delegations and rewards. mkDelegationRewardsClient - :: forall m. (MonadThrow m, MonadST m, MonadTimer m) - => Tracer m NetworkLayerLog + :: forall sc m. (MonadThrow m, MonadST m, MonadTimer m, TPraosCrypto sc) + => Tracer m (NetworkLayerLog sc) -- ^ Base trace for underlying protocols - -> TQueue m (LocalStateQueryCmd ShelleyBlock m) + -> CodecConfig (CardanoBlock sc) + -> TQueue m (LocalStateQueryCmd (CardanoBlock sc) m) -- ^ Communication channel with the LocalStateQuery client -> NetworkClient m -mkDelegationRewardsClient tr queryRewardQ = +mkDelegationRewardsClient tr cfg queryRewardQ = nodeToClientProtocols (const $ return $ NodeToClientProtocols { localChainSyncProtocol = doNothingProtocol @@ -505,16 +557,46 @@ mkDelegationRewardsClient tr queryRewardQ = $ localStateQueryClientPeer $ localStateQuery queryRewardQ }) - NodeToClientV_2 + NodeToClientV_3 where tr' = contramap (MsgLocalStateQuery DelegationRewardsClient) tr - codec = cStateQueryCodec serialisedCodecs + codec = cStateQueryCodec (serialisedCodecs cfg) + +{------------------------------------------------------------------------------- + Codecs +-------------------------------------------------------------------------------} + +-- | The protocol client version. Distinct from the codecs version. +nodeToClientVersion :: NodeToClientVersion +nodeToClientVersion = NodeToClientV_3 -codecs :: MonadST m => ClientCodecs ShelleyBlock m -codecs = clientCodecs ShelleyCodecConfig ShelleyNodeToClientVersion1 +codecVersion :: forall sc. TPraosCrypto sc => BlockNodeToClientVersion (CardanoBlock sc) +codecVersion = verMap ! nodeToClientVersion + where verMap = supportedNodeToClientVersions (Proxy @(CardanoBlock sc)) -serialisedCodecs :: MonadST m => DefaultCodecs ShelleyBlock m -serialisedCodecs = defaultCodecs ShelleyCodecConfig ShelleyNodeToClientVersion1 +codecConfig :: W.GenesisParameters -> CodecConfig (CardanoBlock sc) +codecConfig gp = CardanoCodecConfig (byronCodecConfig gp) ShelleyCodecConfig + +-- | A group of codecs which will deserialise block data. +codecs + :: forall m sc. (MonadST m, TPraosCrypto sc) + => CodecConfig (CardanoBlock sc) + -> ClientCodecs (CardanoBlock sc) m +codecs cfg = clientCodecs cfg codecVersion + +-- | A group of codecs which won't deserialise block data. Often only the block +-- headers are needed. It's more efficient and easier not to deserialise. +serialisedCodecs + :: forall m sc. (MonadST m, TPraosCrypto sc) + => CodecConfig (CardanoBlock sc) + -> DefaultCodecs (CardanoBlock sc) m +serialisedCodecs cfg = defaultCodecs cfg codecVersion + +{------------------------------------------------------------------------------- + Tip sync +-------------------------------------------------------------------------------} + +type CardanoInterpreter sc = Interpreter (CardanoEras sc) -- | Construct a network client with the given communication channel, for the -- purpose of: @@ -522,24 +604,27 @@ serialisedCodecs = defaultCodecs ShelleyCodecConfig ShelleyNodeToClientVersion1 -- * Submitting transactions -- * Tracking the node tip -- * Tracking the latest protocol parameters state. +-- * Querying the history interpreter as necessary. mkTipSyncClient - :: forall m. (HasCallStack, MonadThrow m, MonadST m, MonadTimer m) - => Tracer m NetworkLayerLog + :: forall sc m. (HasCallStack, MonadThrow m, MonadST m, MonadTimer m, TPraosCrypto sc) + => Tracer m (NetworkLayerLog sc) -- ^ Base trace for underlying protocols -> W.NetworkParameters -- ^ Initial blockchain parameters -> TQueue m (LocalTxSubmissionCmd - (GenTx ShelleyBlock) - (OC.ApplyTxError TPraosStandardCrypto) - (m)) + (GenTx (CardanoBlock sc)) + (CardanoApplyTxErr sc) + m) -- ^ Communication channel with the LocalTxSubmission client - -> (Tip ShelleyBlock -> m ()) + -> (Tip (CardanoBlock sc) -> m ()) -- ^ Notifier callback for when tip changes -> (W.ProtocolParameters -> m ()) -- ^ Notifier callback for when parameters for tip change. + -> (CardanoInterpreter sc -> m ()) + -- ^ Notifier callback for when time interpreter is updates -> m (NetworkClient m) -mkTipSyncClient tr np localTxSubmissionQ onTipUpdate onPParamsUpdate = do +mkTipSyncClient tr np localTxSubmissionQ onTipUpdate onPParamsUpdate onInterpreterUpdate = do localStateQueryQ <- atomically newTQueue (onPParamsUpdate' :: W.ProtocolParameters -> m ()) <- @@ -549,37 +634,60 @@ mkTipSyncClient tr np localTxSubmissionQ onTipUpdate onPParamsUpdate = do let queryLocalState - :: Point ShelleyBlock + :: Point (CardanoBlock sc) -> m () queryLocalState pt = do + pp <- localStateQueryQ `send` + CmdQueryLocalState pt (QueryIfCurrentShelley Shelley.GetCurrentPParams) + handleParamsUpdate fromShelleyPParams pp + st <- localStateQueryQ `send` - CmdQueryLocalState pt OC.GetCurrentPParams - handleLocalState st + CmdQueryLocalState pt (QueryIfCurrentByron Byron.GetUpdateInterfaceState) + handleParamsUpdate protocolParametersFromUpdateState st - handleLocalState - :: Either AcquireFailure SL.PParams + handleParamsUpdate + :: (p -> W.ProtocolParameters) + -> Either AcquireFailure (Either (MismatchEraInfo (CardanoEras sc)) p) -> m () - handleLocalState = \case + handleParamsUpdate convert = \case Left (e :: AcquireFailure) -> traceWith tr $ MsgLocalStateQueryError TipSyncClient $ show e - Right ls -> - onPParamsUpdate' $ fromPParams ls + Right (Right ls) -> + onPParamsUpdate' $ convert ls + Right (Left mismatch) -> + traceWith tr $ MsgLocalStateQueryEraMismatch mismatch - W.GenesisParameters + queryInterpreter + :: Point (CardanoBlock sc) + -> m () + queryInterpreter pt = do + res <- localStateQueryQ `send` CmdQueryLocalState pt (QueryHardFork GetInterpreter) + case res of + Left (e :: AcquireFailure) -> + traceWith tr $ MsgLocalStateQueryError TipSyncClient $ show e + Right interpreter -> do + traceWith tr $ MsgInterpreter interpreter + onInterpreterUpdate interpreter + + gp@W.GenesisParameters { getGenesisBlockHash } = W.genesisParameters np + cfg = codecConfig gp - onTipUpdate' <- debounce @(Tip ShelleyBlock) @m $ \tip' -> do + onTipUpdate' <- debounce @(Tip (CardanoBlock sc)) @m $ \tip' -> do let tip = castTip tip' traceWith tr $ MsgNodeTip $ fromTip getGenesisBlockHash tip onTipUpdate tip queryLocalState (getTipPoint tip) + -- NOTE: interpeter is updated every block. This is far more often than + -- necessary. + queryInterpreter (getTipPoint tip) pure $ nodeToClientProtocols (const $ return $ NodeToClientProtocols { localChainSyncProtocol = let - codec = cChainSyncCodec $ serialisedCodecs @m + codec = cChainSyncCodec $ serialisedCodecs @m cfg in InitiatorProtocolOnly $ MuxPeerRaw $ \channel -> runPeer nullTracer codec channel @@ -589,7 +697,7 @@ mkTipSyncClient tr np localTxSubmissionQ onTipUpdate onPParamsUpdate = do , localTxSubmissionProtocol = let tr' = contramap MsgTxSubmission tr - codec = cTxSubmissionCodec serialisedCodecs + codec = cTxSubmissionCodec $ serialisedCodecs cfg in InitiatorProtocolOnly $ MuxPeerRaw $ \channel -> runPeer tr' codec channel @@ -599,14 +707,14 @@ mkTipSyncClient tr np localTxSubmissionQ onTipUpdate onPParamsUpdate = do , localStateQueryProtocol = let tr' = contramap (MsgLocalStateQuery TipSyncClient) tr - codec = cStateQueryCodec serialisedCodecs + codec = cStateQueryCodec $ serialisedCodecs cfg in InitiatorProtocolOnly $ MuxPeerRaw $ \channel -> runPeer tr' codec channel $ localStateQueryClientPeer $ localStateQuery localStateQueryQ }) - NodeToClientV_2 + NodeToClientV_3 -- | Return a function to run an action only if its single parameter has changed @@ -631,7 +739,7 @@ doNothingProtocol = -- -- >>> connectClient (mkWalletClient tr gp queue) mainnetVersionData addrInfo connectClient - :: Tracer IO NetworkLayerLog + :: Tracer IO (NetworkLayerLog sc) -> [RetryStatus -> Handler IO Bool] -> NetworkClient IO -> (NodeToClientVersionData, CodecCBORTerm Text NodeToClientVersionData) @@ -639,7 +747,7 @@ connectClient -> IO () connectClient tr handlers client (vData, vCodec) addr = withIOManager $ \iocp -> do let vDict = DictVersion vCodec - let versions = simpleSingletonVersions NodeToClientV_2 vData vDict client + let versions = simpleSingletonVersions nodeToClientVersion vData vDict client let tracers = NetworkConnectTracers { nctMuxTracer = nullTracer , nctHandshakeTracer = contramap MsgHandshakeTracer tr @@ -655,7 +763,7 @@ connectClient tr handlers client (vData, vCodec) addr = withIOManager $ \iocp -> -- | Handlers that are retrying on every connection lost. retryOnConnectionLost - :: Tracer IO NetworkLayerLog + :: Tracer IO (NetworkLayerLog sc) -> [RetryStatus -> Handler IO Bool] retryOnConnectionLost tr = [ const $ Handler $ handleIOException tr' True @@ -666,7 +774,7 @@ retryOnConnectionLost tr = -- | Handlers that are failing if the connection is lost failOnConnectionLost - :: Tracer IO NetworkLayerLog + :: Tracer IO (NetworkLayerLog sc) -> [RetryStatus -> Handler IO Bool] failOnConnectionLost tr = [ const $ Handler $ handleIOException tr' False @@ -722,37 +830,44 @@ handleMuxError tr onResourceVanished = pure . errorType >=> \case Logging -------------------------------------------------------------------------------} -data NetworkLayerLog - = MsgCouldntConnect Int - | MsgConnectionLost (Maybe IOException) - | MsgTxSubmission - (TraceSendRecv - (LocalTxSubmission - (GenTx ShelleyBlock) - (OC.ApplyTxError TPraosStandardCrypto))) - | MsgLocalStateQuery QueryClientName - (TraceSendRecv - (LocalStateQuery ShelleyBlock (Query ShelleyBlock))) - | MsgHandshakeTracer - (WithMuxBearer (ConnectionId LocalAddress) HandshakeTrace) - | MsgFindIntersection [W.BlockHeader] - | MsgIntersectionFound (W.Hash "BlockHeader") - | MsgFindIntersectionTimeout - | MsgPostSealedTx W.SealedTx - | MsgNodeTip W.BlockHeader - | MsgProtocolParameters W.ProtocolParameters - | MsgLocalStateQueryError QueryClientName String - | MsgGetRewardAccountBalance W.BlockHeader W.ChimericAccount - | MsgAccountDelegationAndRewards W.ChimericAccount - Delegations RewardAccounts - | MsgDestroyCursor ThreadId - | MsgWillQueryRewardsForStake W.Coin - | MsgFetchedNodePoolLsqData NodePoolLsqData - | MsgFetchedNodePoolLsqDataSummary Int Int - -- ^ Number of pools in stake distribution, and rewards map, - -- respectively. - | MsgWatcherUpdate W.BlockHeader BracketLog - | MsgChainSyncCmd (ChainSyncLog Text Text) +data NetworkLayerLog sc where + MsgCouldntConnect :: Int -> NetworkLayerLog sc + MsgConnectionLost :: Maybe IOException -> NetworkLayerLog sc + MsgTxSubmission + :: (TraceSendRecv + (LocalTxSubmission (GenTx (CardanoBlock sc)) (CardanoApplyTxErr sc))) + -> NetworkLayerLog sc + MsgLocalStateQuery + :: QueryClientName + -> (TraceSendRecv + (LocalStateQuery (CardanoBlock sc) (Query (CardanoBlock sc)))) + -> NetworkLayerLog sc + MsgHandshakeTracer :: + (WithMuxBearer (ConnectionId LocalAddress) HandshakeTrace) -> NetworkLayerLog sc + MsgFindIntersection :: [W.BlockHeader] -> NetworkLayerLog sc + MsgIntersectionFound :: (W.Hash "BlockHeader") -> NetworkLayerLog sc + MsgFindIntersectionTimeout :: NetworkLayerLog sc + MsgPostTx :: CardanoGenTx sc -> NetworkLayerLog sc + MsgPostSealedTx :: W.SealedTx -> NetworkLayerLog sc + MsgNodeTip :: W.BlockHeader -> NetworkLayerLog sc + MsgProtocolParameters :: W.ProtocolParameters -> NetworkLayerLog sc + MsgLocalStateQueryError :: QueryClientName -> String -> NetworkLayerLog sc + MsgLocalStateQueryEraMismatch :: MismatchEraInfo (CardanoEras sc) -> NetworkLayerLog sc + MsgGetRewardAccountBalance :: W.BlockHeader -> W.ChimericAccount -> NetworkLayerLog sc + MsgAccountDelegationAndRewards + :: W.ChimericAccount + -> (Map (SL.Credential 'SL.Staking sc) (SL.KeyHash 'SL.StakePool sc)) + -> SL.RewardAccounts sc + -> NetworkLayerLog sc + MsgDestroyCursor :: ThreadId -> NetworkLayerLog sc + MsgWillQueryRewardsForStake :: W.Coin -> NetworkLayerLog sc + MsgFetchedNodePoolLsqData :: Maybe NodePoolLsqData -> NetworkLayerLog sc + MsgFetchedNodePoolLsqDataSummary :: Int -> Int -> NetworkLayerLog sc + -- ^ Number of pools in stake distribution, and rewards map, + -- respectively. + MsgWatcherUpdate :: W.BlockHeader -> BracketLog -> NetworkLayerLog sc + MsgChainSyncCmd :: (ChainSyncLog Text Text) -> NetworkLayerLog sc + MsgInterpreter :: CardanoInterpreter sc -> NetworkLayerLog sc data QueryClientName = TipSyncClient @@ -761,7 +876,7 @@ data QueryClientName type HandshakeTrace = TraceSendRecv (Handshake NodeToClientVersion CBOR.Term) -instance ToText NetworkLayerLog where +instance TPraosCrypto sc => ToText (NetworkLayerLog sc) where toText = \case MsgCouldntConnect n -> T.unwords [ "Couldn't connect to node (x" <> toText (n + 1) <> ")." @@ -770,7 +885,7 @@ instance ToText NetworkLayerLog where MsgConnectionLost Nothing -> "Connection lost with the node." MsgConnectionLost (Just e) -> T.unwords - [ toText (MsgConnectionLost Nothing) + [ toText @(NetworkLayerLog sc) (MsgConnectionLost Nothing) , T.pack (show e) ] MsgTxSubmission msg -> @@ -789,6 +904,10 @@ instance ToText NetworkLayerLog where [ "Posting transaction, serialized as:" , T.decodeUtf8 $ convertToBase Base16 bytes ] + MsgPostTx genTx -> T.unwords + [ "Posting transaction:" + , T.pack $ show genTx + ] MsgLocalStateQuery client msg -> T.pack (show client <> " " <> show msg) MsgNodeTip bh -> T.unwords @@ -805,6 +924,8 @@ instance ToText NetworkLayerLog where , ": " , e ] + MsgLocalStateQueryEraMismatch _mismatch -> + "Local state query for the wrong era - this is fine." MsgGetRewardAccountBalance bh acct -> T.unwords [ "Querying the reward account balance for" , pretty acct @@ -835,9 +956,11 @@ instance ToText NetworkLayerLog where "Update watcher with tip: " <> pretty tip <> ". Callback " <> toText b <> "." MsgChainSyncCmd a -> toText a + MsgInterpreter interpreter -> + "Updated the history interpreter: " <> T.pack (show interpreter) -instance HasPrivacyAnnotation NetworkLayerLog -instance HasSeverityAnnotation NetworkLayerLog where +instance HasPrivacyAnnotation (NetworkLayerLog b) +instance HasSeverityAnnotation (NetworkLayerLog b) where getSeverityAnnotation = \case MsgCouldntConnect 0 -> Debug MsgCouldntConnect 1 -> Notice @@ -849,10 +972,12 @@ instance HasSeverityAnnotation NetworkLayerLog where MsgFindIntersection{} -> Info MsgIntersectionFound{} -> Info MsgPostSealedTx{} -> Debug + MsgPostTx{} -> Debug MsgLocalStateQuery{} -> Debug MsgNodeTip{} -> Debug MsgProtocolParameters{} -> Info MsgLocalStateQueryError{} -> Error + MsgLocalStateQueryEraMismatch{} -> Debug MsgGetRewardAccountBalance{} -> Info MsgAccountDelegationAndRewards{} -> Info MsgDestroyCursor{} -> Notice @@ -860,4 +985,5 @@ instance HasSeverityAnnotation NetworkLayerLog where MsgFetchedNodePoolLsqData{} -> Debug MsgFetchedNodePoolLsqDataSummary{} -> Info MsgWatcherUpdate{} -> Debug - MsgChainSyncCmd cmd -> getSeverityAnnotation cmd + MsgChainSyncCmd cmd -> getSeverityAnnotation cmd + MsgInterpreter{} -> Debug diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs index 3d4d7a08747..123ee67f39d 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs @@ -7,6 +7,7 @@ {-# LANGUAGE PolyKinds #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} -- | @@ -69,11 +70,11 @@ import Cardano.Wallet.Primitive.Types ) import Cardano.Wallet.Shelley.Compatibility ( Shelley - , ShelleyBlock - , fromShelleyBlock' , getProducer - , toBlockHeader + , poolCertsFromShelleyBlock + , toCardanoBlockHeader , toPoint + , toShelleyBlockHeader ) import Cardano.Wallet.Shelley.Network ( NodePoolLsqData (..) ) @@ -115,6 +116,10 @@ import Fmt ( fixedF, pretty ) import GHC.Generics ( Generic ) +import Ouroboros.Consensus.Cardano.Block + ( CardanoBlock, HardForkBlock (..) ) +import Ouroboros.Consensus.Shelley.Protocol + ( TPraosCrypto ) import qualified Cardano.Wallet.Api.Types as Api import qualified Data.Map.Merge.Strict as Map @@ -148,11 +153,13 @@ data StakePoolLayer = StakePoolLayer } newStakePoolLayer - :: GenesisParameters - -> NetworkLayer IO (IO Shelley) b + :: forall sc. + GenesisParameters + -> NetworkLayer IO (IO Shelley) (CardanoBlock sc) -> DBLayer IO -> StakePoolLayer -newStakePoolLayer gp nl db@DBLayer {..} = StakePoolLayer +newStakePoolLayer gp NetworkLayer{stakeDistribution,currentNodeTip} db@DBLayer {..} = + StakePoolLayer { getPoolLifeCycleStatus = _getPoolLifeCycleStatus , knownPools = _knownPools , listStakePools = _listPools @@ -169,7 +176,7 @@ newStakePoolLayer gp nl db@DBLayer {..} = StakePoolLayer tip <- getTip let dummyCoin = Coin 0 res <- runExceptT $ map fst . Map.toList - . combineLsqData <$> stakeDistribution nl tip dummyCoin + . combineLsqData <$> stakeDistribution tip dummyCoin case res of Right x -> return x Left _e -> return [] @@ -181,7 +188,7 @@ newStakePoolLayer gp nl db@DBLayer {..} = StakePoolLayer -> ExceptT ErrNetworkUnavailable IO [Api.ApiStakePool] _listPools currentEpoch userStake = do tip <- liftIO getTip - lsqData <- combineLsqData <$> stakeDistribution nl tip userStake + lsqData <- combineLsqData <$> stakeDistribution tip userStake dbData <- liftIO $ readPoolDbData db -- TODO: -- Use a more efficient way of filtering out retired pools. @@ -206,7 +213,7 @@ newStakePoolLayer gp nl db@DBLayer {..} = StakePoolLayer & fmap (view (#epochNumber . #getApiT)) gh = getGenesisBlockHash gp - getTip = fmap (toPoint gh) . liftIO $ unsafeRunExceptT $ currentNodeTip nl + getTip = fmap (toPoint gh) . liftIO $ unsafeRunExceptT currentNodeTip -- -- Data Combination functions @@ -399,9 +406,10 @@ readPoolDbData DBLayer {..} = atomically $ do -- monitorStakePools - :: Tracer IO StakePoolLog + :: forall t sc. (TPraosCrypto sc) + => Tracer IO StakePoolLog -> GenesisParameters - -> NetworkLayer IO t ShelleyBlock + -> NetworkLayer IO t (CardanoBlock sc) -> DBLayer IO -> IO () monitorStakePools tr gp nl db@DBLayer{..} = do @@ -424,45 +432,48 @@ monitorStakePools tr gp nl db@DBLayer{..} = do initCursor = atomically $ readPoolProductionCursor (max 100 k) where k = fromIntegral $ getQuantity getEpochStability - getHeader :: ShelleyBlock -> BlockHeader - getHeader = toBlockHeader getGenesisBlockHash + getHeader :: CardanoBlock sc -> BlockHeader + getHeader = toCardanoBlockHeader gp forward - :: NonEmpty ShelleyBlock + :: NonEmpty (CardanoBlock sc) -> (BlockHeader, ProtocolParameters) -> IO (FollowAction ()) forward blocks (_nodeTip, _pparams) = do - atomically $ forM_ blocks $ \blk -> do - let (slot, certificates) = fromShelleyBlock' blk - runExceptT (putPoolProduction (getHeader blk) (getProducer blk)) - >>= \case - Left e -> - liftIO $ traceWith tr $ MsgErrProduction e - Right () -> - pure () - - -- A single block can contain multiple certificates relating to the - -- same pool. - -- - -- The /order/ in which certificates appear is /significant/: - -- certificates that appear later in a block /generally/ take - -- precedence over certificates that appear earlier on. - -- - -- We record /all/ certificates within the database, together with - -- the order in which they appeared. - -- - -- Precedence is determined by the 'readPoolLifeCycleStatus' - -- function. - -- - let publicationTimes = - CertificatePublicationTime slot <$> [minBound ..] - forM_ (publicationTimes `zip` certificates) $ \case - (publicationTime, Registration cert) -> do - liftIO $ traceWith tr $ MsgStakePoolRegistration cert - putPoolRegistration publicationTime cert - (publicationTime, Retirement cert) -> do - liftIO $ traceWith tr $ MsgStakePoolRetirement cert - putPoolRetirement publicationTime cert + atomically $ forM_ blocks $ \case + BlockByron _ -> pure () + BlockShelley blk -> do + let (slot, certificates) = poolCertsFromShelleyBlock blk + let header = toShelleyBlockHeader getGenesisBlockHash blk + runExceptT (putPoolProduction header (getProducer blk)) + >>= \case + Left e -> + liftIO $ traceWith tr $ MsgErrProduction e + Right () -> + pure () + + -- A single block can contain multiple certificates relating to the + -- same pool. + -- + -- The /order/ in which certificates appear is /significant/: + -- certificates that appear later in a block /generally/ take + -- precedence over certificates that appear earlier on. + -- + -- We record /all/ certificates within the database, together with + -- the order in which they appeared. + -- + -- Precedence is determined by the 'readPoolLifeCycleStatus' + -- function. + -- + let publicationTimes = + CertificatePublicationTime slot <$> [minBound ..] + forM_ (publicationTimes `zip` certificates) $ \case + (publicationTime, Registration cert) -> do + liftIO $ traceWith tr $ MsgStakePoolRegistration cert + putPoolRegistration publicationTime cert + (publicationTime, Retirement cert) -> do + liftIO $ traceWith tr $ MsgStakePoolRetirement cert + putPoolRetirement publicationTime cert pure Continue monitorMetadata diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index a60f674dfd5..cc514159096 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -38,6 +38,8 @@ import Prelude import Cardano.Address.Derivation ( XPrv, XPub, toXPub, xpubPublicKey ) +import Cardano.Api.Typed + ( Shelley ) import Cardano.Binary ( serialize' ) import Cardano.Crypto.DSIGN @@ -73,8 +75,7 @@ import Cardano.Wallet.Primitive.Types , TxOut (..) ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley - , TPraosStandardCrypto + ( TPraosStandardCrypto , fromNetworkDiscriminant , toByronNetworkMagic , toCardanoLovelace @@ -99,6 +100,8 @@ import Crypto.Error ( throwCryptoError ) import Data.ByteString ( ByteString ) +import Data.ByteString.Short + ( toShort ) import Data.Map.Strict ( Map ) import Data.Maybe @@ -109,6 +112,8 @@ import Data.Quantity ( Quantity (..) ) import Data.Word ( Word16, Word64, Word8 ) +import Ouroboros.Consensus.Shelley.Protocol.Crypto + ( TPraosStandardCrypto ) import Ouroboros.Consensus.Shelley.Protocol.Crypto ( Crypto (..) ) import Ouroboros.Network.Block @@ -116,8 +121,9 @@ import Ouroboros.Network.Block import Type.Reflection ( Typeable ) -import qualified Cardano.Api as Cardano -import qualified Cardano.Api.Typed as CardanoTyped +import qualified Byron.Spec.Ledger.Core as Byron +import qualified Byron.Spec.Ledger.UTxO as Byron +import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as Crypto import qualified Cardano.Crypto.Hash.Class as Hash @@ -140,24 +146,23 @@ import qualified Shelley.Spec.Ledger.Tx as SL import qualified Shelley.Spec.Ledger.TxData as SL import qualified Shelley.Spec.Ledger.UTxO as SL - -- | Type encapsulating what we need to know to add things -- payloads, -- certificates -- to a transaction. -- -- Designed to allow us to have /one/ @mkTx@ which doesn't care whether we -- include certificates or not. -data TxPayload c = TxPayload +data TxPayload era = TxPayload { _certificates :: [Cardano.Certificate] -- ^ Certificates to be included in the transactions. - , _extraWitnesses :: SL.TxBody c -> SL.WitnessSet c + , _extraWitnesses :: Cardano.TxBody era -> [Cardano.Witness era] -- ^ Create payload-specific witesses given the unsigned transaction body. -- -- Caller has the freedom and responsibility to provide the correct -- witnesses for what they're trying to do. } -emptyTxPayload :: Crypto c => TxPayload c +emptyTxPayload :: TxPayload era emptyTxPayload = TxPayload mempty mempty data TxWitnessTag @@ -183,7 +188,7 @@ mkTx ) => Proxy n -> ProtocolMagic - -> TxPayload TPraosStandardCrypto + -> TxPayload Shelley -> SlotNo -- ^ Time to Live -> (k 'AddressK XPrv, Passphrase "encryption") @@ -192,6 +197,7 @@ mkTx -> CoinSelection -> Either ErrMkTx (Tx, SealedTx) mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) keyFrom cs = do + {- let wdrls = mkWithdrawals proxy (toChimericAccountRaw . getRawKey . publicKey $ rewardAcnt) @@ -199,16 +205,22 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key let unsigned = mkUnsignedTx timeToLive cs wdrls certs - wits <- case (txWitnessTagFor @k) of + sealed <- case (txWitnessTagFor @k) of TxWitnessShelleyUTxO -> do + let paymentKey = _ (getRawKey k, pwd) + let stakeKey + | null wdrls = [] + | otherwise = [_ (getRawKey rewardAcnt, pwdAcnt)] + + tx <- signShelleyTransaction unsigned (paymentKey:stakeKey) addrWits <- fmap Set.fromList $ forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr - pure $ mkShelleyWitness unsigned (getRawKey k, pwd) + pure $ mkShelleyWitness unsigned let wdrlsWits - | Map.null wdrls = Set.empty + | null wdrls = Set.empty | otherwise = Set.singleton $ - mkShelleyWitness unsigned (getRawKey rewardAcnt, pwdAcnt) + mkShelleyWitness unsigned pure $ (SL.WitnessSet (addrWits <> wdrlsWits) mempty mempty) <> mkExtraWits unsigned @@ -222,7 +234,9 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key let metadata = SL.SNothing - pure $ toSealed $ SL.Tx unsigned wits metadata + pure $ (SL.Tx unsigned wits metadata, SealedTx sealed) + -} + error "fixme: mkTx" newTransactionLayer :: forall (n :: NetworkDiscriminant) k t. @@ -283,10 +297,7 @@ newTransactionLayer proxy protocolMagic = TransactionLayer else [ toStakePoolDlgCert accXPub poolId ] - let mkWits unsigned = SL.WitnessSet - (Set.singleton (mkShelleyWitness unsigned (getRawKey accXPrv, pwd'))) - mempty - mempty + let mkWits unsigned = [mkShelleyWitness unsigned (getRawKey accXPrv, pwd')] let payload = TxPayload certs mkWits let ttl = defaultTTL tip @@ -306,11 +317,7 @@ newTransactionLayer proxy protocolMagic = TransactionLayer _mkDelegationQuitTx acc@(accXPrv, pwd') keyFrom tip cs = do let accXPub = toXPub $ getRawKey accXPrv let certs = [toStakeKeyDeregCert accXPub] - let mkWits unsigned = SL.WitnessSet - (Set.singleton (mkShelleyWitness unsigned (getRawKey accXPrv, pwd'))) - mempty - mempty - + let mkWits unsigned = [mkShelleyWitness unsigned (getRawKey accXPrv, pwd')] let payload = TxPayload certs mkWits let ttl = defaultTTL tip mkTx proxy protocolMagic payload ttl acc keyFrom cs @@ -366,8 +373,8 @@ _decodeSignedTx :: ByteString -> Either ErrDecodeSignedTx (Tx, SealedTx) _decodeSignedTx bytes = do - case CardanoTyped.deserialiseFromCBOR CardanoTyped.AsShelleyTx bytes of - Right (CardanoTyped.ShelleyTx txValid) -> + case Cardano.deserialiseFromCBOR Cardano.AsShelleyTx bytes of + Right (Cardano.ShelleyTx txValid) -> pure $ toSealed txValid Left decodeErr -> Left $ ErrDecodeSignedTxWrongPayload (T.pack $ show decodeErr) @@ -401,11 +408,9 @@ computeTxSize -> CoinSelection -> Integer computeTxSize proxy pm witTag action cs = - SL.txsize $ SL.Tx unsigned wits metadata + SL.txsize $ SL.Tx unsigned wits (SL.maybeToStrictMaybe metadata) where - metadata = SL.SNothing - - unsigned = mkUnsignedTx maxBound cs' wdrls certs + Cardano.ShelleyTxBody unsigned metadata = mkUnsignedTx maxBound cs' wdrls certs where cs' :: CoinSelection cs' = cs @@ -416,19 +421,21 @@ computeTxSize proxy pm witTag action cs = dummyOutput :: Coin -> TxOut dummyOutput = TxOut $ Address $ BS.pack (1:replicate 56 0) - dummyKeyHash = SL.KeyHash . Hash.UnsafeHash $ dummyKeyHashRaw + dummyKeyHash = SL.KeyHash . Hash.UnsafeHash . toShort $ dummyKeyHashRaw + dummyStakeCredential = Cardano.StakeCredentialByKey $ Cardano.StakeKeyHash dummyKeyHash + dummyPoolId = Cardano.StakePoolKeyHash dummyKeyHash certs = case action of Nothing -> [] Just RegisterKeyAndJoin{} -> - [ Cardano.shelleyRegisterStakingAddress dummyKeyHash - , Cardano.shelleyDelegateStake dummyKeyHash dummyKeyHash + [ Cardano.makeStakeAddressRegistrationCertificate dummyStakeCredential + , Cardano.makeStakeAddressDelegationCertificate dummyStakeCredential dummyPoolId ] Just Join{} -> - [ Cardano.shelleyDelegateStake dummyKeyHash dummyKeyHash + [ Cardano.makeStakeAddressDelegationCertificate dummyStakeCredential dummyPoolId ] Just Quit -> - [ Cardano.shelleyDeregisterStakingAddress dummyKeyHash + [ Cardano.makeStakeAddressDeregistrationCertificate dummyStakeCredential ] dummyKeyHashRaw = BS.pack (replicate 28 0) @@ -441,7 +448,7 @@ computeTxSize proxy pm witTag action cs = (addrWits, certWits) = ( Set.union (Set.map dummyWitnessUniq $ Set.fromList (fst <$> CS.inputs cs)) - (if Map.null wdrls then Set.empty else Set.singleton (dummyWitness "0")) + (if null wdrls then Set.empty else Set.singleton (dummyWitness "0")) , case action of Nothing -> Set.empty Just{} -> Set.singleton (dummyWitness "a") @@ -453,7 +460,7 @@ computeTxSize proxy pm witTag action cs = key = SL.VKey $ fromMaybe (error "error creating dummy witness ver key") $ rawDeserialiseVerKeyDSIGN - $ bloatChaff keyLen chaff + $ bloatChaff vkeyLen chaff sig = SignedDSIGN $ fromMaybe (error "error creating dummy witness sig") @@ -466,16 +473,16 @@ computeTxSize proxy pm witTag action cs = where chaff = L8.pack (show ix) <> BL.fromStrict txid - byronWits = Set.map dummyWitnessUniq $ Set.fromList (CS.inputs cs) + byronWits = map dummyWitnessUniq $ CS.inputs cs where - dummyWitness :: BL.ByteString -> Address -> SL.BootstrapWitness TPraosStandardCrypto + dummyWitness :: BL.ByteString -> Address -> Cardano.Witness Shelley dummyWitness chaff addr = - SL.BootstrapWitness key sig cc padding + Cardano.ShelleyBootstrapWitness $ SL.BootstrapWitness vkey sig cc attrs where - key = SL.VKey + vkey = SL.VKey $ fromMaybe (error "error creating dummy witness ver key") $ rawDeserialiseVerKeyDSIGN - $ bloatChaff keyLen chaff + $ bloatChaff vkeyLen chaff sig = SignedDSIGN $ fromMaybe (error "error creating dummy witness sig") @@ -485,13 +492,10 @@ computeTxSize proxy pm witTag action cs = cc = SL.ChainCode $ bloatChaff ccLen "0" - padding = SL.byronVerKeyAddressPadding - $ Byron.mkAttributes - $ Byron.AddrAttributes - (toHDPayloadAddress addr) - (toByronNetworkMagic pm) + -- attrs = serialize' $ Byron.addrAttributes addr + attrs = error "fixme: attributes of byron address" - dummyWitnessUniq :: (TxIn, TxOut) -> SL.BootstrapWitness TPraosStandardCrypto + dummyWitnessUniq :: (TxIn, TxOut) -> Cardano.Witness Shelley dummyWitnessUniq (TxIn (Hash txid) ix, TxOut addr _) = dummyWitness chaff addr where @@ -499,18 +503,19 @@ computeTxSize proxy pm witTag action cs = sigLen = sizeSigDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) - keyLen = sizeVerKeyDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) + vkeyLen = sizeVerKeyDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) ccLen = 32 bloatChaff :: Word -> BL.ByteString -> ByteString bloatChaff n = BL.toStrict . BL.take (fromIntegral n) . BL.cycle - wits = case witTag of - TxWitnessShelleyUTxO -> - SL.WitnessSet (Set.union addrWits certWits) mempty mempty - TxWitnessByronUTxO -> - SL.WitnessSet mempty mempty byronWits + wits = error "fixme: txSize wits" + -- wits = case witTag of + -- TxWitnessShelleyUTxO -> + -- SL.WitnessSet (Set.union addrWits certWits) mempty mempty + -- TxWitnessByronUTxO -> + -- SL.WitnessSet mempty mempty byronWits lookupPrivateKey :: (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) @@ -522,61 +527,63 @@ lookupPrivateKey keyFrom addr = mkUnsignedTx :: Cardano.SlotNo -> CoinSelection - -> Map (SL.RewardAcnt TPraosStandardCrypto) SL.Coin + -> [(Cardano.StakeAddress, Cardano.Lovelace)] -> [Cardano.Certificate] - -> Cardano.ShelleyTxBody + -> Cardano.TxBody Cardano.Shelley mkUnsignedTx ttl cs wdrls certs = - let - Cardano.TxUnsignedShelley unsigned = Cardano.buildShelleyTransaction - (toCardanoTxIn . fst <$> CS.inputs cs) - (map toCardanoTxOut $ CS.outputs cs) + Cardano.makeShelleyTransaction + extra ttl (toCardanoLovelace $ Coin $ feeBalance cs) - certs - (Cardano.WithdrawalsShelley $ SL.Wdrl wdrls) - Nothing -- Update - Nothing -- Metadata hash - in - unsigned + (toCardanoTxIn . fst <$> CS.inputs cs) + (map mkOut $ CS.outputs cs) + where + extra = Cardano.TxExtraContent + { Cardano.txMetadata = Nothing + , Cardano.txWithdrawals = wdrls + , Cardano.txCertificates = certs + , Cardano.txUpdateProposal = Nothing + } + mkOut = toCardanoTxOut net cred stake + net = error "fixme: mkUnsignedAddress net" + cred = error "fixme: mkUnsignedAddress cred" + stake = error "fixme: mkUnsignedAddress stake" + mkWithdrawals :: forall (n :: NetworkDiscriminant). (Typeable n) => Proxy n -> ChimericAccount -> Word64 - -> Map (SL.RewardAcnt TPraosStandardCrypto) SL.Coin + -> [(Cardano.StakeAddress, Cardano.Lovelace)] mkWithdrawals proxy (ChimericAccount keyHash) amount | amount == 0 = mempty - | otherwise = Map.fromList - [ ( SL.RewardAcnt (fromNetworkDiscriminant proxy) keyHashObj - , SL.Coin $ fromIntegral amount + | otherwise = + [ ( Cardano.StakeAddress (fromNetworkDiscriminant proxy) keyHashObj + , Cardano.Lovelace $ fromIntegral amount ) ] where - keyHashObj = SL.KeyHashObj $ SL.KeyHash $ Hash.UnsafeHash keyHash + keyHashObj = SL.KeyHashObj $ SL.KeyHash $ Hash.UnsafeHash $ toShort keyHash -- NOTE: The (+7200) was selected arbitrarily when we were trying to get -- this working on the FF testnet. Perhaps a better motivated and/or -- configurable value would be better. -defaultTTL :: SlotNo -> SlotNo -defaultTTL slot = slot + 7200 +defaultTTL :: SlotNo -> SlotNo +defaultTTL = (+ 7200) mkShelleyWitness - :: SL.TxBody TPraosStandardCrypto + :: Cardano.TxBody Shelley -> (XPrv, Passphrase "encryption") - -> SL.WitVKey TPraosStandardCrypto 'SL.Witness + -> Cardano.Witness Shelley mkShelleyWitness body (prv, pwd) = - SL.WitVKey key sig + Cardano.makeShelleyKeyWitness body (Cardano.WitnessPaymentKey $ key) where - sig = SignedDSIGN - $ fromMaybe (error "error converting signatures") - $ rawDeserialiseSigDSIGN - $ serialize' (SL.hashTxBody body) `signWith` (prv, pwd) - - key = SL.VKey - $ VerKeyEd25519DSIGN - $ unsafeMkEd25519 - $ toXPub prv + key = error "fixme: SigningKey PaymentKey" + -- vk = SL.VKey + -- $ VerKeyEd25519DSIGN + -- $ unsafeMkEd25519 + -- $ toXPub prv signWith :: ByteString @@ -596,6 +603,7 @@ mkByronWitness -> (XPrv, Passphrase "encryption") -> SL.BootstrapWitness TPraosStandardCrypto mkByronWitness body protocolMagic addr (prv, Passphrase pwd) = + -- fixme: use makeShelleyBootstrapWitness SL.makeBootstrapWitness txHash signingKey addrAttr where (SL.TxId txHash) = SL.txid body diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/CompatibilitySpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/CompatibilitySpec.hs index 0486f0ea457..636658fbd57 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/CompatibilitySpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/CompatibilitySpec.hs @@ -50,13 +50,13 @@ import Cardano.Wallet.Primitive.Types , SlotId (..) ) import Cardano.Wallet.Shelley.Compatibility - ( ShelleyBlock + ( CardanoBlock , TPraosStandardCrypto , decentralizationLevelFromPParams , fromTip , invertUnitInterval + , toCardanoHash , toPoint - , toShelleyHash ) import Cardano.Wallet.Unsafe ( unsafeMkEntropy ) @@ -87,7 +87,7 @@ import GHC.TypeLits import Ouroboros.Consensus.Shelley.Protocol.Crypto ( Crypto (..) ) import Ouroboros.Network.Block - ( BlockNo (..), SlotNo (..), Tip (..), getTipPoint ) + ( BlockNo (..), Point, SlotNo (..), Tip (..), getTipPoint ) import Test.Hspec ( Spec, describe, it, shouldBe ) import Test.Hspec.QuickCheck @@ -110,6 +110,7 @@ import Test.QuickCheck import qualified Cardano.Wallet.Primitive.AddressDerivation.Byron as Byron import qualified Cardano.Wallet.Primitive.AddressDerivation.Shelley as Shelley +import qualified Cardano.Wallet.Primitive.Types as W import qualified Codec.Binary.Bech32 as Bech32 import qualified Data.ByteString as BS import qualified Data.Text.Encoding as T @@ -122,7 +123,7 @@ spec = do describe "Conversions" $ it "toPoint' . fromTip' == getTipPoint" $ property $ \gh tip -> do let fromTip' = fromTip gh - let toPoint' = toPoint gh + let toPoint' = toPoint gh :: W.BlockHeader -> Point (CardanoBlock TPraosStandardCrypto) toPoint' (fromTip' tip) === (getTipPoint tip) describe "Shelley StakeAddress" $ do @@ -231,7 +232,7 @@ instance Arbitrary (Hash "BlockHeader") where instance Arbitrary ChimericAccount where arbitrary = ChimericAccount . BS.pack <$> vector 28 -instance Arbitrary (Tip ShelleyBlock) where +instance Arbitrary (Tip (CardanoBlock TPraosStandardCrypto)) where arbitrary = frequency [ (10, return TipGenesis) , (90, arbitraryTip) @@ -239,7 +240,7 @@ instance Arbitrary (Tip ShelleyBlock) where where arbitraryTip = do n <- choose (0, 100) - hash <- toShelleyHash + hash <- toCardanoHash . Hash . digest (Proxy @(HASH TPraosStandardCrypto)) . BS.pack <$> vector 5 From 6941c2b88898924d51b5ac63954d4dd39d6b9f99 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Mon, 20 Jul 2020 18:32:09 +1000 Subject: [PATCH 05/86] Revert Cardano.Wallet.Shelley.Transaction back to master, start again. --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 191 +++++++++--------- 1 file changed, 95 insertions(+), 96 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index cc514159096..559c39d4477 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -38,8 +38,6 @@ import Prelude import Cardano.Address.Derivation ( XPrv, XPub, toXPub, xpubPublicKey ) -import Cardano.Api.Typed - ( Shelley ) import Cardano.Binary ( serialize' ) import Cardano.Crypto.DSIGN @@ -66,16 +64,19 @@ import Cardano.Wallet.Primitive.Fee import Cardano.Wallet.Primitive.Types ( Address (..) , Coin (..) + , EpochLength (..) , Hash (..) , PoolId (..) , ProtocolMagic (..) , SealedTx (..) + , SlotId (..) , Tx (..) , TxIn (..) , TxOut (..) ) import Cardano.Wallet.Shelley.Compatibility - ( TPraosStandardCrypto + ( Shelley + , TPraosStandardCrypto , fromNetworkDiscriminant , toByronNetworkMagic , toCardanoLovelace @@ -83,6 +84,7 @@ import Cardano.Wallet.Shelley.Compatibility , toCardanoTxOut , toHDPayloadAddress , toSealed + , toSlotNo , toStakeKeyDeregCert , toStakeKeyRegCert , toStakePoolDlgCert @@ -100,8 +102,6 @@ import Crypto.Error ( throwCryptoError ) import Data.ByteString ( ByteString ) -import Data.ByteString.Short - ( toShort ) import Data.Map.Strict ( Map ) import Data.Maybe @@ -112,8 +112,6 @@ import Data.Quantity ( Quantity (..) ) import Data.Word ( Word16, Word64, Word8 ) -import Ouroboros.Consensus.Shelley.Protocol.Crypto - ( TPraosStandardCrypto ) import Ouroboros.Consensus.Shelley.Protocol.Crypto ( Crypto (..) ) import Ouroboros.Network.Block @@ -121,9 +119,8 @@ import Ouroboros.Network.Block import Type.Reflection ( Typeable ) -import qualified Byron.Spec.Ledger.Core as Byron -import qualified Byron.Spec.Ledger.UTxO as Byron -import qualified Cardano.Api.Typed as Cardano +import qualified Cardano.Api as Cardano +import qualified Cardano.Api.Typed as CardanoTyped import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as Crypto import qualified Cardano.Crypto.Hash.Class as Hash @@ -146,23 +143,24 @@ import qualified Shelley.Spec.Ledger.Tx as SL import qualified Shelley.Spec.Ledger.TxData as SL import qualified Shelley.Spec.Ledger.UTxO as SL + -- | Type encapsulating what we need to know to add things -- payloads, -- certificates -- to a transaction. -- -- Designed to allow us to have /one/ @mkTx@ which doesn't care whether we -- include certificates or not. -data TxPayload era = TxPayload +data TxPayload c = TxPayload { _certificates :: [Cardano.Certificate] -- ^ Certificates to be included in the transactions. - , _extraWitnesses :: Cardano.TxBody era -> [Cardano.Witness era] + , _extraWitnesses :: SL.TxBody c -> SL.WitnessSet c -- ^ Create payload-specific witesses given the unsigned transaction body. -- -- Caller has the freedom and responsibility to provide the correct -- witnesses for what they're trying to do. } -emptyTxPayload :: TxPayload era +emptyTxPayload :: Crypto c => TxPayload c emptyTxPayload = TxPayload mempty mempty data TxWitnessTag @@ -188,7 +186,7 @@ mkTx ) => Proxy n -> ProtocolMagic - -> TxPayload Shelley + -> TxPayload TPraosStandardCrypto -> SlotNo -- ^ Time to Live -> (k 'AddressK XPrv, Passphrase "encryption") @@ -197,7 +195,6 @@ mkTx -> CoinSelection -> Either ErrMkTx (Tx, SealedTx) mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) keyFrom cs = do - {- let wdrls = mkWithdrawals proxy (toChimericAccountRaw . getRawKey . publicKey $ rewardAcnt) @@ -205,22 +202,16 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key let unsigned = mkUnsignedTx timeToLive cs wdrls certs - sealed <- case (txWitnessTagFor @k) of + wits <- case (txWitnessTagFor @k) of TxWitnessShelleyUTxO -> do - let paymentKey = _ (getRawKey k, pwd) - let stakeKey - | null wdrls = [] - | otherwise = [_ (getRawKey rewardAcnt, pwdAcnt)] - - tx <- signShelleyTransaction unsigned (paymentKey:stakeKey) addrWits <- fmap Set.fromList $ forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr - pure $ mkShelleyWitness unsigned + pure $ mkShelleyWitness unsigned (getRawKey k, pwd) let wdrlsWits - | null wdrls = Set.empty + | Map.null wdrls = Set.empty | otherwise = Set.singleton $ - mkShelleyWitness unsigned + mkShelleyWitness unsigned (getRawKey rewardAcnt, pwdAcnt) pure $ (SL.WitnessSet (addrWits <> wdrlsWits) mempty mempty) <> mkExtraWits unsigned @@ -234,9 +225,7 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key let metadata = SL.SNothing - pure $ (SL.Tx unsigned wits metadata, SealedTx sealed) - -} - error "fixme: mkTx" + pure $ toSealed $ SL.Tx unsigned wits metadata newTransactionLayer :: forall (n :: NetworkDiscriminant) k t. @@ -247,10 +236,11 @@ newTransactionLayer ) => Proxy n -> ProtocolMagic + -> EpochLength -> TransactionLayer t k -newTransactionLayer proxy protocolMagic = TransactionLayer +newTransactionLayer proxy protocolMagic epochLength = TransactionLayer { mkStdTx = \acc ks tip -> - mkTx proxy protocolMagic emptyTxPayload (defaultTTL tip) acc ks + mkTx proxy protocolMagic emptyTxPayload (defaultTTL epochLength tip) acc ks , initDelegationSelection = _initDelegationSelection , mkDelegationJoinTx = _mkDelegationJoinTx , mkDelegationQuitTx = _mkDelegationQuitTx @@ -281,7 +271,7 @@ newTransactionLayer proxy protocolMagic = TransactionLayer -- ^ Reward account -> (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) -- ^ Key store - -> SlotNo + -> SlotId -- ^ Tip of the chain, for TTL -> CoinSelection -- ^ A balanced coin selection where all change addresses have been @@ -297,10 +287,13 @@ newTransactionLayer proxy protocolMagic = TransactionLayer else [ toStakePoolDlgCert accXPub poolId ] - let mkWits unsigned = [mkShelleyWitness unsigned (getRawKey accXPrv, pwd')] + let mkWits unsigned = SL.WitnessSet + (Set.singleton (mkShelleyWitness unsigned (getRawKey accXPrv, pwd'))) + mempty + mempty let payload = TxPayload certs mkWits - let ttl = defaultTTL tip + let ttl = defaultTTL epochLength tip mkTx proxy protocolMagic payload ttl acc keyFrom cs _mkDelegationQuitTx @@ -308,7 +301,7 @@ newTransactionLayer proxy protocolMagic = TransactionLayer -- reward account -> (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) -- Key store - -> SlotNo + -> SlotId -- Tip of the chain, for TTL -> CoinSelection -- A balanced coin selection where all change addresses have been @@ -317,9 +310,13 @@ newTransactionLayer proxy protocolMagic = TransactionLayer _mkDelegationQuitTx acc@(accXPrv, pwd') keyFrom tip cs = do let accXPub = toXPub $ getRawKey accXPrv let certs = [toStakeKeyDeregCert accXPub] - let mkWits unsigned = [mkShelleyWitness unsigned (getRawKey accXPrv, pwd')] + let mkWits unsigned = SL.WitnessSet + (Set.singleton (mkShelleyWitness unsigned (getRawKey accXPrv, pwd'))) + mempty + mempty + let payload = TxPayload certs mkWits - let ttl = defaultTTL tip + let ttl = defaultTTL epochLength tip mkTx proxy protocolMagic payload ttl acc keyFrom cs _estimateMaxNumberOfInputs @@ -373,8 +370,8 @@ _decodeSignedTx :: ByteString -> Either ErrDecodeSignedTx (Tx, SealedTx) _decodeSignedTx bytes = do - case Cardano.deserialiseFromCBOR Cardano.AsShelleyTx bytes of - Right (Cardano.ShelleyTx txValid) -> + case CardanoTyped.deserialiseFromCBOR CardanoTyped.AsShelleyTx bytes of + Right (CardanoTyped.ShelleyTx txValid) -> pure $ toSealed txValid Left decodeErr -> Left $ ErrDecodeSignedTxWrongPayload (T.pack $ show decodeErr) @@ -408,9 +405,11 @@ computeTxSize -> CoinSelection -> Integer computeTxSize proxy pm witTag action cs = - SL.txsize $ SL.Tx unsigned wits (SL.maybeToStrictMaybe metadata) + SL.txsize $ SL.Tx unsigned wits metadata where - Cardano.ShelleyTxBody unsigned metadata = mkUnsignedTx maxBound cs' wdrls certs + metadata = SL.SNothing + + unsigned = mkUnsignedTx maxBound cs' wdrls certs where cs' :: CoinSelection cs' = cs @@ -421,21 +420,19 @@ computeTxSize proxy pm witTag action cs = dummyOutput :: Coin -> TxOut dummyOutput = TxOut $ Address $ BS.pack (1:replicate 56 0) - dummyKeyHash = SL.KeyHash . Hash.UnsafeHash . toShort $ dummyKeyHashRaw - dummyStakeCredential = Cardano.StakeCredentialByKey $ Cardano.StakeKeyHash dummyKeyHash - dummyPoolId = Cardano.StakePoolKeyHash dummyKeyHash + dummyKeyHash = SL.KeyHash . Hash.UnsafeHash $ dummyKeyHashRaw certs = case action of Nothing -> [] Just RegisterKeyAndJoin{} -> - [ Cardano.makeStakeAddressRegistrationCertificate dummyStakeCredential - , Cardano.makeStakeAddressDelegationCertificate dummyStakeCredential dummyPoolId + [ Cardano.shelleyRegisterStakingAddress dummyKeyHash + , Cardano.shelleyDelegateStake dummyKeyHash dummyKeyHash ] Just Join{} -> - [ Cardano.makeStakeAddressDelegationCertificate dummyStakeCredential dummyPoolId + [ Cardano.shelleyDelegateStake dummyKeyHash dummyKeyHash ] Just Quit -> - [ Cardano.makeStakeAddressDeregistrationCertificate dummyStakeCredential + [ Cardano.shelleyDeregisterStakingAddress dummyKeyHash ] dummyKeyHashRaw = BS.pack (replicate 28 0) @@ -448,7 +445,7 @@ computeTxSize proxy pm witTag action cs = (addrWits, certWits) = ( Set.union (Set.map dummyWitnessUniq $ Set.fromList (fst <$> CS.inputs cs)) - (if null wdrls then Set.empty else Set.singleton (dummyWitness "0")) + (if Map.null wdrls then Set.empty else Set.singleton (dummyWitness "0")) , case action of Nothing -> Set.empty Just{} -> Set.singleton (dummyWitness "a") @@ -460,7 +457,7 @@ computeTxSize proxy pm witTag action cs = key = SL.VKey $ fromMaybe (error "error creating dummy witness ver key") $ rawDeserialiseVerKeyDSIGN - $ bloatChaff vkeyLen chaff + $ bloatChaff keyLen chaff sig = SignedDSIGN $ fromMaybe (error "error creating dummy witness sig") @@ -473,16 +470,16 @@ computeTxSize proxy pm witTag action cs = where chaff = L8.pack (show ix) <> BL.fromStrict txid - byronWits = map dummyWitnessUniq $ CS.inputs cs + byronWits = Set.map dummyWitnessUniq $ Set.fromList (CS.inputs cs) where - dummyWitness :: BL.ByteString -> Address -> Cardano.Witness Shelley + dummyWitness :: BL.ByteString -> Address -> SL.BootstrapWitness TPraosStandardCrypto dummyWitness chaff addr = - Cardano.ShelleyBootstrapWitness $ SL.BootstrapWitness vkey sig cc attrs + SL.BootstrapWitness key sig cc padding where - vkey = SL.VKey + key = SL.VKey $ fromMaybe (error "error creating dummy witness ver key") $ rawDeserialiseVerKeyDSIGN - $ bloatChaff vkeyLen chaff + $ bloatChaff keyLen chaff sig = SignedDSIGN $ fromMaybe (error "error creating dummy witness sig") @@ -492,10 +489,13 @@ computeTxSize proxy pm witTag action cs = cc = SL.ChainCode $ bloatChaff ccLen "0" - -- attrs = serialize' $ Byron.addrAttributes addr - attrs = error "fixme: attributes of byron address" + padding = SL.byronVerKeyAddressPadding + $ Byron.mkAttributes + $ Byron.AddrAttributes + (toHDPayloadAddress addr) + (toByronNetworkMagic pm) - dummyWitnessUniq :: (TxIn, TxOut) -> Cardano.Witness Shelley + dummyWitnessUniq :: (TxIn, TxOut) -> SL.BootstrapWitness TPraosStandardCrypto dummyWitnessUniq (TxIn (Hash txid) ix, TxOut addr _) = dummyWitness chaff addr where @@ -503,19 +503,18 @@ computeTxSize proxy pm witTag action cs = sigLen = sizeSigDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) - vkeyLen = sizeVerKeyDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) + keyLen = sizeVerKeyDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) ccLen = 32 bloatChaff :: Word -> BL.ByteString -> ByteString bloatChaff n = BL.toStrict . BL.take (fromIntegral n) . BL.cycle - wits = error "fixme: txSize wits" - -- wits = case witTag of - -- TxWitnessShelleyUTxO -> - -- SL.WitnessSet (Set.union addrWits certWits) mempty mempty - -- TxWitnessByronUTxO -> - -- SL.WitnessSet mempty mempty byronWits + wits = case witTag of + TxWitnessShelleyUTxO -> + SL.WitnessSet (Set.union addrWits certWits) mempty mempty + TxWitnessByronUTxO -> + SL.WitnessSet mempty mempty byronWits lookupPrivateKey :: (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) @@ -527,44 +526,41 @@ lookupPrivateKey keyFrom addr = mkUnsignedTx :: Cardano.SlotNo -> CoinSelection - -> [(Cardano.StakeAddress, Cardano.Lovelace)] + -> Map (SL.RewardAcnt TPraosStandardCrypto) SL.Coin -> [Cardano.Certificate] - -> Cardano.TxBody Cardano.Shelley + -> Cardano.ShelleyTxBody mkUnsignedTx ttl cs wdrls certs = - Cardano.makeShelleyTransaction - extra + let + Cardano.TxUnsignedShelley unsigned = Cardano.buildShelleyTransaction + (toCardanoTxIn . fst <$> CS.inputs cs) + (map toCardanoTxOut $ CS.outputs cs) ttl (toCardanoLovelace $ Coin $ feeBalance cs) - (toCardanoTxIn . fst <$> CS.inputs cs) - (map mkOut $ CS.outputs cs) - where - extra = Cardano.TxExtraContent - { Cardano.txMetadata = Nothing - , Cardano.txWithdrawals = wdrls - , Cardano.txCertificates = certs - , Cardano.txUpdateProposal = Nothing - } - mkOut = toCardanoTxOut net cred stake - net = error "fixme: mkUnsignedAddress net" - cred = error "fixme: mkUnsignedAddress cred" - stake = error "fixme: mkUnsignedAddress stake" - + certs + (Cardano.WithdrawalsShelley $ SL.Wdrl wdrls) + Nothing -- Update + Nothing -- Metadata hash + in + unsigned mkWithdrawals :: forall (n :: NetworkDiscriminant). (Typeable n) => Proxy n -> ChimericAccount -> Word64 - -> [(Cardano.StakeAddress, Cardano.Lovelace)] + -> Map (SL.RewardAcnt TPraosStandardCrypto) SL.Coin mkWithdrawals proxy (ChimericAccount keyHash) amount | amount == 0 = mempty - | otherwise = - [ ( Cardano.StakeAddress (fromNetworkDiscriminant proxy) keyHashObj - , Cardano.Lovelace $ fromIntegral amount + | otherwise = Map.fromList + [ ( SL.RewardAcnt (fromNetworkDiscriminant proxy) keyHashObj + , SL.Coin $ fromIntegral amount ) ] where - keyHashObj = SL.KeyHashObj $ SL.KeyHash $ Hash.UnsafeHash $ toShort keyHash + keyHashObj = SL.KeyHashObj $ SL.KeyHash $ Hash.UnsafeHash keyHash + +-- TODO: The SlotId-SlotNo conversion based on epoch length would not +-- work if the epoch length changed in a hard fork. -- NOTE: The (+7200) was selected arbitrarily when we were trying to get -- this working on the FF testnet. Perhaps a better motivated and/or @@ -573,17 +569,21 @@ defaultTTL :: SlotNo -> SlotNo defaultTTL = (+ 7200) mkShelleyWitness - :: Cardano.TxBody Shelley + :: SL.TxBody TPraosStandardCrypto -> (XPrv, Passphrase "encryption") - -> Cardano.Witness Shelley + -> SL.WitVKey TPraosStandardCrypto 'SL.Witness mkShelleyWitness body (prv, pwd) = - Cardano.makeShelleyKeyWitness body (Cardano.WitnessPaymentKey $ key) + SL.WitVKey key sig where - key = error "fixme: SigningKey PaymentKey" - -- vk = SL.VKey - -- $ VerKeyEd25519DSIGN - -- $ unsafeMkEd25519 - -- $ toXPub prv + sig = SignedDSIGN + $ fromMaybe (error "error converting signatures") + $ rawDeserialiseSigDSIGN + $ serialize' (SL.hashTxBody body) `signWith` (prv, pwd) + + key = SL.VKey + $ VerKeyEd25519DSIGN + $ unsafeMkEd25519 + $ toXPub prv signWith :: ByteString @@ -603,7 +603,6 @@ mkByronWitness -> (XPrv, Passphrase "encryption") -> SL.BootstrapWitness TPraosStandardCrypto mkByronWitness body protocolMagic addr (prv, Passphrase pwd) = - -- fixme: use makeShelleyBootstrapWitness SL.makeBootstrapWitness txHash signingKey addrAttr where (SL.TxId txHash) = SL.txid body From 71113ede825a98b027eed8854058db24d97bd8fe Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Mon, 20 Jul 2020 17:17:07 +0200 Subject: [PATCH 06/86] Start converting Shelley TransactionLayer to new Cardano.Api.Typed --- .../Cardano/Wallet/Shelley/Compatibility.hs | 29 ++- .../src/Cardano/Wallet/Shelley/Transaction.hs | 231 +++++++++--------- 2 files changed, 133 insertions(+), 127 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index c8f5eb6dd05..de1bc656f2a 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -54,6 +54,9 @@ module Cardano.Wallet.Shelley.Compatibility , toShelleyCoin , fromShelleyCoin , toHDPayloadAddress + , toCardanoStakeCredential + , toCardanoStakeAddress + , fromShelleyTx -- ** Stake pools , fromPoolId @@ -94,7 +97,7 @@ import Cardano.Address.Derivation import Cardano.Api.Shelley.Genesis ( ShelleyGenesis (..) ) import Cardano.Api.Typed - ( Shelley ) + ( AsType (..), Shelley, deserialiseFromRawBytes ) import Cardano.Binary ( fromCBOR, serialize' ) import Cardano.Crypto.Hash.Class @@ -151,7 +154,7 @@ import Data.Foldable import Data.Map.Strict ( Map ) import Data.Maybe - ( isJust, mapMaybe ) + ( fromMaybe, isJust, mapMaybe ) import Data.Proxy ( Proxy ) import Data.Quantity @@ -216,6 +219,7 @@ import qualified Codec.Binary.Bech32.TH as Bech32 import qualified Codec.CBOR.Decoding as CBOR import qualified Data.ByteString as BS import qualified Data.ByteString.Lazy as BL +import qualified Data.ByteString.Short as SBS import qualified Data.Map.Strict as Map import qualified Data.Set as Set import qualified Data.Text.Encoding as T @@ -830,17 +834,32 @@ toCardanoTxIn :: W.TxIn -> Cardano.TxIn toCardanoTxIn (W.TxIn tid ix) = Cardano.TxIn (toCardanoTxId tid) (Cardano.TxIx (fromIntegral ix)) +toCardanoStakeCredential :: W.ChimericAccount -> Cardano.StakeCredential +toCardanoStakeCredential = Cardano.StakeCredentialByKey + . Cardano.StakeKeyHash + . SL.KeyHash + . UnsafeHash + . SBS.toShort + . W.unChimericAccount + +toCardanoStakeAddress :: W.ChimericAccount -> Cardano.StakeAddress +toCardanoStakeAddress = + fromMaybe (error "toCardanStakeAddress: malformed address") + . deserialiseFromRawBytes AsStakeAddress + . W.unChimericAccount + toCardanoLovelace :: W.Coin -> Cardano.Lovelace toCardanoLovelace (W.Coin c) = Cardano.Lovelace $ safeCast c where safeCast :: Word64 -> Integer safeCast = fromIntegral -toCardanoTxOut :: Cardano.NetworkId -> Cardano.PaymentCredential -> Cardano.StakeAddressReference -> W.TxOut -> Cardano.TxOut Cardano.Shelley -toCardanoTxOut net cred stake (W.TxOut addr coin) = +toCardanoTxOut :: W.TxOut -> Cardano.TxOut Shelley +toCardanoTxOut (W.TxOut (W.Address addr) coin) = Cardano.TxOut addr' (toCardanoLovelace coin) where - addr' = Cardano.makeShelleyAddress net cred stake + addr' = fromMaybe (error "toCardanoTxOut: malformed address") + $ deserialiseFromRawBytes AsShelleyAddress addr -- | Convert from a chimeric account address (which is a hash of a public key) -- to a shelley ledger stake credential. diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 559c39d4477..4d22fc99a31 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -6,6 +6,7 @@ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE Rank2Types #-} {-# LANGUAGE RoleAnnotations #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} @@ -78,13 +79,15 @@ import Cardano.Wallet.Shelley.Compatibility ( Shelley , TPraosStandardCrypto , fromNetworkDiscriminant + , fromShelleyTx , toByronNetworkMagic , toCardanoLovelace + , toCardanoStakeAddress + , toCardanoStakeCredential , toCardanoTxIn , toCardanoTxOut , toHDPayloadAddress , toSealed - , toSlotNo , toStakeKeyDeregCert , toStakeKeyRegCert , toStakePoolDlgCert @@ -119,14 +122,15 @@ import Ouroboros.Network.Block import Type.Reflection ( Typeable ) -import qualified Cardano.Api as Cardano -import qualified Cardano.Api.Typed as CardanoTyped +--import qualified Cardano.Api as Cardano +import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as Crypto import qualified Cardano.Crypto.Hash.Class as Hash import qualified Cardano.Crypto.Wallet as CC import qualified Cardano.Wallet.Primitive.CoinSelection as CS import qualified Crypto.PubKey.Ed25519 as Ed25519 +import qualified Data.ByteArray as BA import qualified Data.ByteString as BS import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Lazy.Char8 as L8 @@ -149,18 +153,18 @@ import qualified Shelley.Spec.Ledger.UTxO as SL -- -- Designed to allow us to have /one/ @mkTx@ which doesn't care whether we -- include certificates or not. -data TxPayload c = TxPayload +data TxPayload era = TxPayload { _certificates :: [Cardano.Certificate] -- ^ Certificates to be included in the transactions. - , _extraWitnesses :: SL.TxBody c -> SL.WitnessSet c + , _extraWitnesses :: Cardano.TxBody era -> [Cardano.Witness era] -- ^ Create payload-specific witesses given the unsigned transaction body. -- -- Caller has the freedom and responsibility to provide the correct -- witnesses for what they're trying to do. } -emptyTxPayload :: Crypto c => TxPayload c +emptyTxPayload :: TxPayload c emptyTxPayload = TxPayload mempty mempty data TxWitnessTag @@ -186,7 +190,7 @@ mkTx ) => Proxy n -> ProtocolMagic - -> TxPayload TPraosStandardCrypto + -> TxPayload Cardano.Shelley -> SlotNo -- ^ Time to Live -> (k 'AddressK XPrv, Passphrase "encryption") @@ -204,28 +208,32 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key wits <- case (txWitnessTagFor @k) of TxWitnessShelleyUTxO -> do - addrWits <- fmap Set.fromList $ forM (CS.inputs cs) $ \(_, TxOut addr _) -> do + addrWits <- forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr pure $ mkShelleyWitness unsigned (getRawKey k, pwd) let wdrlsWits - | Map.null wdrls = Set.empty - | otherwise = Set.singleton $ - mkShelleyWitness unsigned (getRawKey rewardAcnt, pwdAcnt) + | null wdrls = [] + | otherwise = + [mkShelleyWitness unsigned (getRawKey rewardAcnt, pwdAcnt)] - pure $ (SL.WitnessSet (addrWits <> wdrlsWits) mempty mempty) - <> mkExtraWits unsigned + pure $ mkExtraWits unsigned <> addrWits <> wdrlsWits TxWitnessByronUTxO -> do - bootstrapWits <- fmap Set.fromList $ forM (CS.inputs cs) $ \(_, TxOut addr _) -> do + bootstrapWits <- forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr pure $ mkByronWitness unsigned pm addr (getRawKey k, pwd) - pure $ SL.WitnessSet mempty mempty bootstrapWits - <> mkExtraWits unsigned + pure $ bootstrapWits <> mkExtraWits unsigned - let metadata = SL.SNothing - - pure $ toSealed $ SL.Tx unsigned wits metadata + let signed = Cardano.makeSignedTransaction wits unsigned + let tx = fromTypedTx signed + return (tx, undefined) + where + -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, + -- so we convert directly to the concrete wallet Tx type: + fromTypedTx :: Cardano.Tx Cardano.Shelley -> Tx + fromTypedTx (Cardano.ShelleyTx x) = + let (tx,_,_) = fromShelleyTx x in tx newTransactionLayer :: forall (n :: NetworkDiscriminant) k t. @@ -236,11 +244,10 @@ newTransactionLayer ) => Proxy n -> ProtocolMagic - -> EpochLength -> TransactionLayer t k -newTransactionLayer proxy protocolMagic epochLength = TransactionLayer +newTransactionLayer proxy protocolMagic = TransactionLayer { mkStdTx = \acc ks tip -> - mkTx proxy protocolMagic emptyTxPayload (defaultTTL epochLength tip) acc ks + mkTx proxy protocolMagic emptyTxPayload (defaultTTL tip) acc ks , initDelegationSelection = _initDelegationSelection , mkDelegationJoinTx = _mkDelegationJoinTx , mkDelegationQuitTx = _mkDelegationQuitTx @@ -271,7 +278,7 @@ newTransactionLayer proxy protocolMagic epochLength = TransactionLayer -- ^ Reward account -> (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) -- ^ Key store - -> SlotId + -> SlotNo -- ^ Tip of the chain, for TTL -> CoinSelection -- ^ A balanced coin selection where all change addresses have been @@ -287,13 +294,12 @@ newTransactionLayer proxy protocolMagic epochLength = TransactionLayer else [ toStakePoolDlgCert accXPub poolId ] - let mkWits unsigned = SL.WitnessSet - (Set.singleton (mkShelleyWitness unsigned (getRawKey accXPrv, pwd'))) - mempty - mempty + let mkWits unsigned = + [ mkShelleyWitness unsigned (getRawKey accXPrv, pwd') + ] let payload = TxPayload certs mkWits - let ttl = defaultTTL epochLength tip + let ttl = defaultTTL tip mkTx proxy protocolMagic payload ttl acc keyFrom cs _mkDelegationQuitTx @@ -301,7 +307,7 @@ newTransactionLayer proxy protocolMagic epochLength = TransactionLayer -- reward account -> (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) -- Key store - -> SlotId + -> SlotNo -- Tip of the chain, for TTL -> CoinSelection -- A balanced coin selection where all change addresses have been @@ -310,13 +316,12 @@ newTransactionLayer proxy protocolMagic epochLength = TransactionLayer _mkDelegationQuitTx acc@(accXPrv, pwd') keyFrom tip cs = do let accXPub = toXPub $ getRawKey accXPrv let certs = [toStakeKeyDeregCert accXPub] - let mkWits unsigned = SL.WitnessSet - (Set.singleton (mkShelleyWitness unsigned (getRawKey accXPrv, pwd'))) - mempty - mempty + let mkWits unsigned = + [ mkShelleyWitness unsigned (getRawKey accXPrv, pwd') + ] let payload = TxPayload certs mkWits - let ttl = defaultTTL epochLength tip + let ttl = defaultTTL tip mkTx proxy protocolMagic payload ttl acc keyFrom cs _estimateMaxNumberOfInputs @@ -370,8 +375,8 @@ _decodeSignedTx :: ByteString -> Either ErrDecodeSignedTx (Tx, SealedTx) _decodeSignedTx bytes = do - case CardanoTyped.deserialiseFromCBOR CardanoTyped.AsShelleyTx bytes of - Right (CardanoTyped.ShelleyTx txValid) -> + case Cardano.deserialiseFromCBOR Cardano.AsShelleyTx bytes of + Right (Cardano.ShelleyTx txValid) -> pure $ toSealed txValid Left decodeErr -> Left $ ErrDecodeSignedTxWrongPayload (T.pack $ show decodeErr) @@ -396,6 +401,8 @@ _minimumFee proxy pm policy action cs = where LinearFee (Quantity a) (Quantity b) _unused = policy +-- TODO: Can this function be re-written by calling @mkTx@ with dummy signing +-- functions? computeTxSize :: forall (n :: NetworkDiscriminant). Typeable n => Proxy (n :: NetworkDiscriminant) @@ -405,10 +412,16 @@ computeTxSize -> CoinSelection -> Integer computeTxSize proxy pm witTag action cs = - SL.txsize $ SL.Tx unsigned wits metadata + withUnderlyingShelleyTx SL.txsize signed where - metadata = SL.SNothing + withUnderlyingShelleyTx + :: (forall crypto. SL.Tx crypto -> a) + -> Cardano.Tx Cardano.Shelley + -> a + withUnderlyingShelleyTx f (Cardano.ShelleyTx x) = f x + + signed = Cardano.makeSignedTransaction wits unsigned unsigned = mkUnsignedTx maxBound cs' wdrls certs where cs' :: CoinSelection @@ -420,22 +433,28 @@ computeTxSize proxy pm witTag action cs = dummyOutput :: Coin -> TxOut dummyOutput = TxOut $ Address $ BS.pack (1:replicate 56 0) - dummyKeyHash = SL.KeyHash . Hash.UnsafeHash $ dummyKeyHashRaw + dummyStakeCred = toCardanoStakeCredential + $ ChimericAccount dummyKeyHashRaw + + dummyPoolId :: Cardano.PoolId + dummyPoolId = fromMaybe (error "dummyPoolId couldn't be constructed") + $ Cardano.deserialiseFromRawBytes (Cardano.AsHash Cardano.AsStakePoolKey) + $ BS.pack $ replicate 32 0 certs = case action of Nothing -> [] Just RegisterKeyAndJoin{} -> - [ Cardano.shelleyRegisterStakingAddress dummyKeyHash - , Cardano.shelleyDelegateStake dummyKeyHash dummyKeyHash + [ Cardano.makeStakeAddressRegistrationCertificate dummyStakeCred + , Cardano.makeStakeAddressDelegationCertificate dummyStakeCred dummyPoolId ] Just Join{} -> - [ Cardano.shelleyDelegateStake dummyKeyHash dummyKeyHash + [ Cardano.makeStakeAddressDelegationCertificate dummyStakeCred dummyPoolId ] Just Quit -> - [ Cardano.shelleyDeregisterStakingAddress dummyKeyHash + [ Cardano.makeStakeAddressDeregistrationCertificate dummyStakeCred ] - dummyKeyHashRaw = BS.pack (replicate 28 0) + dummyKeyHashRaw = BA.convert $ BS.pack (replicate 28 0) wdrls = mkWithdrawals proxy @@ -443,16 +462,16 @@ computeTxSize proxy pm witTag action cs = (withdrawal cs) (addrWits, certWits) = - ( Set.union - (Set.map dummyWitnessUniq $ Set.fromList (fst <$> CS.inputs cs)) - (if Map.null wdrls then Set.empty else Set.singleton (dummyWitness "0")) + ( + map dummyWitnessUniq (fst <$> CS.inputs cs) + <> [dummyWitness "0" | null wdrls] , case action of - Nothing -> Set.empty - Just{} -> Set.singleton (dummyWitness "a") + Nothing -> [] + Just{} -> [dummyWitness "a"] ) where - dummyWitness :: BL.ByteString -> SL.WitVKey TPraosStandardCrypto 'SL.Witness - dummyWitness chaff = SL.WitVKey key sig + dummyWitness :: BL.ByteString -> Cardano.Witness Cardano.Shelley + dummyWitness chaff = Cardano.ShelleyKeyWitness $ SL.WitVKey key sig where key = SL.VKey $ fromMaybe (error "error creating dummy witness ver key") @@ -464,38 +483,21 @@ computeTxSize proxy pm witTag action cs = $ rawDeserialiseSigDSIGN $ bloatChaff sigLen chaff - dummyWitnessUniq :: TxIn -> SL.WitVKey TPraosStandardCrypto 'SL.Witness + dummyWitnessUniq :: TxIn -> Cardano.Witness Cardano.Shelley dummyWitnessUniq (TxIn (Hash txid) ix) = dummyWitness chaff where chaff = L8.pack (show ix) <> BL.fromStrict txid - byronWits = Set.map dummyWitnessUniq $ Set.fromList (CS.inputs cs) - where - dummyWitness :: BL.ByteString -> Address -> SL.BootstrapWitness TPraosStandardCrypto - dummyWitness chaff addr = - SL.BootstrapWitness key sig cc padding - where - key = SL.VKey - $ fromMaybe (error "error creating dummy witness ver key") - $ rawDeserialiseVerKeyDSIGN - $ bloatChaff keyLen chaff - sig = SignedDSIGN - $ fromMaybe (error "error creating dummy witness sig") - $ rawDeserialiseSigDSIGN - $ bloatChaff sigLen chaff - - cc = SL.ChainCode - $ bloatChaff ccLen "0" - - padding = SL.byronVerKeyAddressPadding - $ Byron.mkAttributes - $ Byron.AddrAttributes - (toHDPayloadAddress addr) - (toByronNetworkMagic pm) + -- Note that the "byron"/bootstrap witnesses are still shelley era + -- witnesses. + byronWits = map dummyWitnessUniq $ CS.inputs cs + where + dummyWitness :: BL.ByteString -> Address -> Cardano.Witness Cardano.Shelley + dummyWitness chaff addr = error "todo" - dummyWitnessUniq :: (TxIn, TxOut) -> SL.BootstrapWitness TPraosStandardCrypto + dummyWitnessUniq :: (TxIn, TxOut) -> Cardano.Witness Cardano.Shelley dummyWitnessUniq (TxIn (Hash txid) ix, TxOut addr _) = dummyWitness chaff addr where @@ -505,16 +507,18 @@ computeTxSize proxy pm witTag action cs = keyLen = sizeVerKeyDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) - ccLen = 32 + _ccLen = 32::Int bloatChaff :: Word -> BL.ByteString -> ByteString bloatChaff n = BL.toStrict . BL.take (fromIntegral n) . BL.cycle + -- TODO: Surely we can allow byron witnesses paying for certificates? + -- Should be no reason to case here. wits = case witTag of TxWitnessShelleyUTxO -> - SL.WitnessSet (Set.union addrWits certWits) mempty mempty + addrWits <> certWits TxWitnessByronUTxO -> - SL.WitnessSet mempty mempty byronWits + byronWits lookupPrivateKey :: (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) @@ -526,41 +530,31 @@ lookupPrivateKey keyFrom addr = mkUnsignedTx :: Cardano.SlotNo -> CoinSelection - -> Map (SL.RewardAcnt TPraosStandardCrypto) SL.Coin + -> [(Cardano.StakeAddress, Cardano.Lovelace)] -> [Cardano.Certificate] - -> Cardano.ShelleyTxBody + -> Cardano.TxBody Cardano.Shelley mkUnsignedTx ttl cs wdrls certs = - let - Cardano.TxUnsignedShelley unsigned = Cardano.buildShelleyTransaction - (toCardanoTxIn . fst <$> CS.inputs cs) - (map toCardanoTxOut $ CS.outputs cs) + Cardano.makeShelleyTransaction + Cardano.txExtraContentEmpty ttl (toCardanoLovelace $ Coin $ feeBalance cs) - certs - (Cardano.WithdrawalsShelley $ SL.Wdrl wdrls) - Nothing -- Update - Nothing -- Metadata hash - in - unsigned + (toCardanoTxIn . fst <$> CS.inputs cs) + (map toCardanoTxOut $ CS.outputs cs) mkWithdrawals :: forall (n :: NetworkDiscriminant). (Typeable n) => Proxy n -> ChimericAccount -> Word64 - -> Map (SL.RewardAcnt TPraosStandardCrypto) SL.Coin -mkWithdrawals proxy (ChimericAccount keyHash) amount + -> [(Cardano.StakeAddress, Cardano.Lovelace)] +mkWithdrawals proxy acc amount | amount == 0 = mempty - | otherwise = Map.fromList - [ ( SL.RewardAcnt (fromNetworkDiscriminant proxy) keyHashObj - , SL.Coin $ fromIntegral amount + | otherwise = + [ ( toCardanoStakeAddress acc -- TODO: Won't work I think. We need to + -- add the networkId + , toCardanoLovelace $ Coin amount ) ] - where - keyHashObj = SL.KeyHashObj $ SL.KeyHash $ Hash.UnsafeHash keyHash - --- TODO: The SlotId-SlotNo conversion based on epoch length would not --- work if the epoch length changed in a hard fork. -- NOTE: The (+7200) was selected arbitrarily when we were trying to get -- this working on the FF testnet. Perhaps a better motivated and/or @@ -569,21 +563,15 @@ defaultTTL :: SlotNo -> SlotNo defaultTTL = (+ 7200) mkShelleyWitness - :: SL.TxBody TPraosStandardCrypto + :: Cardano.TxBody Cardano.Shelley -> (XPrv, Passphrase "encryption") - -> SL.WitVKey TPraosStandardCrypto 'SL.Witness -mkShelleyWitness body (prv, pwd) = - SL.WitVKey key sig + -> Cardano.Witness Cardano.Shelley +mkShelleyWitness body xprv = + Cardano.makeShelleyKeyWitness body (unencrypt xprv) where - sig = SignedDSIGN - $ fromMaybe (error "error converting signatures") - $ rawDeserialiseSigDSIGN - $ serialize' (SL.hashTxBody body) `signWith` (prv, pwd) - - key = SL.VKey - $ VerKeyEd25519DSIGN - $ unsafeMkEd25519 - $ toXPub prv + unencrypt (xprv, pwd) = Cardano.WitnessPaymentExtendedKey + $ Cardano.PaymentExtendedSigningKey + $ CC.xPrvChangePass pwd BS.empty xprv signWith :: ByteString @@ -597,19 +585,18 @@ unsafeMkEd25519 = throwCryptoError . Ed25519.publicKey . xpubPublicKey mkByronWitness - :: SL.TxBody TPraosStandardCrypto + :: Cardano.TxBody Cardano.Shelley -> ProtocolMagic -> Address -> (XPrv, Passphrase "encryption") - -> SL.BootstrapWitness TPraosStandardCrypto + -> Cardano.Witness Cardano.Shelley mkByronWitness body protocolMagic addr (prv, Passphrase pwd) = - SL.makeBootstrapWitness txHash signingKey addrAttr + Cardano.makeShelleyBootstrapWitness networkId body signingKey where - (SL.TxId txHash) = SL.txid body - signingKey = Crypto.SigningKey $ CC.xPrvChangePass pwd BS.empty prv - addrAttr = Byron.mkAttributes $ Byron.AddrAttributes - (toHDPayloadAddress addr) - (toByronNetworkMagic protocolMagic) + networkId = undefined + signingKey = Cardano.ByronSigningKey + $ Crypto.SigningKey + $ CC.xPrvChangePass pwd BS.empty prv -------------------------------------------------------------------------------- -- Extra validations on coin selection From a0b5c8342f919c8a6251492d667ebf544d9624e7 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Mon, 20 Jul 2020 18:19:23 +0200 Subject: [PATCH 07/86] Add toCardanoNetworkId and remove @n from tl --- lib/shelley/src/Cardano/Wallet/Shelley.hs | 15 ++- .../Cardano/Wallet/Shelley/Compatibility.hs | 16 +++ .../src/Cardano/Wallet/Shelley/Transaction.hs | 103 +++++++----------- 3 files changed, 63 insertions(+), 71 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley.hs b/lib/shelley/src/Cardano/Wallet/Shelley.hs index d8c17eabaf1..ee4c159b660 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley.hs @@ -116,7 +116,12 @@ import Cardano.Wallet.Registry import Cardano.Wallet.Shelley.Api.Server ( server ) import Cardano.Wallet.Shelley.Compatibility - ( CardanoBlock, TPraosStandardCrypto, fromCardanoBlock, fromNetworkMagic ) + ( CardanoBlock + , TPraosStandardCrypto + , fromCardanoBlock + , fromNetworkMagic + , toCardanoNetworkId + ) import Cardano.Wallet.Shelley.Network ( NetworkLayerLog, withNetworkLayer ) import Cardano.Wallet.Shelley.Pools @@ -255,13 +260,13 @@ serveWallet serveApp socket = withIOManager $ \io -> do withNetworkLayer networkTracer np socketPath vData $ \nl -> do withWalletNtpClient io ntpClientTracer $ \ntpClient -> do - let pm = fromNetworkMagic $ networkMagic $ fst vData let gp = genesisParameters np - randomApi <- apiLayer (newTransactionLayer proxy pm) nl + let net = toCardanoNetworkId proxy + randomApi <- apiLayer (newTransactionLayer net) nl Server.idleWorker - icarusApi <- apiLayer (newTransactionLayer proxy pm) nl + icarusApi <- apiLayer (newTransactionLayer net) nl Server.idleWorker - shelleyApi <- apiLayer (newTransactionLayer proxy pm) nl + shelleyApi <- apiLayer (newTransactionLayer net) nl Server.manageRewardBalance withPoolsMonitoring databaseDir gp nl $ \spl -> do diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index de1bc656f2a..991ab9f743c 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -82,6 +82,7 @@ module Cardano.Wallet.Shelley.Compatibility , fromTip' , fromShelleyPParams , fromNetworkDiscriminant + , toCardanoNetworkId -- * Internal Conversions , decentralizationLevelFromPParams @@ -803,6 +804,21 @@ fromUnitInterval x = , show x ] +toCardanoNetworkId + :: forall (n :: NetworkDiscriminant). (Typeable n) + => Proxy n + -> Cardano.NetworkId +toCardanoNetworkId _ = + if isMainnet + then Cardano.Mainnet + else Cardano.Testnet networkMagic + where + -- TODO: How do we check if we are on staging? + isMainnet = case testEquality (typeRep @n) (typeRep @'Mainnet) of + Just{} -> True + Nothing -> False + networkMagic = error "toCardanoNetwork: networkMagic should be unneeded" + fromNetworkDiscriminant :: forall (n :: NetworkDiscriminant). (Typeable n) => Proxy n diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 4d22fc99a31..89d0339cae1 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -39,6 +39,8 @@ import Prelude import Cardano.Address.Derivation ( XPrv, XPub, toXPub, xpubPublicKey ) +import Cardano.Api.Typed + ( NetworkId ) import Cardano.Binary ( serialize' ) import Cardano.Crypto.DSIGN @@ -82,6 +84,7 @@ import Cardano.Wallet.Shelley.Compatibility , fromShelleyTx , toByronNetworkMagic , toCardanoLovelace + , toCardanoNetworkId , toCardanoStakeAddress , toCardanoStakeCredential , toCardanoTxIn @@ -183,13 +186,8 @@ instance TxWitnessTagFor IcarusKey where txWitnessTagFor = TxWitnessByronUTxO instance TxWitnessTagFor ByronKey where txWitnessTagFor = TxWitnessByronUTxO mkTx - :: forall (n :: NetworkDiscriminant) k. - ( Typeable n - , TxWitnessTagFor k - , WalletKey k - ) - => Proxy n - -> ProtocolMagic + :: forall k. (TxWitnessTagFor k, WalletKey k) + => Cardano.NetworkId -> TxPayload Cardano.Shelley -> SlotNo -- ^ Time to Live @@ -198,9 +196,9 @@ mkTx -> (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) -> CoinSelection -> Either ErrMkTx (Tx, SealedTx) -mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) keyFrom cs = do +mkTx networkId (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) keyFrom cs = do let wdrls = mkWithdrawals - proxy + networkId (toChimericAccountRaw . getRawKey . publicKey $ rewardAcnt) (withdrawal cs) @@ -222,7 +220,7 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key TxWitnessByronUTxO -> do bootstrapWits <- forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr - pure $ mkByronWitness unsigned pm addr (getRawKey k, pwd) + pure $ mkByronWitness unsigned networkId addr (getRawKey k, pwd) pure $ bootstrapWits <> mkExtraWits unsigned let signed = Cardano.makeSignedTransaction wits unsigned @@ -236,24 +234,22 @@ mkTx proxy pm (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) key let (tx,_,_) = fromShelleyTx x in tx newTransactionLayer - :: forall (n :: NetworkDiscriminant) k t. + :: forall k t. ( t ~ IO Shelley , TxWitnessTagFor k , WalletKey k - , Typeable n ) - => Proxy n - -> ProtocolMagic + => NetworkId -> TransactionLayer t k -newTransactionLayer proxy protocolMagic = TransactionLayer +newTransactionLayer networkId = TransactionLayer { mkStdTx = \acc ks tip -> - mkTx proxy protocolMagic emptyTxPayload (defaultTTL tip) acc ks + mkTx networkId emptyTxPayload (defaultTTL tip) acc ks , initDelegationSelection = _initDelegationSelection , mkDelegationJoinTx = _mkDelegationJoinTx , mkDelegationQuitTx = _mkDelegationQuitTx , decodeSignedTx = _decodeSignedTx - , minimumFee = _minimumFee @_ @k proxy protocolMagic - , estimateMaxNumberOfInputs = _estimateMaxNumberOfInputs @_ @k proxy protocolMagic + , minimumFee = _minimumFee @k networkId + , estimateMaxNumberOfInputs = _estimateMaxNumberOfInputs @k networkId , validateSelection = const $ return () , allowUnbalancedTx = True } @@ -300,7 +296,7 @@ newTransactionLayer proxy protocolMagic = TransactionLayer let payload = TxPayload certs mkWits let ttl = defaultTTL tip - mkTx proxy protocolMagic payload ttl acc keyFrom cs + mkTx networkId payload ttl acc keyFrom cs _mkDelegationQuitTx :: (k 'AddressK XPrv, Passphrase "encryption") @@ -322,21 +318,17 @@ newTransactionLayer proxy protocolMagic = TransactionLayer let payload = TxPayload certs mkWits let ttl = defaultTTL tip - mkTx proxy protocolMagic payload ttl acc keyFrom cs + mkTx networkId payload ttl acc keyFrom cs _estimateMaxNumberOfInputs - :: forall (n :: NetworkDiscriminant) k. - ( Typeable n - , TxWitnessTagFor k - ) - => Proxy n - -> ProtocolMagic + :: forall k. TxWitnessTagFor k + => NetworkId -> Quantity "byte" Word16 -- ^ Transaction max size in bytes -> Word8 -- ^ Number of outputs in transaction -> Word8 -_estimateMaxNumberOfInputs proxy pm (Quantity maxSize) nOuts = +_estimateMaxNumberOfInputs networkId (Quantity maxSize) nOuts = fromIntegral $ bisect (lowerBound, upperBound) where bisect (!inf, !sup) @@ -357,7 +349,7 @@ _estimateMaxNumberOfInputs proxy pm (Quantity maxSize) nOuts = isTooBig nInps = size > fromIntegral maxSize where - size = computeTxSize proxy pm (txWitnessTagFor @k) Nothing sel + size = computeTxSize networkId (txWitnessTagFor @k) Nothing sel sel = dummyCoinSel nInps (fromIntegral nOuts) dummyCoinSel :: Int -> Int -> CoinSelection @@ -382,18 +374,14 @@ _decodeSignedTx bytes = do Left $ ErrDecodeSignedTxWrongPayload (T.pack $ show decodeErr) _minimumFee - :: forall (n :: NetworkDiscriminant) k. - ( Typeable n - , TxWitnessTagFor k - ) - => Proxy (n :: NetworkDiscriminant) - -> ProtocolMagic + :: forall k. (TxWitnessTagFor k) + => NetworkId -> FeePolicy -> Maybe DelegationAction -> CoinSelection -> Fee -_minimumFee proxy pm policy action cs = - computeFee $ computeTxSize proxy pm (txWitnessTagFor @k) action cs +_minimumFee networkId policy action cs = + computeFee $ computeTxSize networkId (txWitnessTagFor @k) action cs where computeFee :: Integer -> Fee computeFee size = @@ -404,14 +392,12 @@ _minimumFee proxy pm policy action cs = -- TODO: Can this function be re-written by calling @mkTx@ with dummy signing -- functions? computeTxSize - :: forall (n :: NetworkDiscriminant). Typeable n - => Proxy (n :: NetworkDiscriminant) - -> ProtocolMagic + :: Cardano.NetworkId -> TxWitnessTag -> Maybe DelegationAction -> CoinSelection -> Integer -computeTxSize proxy pm witTag action cs = +computeTxSize networkId witTag action cs = withUnderlyingShelleyTx SL.txsize signed where @@ -457,7 +443,7 @@ computeTxSize proxy pm witTag action cs = dummyKeyHashRaw = BA.convert $ BS.pack (replicate 28 0) wdrls = mkWithdrawals - proxy + networkId (ChimericAccount dummyKeyHashRaw) (withdrawal cs) @@ -542,19 +528,16 @@ mkUnsignedTx ttl cs wdrls certs = (map toCardanoTxOut $ CS.outputs cs) mkWithdrawals - :: forall (n :: NetworkDiscriminant). (Typeable n) - => Proxy n + :: NetworkId -> ChimericAccount -> Word64 -> [(Cardano.StakeAddress, Cardano.Lovelace)] -mkWithdrawals proxy acc amount +mkWithdrawals networkId acc amount | amount == 0 = mempty - | otherwise = - [ ( toCardanoStakeAddress acc -- TODO: Won't work I think. We need to - -- add the networkId - , toCardanoLovelace $ Coin amount - ) - ] + | otherwise = [ (stakeAddress, toCardanoLovelace $ Coin amount) ] + where + cred = toCardanoStakeCredential acc + stakeAddress = Cardano.makeStakeAddress networkId cred -- NOTE: The (+7200) was selected arbitrarily when we were trying to get -- this working on the FF testnet. Perhaps a better motivated and/or @@ -566,34 +549,22 @@ mkShelleyWitness :: Cardano.TxBody Cardano.Shelley -> (XPrv, Passphrase "encryption") -> Cardano.Witness Cardano.Shelley -mkShelleyWitness body xprv = - Cardano.makeShelleyKeyWitness body (unencrypt xprv) +mkShelleyWitness body key = + Cardano.makeShelleyKeyWitness body (unencrypt key) where unencrypt (xprv, pwd) = Cardano.WitnessPaymentExtendedKey $ Cardano.PaymentExtendedSigningKey $ CC.xPrvChangePass pwd BS.empty xprv -signWith - :: ByteString - -> (XPrv, Passphrase "encryption") - -> ByteString -signWith msg (prv, pass) = - CC.unXSignature . CC.sign pass prv $ msg - -unsafeMkEd25519 :: XPub -> Ed25519.PublicKey -unsafeMkEd25519 = - throwCryptoError . Ed25519.publicKey . xpubPublicKey - mkByronWitness :: Cardano.TxBody Cardano.Shelley - -> ProtocolMagic + -> Cardano.NetworkId -> Address -> (XPrv, Passphrase "encryption") -> Cardano.Witness Cardano.Shelley -mkByronWitness body protocolMagic addr (prv, Passphrase pwd) = +mkByronWitness body networkId addr (prv, Passphrase pwd) = Cardano.makeShelleyBootstrapWitness networkId body signingKey where - networkId = undefined signingKey = Cardano.ByronSigningKey $ Crypto.SigningKey $ CC.xPrvChangePass pwd BS.empty prv From cef8ce715d40f720cf643b7365f01abba7d3e831 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Mon, 20 Jul 2020 21:41:43 +1000 Subject: [PATCH 08/86] bump iohk-nix --- nix/sources.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nix/sources.json b/nix/sources.json index 9c43ab36130..928eff9e98d 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -29,10 +29,10 @@ "homepage": null, "owner": "input-output-hk", "repo": "iohk-nix", - "rev": "437649c24ab8e30d6f08154a22da809a991971a3", - "sha256": "1y784yhdwpmgdjwxnrbzabnpfkbzy9lxi7kpqf9w9kypv9qmszpq", + "rev": "00788ac974a517846dba09bd5e095757011cb083", + "sha256": "0lxffzd31a359d7j9q0vwaj6d5lq0ka5df6g0g30rm91sw7jkpnj", "type": "tarball", - "url": "https://github.com/input-output-hk/iohk-nix/archive/437649c24ab8e30d6f08154a22da809a991971a3.tar.gz", + "url": "https://github.com/input-output-hk/iohk-nix/archive/00788ac974a517846dba09bd5e095757011cb083.tar.gz", "url_template": "https://github.com///archive/.tar.gz" }, "niv": { From 4bbb56decf23ac506f9ddb24e6230168a14c66fa Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 00:56:29 +1000 Subject: [PATCH 09/86] Debugging --- lib/core/src/Cardano/Pool/DB/Sqlite.hs | 5 ++- lib/core/src/Cardano/Wallet.hs | 3 ++ lib/core/src/Cardano/Wallet/Network.hs | 4 +- .../src/Cardano/Wallet/Primitive/Slotting.hs | 37 +++++++++++++++---- .../src/Ouroboros/Network/Client/Wallet.hs | 15 +++++--- .../src/Cardano/Wallet/Shelley/Network.hs | 28 ++++++++++++-- 6 files changed, 74 insertions(+), 18 deletions(-) diff --git a/lib/core/src/Cardano/Pool/DB/Sqlite.hs b/lib/core/src/Cardano/Pool/DB/Sqlite.hs index c3324980489..7ed3ad2245c 100644 --- a/lib/core/src/Cardano/Pool/DB/Sqlite.hs +++ b/lib/core/src/Cardano/Pool/DB/Sqlite.hs @@ -105,6 +105,8 @@ import Database.Persist.Sql ) import Database.Persist.Sqlite ( SqlPersistT ) +import GHC.Stack + ( HasCallStack ) import System.Directory ( removeFile ) import System.FilePath @@ -482,7 +484,8 @@ backoff time iter = addUTCTime delay time -------------------------------------------------------------------------------} selectPoolProduction - :: TimeInterpreter IO + :: HasCallStack + => TimeInterpreter IO -> EpochNo -> SqlPersistT IO [PoolProduction] selectPoolProduction timeInterpreter epoch = do diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index f7e843d1f7f..5bc8e5c145d 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -375,6 +375,8 @@ import Fmt ( blockListF, pretty, (+|), (|+) ) import GHC.Generics ( Generic ) +import GHC.Stack + ( HasCallStack ) import Numeric.Natural ( Natural ) import Safe @@ -642,6 +644,7 @@ walletSyncProgress :: forall ctx s t. ( HasGenesisData ctx , HasNetworkLayer t ctx + , HasCallStack ) => ctx -> Wallet s diff --git a/lib/core/src/Cardano/Wallet/Network.hs b/lib/core/src/Cardano/Wallet/Network.hs index c09b3d0f7d8..2de71f1a4f4 100644 --- a/lib/core/src/Cardano/Wallet/Network.hs +++ b/lib/core/src/Cardano/Wallet/Network.hs @@ -89,6 +89,8 @@ import GHC.Generics ( Generic ) import UnliftIO.Exception ( throwIO ) +import GHC.Stack + ( HasCallStack ) import qualified Data.List.NonEmpty as NE import qualified Data.Text as T @@ -148,7 +150,7 @@ data NetworkLayer m target block = NetworkLayer -> ExceptT ErrGetAccountBalance m (Quantity "lovelace" Word64) , timeInterpreter - :: TimeInterpreter m + :: HasCallStack => TimeInterpreter m } instance Functor m => Functor (NetworkLayer m target) where diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index f9d04111fb0..83e012d9f28 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -69,7 +69,6 @@ import Cardano.Wallet.Primitive.Types , unsafeEpochNo , wholeRange ) -import Control.Exception (throwIO) import Control.Monad ( ap, liftM, (<=<) ) import Control.Monad.IO.Class @@ -98,7 +97,8 @@ import Ouroboros.Consensus.HardFork.History.Qry ( Interpreter, mkInterpreter ) import Ouroboros.Consensus.HardFork.History.Summary ( neverForksSummary ) -import Ouroboros.Consensus.Util.CallStack (HasCallStack) +import GHC.Stack (HasCallStack) +import Fmt (Buildable(..), (+|), (|+), (||+), (+||)) import qualified Cardano.Slotting.Slot as Cardano import qualified Ouroboros.Consensus.BlockchainTime.WallClock.Types as Cardano @@ -243,7 +243,7 @@ mkTimeInterpreterI gp int q = neverFails $ runQuery (MyInterpreter start int) q neverFails = either bomb pure bomb x = error $ "singleEraInterpreter: the impossible happened: " <> show x -interpreterFromGenesis :: GenesisParameters -> TimeInterpreter IO +interpreterFromGenesis :: HasCallStack => GenesisParameters -> (forall a. Qry a -> Either HF.PastHorizonException a) interpreterFromGenesis gp = mkTimeInterpreter start (mkInterpreter summary) where summary = neverForksSummary sz len @@ -251,10 +251,8 @@ interpreterFromGenesis gp = mkTimeInterpreter start (mkInterpreter summary) len = Cardano.mkSlotLength $ unSlotLength $ gp ^. #getSlotLength start = gp ^. #getGenesisBlockDate -mkTimeInterpreter :: StartTime -> Interpreter xs -> TimeInterpreter IO -mkTimeInterpreter start int = either throwIO pure . runQuery mine - where - mine = MyInterpreter (coerce start) int +mkTimeInterpreter :: HasCallStack => StartTime -> Interpreter xs -> (forall a. Qry a -> Either HF.PastHorizonException a) +mkTimeInterpreter start = runQuery . MyInterpreter (coerce start) -- | Wrapper around HF.Qry to allow converting times relative to the genesis -- block date to absolute ones @@ -276,6 +274,31 @@ instance Monad Qry where return = pure (>>=) = QBind +instance Buildable (Qry a) where + build = \case + HardForkQry qry -> build qry + RelToUTCTime t -> "RelToUTCTime "+||t||+"" + UTCTimeToRel t -> "UTCTimeToRel "+||t||+"" + QPure _ -> "qPure" + QBind q _ -> "qBind " <> build q + +instance Buildable (HF.Qry a) where + build = \case + HF.QPure _ -> "QPure" + HF.QBind q _ -> "QBind "+|q|+"" + HF.QAbsToRelTime t -> "QAbsToRelTime "+||t||+"" + HF.QAbsToRelSlot sl -> "QAbsToRelSlot "+||sl||+"" + HF.QAbsToRelEpoch ep -> "QAbsToRelEpoch "+||ep||+"" + HF.QRelToAbsTime t -> "QRelToAbsTime " -- +||t||+"" + HF.QRelToAbsSlot slt -> "QRelToAbsSlot " -- +||slt||+"" + HF.QRelToAbsEpoch epe -> "QRelToAbsEpoch "-- +||epe||+"" + HF.QRelTimeToSlot t -> "QRelTimeToSlot "-- +||t||+"" + HF.QRelSlotToTime sl -> "QRelSlotToTime "-- +||sl||+"" + HF.QRelSlotToEpoch sl -> "QRelSlotToEpoch "-- +||sl||+"" + HF.QRelEpochToSlot ep -> "QRelEpochToSlot "-- +||ep||+"" + HF.QSlotLength sl -> "QSlotLength "+||sl||+"" + HF.QEpochSize ep -> "QEpochSize "+||ep||+"" + runQuery :: HasCallStack => MyInterpreter xs -> Qry a -> Either HF.PastHorizonException a runQuery (MyInterpreter systemStart int) = go where diff --git a/lib/core/src/Ouroboros/Network/Client/Wallet.hs b/lib/core/src/Ouroboros/Network/Client/Wallet.hs index d6c01018451..44e9384293b 100644 --- a/lib/core/src/Ouroboros/Network/Client/Wallet.hs +++ b/lib/core/src/Ouroboros/Network/Client/Wallet.hs @@ -363,12 +363,13 @@ chainSyncWithBlocks tr fromTip queue responseBuffer = -> P.ClientStNext n block (Tip block) m Void collectResponses respond blocks Zero = P.ClientStNext { P.recvMsgRollForward = \block tip -> do - traceWith tr $ MsgChainRollForward block + traceWith tr $ MsgChainRollForward block (getTipPoint tip) let cursor' = blockPoint block let blocks' = reverse (block:blocks) let tip' = fromTip tip respond (RollForward cursor' tip' blocks') let distance = tipDistance (blockNo block) tip + traceWith tr $ MsgTipDistance distance let strategy = if distance <= 1 then oneByOne else pipeline (fromIntegral $ min distance 1000) Zero @@ -600,8 +601,9 @@ send queue cmd = do -- Tracing data ChainSyncLog block point - = MsgChainRollForward block + = MsgChainRollForward block point | MsgChainRollBackward point Int + | MsgTipDistance Natural mapChainSyncLog :: (b1 -> b2) @@ -609,14 +611,15 @@ mapChainSyncLog -> ChainSyncLog b1 p1 -> ChainSyncLog b2 p2 mapChainSyncLog f g = \case - MsgChainRollForward block -> MsgChainRollForward (f block) + MsgChainRollForward block point -> MsgChainRollForward (f block) (g point) MsgChainRollBackward point n -> MsgChainRollBackward (g point) n + MsgTipDistance d -> MsgTipDistance d instance (ToText block, ToText point) => ToText (ChainSyncLog block point) where toText = \case - MsgChainRollForward b -> - "ChainSync roll forward: " <> toText b + MsgChainRollForward b tip -> + "ChainSync roll forward: " <> toText b <> " tip is " <> toText tip MsgChainRollBackward b 0 -> "ChainSync roll backward: " <> toText b MsgChainRollBackward b bufferSize -> mconcat @@ -625,6 +628,7 @@ instance (ToText block, ToText point) , ", handled inside buffer with remaining length " , toText bufferSize ] + MsgTipDistance d -> "Tip distance: " <> toText d instance HasPrivacyAnnotation (ChainSyncLog block point) @@ -632,3 +636,4 @@ instance HasSeverityAnnotation (ChainSyncLog block point) where getSeverityAnnotation = \case MsgChainRollForward{} -> Debug MsgChainRollBackward{} -> Debug + MsgTipDistance{} -> Debug diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 59b063b16b0..423f72eafb5 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -77,6 +77,8 @@ import Control.Concurrent.Async ( Async, async, asyncThreadId, cancel, link ) import Control.Concurrent.Chan ( dupChan, newChan, readChan, writeChan ) +import Control.Exception + ( throwIO ) import Control.Exception ( IOException ) import Control.Monad @@ -142,6 +144,8 @@ import Data.Word ( Word64 ) import Fmt ( Buildable (..), listF', mapF, pretty ) +import GHC.Stack + ( prettyCallStack ) import GHC.Stack ( HasCallStack ) import Network.Mux @@ -162,6 +166,8 @@ import Ouroboros.Consensus.HardFork.Combinator.AcrossEras ( MismatchEraInfo ) import Ouroboros.Consensus.HardFork.History.Qry ( Interpreter ) +import Ouroboros.Consensus.HardFork.History.Summary + ( PastHorizonException (..) ) import Ouroboros.Consensus.Network.NodeToClient ( ClientCodecs, Codecs' (..), DefaultCodecs, clientCodecs, defaultCodecs ) import Ouroboros.Consensus.Node.NetworkProtocolVersion @@ -449,10 +455,15 @@ withNetworkLayer tr np addrInfo versionData action = do bracketTracer (contramap (MsgWatcherUpdate header) tr) $ cb header - _timeInterpreterQuery :: TVar IO (Maybe (CardanoInterpreter sc)) -> TimeInterpreter IO - _timeInterpreterQuery var q = atomically (readTVar var) >>= \case - Just i -> mkTimeInterpreter getGenesisBlockDate i q - Nothing -> interpreterFromGenesis gp q + _timeInterpreterQuery :: HasCallStack => TVar IO (Maybe (CardanoInterpreter sc)) -> TimeInterpreter IO + _timeInterpreterQuery var query = do + cached <- atomically (readTVar var) + let interpret = maybe (interpreterFromGenesis gp) (mkTimeInterpreter getGenesisBlockDate) cached + case interpret query of + Right res -> pure res + Left e -> do + traceWith tr $ MsgInterpreterPastHorizon (pretty query) e + throwIO e type instance GetStakeDistribution (IO Shelley) (CardanoBlock sc) m = (Point (CardanoBlock sc) @@ -868,6 +879,7 @@ data NetworkLayerLog sc where MsgWatcherUpdate :: W.BlockHeader -> BracketLog -> NetworkLayerLog sc MsgChainSyncCmd :: (ChainSyncLog Text Text) -> NetworkLayerLog sc MsgInterpreter :: CardanoInterpreter sc -> NetworkLayerLog sc + MsgInterpreterPastHorizon :: Text -> PastHorizonException -> NetworkLayerLog sc data QueryClientName = TipSyncClient @@ -958,6 +970,13 @@ instance TPraosCrypto sc => ToText (NetworkLayerLog sc) where MsgChainSyncCmd a -> toText a MsgInterpreter interpreter -> "Updated the history interpreter: " <> T.pack (show interpreter) + MsgInterpreterPastHorizon query (PastHorizon callstack eras) -> + "Time interpreter queried past the horizon. " <> + "This should not have happened.\n" <> + "Query is:\n" <> query <> "\n" <> + "Eras are:\n" <> + T.unlines (map (T.pack . show) eras) <> "\n" <> + T.pack (prettyCallStack callstack) instance HasPrivacyAnnotation (NetworkLayerLog b) instance HasSeverityAnnotation (NetworkLayerLog b) where @@ -987,3 +1006,4 @@ instance HasSeverityAnnotation (NetworkLayerLog b) where MsgWatcherUpdate{} -> Debug MsgChainSyncCmd cmd -> getSeverityAnnotation cmd MsgInterpreter{} -> Debug + MsgInterpreterPastHorizon{} -> Critical From e048c9265940a69e7914777f839337f0bc6df1a0 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 00:59:47 +1000 Subject: [PATCH 10/86] Bump cardano-node to latest master --- cardano-1.16.x.yaml | 4 ++-- nix/.stack.nix/cardano-api.nix | 4 ++-- nix/.stack.nix/cardano-cli.nix | 4 ++-- nix/.stack.nix/cardano-config.nix | 4 ++-- nix/.stack.nix/cardano-node.nix | 4 ++-- nix/sources.json | 8 ++++---- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/cardano-1.16.x.yaml b/cardano-1.16.x.yaml index cf803d75b26..3c34e1b0c6f 100644 --- a/cardano-1.16.x.yaml +++ b/cardano-1.16.x.yaml @@ -1,4 +1,4 @@ -name: cardano-1.15.x +name: cardano-1.16.x resolver: lts-14.25 @@ -81,7 +81,7 @@ packages: - shelley/chain-and-ledger/executable-spec/test - git: https://github.com/input-output-hk/cardano-node - commit: e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89 + commit: b218bca02d31f22407e586ec949c7d3637e8c1d3 subdirs: - cardano-api - cardano-cli diff --git a/nix/.stack.nix/cardano-api.nix b/nix/.stack.nix/cardano-api.nix index a51d9dff114..fa80a297242 100644 --- a/nix/.stack.nix/cardano-api.nix +++ b/nix/.stack.nix/cardano-api.nix @@ -109,8 +109,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; - sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; + rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; + sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; }); postUnpack = "sourceRoot+=/cardano-api; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-cli.nix b/nix/.stack.nix/cardano-cli.nix index 82c86619974..3a0e00e2e27 100644 --- a/nix/.stack.nix/cardano-cli.nix +++ b/nix/.stack.nix/cardano-cli.nix @@ -138,8 +138,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; - sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; + rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; + sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; }); postUnpack = "sourceRoot+=/cardano-cli; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-config.nix b/nix/.stack.nix/cardano-config.nix index 8b3415537a8..10beeebffd8 100644 --- a/nix/.stack.nix/cardano-config.nix +++ b/nix/.stack.nix/cardano-config.nix @@ -81,8 +81,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; - sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; + rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; + sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; }); postUnpack = "sourceRoot+=/cardano-config; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-node.nix b/nix/.stack.nix/cardano-node.nix index ce223c98c52..60f2777b473 100644 --- a/nix/.stack.nix/cardano-node.nix +++ b/nix/.stack.nix/cardano-node.nix @@ -181,8 +181,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "e28c1d37832af9c4ec50bb5c64aa83c37dc4aa89"; - sha256 = "0pyfbc8iwyanj9s74b9iqh4h23if94akg4rx7g6ndzsq35jwk2n5"; + rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; + sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; }); postUnpack = "sourceRoot+=/cardano-node; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/sources.json b/nix/sources.json index 928eff9e98d..f948a2051f7 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -1,14 +1,14 @@ { "cardano-node": { - "branch": "1.16.0", + "branch": "master", "description": null, "homepage": null, "owner": "input-output-hk", "repo": "cardano-node", - "rev": "ab846e5e884ac1f3d044a0d15b9e69efc8256036", - "sha256": "1zm4ck89wqab9iw4kav9s0sjqr03xi0711asyzzysrszad24alpl", + "rev": "b218bca02d31f22407e586ec949c7d3637e8c1d3", + "sha256": "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx", "type": "tarball", - "url": "https://github.com/input-output-hk/cardano-node/archive/ab846e5e884ac1f3d044a0d15b9e69efc8256036.tar.gz", + "url": "https://github.com/input-output-hk/cardano-node/archive/b218bca02d31f22407e586ec949c7d3637e8c1d3.tar.gz", "url_template": "https://github.com///archive/.tar.gz" }, "haskell.nix": { From 1ced70db73a250ef88456e4083fe27a4748a76cc Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 02:20:15 +1000 Subject: [PATCH 11/86] Fix cli genesis --- .../src/Cardano/Wallet/Byron/Compatibility.hs | 6 +-- .../Cardano/Wallet/Shelley/Compatibility.hs | 5 +- .../src/Cardano/Wallet/Shelley/Launch.hs | 48 +++++++++---------- 3 files changed, 25 insertions(+), 34 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs index 78eeb753ad9..3928782b730 100644 --- a/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs @@ -22,9 +22,7 @@ -- Conversion functions and static chain settings for Byron. module Cardano.Wallet.Byron.Compatibility - ( Byron - , ByronBlock - , NodeVersionData + ( NodeVersionData -- * Chain Parameters , mainnetVersionData @@ -148,8 +146,6 @@ import qualified Ouroboros.Consensus.Block as O import qualified Ouroboros.Network.Block as O import qualified Ouroboros.Network.Point as Point -data Byron - type NodeVersionData = (NodeToClientVersionData, CodecCBORTerm Text NodeToClientVersionData) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index 991ab9f743c..44eddf1e4a9 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -112,7 +112,7 @@ import Cardano.Wallet.Api.Types , EncodeStakeAddress (..) ) import Cardano.Wallet.Byron.Compatibility - ( fromByronBlock, toByronBlockHeader ) + ( NodeVersionData, fromByronBlock, toByronBlockHeader ) import Cardano.Wallet.Primitive.AddressDerivation ( NetworkDiscriminant (..) ) import Cardano.Wallet.Primitive.Types @@ -241,9 +241,6 @@ import qualified Shelley.Spec.Ledger.Tx as SL import qualified Shelley.Spec.Ledger.TxData as SL import qualified Shelley.Spec.Ledger.UTxO as SL -type NodeVersionData = - (NodeToClientVersionData, CodecCBORTerm Text NodeToClientVersionData) - -------------------------------------------------------------------------------- -- -- Chain Parameters diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 2ead289fdc0..3ddf3cbd419 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -61,8 +61,6 @@ import Cardano.Launcher.Node , NodePort (..) , withCardanoNode ) -import Cardano.Wallet.Byron.Compatibility - ( mainnetVersionData ) import Cardano.Wallet.Logging ( BracketLog, bracketTracer ) import Cardano.Wallet.Network.Ports @@ -79,7 +77,7 @@ import Cardano.Wallet.Primitive.Types import Cardano.Wallet.Shelley ( SomeNetworkDiscriminant (..) ) import Cardano.Wallet.Shelley.Compatibility - ( NodeVersionData, fromGenesisData, testnetVersionData ) + ( NodeVersionData ) import Cardano.Wallet.Unsafe ( unsafeFromHex ) import Control.Concurrent @@ -160,6 +158,7 @@ import Test.Utils.StaticServer ( withStaticServer ) import qualified Cardano.Wallet.Byron.Compatibility as Byron +import qualified Cardano.Wallet.Shelley.Compatibility as Shelley import qualified Data.Aeson as Aeson import qualified Data.Aeson.Types as Aeson import qualified Data.ByteString.Lazy as BL @@ -178,9 +177,7 @@ import qualified Shelley.Spec.Ledger.Coin as SL data NetworkConfiguration where -- | Mainnet does not have network discrimination. MainnetConfig - :: (SomeNetworkDiscriminant, NodeVersionData) - -- ^ Byron mainnet configuration - -> FilePath + :: FilePath -- ^ Genesis data in JSON format, for shelley era. -> NetworkConfiguration @@ -203,7 +200,7 @@ data NetworkConfiguration where -- | Hand-written as there's no Show instance for 'NodeVersionData' instance Show NetworkConfiguration where show = \case - MainnetConfig _ shelleyGenesisFile -> + MainnetConfig shelleyGenesisFile -> "MainnetConfig " <> show shelleyGenesisFile TestnetConfig byronGenesisFile shelleyGenesisFile -> "TestnetConfig " <> show (byronGenesisFile, shelleyGenesisFile) @@ -227,9 +224,7 @@ networkConfigurationOption = mainnet <|> testnet <|> staging testnet = testnetFlag <*> genesisFileOption "byron" <*> genesisFileOption "shelley" staging = stagingFlag <*> genesisFileOption "byron" <*> genesisFileOption "shelley" - mainnetFlag = flag' - (MainnetConfig (SomeNetworkDiscriminant $ Proxy @'Mainnet, mainnetVersionData)) - (long "mainnet") + mainnetFlag = flag' MainnetConfig (long "mainnet") testnetFlag = flag' TestnetConfig (long "testnet") stagingFlag = flag' StagingConfig (long "staging") @@ -247,7 +242,7 @@ someCustomDiscriminant mkSomeNetwork pm@(ProtocolMagic n) = case someNatVal (fromIntegral n) of Just (SomeNat proxy) -> ( mkSomeNetwork proxy - , testnetVersionData pm + , Shelley.testnetVersionData pm ) _ -> error "networkDiscriminantFlag: failed to convert \ \ProtocolMagic to SomeNat." @@ -257,16 +252,16 @@ parseGenesisData -> ExceptT String IO (SomeNetworkDiscriminant, NetworkParameters, NodeVersionData, Block) parseGenesisData = \case - MainnetConfig (discriminant, vData) shelleyGenesisFile -> do - (genesis :: ShelleyGenesis TPraosStandardCrypto) + MainnetConfig shelleyGenesisFile -> do + (shelleyGenesis :: ShelleyGenesis TPraosStandardCrypto) <- ExceptT $ eitherDecode <$> BL.readFile shelleyGenesisFile + let (_snp, _sblock0) = Shelley.fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) - let (np, block0) = fromGenesisData genesis (Map.toList $ sgInitialFunds genesis) pure - ( discriminant - , np - , vData - , block0 + ( SomeNetworkDiscriminant $ Proxy @'Mainnet + , Byron.mainnetNetworkParameters + , Byron.mainnetVersionData + , Byron.emptyGenesis (genesisParameters Byron.mainnetNetworkParameters) ) TestnetConfig byronGenesisFile shelleyGenesisFile -> do @@ -284,21 +279,22 @@ parseGenesisData = \case let nm = sgNetworkMagic shelleyGenesis let pm = ProtocolMagic $ fromIntegral nm let (shelleyDiscriminant, shelleyVData) = someCustomDiscriminant mkSomeNetwork pm - let (np, block0) = fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) + let (snp, sblock0) = Shelley.fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) let byronPm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData let (_byronDiscriminant, _byronVData) = someCustomDiscriminant mkSomeNetwork byronPm let (bnp, bouts) = Byron.fromGenesisData (genesisData, genesisHash) - let _bblock0 = Byron.genesisBlockFromTxOuts (genesisParameters bnp) bouts + let bblock0 = Byron.genesisBlockFromTxOuts (genesisParameters bnp) bouts when (byronPm /= pm) $ - fail "Network discriminants in genesis files to not match." + fail $ "Genesis files: Byron " <> show byronPm <> + " does not match Shelley " <> show pm pure ( shelleyDiscriminant - , np + , bnp , shelleyVData - , block0 + , bblock0 ) StagingConfig byronGenesisFile _shelleyGenesisFile -> do @@ -311,10 +307,12 @@ parseGenesisData = \case -> SomeNetworkDiscriminant mkSomeNetwork _ = SomeNetworkDiscriminant $ Proxy @('Staging pm) + -- fixme: load byron genesis + let nm = sgNetworkMagic genesis let pm = ProtocolMagic $ fromIntegral nm let (discriminant, vData) = someCustomDiscriminant mkSomeNetwork pm - let (np, block0) = fromGenesisData genesis (Map.toList $ sgInitialFunds genesis) + let (np, block0) = Shelley.fromGenesisData genesis (Map.toList $ sgInitialFunds genesis) pure ( discriminant , np @@ -728,7 +726,7 @@ genConfig dir severity systemStart = do >>= either fail pure . Aeson.parseEither parseJSON let nm = sgNetworkMagic genesis - let (networkParameters, block0) = fromGenesisData genesis initialFunds + let (networkParameters, block0) = Shelley.fromGenesisData genesis initialFunds let versionData = ( NodeToClientVersionData $ NetworkMagic nm , nodeToClientCodecCBORTerm From 51dff8dd5efd973099cd720d138f2c4cf66decdf Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 02:52:23 +1000 Subject: [PATCH 12/86] Fix shelley genesis file in $CARDANO_NODE_CONFIGS It has to be exactly the same, because the file hash is used as the shelley nonce. --- nix/pkgs.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nix/pkgs.nix b/nix/pkgs.nix index 523c2bc33dc..5fc9e999aa9 100644 --- a/nix/pkgs.nix +++ b/nix/pkgs.nix @@ -41,7 +41,7 @@ in pkgs: super: with pkgs; { jq . < ${__toFile "${name}-config.json" (__toJSON (updateConfig env))} > $cfg/configuration.json '' + (if env.consensusProtocol == "Cardano" then '' jq . < ${env.genesisFile} > $cfg/genesis-byron.json - jq . < ${env.genesisFileHfc} > $cfg/genesis-shelley.json + cp ${env.genesisFileHfc} $cfg/genesis-shelley.json '' else '' jq . < ${env.genesisFile} > $cfg/genesis.json '')) environments); From 9bdd0261c69bc3fea4f495bb81355372753938b5 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 02:53:27 +1000 Subject: [PATCH 13/86] Logging more info --- lib/shelley/src/Cardano/Wallet/Shelley/Network.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 423f72eafb5..3bd57a81815 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -936,8 +936,9 @@ instance TPraosCrypto sc => ToText (NetworkLayerLog sc) where , ": " , e ] - MsgLocalStateQueryEraMismatch _mismatch -> - "Local state query for the wrong era - this is fine." + MsgLocalStateQueryEraMismatch mismatch -> + "Local state query for the wrong era - this is fine. " <> + T.pack (show mismatch) MsgGetRewardAccountBalance bh acct -> T.unwords [ "Querying the reward account balance for" , pretty acct From c5f815ddda05bccbcf3d53db05c977a6eef1ca10 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 03:10:27 +1000 Subject: [PATCH 14/86] Update shelley transactionspec --- .../Cardano/Wallet/Shelley/TransactionSpec.hs | 67 ++++++++----------- 1 file changed, 27 insertions(+), 40 deletions(-) diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index 1fac0d09cd6..0bb6546dfd2 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -48,10 +48,9 @@ import Cardano.Wallet.Primitive.Types , TxOut (..) , UTxO (..) , mainnetMagic - , testnetMagic ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley, toSealed ) + ( Shelley, toCardanoNetworkId, toSealed ) import Cardano.Wallet.Shelley.Transaction ( mkByronWitness , mkShelleyWitness @@ -96,8 +95,6 @@ import Test.QuickCheck , (===) , (==>) ) -import Type.Reflection - ( Typeable ) import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Wallet.Primitive.CoinSelection as CS @@ -119,8 +116,8 @@ spec = do prop "roundtrip for Shelley witnesses" prop_decodeSignedShelleyTxRoundtrip prop "roundtrip for Byron witnesses" prop_decodeSignedByronTxRoundtrip - estimateMaxInputsTests (Proxy @'Mainnet) mainnetMagic - estimateMaxInputsTests (Proxy @('Testnet 0)) (testnetMagic @0) + estimateMaxInputsTests Cardano.Mainnet + estimateMaxInputsTests (Cardano.Testnet (Cardano.NetworkMagic 0)) describe "cost of withdrawal" $ do it "one can measure the cost of withdrawal" $ property $ \withdrawal -> @@ -162,25 +159,23 @@ spec = do res `shouldBe` Right (FeeEstimation 165281 165281) estimateMaxInputsTests - :: forall (n :: NetworkDiscriminant). Typeable n - => Proxy (n :: NetworkDiscriminant) - -> ProtocolMagic + :: Cardano.NetworkId -> SpecWith () -estimateMaxInputsTests proxy pm@(ProtocolMagic pm') = - describe ("estimateMaxNumberOfInputs for protocolMagic="<> show pm') $ do +estimateMaxInputsTests net = + describe ("estimateMaxNumberOfInputs for networkId="<> show net) $ do it "order of magnitude, nOuts = 1" $ - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm (Quantity 4096) 1 `shouldBe` 27 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 1 `shouldBe` 27 it "order of magnitude, nOuts = 10" $ - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm (Quantity 4096) 10 `shouldBe` 19 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 10 `shouldBe` 19 it "order of magnitude, nOuts = 20" $ - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm (Quantity 4096) 20 `shouldBe` 10 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 20 `shouldBe` 10 it "order of magnitude, nOuts = 30" $ - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm (Quantity 4096) 30 `shouldBe` 1 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 30 `shouldBe` 1 - prop "more outputs ==> less inputs" (prop_moreOutputsMeansLessInputs proxy pm) - prop "less outputs ==> more inputs" (prop_lessOutputsMeansMoreInputs proxy pm) - prop "bigger size ==> more inputs" (prop_biggerMaxSizeMeansMoreInputs proxy pm) + prop "more outputs ==> less inputs" (prop_moreOutputsMeansLessInputs net) + prop "less outputs ==> more inputs" (prop_lessOutputsMeansMoreInputs net) + prop "bigger size ==> more inputs" (prop_biggerMaxSizeMeansMoreInputs net) prop_decodeSignedShelleyTxRoundtrip :: DecodeShelleySetup @@ -215,45 +210,39 @@ prop_decodeSignedByronTxRoundtrip (DecodeByronSetup utxo outs slotNo magic pairs -- | Increasing the number of outputs reduces the number of inputs. prop_moreOutputsMeansLessInputs - :: forall (n :: NetworkDiscriminant). Typeable n - => Proxy (n :: NetworkDiscriminant) - -> ProtocolMagic + :: Cardano.NetworkId -> Quantity "byte" Word16 -> Word8 -> Property -prop_moreOutputsMeansLessInputs proxy pm size nOuts = withMaxSuccess 1000 $ +prop_moreOutputsMeansLessInputs net size nOuts = withMaxSuccess 1000 $ nOuts < maxBound ==> - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm size nOuts + _estimateMaxNumberOfInputs @ShelleyKey net size nOuts >= - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm size (nOuts + 1) + _estimateMaxNumberOfInputs @ShelleyKey net size (nOuts + 1) --- | REducing the number of outputs increases the number of inputs. +-- | Reducing the number of outputs increases the number of inputs. prop_lessOutputsMeansMoreInputs - :: forall (n :: NetworkDiscriminant). Typeable n - => Proxy (n :: NetworkDiscriminant) - -> ProtocolMagic + :: Cardano.NetworkId -> Quantity "byte" Word16 -> Word8 -> Property -prop_lessOutputsMeansMoreInputs proxy pm size nOuts = withMaxSuccess 1000 $ +prop_lessOutputsMeansMoreInputs net size nOuts = withMaxSuccess 1000 $ nOuts > minBound ==> - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm size (nOuts - 1) + _estimateMaxNumberOfInputs @ShelleyKey net size (nOuts - 1) >= - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm size nOuts + _estimateMaxNumberOfInputs @ShelleyKey net size nOuts -- | Increasing the max size automatically increased the number of inputs prop_biggerMaxSizeMeansMoreInputs - :: forall (n :: NetworkDiscriminant). Typeable n - => Proxy (n :: NetworkDiscriminant) - -> ProtocolMagic + :: Cardano.NetworkId -> Quantity "byte" Word16 -> Word8 -> Property -prop_biggerMaxSizeMeansMoreInputs proxy pm (Quantity size) nOuts = withMaxSuccess 1000 $ +prop_biggerMaxSizeMeansMoreInputs net (Quantity size) nOuts = withMaxSuccess 1000 $ size < maxBound `div` 2 ==> - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm (Quantity size) nOuts + _estimateMaxNumberOfInputs @ShelleyKey Cardano.Mainnet (Quantity size) nOuts <= - _estimateMaxNumberOfInputs @_ @ShelleyKey proxy pm (Quantity (size * 2)) nOuts + _estimateMaxNumberOfInputs @ShelleyKey Cardano.Mainnet (Quantity (size * 2)) nOuts testCoinSelOpts :: CoinSelectionOptions () testCoinSelOpts = coinSelOpts testTxLayer (Quantity 4096) @@ -264,9 +253,7 @@ testFeeOpts = feeOpts testTxLayer Nothing feePolicy feePolicy = LinearFee (Quantity 155381) (Quantity 44) (Quantity 0) testTxLayer :: TransactionLayer (IO Shelley) ShelleyKey -testTxLayer = newTransactionLayer @_ @ShelleyKey (Proxy @'Mainnet) pm - where - pm = ProtocolMagic 1 +testTxLayer = newTransactionLayer @ShelleyKey (toCardanoNetworkId (Proxy @'Mainnet)) data DecodeShelleySetup = DecodeShelleySetup { inputs :: UTxO From 671e6c8c45e51a771c97951425f3cdf119cb80c6 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Mon, 20 Jul 2020 19:08:45 +0200 Subject: [PATCH 15/86] Fill in a few more gaps in Shelley tl --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 63 +++++-------------- 1 file changed, 16 insertions(+), 47 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 89d0339cae1..77ff2bd26e4 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -38,22 +38,13 @@ module Cardano.Wallet.Shelley.Transaction import Prelude import Cardano.Address.Derivation - ( XPrv, XPub, toXPub, xpubPublicKey ) + ( XPrv, toXPub ) import Cardano.Api.Typed - ( NetworkId ) -import Cardano.Binary - ( serialize' ) + ( NetworkId, TxExtraContent (..), serialiseToCBOR ) import Cardano.Crypto.DSIGN ( DSIGNAlgorithm (..), SignedDSIGN (..) ) -import Cardano.Crypto.DSIGN.Ed25519 - ( VerKeyDSIGN (..) ) import Cardano.Wallet.Primitive.AddressDerivation - ( ChimericAccount (..) - , Depth (..) - , NetworkDiscriminant (..) - , Passphrase (..) - , WalletKey (..) - ) + ( ChimericAccount (..), Depth (..), Passphrase (..), WalletKey (..) ) import Cardano.Wallet.Primitive.AddressDerivation.Byron ( ByronKey ) import Cardano.Wallet.Primitive.AddressDerivation.Icarus @@ -67,12 +58,9 @@ import Cardano.Wallet.Primitive.Fee import Cardano.Wallet.Primitive.Types ( Address (..) , Coin (..) - , EpochLength (..) , Hash (..) , PoolId (..) - , ProtocolMagic (..) , SealedTx (..) - , SlotId (..) , Tx (..) , TxIn (..) , TxOut (..) @@ -80,16 +68,11 @@ import Cardano.Wallet.Primitive.Types import Cardano.Wallet.Shelley.Compatibility ( Shelley , TPraosStandardCrypto - , fromNetworkDiscriminant , fromShelleyTx - , toByronNetworkMagic , toCardanoLovelace - , toCardanoNetworkId - , toCardanoStakeAddress , toCardanoStakeCredential , toCardanoTxIn , toCardanoTxOut - , toHDPayloadAddress , toSealed , toStakeKeyDeregCert , toStakeKeyRegCert @@ -104,12 +87,8 @@ import Cardano.Wallet.Transaction ) import Control.Monad ( forM ) -import Crypto.Error - ( throwCryptoError ) import Data.ByteString ( ByteString ) -import Data.Map.Strict - ( Map ) import Data.Maybe ( fromMaybe ) import Data.Proxy @@ -122,33 +101,20 @@ import Ouroboros.Consensus.Shelley.Protocol.Crypto ( Crypto (..) ) import Ouroboros.Network.Block ( SlotNo ) -import Type.Reflection - ( Typeable ) --import qualified Cardano.Api as Cardano import qualified Cardano.Api.Typed as Cardano -import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as Crypto -import qualified Cardano.Crypto.Hash.Class as Hash import qualified Cardano.Crypto.Wallet as CC import qualified Cardano.Wallet.Primitive.CoinSelection as CS -import qualified Crypto.PubKey.Ed25519 as Ed25519 import qualified Data.ByteArray as BA import qualified Data.ByteString as BS import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Lazy.Char8 as L8 -import qualified Data.Map.Strict as Map -import qualified Data.Set as Set import qualified Data.Text as T -import qualified Shelley.Spec.Ledger.Address.Bootstrap as SL -import qualified Shelley.Spec.Ledger.BaseTypes as SL -import qualified Shelley.Spec.Ledger.Coin as SL -import qualified Shelley.Spec.Ledger.Credential as SL import qualified Shelley.Spec.Ledger.Keys as SL import qualified Shelley.Spec.Ledger.LedgerState as SL import qualified Shelley.Spec.Ledger.Tx as SL -import qualified Shelley.Spec.Ledger.TxData as SL -import qualified Shelley.Spec.Ledger.UTxO as SL -- | Type encapsulating what we need to know to add things -- payloads, @@ -220,17 +186,16 @@ mkTx networkId (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) ke TxWitnessByronUTxO -> do bootstrapWits <- forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr - pure $ mkByronWitness unsigned networkId addr (getRawKey k, pwd) + pure $ mkByronWitness unsigned networkId (getRawKey k, pwd) pure $ bootstrapWits <> mkExtraWits unsigned - let signed = Cardano.makeSignedTransaction wits unsigned - let tx = fromTypedTx signed - return (tx, undefined) + let tx = Cardano.makeSignedTransaction wits unsigned + return (toWalletTx tx, SealedTx $ serialiseToCBOR tx) where -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, -- so we convert directly to the concrete wallet Tx type: - fromTypedTx :: Cardano.Tx Cardano.Shelley -> Tx - fromTypedTx (Cardano.ShelleyTx x) = + toWalletTx :: Cardano.Tx Cardano.Shelley -> Tx + toWalletTx (Cardano.ShelleyTx x) = let (tx,_,_) = fromShelleyTx x in tx newTransactionLayer @@ -481,7 +446,7 @@ computeTxSize networkId witTag action cs = byronWits = map dummyWitnessUniq $ CS.inputs cs where dummyWitness :: BL.ByteString -> Address -> Cardano.Witness Cardano.Shelley - dummyWitness chaff addr = error "todo" + dummyWitness _chaff _addr = error "todo" dummyWitnessUniq :: (TxIn, TxOut) -> Cardano.Witness Cardano.Shelley dummyWitnessUniq (TxIn (Hash txid) ix, TxOut addr _) = @@ -521,7 +486,12 @@ mkUnsignedTx -> Cardano.TxBody Cardano.Shelley mkUnsignedTx ttl cs wdrls certs = Cardano.makeShelleyTransaction - Cardano.txExtraContentEmpty + TxExtraContent + { txMetadata = Nothing + , txWithdrawals = wdrls + , txCertificates = certs + , txUpdateProposal = Nothing + } ttl (toCardanoLovelace $ Coin $ feeBalance cs) (toCardanoTxIn . fst <$> CS.inputs cs) @@ -559,10 +529,9 @@ mkShelleyWitness body key = mkByronWitness :: Cardano.TxBody Cardano.Shelley -> Cardano.NetworkId - -> Address -> (XPrv, Passphrase "encryption") -> Cardano.Witness Cardano.Shelley -mkByronWitness body networkId addr (prv, Passphrase pwd) = +mkByronWitness body networkId (prv, Passphrase pwd) = Cardano.makeShelleyBootstrapWitness networkId body signingKey where signingKey = Cardano.ByronSigningKey From 059fc96b3cddf32f153a63e30db3466a6a7d33af Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 03:41:47 +1000 Subject: [PATCH 16/86] TransactionSpec: replace type errors with runtime errors --- .../Cardano/Wallet/Shelley/TransactionSpec.hs | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index 0bb6546dfd2..df3212d7592 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -50,7 +50,7 @@ import Cardano.Wallet.Primitive.Types , mainnetMagic ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley, toCardanoNetworkId, toSealed ) + ( Shelley, TPraosStandardCrypto, toCardanoNetworkId, toSealed ) import Cardano.Wallet.Shelley.Transaction ( mkByronWitness , mkShelleyWitness @@ -184,10 +184,11 @@ prop_decodeSignedShelleyTxRoundtrip (DecodeShelleySetup utxo outs slotNo pairs) let inps = Map.toList $ getUTxO utxo let cs = mempty { CS.inputs = inps, CS.outputs = outs } let unsigned = mkUnsignedTx slotNo cs mempty [] - let addrWits = Set.fromList $ map (mkShelleyWitness unsigned) pairs - let metadata = SL.SNothing - let wits = SL.WitnessSet addrWits mempty mempty - let ledgerTx = SL.Tx unsigned wits metadata + let addrWits = map (mkShelleyWitness unsigned) pairs + let metadata = Nothing + let wits = addrWits + -- let ledgerTx = SL.Tx unsigned wits metadata + let ledgerTx = error "fixme" :: SL.Tx TPraosStandardCrypto _decodeSignedTx (Cardano.serialiseToCBOR (Cardano.ShelleyTx ledgerTx)) === Right (toSealed ledgerTx) @@ -199,11 +200,11 @@ prop_decodeSignedByronTxRoundtrip (DecodeByronSetup utxo outs slotNo magic pairs let inps = Map.toList $ getUTxO utxo let cs = mempty { CS.inputs = inps, CS.outputs = outs } let unsigned = mkUnsignedTx slotNo cs mempty [] - let byronWits = - Set.fromList $ zipWith (\((_, TxOut addr _)) pair -> mkByronWitness unsigned magic addr pair) inps pairs + -- let byronWits = zipWith (\((_, TxOut addr _)) pair -> mkByronWitness unsigned magic addr pair) inps pairs + let byronWits = error "fixme" let metadata = SL.SNothing - let wits = SL.WitnessSet mempty mempty byronWits - let ledgerTx = SL.Tx unsigned wits metadata + -- let ledgerTx = SL.Tx unsigned byronWits metadata + let ledgerTx = error "fixme" :: SL.Tx TPraosStandardCrypto _decodeSignedTx (Cardano.serialiseToCBOR (Cardano.ShelleyTx ledgerTx)) === Right (toSealed ledgerTx) From 60544625d4da07a7be73bafe8a6f90733bafaacc Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 03:49:29 +1000 Subject: [PATCH 17/86] Test compile fixes --- lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 2 +- lib/shelley/test/integration/Main.hs | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 3ddf3cbd419..7bbb83a93f4 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -279,7 +279,7 @@ parseGenesisData = \case let nm = sgNetworkMagic shelleyGenesis let pm = ProtocolMagic $ fromIntegral nm let (shelleyDiscriminant, shelleyVData) = someCustomDiscriminant mkSomeNetwork pm - let (snp, sblock0) = Shelley.fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) + let (_snp, _sblock0) = Shelley.fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) let byronPm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData let (_byronDiscriminant, _byronVData) = someCustomDiscriminant mkSomeNetwork byronPm diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index f32578fe6de..d94f8c1258f 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -122,6 +122,7 @@ import Test.Integration.Framework.DSL , unsafeRequest ) +import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Wallet.Api.Link as Link import qualified Data.Aeson as Aeson import qualified Data.ByteString as BS @@ -290,7 +291,7 @@ mkFeeEstimator policy = \case computeFee selection action = fromIntegral $ getFee $ - _minimumFee @_ @ShelleyKey (Proxy @'Mainnet) mainnetMagic policy action selection + _minimumFee @ShelleyKey Cardano.Mainnet policy action selection {------------------------------------------------------------------------------- Logging From 50efea0f1101887aa07e61816670a615fa92f6e6 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Mon, 20 Jul 2020 20:05:15 +0200 Subject: [PATCH 18/86] Re-add construction of dummy byron witnesses --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 30 +++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 77ff2bd26e4..c21fbfb5839 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -41,6 +41,8 @@ import Cardano.Address.Derivation ( XPrv, toXPub ) import Cardano.Api.Typed ( NetworkId, TxExtraContent (..), serialiseToCBOR ) +import Cardano.Binary + ( serialize' ) import Cardano.Crypto.DSIGN ( DSIGNAlgorithm (..), SignedDSIGN (..) ) import Cardano.Wallet.Primitive.AddressDerivation @@ -73,6 +75,7 @@ import Cardano.Wallet.Shelley.Compatibility , toCardanoStakeCredential , toCardanoTxIn , toCardanoTxOut + , toHDPayloadAddress , toSealed , toStakeKeyDeregCert , toStakeKeyRegCert @@ -104,6 +107,7 @@ import Ouroboros.Network.Block --import qualified Cardano.Api as Cardano import qualified Cardano.Api.Typed as Cardano +import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as Crypto import qualified Cardano.Crypto.Wallet as CC import qualified Cardano.Wallet.Primitive.CoinSelection as CS @@ -112,6 +116,7 @@ import qualified Data.ByteString as BS import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Lazy.Char8 as L8 import qualified Data.Text as T +import qualified Shelley.Spec.Ledger.Address.Bootstrap as SL import qualified Shelley.Spec.Ledger.Keys as SL import qualified Shelley.Spec.Ledger.LedgerState as SL import qualified Shelley.Spec.Ledger.Tx as SL @@ -446,7 +451,28 @@ computeTxSize networkId witTag action cs = byronWits = map dummyWitnessUniq $ CS.inputs cs where dummyWitness :: BL.ByteString -> Address -> Cardano.Witness Cardano.Shelley - dummyWitness _chaff _addr = error "todo" + dummyWitness chaff addr = + Cardano.ShelleyBootstrapWitness $ SL.BootstrapWitness key sig cc padding + where + key = SL.VKey + $ fromMaybe (error "error creating dummy witness ver key") + $ rawDeserialiseVerKeyDSIGN + $ bloatChaff keyLen chaff + + sig = SignedDSIGN + $ fromMaybe (error "error creating dummy witness sig") + $ rawDeserialiseSigDSIGN + $ bloatChaff sigLen chaff + + cc = SL.ChainCode + $ bloatChaff ccLen "0" + + padding = serialize' + $ Byron.mkAttributes + $ Byron.AddrAttributes + { Byron.aaVKDerivationPath = toHDPayloadAddress addr + , Byron.aaNetworkMagic = Cardano.toByronNetworkMagic networkId + } dummyWitnessUniq :: (TxIn, TxOut) -> Cardano.Witness Cardano.Shelley dummyWitnessUniq (TxIn (Hash txid) ix, TxOut addr _) = @@ -458,7 +484,7 @@ computeTxSize networkId witTag action cs = keyLen = sizeVerKeyDSIGN $ Proxy @(DSIGN TPraosStandardCrypto) - _ccLen = 32::Int + ccLen = 32 bloatChaff :: Word -> BL.ByteString -> ByteString bloatChaff n = BL.toStrict . BL.take (fromIntegral n) . BL.cycle From 77325a800e02cedb5ecf6b8c386925e6dddda4f7 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Mon, 20 Jul 2020 20:09:38 +0200 Subject: [PATCH 19/86] Remove redundant imports --- lib/shelley/src/Cardano/Wallet/Shelley.hs | 2 -- lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs | 2 -- 2 files changed, 4 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley.hs b/lib/shelley/src/Cardano/Wallet/Shelley.hs index ee4c159b660..1e223eaa2bc 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley.hs @@ -5,7 +5,6 @@ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE LambdaCase #-} -{-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE StandaloneDeriving #-} @@ -119,7 +118,6 @@ import Cardano.Wallet.Shelley.Compatibility ( CardanoBlock , TPraosStandardCrypto , fromCardanoBlock - , fromNetworkMagic , toCardanoNetworkId ) import Cardano.Wallet.Shelley.Network diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index 44eddf1e4a9..b912c8da7e8 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -194,8 +194,6 @@ import Ouroboros.Network.Block , getTipPoint , legacyTip ) -import Ouroboros.Network.CodecCBORTerm - ( CodecCBORTerm ) import Ouroboros.Network.Magic ( NetworkMagic (..) ) import Ouroboros.Network.NodeToClient From a9afb7df08e672a69a36d312838c513409d46f50 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Mon, 20 Jul 2020 20:25:13 +0200 Subject: [PATCH 20/86] Add HasNetworkId class replacing toCardanoNetworkId --- lib/shelley/src/Cardano/Wallet/Shelley.hs | 32 +++++++++++++++---- .../Cardano/Wallet/Shelley/Compatibility.hs | 16 ---------- 2 files changed, 26 insertions(+), 22 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley.hs b/lib/shelley/src/Cardano/Wallet/Shelley.hs index 1e223eaa2bc..a7a588c7a04 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley.hs @@ -46,6 +46,8 @@ import Prelude import Cardano.Api.Typed ( Shelley ) +import Cardano.Api.Typed + ( NetworkId ) import Cardano.BM.Data.Severity ( Severity (..) ) import Cardano.BM.Data.Tracer @@ -115,11 +117,7 @@ import Cardano.Wallet.Registry import Cardano.Wallet.Shelley.Api.Server ( server ) import Cardano.Wallet.Shelley.Compatibility - ( CardanoBlock - , TPraosStandardCrypto - , fromCardanoBlock - , toCardanoNetworkId - ) + ( CardanoBlock, TPraosStandardCrypto, fromCardanoBlock ) import Cardano.Wallet.Shelley.Network ( NetworkLayerLog, withNetworkLayer ) import Cardano.Wallet.Shelley.Pools @@ -153,6 +151,8 @@ import Data.Text.Class ( ToText (..) ) import GHC.Generics ( Generic ) +import GHC.TypeLits + ( KnownNat, natVal ) import Network.Ntp ( NtpClient (..), NtpTrace (..), withWalletNtpClient ) import Network.Socket @@ -172,6 +172,7 @@ import System.IOManager import Type.Reflection ( Typeable ) +import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Pool.DB.Sqlite as Pool import qualified Cardano.Wallet.Api.Server as Server import qualified Cardano.Wallet.DB.Sqlite as Sqlite @@ -188,6 +189,7 @@ data SomeNetworkDiscriminant where , PaymentAddress n ByronKey , PaymentAddress n ShelleyKey , DelegationAddress n ShelleyKey + , HasNetworkId n , DecodeAddress n , EncodeAddress n , DecodeStakeAddress n @@ -197,6 +199,24 @@ data SomeNetworkDiscriminant where => Proxy n -> SomeNetworkDiscriminant + +-- | Class to extract a @NetworkId@ from @NetworkDiscriminant@. +class HasNetworkId (n :: NetworkDiscriminant) where + networkIdVal :: Proxy n -> NetworkId + +instance HasNetworkId 'Mainnet where + networkIdVal _ = Cardano.Mainnet + +instance KnownNat protocolMagic => HasNetworkId ('Testnet protocolMagic) where + networkIdVal _ = Cardano.Testnet networkMagic + where + networkMagic = Cardano.NetworkMagic + . fromIntegral + $ natVal (Proxy @protocolMagic) + +instance HasNetworkId ('Staging protocolMagic) where + networkIdVal _ = Cardano.Mainnet + deriving instance Show SomeNetworkDiscriminant -- | The @cardano-wallet-shelley@ main function. It takes the configuration @@ -259,7 +279,7 @@ serveWallet withNetworkLayer networkTracer np socketPath vData $ \nl -> do withWalletNtpClient io ntpClientTracer $ \ntpClient -> do let gp = genesisParameters np - let net = toCardanoNetworkId proxy + let net = networkIdVal proxy randomApi <- apiLayer (newTransactionLayer net) nl Server.idleWorker icarusApi <- apiLayer (newTransactionLayer net) nl diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index b912c8da7e8..3d2d2055e8d 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -82,7 +82,6 @@ module Cardano.Wallet.Shelley.Compatibility , fromTip' , fromShelleyPParams , fromNetworkDiscriminant - , toCardanoNetworkId -- * Internal Conversions , decentralizationLevelFromPParams @@ -799,21 +798,6 @@ fromUnitInterval x = , show x ] -toCardanoNetworkId - :: forall (n :: NetworkDiscriminant). (Typeable n) - => Proxy n - -> Cardano.NetworkId -toCardanoNetworkId _ = - if isMainnet - then Cardano.Mainnet - else Cardano.Testnet networkMagic - where - -- TODO: How do we check if we are on staging? - isMainnet = case testEquality (typeRep @n) (typeRep @'Mainnet) of - Just{} -> True - Nothing -> False - networkMagic = error "toCardanoNetwork: networkMagic should be unneeded" - fromNetworkDiscriminant :: forall (n :: NetworkDiscriminant). (Typeable n) => Proxy n From 13739f48473f52f7e3a0e2d9d6b1dd2f1fba1e01 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 12:30:29 +1000 Subject: [PATCH 21/86] Build fixes --- lib/byron/src/Cardano/Wallet/Byron/Network.hs | 6 +++--- lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs | 2 +- lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs | 2 +- .../test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs | 2 +- lib/shelley/cardano-wallet-shelley.cabal | 1 + lib/shelley/test/integration/Main.hs | 1 - .../test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs | 4 ++-- nix/.stack.nix/cardano-wallet-shelley.nix | 1 + 8 files changed, 10 insertions(+), 9 deletions(-) diff --git a/lib/byron/src/Cardano/Wallet/Byron/Network.hs b/lib/byron/src/Cardano/Wallet/Byron/Network.hs index 762c20233f2..6438cbbb556 100644 --- a/lib/byron/src/Cardano/Wallet/Byron/Network.hs +++ b/lib/byron/src/Cardano/Wallet/Byron/Network.hs @@ -114,7 +114,7 @@ import Network.Mux ( MuxError (..), MuxErrorType (..), WithMuxBearer ) import Ouroboros.Consensus.Byron.Ledger ( ByronBlock (..) - , ByronNodeToClientVersion (ByronNodeToClientVersion2) + , ByronNodeToClientVersion (ByronNodeToClientVersion1) , GenTx , Query (..) ) @@ -354,7 +354,7 @@ mkWalletClient gp chainSyncQ = do } = gp codecs :: MonadST m => ClientCodecs ByronBlock m - codecs = clientCodecs (byronCodecConfig gp) ByronNodeToClientVersion2 + codecs = clientCodecs (byronCodecConfig gp) ByronNodeToClientVersion1 -- A low-level DEBUG chain sync tracer. -- @@ -444,7 +444,7 @@ mkTipSyncClient tr np localTxSubmissionQ onTipUpdate onProtocolParamsUpdate = do } = W.genesisParameters np codecs :: MonadST m => DefaultCodecs ByronBlock m - codecs = defaultCodecs (byronCodecConfig gp) ByronNodeToClientVersion2 + codecs = defaultCodecs (byronCodecConfig gp) ByronNodeToClientVersion1 debounce :: (Eq a, MonadSTM m) => (a -> m ()) -> m (a -> m ()) debounce action = do diff --git a/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs b/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs index 35f5e2d7be7..c87776dc595 100644 --- a/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs +++ b/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs @@ -181,7 +181,7 @@ data StakePoolLayer e m = StakePoolLayer -- The pool productions and stake distrubtions in the db can /never/ be from -- different forks such that it's safe for readers to access it. monitorStakePools - :: (GetStakeDistribution t IO ~ GetStakeDistribution Jormungandr IO) + :: (GetStakeDistribution t Block IO ~ GetStakeDistribution Jormungandr Block IO) => Tracer IO StakePoolLog -> (Block, Quantity "block" Word32) -- ^ Genesis block and 'k' diff --git a/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs b/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs index e1a625ff3aa..076aa1a0786 100644 --- a/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs +++ b/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs @@ -503,7 +503,7 @@ mkRawNetworkLayer np batchSize st tipNotify j = NetworkLayer Queries -------------------------------------------------------------------------------} -type instance GetStakeDistribution Jormungandr m = +type instance GetStakeDistribution Jormungandr blk m = EpochNo -> ExceptT ErrNetworkUnavailable m (Map PoolId (Quantity "lovelace" Word64)) diff --git a/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs b/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs index dadfa3c8bb6..3d4ccf93a16 100644 --- a/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs +++ b/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs @@ -270,7 +270,7 @@ prop_trackRegistrations test = monadicIO $ do data instance Cursor RegistrationsTest = Cursor BlockHeader -type instance GetStakeDistribution RegistrationsTest m = +type instance GetStakeDistribution RegistrationsTest blk m = EpochNo -> ExceptT ErrNetworkUnavailable m (Map PoolId (Quantity "lovelace" Word64)) diff --git a/lib/shelley/cardano-wallet-shelley.cabal b/lib/shelley/cardano-wallet-shelley.cabal index 33054f272bb..3199aa8b09d 100644 --- a/lib/shelley/cardano-wallet-shelley.cabal +++ b/lib/shelley/cardano-wallet-shelley.cabal @@ -187,6 +187,7 @@ test-suite integration , aeson , async , bytestring + , cardano-api , cardano-wallet-cli , cardano-wallet-core , cardano-wallet-core-integration diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index d94f8c1258f..e87341ed258 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -54,7 +54,6 @@ import Cardano.Wallet.Primitive.Types , TxIn (..) , TxOut (..) , TxParameters (..) - , mainnetMagic ) import Cardano.Wallet.Shelley ( SomeNetworkDiscriminant (..) diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index df3212d7592..1861ec9d040 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -50,7 +50,7 @@ import Cardano.Wallet.Primitive.Types , mainnetMagic ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley, TPraosStandardCrypto, toCardanoNetworkId, toSealed ) + ( Shelley, TPraosStandardCrypto, toSealed ) import Cardano.Wallet.Shelley.Transaction ( mkByronWitness , mkShelleyWitness @@ -254,7 +254,7 @@ testFeeOpts = feeOpts testTxLayer Nothing feePolicy feePolicy = LinearFee (Quantity 155381) (Quantity 44) (Quantity 0) testTxLayer :: TransactionLayer (IO Shelley) ShelleyKey -testTxLayer = newTransactionLayer @ShelleyKey (toCardanoNetworkId (Proxy @'Mainnet)) +testTxLayer = newTransactionLayer @ShelleyKey Cardano.Mainnet data DecodeShelleySetup = DecodeShelleySetup { inputs :: UTxO diff --git a/nix/.stack.nix/cardano-wallet-shelley.nix b/nix/.stack.nix/cardano-wallet-shelley.nix index c4eb15e4f0c..eca6fd5261d 100644 --- a/nix/.stack.nix/cardano-wallet-shelley.nix +++ b/nix/.stack.nix/cardano-wallet-shelley.nix @@ -140,6 +140,7 @@ (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) (hsPkgs."async" or (errorHandler.buildDepError "async")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) + (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) (hsPkgs."cardano-wallet-cli" or (errorHandler.buildDepError "cardano-wallet-cli")) (hsPkgs."cardano-wallet-core" or (errorHandler.buildDepError "cardano-wallet-core")) (hsPkgs."cardano-wallet-core-integration" or (errorHandler.buildDepError "cardano-wallet-core-integration")) From 78af00b69bd5368a8dff416a5be52177177ee7f0 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 12:58:52 +1000 Subject: [PATCH 22/86] Remove shelley genesis CLI options - only use byron genesis --- .../src/Cardano/Wallet/Shelley/Launch.hs | 73 +++++-------------- 1 file changed, 20 insertions(+), 53 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 7bbb83a93f4..7c5fc9912ac 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -91,7 +91,7 @@ import Control.Concurrent.MVar import Control.Exception ( SomeException, finally, handle, throwIO ) import Control.Monad - ( forM, forM_, replicateM, replicateM_, unless, void, when, (>=>) ) + ( forM, forM_, replicateM, replicateM_, unless, void, (>=>) ) import Control.Monad.Fail ( MonadFail ) import Control.Monad.Trans.Except @@ -177,35 +177,20 @@ import qualified Shelley.Spec.Ledger.Coin as SL data NetworkConfiguration where -- | Mainnet does not have network discrimination. MainnetConfig - :: FilePath - -- ^ Genesis data in JSON format, for shelley era. - -> NetworkConfiguration + :: NetworkConfiguration -- | Testnet has network magic. TestnetConfig :: FilePath -- ^ Genesis data in JSON format, for byron era. - -> FilePath - -- ^ Genesis data in JSON format, for shelley era. -> NetworkConfiguration -- | Staging does not have network discrimination. StagingConfig :: FilePath -- ^ Genesis data in JSON format, for byron era. - -> FilePath - -- ^ Genesis data in JSON format, for shelley era. -> NetworkConfiguration - --- | Hand-written as there's no Show instance for 'NodeVersionData' -instance Show NetworkConfiguration where - show = \case - MainnetConfig shelleyGenesisFile -> - "MainnetConfig " <> show shelleyGenesisFile - TestnetConfig byronGenesisFile shelleyGenesisFile -> - "TestnetConfig " <> show (byronGenesisFile, shelleyGenesisFile) - StagingConfig byronGenesisFile shelleyGenesisFile -> - "StagingConfig " <> show (byronGenesisFile, shelleyGenesisFile) + deriving (Show, Eq) -- | --node-socket=FILE nodeSocketOption :: Parser FilePath @@ -220,17 +205,15 @@ nodeSocketOption = optionT $ mempty networkConfigurationOption :: Parser NetworkConfiguration networkConfigurationOption = mainnet <|> testnet <|> staging where - mainnet = mainnetFlag <*> genesisFileOption "shelley" - testnet = testnetFlag <*> genesisFileOption "byron" <*> genesisFileOption "shelley" - staging = stagingFlag <*> genesisFileOption "byron" <*> genesisFileOption "shelley" + mainnet = mainnetFlag + testnet = TestnetConfig <$> genesisFileOption "byron" "testnet" + staging = StagingConfig <$> genesisFileOption "byron" "staging" mainnetFlag = flag' MainnetConfig (long "mainnet") - testnetFlag = flag' TestnetConfig (long "testnet") - stagingFlag = flag' StagingConfig (long "staging") - genesisFileOption :: String -> Parser FilePath - genesisFileOption era = optionT $ mempty - <> long (era ++ "-genesis") + genesisFileOption :: String -> String -> Parser FilePath + genesisFileOption era net = optionT $ mempty + <> long net <> metavar "FILE" <> help ("Path to the " <> era <> " genesis data in JSON format.") @@ -252,11 +235,7 @@ parseGenesisData -> ExceptT String IO (SomeNetworkDiscriminant, NetworkParameters, NodeVersionData, Block) parseGenesisData = \case - MainnetConfig shelleyGenesisFile -> do - (shelleyGenesis :: ShelleyGenesis TPraosStandardCrypto) - <- ExceptT $ eitherDecode <$> BL.readFile shelleyGenesisFile - let (_snp, _sblock0) = Shelley.fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) - + MainnetConfig -> do pure ( SomeNetworkDiscriminant $ Proxy @'Mainnet , Byron.mainnetNetworkParameters @@ -264,11 +243,9 @@ parseGenesisData = \case , Byron.emptyGenesis (genesisParameters Byron.mainnetNetworkParameters) ) - TestnetConfig byronGenesisFile shelleyGenesisFile -> do + TestnetConfig byronGenesisFile -> do (genesisData, genesisHash) <- withExceptT show $ readGenesisData byronGenesisFile - (shelleyGenesis :: ShelleyGenesis TPraosStandardCrypto) - <- ExceptT $ eitherDecode <$> BL.readFile shelleyGenesisFile let mkSomeNetwork :: forall (pm :: Nat). KnownNat pm @@ -276,28 +253,20 @@ parseGenesisData = \case -> SomeNetworkDiscriminant mkSomeNetwork _ = SomeNetworkDiscriminant $ Proxy @('Testnet pm) - let nm = sgNetworkMagic shelleyGenesis - let pm = ProtocolMagic $ fromIntegral nm - let (shelleyDiscriminant, shelleyVData) = someCustomDiscriminant mkSomeNetwork pm - let (_snp, _sblock0) = Shelley.fromGenesisData shelleyGenesis (Map.toList $ sgInitialFunds shelleyGenesis) - - let byronPm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData - let (_byronDiscriminant, _byronVData) = someCustomDiscriminant mkSomeNetwork byronPm - let (bnp, bouts) = Byron.fromGenesisData (genesisData, genesisHash) - let bblock0 = Byron.genesisBlockFromTxOuts (genesisParameters bnp) bouts - when (byronPm /= pm) $ - fail $ "Genesis files: Byron " <> show byronPm <> - " does not match Shelley " <> show pm + let pm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData + let (discriminant, vdata) = someCustomDiscriminant mkSomeNetwork pm + let (np, outs) = Byron.fromGenesisData (genesisData, genesisHash) + let block0 = Byron.genesisBlockFromTxOuts (genesisParameters np) outs pure - ( shelleyDiscriminant - , bnp - , shelleyVData - , bblock0 + ( discriminant + , np + , vdata + , block0 ) - StagingConfig byronGenesisFile _shelleyGenesisFile -> do + StagingConfig byronGenesisFile -> do (genesis :: ShelleyGenesis TPraosStandardCrypto) <- ExceptT $ eitherDecode <$> BL.readFile byronGenesisFile @@ -307,8 +276,6 @@ parseGenesisData = \case -> SomeNetworkDiscriminant mkSomeNetwork _ = SomeNetworkDiscriminant $ Proxy @('Staging pm) - -- fixme: load byron genesis - let nm = sgNetworkMagic genesis let pm = ProtocolMagic $ fromIntegral nm let (discriminant, vData) = someCustomDiscriminant mkSomeNetwork pm From 4f8d715916d10a294902f7b507587dc92b3424fe Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Tue, 21 Jul 2020 04:58:13 +0200 Subject: [PATCH 23/86] Fix FIXMEs in unit tests, re-add shelley toSealed --- .../Cardano/Wallet/Shelley/Compatibility.hs | 18 +++--- .../src/Cardano/Wallet/Shelley/Transaction.hs | 15 ++--- .../Cardano/Wallet/Shelley/TransactionSpec.hs | 58 ++++++++----------- 3 files changed, 38 insertions(+), 53 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index 3d2d2055e8d..82a9db71313 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -97,9 +97,9 @@ import Cardano.Address.Derivation import Cardano.Api.Shelley.Genesis ( ShelleyGenesis (..) ) import Cardano.Api.Typed - ( AsType (..), Shelley, deserialiseFromRawBytes ) + ( AsType (..), Shelley, deserialiseFromRawBytes, serialiseToCBOR ) import Cardano.Binary - ( fromCBOR, serialize' ) + ( fromCBOR ) import Cardano.Crypto.Hash.Class ( Hash (UnsafeHash), hashToBytes ) import Cardano.Slotting.Slot @@ -815,12 +815,14 @@ toByronNetworkMagic pm@(W.ProtocolMagic magic) = Byron.NetworkTestnet (fromIntegral magic) -- NOTE: Arguably breaks naming conventions. Perhaps fromCardanoSignedTx instead -toSealed :: Crypto crypto => SL.Tx crypto -> (W.Tx, W.SealedTx) -toSealed tx = - let - (wtx, _, _) = fromShelleyTx tx - sealed = W.SealedTx $ serialize' $ O.mkShelleyTx tx - in (wtx, sealed) +toSealed :: Cardano.Tx Cardano.Shelley -> (W.Tx, W.SealedTx) +toSealed tx = (toWalletTx tx, W.SealedTx $ serialiseToCBOR tx) + where + -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, + -- so we convert directly to the concrete wallet Tx type: + toWalletTx :: Cardano.Tx Cardano.Shelley -> W.Tx + toWalletTx (Cardano.ShelleyTx x) = + let (wtx,_,_) = fromShelleyTx x in wtx toCardanoTxId :: W.Hash "Tx" -> Cardano.TxId toCardanoTxId (W.Hash h) = Cardano.TxId $ UnsafeHash $ toShort h diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index c21fbfb5839..232d5e7f777 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -40,7 +40,7 @@ import Prelude import Cardano.Address.Derivation ( XPrv, toXPub ) import Cardano.Api.Typed - ( NetworkId, TxExtraContent (..), serialiseToCBOR ) + ( NetworkId, TxExtraContent (..) ) import Cardano.Binary ( serialize' ) import Cardano.Crypto.DSIGN @@ -70,7 +70,6 @@ import Cardano.Wallet.Primitive.Types import Cardano.Wallet.Shelley.Compatibility ( Shelley , TPraosStandardCrypto - , fromShelleyTx , toCardanoLovelace , toCardanoStakeCredential , toCardanoTxIn @@ -195,13 +194,7 @@ mkTx networkId (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) ke pure $ bootstrapWits <> mkExtraWits unsigned let tx = Cardano.makeSignedTransaction wits unsigned - return (toWalletTx tx, SealedTx $ serialiseToCBOR tx) - where - -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, - -- so we convert directly to the concrete wallet Tx type: - toWalletTx :: Cardano.Tx Cardano.Shelley -> Tx - toWalletTx (Cardano.ShelleyTx x) = - let (tx,_,_) = fromShelleyTx x in tx + return $ toSealed tx newTransactionLayer :: forall k t. @@ -338,13 +331,13 @@ _decodeSignedTx -> Either ErrDecodeSignedTx (Tx, SealedTx) _decodeSignedTx bytes = do case Cardano.deserialiseFromCBOR Cardano.AsShelleyTx bytes of - Right (Cardano.ShelleyTx txValid) -> + Right txValid -> pure $ toSealed txValid Left decodeErr -> Left $ ErrDecodeSignedTxWrongPayload (T.pack $ show decodeErr) _minimumFee - :: forall k. (TxWitnessTagFor k) + :: forall k. TxWitnessTagFor k => NetworkId -> FeePolicy -> Maybe DelegationAction diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index 1861ec9d040..0934d953683 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -26,8 +26,7 @@ import Cardano.Wallet , handleCannotCover ) import Cardano.Wallet.Primitive.AddressDerivation - ( NetworkDiscriminant (..) - , Passphrase (..) + ( Passphrase (..) , PassphraseMaxLength (..) , PassphraseMinLength (..) , PassphraseScheme (..) @@ -40,17 +39,9 @@ import Cardano.Wallet.Primitive.CoinSelection import Cardano.Wallet.Primitive.Fee ( Fee (..), FeeOptions (..), FeePolicy (..), adjustForFee ) import Cardano.Wallet.Primitive.Types - ( Address (..) - , Coin (..) - , Hash (..) - , ProtocolMagic (..) - , TxIn (..) - , TxOut (..) - , UTxO (..) - , mainnetMagic - ) + ( Address (..), Coin (..), Hash (..), TxIn (..), TxOut (..), UTxO (..) ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley, TPraosStandardCrypto, toSealed ) + ( Shelley, toSealed ) import Cardano.Wallet.Shelley.Transaction ( mkByronWitness , mkShelleyWitness @@ -104,11 +95,8 @@ import qualified Data.ByteString as BS import qualified Data.ByteString.Char8 as B8 import qualified Data.List.NonEmpty as NE import qualified Data.Map.Strict as Map -import qualified Data.Set as Set import qualified Data.Text as T import qualified Data.Text.Encoding as T -import qualified Shelley.Spec.Ledger.BaseTypes as SL -import qualified Shelley.Spec.Ledger.Tx as SL spec :: Spec spec = do @@ -185,29 +173,26 @@ prop_decodeSignedShelleyTxRoundtrip (DecodeShelleySetup utxo outs slotNo pairs) let cs = mempty { CS.inputs = inps, CS.outputs = outs } let unsigned = mkUnsignedTx slotNo cs mempty [] let addrWits = map (mkShelleyWitness unsigned) pairs - let metadata = Nothing let wits = addrWits - -- let ledgerTx = SL.Tx unsigned wits metadata - let ledgerTx = error "fixme" :: SL.Tx TPraosStandardCrypto - - _decodeSignedTx (Cardano.serialiseToCBOR (Cardano.ShelleyTx ledgerTx)) + let ledgerTx = Cardano.makeSignedTransaction wits unsigned + _decodeSignedTx (Cardano.serialiseToCBOR ledgerTx) === Right (toSealed ledgerTx) prop_decodeSignedByronTxRoundtrip :: DecodeByronSetup -> Property -prop_decodeSignedByronTxRoundtrip (DecodeByronSetup utxo outs slotNo magic pairs) = do +prop_decodeSignedByronTxRoundtrip (DecodeByronSetup utxo outs slotNo network pairs) = do let inps = Map.toList $ getUTxO utxo let cs = mempty { CS.inputs = inps, CS.outputs = outs } let unsigned = mkUnsignedTx slotNo cs mempty [] - -- let byronWits = zipWith (\((_, TxOut addr _)) pair -> mkByronWitness unsigned magic addr pair) inps pairs - let byronWits = error "fixme" - let metadata = SL.SNothing - -- let ledgerTx = SL.Tx unsigned byronWits metadata - let ledgerTx = error "fixme" :: SL.Tx TPraosStandardCrypto + let byronWits = zipWith (mkByronWitness' unsigned) inps pairs + let ledgerTx = Cardano.makeSignedTransaction byronWits unsigned - _decodeSignedTx (Cardano.serialiseToCBOR (Cardano.ShelleyTx ledgerTx)) - === Right (toSealed ledgerTx) + _decodeSignedTx (Cardano.serialiseToCBOR ledgerTx) + === Right (sealShelleyTx ledgerTx) + where + mkByronWitness' unsigned (_, (TxOut addr _)) = + mkByronWitness unsigned network addr -- | Increasing the number of outputs reduces the number of inputs. prop_moreOutputsMeansLessInputs @@ -241,9 +226,9 @@ prop_biggerMaxSizeMeansMoreInputs -> Property prop_biggerMaxSizeMeansMoreInputs net (Quantity size) nOuts = withMaxSuccess 1000 $ size < maxBound `div` 2 ==> - _estimateMaxNumberOfInputs @ShelleyKey Cardano.Mainnet (Quantity size) nOuts + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity size) nOuts <= - _estimateMaxNumberOfInputs @ShelleyKey Cardano.Mainnet (Quantity (size * 2)) nOuts + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity (size * 2)) nOuts testCoinSelOpts :: CoinSelectionOptions () testCoinSelOpts = coinSelOpts testTxLayer (Quantity 4096) @@ -267,7 +252,7 @@ data DecodeByronSetup = DecodeByronSetup { inputs :: UTxO , outputs :: [TxOut] , ttl :: SlotNo - , protocolMagic :: ProtocolMagic + , network :: Cardano.NetworkId , keyPasswd :: [(XPrv, Passphrase "encryption")] } deriving Show @@ -281,17 +266,22 @@ instance Arbitrary DecodeShelleySetup where pairs <- vectorOf numInps arbitrary pure $ DecodeShelleySetup utxo outs slot pairs +instance Arbitrary Cardano.NetworkId where + arbitrary = oneof + [return $ Cardano.Mainnet + , return $ Cardano.Testnet $ Cardano.NetworkMagic 42 + ] + instance Arbitrary DecodeByronSetup where arbitrary = do utxo <- arbitrary n <- choose (1,10) outs <- vectorOf n arbitrary - let pmTestnet = ProtocolMagic <$> arbitrary - pm <- oneof [pure mainnetMagic, pmTestnet] + net <- arbitrary let numInps = Map.size $ getUTxO utxo slot <- arbitrary pairs <- vectorOf numInps arbitrary - pure $ DecodeByronSetup utxo outs slot pm pairs + pure $ DecodeByronSetup utxo outs slot net pairs instance Arbitrary SlotNo where arbitrary = SlotNo <$> choose (1, 1000) From 2cd1ffebf4b48c0e58e6543522c028f2e047f821 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Tue, 21 Jul 2020 05:43:25 +0200 Subject: [PATCH 24/86] Update (slightly) failing fee estimation goldens It seems the fee estimation has changed, and these tests just need to be adjusted slightly. --- .../Cardano/Wallet/Shelley/TransactionSpec.hs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index 0934d953683..4df9d1cf236 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -117,15 +117,19 @@ spec = do minFee = fromIntegral . getFee . minimumFee tl policy Nothing where tl = testTxLayer + costWith = minFee (mempty { withdrawal }) + costWithout = minFee mempty + costOfWithdrawal :: Integer - costOfWithdrawal = - minFee (mempty { withdrawal }) - minFee mempty + costOfWithdrawal = costWith - costWithout in (if withdrawal == 0 then property $ costOfWithdrawal == 0 else property $ costOfWithdrawal > 0 ) & classify (withdrawal == 0) "null withdrawal" & counterexample ("cost of withdrawal: " <> show costOfWithdrawal) + & counterexample ("cost with: " <> show costWith) + & counterexample ("cost without: " <> show costWithout) it "regression #1740 - fee estimation at the boundaries" $ do let utxo = UTxO $ Map.fromList @@ -144,7 +148,7 @@ spec = do (Fee . CS.feeBalance) <$> adjustForFee testFeeOpts utxo' sel res <- runExceptT $ estimateFeeForCoinSelection selectCoins - res `shouldBe` Right (FeeEstimation 165281 165281) + res `shouldBe` Right (FeeEstimation 169857 169857) estimateMaxInputsTests :: Cardano.NetworkId @@ -153,11 +157,11 @@ estimateMaxInputsTests net = describe ("estimateMaxNumberOfInputs for networkId="<> show net) $ do it "order of magnitude, nOuts = 1" $ - _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 1 `shouldBe` 27 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 1 `shouldBe` 22 it "order of magnitude, nOuts = 10" $ - _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 10 `shouldBe` 19 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 10 `shouldBe` 16 it "order of magnitude, nOuts = 20" $ - _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 20 `shouldBe` 10 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 20 `shouldBe` 8 it "order of magnitude, nOuts = 30" $ _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 30 `shouldBe` 1 From 4e9b64fe82a2174234305f92558335795bafb508 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 15:19:17 +1000 Subject: [PATCH 25/86] Fix compile --- lib/core/src/Cardano/Pool/DB/Sqlite.hs | 5 +--- lib/core/src/Cardano/Wallet/Orphans.hs | 25 ++++++++++++++++++- .../src/Cardano/Wallet/Primitive/Slotting.hs | 18 +------------ 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/lib/core/src/Cardano/Pool/DB/Sqlite.hs b/lib/core/src/Cardano/Pool/DB/Sqlite.hs index 7ed3ad2245c..c3324980489 100644 --- a/lib/core/src/Cardano/Pool/DB/Sqlite.hs +++ b/lib/core/src/Cardano/Pool/DB/Sqlite.hs @@ -105,8 +105,6 @@ import Database.Persist.Sql ) import Database.Persist.Sqlite ( SqlPersistT ) -import GHC.Stack - ( HasCallStack ) import System.Directory ( removeFile ) import System.FilePath @@ -484,8 +482,7 @@ backoff time iter = addUTCTime delay time -------------------------------------------------------------------------------} selectPoolProduction - :: HasCallStack - => TimeInterpreter IO + :: TimeInterpreter IO -> EpochNo -> SqlPersistT IO [PoolProduction] selectPoolProduction timeInterpreter epoch = do diff --git a/lib/core/src/Cardano/Wallet/Orphans.hs b/lib/core/src/Cardano/Wallet/Orphans.hs index ba83a15b2c0..100360a70f4 100644 --- a/lib/core/src/Cardano/Wallet/Orphans.hs +++ b/lib/core/src/Cardano/Wallet/Orphans.hs @@ -1,3 +1,5 @@ +{-# LANGUAGE LambdaCase #-} +{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-orphans #-} -- | @@ -12,7 +14,28 @@ import Prelude import Cardano.Slotting.Slot ( SlotNo (..) ) import Fmt - ( Buildable (..) ) + ( Buildable (..), (+|), (+||), (|+), (||+) ) + +import qualified Ouroboros.Consensus.HardFork.History.Qry as HF instance Buildable SlotNo where build (SlotNo n) = build (show n) + +instance Buildable (HF.Qry a) where + build = \case + HF.QPure _ -> "QPure" + HF.QBind q _ -> "QBind "+|q|+"" + HF.QAbsToRelTime t -> "QAbsToRelTime "+||t||+"" + HF.QAbsToRelSlot sl -> "QAbsToRelSlot "+||sl||+"" + HF.QAbsToRelEpoch ep -> "QAbsToRelEpoch "+||ep||+"" + HF.QSlotLength sl -> "QSlotLength "+||sl||+"" + HF.QEpochSize ep -> "QEpochSize "+||ep||+"" + -- Necessary constructors or show instances are not exported -- we can't + -- show these values. + HF.QRelToAbsTime _t -> "QRelToAbsTime ?" + HF.QRelToAbsSlot _slt -> "QRelToAbsSlot ?" + HF.QRelToAbsEpoch _epe -> "QRelToAbsEpoch ?" + HF.QRelTimeToSlot _t -> "QRelTimeToSlot ?" + HF.QRelSlotToTime _sl -> "QRelSlotToTime ?" + HF.QRelSlotToEpoch _sl -> "QRelSlotToEpoch ?" + HF.QRelEpochToSlot _ep -> "QRelEpochToSlot ?" diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index 83e012d9f28..d28786d746a 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -56,6 +56,7 @@ module Cardano.Wallet.Primitive.Slotting import Prelude +import Cardano.Wallet.Orphans () import Cardano.Wallet.Primitive.Types ( ActiveSlotCoefficient (..) , EpochLength (..) @@ -282,23 +283,6 @@ instance Buildable (Qry a) where QPure _ -> "qPure" QBind q _ -> "qBind " <> build q -instance Buildable (HF.Qry a) where - build = \case - HF.QPure _ -> "QPure" - HF.QBind q _ -> "QBind "+|q|+"" - HF.QAbsToRelTime t -> "QAbsToRelTime "+||t||+"" - HF.QAbsToRelSlot sl -> "QAbsToRelSlot "+||sl||+"" - HF.QAbsToRelEpoch ep -> "QAbsToRelEpoch "+||ep||+"" - HF.QRelToAbsTime t -> "QRelToAbsTime " -- +||t||+"" - HF.QRelToAbsSlot slt -> "QRelToAbsSlot " -- +||slt||+"" - HF.QRelToAbsEpoch epe -> "QRelToAbsEpoch "-- +||epe||+"" - HF.QRelTimeToSlot t -> "QRelTimeToSlot "-- +||t||+"" - HF.QRelSlotToTime sl -> "QRelSlotToTime "-- +||sl||+"" - HF.QRelSlotToEpoch sl -> "QRelSlotToEpoch "-- +||sl||+"" - HF.QRelEpochToSlot ep -> "QRelEpochToSlot "-- +||ep||+"" - HF.QSlotLength sl -> "QSlotLength "+||sl||+"" - HF.QEpochSize ep -> "QEpochSize "+||ep||+"" - runQuery :: HasCallStack => MyInterpreter xs -> Qry a -> Either HF.PastHorizonException a runQuery (MyInterpreter systemStart int) = go where From c639444e5226a47c909114352a8423b041f183d4 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 15:19:58 +1000 Subject: [PATCH 26/86] toShelleyGenTx -> unsealShelleyTx --- .../Cardano/Wallet/Shelley/Compatibility.hs | 24 +++++++++---------- .../src/Cardano/Wallet/Shelley/Network.hs | 4 ++-- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index 82a9db71313..b9f98ac1053 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -40,7 +40,7 @@ module Cardano.Wallet.Shelley.Compatibility -- * Conversions , toCardanoHash , toEpochSize - , toShelleyGenTx + , unsealShelleyTx , toPoint , toCardanoTxId , toCardanoTxIn @@ -644,17 +644,6 @@ optimumNumberOfPools = unsafeConvert . SL._nOpt -- Txs -- --- | SealedTx are the result of rightfully constructed shelley transactions so, it --- is relatively safe to unserialize them from CBOR. -toShelleyGenTx - :: (HasCallStack, Crypto c) - => W.SealedTx - -> CardanoGenTx c -toShelleyGenTx = GenTxShelley - . unsafeDeserialiseCbor fromCBOR - . BL.fromStrict - . W.getSealedTx - fromShelleyTxId :: SL.TxId crypto -> W.Hash "Tx" fromShelleyTxId (SL.TxId (UnsafeHash h)) = W.Hash $ fromShort h @@ -814,6 +803,17 @@ toByronNetworkMagic pm@(W.ProtocolMagic magic) = else Byron.NetworkTestnet (fromIntegral magic) +-- | SealedTx are the result of rightfully constructed shelley transactions so, it +-- is relatively safe to unserialize them from CBOR. +unsealShelleyTx + :: (HasCallStack, Crypto c) + => W.SealedTx + -> CardanoGenTx c +unsealShelleyTx = GenTxShelley + . unsafeDeserialiseCbor fromCBOR + . BL.fromStrict + . W.getSealedTx + -- NOTE: Arguably breaks naming conventions. Perhaps fromCardanoSignedTx instead toSealed :: Cardano.Tx Cardano.Shelley -> (W.Tx, W.SealedTx) toSealed tx = (toWalletTx tx, W.SealedTx $ serialiseToCBOR tx) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 3bd57a81815..793bc40e8ce 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -68,8 +68,8 @@ import Cardano.Wallet.Shelley.Compatibility , optimumNumberOfPools , toPoint , toShelleyCoin - , toShelleyGenTx , toStakeCredential + , unsealShelleyTx ) import Control.Concurrent ( ThreadId ) @@ -414,7 +414,7 @@ withNetworkLayer tr np addrInfo versionData action = do -- are deserialised as shelley transactions before submitting. _postSealedTx localTxSubmissionQ tx = do liftIO $ traceWith tr $ MsgPostSealedTx tx - _postTx localTxSubmissionQ (toShelleyGenTx tx) + _postTx localTxSubmissionQ (unsealShelleyTx tx) handleQueryFailure :: forall e r. Show e => IO (Either e r) -> ExceptT ErrNetworkUnavailable IO r handleQueryFailure = From ae919a3467ae9dc0767f350291fed03b208c2c24 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Sun, 19 Jul 2020 23:44:02 +1000 Subject: [PATCH 27/86] PostTx type family --- lib/core/src/Cardano/Wallet.hs | 4 ++-- lib/core/src/Cardano/Wallet/Network.hs | 19 +++++++++++++++++-- .../src/Cardano/Wallet/Shelley/Network.hs | 6 +++++- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index 5bc8e5c145d..882af02399d 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -1629,7 +1629,7 @@ submitTx -> (Tx, TxMeta, SealedTx) -> ExceptT ErrSubmitTx IO () submitTx ctx wid (tx, meta, binary) = db & \DBLayer{..} -> do - withExceptT ErrSubmitTxNetwork $ postTx nw binary + withExceptT ErrSubmitTxNetwork $ postSealedTx nw binary mapExceptT atomically $ withExceptT ErrSubmitTxNoSuchWallet $ putTxHistory (PrimaryKey wid) [(tx, meta)] where @@ -1648,7 +1648,7 @@ submitExternalTx submitExternalTx ctx bytes = do (tx,binary) <- withExceptT ErrSubmitExternalTxDecode $ except $ decodeSignedTx tl bytes - withExceptT ErrSubmitExternalTxNetwork $ postTx nw binary + withExceptT ErrSubmitExternalTxNetwork $ postSealedTx nw binary return tx where nw = ctx ^. networkLayer @t diff --git a/lib/core/src/Cardano/Wallet/Network.hs b/lib/core/src/Cardano/Wallet/Network.hs index 2de71f1a4f4..9dff7ea3f4f 100644 --- a/lib/core/src/Cardano/Wallet/Network.hs +++ b/lib/core/src/Cardano/Wallet/Network.hs @@ -19,6 +19,7 @@ module Cardano.Wallet.Network , FollowAction (..) , FollowExit (..) , GetStakeDistribution + , PostTx -- * Errors , ErrNetworkUnavailable (..) @@ -139,8 +140,13 @@ data NetworkLayer m target block = NetworkLayer :: m ProtocolParameters , postTx + :: PostTx target block -> ExceptT ErrPostTx m () + -- ^ Submit a transaction to the node backend, to be broadcast to its + -- peers. + + , postSealedTx :: SealedTx -> ExceptT ErrPostTx m () - -- ^ Broadcast a transaction to the chain producer + -- ^ Submit a serialised transaction to the node backend. , stakeDistribution :: GetStakeDistribution target block m @@ -156,7 +162,8 @@ data NetworkLayer m target block = NetworkLayer instance Functor m => Functor (NetworkLayer m target) where fmap f nl = nl { nextBlocks = fmap (fmap f) . nextBlocks nl - , stakeDistribution = error "fixme: functor instance" + , stakeDistribution = error "fixme: functor instance stakeDistribution" + , postTx = error "fixme: functor instance postTx" } {------------------------------------------------------------------------------- @@ -248,6 +255,14 @@ defaultRetryPolicy = type family GetStakeDistribution target block (m :: * -> *) :: * +{------------------------------------------------------------------------------- + Transaction submission +-------------------------------------------------------------------------------} + +-- | Different backends submit different types for transactions. Some submit +-- serialized transactions for example. +type family PostTx target block + {------------------------------------------------------------------------------- Chain Sync -------------------------------------------------------------------------------} diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 793bc40e8ce..30034a30564 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -51,6 +51,7 @@ import Cardano.Wallet.Network , ErrPostTx (..) , GetStakeDistribution , NetworkLayer (..) + , PostTx , mapCursor ) import Cardano.Wallet.Primitive.Slotting @@ -307,7 +308,8 @@ withNetworkLayer tr np addrInfo versionData action = do , destroyCursor = _destroyCursor , cursorSlotNo = _cursorSlotNo , getProtocolParameters = atomically $ readTVar protocolParamsVar - , postTx = _postSealedTx localTxSubmissionQ + , postSealedTx = _postSealedTx localTxSubmissionQ + , postTx = _postTx localTxSubmissionQ , stakeDistribution = _stakeDistribution queryRewardQ , getAccountBalance = _getAccountBalance nodeTipVar queryRewardQ , timeInterpreter = _timeInterpreterQuery interpreterVar @@ -465,6 +467,8 @@ withNetworkLayer tr np addrInfo versionData action = do traceWith tr $ MsgInterpreterPastHorizon (pretty query) e throwIO e +type instance PostTx (IO Shelley) block = GenTx block + type instance GetStakeDistribution (IO Shelley) (CardanoBlock sc) m = (Point (CardanoBlock sc) -> W.Coin From 8ec27d00381dd050d952527296e6a8197ad762ac Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 15:51:00 +1000 Subject: [PATCH 28/86] Rename --- lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs | 7 +++---- lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs | 6 +++--- .../test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs | 4 ++-- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index b9f98ac1053..feba0e850fa 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -46,7 +46,7 @@ module Cardano.Wallet.Shelley.Compatibility , toCardanoTxIn , toCardanoTxOut , toCardanoLovelace - , toSealed + , sealShelleyTx , toStakeKeyRegCert , toStakeKeyDeregCert , toStakePoolDlgCert @@ -814,9 +814,8 @@ unsealShelleyTx = GenTxShelley . BL.fromStrict . W.getSealedTx --- NOTE: Arguably breaks naming conventions. Perhaps fromCardanoSignedTx instead -toSealed :: Cardano.Tx Cardano.Shelley -> (W.Tx, W.SealedTx) -toSealed tx = (toWalletTx tx, W.SealedTx $ serialiseToCBOR tx) +sealShelleyTx :: Cardano.Tx Cardano.Shelley -> (W.Tx, W.SealedTx) +sealShelleyTx tx = (toWalletTx tx, W.SealedTx $ serialiseToCBOR tx) where -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, -- so we convert directly to the concrete wallet Tx type: diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 232d5e7f777..4de8a5daaf7 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -70,12 +70,12 @@ import Cardano.Wallet.Primitive.Types import Cardano.Wallet.Shelley.Compatibility ( Shelley , TPraosStandardCrypto + , sealShelleyTx , toCardanoLovelace , toCardanoStakeCredential , toCardanoTxIn , toCardanoTxOut , toHDPayloadAddress - , toSealed , toStakeKeyDeregCert , toStakeKeyRegCert , toStakePoolDlgCert @@ -194,7 +194,7 @@ mkTx networkId (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) ke pure $ bootstrapWits <> mkExtraWits unsigned let tx = Cardano.makeSignedTransaction wits unsigned - return $ toSealed tx + return $ sealShelleyTx tx newTransactionLayer :: forall k t. @@ -332,7 +332,7 @@ _decodeSignedTx _decodeSignedTx bytes = do case Cardano.deserialiseFromCBOR Cardano.AsShelleyTx bytes of Right txValid -> - pure $ toSealed txValid + pure $ sealShelleyTx txValid Left decodeErr -> Left $ ErrDecodeSignedTxWrongPayload (T.pack $ show decodeErr) diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index 4df9d1cf236..d8c0131b738 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -41,7 +41,7 @@ import Cardano.Wallet.Primitive.Fee import Cardano.Wallet.Primitive.Types ( Address (..), Coin (..), Hash (..), TxIn (..), TxOut (..), UTxO (..) ) import Cardano.Wallet.Shelley.Compatibility - ( Shelley, toSealed ) + ( Shelley, sealShelleyTx ) import Cardano.Wallet.Shelley.Transaction ( mkByronWitness , mkShelleyWitness @@ -180,7 +180,7 @@ prop_decodeSignedShelleyTxRoundtrip (DecodeShelleySetup utxo outs slotNo pairs) let wits = addrWits let ledgerTx = Cardano.makeSignedTransaction wits unsigned _decodeSignedTx (Cardano.serialiseToCBOR ledgerTx) - === Right (toSealed ledgerTx) + === Right (sealShelleyTx ledgerTx) prop_decodeSignedByronTxRoundtrip :: DecodeByronSetup From 88b98cb507fb088424f0c313d7ae2305c702358e Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 15:51:30 +1000 Subject: [PATCH 29/86] Revert "PostTx type family" This reverts commit 2d39731592713297fec474cf2dc89d5c0a6de3c1. --- lib/core/src/Cardano/Wallet.hs | 4 ++-- lib/core/src/Cardano/Wallet/Network.hs | 19 ++----------------- .../src/Cardano/Wallet/Shelley/Network.hs | 6 +----- 3 files changed, 5 insertions(+), 24 deletions(-) diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index 882af02399d..5bc8e5c145d 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -1629,7 +1629,7 @@ submitTx -> (Tx, TxMeta, SealedTx) -> ExceptT ErrSubmitTx IO () submitTx ctx wid (tx, meta, binary) = db & \DBLayer{..} -> do - withExceptT ErrSubmitTxNetwork $ postSealedTx nw binary + withExceptT ErrSubmitTxNetwork $ postTx nw binary mapExceptT atomically $ withExceptT ErrSubmitTxNoSuchWallet $ putTxHistory (PrimaryKey wid) [(tx, meta)] where @@ -1648,7 +1648,7 @@ submitExternalTx submitExternalTx ctx bytes = do (tx,binary) <- withExceptT ErrSubmitExternalTxDecode $ except $ decodeSignedTx tl bytes - withExceptT ErrSubmitExternalTxNetwork $ postSealedTx nw binary + withExceptT ErrSubmitExternalTxNetwork $ postTx nw binary return tx where nw = ctx ^. networkLayer @t diff --git a/lib/core/src/Cardano/Wallet/Network.hs b/lib/core/src/Cardano/Wallet/Network.hs index 9dff7ea3f4f..2de71f1a4f4 100644 --- a/lib/core/src/Cardano/Wallet/Network.hs +++ b/lib/core/src/Cardano/Wallet/Network.hs @@ -19,7 +19,6 @@ module Cardano.Wallet.Network , FollowAction (..) , FollowExit (..) , GetStakeDistribution - , PostTx -- * Errors , ErrNetworkUnavailable (..) @@ -140,13 +139,8 @@ data NetworkLayer m target block = NetworkLayer :: m ProtocolParameters , postTx - :: PostTx target block -> ExceptT ErrPostTx m () - -- ^ Submit a transaction to the node backend, to be broadcast to its - -- peers. - - , postSealedTx :: SealedTx -> ExceptT ErrPostTx m () - -- ^ Submit a serialised transaction to the node backend. + -- ^ Broadcast a transaction to the chain producer , stakeDistribution :: GetStakeDistribution target block m @@ -162,8 +156,7 @@ data NetworkLayer m target block = NetworkLayer instance Functor m => Functor (NetworkLayer m target) where fmap f nl = nl { nextBlocks = fmap (fmap f) . nextBlocks nl - , stakeDistribution = error "fixme: functor instance stakeDistribution" - , postTx = error "fixme: functor instance postTx" + , stakeDistribution = error "fixme: functor instance" } {------------------------------------------------------------------------------- @@ -255,14 +248,6 @@ defaultRetryPolicy = type family GetStakeDistribution target block (m :: * -> *) :: * -{------------------------------------------------------------------------------- - Transaction submission --------------------------------------------------------------------------------} - --- | Different backends submit different types for transactions. Some submit --- serialized transactions for example. -type family PostTx target block - {------------------------------------------------------------------------------- Chain Sync -------------------------------------------------------------------------------} diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 30034a30564..793bc40e8ce 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -51,7 +51,6 @@ import Cardano.Wallet.Network , ErrPostTx (..) , GetStakeDistribution , NetworkLayer (..) - , PostTx , mapCursor ) import Cardano.Wallet.Primitive.Slotting @@ -308,8 +307,7 @@ withNetworkLayer tr np addrInfo versionData action = do , destroyCursor = _destroyCursor , cursorSlotNo = _cursorSlotNo , getProtocolParameters = atomically $ readTVar protocolParamsVar - , postSealedTx = _postSealedTx localTxSubmissionQ - , postTx = _postTx localTxSubmissionQ + , postTx = _postSealedTx localTxSubmissionQ , stakeDistribution = _stakeDistribution queryRewardQ , getAccountBalance = _getAccountBalance nodeTipVar queryRewardQ , timeInterpreter = _timeInterpreterQuery interpreterVar @@ -467,8 +465,6 @@ withNetworkLayer tr np addrInfo versionData action = do traceWith tr $ MsgInterpreterPastHorizon (pretty query) e throwIO e -type instance PostTx (IO Shelley) block = GenTx block - type instance GetStakeDistribution (IO Shelley) (CardanoBlock sc) m = (Point (CardanoBlock sc) -> W.Coin From 75d3b89ef99d24a3315f02e3224be455eaa2265a Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 16:13:52 +1000 Subject: [PATCH 30/86] fixup --- lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index feba0e850fa..2ca3ac92941 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -815,13 +815,13 @@ unsealShelleyTx = GenTxShelley . W.getSealedTx sealShelleyTx :: Cardano.Tx Cardano.Shelley -> (W.Tx, W.SealedTx) -sealShelleyTx tx = (toWalletTx tx, W.SealedTx $ serialiseToCBOR tx) +sealShelleyTx tx@(Cardano.ShelleyTx x) = + (toWalletTx, W.SealedTx $ serialiseToCBOR tx) where -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, -- so we convert directly to the concrete wallet Tx type: - toWalletTx :: Cardano.Tx Cardano.Shelley -> W.Tx - toWalletTx (Cardano.ShelleyTx x) = - let (wtx,_,_) = fromShelleyTx x in wtx + toWalletTx :: W.Tx + toWalletTx = let (wtx,_,_) = fromShelleyTx x in wtx toCardanoTxId :: W.Hash "Tx" -> Cardano.TxId toCardanoTxId (W.Hash h) = Cardano.TxId $ UnsafeHash $ toShort h From b544b38060c65989a58c8dbc5e57de219ab80a7c Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 16:24:26 +1000 Subject: [PATCH 31/86] Fix toSealed --- .../Cardano/Wallet/Shelley/Compatibility.hs | 19 +++++++++++-------- .../src/Cardano/Wallet/Shelley/Transaction.hs | 1 - 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index 2ca3ac92941..d36b74d013f 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -97,7 +97,9 @@ import Cardano.Address.Derivation import Cardano.Api.Shelley.Genesis ( ShelleyGenesis (..) ) import Cardano.Api.Typed - ( AsType (..), Shelley, deserialiseFromRawBytes, serialiseToCBOR ) + ( AsType (..), Shelley, deserialiseFromRawBytes ) +import Cardano.Binary + ( serialize' ) import Cardano.Binary ( fromCBOR ) import Cardano.Crypto.Hash.Class @@ -815,13 +817,14 @@ unsealShelleyTx = GenTxShelley . W.getSealedTx sealShelleyTx :: Cardano.Tx Cardano.Shelley -> (W.Tx, W.SealedTx) -sealShelleyTx tx@(Cardano.ShelleyTx x) = - (toWalletTx, W.SealedTx $ serialiseToCBOR tx) - where - -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, - -- so we convert directly to the concrete wallet Tx type: - toWalletTx :: W.Tx - toWalletTx = let (wtx,_,_) = fromShelleyTx x in wtx +sealShelleyTx (Cardano.ShelleyTx tx) = + let + -- The Cardano.Tx GADT won't allow the Shelley crypto type param escape, + -- so we convert directly to the concrete wallet Tx type: + (walletTx, _, _) = fromShelleyTx tx + sealed = serialize' $ O.mkShelleyTx tx + in + (walletTx, W.SealedTx $ sealed) toCardanoTxId :: W.Hash "Tx" -> Cardano.TxId toCardanoTxId (W.Hash h) = Cardano.TxId $ UnsafeHash $ toShort h diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 4de8a5daaf7..052bc101199 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -104,7 +104,6 @@ import Ouroboros.Consensus.Shelley.Protocol.Crypto import Ouroboros.Network.Block ( SlotNo ) ---import qualified Cardano.Api as Cardano import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as Crypto From ca03f0ce0f1a45eeee00f186d7b8c9e3bb25b5c5 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Tue, 21 Jul 2020 21:00:14 +1000 Subject: [PATCH 32/86] Include byron address attributes in tx witnesses --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 74 ++++++++++++++++--- 1 file changed, 64 insertions(+), 10 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 052bc101199..e0fc6e831ca 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -106,8 +106,11 @@ import Ouroboros.Network.Block import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Chain.Common as Byron -import qualified Cardano.Crypto as Crypto -import qualified Cardano.Crypto.Wallet as CC +import qualified Cardano.Crypto as CC +import qualified Cardano.Crypto.DSIGN.Class as Crypto +import qualified Cardano.Crypto.Hash.Class as Crypto +import qualified Cardano.Crypto.Signing as Byron +import qualified Cardano.Crypto.Wallet as Crypto.HD import qualified Cardano.Wallet.Primitive.CoinSelection as CS import qualified Data.ByteArray as BA import qualified Data.ByteString as BS @@ -119,7 +122,6 @@ import qualified Shelley.Spec.Ledger.Keys as SL import qualified Shelley.Spec.Ledger.LedgerState as SL import qualified Shelley.Spec.Ledger.Tx as SL - -- | Type encapsulating what we need to know to add things -- payloads, -- certificates -- to a transaction. -- @@ -189,7 +191,7 @@ mkTx networkId (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) ke TxWitnessByronUTxO -> do bootstrapWits <- forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr - pure $ mkByronWitness unsigned networkId (getRawKey k, pwd) + pure $ mkByronWitness unsigned networkId addr (getRawKey k, pwd) pure $ bootstrapWits <> mkExtraWits unsigned let tx = Cardano.makeSignedTransaction wits unsigned @@ -542,19 +544,71 @@ mkShelleyWitness body key = where unencrypt (xprv, pwd) = Cardano.WitnessPaymentExtendedKey $ Cardano.PaymentExtendedSigningKey - $ CC.xPrvChangePass pwd BS.empty xprv + $ Crypto.HD.xPrvChangePass pwd BS.empty xprv mkByronWitness :: Cardano.TxBody Cardano.Shelley -> Cardano.NetworkId + -> Address -> (XPrv, Passphrase "encryption") -> Cardano.Witness Cardano.Shelley -mkByronWitness body networkId (prv, Passphrase pwd) = - Cardano.makeShelleyBootstrapWitness networkId body signingKey +mkByronWitness (Cardano.ShelleyTxBody txbody _) nw addr (prv, Passphrase pwd) = + Cardano.ShelleyBootstrapWitness $ + -- Byron era witnesses were weird. This reveals all that weirdness. + SL.BootstrapWitness { + SL.bwKey = vk, + SL.bwSig = signature, + SL.bwChainCode = chainCode, + SL.bwAttributes = attributes + } where - signingKey = Cardano.ByronSigningKey - $ Crypto.SigningKey - $ CC.xPrvChangePass pwd BS.empty prv + sk = CC.SigningKey $ Crypto.HD.xPrvChangePass pwd BS.empty prv + + -- Starting with the easy bits: we /can/ convert the Byron verification key + -- to a the pair of a Shelley verification key plus the chain code. + -- + (vk, chainCode) = SL.unpackByronVKey (Byron.toVerification sk) + + -- Now the hairy bits. + -- + -- Byron era signing keys were all /extended/ ed25519 keys. We have to + -- produce a signature using this extended signing key directly. They + -- /cannot/ be converted to a plain (non-extended) signing keys. Since we + -- now support extended signing keys for the Shelley too, we are able to + -- reuse that here. + -- + signature + :: SL.SignedDSIGN TPraosStandardCrypto + (SL.Hash TPraosStandardCrypto (SL.TxBody TPraosStandardCrypto)) + signature = fromXSignature $ + Crypto.HD.sign + BS.empty -- passphrase for (unused) in-mem encryption + (Byron.unSigningKey sk) + (Crypto.hashToBytes txhash) + where + fromXSignature :: Crypto.HD.XSignature + -> SL.SignedDSIGN TPraosStandardCrypto b + fromXSignature = + Crypto.SignedDSIGN + . fromMaybe impossible + . rawDeserialiseSigDSIGN + . Crypto.HD.unXSignature + + impossible = + error "mkByronWitness: byron and shelley signature sizes do not match" + + txhash :: SL.Hash TPraosStandardCrypto (SL.TxBody TPraosStandardCrypto) + txhash = Crypto.hashWith serialize' txbody + + -- And finally we need to provide the extra suffix bytes necessary to + -- reconstruct the mini-Merkel tree that is a Byron address. The suffix + -- bytes are the serialised address attributes. + attributes = serialize' $ + Byron.mkAttributes Byron.AddrAttributes { + Byron.aaVKDerivationPath = toHDPayloadAddress addr, + Byron.aaNetworkMagic = Cardano.toByronNetworkMagic nw + } + -------------------------------------------------------------------------------- -- Extra validations on coin selection From 81646b1dd1221572878dabf3aa407cb0df4360f3 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 21 Jul 2020 17:32:44 +0200 Subject: [PATCH 33/86] fix stylish-haskell issues in Primitive.Slotting --- lib/core/src/Cardano/Wallet/Primitive/Slotting.hs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index d28786d746a..e48c9aff7ef 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -1,5 +1,6 @@ {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE KindSignatures #-} {-# LANGUAGE LambdaCase #-} @@ -56,7 +57,8 @@ module Cardano.Wallet.Primitive.Slotting import Prelude -import Cardano.Wallet.Orphans () +import Cardano.Wallet.Orphans + () import Cardano.Wallet.Primitive.Types ( ActiveSlotCoefficient (..) , EpochLength (..) @@ -88,8 +90,12 @@ import Data.Time.Clock ( NominalDiffTime, UTCTime, addUTCTime, diffUTCTime, getCurrentTime ) import Data.Word ( Word32, Word64 ) +import Fmt + ( Buildable (..), (+||), (||+) ) import GHC.Generics ( Generic ) +import GHC.Stack + ( HasCallStack ) import Numeric.Natural ( Natural ) import Ouroboros.Consensus.BlockchainTime.WallClock.Types @@ -98,8 +104,6 @@ import Ouroboros.Consensus.HardFork.History.Qry ( Interpreter, mkInterpreter ) import Ouroboros.Consensus.HardFork.History.Summary ( neverForksSummary ) -import GHC.Stack (HasCallStack) -import Fmt (Buildable(..), (+|), (|+), (||+), (+||)) import qualified Cardano.Slotting.Slot as Cardano import qualified Ouroboros.Consensus.BlockchainTime.WallClock.Types as Cardano From 615e864f53c6cf8d3efe5870097a22285f9906ee Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 21 Jul 2020 17:39:50 +0200 Subject: [PATCH 34/86] slightly refactor 'mkByronWitness' to be consistent with 'mkShelleyWitness' The key unencryption is common to both, so we might as well call things the same way --- lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index e0fc6e831ca..f3fb300e33e 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -552,7 +552,7 @@ mkByronWitness -> Address -> (XPrv, Passphrase "encryption") -> Cardano.Witness Cardano.Shelley -mkByronWitness (Cardano.ShelleyTxBody txbody _) nw addr (prv, Passphrase pwd) = +mkByronWitness (Cardano.ShelleyTxBody txbody _) nw addr encryptedKey = Cardano.ShelleyBootstrapWitness $ -- Byron era witnesses were weird. This reveals all that weirdness. SL.BootstrapWitness { @@ -562,7 +562,10 @@ mkByronWitness (Cardano.ShelleyTxBody txbody _) nw addr (prv, Passphrase pwd) = SL.bwAttributes = attributes } where - sk = CC.SigningKey $ Crypto.HD.xPrvChangePass pwd BS.empty prv + unencrypt (xprv, pwd) = CC.SigningKey + $ Crypto.HD.xPrvChangePass pwd BS.empty xprv + + sk = unencrypt encryptedKey -- Starting with the easy bits: we /can/ convert the Byron verification key -- to a the pair of a Shelley verification key plus the chain code. From 85ed3e873394a2258566904b90a44577eec02442 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 21 Jul 2020 18:01:16 +0200 Subject: [PATCH 35/86] fix fee estimation for byron;shelley transaction layer There were two issues: - 32 byte hashes were used for pool ids - withdrawal witnesses were added when not needed, and vice-versa --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 31 +++++++++++-------- .../Cardano/Wallet/Shelley/TransactionSpec.hs | 15 ++++----- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index f3fb300e33e..2dc7ec4adbf 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -372,6 +372,7 @@ computeTxSize networkId witTag action cs = withUnderlyingShelleyTx f (Cardano.ShelleyTx x) = f x signed = Cardano.makeSignedTransaction wits unsigned + unsigned = mkUnsignedTx maxBound cs' wdrls certs where cs' :: CoinSelection @@ -389,7 +390,7 @@ computeTxSize networkId witTag action cs = dummyPoolId :: Cardano.PoolId dummyPoolId = fromMaybe (error "dummyPoolId couldn't be constructed") $ Cardano.deserialiseFromRawBytes (Cardano.AsHash Cardano.AsStakePoolKey) - $ BS.pack $ replicate 32 0 + dummyKeyHashRaw certs = case action of Nothing -> [] @@ -411,10 +412,23 @@ computeTxSize networkId witTag action cs = (ChimericAccount dummyKeyHashRaw) (withdrawal cs) + -- NOTE + -- We do not allow certificate witnesses for Byron because we _know_ that we + -- don't have hybrid wallets (in the context of cardano-wallet). So, any + -- Byron UTxO would necessarily come from a Byron wallet (either Random or + -- Icarus) and therefore, have no delegation capability and no need for + -- certificate witnesses. + wits = case witTag of + TxWitnessShelleyUTxO -> + addrWits <> certWits + TxWitnessByronUTxO -> + byronWits + (addrWits, certWits) = - ( - map dummyWitnessUniq (fst <$> CS.inputs cs) - <> [dummyWitness "0" | null wdrls] + ( mconcat + [ map dummyWitnessUniq (fst <$> CS.inputs cs) + , if null wdrls then mempty else [dummyWitness "0"] + ] , case action of Nothing -> [] Just{} -> [dummyWitness "a"] @@ -439,7 +453,6 @@ computeTxSize networkId witTag action cs = where chaff = L8.pack (show ix) <> BL.fromStrict txid - -- Note that the "byron"/bootstrap witnesses are still shelley era -- witnesses. byronWits = map dummyWitnessUniq $ CS.inputs cs @@ -483,14 +496,6 @@ computeTxSize networkId witTag action cs = bloatChaff :: Word -> BL.ByteString -> ByteString bloatChaff n = BL.toStrict . BL.take (fromIntegral n) . BL.cycle - -- TODO: Surely we can allow byron witnesses paying for certificates? - -- Should be no reason to case here. - wits = case witTag of - TxWitnessShelleyUTxO -> - addrWits <> certWits - TxWitnessByronUTxO -> - byronWits - lookupPrivateKey :: (Address -> Maybe (k 'AddressK XPrv, Passphrase "encryption")) -> Address diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index d8c0131b738..d7e91118d80 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -78,6 +78,7 @@ import Test.QuickCheck , choose , classify , counterexample + , elements , oneof , property , scale @@ -148,7 +149,7 @@ spec = do (Fee . CS.feeBalance) <$> adjustForFee testFeeOpts utxo' sel res <- runExceptT $ estimateFeeForCoinSelection selectCoins - res `shouldBe` Right (FeeEstimation 169857 169857) + res `shouldBe` Right (FeeEstimation 165413 165413) estimateMaxInputsTests :: Cardano.NetworkId @@ -157,13 +158,13 @@ estimateMaxInputsTests net = describe ("estimateMaxNumberOfInputs for networkId="<> show net) $ do it "order of magnitude, nOuts = 1" $ - _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 1 `shouldBe` 22 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 1 `shouldBe` 23 it "order of magnitude, nOuts = 10" $ _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 10 `shouldBe` 16 it "order of magnitude, nOuts = 20" $ - _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 20 `shouldBe` 8 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 20 `shouldBe` 9 it "order of magnitude, nOuts = 30" $ - _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 30 `shouldBe` 1 + _estimateMaxNumberOfInputs @ShelleyKey net (Quantity 4096) 30 `shouldBe` 2 prop "more outputs ==> less inputs" (prop_moreOutputsMeansLessInputs net) prop "less outputs ==> more inputs" (prop_lessOutputsMeansMoreInputs net) @@ -271,9 +272,9 @@ instance Arbitrary DecodeShelleySetup where pure $ DecodeShelleySetup utxo outs slot pairs instance Arbitrary Cardano.NetworkId where - arbitrary = oneof - [return $ Cardano.Mainnet - , return $ Cardano.Testnet $ Cardano.NetworkMagic 42 + arbitrary = elements + [ Cardano.Mainnet + , Cardano.Testnet $ Cardano.NetworkMagic 42 ] instance Arbitrary DecodeByronSetup where From 4fdaf3e42de430d25887bc62e2dfc95199f69a4a Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 21 Jul 2020 18:39:39 +0200 Subject: [PATCH 36/86] revert adding 'block' type parameter to GetStakeDistribution type family Instead, I've changed the signature to take a wallet 'BlockHeader' instead of a cardano-noed Point, such that the conversion is done within the implementation of the network layer, instead of being done by the caller. --- lib/core/src/Cardano/Wallet/Network.hs | 5 ++--- lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs | 2 +- .../src/Cardano/Wallet/Jormungandr/Network.hs | 5 ++--- .../test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs | 5 ++--- lib/shelley/src/Cardano/Wallet/Shelley/Network.hs | 9 +++++---- lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs | 4 +--- .../test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs | 1 - 7 files changed, 13 insertions(+), 18 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Network.hs b/lib/core/src/Cardano/Wallet/Network.hs index 2de71f1a4f4..4e904b9dec5 100644 --- a/lib/core/src/Cardano/Wallet/Network.hs +++ b/lib/core/src/Cardano/Wallet/Network.hs @@ -143,7 +143,7 @@ data NetworkLayer m target block = NetworkLayer -- ^ Broadcast a transaction to the chain producer , stakeDistribution - :: GetStakeDistribution target block m + :: GetStakeDistribution target m , getAccountBalance :: ChimericAccount @@ -156,7 +156,6 @@ data NetworkLayer m target block = NetworkLayer instance Functor m => Functor (NetworkLayer m target) where fmap f nl = nl { nextBlocks = fmap (fmap f) . nextBlocks nl - , stakeDistribution = error "fixme: functor instance" } {------------------------------------------------------------------------------- @@ -246,7 +245,7 @@ defaultRetryPolicy = Queries -------------------------------------------------------------------------------} -type family GetStakeDistribution target block (m :: * -> *) :: * +type family GetStakeDistribution target (m :: * -> *) :: * {------------------------------------------------------------------------------- Chain Sync diff --git a/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs b/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs index c87776dc595..35f5e2d7be7 100644 --- a/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs +++ b/lib/jormungandr/src/Cardano/Pool/Jormungandr/Metrics.hs @@ -181,7 +181,7 @@ data StakePoolLayer e m = StakePoolLayer -- The pool productions and stake distrubtions in the db can /never/ be from -- different forks such that it's safe for readers to access it. monitorStakePools - :: (GetStakeDistribution t Block IO ~ GetStakeDistribution Jormungandr Block IO) + :: (GetStakeDistribution t IO ~ GetStakeDistribution Jormungandr IO) => Tracer IO StakePoolLog -> (Block, Quantity "block" Word32) -- ^ Genesis block and 'k' diff --git a/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs b/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs index 076aa1a0786..5101ca88bf7 100644 --- a/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs +++ b/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Network.hs @@ -503,10 +503,9 @@ mkRawNetworkLayer np batchSize st tipNotify j = NetworkLayer Queries -------------------------------------------------------------------------------} -type instance GetStakeDistribution Jormungandr blk m = +type instance GetStakeDistribution Jormungandr m = EpochNo - -> ExceptT ErrNetworkUnavailable m - (Map PoolId (Quantity "lovelace" Word64)) + -> ExceptT ErrNetworkUnavailable m (Map PoolId (Quantity "lovelace" Word64)) {------------------------------------------------------------------------------- Jormungandr Cursor diff --git a/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs b/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs index 3d4ccf93a16..0f473375e85 100644 --- a/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs +++ b/lib/jormungandr/test/unit/Cardano/Pool/Jormungandr/MetricsSpec.hs @@ -270,10 +270,9 @@ prop_trackRegistrations test = monadicIO $ do data instance Cursor RegistrationsTest = Cursor BlockHeader -type instance GetStakeDistribution RegistrationsTest blk m = +type instance GetStakeDistribution RegistrationsTest m = EpochNo - -> ExceptT ErrNetworkUnavailable m - (Map PoolId (Quantity "lovelace" Word64)) + -> ExceptT ErrNetworkUnavailable m (Map PoolId (Quantity "lovelace" Word64)) test_emptyDatabaseNotSynced :: IO () test_emptyDatabaseNotSynced = do diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 793bc40e8ce..7cecf5fc0f6 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -420,7 +420,8 @@ withNetworkLayer tr np addrInfo versionData action = do handleQueryFailure = withExceptT (\e -> ErrNetworkUnreachable $ T.pack $ "Unexpected " ++ show e) . ExceptT - _stakeDistribution queue pt coin = do + _stakeDistribution queue bh coin = do + let pt = toPoint getGenesisBlockHash bh stakeMap <- handleQueryFailure (queue `send` CmdQueryLocalState pt (QueryIfCurrentShelley Shelley.GetStakeDistribution)) let toStake = Set.singleton $ Left $ toShelleyCoin coin @@ -465,10 +466,10 @@ withNetworkLayer tr np addrInfo versionData action = do traceWith tr $ MsgInterpreterPastHorizon (pretty query) e throwIO e -type instance GetStakeDistribution (IO Shelley) (CardanoBlock sc) m - = (Point (CardanoBlock sc) +type instance GetStakeDistribution (IO Shelley) m = + W.BlockHeader -> W.Coin - -> ExceptT ErrNetworkUnavailable m NodePoolLsqData) + -> ExceptT ErrNetworkUnavailable m NodePoolLsqData data NodePoolLsqData = NodePoolLsqData { nOpt :: Int diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs index 123ee67f39d..b5f739c30f8 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs @@ -73,7 +73,6 @@ import Cardano.Wallet.Shelley.Compatibility , getProducer , poolCertsFromShelleyBlock , toCardanoBlockHeader - , toPoint , toShelleyBlockHeader ) import Cardano.Wallet.Shelley.Network @@ -212,8 +211,7 @@ newStakePoolLayer gp NetworkLayer{stakeDistribution,currentNodeTip} db@DBLayer { & view #retirement & fmap (view (#epochNumber . #getApiT)) - gh = getGenesisBlockHash gp - getTip = fmap (toPoint gh) . liftIO $ unsafeRunExceptT currentNodeTip + getTip = liftIO $ unsafeRunExceptT currentNodeTip -- -- Data Combination functions diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index d7e91118d80..fe833b3c213 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -79,7 +79,6 @@ import Test.QuickCheck , classify , counterexample , elements - , oneof , property , scale , vectorOf From 6416a80752a0fc82ab761efbfb6e5da2b8bde39a Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 21 Jul 2020 19:06:17 +0200 Subject: [PATCH 37/86] fix staging configuration parsing for cardano-wallet-shelley --- .../src/Cardano/Wallet/Shelley/Launch.hs | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 7c5fc9912ac..4119e822243 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -95,9 +95,7 @@ import Control.Monad import Control.Monad.Fail ( MonadFail ) import Control.Monad.Trans.Except - ( ExceptT, withExceptT ) -import Control.Monad.Trans.Except - ( ExceptT (..) ) + ( ExceptT (..), withExceptT ) import Control.Retry ( constantDelay, limitRetriesByCumulativeDelay, retrying ) import Control.Tracer @@ -105,7 +103,7 @@ import Control.Tracer import Crypto.Hash.Utils ( blake2b256 ) import Data.Aeson - ( FromJSON (..), eitherDecode, toJSON, (.:), (.=) ) + ( FromJSON (..), toJSON, (.:), (.=) ) import Data.ByteArray.Encoding ( Base (..), convertToBase ) import Data.ByteString @@ -255,20 +253,20 @@ parseGenesisData = \case let pm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData - let (discriminant, vdata) = someCustomDiscriminant mkSomeNetwork pm + let (discriminant, vData) = someCustomDiscriminant mkSomeNetwork pm let (np, outs) = Byron.fromGenesisData (genesisData, genesisHash) let block0 = Byron.genesisBlockFromTxOuts (genesisParameters np) outs pure ( discriminant , np - , vdata + , vData , block0 ) StagingConfig byronGenesisFile -> do - (genesis :: ShelleyGenesis TPraosStandardCrypto) - <- ExceptT $ eitherDecode <$> BL.readFile byronGenesisFile + (genesisData, genesisHash) <- + withExceptT show $ readGenesisData byronGenesisFile let mkSomeNetwork :: forall (pm :: Nat). KnownNat pm @@ -276,10 +274,11 @@ parseGenesisData = \case -> SomeNetworkDiscriminant mkSomeNetwork _ = SomeNetworkDiscriminant $ Proxy @('Staging pm) - let nm = sgNetworkMagic genesis - let pm = ProtocolMagic $ fromIntegral nm + let pm = Byron.fromProtocolMagicId $ gdProtocolMagicId genesisData let (discriminant, vData) = someCustomDiscriminant mkSomeNetwork pm - let (np, block0) = Shelley.fromGenesisData genesis (Map.toList $ sgInitialFunds genesis) + let (np, outs) = Byron.fromGenesisData (genesisData, genesisHash) + let block0 = Byron.genesisBlockFromTxOuts (genesisParameters np) outs + pure ( discriminant , np From 6bd5fb83b6eb8389951e170e8d32cdfe51b91981 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 21 Jul 2020 21:28:07 +0200 Subject: [PATCH 38/86] revert shelley bootstrap witness creation, re-use makeBootstrapWitness This was changed perhaps because of lack of documentation / context on cardano-api. Yet, since this was already quite a tricky part to get right, I'd rather stick with simpler code that we know worked well. --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 64 ++----------------- 1 file changed, 7 insertions(+), 57 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 2dc7ec4adbf..b6474b363a0 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -107,9 +107,7 @@ import Ouroboros.Network.Block import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Chain.Common as Byron import qualified Cardano.Crypto as CC -import qualified Cardano.Crypto.DSIGN.Class as Crypto import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Crypto.Signing as Byron import qualified Cardano.Crypto.Wallet as Crypto.HD import qualified Cardano.Wallet.Primitive.CoinSelection as CS import qualified Data.ByteArray as BA @@ -557,66 +555,18 @@ mkByronWitness -> Address -> (XPrv, Passphrase "encryption") -> Cardano.Witness Cardano.Shelley -mkByronWitness (Cardano.ShelleyTxBody txbody _) nw addr encryptedKey = +mkByronWitness (Cardano.ShelleyTxBody body _) nw addr encryptedKey = Cardano.ShelleyBootstrapWitness $ - -- Byron era witnesses were weird. This reveals all that weirdness. - SL.BootstrapWitness { - SL.bwKey = vk, - SL.bwSig = signature, - SL.bwChainCode = chainCode, - SL.bwAttributes = attributes - } + SL.makeBootstrapWitness txHash (unencrypt encryptedKey) addrAttr where + txHash = Crypto.hashWith serialize' body + unencrypt (xprv, pwd) = CC.SigningKey $ Crypto.HD.xPrvChangePass pwd BS.empty xprv - sk = unencrypt encryptedKey - - -- Starting with the easy bits: we /can/ convert the Byron verification key - -- to a the pair of a Shelley verification key plus the chain code. - -- - (vk, chainCode) = SL.unpackByronVKey (Byron.toVerification sk) - - -- Now the hairy bits. - -- - -- Byron era signing keys were all /extended/ ed25519 keys. We have to - -- produce a signature using this extended signing key directly. They - -- /cannot/ be converted to a plain (non-extended) signing keys. Since we - -- now support extended signing keys for the Shelley too, we are able to - -- reuse that here. - -- - signature - :: SL.SignedDSIGN TPraosStandardCrypto - (SL.Hash TPraosStandardCrypto (SL.TxBody TPraosStandardCrypto)) - signature = fromXSignature $ - Crypto.HD.sign - BS.empty -- passphrase for (unused) in-mem encryption - (Byron.unSigningKey sk) - (Crypto.hashToBytes txhash) - where - fromXSignature :: Crypto.HD.XSignature - -> SL.SignedDSIGN TPraosStandardCrypto b - fromXSignature = - Crypto.SignedDSIGN - . fromMaybe impossible - . rawDeserialiseSigDSIGN - . Crypto.HD.unXSignature - - impossible = - error "mkByronWitness: byron and shelley signature sizes do not match" - - txhash :: SL.Hash TPraosStandardCrypto (SL.TxBody TPraosStandardCrypto) - txhash = Crypto.hashWith serialize' txbody - - -- And finally we need to provide the extra suffix bytes necessary to - -- reconstruct the mini-Merkel tree that is a Byron address. The suffix - -- bytes are the serialised address attributes. - attributes = serialize' $ - Byron.mkAttributes Byron.AddrAttributes { - Byron.aaVKDerivationPath = toHDPayloadAddress addr, - Byron.aaNetworkMagic = Cardano.toByronNetworkMagic nw - } - + addrAttr = Byron.mkAttributes $ Byron.AddrAttributes + (toHDPayloadAddress addr) + (Cardano.toByronNetworkMagic nw) -------------------------------------------------------------------------------- -- Extra validations on coin selection From 78af3f582b1707970e638b75e31cf4c04150ad23 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Sat, 18 Jul 2020 12:44:04 +0200 Subject: [PATCH 39/86] Add support for Byron;Shelley integration test cluster - Adjusted configs to work with the new version of cardano-node - withCluster now takes three actions: - onByron - onFork (when in shelley) - onClusterStart (when the stake pools have fully started) - CLI faucets are now byron facuets, and are generated automatically. This is both easier and more elegant. - The underlying logic of withCluster was kept abstract for easier experimentation. Contains a few squashed commits from Rodney. --- .../src/Cardano/Wallet/Shelley/Launch.hs | 405 ++- .../cardano-node-shelley/bft-leader.counter | 4 +- .../cardano-node-shelley/bft-leader.kes.skey | 4 +- .../cardano-node-shelley/bft-leader.kes.vkey | 4 +- .../cardano-node-shelley/bft-leader.opcert | 4 +- .../data/cardano-node-shelley/bft-leader.skey | 4 +- .../data/cardano-node-shelley/bft-leader.vkey | 4 +- .../cardano-node-shelley/bft-leader.vrf.skey | 4 +- .../cardano-node-shelley/bft-leader.vrf.vkey | 4 +- .../cardano-node-shelley/byron-genesis.yaml | 2665 +++++++++++++++++ .../cardano-node-shelley/byron-genesis0.addr | 0 .../cardano-node-shelley/byron-payment.addr | 1 + .../cardano-node-shelley/byron-payment.key | 1 + .../byron-payment.shelleykey | 5 + .../delegate-keys.000.key | Bin 0 -> 130 bytes .../delegation-cert.000.json | 8 + .../faucet-addrs/faucet1.addr | 1 + .../faucet-addrs/faucet1.byron.key | 2 + .../faucet-addrs/faucet1.shelley.key | 5 + .../faucet-addrs/faucet2.addr | 1 + .../faucet-addrs/faucet2.byron.key | 1 + .../faucet-addrs/faucet2.shelley.key | 5 + .../faucet-addrs/faucet3.addr | 1 + .../faucet-addrs/faucet3.byron.key | 2 + .../faucet-addrs/faucet3.shelley.key | 5 + .../faucet-addrs/faucet4.addr | 1 + .../faucet-addrs/faucet4.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet4.shelley.key | 5 + .../faucet-addrs/faucet5.addr | 1 + .../faucet-addrs/faucet5.byron.key | 2 + .../faucet-addrs/faucet5.shelley.key | 5 + .../cardano-node-shelley/gen-byron-funds.sh | 28 + .../data/cardano-node-shelley/node.config | 11 +- .../cardano-node-shelley/regenerate-byron.sh | 51 + .../{genesis.yaml => shelley-genesis.yaml} | 35 +- lib/shelley/test/integration/Main.hs | 47 +- 36 files changed, 3157 insertions(+), 169 deletions(-) create mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml create mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-genesis0.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-payment.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-payment.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey create mode 100644 lib/shelley/test/data/cardano-node-shelley/delegate-keys.000.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/delegation-cert.000.json create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/gen-byron-funds.sh create mode 100755 lib/shelley/test/data/cardano-node-shelley/regenerate-byron.sh rename lib/shelley/test/data/cardano-node-shelley/{genesis.yaml => shelley-genesis.yaml} (99%) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 4119e822243..19d777b3d6a 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -23,11 +23,16 @@ module Cardano.Wallet.Shelley.Launch ( -- * Integration Launcher withCluster + , dev + , dev2 , withBFTNode , withStakePool , NodeParams (..) , PoolConfig (..) , singleNodeParams + , HardFork (..) + , RunningNode (..) + , CardanoMode (..) -- * Utils , NetworkConfiguration (..) @@ -62,11 +67,11 @@ import Cardano.Launcher.Node , withCardanoNode ) import Cardano.Wallet.Logging - ( BracketLog, bracketTracer ) + ( BracketLog, bracketTracer, stdoutTextTracer ) import Cardano.Wallet.Network.Ports ( randomUnusedTCPPorts ) import Cardano.Wallet.Primitive.AddressDerivation - ( NetworkDiscriminant (..) ) + ( NetworkDiscriminant (..), hex ) import Cardano.Wallet.Primitive.Types ( Block (..) , EpochNo (..) @@ -91,7 +96,7 @@ import Control.Concurrent.MVar import Control.Exception ( SomeException, finally, handle, throwIO ) import Control.Monad - ( forM, forM_, replicateM, replicateM_, unless, void, (>=>) ) + ( forM, forM_, replicateM, replicateM_, unless, void, when, (>=>) ) import Control.Monad.Fail ( MonadFail ) import Control.Monad.Trans.Except @@ -108,6 +113,8 @@ import Data.ByteArray.Encoding ( Base (..), convertToBase ) import Data.ByteString ( ByteString ) +import Data.ByteString.Base58 + ( bitcoinAlphabet, decodeBase58 ) import Data.Either ( isLeft, isRight ) import Data.Functor @@ -124,6 +131,8 @@ import Data.Text.Class ( ToText (..) ) import Data.Time.Clock ( UTCTime, addUTCTime, getCurrentTime ) +import Data.Time.Clock.POSIX + ( posixSecondsToUTCTime, utcTimeToPOSIXSeconds ) import GHC.TypeLits ( KnownNat, Nat, SomeNat (..), someNatVal ) import Options.Applicative @@ -137,7 +146,12 @@ import Ouroboros.Network.Magic import Ouroboros.Network.NodeToClient ( NodeToClientVersionData (..), nodeToClientCodecCBORTerm ) import System.Directory - ( copyFile, createDirectory ) + ( copyFile + , createDirectory + , createDirectoryIfMissing + , doesDirectoryExist + , removeDirectoryRecursive + ) import System.Environment ( lookupEnv, setEnv ) import System.Exit @@ -159,6 +173,8 @@ import qualified Cardano.Wallet.Byron.Compatibility as Byron import qualified Cardano.Wallet.Shelley.Compatibility as Shelley import qualified Data.Aeson as Aeson import qualified Data.Aeson.Types as Aeson +import qualified Data.ByteString as BS +import qualified Data.ByteString.Char8 as B8 import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString.Lazy.Char8 as BL8 import qualified Data.HashMap.Strict as HM @@ -170,6 +186,48 @@ import qualified Data.Yaml as Yaml import qualified Shelley.Spec.Ledger.Address as SL import qualified Shelley.Spec.Ledger.Coin as SL +-- | Example byron;shelley using manual HardForkOnTrigger +dev :: IO () +dev = do + let dir = "/tmp/fork" + exists <- doesDirectoryExist dir + when exists $ + removeDirectoryRecursive dir + createDirectory dir + systemStart <- addUTCTime 1 <$> getCurrentTime + [port1] <- randomUnusedTCPPorts 1 + let mode = RunByronShelley HardForkOnTrigger + let bftCfg1 = NodeParams Notice systemStart mode (port1, []) + withBFTNode stdoutTextTracer dir 0 bftCfg1 $ \socket _ _ -> do + putStrLn "BFT Node is up" + putStrLn "Submitting update proposal..." + updateVersion stdoutTextTracer dir socket + putStrLn "Has submitted update proposal" + threadDelay (300*1000*1000) + where + _action _fp _b0 (_np, _vData) _triggerHardFork = do + putStrLn "hi" + +-- | Example byron;shelley using HardForkAtEpoch 1, and withCluster, which +-- tries to register stake pools. +dev2 :: IO () +dev2 = do + let dir = "/tmp/fork" + exists <- doesDirectoryExist dir + when exists $ + removeDirectoryRecursive dir + createDirectory dir + + let pools = replicate 3 $ PoolConfig Nothing + withCluster stdoutTextTracer Notice pools dir onByron afterFork onClusterStart + where + onByron = \_ -> do + putStrLn "### Byron has started!" + afterFork = \_ -> do + putStrLn "### Fork has occured!" + onClusterStart = \_ -> do + putStrLn "### Cluster has started" + -- | Shelley hard fork network configuration has two genesis datas. -- As a special case for mainnet, we hardcode the byron genesis data. data NetworkConfiguration where @@ -362,6 +420,13 @@ newtype PoolConfig = PoolConfig } deriving (Eq, Show) +data RunningNode = RunningNode + FilePath + -- ^ Socket path + Block + -- ^ Genesis block + (NetworkParameters, NodeVersionData) + -- | Execute an action after starting a cluster of stake pools. The cluster also -- contains a single BFT node that is pre-configured with keys available in the -- test data. @@ -369,6 +434,8 @@ newtype PoolConfig = PoolConfig -- This BFT node is essential in order to bootstrap the chain and allow -- registering pools. Passing `0` as a number of pool will simply start a single -- BFT node. +-- +-- The callback actions are not guaranteed to use the same node. withCluster :: Tracer IO ClusterLog -- ^ Trace for subprocess control logging @@ -378,16 +445,30 @@ withCluster -- ^ The configurations of pools to spawn. -> FilePath -- ^ Parent state directory for cluster - -> (FilePath -> Block -> (NetworkParameters, NodeVersionData) -> IO a) - -- ^ Action to run with the cluster up + -> (RunningNode -> IO ()) + -- ^ Action to run when Byron is up + -> (RunningNode -> IO ()) + -- ^ Action to run when we have transitioned to shelley. + -- + -- Can be used to transfer byron faucet funds to shelley faucets. + -> (RunningNode -> IO a) + -- ^ Action to run when stake pools are running -> IO a -withCluster tr severity poolConfigs dir action = +withCluster tr severity poolConfigs dir onByron onFork onClusterStart = bracketTracer' tr "withCluster" $ do let poolCount = length poolConfigs + let mode = RunByronShelley HardForkOnTrigger systemStart <- addUTCTime 1 <$> getCurrentTime (port0:ports) <- randomUnusedTCPPorts (poolCount + 2) - let bftCfg = NodeParams severity systemStart (head $ rotate ports) - withBFTNode tr dir bftCfg $ \bftSocket block0 params -> do + let bftCfg = NodeParams severity systemStart mode (head $ rotate ports) + withBFTNode tr dir 0 bftCfg $ \bftSocket block0 params -> do + let runningBftNode = RunningNode bftSocket block0 params + onByron runningBftNode + updateVersion tr dir bftSocket + -- TODO: Maybe poll and detect when the fork occurs + waitForHardFork bftSocket 2 + onFork runningBftNode + setEnv "CARDANO_NODE_SOCKET_PATH" bftSocket waitForSocket tr bftSocket waitGroup <- newChan doneGroup <- newChan @@ -412,7 +493,7 @@ withCluster tr severity poolConfigs dir action = \(idx, poolConfig, (port, peers)) -> do link =<< async (handle onException $ do let spCfg = - NodeParams severity systemStart (port, peers) + NodeParams severity systemStart mode (port, peers) withStakePool tr dir idx spCfg (pledgeOf idx) poolConfig $ do writeChan waitGroup $ Right port @@ -427,9 +508,10 @@ withCluster tr severity poolConfigs dir action = <> show (filter isLeft group)) (ExitFailure 1) else do - let cfg = NodeParams severity systemStart (port0, ports) + let cfg = NodeParams severity systemStart mode (port0, ports) withRelayNode tr dir cfg $ \socket -> do - action socket block0 params `finally` cancelAll + let runningRelay = RunningNode socket block0 params + onClusterStart runningRelay `finally` cancelAll where -- | Get permutations of the size (n-1) for a list of n elements, alongside -- with the element left aside. `[a]` is really expected to be `Set a`. @@ -439,10 +521,18 @@ withCluster tr severity poolConfigs dir action = rotate :: Ord a => [a] -> [(a, [a])] rotate = nub . fmap (\(x:xs) -> (x, sort xs)) . permutations +waitForHardFork :: FilePath -> Int -> IO () +waitForHardFork _socket epoch = threadDelay (slotDur * k * 10 * epoch + fuzz) + where + slotDur = 250_000 + k = 10 + fuzz = 2_000_000 + -- | Configuration parameters which update the @node.config@ test data file. data NodeParams = NodeParams { minSeverity :: Severity -- ^ Minimum logging severity , systemStart :: UTCTime -- ^ Genesis block start time + , nodeMode :: CardanoMode -- ^ When/how to hard fork , nodePeers :: (Int, [Int]) -- ^ A list of ports used by peers and this node } deriving (Show) @@ -452,49 +542,76 @@ withBFTNode -> FilePath -- ^ Parent state directory. Node data will be created in a subdirectory of -- this. + -> Int + -- ^ Which node (assumes key files are indexed by this number) -> NodeParams -- ^ Parameters used to generate config files. -> (FilePath -> Block -> (NetworkParameters, NodeVersionData) -> IO a) -- ^ Callback function with genesis parameters -> IO a -withBFTNode tr baseDir (NodeParams severity systemStart (port, peers)) action = +withBFTNode + tr + baseDir + i + (NodeParams severity systemStart mode (port, peers)) + action = bracketTracer' tr "withBFTNode" $ do - createDirectory dir + createDirectoryIfMissing False dir + + [bftKey, bftDelegCert] <- forM + ["delegate-keys.00" <> show i <> ".key", "delegation-cert.00" <> show i <> ".json"] + (\f -> copyFile (source f) (dir f) $> (dir f)) + -- TODO: Doesn't support indexing by i [vrfPrv, kesPrv, opCert] <- forM - ["bft-leader.vrf.skey", "bft-leader.kes.skey", "bft-leader.opcert"] + [ "bft-leader" <> ".vrf.skey" + , "bft-leader" <> ".kes.skey" + , "bft-leader" <> ".opcert" + ] (\f -> copyFile (source f) (dir f) $> (dir f)) (config, block0, networkParams, versionData) - <- genConfig dir severity systemStart + <- genConfig dir severity systemStart mode topology <- genTopology dir peers - let cfg = CardanoNodeConfig + + let byronKeys x = + x { nodeDlgCertFile = Just bftDelegCert + , nodeSignKeyFile = Just bftKey + } + let shelleyKeys x = + x { nodeOpCertFile = Just opCert + , nodeKesKeyFile = Just kesPrv + , nodeVrfKeyFile = Just vrfPrv + } + + let makeModeSpecific x = case mode of + RunByronShelley _ -> byronKeys . shelleyKeys $ x + RunByron -> byronKeys x + RunShelley -> shelleyKeys x + + let cfg = makeModeSpecific $ CardanoNodeConfig { nodeDir = dir , nodeConfigFile = config , nodeTopologyFile = topology , nodeDatabaseDir = "db" , nodeDlgCertFile = Nothing , nodeSignKeyFile = Nothing - , nodeOpCertFile = Just opCert - , nodeKesKeyFile = Just kesPrv - , nodeVrfKeyFile = Just vrfPrv + , nodeOpCertFile = Nothing + , nodeKesKeyFile = Nothing + , nodeVrfKeyFile = Nothing , nodePort = Just (NodePort port) , nodeLoggingHostname = Just name } withCardanoNodeProcess tr name cfg $ \(CardanoNodeConn socket) -> do - setEnv "CARDANO_NODE_SOCKET_PATH" socket - (rawTx, faucetPrv) <- prepareKeyRegistration tr dir - tx <- signTx tr dir rawTx [faucetPrv] - submitTx tr "pre-registered stake key" tx action socket block0 (networkParams, versionData) where source :: FilePath source = $(getTestData) "cardano-node-shelley" name = "bft" - dir = baseDir name + dir = baseDir (name <> show i) -- | Launches a @cardano-node@ with the given configuration which will not forge -- blocks, but has every other cluster node as its peer. Any transactions @@ -510,11 +627,11 @@ withRelayNode -> (FilePath -> IO a) -- ^ Callback function with socket path -> IO a -withRelayNode tr baseDir (NodeParams severity systemStart (port, peers)) act = +withRelayNode tr baseDir (NodeParams severity systemStart hardFork (port, peers)) act = bracketTracer' tr "withRelayNode" $ do createDirectory dir - (config, _, _, _) <- genConfig dir severity systemStart + (config, _, _, _) <- genConfig dir severity systemStart hardFork topology <- genTopology dir peers let cfg = CardanoNodeConfig @@ -540,7 +657,7 @@ withRelayNode tr baseDir (NodeParams severity systemStart (port, peers)) act = singleNodeParams :: Severity -> IO NodeParams singleNodeParams severity = do systemStart <- getCurrentTime - pure $ NodeParams severity systemStart (0, []) + pure $ NodeParams severity systemStart RunShelley (0, []) -- | Populates the configuration directory of a stake pool @cardano-node@. -- @@ -565,7 +682,7 @@ setupStakePoolData -- ^ Optional retirement epoch. -> IO (CardanoNodeConfig, FilePath, FilePath) setupStakePoolData tr dir name params url pledgeAmt mRetirementEpoch = do - let NodeParams severity systemStart (port, peers) = params + let NodeParams severity systemStart mode (port, peers) = params (opPrv, opPub, opCount, metadata) <- genOperatorKeyPair tr dir (vrfPrv, vrfPub) <- genVrfKeyPair tr dir @@ -580,7 +697,7 @@ setupStakePoolData tr dir name params url pledgeAmt mRetirementEpoch = do dlgCert <- issueDlgCert tr dir stakePub opPub opCert <- issueOpCert tr dir kesPub opPrv opCount - (config, _, _, _) <- genConfig dir severity systemStart + (config, _, _, _) <- genConfig dir severity systemStart mode topology <- genTopology dir peers -- In order to get a working stake pool we need to. @@ -654,6 +771,49 @@ withStakePool tr baseDir idx params pledgeAmt poolConfig action = dir = baseDir name name = "pool-" ++ show idx + +updateVersion :: Tracer IO ClusterLog -> FilePath -> FilePath -> IO () +updateVersion tr tmpDir socket = do + waitForSocket tr socket + let updatePath = tmpDir "update-proposal" + let votePath = tmpDir "update-vote" + let network = "--mainnet" + void $ cli tr + [ "byron", "create-update-proposal" + , "--filepath", updatePath + , network + , "--signing-key", source "delegate-keys.000.key" + , "--protocol-version-major", "1" + , "--protocol-version-minor", "0" + , "--protocol-version-alt", "0" + , "--application-name", "cardano-sl" + , "--software-version-num", "1" + , "--system-tag", "linux" + , "--installer-hash", "0" + ] + void $ cli tr + [ "byron", "create-proposal-vote" + , "--proposal-filepath", updatePath + , network + , "--signing-key", source "delegate-keys.000.key" + , "--vote-yes" + , "--output-filepath", votePath + ] + + void $ cli tr + [ "byron", "submit-update-proposal" + , network + , "--filepath", updatePath + ] + void $ cli tr + [ "byron", "submit-proposal-vote" + , network + , "--filepath", votePath + ] + where + source :: FilePath + source = $(getTestData) "cardano-node-shelley" + withCardanoNodeProcess :: Tracer IO ClusterLog -> String @@ -665,6 +825,17 @@ withCardanoNodeProcess tr name cfg = withCardanoNode tr' cfg >=> throwErrs tr' = contramap (MsgLauncher name) tr throwErrs = either throwIO pure +data CardanoMode + = RunByron + | RunByronShelley HardFork + | RunShelley + deriving Show + +data HardFork + = HardForkAtEpoch Int + | HardForkOnTrigger + deriving (Show, Eq) + genConfig :: FilePath -- ^ A top-level directory where to put the configuration. @@ -672,22 +843,56 @@ genConfig -- ^ Minimum severity level for logging -> UTCTime -- ^ Genesis block start time + -> CardanoMode + -- ^ When/how to hard fork -> IO (FilePath, Block, NetworkParameters, NodeVersionData) -genConfig dir severity systemStart = do +genConfig dir severity systemStart mode = do -- we need to specify genesis file location every run in tmp + let withAddedKey k v = withObject (pure . HM.insert k (toJSON v)) + + let withHardFork = case mode of + RunByronShelley (HardForkAtEpoch n) -> + withAddedKey "TestShelleyHardForkAtEpoch" n + RunByronShelley HardForkOnTrigger -> + withAddedKey "TestShelleyHardForkAtVersion" (1::Int) + _ -> pure + + let addGenesis = case mode of + RunByron -> + withAddedKey "ByronGenesisFile" byronGenesisFile + RunShelley -> + withAddedKey "ShelleyGenesisFile" shelleyGenesisFile + RunByronShelley _ -> + (withAddedKey "ShelleyGenesisFile" shelleyGenesisFile) + >=> (withAddedKey "ByronGenesisFile" byronGenesisFile) + + let (protocol :: String) = case mode of + RunByron -> "RealPBFT" + RunShelley -> "TPraos" + RunByronShelley _ -> "Cardano" + Yaml.decodeFileThrow (source "node.config") - >>= withObject (pure . addGenesisFilePath (T.pack nodeGenesisFile)) + >>= addGenesis + >>= withAddedKey "Protocol" protocol + >>= withHardFork >>= withObject (addMinSeverityStdout severity) - >>= withObject (pure . addMinSeverity Debug) + >>= withAddedKey "minSeverity" Debug >>= Yaml.encodeFile (dir "node.config") - Yaml.decodeFileThrow @_ @Aeson.Value (source "genesis.yaml") - >>= withObject (pure . updateSystemStart systemStart) + let startTime = round @_ @Int . utcTimeToPOSIXSeconds $ systemStart + let systemStart' = posixSecondsToUTCTime . fromRational . toRational $ startTime + Yaml.decodeFileThrow @_ @Aeson.Value (source "shelley-genesis.yaml") + >>= withObject (pure . updateSystemStart systemStart') >>= withObject transformInitialFunds - >>= Aeson.encodeFile nodeGenesisFile + >>= Aeson.encodeFile shelleyGenesisFile + + Yaml.decodeFileThrow @_ @Aeson.Value (source "byron-genesis.yaml") + >>= withAddedKey "startTime" startTime + >>= withObject transformInitialFunds + >>= Aeson.encodeFile byronGenesisFile PreserveInitialFundsOrdering (genesis, initialFunds) <- - Yaml.decodeFileThrow (source "genesis.yaml") + Yaml.decodeFileThrow (source "shelley-genesis.yaml") >>= withObject (pure . updateSystemStart systemStart) >>= either fail pure . Aeson.parseEither parseJSON @@ -708,8 +913,11 @@ genConfig dir severity systemStart = do source :: FilePath source = $(getTestData) "cardano-node-shelley" - nodeGenesisFile :: FilePath - nodeGenesisFile = dir "genesis.json" + shelleyGenesisFile :: FilePath + shelleyGenesisFile = dir "shelley-genesis.json" + + byronGenesisFile :: FilePath + byronGenesisFile = dir "byron-genesis.json" -- | Generate a topology file from a list of peers. genTopology :: FilePath -> [Int] -> IO FilePath @@ -890,12 +1098,12 @@ preparePoolRegistration tr dir stakePub certs pledgeAmt = do , "--mainnet" ] - (faucetInput, faucetPrv) <- takeFaucet dir + (faucetInput, faucetPrv) <- takeFaucet void $ cli tr $ [ "shelley", "transaction", "build-raw" , "--tx-in", faucetInput , "--tx-out", init addr <> "+" <> show pledgeAmt - , "--ttl", "100" + , "--ttl", "400" , "--fee", show (faucetAmt - pledgeAmt - depositAmt) , "--out-file", file ] ++ mconcat ((\cert -> ["--certificate-file",cert]) <$> certs) @@ -914,7 +1122,7 @@ prepareKeyRegistration tr dir = do let stakePub = dir "pre-registered-stake.pub" Aeson.encodeFile stakePub preRegisteredStakeKey - (faucetInput, faucetPrv) <- takeFaucet dir + (faucetInput, faucetPrv) <- takeFaucet cert <- issueStakeCert tr dir stakePub @@ -935,7 +1143,7 @@ prepareKeyRegistration tr dir = do [ "shelley", "transaction", "build-raw" , "--tx-in", faucetInput , "--tx-out", init addr <> "+" <> "1" - , "--ttl", "100" + , "--ttl", "400" , "--fee", show (faucetAmt - depositAmt - 1) , "--certificate-file", cert , "--out-file", file @@ -965,7 +1173,7 @@ submitTx tr name signedTx = do void $ cliRetry tr ("Submitting transaction for " ++ name) [ "shelley", "transaction", "submit" , "--tx-file", signedTx - , "--mainnet" + , "--mainnet", "--cardano-mode" ] -- | Wait for a command which depends on connecting to the given socket path to @@ -982,7 +1190,11 @@ waitForSocket tr socketPath = do let msg = "Checking for usable socket file " <> socketPath -- TODO: check whether querying the tip works just as well. void $ cliRetry tr msg - ["shelley", "query", "stake-distribution", "--mainnet"] + ["shelley", "query", "tip" + , "--mainnet" + --, "--testnet-magic", "764824073" + , "--cardano-mode" + ] traceWith tr $ MsgSocketIsReady socketPath -- | Wait until a stake pool shows as registered on-chain. @@ -995,89 +1207,57 @@ waitUntilRegistered tr name opPub = do (exitCode, distribution, err) <- readProcessWithExitCode "cardano-cli" [ "shelley", "query", "stake-distribution" , "--mainnet" + , "--cardano-mode" ] mempty traceWith tr $ MsgStakeDistribution name exitCode distribution err unless (poolId `isInfixOf` distribution) $ do threadDelay 5000000 waitUntilRegistered tr name opPub + -- | Hard-wired faucets referenced in the genesis file. Purpose is simply to -- fund some initial transaction for the cluster. Faucet have plenty of money to -- pay for certificates and are intended for a one-time usage in a single -- transaction. -takeFaucet :: FilePath -> IO (String, FilePath) -takeFaucet dir = takeMVar faucets >>= \case - [] -> fail "takeFaucet: Awe crap! No more faucet available!" - ((input,prv):q) -> do - putMVar faucets q - let file = dir "faucet.prv" - Aeson.encodeFile file prv - pure (input, file) +takeFaucet :: IO (String, String) +takeFaucet = do + i <- takeMVar faucetIndex + putMVar faucetIndex (i + 1) + + base58Addr <- BS.readFile $ + source ("faucet-addrs/faucet" <> show i <> ".addr") + putStrLn $ "about to read faucet: " <> B8.unpack base58Addr + let Just addr = decodeBase58 bitcoinAlphabet $ BS.init base58Addr + let txin = (B8.unpack $ hex $ blake2b256 addr) <> "#0" + let signingKey = source ("faucet-addrs/faucet" <> show i <> ".shelley.key") + pure (txin, signingKey) + where + source :: FilePath + source = $(getTestData) "cardano-node-shelley" -- | List of faucets also referenced in the shelley 'genesis.yaml' -faucets :: MVar [(String, Aeson.Value)] -faucets = unsafePerformIO $ newMVar - [ ( "cea1b041dd5465be636b5b88805571f83537bd503bc4db447f088d942673736c#0" - , Aeson.object - [ "type" .= Aeson.String "Genesis UTxO signing key" - , "description" .= Aeson.String "Genesis initial UTxO key" - , "cborHex" .= Aeson.String - "5820db101b5f4cc53ca1d61f7505b23c05b1b58de0b9f509c4dfede4348549dbaa9d" - ] - ) - , ( "fa271c369d4d9a6b78e18f9d554730ef9978847ecb187c064cb9c8d56c2092cd#0" - , Aeson.object - [ "type" .= Aeson.String "Genesis UTxO signing key" - , "description" .= Aeson.String "Genesis initial UTxO key" - , "cborHex" .= Aeson.String - "582061e08f3e8ac1afbf0434fca2bb4aa6484270d8dd3e251c049006aab368a74a7e" - ] - ) - , ( "672d7558074f02c662b11a4ff761ec3a24c94a18b319033af5f9f22a03b8891b#0" - , Aeson.object - [ "type" .= Aeson.String "Genesis UTxO signing key" - , "description" .= Aeson.String "Genesis initial UTxO key" - , "cborHex" .= Aeson.String - "58204054ff827451cad61241450a09ea80c9d0658398f588ff976393ae8eacb859fe" - ] - ) - , ( "ca97dc6662a21f1b7ea0790c380d13dad84386cbb7f731c7ba3982a8d105267b#0" - , Aeson.object - [ "type" .= Aeson.String "Genesis UTxO signing key" - , "description" .= Aeson.String "Genesis initial UTxO key" - , "cborHex" .= Aeson.String - "58204a7a8e7a1ba0d33c407dc3ceda225c605287cfb0e3b51d9eba3822abd6aa75ca" - ] - ) - , ( "cfc08d97636877d94cd19a246e72d191bc3905712bbab8cdbb1aa240fc09be3c#0" - , Aeson.object - [ "type" .= Aeson.String "Genesis UTxO signing key" - , "description" .= Aeson.String "Genesis initial UTxO key" - , "cborHex" .= Aeson.String - "5820e96f612fbff3df3d8eef4ea3a07e3dc98769020545ced0167998a85a4cc50aa7" - ] - ) - ] -{-# NOINLINE faucets #-} +faucetIndex :: MVar Int +faucetIndex = unsafePerformIO $ newMVar 1 +{-# NOINLINE faucetIndex #-} operators :: MVar [(PoolId, Aeson.Value, Aeson.Value, Aeson.Value, Aeson.Value)] operators = unsafePerformIO $ newMVar [ ( PoolId $ unsafeFromHex "c7258ccc42a43b653aaf2f80dde3120df124ebc3a79353eed782267f78d04739" , Aeson.object - [ "type" .= Aeson.String "Node operator verification key" + [ "type" .= Aeson.String "StakePoolVerificationKey_ed25519" , "description" .= Aeson.String "Stake pool operator key" , "cborHex" .= Aeson.String "5820a12804d805eff46c691da5b11eb703cbf7463983e325621b41ac5b24e4b51887" ] , Aeson.object - [ "type" .= Aeson.String "Node operator signing key" + [ "type" .= Aeson.String "StakePoolSigningKey_ed25519" , "description" .= Aeson.String "Stake pool operator key" , "cborHex" .= Aeson.String "5820d8f81c455ef786f47ad9f573e49dc417e0125dfa8db986d6c0ddc03be8634dc6" ] , Aeson.object - [ "type" .= Aeson.String "Node operational certificate issue counter" + [ "type" .= Aeson.String "NodeOperationalCertificateIssueCounter" , "description" .= Aeson.String "Next certificate issue number: 0" , "cborHex" .= Aeson.String "82005820a12804d805eff46c691da5b11eb703cbf7463983e325621b41ac5b24e4b51887" @@ -1092,19 +1272,19 @@ operators = unsafePerformIO $ newMVar , ( PoolId $ unsafeFromHex "775af3b22eff9ff53a0bdd3ac6f8e1c5013ab68445768c476ccfc1e1c6b629b4" , Aeson.object - [ "type" .= Aeson.String "Node operator verification key" + [ "type" .= Aeson.String "StakePoolVerificationKey_ed25519" , "description" .= Aeson.String "Stake pool operator key" , "cborHex" .= Aeson.String "5820109440baecebefd92e3b933b4a717dae8d3291edee85f27ebac1f40f945ad9d4" ] , Aeson.object - [ "type" .= Aeson.String "Node operator signing key" + [ "type" .= Aeson.String "StakePoolSigningKey_ed25519" , "description" .= Aeson.String "Stake pool operator key" , "cborHex" .= Aeson.String "5820fab9d94c52b3e222ed494f84020a29ef8405228d509a924106d05ed01c923547" ] , Aeson.object - [ "type" .= Aeson.String "Node operational certificate issue counter" + [ "type" .= Aeson.String "NodeOperationalCertificateIssueCounter" , "description" .= Aeson.String "Next certificate issue number: 0" , "cborHex" .= Aeson.String "82005820109440baecebefd92e3b933b4a717dae8d3291edee85f27ebac1f40f945ad9d4" @@ -1119,19 +1299,19 @@ operators = unsafePerformIO $ newMVar , ( PoolId $ unsafeFromHex "5a7b67c7dcfa8c4c25796bea05bcdfca01590c8c7612cc537c97012bed0dec35" , Aeson.object - [ "type" .= Aeson.String "Node operator verification key" + [ "type" .= Aeson.String "StakePoolVerificationKey_ed25519" , "description" .= Aeson.String "Stake pool operator key" , "cborHex" .= Aeson.String "5820c7383d89aa33656464a7796b06616c4590d6db018b2f73640be985794db0702d" ] , Aeson.object - [ "type" .= Aeson.String "Node operator signing key" + [ "type" .= Aeson.String "StakePoolSigningKey_ed25519" , "description" .= Aeson.String "Stake pool operator key" , "cborHex" .= Aeson.String "5820047572e48be93834d6d7ddb01bb1ad889b4de5a7a1a78112f1edd46284250869" ] , Aeson.object - [ "type" .= Aeson.String "Node operational certificate issue counter" + [ "type" .= Aeson.String "NodeOperationalCertificateIssueCounter" , "description" .= Aeson.String "Next certificate issue number: 0" , "cborHex" .= Aeson.String "82005820c7383d89aa33656464a7796b06616c4590d6db018b2f73640be985794db0702d" @@ -1183,7 +1363,7 @@ operators = unsafePerformIO $ newMVar preRegisteredStakeKey :: Aeson.Value preRegisteredStakeKey = Aeson.object - [ "type" .= Aeson.String "StakingVerificationKeyShelley" + [ "type" .= Aeson.String "StakeVerificationKeyShelley_ed25519" , "description" .= Aeson.String "Free form text" , "cborHex" .= Aeson.String "5820949fc9e6b7e1e12e933ac35de5a565c9264b0ac5b631b4f5a21548bc6d65616f" @@ -1195,7 +1375,7 @@ depositAmt = 100000 -- | Initial amount in each of these special cluster faucet faucetAmt :: Integer -faucetAmt = 10 * oneMillionAda +faucetAmt = 1000 * oneMillionAda -- | Just one million Ada, in Lovelace. oneMillionAda :: Integer @@ -1216,7 +1396,7 @@ addGenesisFilePath :: Text -> Aeson.Object -> Aeson.Object -addGenesisFilePath path = HM.insert "GenesisFile" (toJSON path) +addGenesisFilePath path = HM.insert "ShelleyGenesisFile" (toJSON path) -- | Add a @setupScribes[1].scMinSev@ field in a given config object. -- The full lens library would be quite helpful here. @@ -1238,13 +1418,6 @@ addMinSeverityStdout severity ob = case HM.lookup "setupScribes" ob of | otherwise = Aeson.Object scribe setMinSev a = a --- | Add a global "minSeverity" field in a given config object. -addMinSeverity - :: Severity - -> Aeson.Object - -> Aeson.Object -addMinSeverity severity = HM.insert "minSeverity" (toJSON $ show severity) - -- | Transform initial funds back to a big object instead of a list of -- singletons. transformInitialFunds diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.counter b/lib/shelley/test/data/cardano-node-shelley/bft-leader.counter index fb0291ac667..50a3a298b9c 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.counter +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.counter @@ -1,5 +1,5 @@ { - "type": "Node operational certificate issue counter", + "type": "NodeOperationalCertificateIssueCounter", "description": "Next certificate issue number: 1", - "cborHex": "8201582039205260d790d39c595138bc8c5d2e474336f260ffe911fbbf714de427c50ddc" + "cborHex": "82015820479ae009754ec351dbd48b01f1e29d9e8636978a3dae754255ea9af092cb10f5" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.skey b/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.skey index 6a22b231da1..99440c3aa72 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.skey +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.skey @@ -1,5 +1,5 @@ { - "type": "SKeyES TPraosStandardCrypto", + "type": "KesSigningKey_ed25519_kes_2^6", "description": "KES Signing Key", - "cborHex": "5902c0cb62016d50ac5bcf178c6e21fd86b14f5e53f351b719804d47ac9b909fec8de48aa5caefb33ede8150a1564f0fc94c0773aa285e947e79f29b427424ba504fbddc2039c07e755dfe487fbc7c77e065e6bba1d5468ae7fe91de4d513dc187a7a56cb5622bdf25fed4f5a3f29cd6eb55ae15f2ee2d5db2dc049efd938af29e9f75cd70990885cf872aa8b213a31af639ffc7b92d1070c1807459ea2f3f5861f2cbd54cfbbda4119e23785200778953a43af062762802a1e6387047546e0ce43fe0258b8126b9bd3c3875708e0085daa3e332fedcb8ddc7bf518bbf635d0bf2e9b9932106f9fba73b1ac8a3fc580c7687bd1cbee995969003a20f2a45dd17eb4038151e97b705caaa83af544c1cf7317b3ff453c427aa0ef51d2d89574e6a6c505bef0595fbe86ff25a2a78a6afae4bf2296f6acf80f59af7b9e595e0f6f8e95fc9cf64be80078307648d11d105b02a816c8c423d30a6672a0b8a610259e01f09096b4e1b9a213a1ac1363b57dae7c79d6e59fe92a04c9e5cc53abe88b9f5412687844aea8d4acc7bf5a004cb0eb606c780a7efd946d8424f19dd4faf587a957c457d9ff54dc613f5dd9fa2d93e23d1293b1edc773a33753ff461e056b39ba87625a1c8f188ee48fba2dbd85a69a4000721f8d0a95f6c62e4ae79973e626920597994bb574db1329f8a3d726bc70b7fa6aa10a8970dbea7bbed9d9053fe6ba647e373fe47d7166b5a4770781fe5aa6530eb52d4fd0b489b19a156c8b4e1612f812396079e84d88e59ba41ee4effb428e165336cc1184e5211384c83621f61d180aa68b128254424a9827387abd1a2ec5f6d1277ce6e989cad155b88eaad7ef64965530470151c8e73cd730b6a10b4a2be52f537ac20ac6b100cb7946d145f9a11e1d40eebd87e23a8c1b41a6035c8843bb08357b3d49ad2ed1c64120088e61f5f19c7b5d216bb59e99ad6b00cb5211f940eecfdc7aaf3356f5fb465f0cb06583766" + "cborHex": "590260b8ebf91bdf2dd849a24c6f6a5801e049a924c1cb80e62e81d19cdc5489f2e91d60cf3ce005f655669f19dbd15956c123968f45baab994cf51716a0f98c69f5775770290e3bdd8867139c0248b3863e9f466e3d34775c38dfeaec2725f260064cb74eafa207967945e06908c09c5a66cabe2f4bfb39f682647532310ddde3579fd21f9ef48ef17b065076345f0d4b39e86884d05c56a5728ccc3e65305729388ebf6b3123e9473b5b96637a4efca92b5bb0472373ac8c376c9085d170abdb83ce5a565652044118b5b9f2d5af613de68fd6ce74df7754f4b8ae3965db09f797e1fc9a677aaa2ac25dd4f6b59ee92feab29d6257077580fa92adcdce1fc344915f1816b1714e5e159712280c7c232b053578ddbac1fab2069a601552bdd6bc104d63b053ab1bca5d52510a3c59fbb2db7cfdaba108b58e810b57b886fde3c5e0697beb317d9483ae63c5b7473683c46b42eb25f0d943ca042cc6c1623447a1e1b22297c0176f3f7e44941440e6eef52bbff9cfe2b16e2a7714889561f5d4c9556c24bc19921df212ab6543aa774b49a82312a944e05d9a2b3a16ccb7eaafa0c4dad580b4285951fea24a70f2fb5e40ac1ca34f651cb247155787fb36a9b6aa6f3c2bd73503ba59f80f9ffdfccaf4f7dbe4d6f999d4ef44d365b3625513e627994064974580bd3534b550d4229a081f4d91bce74331c8c432a70cefe6f4e5f724a403f38c3f3a19369199f80c1f4786ce8daa4de7fd11a585057125d6cadd9eff12dc6bae2137fd41f539b9be24de168f205e2bff24ed1697c3e5da2a1113fd9d85781f7afa7b8531b80a5d57ddac2092867a29c0ccc9fa0f1bf0add9d06b952ab2" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.vkey b/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.vkey index 0392b29e164..17c3092899e 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.vkey +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.kes.vkey @@ -1,5 +1,5 @@ { - "type": "VKeyES TPraosStandardCrypto", + "type": "KesVerificationKey_ed25519_kes_2^6", "description": "KES Verification Key", - "cborHex": "5820d43e88b2f7c89bbf67209035e45e94c29455c686649375f229b26cc1677a8b4c" + "cborHex": "582038d5b2459d16301faf2d5e8878ecdb87b1f8618cba6fbee9d3f0d5139b56ee70" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.opcert b/lib/shelley/test/data/cardano-node-shelley/bft-leader.opcert index aca54a0ca34..2459f500dd7 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.opcert +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.opcert @@ -1,5 +1,5 @@ { - "type": "Node operational certificate", + "type": "NodeOperationalCertificate", "description": "", - "cborHex": "82845820d43e88b2f7c89bbf67209035e45e94c29455c686649375f229b26cc1677a8b4c00005840dbbd5a24304c86e0f993df75e5d8963dabfdddc4ed337c4618b5cbca3542efddfbd2c2d1ee6e8dbbc7a70c7e7bbf6a56f5e00ed49dd9ac144ca7a69c812a570b582039205260d790d39c595138bc8c5d2e474336f260ffe911fbbf714de427c50ddc" + "cborHex": "8284582038d5b2459d16301faf2d5e8878ecdb87b1f8618cba6fbee9d3f0d5139b56ee70000058401e49386fbf37e4332bf8f075e286bf92254beff425282ba00acb2053a680e8dd571a7539ac80f8c85a9e3763f4edbc1cc524ed0c28cfe8ee552e272df8c27e005820479ae009754ec351dbd48b01f1e29d9e8636978a3dae754255ea9af092cb10f5" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.skey b/lib/shelley/test/data/cardano-node-shelley/bft-leader.skey index c41cc765762..44c4f03b9b0 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.skey +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.skey @@ -1,5 +1,5 @@ { - "type": "Node operator signing key", + "type": "GenesisDelegateSigningKey_ed25519", "description": "Genesis delegate operator key", - "cborHex": "5820270994f865348946462dbbf688d4319eb5ec7a4e0f5295b924f1373be444f424" + "cborHex": "5820c373dfdef800c2318f1c69447f7f9e4721a4ab8c0b97f2983fba14df31c06a9b" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.vkey b/lib/shelley/test/data/cardano-node-shelley/bft-leader.vkey index e4ac9e9a9de..6fd3472f7be 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.vkey +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.vkey @@ -1,5 +1,5 @@ { - "type": "Node operator verification key", + "type": "GenesisDelegateVerificationKey_ed25519", "description": "Genesis delegate operator key", - "cborHex": "582039205260d790d39c595138bc8c5d2e474336f260ffe911fbbf714de427c50ddc" + "cborHex": "5820479ae009754ec351dbd48b01f1e29d9e8636978a3dae754255ea9af092cb10f5" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.skey b/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.skey index c8537067aa8..e36f545dfb1 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.skey +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.skey @@ -1,5 +1,5 @@ { - "type": "SignKeyVRF PraosVRF", + "type": "VrfSigningKey_PraosVRF", "description": "VRF Signing Key", - "cborHex": "584083a5902cd76ca06fa33ca0c1f54a3b70afbd3f61adfa1b768af4a8a7b8ede7759382868eea35b76253434b232033118ada9b5d1d20cd419f0895e5cb83c6f7d5" + "cborHex": "584092f24816556fcc04368090e987671d1ceb141f44f6d92d68da7615c3474e7164ed6a6ff1ac92018dc97c04752fc25207eb1d8106d6fbe624831d4d1c1153ee18" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.vkey b/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.vkey index 1c6fb87d2eb..57aa4c88481 100644 --- a/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.vkey +++ b/lib/shelley/test/data/cardano-node-shelley/bft-leader.vrf.vkey @@ -1,5 +1,5 @@ { - "type": "VerKeyVRF PraosVRF", + "type": "VrfVerificationKey_PraosVRF", "description": "VRF Verification Key", - "cborHex": "58209382868eea35b76253434b232033118ada9b5d1d20cd419f0895e5cb83c6f7d5" + "cborHex": "5820ed6a6ff1ac92018dc97c04752fc25207eb1d8106d6fbe624831d4d1c1153ee18" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml new file mode 100644 index 00000000000..2a53460bbc7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml @@ -0,0 +1,2665 @@ +avvmDistr: {} + +blockVersionData: + scriptVersion: 0 + slotDuration: '250' + maxBlockSize: '2000000' + maxHeaderSize: '2000000' + maxTxSize: '4096' + maxProposalSize: '700' + mpcThd: '20000000000000' + heavyDelThd: '300000000000' + updateVoteThd: '1000000000000' + updateProposalThd: '100000000000000' + updateImplicit: '10000' + softforkRule: + initThd: '900000000000000' + minThd: '600000000000000' + thdDecrement: '50000000000000' + txFeePolicy: + summand: '155381000000000' + multiplier: '43000000000' + unlockStakeEpoch: '18446744073709551615' +protocolConsts: + k: 8 + protocolMagic: 764824073 + +bootStakeholders: + 3856c7c4db1ca26d77d5cecf1ed4ab7285f57dca999421fb797e9824: 1 +heavyDelegation: + 3856c7c4db1ca26d77d5cecf1ed4ab7285f57dca999421fb797e9824: + omega: 0 + issuerPk: EcTlNi0niDQxL/vck7Q5rykozISyOTEMstVojJLxNORm1WfbSglEW4VgpjbiEqw+2KKbc1ivP5QI6ng+ZTtiug== + delegatePk: fIpFiXJo9dQxplJsx+DyYBZWjqI6Kgseyq0bclPILw8lhATGS0WaUVs3Ye1x6m8KNaKVSiiUDd+BjrfCjgt+uQ== + cert: 1ef766c62e55f6b81afd3785b37ad96e2cfb3fcf2c117050cbba8eeb2285f4428821afbe43580cfa08e0479b13d165a1a03fd57bcd26ce7c4e3c0892d25f5207 + +nonAvvmBalances: + 2cWKMJemoBahz6iaYL1VSXeww8TuecvvSsz8gxbaby4hc6pLFnDmHhVMY82n3tGmP6ZXW: '100' + + # Facuet addresses for launcher + Ae2tdPwUPEZGc7WAmkmXxP3QJ8aiKSMGgfWV6w4A58ebjpr5ah147VvJfDH: '1000000000000000' + Ae2tdPwUPEZCREUZxa3F1fTyVPMU2MLMYAkRe7DEVoyZsWKahphgdifWuc3: '1000000000000000' + Ae2tdPwUPEYxL4wYjNxK8z5mCgMmnG1WkMFZaeZ6EGdV2LDZ5pgQzvzVpuo: '1000000000000000' + Ae2tdPwUPEZMcoAHgC7RvCL9ewjZdj9Yrej2bHJJpvubhkSaRn5Y7dPGKRy: '1000000000000000' + Ae2tdPwUPEZ7geEbqcaNfMFL8EMpeRYAQrHABau6xUmek87xeyyrmPm4ETc: '1000000000000000' + Ae2tdPwUPEZNHxjww4RhosX3LMVAzbJtCj3vzoQM3wgLwhEHUp13jX8Xte8: '1000000000000000' + Ae2tdPwUPEZ8cgFfwvjp9t42v3zQE8nCsjxMpDcdcJZzBocsUK2btirTHDN: '1000000000000000' + Ae2tdPwUPEZK4VrjHdDpeTfSvWMzNa6qZ5erD2aVmU5S3mCeCZsoT6SJ6NW: '1000000000000000' + Ae2tdPwUPEZ2pEgBhSNKiUXRfhb5p8jByYiJXAsokHdLGMVeqLjHFNaEr7b: '1000000000000000' + VhLXUZmS1gXFnDcCzVHi2BqhkA1cvDUZrMvGfYotD4eEjKnkdfid7YsY: '1000000000000000' + + # Random wallets + DdzFFzCqrht5TM5GznWhJ3GTpKawtJuA295F8igwXQXyt2ih1TL1XKnZqRBQBoLpyYVKfNKgCXPBUYruUneC83KjGK6QNAoBSqRJovbG: '100000000000' + DdzFFzCqrhsj3hDxtjHA5Sbrf5Y5A2ExAgxeL1B7PEetoE8g7yBphmHYGDkKTBZtbVv7TjB8g7Q5rw1kvSjeJwxPXb82W8vw787uqMTz: '100000000000' + DdzFFzCqrht5J1FMoP4G4RPyVcKEn9C9jKNM9VqecQ9HQK391JqypjZm3uGuLupVzEXQcJTRfUoRn3UfuKpeNEjzFXtWA4uPMtZ5fxbY: '100000000000' + DdzFFzCqrht5R7SgpmD2TffGXEJ8CoP8HfvHFWt1DM7Rd9WQGyxungKWuCKy7PampAtbWiDvJoyR32V7jTev1KX4CfdEyHyfCbZj2mUF: '100000000000' + DdzFFzCqrhsiaJWtv3KgSyE1APe9v1jWcxaSyEPsGtBbrqiddWU8cfVrXamwLuyypo3Guv1xB9ZTzoqs2GzWJ6u5j679SkQzoUHnEdH8: '100000000000' + DdzFFzCqrhshSUSN6x57Gf4AeAWzkvA8Qpsz6xbXheGWhnsvsnQ6omxNwww6AtsMvF56NJ4KZ3DCeoYSU9G8pX2qbSMHWJGkTYy3K2oL: '100000000000' + DdzFFzCqrhsgKk79Wo42Dm6BszTkiQiJaADLvwB3Bc94wyrTb5EYm4WdBkNPversvLuRELokqW5VQkLBvVdDTofd1DHPaw6LGCoaQK8S: '100000000000' + DdzFFzCqrht3fc1oQvUoHXSLLGj3woXdUM8fgBBNAmSeQ7XxtxKwEcTAn1TdLY3S7Tu9gzLPEXVJChBRFDWvVUPWmijZnSbrddDdBB6j: '100000000000' + DdzFFzCqrhtC9sDX18jdj4zBUdLpmuTiszN2ZofWwVv4SXHA97frgMjPFKG6JzVYbyk1AVks1rVN4L3jg6yJCB1rLmFGakVRxsR9EuxY: '100000000000' + DdzFFzCqrht3jJoG2rsUSjNXyLSfSHPj72HgprsNWbjSEGx3Sn3R5qDkUZXEPwsfYTBpRgYCP7D4YuFqsG2F1cV4qDUb6PTwMtXUWd5g: '100000000000' + DdzFFzCqrhsrpHvUPAeXYF9Fhza9tp8V7BqsouT16oXd5ZyeZSr1xf2wBrVgK2RRLLfyPqViawhF51eHUSp4ZunW17tptMYjsYegRKtX: '100000000000' + DdzFFzCqrhsuhKwzvsPXrk4p2hVnwnpSsfx6Bz8YDdPkPNXRK3syiwnZ9nUi3yYuSyaVbxx3cnXcKZJePaAYDW7Gir6Bi4oXUbU3R8W6: '100000000000' + DdzFFzCqrhtDAsADG8aFJ7czQaJhT4nZeVQ52ugZg44AJWqsESeX8YewxeMrNM65GfmFDH7ByBeFETUQSejyq9RkfGHEL21CDubd5SfS: '100000000000' + DdzFFzCqrhsrRn9QpkXseeeBP7DphvLpwpfoY2o1dTPhsvnkfrPGo8P19BK2p8vB8R54ZkFtvTE2D7gJ3kQLo8vTbQhX8CbsdGeiidAb: '100000000000' + DdzFFzCqrhsyZp5ktXWS8KzE73q189Aj7YUZXuxfCPZybrmwFWQZw5sSPQgRcZq1xBodta8u9HnAYa5UMkiDw2RpAkATUNtSTqm9c6en: '100000000000' + DdzFFzCqrhsvYScvLTuKan1LGWeASqhR7tH3TJgniMQ8wHKtpCTBowAqSVJNwvKV7Fchd7g73iesAyQbNk3RRwmjStoF9RpTd7cvRkCJ: '100000000000' + DdzFFzCqrhsgTJYs8RaBJDzyd9zG5WPZxCu6kgkSL7juEU2nNd9CiRbDuKFQmzigMAFtDe2uEuTbgpnTe81vmesDLh4XbCbEowH1MRjw: '100000000000' + DdzFFzCqrhsuCfwXNUmgU5eyJSdvLCH6LvMomQ65JX7uAvkaZ9hNkJ6xc7t1u4qpwpkJkSHpcWPGYTb8hBLCu6YPvxRFycQjvdvJT5mp: '100000000000' + DdzFFzCqrhsmtYhQLZxPFiZv6Uzgxx2eZZzPm187osgyZWKKjXsLbGdTUpqkKiFxBHMyG2hrNZhY9ZxdqGJgEmHidSSyjoCZ3aSfNnAm: '100000000000' + DdzFFzCqrhshdpXiZtGiZsSYAvmxdGD1wZoc8HVYW8pfLd9sQHAobJZ9riRLU2yUh4Pi3jnnvVJfAgyDdyxWmN8WE7LCBBStKQfCfca3: '100000000000' + DdzFFzCqrhsuUXs45RkH7SyC2zXugtRW6f6FwAH6Nj8NpppsyR1NFSfGRMQFegpPdvEEXwHJXnVVmWC4J7CGBfc1EjzLZDd7fwcuiBrU: '100000000000' + DdzFFzCqrht1wQyixEJa24mnaSv4v5XSvK712p4Vav9ajdUSQuH1vdJefTJeLgRLmgS35HYtB6icd17Lyk3g7vrHEv6XHEQuaJZe4phJ: '100000000000' + DdzFFzCqrht782JAJPNgXEUf9u42goY2WFH4Abtu4KUKM3dJ4GSnHH5RWMQ6Ff27cq467VFwa6rPvEqMBw8zGNArCSKbKcFjukKVkDmE: '100000000000' + DdzFFzCqrhsmvpq9C2QDkKm8qGCPEKx5FapZ3b2j3z1LDCRJvGxyt7N5fs8asPZPFVwgSqBhfiYRZZ95qx8rnmCBQJWDRJgnoWQM63ja: '100000000000' + DdzFFzCqrht2B4h3cgpT1rJZcqnhB9DdyGXxzGG2YeqiJdnjC4ENwf4Vz2GtwLSvVum3ykhVm9HfcbwFdVJZibQaWLhfi9tacVwjgnMu: '100000000000' + DdzFFzCqrhszv9yR8BRkFfJ9x1V67S9g6fsDsvgg5Q9SHQjczBEmapSyxMF1WZxbAZGEHcDHkQPDxCnRD5GdTwkixMA58ENa6zHVT2xk: '100000000000' + DdzFFzCqrhsx1Tg16KGnNgYL74YjUJkbKXJfDsJmvwR7yWRohAeXWfZBiEuW1XAsGPBPJ3eeeQ5Us8PwoiHuxMK8xtf269JcaNY9fCNL: '100000000000' + DdzFFzCqrhtB9kXoB8hkqqDEVepjN7iLEbrZ4ev3Fzc2DtkwFDTx5yQUQ8HFWpa1SX6xa19zJoG638SwkXD2YRZ8BJmKzmPgezpPdG1Z: '100000000000' + DdzFFzCqrhspENibdKwdhJY29iCxe1FbkaRYTCpvGUKD7RDimWTSpge1TTr5vUEKAq2fUomK89rJ9Jm2zAxhPtwkT1qH3QBQwuMa6vXg: '100000000000' + DdzFFzCqrht3PXq2rbrSWPABrzcR2ii33duy2XrvNCHFnipHpUEFmA92dZQ19J2hyKmLPXx4zNwyfJbfxpeTek7HwPGNGbMqURLDXKAh: '100000000000' + DdzFFzCqrhsuvjFmqGSon18Cre43TkBapMjhXMiF55zYVXDSvBNmgFfuV5Sd3NK3zQ8ADJWwotoCC7R27xk7F3mV3Fqpx6YLenjPfmTT: '100000000000' + DdzFFzCqrhshH6MA2sFv95TwnruNgEc7EwMjJHaA6ey3mpXq3cNaF5gPVnwUfhyhHt8wDGN9BjJ1VnEYWSUnCKHwgkvDzzoRioB5eaVa: '100000000000' + DdzFFzCqrhse7GJDZdrDFr8rwkYwKqQ3AnDFDtKWWh4PKc9bjMZ41mumvpSPY5fTogmsqzV389Xt5SdwzALMHsEKsAQ9majAboxF4PKz: '100000000000' + DdzFFzCqrht1g1paWFHdY34u5AJvVy8ojNeRC9aSFRCDbMYZA57CH4UMQR9XxzmpH9bYJM65kuq3K7BPEkKAmLGG6szva2K3d4BVumo7: '100000000000' + DdzFFzCqrhsnXxtUvNRmvUstDgjcePy5wkwgA5X42qxY5iVNc9Fc9rZ372yB6TJ3ye4zCbrBhMsjo671HweGFMPHv1bKNJ5ecH4xxfPi: '100000000000' + DdzFFzCqrht7t6dt967aaCZU25KdhwQLWGnTXw9zbq7DCnEfsfhz8WjjTQFaZtiG45DUvDhn3wHVYXgFWcJMqycSoT9JvpdMUE2J84Pk: '100000000000' + DdzFFzCqrht2XhxfHjuSFL9fRKtc6iLYVwMMeyqMPvxTLtKcNhNyXGrU2hM3TPs7AqWaNtDtVPr6pjjrNfJPNAwcyAFfPCRN1igBSGne: '100000000000' + DdzFFzCqrht9UvbfWbC6jt5s4eNz1v38zADUSZnMQoccZFGevc44fAH3RcdrLtqbyaXNPLY9UoZWKu3oLnAPKYvPz7tV7ac9MPXHHdWw: '100000000000' + DdzFFzCqrht9K9NJskUq7LUC3xrAgdAqUFhXxY4dCZh2BFNXgDU7qPBqisum3UMYLSkBWEQUs8VsFiUmmFBoVrZ894PxAmuQgwnUMQWK: '100000000000' + DdzFFzCqrhspvhpBXZTCD3pKyXvSVntAQQTKYXDYb3KPb5bCKvfsXqsTKqVephRoPViAfPwdbDR1yq67BRvF3DabDGGSREkQ7QvqF2Ps: '100000000000' + DdzFFzCqrhtBQwqcDSEtyMUAzvZPyGo7iasXiCJrS8GDwPXbphxVZf6Wc2kdNp17YLeMMj3rioijxNKxK32T3iTFohfhWZzfuAxoFeNy: '100000000000' + DdzFFzCqrht3W4KpoP8CUEiiXrdDjVXMoSWmuDrErMcbQRTeYWkPPkzuBf7mGNy8sHS7QD4bhxGnY6DagY2rd7PoN44yyCfB8ELp6cP5: '100000000000' + DdzFFzCqrhsoX6VN5s61mmoX9UoQmpmmrLx2vpvF6oVby33urnyTipUpWUvq4kcKPE7YsPjWpxKUdwkSexqDCaHE4TFbXAMPPmysbZAt: '100000000000' + DdzFFzCqrht2LtZmni99CDoNL5NZd51DL4KzukJgzCkJv4uGSMqZsn98h8C8EFg8CN6P9esADw1HmYkcwhUQ8iQGLR6Yp8vK8u3PQpvS: '100000000000' + DdzFFzCqrhsmXKnXnNqMjXTvQ7ppteSc3Qg6YxhhZjx3QzXpmF3PcrLyfSzp8augogfNKaX6dzqApAcp3CFy1B4WkHTfetDg27KDs1NS: '100000000000' + DdzFFzCqrhssT43cdYzXE2A9qSo9GviGqS16LveBG7k49ph3f2mfUbpfoTP7PMy5EbuLiPbXHWmF98DBQEL6JqCoGEYjXcZpKnvJFs8N: '100000000000' + DdzFFzCqrhsiNy9NZEoFSYrttjT1acFxZQjSayt3rppQfNFzCrEE8NQYDa5ktMZTq3MDhTtjAXL7Ua1rWYJSFzChUmcUWAGHv2tUSW4y: '100000000000' + DdzFFzCqrhsmb7utbmSRfK5hL5i9Fq7mPmcpoSSEDqKZqSewSMYtqJvafpef1x4zxAjrSWU8zcv29g6tUPgH7BZAzpzcp8NAw1ip5v62: '100000000000' + DdzFFzCqrhtAG9sL7jX2QfKvgHsLwV7G5mWa2mLJsbmaC5QrHzkatn2SABHKNMfcoPERQqUwWHGmrhJTEDxLQVvTJFFTptTKeUoLVSZC: '100000000000' + DdzFFzCqrhtB7BvDH31vkTyMaAdiP1fUFA8KGAG6FkTQQETgxrVWgixRzsyHaJ1Wg5FFPULXRa1JQo7LbeafGwguWe6QkAqResgBPbf4: '100000000000' + DdzFFzCqrht4QogR1CAGxFTib5LunkacDu9yPncCXFg9YG56sv8dUtcpTFkn7PgDCGsdWSCyvXzwwLfa7zU1AWp6fNuPhHsRZGqyAqXc: '100000000000' + DdzFFzCqrhtBhnkPNQbCBnZzUMGQTZ4U5KiHmdf7vfYro2DEVvoHA39GLaCAtmEwhmS4BJ6L9FBiDY3WGB9u3qzMctBvwTrmgtXK9KWZ: '100000000000' + DdzFFzCqrht2qoGkJbAvSoWmftXfW4AKicxQJbz9gBBgBfaoUEW7aaFSHgk5MAEPiEfdantMNmB3YhggrdGSNQajVQixr8gZn2NFkYXB: '100000000000' + DdzFFzCqrhsjNsnvXCxjqED2NQoN67qHPKXuX1Q8uw1z421ph1kqbwFitByMU9MxpzuBHhU9EqCKJSa6ZTpxn9sxWcixcCEgJKiWtwcb: '100000000000' + DdzFFzCqrht7eewmhd5drGkiQPZ8RPTebW2diqNas8zNLZFw5xRamwFwftbSjFz8zCsPoZJzWckqDfC7giYu5Z8sik1DeT4Ld84LToM7: '100000000000' + DdzFFzCqrhtD7EDyMHr8BTSoJtrx9LbJA9aYX8CFhqoSMKY8PZjGZnMJVY2EaWgW36cvcvejWi9t7f6r8c6w2BjesHHYfXAWBd7PRHu1: '100000000000' + DdzFFzCqrhsfxq5TbeLihjwYQhAKHahtRdBKZNgEUeJ7xe68RTU2U7d2NmtCpeNG9UgMaR5zjsuAbpAgUSbb3VTJMTwkLxoq2v9fzrb9: '100000000000' + DdzFFzCqrhtAV5NrHQps6M5sRnfDXgQnPxqbxiXVaSrAjXg7rHLjC1JfTpFcMM67rvzjrfHHWjBuSMVnA5ZVx79zqJ4gcDyZirfe7V8X: '100000000000' + DdzFFzCqrhsioiAtUjCJs4aRcmAn31ghqmsLxqrrk4eu8ZxM9zqVG1wGTab7npn7zfhpgB3MzjF4Xdhr3iTRRxQGN18LhpkxvyZwA5NH: '100000000000' + DdzFFzCqrht84M49omXJT2wUystJu1Y7AVJvhgBYLRTZndNNvp8kxBkBSmszji78FzAcHfWmHayZpKPzH96QctEfjNQj6KmEgAWNCwWD: '100000000000' + DdzFFzCqrht57eZDhmXBWEQpZCxVEegTgmbDNGn2ETJEjwtQJD3HappzpBEDVJEWz7Np8CeGGm1MPaHBrN1f2ET4vBm3BmxytCATtow6: '100000000000' + DdzFFzCqrht4KjpLrJohdK2qqf3ABPLzF6AwWqPA5jfQAVSPfokxM9rzm6nr9tdd6WSacyaUBDDUpnUyYN5dvVJi8dLXUozZa1xC4vLp: '100000000000' + DdzFFzCqrhskqh2LiGzRYFBVPhBwqzqedC3KCMNZegxXB2EzWKhdfryCZeKjrMGx5a51YEjKgcHtuXw2hBT4SZUsKqoYykvdZN9xfr9J: '100000000000' + DdzFFzCqrht7LeAGngeyj9hpG5ZRjdDhU3NzCtEsEpQmmKmAMq1NH18uN5zfZaVccPyRBZqmsRi13eH5Pk1aKkhiwHwH6m1kq248Ddjj: '100000000000' + DdzFFzCqrht36BqnLDbxFKHXHpR8zree4a5qw7hR9oT3gzygGsrMxShQ41JevQiTgobv8YaNVCiQhXr9c2rycfYHnV6w3pARbXJ8JTci: '100000000000' + DdzFFzCqrhspgHBe9eUmcDt4o9WCsFM6GunqnWjMfNScEQasrmikoCe7N15KREgb8zfVc72S65oNHwgMgmibN9S4KVaNCakFWBLJpUDp: '100000000000' + DdzFFzCqrhssHyhhWC4XpRrbz4v834gYSvZbNsPMSFdZKRzgp8zYWue4jxPeX4eevMt48jSidw5Yr7hCfruZHFMKvLJcAiP34dvqnNgJ: '100000000000' + DdzFFzCqrht7cRsCug1zdvgQXNA8Xd3u8RtQTUQNpXWT5hZvBaT5eQeA5y33BT9oKifrFiDACmqjZY5EzMG2ru5XXRH9fmjLp7MFsFby: '100000000000' + DdzFFzCqrhskfjCZMpoK1pmHja9bPc4bpnhCPrxyQHAebwmunyy5heefMNFSQwXDRgFsxh19zJViYtSfWiWCRURbcLFF1MXWMQsPuUGr: '100000000000' + DdzFFzCqrhse3jqmUbLtaCGk6smPESyVz9DvTEs5aQjvPraHWbNaBRUXe2AMCwqHGb6dixbCgVeTGZsQWhfDz8sN34D4PrzXyTXofHDx: '100000000000' + DdzFFzCqrhssUnqD4WScMCzs6i2DFs9xoVDDtdkiswVR91MfFvzP4XE6HKGidaPvx5YFdXddQ2qfEko2gpL2enrXSJvrHx15f6ek4nQx: '100000000000' + DdzFFzCqrhsrFW7cw8d4iwUABgVdzCUjDfRa7d59bMJ8ySKoGnit3MZSmjobCdb3MDDmhwUBmLcrgc9DYHNd9A6Vugh74XZU275SXiyt: '100000000000' + DdzFFzCqrhsrgynva2wmP9ZMtR9VVCDVMC4nmUgz3YfdrM6csPKU5VLzW366NN971QAiSeMnKR1XjWPQ79BMzBh2mTKBRm4hP2vNcmhT: '100000000000' + DdzFFzCqrhsgAiK5F2axtBqRcsujv7vdr2R184ojg4UWe3W7FXYnWmqsCHwJWpY3P993CTVPwoh9p15215pQhXRP7xRtY39kcCvaCJrA: '100000000000' + DdzFFzCqrhtBSxx2SGmR4UoJ1RUKiEzcyetmU9KXn95eB7aE2BE1WY9YsfkjvQXx1wAbCWUrk7bMbcPH5Cxm7EnfRoTSHuDzqu4DcQSv: '100000000000' + DdzFFzCqrhsnMtZDbJ5e5Nk8QgU87Kny15LtDMxcbRA5gwksCVmS3G7jb81rk9sRhrpeHDpNmvBpPB2dwg8aqTwDZba5RkLZroLRXjY9: '100000000000' + DdzFFzCqrhsuyAfgk1e1KwCqC9WYPdoGXbHQRkZiHXgxwiESVShHQ5j6FhV4G3EmW2bRZFY3EmNdzye93aRkXVw7P2GzBxYkSt8Ninat: '100000000000' + DdzFFzCqrht2JE47Cpy7TWnnFDeGypCxJ8myjG4HCZRr88ZAsLL3sJuVa1yBpZBRkRuaEqhUB9T82qvgD5jGzWCqk1SjWVRHrpVcXra9: '100000000000' + DdzFFzCqrhsmDbBNsGTm83q69zu3RPYkuREcT2XXv8vEiyJgZhmNf777AJ5oxjCLKXf5kANFKEtiyboEdCiiNG2uDDU3WCkU6CNRKNVk: '100000000000' + DdzFFzCqrhss7raQK4JXu4abQnULTsoP7JiEVDZcnZ72bzhFYcoAY23j3fwt17mPMnFcn9PhoGVEnZZV3GnkTrDoZ1gJmnKRPuZVoAL9: '100000000000' + DdzFFzCqrhsyF4quuYiAXmp1vfiFhhbcxXniypiSiE7tnBraPczHxcfBP5B4yBCyeaYJKwG2N7U5ujjoTrvvJCfXJaHLbfWg1nnm5ajb: '100000000000' + DdzFFzCqrhsyiAAwKP1fAhs5wihZ6dSEPf1oE2YG91C5vDWS3zwnXA8GUVHeoa2Vr7Y1ibHneWA5TxR7bQvZT5MSM4RMYVbBNbkBduWx: '100000000000' + DdzFFzCqrhsj39Ged8WpW8WTTfXn9GPdQmS9CjL4ooCmB1dgBQABFjiX3tm7oZ6qT8UWyjenG1M3j9DFqPTgXkWTBsyfiqL83hMXJuDu: '100000000000' + DdzFFzCqrhswiRMQc9sB3uW4CFNgMKc2PovFhMJm7F1A3gmTfWJgf16deq97qsF6f2gGiGjyaWdGAwnVztma4m5XzeoMUJnj7sk7vbj5: '100000000000' + DdzFFzCqrht58AUUmjsBjCXk7XYkT2cAX4K6AyfZPZkD2rRAKaqFEFy9QaYhQ2CDYaHZ8DAtbKXGFFnqzS8khah7CWcWZHyrDo8eYiQS: '100000000000' + DdzFFzCqrhsrK1QzPNAeMgGrCE3zUFs4GmDHhHHRev8cackbf3mbuiGTpX6C1r2fpzWjtwaBDMhcUcYPiBF2w6A3dw7br4HuSxLho42L: '100000000000' + DdzFFzCqrhsjDZirn7o8PeZrrwkcMcB4hmTHCg9t48rwZLQMvwn5hsX19yqvnVzGbfMjZ1UN4tHGbLeoXSnioTv3CYbvnE3Sn61TGuQA: '100000000000' + DdzFFzCqrht4rqa7rBzrbXRmUDvEghRBC8XqxLtvsDaz4uVrQ3zs9gtgiw2Qg6qWk6ijanwM3pnPk46jEJJAktHDhQrgNk3iTh9BkzPL: '100000000000' + DdzFFzCqrhsybR9KyLbQjDymLz3iUZMHjyniAgiPLSJwmnRcA6JVyH34fAZZkvX6fNVQkxiZoU2i4FfN96NucWqL8bMCnQDHncSJd6oN: '100000000000' + DdzFFzCqrhsjpQsHgvWQTaVZx7EgQ1VgngEXcoPCm8AAyoitQR2GRuue2JUoSvbaoEPpsoUSQqA3NR9gVMKYjNivG9XimFPgeDMy71yo: '100000000000' + DdzFFzCqrhsyiTnBicudK3xgsfurYhZaGbUu44bPyY3pLqDJdqf6pBePqtVhkkYnATNq49VQP1v1RgcFTfXjC2XZV1X4YYFdNBfeeNDf: '100000000000' + DdzFFzCqrhtAnCLaX6TVTUKyBEhchKz7CsqApuZX2AXsWV5DuAm9MPcH9mmgFCBSJawVTXvQrLp1g2kLdmWLNHLt989LdZ47bfAfcDdV: '100000000000' + DdzFFzCqrhsiAEyhnR6iqQfYoT8mDFJZPrp8HGmSmExU2VrdYzrdSHumSgrEB6enotFApCKYwLNojgWFgPeSizLdKxQAwAbNicAdEpMi: '100000000000' + DdzFFzCqrhtC1ABHDxF8wjtP2tqEQXM6kNYEfteNMZ9hHpzejZtWGaFibGXjfJ2RkqQSqd92n2qCggNHkFAcgrCKD8yezPZ4VJYwxzVZ: '100000000000' + DdzFFzCqrhtAfgScY4gYasbf2XCqFygcDThwphvj8cp7UfYxuJv3BaGGk37i6yNkZEGTAHTWbyruQEBSNGKWrYCmxvY3LUEWprNhyrrK: '100000000000' + DdzFFzCqrht457hNzoa6trXPNq3GYP9v8nzdBedReoMxYZ2zxWjRTtfUbcviPsYtiQ7sNou8p7jvLzQZT3v7D9PSjd5ypa2c26cmC7CE: '100000000000' + DdzFFzCqrhshQDFiDeweJFq9L7hbtFMedMtjTcstJTpNUprfGfMyXorEaSdFgsAC16AmWGQ3ZkoMNrJtniGWSQMfBMrrejjzPg4B4Jxd: '100000000000' + DdzFFzCqrhspbiLg2qHfmJvJFjQTiXgbwdzYFHE9zWuXWkaBCK1ox8kG3oUSaRT7ZZXo2nmt9uA2Q7u6PtBUQzwNoZrswajApr7wMCMX: '100000000000' + DdzFFzCqrht7PwCwS3E688NQuud8oLNYLP9nYXqqipvXnm1xc5HtddL64fLtfuVeUiRUZDx3JftfvCQi44WC8h8L4uaEHfcTf74hM9WC: '100000000000' + DdzFFzCqrhsmen6yqDxHMrDwPppTdkwy2KY2VwxvXqFLXWaii9s57YTqFh7xeUN685e4DL2YxjmoSrQGramxgaA4EwKLYBhG4LErDCN5: '100000000000' + DdzFFzCqrhsvdXAz1SJakLthTSFRZUFtN8kLRMuf9jwRKgH91DLnmKnGWWar8xJhsSLS1fnV46WfQR51nJ8TUT9vAsWzhQJXRM7H1hwS: '100000000000' + DdzFFzCqrht2DtsCFb3XBfpMjbwVRsFgWpYw8G6PQ58yZ4P5FeczYCJJgXgnPgE1oovbngLXcq5kEK7EzzNvBf6fe1HhpmPyC1sdHQkL: '100000000000' + DdzFFzCqrhsv3BrjfGXmu6skF8PKRpWL9zjHqD6bhFPHbFF68vG8GzofiwNBnhwaYNX3eQch253KFPXm3xhuNNvU1U337HPdQjhbCC54: '100000000000' + DdzFFzCqrhsqb6h9YtTRB5p7dJNEhCHt6GnCjvdr51LoMc836NgPepYHu8vXAuLNrbxmMW3rz4LxzG57pB9CbiuFqbztt1ZMVH5p7KD3: '100000000000' + DdzFFzCqrht7WSNSBcjzaZKWnwpGLQZRWrHCPx9cAtR5FPrWesYRowz2UZSjpr7gC9BfT2A42JmnmNDVv9VrLvJZbThfVxrW4i4vbLzB: '100000000000' + DdzFFzCqrhsf6JHsDi2eaixZbvARSNms43kSYwP8segyCE7vPmxCF616aLx9zSB1rD75SpsKo1AsBnz7SoGnLU9viravqZMGwpTQHq3d: '100000000000' + DdzFFzCqrht8HsQRv3b79px7C68r2gewt7Ej2LeV1rB4nzhYwhDdrgxGvzXeoJiPkgYRCj4nCcKU3MheLfMvR7aL6oxc9VmViyJMMNpz: '100000000000' + DdzFFzCqrhst1pvkm5Fyvo926mcLxEhd8VRBaetNZCYyiEZnLmV8euYvEYQxvYgzoW4b2ceZqb9zWXYeDcMwaSuj69Pd6LGeuorFVT4B: '100000000000' + DdzFFzCqrhsriKxiH15F7CZTvwFDmBwTQMxdbZaomXhE75Zcg4TH14BqxUh8ztnEDEeLx5AAeZHNt1aDp5UeL9112PCXRp1RJGiiWY12: '100000000000' + DdzFFzCqrhsy74X8fHcNx9C5owuY1FFA2a4Rf9KCwZPiSiKgNWpK4Nm3sXoN8kQF9nKFoLQcom3YJoFeda6D8woAJKFrkDPcnYpSBrsy: '100000000000' + DdzFFzCqrhsoMYShvsYzCTW2DpA6vdQ4HZaDa32hp4ZA8wLLgdxzn3hjTFufb4XA9rGaq9XdmHTSHweL8mCUjgyVZgSu9MGS1xPgpyZi: '100000000000' + DdzFFzCqrhsmV7MBQZxxFUoDE3W76ni53TzC4tdhmGsZRMzK33JmBbZrxp5u54PEYk5ikPHhfEDMH4ragbdVCUufeiU2v8N57GQseWXq: '100000000000' + DdzFFzCqrht5hU1bKC1krwBPwRfbdCdKtHqorVjUtXenrnngZTabPLNMLsgixvMho1hcwJF3YNVj8Y2wuGKApmpXgbmdm7iSzoT8vgdr: '100000000000' + DdzFFzCqrht8mYdcrigMUgwZgCZzwisotuAK5CU4LgY9uaCawGFU3wKaqsXCLo3m17GZLgeCF5ypDMNHJAbPZKoZxH8kEo7rBUTeMTZk: '100000000000' + DdzFFzCqrht1173DMt1FrRyzFSzSetP6GpyH8Qf1dFPmzEf9uU8dWpmk8P2q1Fxfge3UCBpYQbuZbw4PV3q5kaPZMquuL3g1msPZnJby: '100000000000' + DdzFFzCqrhswjgRpUTisLAKNdGwebL1ghfRR4qD1RkWYE2n7AgHAQbjz3ARu3FoUBWaM7fcA6xn1g1PuZZwZgK4XysndxSnvuf5WYLzw: '100000000000' + DdzFFzCqrhseRdRAWJKDWHgSHya5oXpvzNgjChT7JvvFBUtTbqVkZ7NS3GRJMB1Tts57EErJNgv89jxy5iJX3xQcr5z5NcHo43arp1MT: '100000000000' + DdzFFzCqrhsxRLLh2j7DpWu2EycxeWsUKgC8UJNkB81caHN3FWn2Fh7eN7K7VVjCagEWcCqAzn7LGJPqXzHzbMk4Pa2VxYwy2KLYDQgM: '100000000000' + DdzFFzCqrhsvSrFJ3Ue2aVzfkSaMF7zy1VXYrNvF8PguZhzhFwbQoyL6nqurv3rMpvD3CxSS6wU9qhpnMqgysk9Cb5pTuhgL3r8C6yRL: '100000000000' + DdzFFzCqrhsgRiVjpHSfcD9q5qLvJssnwmJ6WVQQwHfRRrxiuwpUkGVDmAP6XXfgaYVGqAyANZmUJa6aTV7m6hBYApBCHhzEWqJhmeki: '100000000000' + DdzFFzCqrhsrJdmtGJacDT3FniJ1LXtnxgdKEXm65mDhub2DDWxDXZCZNZ38SHJEAvRLrMZ46ES6tXBwfCKswTYq9BnJxXAKiGPP8gGE: '100000000000' + DdzFFzCqrhtAkyz34omL7tXaWvrHPBqR34cS9hVujo62Uyj7eubAePLDRTsfrAmEVBxHq8GV6ADybhCC8idDRyhCvxuW7uZBSFapfAKo: '100000000000' + DdzFFzCqrht5ZoCC7ZLVEK1KDvfVkTvkRkGQaCBmBMsP7z3Mnm1w3an3hVAteXpNJPjujEn5ZfWh6Ei1G8v2Ak3X2LohiA1nyGxbRiKn: '100000000000' + DdzFFzCqrhsidUFoGAPCnjxK2cgn7UdWjGFRLbFjjdWnzPGKvskC23NF7VvWpuw9nB2U5XgMEtmDkZxsLmC475zSXcRAAFQQRjQWAH89: '100000000000' + DdzFFzCqrhtATtiyKvxKUdJDiCwN8M7Xx1AgLUV1eJcCGEJgaTQn6mxWfqz6FhDF3uA61KBK37Eg7Vi3xXrTNk399zD5GdJsmyEmYJVq: '100000000000' + DdzFFzCqrhsk7YpKzvC1M2PUdhSXFCezLXAZEP2THzjMQ9hmf3XxsFrv2dn56sAygQ1n7tKjKRzsSF74Lo6LfXzr1Lo1ahDUst2CtgJw: '100000000000' + DdzFFzCqrhsiCgr7CZiyWH6W6tyjtvtgioRozyXxbZiJRWeoFbDjnYoWJHewAzG5KzShpziKPB4HwkePga4vC3U9UfRmJnt7Qe6MwBcR: '100000000000' + DdzFFzCqrhsgdPsjZ5m4caLfiVYnkr8YWtkYMwRVhUZ4eP2Jf5AfxyMUKN9hfi9pYQN3T1kUKJ6DWYQWGn8a2GhtH7WjJrD3d1ZLwRDA: '100000000000' + DdzFFzCqrhsxaar8kBmcyRyFX52rEh62UCDT5K7ygP9Zd86E2DVj5oPzyt9sYwdWanRVJpo9z9JuebxBqBoLoSiB1fSPW7R4gvBxsdpF: '100000000000' + DdzFFzCqrhswDdTbDRGPoLV543U3f6uQ3HPSaCb2cEhJtTXxnTTz6Dkr8YmdmxB9zLem2gm3nLnP9dmhoiLzABBTr9JYd2xuQmzzm7Fw: '100000000000' + DdzFFzCqrhsonkkxuu5cjVich3NJ9paVDNssBxCgWgCSV8eK7ZQkaJE7fnbMkBvgsxFDVo6L64FAVpWKoaVT5cjMQm6de5wDD4Z8cNVy: '100000000000' + DdzFFzCqrhsjTdHd7rTBC43Fic5kYmcT78SrgQ6Cn51c6vpf8t1c5S7LcnLJnjRVeVVEz4ykMhKPcmGhKmzA6uZkUP4aTkJtCfTJ5LoD: '100000000000' + DdzFFzCqrhsunDv3V1z11dvdjGLb46Bkfbpqc9tqxJCxDraPeFNi6Kz3KckrQqfJ2TmWifdu67X6Ai9hzkALpEbn3v9q2BasmmRnaGri: '100000000000' + DdzFFzCqrhsforRn635ApD9XFg24kRkhgLakJn69cvZGeg3Hr36BHKD8pJB1hqpfa6uKQnnEJ3TiGnNm9bvAtXsYEHcwcty44dqm7Jen: '100000000000' + DdzFFzCqrht91SEEmwLJpadLebAKdnxJ2rwSWcJnDP3qSn5jEXHNd2xzfzNsfvoT6AK5CENUHV5Cusi5fsM7RBYqKmWLy6ShDXoifCAU: '100000000000' + DdzFFzCqrhsmT5CSkBW5WCjk1taagdZ1mxmqBhbugNymrQWEwVRCS3rsyH6i8wmEzAWSxGCGMDVEAQbgDB2NLf89EVrkoRRMc6m8xvDv: '100000000000' + DdzFFzCqrht2u4XjNkia2UodGYJrGfEGVcWPG3maWE18CtJ7ZoSYFdz8sJg8kb5tGzJKagr9DzWrq5MTru9MeRPxvVSuePU3XdFsc18c: '100000000000' + DdzFFzCqrhsgUJnGmaj7M43tYXhL6K69MrzwWdvJaPQeCjcM2GXgJgsZ7qqD9KERPPzzq1ifD2idguomjXaBmFRZbv7FBE1KyDuUc4s6: '100000000000' + DdzFFzCqrhszegz1idFqU1qhtnVoByyaynPMJ8LiBY2bfbt1t2prS9P6T8Dg9QBgAGDfyFDAtCcbjSEt7rjtUjkkFN9fFBsXQZM4mgC2: '100000000000' + DdzFFzCqrht6hfSPjqHQR5MT3EfUshXNPNXHrUvZtiWSDWT5ypCXweSxYrFqkuCpLqHAUEuyhe4FyJ7TRx1nPwUtMAZwb42Z8chjjoF3: '100000000000' + DdzFFzCqrht6GHvq82ALWW2Qtjgz4VJdVtQUEzkQvTh1eQ5JZdrkejuzjWPqCM9hkPHv4v9bhZfqfszHNX3XUkes9H1fypootkBSVCrN: '100000000000' + DdzFFzCqrhsfNtk6jYMKvxx5RQFtmuAygL1ZAKkhxBysZxD3RhrHJeupZNzo1KaWQoKjTf2Cd4ueHrmur6XHCAs9w9x7BH18ccDxtQxs: '100000000000' + DdzFFzCqrhtBRPp4B9CdceqEFeL4uoCxhyWTyyUqfZ2U51hvo4MHWe28Zk3VwintLh1tvXk6hP4jc98qcKDxJVk4AZn3fjN5uhELYn6Z: '100000000000' + DdzFFzCqrhsqAM93CqysJRayLqex8TvZVS1LtTwShCUEWN33raksC5n4Jz2xujaPz3MjHqDbpGfcCC3ATSVAfM6BWo8ak8r7WNbMauMG: '100000000000' + DdzFFzCqrhtBMojc5VESzeJ8tYVNktLXTxoxrS8yuGgY336o3QQGvEJbMcKsbJfggUSMdvz9ZbnbRGoEicn3QcrsjdfyTf2xa4rff1p8: '100000000000' + DdzFFzCqrht3Tu5czKRrWA6arGmTwk9ngNjBps8Gw3khHUkTPAtDpte4BYMxE4NrMndNPEAg1x7rMZCBQtKoLgBS13LtRqnozyA71MFQ: '100000000000' + DdzFFzCqrhswM3h6D6cuY4Smwir2SW6qPiGQP5hFS63qCSQLYkDqSFtkd9YXEZBAN6LhHU699XrX9KhDyhsSCZ1B7YaSseuUEkEoDd3j: '100000000000' + DdzFFzCqrhsqdy2UgVgpZcbEhdU6bkjY8pb8McWsgUq3MyXoXXfwzKrRC7Ha9UoVUyx1tpSfXLoWhsgdmhAt8rmQJcbR9L6xNUiQxbHV: '100000000000' + DdzFFzCqrhsuGxWEdM3r8aS5tx1pzF8TFW8krVxGVJtSvUKAc6JGWye8RwGQQ49jmhMLdLdazrzqxsXGSVUeCVLpw28DPTE8bcUqZNkj: '100000000000' + DdzFFzCqrht8bzmHHCZmA6yn1U6utfX6qPuZm4t9wuFWR4mpA8XtBjQw3LSgScWUwXasscTetedRF2CrguEnM15yfBT1FaFS16wZGok9: '100000000000' + DdzFFzCqrhsv9NPjstKN2ucUp9zpN9S1qCRfS8geWXVY6DNSruj95UpohYxV66MnHw2un3QgL5gBaUQPHrRpFUtWkXpuU5iy3PPCnMmV: '100000000000' + DdzFFzCqrhsgHWks4Zmu8YfjnUgTY92bL4KJKopf8CuPuHeqZG8R7hm1PLZT2eJdoSCVkdAJYGvMxjM2Nz1wDV581u7hh6RnhJdpCxmm: '100000000000' + DdzFFzCqrhskpEHqhFfYYcQv4An5bVBZmEEWHUM1s6SbocstXfSUqqhPmPmbQUUamvssKuLrWip76zoAohmRcxG5Y5yeixGPPULFa7Aq: '100000000000' + DdzFFzCqrhsm9bB8qYkfKTmLweiv7saHCtTgvmjk1wbapktgnUwCiEntRgaZpcEiBNHttMRURnTK8cURzjfnpwcJuKc2QteDHRtHrc45: '100000000000' + DdzFFzCqrhsgu18fzX1oKxEPutnGsSQAh6wf7A974T9mgsaLrCvKmqnUp3y73kw7pVuJfYJWtB8XQnTQKGJrNNuwjuJmtJ2UFqoAQpn9: '100000000000' + DdzFFzCqrhshz5SZ8FJWckBeUQywicwbUJMrmRSE8TwoCLscPTxzgSrrrmrgKdWXf2xdQeoAfAfNyJLQ9Sh7XSZfwww96eWhGzFmZrC6: '100000000000' + DdzFFzCqrht2ncLwKpXDRbRXr7wgvURkFmqCujbTozRzukDC69H8ue8ZxKKfftYawN82LUZ1dB68Sv7sLjouJUQyfSznToc69g47Fyac: '100000000000' + DdzFFzCqrhsjsZjAVx9u75DMW9h7daAWhL7V6e4YtaQEz7f7XMAge14rt2m4rbDA9DpMp5YmzAhy7bjsMRb8s9obEUwyTT2EWTni9k19: '100000000000' + DdzFFzCqrhsoWc2K4SiFsM3BgbfS8fru4t6NzXR2FGbeoU9MhdQWXdmKn5SCEGCfGLfGehoqsx9fDJSZia55hBopYoRoJ1SdUjN213cb: '100000000000' + DdzFFzCqrht9FRFEqbyENDVSvKhbzwxGEW9hGP9MfdYvx56PWKpWPPevNSL1asq7c6dJCMjzRrzgAipaLcUE5vixV718zuwKoH5BkJaz: '100000000000' + DdzFFzCqrht6Y9KnEi9jh35Fm7GjWqWrW5Cc2Wgt4rSJM2gBC5hmE8tPbCm5ywjfQ8aEHP25VDmCFcTHfMk1G9w8GCZMHQBSGGVUwWw3: '100000000000' + DdzFFzCqrhsnKVE9AAHaoQbPYjXCiEbyMz6uzHCAMx7hK1K2tzfroQGp5dS2C68Gy28vMLvcVu6F664Qw9iChsVoFWL7hqeMp83U5TCP: '100000000000' + DdzFFzCqrhsjPeuAtJF87FUXQBUKssugSf5rsYEUoXTNcJ93msNs9riEyAmzu7YVgQdxwmjmqfhbNTQZ469SfWc2V8Ert3KCcSYTjVD6: '100000000000' + DdzFFzCqrhsm5bgZv4SFZ5vC2JELPadbMWSdj6BP13LH4Z7R6uMHVv2Q3Wvxbf6kdJUCk5S5ecmM1A6xLwKvuDjTAUjX3VD4ViEnYan4: '100000000000' + DdzFFzCqrhsnAzD36uvr7rHLhU8GaRuNkNhX1MpKtFBmHYkTvUqGrjjab9s2EviesFvat7HL5tx36XovBkgFBrobRh2fGCMH1CZ9EWmF: '100000000000' + DdzFFzCqrhsz3nJePTVEyEt62Aopr4npWnwSTxruNwsFsVjAHHWeijiZkW2G5wACy3DTdsBGxb8WzahS3c164Qep2Cm5HfzGrZthamLx: '100000000000' + DdzFFzCqrhshhEsU9gYh8uUf9nxYDNSJYojJ9gaDHTtAYwr5nswEdpDDyZ2kkGvndVXxdENYNbUyyW9pzCrvrf9gSrbUWdnuE7XE4AcG: '100000000000' + DdzFFzCqrhsmaGrdAfo9qovx4Fv4fnF7JMFyT1kWavyPVsLTCjRcCXvCxoKYeTqP4rTsXyVNUD6UqZQEDNxGNV86ZbjiJPB5rNP2rtoa: '100000000000' + DdzFFzCqrht2e8WbaAcCM3GKzZBD82rh3cxyRs6eUyhW2GgpNdK3keuk1QeVhADoQs7GG6w7jgiVycKsWQ42NyRqQogtCdBhgurTuoXf: '100000000000' + DdzFFzCqrhszNkS3hGcKJH8VQ7FuLU6Yeuxd3DZ7nF8xT91YioDf4kzxvEYUfCA3hxQqkD4GZY8rA4sY4BHW5GhtQn58tMsd82B78DdL: '100000000000' + DdzFFzCqrht1EW838ajWUqZjmvz3xo96xPF1WonDDrTGbq1RuHjYgAuEmYsJS6QUe5Kys76u6S6xwmgG8rerQKh8AW1gfoEHEKQA2YEQ: '100000000000' + DdzFFzCqrht3f5dsciyPRVyKy2woNhXdtp4MegSw8wYNw6cpQZQDt9a4Xn4RL6dBiovb6nSEGFMDLnAc4UoC48oBZEQyBJcHekLc7si5: '100000000000' + DdzFFzCqrhsoSkMuK7u2ToM2rGWgseVpGvpL9VGwPqHyAqSfg8LLy9tsLfZQHp2cJjPTSoyWJh4bMSCAq7dx9oEKXH1pZMi5YAAb3JgP: '100000000000' + DdzFFzCqrhsughEFvccCa7mRD9RQZoL88h3RTc4WZ7SoNfUbiEofBgJB8yRGoTKgP62BSpew9JZfLtSsfXSqKzfLkLGqVaqrHNQWpCMQ: '100000000000' + DdzFFzCqrhsxN3xy6B6b66zHZVsrJQDFdYo6Lw8WTAqS8bNJ2msLU5oqUmcviinqxoNGBfSX6rrq1ba9KANPZ62Jzd7jPnrxUASkbSEX: '100000000000' + DdzFFzCqrhsiXmakPg2y18FAbQFKHeHtZX8VZNd4XkEx5WUm4hy8pAhSgfb5ut8cDV1sE2Q9aVBFrRk3D7iojXkWucCR5qA4F5Xp9HtR: '100000000000' + DdzFFzCqrhsyzSxVuScVv2zdymnpAfKRuUEJ4aMvWfkPBBwFGUpUy8pGcEAPoZT6rCpUxcXJjpUFMZJxfGhTLVi7DxhBQn9WciHyUemc: '100000000000' + DdzFFzCqrhsx7ybPGKPrGo6HEvvJEwh8MaEbqmhKzq3kmWdN1eRRfsF5r6x2N1xVP5EucvLgMCULCWJ5UxsYNeEnVACu9U23J1uXi5rD: '100000000000' + DdzFFzCqrhsuCzSZjeuoACKcbeqFdCn8wnsLfWahoTsxEiQjvtnurMKHeA5Uovdovy2eyzL1dG41La2AYew3Sz7qGsydFbbYRidmHzKc: '100000000000' + DdzFFzCqrhshZhZXSqdg9LJ6L5ucgfosECYZswKNZTwFZi8xQWiCmrXnUrpkZxioyNUd3cy98B8tLXHWaSkJXWBb8PvAGhLUAkMPfLsR: '100000000000' + DdzFFzCqrhsu65W1ihdfX2QRRZTnSzYSi2qCaZLv5nya6sVR4XNWeLHFr5XePhNKasPjorBzqW8qch4KNQNbPdJWLBDrshq6EwbXznJm: '100000000000' + DdzFFzCqrhstvbwMaERaLV1pnPuM6og8hgnPewkMVkrmhNkgnTB5rgbt9bEPYds14ZV6dgXVVhS57YLbaGrDjn1ZCiU9SF83Q7dXt4jA: '100000000000' + DdzFFzCqrht8mTWFtdmmwHhHC9TWBhMevmXpPjFSefWayVyBxH3eNAd5q9WDWQy8krtzKymrxCXBLL59CvM6LmYDrtPcHJy3DK8vwwUL: '100000000000' + DdzFFzCqrhsvoEZRtPAhpbMvZnx8ky7FqJdPJmKgpyBf27pXaK3WvrrLeBGjM1aR1qjQqaaviABTVP1wsJAfB4ZCZcXCU9RfrdZqWvt4: '100000000000' + DdzFFzCqrhswxeRiuBVPCJSnWG4oe6vkN4eEjHstqHUTuC1QeKzjCn3jN3qP9Gxu2hXAb7vgLk6nKBYfCKmpCe5q6muM4MPjQ19WUBMu: '100000000000' + DdzFFzCqrhsubCguPahemcTZtmNoZDcwP6nJMFoEj3hkk6yuYeK2EknkZqLjMnkSsLGrMcqdbsKiCU5SPHUyK8Gc38McSRBpBJrQ581y: '100000000000' + DdzFFzCqrht6HR6fCfV34AUyvR3YyriyhpAMLpdcPj9rYd8xkRLH7U6xtdPGLtaXHExV66C4Ets31i8Hnq5NrrkJ7urSj8MUtEBcZMKX: '100000000000' + DdzFFzCqrhsqkj4dLvYnxEktx6oWSS4du8MNyZfFrj7kajyQ7sXY5KqVeCqpVij1kQ1SBJbZH5FvWo7xRWYWwQUeGjFyCCZuRNgqE2xh: '100000000000' + DdzFFzCqrhsiuqpSe6YrZyioZi3BGCGVx531UBP9h3LbTppppb65fwG7R55TJG42M3z91LZgZzqaqyAGqD1kBjz4b5JtqR99QMNMmE73: '100000000000' + DdzFFzCqrhstgeTg3vnEmbERQFuSbrQ4B1HZvo29bCXo7xkBjs16GYKRNbWG7hG2sSdosjGk5eyMhfiBye8H3fp2pyVs3Mr69CSPkkxB: '100000000000' + DdzFFzCqrhskQMk1v4faf9q3RLouube1N6jaw6tEn3sE2YUmDDQUjnAQr2i5GdUuKsVfJTSKkB8dXvPS5zAdp5Vvu1nNBvzJUBZBHWfJ: '100000000000' + DdzFFzCqrht41wzTkjmzB88BcAhYFb6iVSMETpC5ZvTES5RQJvfG9eGMwPSLFQRXi6uotWKaReTsZyUXwS1LNdycV5CFPWzuLQtAGgLh: '100000000000' + DdzFFzCqrhseKzWFXhjHPhPM7E3tBfCzLQ5ncpwzqJuH33prMjBEwJStzkMDRAE2upsBXdcn5iPCQe6qy9Z9vBpv6U2PUY5ZxeNdP5PF: '100000000000' + DdzFFzCqrhsfBp2xYs2xqAvawVVjZGrExgsEeTqhje1C6yFQxQhgHNavZKL33XpRrG1J8SJAiMtsqQnCBcpSdgkYDEHvfU6hxESboxtp: '100000000000' + DdzFFzCqrhsr89fgkp69qpxL43ymQt2YNfwA45cTMHu2oviPQTwyJisize6qSiDrLV6CtAvkkERJN7B8gpaSSdKRs7FqDkcuqjn137wH: '100000000000' + DdzFFzCqrhtBYPNBfhVxkvWzaBdZBtNKPR1gLk6ph3sJVVC7djbQsfJRps1vWsdj7Ng9aCYTF7ZvdfVzF7YKKF8oXE2mF4HGHz6kNgft: '100000000000' + DdzFFzCqrhtAyzeg1JJPsj2RGJhh8CYzjApC5aGhxZ45fgPGK3rUPE1bdxzREeZXkEvbVBnaw2h2yzBJn7gkb6vWboeBaD1D491gDkM6: '100000000000' + DdzFFzCqrhskpfrsyafEcXqaos4Xh6Kj7yXTQfwN3FvofwQhbMq43UPzQLLmQBQ7LtkYuJvVybRcMLZgrhwVaJ3tVZqLnq3Mot6GMatW: '100000000000' + DdzFFzCqrhshCqg6rq8wZXZ5GnnSiZkSZCtUwaagL46wxp3M157jzMbF1q4XhDrfzZmc58WxXwa8AC9uSb1wD8befSZM5dQJYrmDCoic: '100000000000' + DdzFFzCqrhtCVAF3SiP645MiyAwRvbaq34FryjaK6sxjFPR6P94P91ZPR6wE9nSGeuyjMwJeZpz1jT3HLnuo9f6XszNdFTTnEv2gyy6K: '100000000000' + DdzFFzCqrhsiaRM8xydosGBPRJuuzzX7yxeHAcHdGwWiqHzyqe738ytj5pNXtxfHPDYWD2g684hNaxJipt36Pa9WsGHiLJk884oCrwu4: '100000000000' + DdzFFzCqrhtApeShHWGcxv2Wr9qwbm42XL5Xe2rekV2fH5v9tRZXdV4Mb2KSDh2U83yuNSoJdGDwPKmfjWPoKWhd3TtWvpx1WABqR56p: '100000000000' + DdzFFzCqrhsveWJGTgC1ifyEvBBTQmuFRfL41tGxGKQCVnAGQtdU6rocaiPQvvw1ssQDtLhQD4pA8QVDqBTQ5MPaBBricDrBMFGkUnqe: '100000000000' + DdzFFzCqrhsy9HENZRDdEzGfhXj3rkR5CWtkW4TjUYVYAh4T3bZUg8trAUiaHtkdJbVAd3YDX2YEMqFDSvPUXisDC39NpU3c7ktL6YyL: '100000000000' + DdzFFzCqrhsv36gadfxGKDSx1MpWcmVAVTQpPANTbf2LujHux2Py2H9KoEY1YxHSauXxiwRiiCwpVr5A8eXoov9C4zZYDdw68A5MV3Cx: '100000000000' + DdzFFzCqrht4eq39dq3RU2uSppUdhBuF8HtSgK9d593XDL6rYZop3BPYUdZktSpYA8yif2cMHFDqYFmFKuPkAaQW1PNhuaeucqCroozh: '100000000000' + DdzFFzCqrhsm3qRzxcPFMQ8Lg62xPCEdMH1pgJrh6gQsPU6uDY95mxAn82Wp9Aktjs3igYRnoRy5XAbv8cbbQg1pdJpsBMqbuQVfFR8M: '100000000000' + DdzFFzCqrhtBvpeuo7sprBafj1ueThBVV8xCEL7GevccZv9RJBCShzi9PF3qTssk5PkDwKxLxrESFaFCTpz1ZLa6Kf2vD9cNsvycfbQ1: '100000000000' + DdzFFzCqrhsqy43jB34f8b1bpJUQyobkhmk9wbuFeZRjgpwRpM3qr9CCsgncDyUpedSEgzkY8UXVMLSH4GxcQ4SKrqLpDW4Ko69mqBMT: '100000000000' + DdzFFzCqrhsqzemHP17k8LZMtmaHcsBwgFLy3LP6pZ6wjPRs8omh5AcsjBczXEqsf413f1JDw8tFGHwhx8QuDut6Nh2kFQx81XhZtAmX: '100000000000' + DdzFFzCqrhst9BUTdGX8sF54S9aw5jSBXSDAEUma77UrFjoDx2yKPEuVhWDMxpk6MWBMDhefBG65zQGCcfXjEf8AyAptQ5sWyee2Kwvo: '100000000000' + DdzFFzCqrht4bPKFXEERy8MT1BcDmC4npEfiSPQL227ptkLVdHqy3dTGrU5ADtKzSN3MFwzyAni62bp2ZV8n5ZDjzHdm1cxAihmYySXu: '100000000000' + DdzFFzCqrhsiYyLaNVE2uhcqLmbdYQnThLiC6euJdrpyWWguLEdkhmeWGdxDx5Xaicn2w2fJKz81KMq49euSesUhvwUx6F427db7jprr: '100000000000' + DdzFFzCqrhssdaJHLMpSjwmUFZGH58ShswVMeMDoQRucHiDYGvhMrczymfti5QwB6FzfYhXK4X5qbdKXUvzEzsZYdr1rdZqfJaWzXktp: '100000000000' + DdzFFzCqrhsmn8PvGHjxS1C9FhyFzwNBRhXpZF2C7q1pkLFf9yHFCVRHnVAF5qpH5pVpBNdiEvNWhsQzUbMksodhnAEXYt58o4tK916A: '100000000000' + DdzFFzCqrht9yCckWrvTSynq5ZVETP3tvvLCMHfEDH8DqQj6H2aQsPw9KBjeAoSGvp2SAen2graUiAvTj42o1HXbqyR1xbauTRqo5Xuk: '100000000000' + DdzFFzCqrhsgHhQcRMrm3RPbBUwrvnanGbcchXgMHeQ64bqEJwdi9g69nS1U9UFvmB5nBDqRUjjdCbZSeY8XPM8tY4tVLuyLsGX6CRir: '100000000000' + DdzFFzCqrhsjfhfdSnS8XYcn4tTw8u5Y6SEYygK6RvJHC1uamWGuDNLYgwQNWnC91LFtSxX2R1yY87A6tYNEhFKQKF1HmX14xAt1XRxe: '100000000000' + DdzFFzCqrhsrT81z6mn6MTdLNt28sBUmnosC2rYCjQejM6tRDV8AKHqEbxGc4LQhK2ggScFrQ5za15P6LEAyXf3p8P6h8cjAJvhHw5MF: '100000000000' + DdzFFzCqrhsjdEjd2YipWNbt6jKF8j3THaW3Hj7WMGuXXsaWfDjvk2f32dgb8Njtj2wa18AGMKuU4EswggKuZ4zBiZahq24S6hyzCwis: '100000000000' + DdzFFzCqrht4nV96FhGCupGNWmaCxuEtAmFeBesEW68cjy3RpLggYCZFrLPy7ykuHu6vKN3LidtEwSdtv2wSUFAadwTEmksjf1Sbi3LW: '100000000000' + DdzFFzCqrhsho5PGAWinxtac4QJxPQrYzRdK2PXV8gBUrF6i39U3MJgaGCogwynj1e8xYoTWVmPhCHsHG257Qihhu8hQTABUxtGirzbM: '100000000000' + DdzFFzCqrhsqokHp8w9JSAiQ7zCujVoC7C9ozRYkS8ogkYuwnbCTwqZNxCg2upu3eiA3CZjrgwBCarEibjYTj6BNWHwC48RKTKb8Ysis: '100000000000' + DdzFFzCqrhstWZnLR1tsxXSrWfNjRxbetZDQkJ5SB3hXsd6zEnordufxSpqdAQ4d2d6fFUU9GMPgeYpsAwaEgwYpkbGYpe9zZcV483Wd: '100000000000' + DdzFFzCqrhsytaiYTPHCkxnR6Ppet5MoETkLW7LGv6VkUAspR5iExDbjrGmR6kQWF8BisMphv6QuMrGLNPjVpfw8sbzxcgA7UB46LQLo: '100000000000' + DdzFFzCqrht36H4ECYgqwMpkpoYZH2Vco4jqrvagZJ3t76p8wtuUizatFvExcfydawjX8QtvPNrLkCgxoaokw9J9RCxPYQzj5ESTZ1J7: '100000000000' + DdzFFzCqrhsu4MBuLV8qG3GAD3zTXFqSLpaXpyFwvvhhi8JPmxA5WPF16UqLvKBewkH8wawggbRUUihgiZta86wAnHGN6yvwET6CGxFN: '100000000000' + DdzFFzCqrhsp7uHHYqrH4PEqkY1FMkXyL4eRwQSWUTMAUbH3aR2SMvYV8LmVtgjhAyWJUHh2Fmr8PrtDmjcFtNp5A1mRp7PmWkmt4xVP: '100000000000' + DdzFFzCqrhssoQazfcZfswz9GQcEmJLzdBhkzf8c8d93DybhsjEJ8J8yZzHxsaDAi5nWEjFcJTv41Zjrsy4Rmy1cgJ92RvjHK4WfgNuU: '100000000000' + DdzFFzCqrht73JH3X3pHv8JpamtLcTtxpCr5hvcPU42fGFz8jG8XR1wNfEa9hp3ZMFCr5AJLih6168iuKGVGTbCsMiiAt7pTbbeyZ1HV: '100000000000' + DdzFFzCqrhsrebKm7sFGGe5F3bfLJd7gaUt1JRt54D5GLWRCq8bE458dMdf53gTTueVYHYe7sv1GAFCaDNohWuWftqbsXtKUJVfQGphS: '100000000000' + DdzFFzCqrhtByw2NWvLn2yu4uyaqwBCPYNU9goY2WwNvrFJg5GjAKFHQyMnnNuoX7m4ZtheRWxrae9oUTP3E6XeVgkBDatcC9aMfs3iT: '100000000000' + DdzFFzCqrhso1L6xw4jTsBudSBBReMS8t5aKMLwDLKmz3vUAnCb5EksNTPjQdQgzBDjR7btkEwCtaA4yZuGPpoAmwL9EP814gTus3Nze: '100000000000' + DdzFFzCqrhsqKSLoD8ZcA9VNkNTnaZRCVesUnajTp766soeaz44t3KTve9pD4JTdpEseVpHyQVFfJZZwBqCYzqDkKEGGPcWp9JBEh1vQ: '100000000000' + DdzFFzCqrhsf3GKBLMweuuwwinX4hutK5P4Vet7op58hVZu6HXc4dShBrrn3wTqRHxUhbXx12NvDs2L6JukkKXgK8iSpb2PJFaN4ABzG: '100000000000' + DdzFFzCqrhszAprdFXZxuGGMYq81F7y8A73qc3rkyD3aDi6xej6TVHfD6d3KUQpu485zCQQUpRVWzBrb2fCwbFrRomN7b5Xpzv4U3eg6: '100000000000' + DdzFFzCqrhsx5LWMerjwfnZzKA3gVfdYCScV5UadAzszwhrag57eo3hdxLXHoXXiGXvre3npCiVzqK2TNwk7o6LGfLyb1jrNLpw6gE3H: '100000000000' + DdzFFzCqrht3nAENaMizh84Ve7yEput2HNsMQNWd5x2noTXNPEw9uuxdUa8b5y63PtxX9gjhJyEKLtRRPSqVQCJPnXyAxyK5tfQP8fNh: '100000000000' + DdzFFzCqrhsu87pssBC19mrrhTMhRjrp36fEVqCp4HbTVXEjSwoZYetxG8bqjzMXHCnPPfX8z7k8Lv9VQyCpJFUXfHU4NeB9uEnQRhkB: '100000000000' + DdzFFzCqrhskRrWY38HPw8yfYEjp91wVNUzRQ76qcM4UkQjY1kBKhfRjip4ieiQYXLFyoxfEqPkbPZ5WbGkB3CZhScPvPjPppc3PZkWD: '100000000000' + DdzFFzCqrhtA6YZj6oSVtqoSXrkUiHsRv9kpdxbohtZzxfvGaMUoYP7VWWdsczheYVfLt9VW5r4XFMscjcZcb2UGw8ykB2vFyxbQckQg: '100000000000' + DdzFFzCqrht9z4VHBohf7kASug9YRebqhLuWkz5NLADUR1YckG6CznWEvjPs2itEY7kG26vuDchGMvkwcF7NWyFxdkkUqHWhYi6h3NTz: '100000000000' + DdzFFzCqrhstM1aY9uaj2Jo54ivAePvGWYZpefwh6tovQWeMUSkauQ4q6UF5NUwukjzfF8XBNMR2tJhD7bc4E45kBvmKfaR4FnRiZ6LL: '100000000000' + DdzFFzCqrht44eVXvmjvLtuBHvDNEfD4fNTE23HDu2cRZWN3NLfkzpBapjReXMwpJEvT15kx1r2RTjkAz7LnuqAbAKaoBwG6g9krLWw7: '100000000000' + DdzFFzCqrhsggd6EwdqkEUBdSjbiALquH6mC2AmwDNNLkAdNY29sGx7HE27H3C7BJ7H1UF1CBob64fJiF9Zkqb53fc6Sox1KEH3YBQJF: '100000000000' + DdzFFzCqrhszudUhGSJkkLCJ586obG6P9DeXeweYG1fMfujcpf9BvqKU8d1ur72ZSfWfkM3v5JxWMExAw6Zv5AA5qJxaLDDF4PytWQ3U: '100000000000' + DdzFFzCqrhsymccaaCAmMmG6JxkoYaCY15F9VSFv8zDxWrdEA8jP2SZXMUwUEdYWhEJubuy1unRdpvUeMXFSL4tqY75QXUW24yfGvy6r: '100000000000' + DdzFFzCqrhsrbJp9CJL4N4RbS9WkAmWtX2Zco4xQ3HPqARe7th5UDF2XEJEoLc7cgYEGzPDoK3EDjSQGiEBzChwwsEjPGhwvwzDPkqnP: '100000000000' + DdzFFzCqrhsfocoG1xmGoaHJXhga6dmQtZ5mgBg7P8xf4swuWMJW2FZJxSrvx8TpAyuKhub45Ys7az9BgqZNRsx8kzZQSsQe5hGjXREm: '100000000000' + DdzFFzCqrhseNSpmQJVXqRrjwCMhfzdGcLMLNvXZgAyuCfYHjwq5A2UUBqibD4M2me62GdfD7sL6qBQCkEos6VSgcYMJjg8uSXiqXGpT: '100000000000' + DdzFFzCqrhtBFw7EgiMNyUnKrYjYd9B6urwCN3WTTRpvAufSbgDmmoS98K331mof79YKfkVR1sVnf1ATPAJHH61AMYJQhx3keV9cK27R: '100000000000' + DdzFFzCqrhsjfM4ZyRU75YACkZ3fkW5pCy5YJydpCFqRDJatDh3fVjuxR8X4vENkLCVjKndZdwBsgErbi5t7ZG5pQ9jaLxyQtSvHFwLL: '100000000000' + DdzFFzCqrhspVTt8n3DxK6LkLveXermCBWPj5eKphpccFszTFS4mD9G2bz7hk4GczgTVuwkTNDPim7EaXfTXxAvanuPS3PDmMoe1RJ91: '100000000000' + DdzFFzCqrhsfzeTD8yxSDVbaMUgEkbQuUrZEdpqwdQjHpuPfDvpntaiBcqEE8TkJpG9gpbH8ar84nusQrB7iAbqb4yXCKDU5PKWaev6x: '100000000000' + DdzFFzCqrht6J3dL5pfC9f3cewkJTdXsCofBLj2sWVutDGKCKYci3fA2ATqtgyzahakBLjVbPTHEMCBkHFvxw9z1eDVmc4Z87bL3A3Kf: '100000000000' + DdzFFzCqrht5i39FiCMKxSV5AFN5nBeJ2MbupM8bTSg9KNcHv2XHBRZnxwPGFtgH2QpKGbEuVc9CUweu3Zx6KrGfm2dRPGiVFm5CpNiL: '100000000000' + DdzFFzCqrht8BN1iUe87rbf4vXq3b91P3wEX6cH4UyuSCJBpmhomgJZvXFAMG6ENW4nhW2oThPccnHhbPWMieaBbChzEgZ9dERgahnFu: '100000000000' + DdzFFzCqrhssae3NuNKnVvzmpM1a9fZMn4AuK77N9i8SaV8XgcKYfxCmN4HWWXxDEFjcxMkpESN12TpSEteGKWtPKoKEuSkqh1K7bf9d: '100000000000' + DdzFFzCqrht7DQte1tjKsEV53eH86em44gNDwDtJTiPwcupUEZeWDfBCM58JArVLCuS89jBCdUjpZ5cV5MTg55n2c6Zn6UiTi6aXXScF: '100000000000' + DdzFFzCqrhsusvfZkGxf29gy6t1uyrG2ihyak3iwemGjiXujtyetE7NaLg5cUE2kaakyYWYfpX5QRCBzBjMAWoHnxn9bydngLzqxhcto: '100000000000' + DdzFFzCqrht6vJoBt2bhDjUCUaCLfiXSah4qGtvHJaMn1L9gqH2SaffNwkitTiyu3z89DeVuFD4CbD6FBE1pSMCVY5osmU72d1yWo9g8: '100000000000' + DdzFFzCqrhszjskyvy6H3oBE3CAmViTtkDphHzPtjbut9bMPxrZaAoAvjJpuvhN1zfQkZHSweTdsi4BuyXrPQ22rCf5Bhea7ZopzgTbU: '100000000000' + DdzFFzCqrhtAkMhss378ZA33eDMwzT55PQHCnfe7FYuRMqwbYqhqTXH9QfnxPLaCkJkKAKaHboLQ1Ufxu7awexHRKQHTAbQLFunmeJ2W: '100000000000' + DdzFFzCqrht92AZbrR8SWu694B7uDiaecYzVg5z8udHZgL2jYsVCRgigrhjrsz6zouhH8D7RX6KEKp15zdAKtCjwwy6j5JA3EFtXnA4Y: '100000000000' + DdzFFzCqrhsoyT3rnz36eiX9eYxAVgrymp9z48sjJxntBV34EZxrhvExRoiYVbk7fdnQ7BuviNvvqpNmCB3hBtjJmj8A42pHgHiyzFYg: '100000000000' + DdzFFzCqrhtBjTmB5m5qsm8K1srWJAG9Kdt9F5e2w2XR141pXivAiL15u2VHok77mVHwo8RiBX2Ya8Qkde9bziHZGv6CxMJ8n9CQQESP: '100000000000' + DdzFFzCqrhspjaMkcHj6hChprqoRzxRAT58u919ZS8sLrWP3EN5FLxYNVm7pJ9VL5SGyp6QGV1UfjxymH2snUAQztf2VGhRSb3gMM8fE: '100000000000' + DdzFFzCqrhsuPxVHBrCzjYZEZ5KyMoyDzY8kiamuus3jWBvSm4EbZ9xFo8Dsf5cfXzq7ssWWWvu97q7YQWSeR7rMtfYXy96KVwH4i4o8: '100000000000' + DdzFFzCqrhsebh2FZt7cP8aSgDMf2o8iMBFfEpAbkVDRg6fUrrAQDBK53qQ87LUBnD6CB3KotdxV45KyHDnwv25pzXychWsUCMKALGZk: '100000000000' + DdzFFzCqrhsmys32gydWhvhaVMxKm4jLY8T5GcYjcAKrvizenswfKvhcxGi8fTMvwqUVBAhTePxaj4tCV6qzhrmTUgk9Ge5d4G9aFiy2: '100000000000' + DdzFFzCqrht71ZWyLH6Nt8dRB1vK37nGfoihNhSzw24xCVJ9WsLmEphVR2aup36PY3ckFDApZH6vVagVZgDWEhdyg9AVX88idWCm9Sj5: '100000000000' + DdzFFzCqrhtAPzJgttZb3LFYfsAVJN91vWB5qh9YBWHiwjg9uMqHX4PPsKW2QRMHVGyiAvRMwLr2t8QtkAfJa4g4XMieGzUFgpCavtVw: '100000000000' + DdzFFzCqrhshw6x9EqMayfUij859txSoSYHQa2qqZUrwYMNiSj6wrm5iJUWBh1oAMmeUnsNQcvSBP1n6H6hiWTNWFLjnTobtnUErCxN3: '100000000000' + DdzFFzCqrht5uDzi746DnPGCQ3Aq42hwSZbYg1fXMke5DERTPGhDD1VnirqzUC5oRJrDRKZMBC78bAAvyUSjHtLpud3tytzjUzbjq3rh: '100000000000' + DdzFFzCqrhsime3ux2vxCULpsTCAQjpQKxQFaW8BG6x4Nzi3GowBMpyo4TNsKd7EiZwVMBU3PfMupk5UMttwZgVr8XcGRGVNKz9sJkhX: '100000000000' + DdzFFzCqrhsxJ5JKBLVyoVCYHcEPDzoui5i9bTi3pWYMQAbyr1XqwEKVyDddwTXAhv4htUk31fGtmo47crfA7t2LszWzAQkDVbemiyto: '100000000000' + DdzFFzCqrhsmKhjdNpqX2WaD23zAnhmwYsPEip1NMXzRTXo4LgoURoa1S1qxR6NmTq1QY4E2zDo3anWpGjgnQ1t4Yx6jfs6befm7optE: '100000000000' + DdzFFzCqrhsyHw9BWhX5PmxzAyFVfybZrGpFgLMKrJF6GRPv2KYQn7jgXriU88oMrV4ARYJP7DDLmZgotivuHdbVDXvcp5vU9hMDvHAv: '100000000000' + DdzFFzCqrhskyMbptmV625ae221NrzVHoZCYKV5qqsDgusXxY8sPvJDmnAPLqtwtHmsPs6T3zXkmyXSpD648mmSjTZSZxKimXrtw2Um8: '100000000000' + DdzFFzCqrhsivpXNEmP7ZqNXReNPR57doCHNeWyrKtT5tqPF6bNfZnD8Tsb571y5KgWjKbvQ4sXscQPPEoFToADRUCyCJh8ejACSyZDR: '100000000000' + DdzFFzCqrhshgzsD4r5KPuGZP4LpTYjY2xWRZTJ7G1oQYSGmzA7EoV3W4kXSWSChryj4E64dG8YkXd4skazjWjkcpFk3DDLTLbUApWn4: '100000000000' + DdzFFzCqrhsg1H5j5z4fgWqWxEsjRYEtUipcQmycJqEcjhiQ1JuZ75bDnva9XJ3V2r3XGUsid72rkgHBD1HossFYRxDyjgYD8FNdAtbP: '100000000000' + DdzFFzCqrhsw2aLZysp2j3g8RgybjfgDqq69GZ7SuwS8QtAnKs5zBdUVTpnmztrW5jAQCpLRWKTK91n7uYEQiVxBoCnET7FSxBQLnPFt: '100000000000' + DdzFFzCqrhshheEVbxKXs4mrSQx61LbTv3NALLi2BkY1uKvMFn64feev1RifahxpZ56w9pbLaWuSTHqzrZEZTXAPbk1T3JYE66axAHcf: '100000000000' + DdzFFzCqrhsuFUh87hptKqiKLRR7Z494cJosQ9kSA3DSq8sLudxfTUyEZfUXvetkFDtvJKCJXi2EGLFWdQ1adNX3PjjGhgMfA7eLZLq4: '100000000000' + DdzFFzCqrhse1dJXxMGtvpEkAj7KcodwGN9dp3qsmYvgiDSJoigiUykaR6tkqeZsE2LWNNADFSkdpCFJQe8DrgDsy7LDXt6Rup9eZ9mp: '100000000000' + DdzFFzCqrhtC6PSbZaMaXSAgvo971uvLGEQQ2Mx5bkaryDYB63uutqvsZJfAqxaBEcjWibTNLoXaCKKEzvYiP1tmoEdgqr3ocTPP79gA: '100000000000' + DdzFFzCqrhsfoxYEgtp4nNJUW7NV5GW2QnYE5XNU7aVk1Wp7CjtxnMFaV3jiQHXwS1XF94jWn6n41tCBmuTj9fJiexAqNHukQhhoEuXv: '100000000000' + DdzFFzCqrht9SEZiFkHxAqyo6UwY3Mo4q13dBZrzUk74DLcDoJMJagy8EUsd92EMd72nYqqBDYtm5FC7ihJVvutmeDMwrMfEfyBB9qDX: '100000000000' + DdzFFzCqrht2UjaBXn8kSu3xHhrJLBTvvNjjStCGsubbPJHib1nMLVokcLGK53cEvisuwhAaNdPCHbinD9ELYS2ddZvoQLcLBZaHSjc6: '100000000000' + DdzFFzCqrhsgTJYFraVxVhV9QJJatNikDgjkNxMbSqkiRRn3bZQwAaQZhNiBkJrBv8p9Ms7y2jBLNxR1YbUHMrh7FHzkGzFDV3SRpA8q: '100000000000' + DdzFFzCqrht1U45cCUrm8bsM93gqkT6t8drPeS9Hp7psrhceEER8kngKk8ZfHcxw1F3V5ZTk1DB1ZswKH1Ty4xViqckFe5bCgnbvimtS: '100000000000' + DdzFFzCqrhsx4v3EEhCbHLbsv4oHBrM9BkJUwQqCkSd2C4VZV3qe5SAHmqrngkBqog4YB9JvcHaVZXX6jWnZKsGCfHJ11WGmKQB956Ec: '100000000000' + DdzFFzCqrht4PnuBRmCV55uZY8MgDQWtRNPpFFjMwnQgvm7Td9ZfWX5YA6TQCVUprcpCVHvggRuMALvz8WMLjy1dU5pdEewdKRxxf86f: '100000000000' + DdzFFzCqrhskJg9VnyFZzbdvHL1zPauGxEbqX82TZ6LtD1KvDUCDY496wnSAmCHBxQ4rKwBVWc72qTWFuozWiEV5xdUgqutuWcGGB6qs: '100000000000' + DdzFFzCqrhsm3ymTTjrkHFZnHdcLwbTGtkcmv9W4GmGjZydSDAUh5dwnLj6FFfXqinQg2MnpjvVDfNKEK28zaVHaTgG5EYbbFPDor971: '100000000000' + DdzFFzCqrht8XXFJSkg5FpjzTjvEgcanCjsWxPZeQFSdhwjtdXSmxN3oADnSSzHns4HyH6tkxrEcaMYpYpPa5DBXWrnVkaRoMiBAdZVs: '100000000000' + DdzFFzCqrhtAjxVGbcYvP6SK7r42C5iWNE9gz1yHLEhMDj8kmEaaVyL8yH6A4sqEkyqLqdGvD8HUFxQUcVGtzEr15QEHabY8TsErbQKP: '100000000000' + DdzFFzCqrhsdvjyeD8dopUpmCMPnif8VZXVLgW8KLUoVEZYrB3noXnibKwP3GZsBVZTZAxksb4WBrBBLUiv4XGRiYMZkNtBEBRKVHzQG: '100000000000' + DdzFFzCqrht14sAeB9ErJbz2aW2SwLekBPkm411UDaKHoDpNsZf7U7ddJmTxFqfeXFs4UhwcYzLzBc2L34dxtsHqKzQsVumtAUdPwdto: '100000000000' + DdzFFzCqrhspgqqqhiEKCxcE4uKkhG68qMmRqWqERbrZrt8DSKsGeUdA1fiqEhxjA7nh563x3arSftiznjasoEChGHYwfMMJxT9kvDwM: '100000000000' + DdzFFzCqrhsuteMNG6kTVgRHpQTbc6qxicZB5to9mbDTVeE5rt4WyCgJ9AJ7D7oXFgGM3kNs94jUDx9iWHGocry77DtN44j84KJ7MuV7: '100000000000' + DdzFFzCqrht3tQFfScPr9a4p8KsxYdzrDY5upr4mEcrmWaDkxqYnVcRjC8AabojAbCm7xEZbQPtdzZUWZRrFve5LY4HfsDV6PHhkKYEb: '100000000000' + DdzFFzCqrht5NCk6JCi9C2yzUQ8EABwkP6NekyAcvq6Dy6iQQ1obiXTpu1omW5p3h436W6PqiqmKCXsaaLyCGa4zaeP3HgtQdRVGPyyW: '100000000000' + DdzFFzCqrhsegqFLh5p2m5f1E9DgV4zYkLD9Vua5M8sywqYjwtDXTqi9HMjbF1xhnPAWksngEv1jj8B2Db4trtnQNi6yepJPpu6p8xaa: '100000000000' + DdzFFzCqrhsqPtXsi9Zn8uata1pvR8j6C7cZ9SJCorWjUsL6XG8XFWPooyeCP3JAn3R5MekSETGGVLyyBDAJN2DsXXrPojGfE7vZ3CpE: '100000000000' + DdzFFzCqrhszN3ThU4DkZL5ZiQtBerpyPN2ajtcEctDGeV7x55rigdPAKr2hvs9DiMV8EntV7nABeHNMNEZYpPqTnYoAf4sJSoKw6ALr: '100000000000' + DdzFFzCqrhsogHAxvYdHo3kzMTFAzMqXWzUp4f2GTGahLkStP6Yfm7T5N1e3h1DNNhkzgtYBPifiRjA4n7DYa8YPrcn5GWCkBbscMYbx: '100000000000' + DdzFFzCqrhsz2cZ7NN2JuwVAxUgF6VGFNLBHDQRYymMb6bpUwRM5vcYkHqvf1dRf7kHhh7xwViGideH28ontY87NkWAYedQtPmDs4Qnn: '100000000000' + DdzFFzCqrhsnAn2UiEjPYR6EbhETRGAA7Pbtr3DRdgWgzURD4iy1ciUqCHXNAJKtU2vD6h3fW3JFTFYxwTZps5bTZG1NvkL5Q7XkfX1N: '100000000000' + DdzFFzCqrht1cDfX6cVfYuK5q7RTCwattixFjdR11vxJgBnk4b2Fo4nNRFWmVAsTkb2XPkcb7zafwAPmVc44Ff9yNSfKdt5LyxA3zeYt: '100000000000' + DdzFFzCqrhtAsM7ec1Q79KN5HJwxfD5ZpEDzDjsDrdgazr6nz5kvWvyqWWAuuFUwshhJqvKHPZbbWsqSFBy9Y3tkPRQk2czYa69JzQSJ: '100000000000' + DdzFFzCqrht3Mt6Q3iAy9eTy9qZfZVVKGE7jejkeV6BfJS1AD5hpjtHDZRH5XzFV35aD8YDaKraYwWVzTZ4H8FxgCwqWCpyVfAfSyXTV: '100000000000' + DdzFFzCqrhsgHACZ7YZ2KdXj1v55refKj4BbGGGytahQvytEogJ14byAzFrBYWo6GosDak3npUH41dkUaV8f8iNHMsQRT7snPhC17PSy: '100000000000' + DdzFFzCqrhsjxFrHP6ynjGdg1FwhtcJNPHRQ2hkqv7dL1ZEtYYAa16KgL3Mm1tFod46YUdmWvFaWib3yaGgnKStCGQhhMVnTKZupNMnw: '100000000000' + DdzFFzCqrhskQdm6LtmQDD9t7J1TBTDVnCuopEWDx2WhcaN1TNjZJSNa2uu3VN6jpaFejFTUkTDzHfeUihkbxbk5w4A6KPATbgUn9Scb: '100000000000' + DdzFFzCqrhsq8GeLkWw54ww6oRx6GDw6VXNBH5joZAt89FcsW7FLZTfauhBagkLxQ29fEC2KUibhQdnnNL6wiD921srAfyHK4Mn46YF3: '100000000000' + DdzFFzCqrht5CEUKcBErFxVKnV4tuuuGxfL3yH9oScHsZkHEp7ZkSSziDE6MxFwdNKrQ9TzVEPuAwwLU1EhEEw1bBjcyhPgDSMc4QaAA: '100000000000' + DdzFFzCqrhsvMES8UtB5f8JL8WLHGdPrFcTv6bmUkqK7iEAoE3NbcnnCwVX8BuLyeMLZtuWi1YiUkc9ERiTYDZZDXQxenY5XQG1wT29E: '100000000000' + DdzFFzCqrhstBSoA3mpa5RBZ6TseQ1bnkvBeug9arVZsviGgCY6cSTrRg78NJ7gAcs71AYNrc4yVTpSi12GXcs5CuvHPYz3ptxEBbean: '100000000000' + DdzFFzCqrhsq3UxakcFtKdFriXGwzRyBghBp6njmD5nAnpQ91ubcjxm2pGX7DW6ZnHupAHDaU5qQKN6esRRYG6k943qaK3X8iiMd6ru2: '100000000000' + DdzFFzCqrhskvjfPki1rtQUm2G5e9BEqCzPK6Le99XQ94CGxUBqf1yHJbLMuEnGjyK7rW4RNqvfv1zzrTnQQW8rXU23DHMWtei5oadFq: '100000000000' + DdzFFzCqrhsfmKR8aCiwWVTUE8aWApRaAFNsqBPiPepkbLPQ7e29nLoy2WPGN7zkP9fmmXgPUVkXYaJRQ1cQXa6PdwerzFym8V8iD5ys: '100000000000' + DdzFFzCqrhsxWD9Npxa1AJryBy14aaeYpq89qdNEFjwiuWm4U4C5WJgjsbUgQF6mHQvWirt5gW9f4osKp5VPJYzcjVKyeiCRWs8Qp7Lc: '100000000000' + DdzFFzCqrhspGf59ii12bMaVPUer3zViQ4mAD2T4arK7GwftjrG5HmTRVpmRADwpFe7zktWFBt1nkxqznnLMiJr8KVSXhcak6p38Sw2D: '100000000000' + DdzFFzCqrhssPTdEzqQ3FR45czq9AChvpstgdAAb3w2qVG1XNz1Ev4cGwCZERPyNRhKbPdq36puHDYLjFAhuQMTMJXcvpeeMMFd7tdN8: '100000000000' + DdzFFzCqrht2cH3go3Bz4YYXXND7ASQXAdSgq5h1Sx2hy5BJgFEH1NkSJCX9XnuCfb9MExnaiVRw1Bk6GYXq5GFo86J9akvxeatD5L4m: '100000000000' + DdzFFzCqrht5KFdAHE2Ly9haU65WpFQDckd5XgH2YLpSttX2tJgceGiUfeyTL1QfPAwUgiiTsaHxfAmaCUdW7sBnfA35MNsmpoBJqQ1S: '100000000000' + DdzFFzCqrhsjEH72Jf1d1H2mTpHBRzKzTy9rWkNhxtniNVCaoGSQxSLkJ9aM3UvkGLcseiuvHDeUe2wgWVFfNUjHMrPAN7efFDKu9HYA: '100000000000' + DdzFFzCqrhsdxnxLx1kz62Hv2T3PQWrGSzq9tPmqdu1J37pZbyatxYLu6iEomoi3b7RdZ3EYHAYG71ydt41gV3dMbrmYgnavK8qz1R56: '100000000000' + DdzFFzCqrhsw26CfnwSSgjPJkCsMC8u6eRmBoem6d1L7nSKV2wtyAYV3hqfTXcnvLeeS6fdVn3bBcJegcHuaCQihenQvHBB7C1z5jVSF: '100000000000' + DdzFFzCqrht2kUc6LtTMRAfhS81S7GHMcg8uMWca8zeZM2KS4fZnbtSeGj8Y3Aqz8QGdhKiawTcEieTp1RQy8DUeB6myGCcGKeohcwFy: '100000000000' + DdzFFzCqrhsvFagd5L4yJMCC5b2NaDyQ6i7jc2wFWzQu5kkZ44oLqz9Egye2k694iBuuwT6rRUUdMWYv1KVzqG6SeSv7rKgWZNFx3Muz: '100000000000' + DdzFFzCqrhstQfMVyRgzLeXfethXexEXUbmCQdNLYPpGWvg1zQWfh7wDEGy4QaTeeMbQ44RZvnWZ1So7yzzyT5UBF6cseZiUvWo9SPV4: '100000000000' + DdzFFzCqrht5n8w9UUgxpA6BbnzGPzWob6xcCmJtsNCQoyhR5RrGQndz13qATgrn3pQ5zmyu8UijyuGqbAzEB9RfGe1V2KSCcjCwVgyE: '100000000000' + DdzFFzCqrhsqmM3a6jUkdTdWx77WGbveL2vXjXr1edMKgDpPVgN7piVBcTTFF3vorbhoJjktnp88SYDG6U6HiHTxVHy3XYDKcvQdS8rp: '100000000000' + DdzFFzCqrht3WDVGybgYuzdJzrJMseMJ8Kau5qk5phLPGPom7b6aQ3YgCF65o8RjhtffTmLAk2pvrsnwdNfrusRkqeFyQ7ZWfHmY7e1A: '100000000000' + DdzFFzCqrhseYnuqkz3GJTeBbk81yDiEaENtjmbpmjKpufte5KmMBXhpoeHGNKkZ5rRg5Gu1fkT3frwLhWy9wem62YyWfZ7tfzTVzPpv: '100000000000' + DdzFFzCqrht6bNvuYSfPN4jahmSB1Uq6G3UuvawUC5BPcdxoT9ASH92NV3VkxzQFpCx2swnqY2tyJ7siAgZM54V2S6EEah1Qsd1n5qmu: '100000000000' + DdzFFzCqrhsqsX2poXx1YgSd1s2ezQtmzstWJ1dXCEKCAz11LwG1wUKP8RNBPSPcqQ4mPwW899KZNWeLHJP5HuEonTL7USphJoaAozAi: '100000000000' + DdzFFzCqrhstimY6SK92qRmHf841S59MZXiypJh2oe9J5pFgnGkkfT5b48y1M4GgsCkZ6qYtTqJZA5vNd4wtGhmnwc7B1sNiRh3U7Rwn: '100000000000' + DdzFFzCqrhtBZLXzf2ev6kWwkjHjdQAYuiou3Ew3YZaFYMayfPLo2gMRs23R6dCHMDbdXNes85CmeLbXy66xo2s94rnAiGHDTje9CrH9: '100000000000' + DdzFFzCqrhsx1uqRpmhnXXd5AVioyDFiCxG6E5oSP5wDqESc49sSgkvxLBPZWb2pgXd982yoKjJMg41UqMCrSUjz4mXEhbHRMuUkAiTn: '100000000000' + DdzFFzCqrhsx814uitj7SrP3cFiunmghewArXvuUFGdekaVKUNf2ibKCDC7MWWqSvviazZLFS36JKTYH4h9KV4cfwPJ1B6x8YzWprxrT: '100000000000' + DdzFFzCqrhtD3U1gBCqLH1oTm3woUnRc9QuGucApBQfrR9Wb2Vom7eEZREL7r7qcPjyA7gmYEP6qMByLQQJR6HdZeU3BXhdCpjh8BZkS: '100000000000' + DdzFFzCqrht5vQCL9uJLZbrcUNHjPveH69TAj8HMx6gAcnbfAA18yd8GbmTLqj16j7encGSexZgy1my9Jh9k7sjkUJGfCpWkaGy3RESa: '100000000000' + DdzFFzCqrhsfdjfkngqhpt4jWALub9s31U1iGFzKYAiwZd2iLpSVdywEdhU7YWkN4bBhQYGu3knBU4fUT6GwhWg75CKLb5WF8dtLyJXQ: '100000000000' + DdzFFzCqrhsyYfBwQ2CK2aFg5sS1S1CnqkYWiUvTf4bL6aKZTb7DTgvsus5jLaW8sQPbbLCZUFJqjKh3Exg9vGMfgEjFewkjcgSqxpce: '100000000000' + DdzFFzCqrhsirqaDrY3GEHudjBKKbin1YFxhxsFPpfaQkJoh4gKJmuWZTk8yVPSENhA6jdVW9AdXrudBWXr4zeiZtmbPqTGzzPXHrJ5T: '100000000000' + DdzFFzCqrht3FErm1LHLUtvQPzrE61TPoWg3dvCaPRiTQ5dEGJkiZxR9eKqx9knhFkYBj7fmGYaHVkX89xvtkprepfiCB7hc79oWfqao: '100000000000' + DdzFFzCqrhtDCtieR9HLGjPc3mvo6njY8kBwzQD6kQhf55zP8c6kcFz2B1S49KkxVymxtyLpE74zfcMCuSUTpesYPnWMrN2otyToYxRM: '100000000000' + DdzFFzCqrhsxFsmvzPJCLvV3UYHtR8xKZC2JLJugTQ8rMjDj5jAzoRdG3Z5dHzEk69N7z6r8bYLn3TV9Lbh99UiqbLAA9SvVeEapmJ2e: '100000000000' + DdzFFzCqrhsfEhPt2rUx5u37jUchKeNcE9EFKVUxNxCbRUHQFtwVcVJKrbmckmdhdtMpRHbvBpt6wW1ug1JzccS4Kn53FLH7iPhASp8q: '100000000000' + DdzFFzCqrhsr8kEgE5ceq2riNbJEm9jEeXU77CfFQ4bhkNjVEbea4RDVsMEbrpBA5xftjWK8wKugdxpPbMbW5vh8bjNPVvstP6L2MKBT: '100000000000' + DdzFFzCqrhspYmmcQ9WUEmmr5hiFpdRspPbWp4MD95E6knR1TnmW9KasGAXSmA5QkF7GkPPCXrUCVHUvP2ayVWCiT9QFqyrEUJPCNYQj: '100000000000' + DdzFFzCqrht8vv4HdEPw7kdn5rDd5CLUXfU2M8nCv2oaeSVvyi1fuzScUZy7sKg8igjmphPedJwrUraatb991z8QYX7BU2aM3ApivGBx: '100000000000' + DdzFFzCqrhshJv2hh6tQu35TGhj8CQpNHKCvEJYrdthkwUkX1CfmT3ASAFrHS1eEKxgxeeJKNciziGzNNLHcTAvZFyxMS9TmdstvHEEv: '100000000000' + DdzFFzCqrhsjp3PvdWZpcpsjjPJQFWosszkn4dVxVom9ib35B8BUgSj7UHSeUeVk9hDTSY5zVRJvGCBWwRDDS6XyPXNBKhrVUBF7rUUy: '100000000000' + DdzFFzCqrhszS9FxeU1gK1veSwiAazL5i6PJqxL79bzxFtik6oUvXhCaMRWk6Liznjef5FyvfqMJtd531ZkARDcAsE9wEUCywC3um2Ka: '100000000000' + DdzFFzCqrht2Hmtw1WRzqgnRHLHc21erPB53aJwab67UAaHay89fMiJqQ89TB4e149dCRNDsqacvYm14yLVRSPEbPAkF4D6qTziYEf34: '100000000000' + DdzFFzCqrhskmq1rWnPEH8AUWqJuBXtRMRrz12QkRjWFS1eb6zkq3EsjmXn8WyU6AZHWWk6SLzre72qqsFmfUyASHHWjCophUNQtZqEp: '100000000000' + DdzFFzCqrhsvzDsvN9Sv5ASJo9ALQaHCpTr359qMhybZHJja74anQDiRSkFWrcN5CvsreedBeewJNNnAjBTYsKWy4dMT1zrX1uCGp5GW: '100000000000' + DdzFFzCqrhse4U322kYnW4K9V3p5DoE6Z6oYNLsyfztQn6kbNxvpyrkixCoGB4VFZzFuHAMCjE5ueCPSHPbz3JZPG4iUTZUu1SVyo9qM: '100000000000' + DdzFFzCqrht4uV7aS42kcmGAW5SGNenww7QJCa97Lez9wwPGqT7mADBUFrCUjX82ftf4hCVDENqumXfVKPpgErRMaynt3nweu4bbeMbv: '100000000000' + DdzFFzCqrht6o6uoFEtsNDPFRFhR4DmgSGmCYaDHAzcuV6PtyrZkPJN6AMbiBE6BkBGR4aioUYdwFVBgxuTsPYGjypZ1kAtXnjXQQEL7: '100000000000' + DdzFFzCqrhsjFqjm7WR5ZxnCgX4rUcCtK6AKTtfxZ2nq6mG6mh9JiTjVdQw5UZtaW37b8RUZcaH3nzES2jme2bLiiWxLQ4rYmW5tMJgf: '100000000000' + DdzFFzCqrhskK2z1eVbDqzMpxcMCa6VbCwoX21Gq4SJYkgAYJuUGbV3YYfy4qDfAoxKcnGbZw3dFxG1hmX7ciYP9NSoci7gWjtzxZLQB: '100000000000' + DdzFFzCqrhsp1VCERc9JF2Z3zxCmuFqCb6unSA37mRhfDtoMwityiMu94y9bAjdrfw82eLCG2Gma8LurTmt7VS8hPh8viSmuhrhGQYrk: '100000000000' + DdzFFzCqrhskq2aGJFn1ktTs7QxEkGR6fUyEX4tnGkMqm6b6oRaU4ecjS9pmALGpGQE3roBPdJcitu7ek89WCvDmPc8BrUwandzXrjb7: '100000000000' + DdzFFzCqrhtACHAaVWPhDNEpQELtgxC1hKJhvmPMJxDmgW4GSNBPfTJfQTUZusdAcR9raHgFa7Rc4GjpYdEfY2adAAXu5UtzrQDhgmnu: '100000000000' + DdzFFzCqrhsuFkk97VQXq6LZD1SxEHvu9QAZCghaEnqugvvJEVismR5unpPpoAphVXSSarBSB7CQNd4PdtgkuyrQsW8hWTZXBgudX5FN: '100000000000' + DdzFFzCqrhsmn928sFHooNxxqNhfN6YVxyhVT774MrJpCwVRFHaf6wG5SCbv9NwRyRdFoeWEcD7fX8XiGmSnCgosU3HEmi6iGizEDjvo: '100000000000' + DdzFFzCqrht9Rx81VgehV84mqJiyWkNkhP2n9Jr6LEvGtXCPeDsX5zM86JJELau1XqRRvGZLTA8Ybsu4bim2kCrSykXiw4yHPeQ6zhJW: '100000000000' + DdzFFzCqrhszsGjmn6TztgRLBLogNcLSQDnhaQXqHhCv6J1CBVSuaB43jKVp5NcyBPYdw5ScNaDdHUMsLEtbGWnhym42zUEkMg66r8UY: '100000000000' + DdzFFzCqrhsp1fdrEw9nkeR72wNPiRw75ayiUtGyiCvn5T1XZnhM9cd3A42uX4gGsfXHtXMsJ7WUMgphAT9aX1Cct8bbYbBnsGqtbpgM: '100000000000' + DdzFFzCqrhswseYvnMZtSrdXQd1B1oL35mC9eUKGZvvESmBDSx7EUAH2xoAHtKv3T8bUz9GcD5aDqMg25tHpBx8mhDyTbN7vxRSPUGQw: '100000000000' + DdzFFzCqrhsmGC46MxTWh11T95Z3MhMG5m5S51z6Eatq5VGA7b7wEgH7VJ99uVgyFsUx3T212neZbS7WZQxoeFMNLMoPHC4PvJDyKuLZ: '100000000000' + DdzFFzCqrhsuv7nZw6AKfE621zCeggTMT1nAckJbp931rgnHxj4cUG4KfxLg4MfJsvNm9ZNcRAjeU4yH6HrF6MoQpMFJQKCRG7ymXtEJ: '100000000000' + DdzFFzCqrhswyrxiuXDhMYvTpmUwowm7nBjSBaq2sVogFF5KMYLfniumZGV5GSKmTnE3HDUEcg17SFsB7FXSsCTB31JEEtwpCS2EhoW3: '100000000000' + DdzFFzCqrhsscwofDdwRdoug4Yj43xVMTRqSc87Af8vWvyPL8ctmY3YBZbHNf7pkKv7rYezPYak8gFqhCof37ZVR1JM5QpQMqsM1j1Gb: '100000000000' + DdzFFzCqrht35BG5VRCEb7jrS8Zm5eMfFNo6HwtGr2cx6FGDdZYZMAnmaSyh9yvMdKzpSEJsWcBrQPTXqkLLh7Kr2sxr8sY1PJCtMNq4: '100000000000' + DdzFFzCqrhsqcNVurMcLit9T2ZCtGaThHqDtjiQk8XbUwTWwpzELWb7kL5m8pxaunQFxeB6QQGgeo48gcmqxw7SZY8Eg9XYD5cZ5uKVW: '100000000000' + DdzFFzCqrhtCQeGBhZT34bctGEd3DY86M5nYAFomdnaBLHMizEbNNcbqTpywmHazqob734QzFU9FLVkEPWjxBoxeAFioQvHHSJsGpkbY: '100000000000' + DdzFFzCqrht3EWhQFghHH1TPiKPTj286dcAq2QhNSjPe34ZqZo4HYcnUJDQFapAbBvXqnS5rDBJXwZqSLVf6t4FtfeBDxaXtNvzdT7SW: '100000000000' + DdzFFzCqrhsdq1PHyUk3DcdR7kf54QpXLGpJT5hYcDLRcxaWhvNVrCsqu6GKZt5RPjbV1Q31cBDCsVVMqg2xiwk93kSXwnQAn8w3LK3K: '100000000000' + DdzFFzCqrht4bPYAu3rPj9dNH584Ms7pBfPPEQ8cSLouZ5vMyt9k4Z8f2iyATEq1kqp3n8Rgbw3iFiLxVWS1HiZSuZ3ogUHzrZjf73Uq: '100000000000' + DdzFFzCqrhsm8HcYs4oSAFqbNqE4dmvtwjZXgaBHJJPNeW8M35PC6tMwnzcvP8k93YvUNChnYPzSNvsivXbWfYEDFFPLWpf3EUxyAQRd: '100000000000' + DdzFFzCqrhspqVPRJJ82goLXmwUWgav3VKes4QR3wpJgBfF75UV5Z57gSrvb8Sikk98X2FK7j9rFVts2Nz78pL8sFEQDyKtywyJz3CUM: '100000000000' + DdzFFzCqrhsoedW1ZV9sRi6fiDP3fijjdwBScYQL9LHmjttTW3qeACHKHmAUqzmTjggcxt9gcz4mMxFNYGJkhia22aaUTyJQqHfRbJBY: '100000000000' + DdzFFzCqrht1mTMgt8AYo1RiZYPHE1KZ6mN2DvEPper57SgFWHyqozbXoDPwfqcqg7j1PKhU2Fz6Ts1kKvtTy3adQBM2qzLpN5NnMLPg: '100000000000' + DdzFFzCqrhsko6ir4rSwzXDvTMGD4hsijQxvQYw3Xb6pftKLnY41j4Eie5T4qHeKSBFdxNDEyCpbY9Dzjy7FFstDsAUdTe63JEAYccvD: '100000000000' + DdzFFzCqrhtBWQZs4fZiv3ZH2awqci59MkYCoS5VXK2hSZuGLHnHvPLn1nNPgRf1eyZW1F3uKHBZcphbh1G4PRzDsxpxLF55h2Y6Ds3Y: '100000000000' + DdzFFzCqrhshm6GhHtsgLgYj8Ww76zZe4DV5teHjAfrtezrZnzLHeneZDU9iFujyJ5N4QT9yzBX8RKDHKQn2DWp2mY5CN7t96Ym2su7S: '100000000000' + DdzFFzCqrhsyt33EA24bfsxWeQeRmxqkKCPsq4SXmDfsV8mwEcMeveXsaJpXUXBn3Fjrt1vDtvaECjWspxKo4ZcW9juBLhzEYx9HenLY: '100000000000' + DdzFFzCqrhsqF7uoaT7xgeMp9sAf6nTYecmdsQWxZdFNyDCmczaUn4wCQLMJfxALrCvwZmJpkVn6ig1mM6LFX6jcQRsMi9MyRSjM9tur: '100000000000' + DdzFFzCqrhsftvhD4KEfsa5PXhtEXf1K3AwtJnT4jXDMMgEEAD7gVsK6YKb5M8Phk6cZsuFnoBoDBHdBtGJngSumT6DS1iZD9xSbbFSK: '100000000000' + DdzFFzCqrhsePcXjw3jMJtXX59Q7LTTeMqXjRNas1Hcg6xEqAbL13HoWTv3fLJoXQ537GiQrM17WLPyVEBSfJiWJ4qRTdLZhUnoTwZmQ: '100000000000' + DdzFFzCqrht598xTNcbgJnUvKz8L298hdPYdx3QuJiC9MvszQQs3WNSi4KDk6cWjzZTuZNJcMRKmKNHpeBeGoSBhyjnnQWNJoxxhqxt9: '100000000000' + DdzFFzCqrhsuci83wQjAuydNm37t9qrmPf2a15kCbnnwTo6j33ZfU8YmK9ekc1n5A5cGcCgAkXZeXMz4R9hMnm5qWvP3GFBjv5hbXs3W: '100000000000' + DdzFFzCqrhsvTaSoS3EK7hc6EVjVYFA2jyKLsb7Hwy96Q2dvJ3nnhdS5Fayxqmp6nrg1rCVr7RAojgNnTYHX2CBZ46zFxCmgs4wwkLqC: '100000000000' + DdzFFzCqrht4y1H2dmZjKLicsPaGKiV3nbgPDy9quTkibDWyDxkHJdyQoCjEsNYwTa6MVT1jCpdzmULarPWWDAHgRXLiRDmB3ELhWrbt: '100000000000' + DdzFFzCqrhtBMJt9hwoGbvwPvfJBQCUMkkmh612kbdAsuW2b3P1y5Tmd6Dm1FYYhbVitQsxVeV7ErfPKPYCP5eZ2GKmeqawNWsVjG7qb: '100000000000' + DdzFFzCqrht4FThHVnPfHeNa9nHgk6hiH5oRyvKB7oPCF4JTcrkAGWucFiPvsu6ghq9egZNpLvFvcGgjd8a4CgNw3fv5PAsjc2eF1Mu5: '100000000000' + DdzFFzCqrhsuK1xmMjeNjp8iNhNmDRLmVSRJddNMCnarR2Q1S6QhZH1CrKAoQA3uTRcu2uUVB18jFuscFVan9wfVLv9nMiHzvzb6EGiU: '100000000000' + DdzFFzCqrht7xu1ThbvWAGihXyoAZSfdRZbZaEvoVoTQ218tzjLCVVAWdmKEnvEXnDtSvS5gKJ26LR94aXjwpkZefGhZPipiu6xoQVBS: '100000000000' + DdzFFzCqrht6h8wFKpA4QZjACXa5ULSNnSMP5JjeviGB3JiFvqHiScsA1EMMERBUF2z8FsEv1y8iFCqCLx2o8iG7vNRf4Ego78Eid68v: '100000000000' + DdzFFzCqrhsz55qcBZWT48xn18Stbms8KdULWBh147jwTStQ8K4ECj3BYB8uSnegDZ2EzZQKkcpstuqPS68zZiAUNJPqFN24mEMoLtAp: '100000000000' + DdzFFzCqrhso1S2dBxNyzg3UhRzPqW9jAwN1Uy8GVZPKMXXLsSaFw5hq4MRSunJQ45gDbsFAQFwF3ZcwFfozPpkaeHYVwFZEL8bA8bhe: '100000000000' + DdzFFzCqrhtAev96FEZw8pZVRUFEPJThZ27Gtm9mDWVCt43RXo57FMuF9ZFYztyQ9QJM5KqGd1BQyzdos4gdaYbyzoLXtGxJGYVYoJAv: '100000000000' + DdzFFzCqrhsecM4JhNsDQBu9iS64LGGFMrGJrZRA3WDDa51bAVtY9VDRSacwP3nNURxtCbFXpFPGaMJnCRknTYyupWt28uUN3hbakW1T: '100000000000' + DdzFFzCqrhsf3RjyaGJ3ctLEdfZMr8SpHnbGTUzEXxw1V8uENw4N8BGEXnpJhVMnYoKyiYvvHQaNNhpoo4ZpVt5gy8oXiu2ur96RUSF7: '100000000000' + DdzFFzCqrhszhC9dk1PDjBNeqCwrkkZroQrmoXhn3i3hhsBdmx7fi2uSYFs28VGjurXxeF4Ve1PAYVa8MpSZ4iDy3t3pjKf1y3YrNBoV: '100000000000' + DdzFFzCqrht5ukJkfXpPgoQHWxXJP3PUjXLg126hSLWyz7DDubuFAsVoWGvpXhcET3B8RVk6pT3ffH4TWP166Z7RhDbawDKWUVmcCaDd: '100000000000' + DdzFFzCqrhsqyxfVji35rFdco7BBvRa2zPVHwX7GYP6ruYsnS5ebhrqoZFPAg75rXVEE15UJgEyMxKcbaknM5kvfmvYMMs4ubQgEm2sJ: '100000000000' + DdzFFzCqrht8N7Svk2Vc9wuCkWTk2WvET1iRxwkakR31UWDp6y6Bz8sJtjSRGjBWbjiaMGu67iS16nSpMMXZ25b4aUZ2BYfdzYeSgsek: '100000000000' + DdzFFzCqrhsqSZrmAQtW27JsZXzCZKekUBEeNhtorW2TcKg29MG1xQkuzif6mJGycsWBiyv3YKw7G5tpM3UvhhopuwPx5tuuFPNXNWDz: '100000000000' + DdzFFzCqrht8cxT4gBj5g4FZ1Nih5PRfe12mv4J8m1PpDd4LofMihn96oCfbhyh2gZmBrERwptJUD3wgVYhjMuK6z8QsxnpELRgtJbmj: '100000000000' + DdzFFzCqrhsrhPc7AgutQv9g8TUF6UQNXMDFqq1Ak3pQvK2cwrdg5924TW449hhwxFC8HcgSiJFDwsHtW7hc44XpKr8VNMaVkMho8Qpc: '100000000000' + DdzFFzCqrhtAHYHESKJ8qwYy5QKyGMHBsN5hKKzLDpPZo4YDDHqnbE2KGMy4m98JEvGWRbQZ4K6Lmpnu4jiwKgeiv8Xb3Y1k21GkQNyT: '100000000000' + DdzFFzCqrhshWphRtzfuCWYLJjgUxdH25WE8wtM5tSC5oQvSEHmBhXEYvp7oPtsn7NPsVF3vpkFgNVkNzkAzz7dSnVpGcK6DDR5vjYLB: '100000000000' + DdzFFzCqrht9gED4v9iCwctdj1GmJByGLZSESFXCmW2LBS6uMJAzMmmgph25zphKiTaMy2Sd9qBSVYMDy4FiMQgNHjgWnQSZSWynTF2W: '100000000000' + DdzFFzCqrhswGabYQ8k3qENLQu9zDw5wzeCaj4TqKgoUSdCaBGCdFWTQmvwn9zexmk13AVzus5GvQRZew49PxRAc15KAXzvkU5w3XjK6: '100000000000' + DdzFFzCqrhtBKUS6RG2zETFgi8Aw5KxgXpgaiiCs7hMeKmouHSaQi9Jpyn9N1N3rZUJUi7jsDCkuBDdtsaz6ZT2Smz1WxbriWodvp4oU: '100000000000' + DdzFFzCqrhsrFpZrnR8p5nDAp5w8PVk6CHWDfZNF2G83erd6y64TK8bmHHfSXXiXZAmN2xYbruEPFSoh9XFziSWTdpUNn38UShYNwidG: '100000000000' + DdzFFzCqrhsoFMCcVAtQ2xgPLqV53CpgcAZjxTLkrqzrkGpRVwU21gqeu9zUi4PyxBdfEL8gHdPsSF7DhLuU7cseB4hVbjv4eX6EWZLe: '100000000000' + DdzFFzCqrht3hR8rWXM6RTp2yTAMk981YZdenZQGWpyiPwXRRCaCWqJzk13kfaP9LnLrPY34cSjEe6mnKQDvRwyWyannc5MFB9wSE4wB: '100000000000' + DdzFFzCqrhsqQ3S4M4GrJ6xzSD3HhA6XpEjUzRE5dKmfmaWvdamGzZYq9h7ZSDM32zr4Mja38zso8qFhJiM1oCTckjnDEsUDxS2MGX4e: '100000000000' + DdzFFzCqrhspJvB8ZbSgbQk4kkr84N28BVieeGDHQ3mSxreLQaMdWSk8M5Nt2qXdQ75Cpj2VBgXmupkoRjGbdr5vYHnhD5mduhdZA2a7: '100000000000' + DdzFFzCqrhsm34xyD3JT9kebupvpZMGNvp9gsFfChjGPMZ6Jfqj6jVRFV7wWbvVDhLtcPQrzvkNDgy9mNkfzZGntfGgLdHmdkHC2VjPD: '100000000000' + DdzFFzCqrhsuXrMEpjhkHrWAhi1AwYEAzWjS8nkFSBTsFxoUSyX4rVExeZYJBrsXH5WtBBXBbQfSL5JKdgD9PezWqU97AbhZnLWiu2wc: '100000000000' + DdzFFzCqrhssp3cHWwX3dbpmbT6q7NM9NMHrLBXXBPpGcM7YiNxCNCWttAWspZuhMMvvtJhSHj7Sz5GopKGqBVNB4s4wcEaFNXoG9Wt6: '100000000000' + DdzFFzCqrhsuZGbagphdmToSyBfShaBenxrGqb6AyG6afNZgVianCQPF2xTdrqHGMQFSrXgUSA4G6745reAdUAiHapeXW95yGsR7ZdSJ: '100000000000' + DdzFFzCqrhtCyezYjfeok8vQc1nhaEXt9nES1LcmVM5f37cLERJtzP4Dyw9sNrBH5q8FgqKajVFX8cD2jqNHn34rpPDPRcV3NdJHzXrG: '100000000000' + DdzFFzCqrht12QSQENL6dgBqh11eNWHziyAgoYfjs34P75iAV8iFyLGiuLPKehqw4f1r9M2sayNxxJ6QpCeY27EFQtkwJ1xvyLqBsx8P: '100000000000' + DdzFFzCqrhsjmVaxFq3LqaebaWp6Q6vzf1Pf3JLe1sX2iUkAAkzbF6EP6A22gWfN6dDjU4eMWB5YfyGNQ5xX16WMG1MqFja9hv2gyAqv: '100000000000' + DdzFFzCqrht3s6trpmevq8wY32vjMe9feXVJR73VvfrbzVd5qM8iTLyDVKYfynoTsv3VjgwMLGEu9ZPeUFLHHzQPec6kYUYt2b1Tb28R: '100000000000' + DdzFFzCqrht73tSGrXM34JSxYSnYfaaXeYXPc6d6iNeExruHXVmZW8hjExmNqAy2WatVFyenpQBZhFf8YePrexqmN87Cc8gUeuH5b5Ds: '100000000000' + DdzFFzCqrhskgLs1wihXSPNNF3oVJPc3GvFhsgiThv2nohxqBjVWhxPqoNSsRdDyQACLqwuG2rA32gLVM2W9K6Fbn1k1APs7PpRmJuUQ: '100000000000' + DdzFFzCqrhsmnVwuUHTkYbUGDTHkdGXKxP4UZbfkDUVC5P5RTTXYPs6tEGBeFTmkvZ1JT4Qvr91WZt3ACnxYXKh7zDQkDqa1XAehEU9u: '100000000000' + DdzFFzCqrht75PZoF7J1LGF67Z7DzdPUuxx5hDohvcv5abfBySf9Tf11BQ768m8QVoNRzhs7GsAmHZgjME93YLjwhN5SJ1eUoKQNH91m: '100000000000' + DdzFFzCqrhsithh7MYQH3AVcAEtm4BaQP81SZzrdYEXguf2otCZb6PMrLo2fYDfCEvozwX6bugzXF7BB5U5kQ5gueeMQXHjjWGV4hCSQ: '100000000000' + DdzFFzCqrhsuUAmP5L5UH5yP3UmxfSdUNRAAr7dRz7T4EzK1x9y2PyLBexj88AM2xnvX8hFCtGtcTdHvkzrzjScwYR3odJgXomks5tZ6: '100000000000' + DdzFFzCqrhtBcj6beVnGkn3X886MS3X4HsCvztkxzibwD3zqm4EFDfUbbESeVT5Q97GryFhrgMBFrnTT2CTsPChabvXbnYfi5DAfUrip: '100000000000' + DdzFFzCqrht2C8t9xzvyso8WdFc99MBaxQTa2KiFanCNhjMwuU7XhfSSdiM13KpP9r4ZLJLvCmZAngh9FpxYjgTdmzCK3roAxJNMD5qU: '100000000000' + DdzFFzCqrhseH7ZxVicLqNLFRS6tHi63aYDBygFHWX7kiPi4WJjZLozmTnyPnn36QvzwLn8J2D3ZpffUUiuPh5MHVU77kAM1gJRZTUwt: '100000000000' + DdzFFzCqrhsvs8BUJkUjkezzNbPkW1UbvvtHQv4pRsJFn9swkWe7VNuYbCGZpL7APXp5wUNfQoypDjvGFtTQ1GttA6yhDEYBKUMCMGpp: '100000000000' + DdzFFzCqrht1Sdu3bWsFMW6CATc3RA8etJnh1cW9yqt6PtymxnSMkywKn7pemzgwAixjPfQtsPde2D7K5tB6EhZiWx2TakFWnRPa6Ry6: '100000000000' + DdzFFzCqrhszNktP2h3X4SM3Fsgj7fsi5mg2wRpEABjvQbUBz4kr7zUBJR4UNRj8BNR3xBcrqRHPVMwqB2ZM3ypiXbVmQrTXWDxRr5C4: '100000000000' + DdzFFzCqrht4nAThDbLoesmynPijtqvF2E1qPWXTqUvxdBxnZDSYNWQKR15zmpMyqPppYXgJszUa2w7v8Pe4iJNuFE9vhL8BaWvv2h8X: '100000000000' + DdzFFzCqrhszqtLSk9Vn2GhHkJpzhKWgigLSEf2a29EuuaoFLT9naACVqRMbo2sUPQetxj7XyuQtDcNzkYvJm3cEazBk4YPnRhfudJU2: '100000000000' + DdzFFzCqrhsobennBPaegJ9DS7vmpLHsHaMRSzjpkHcGET3xgk46WPsBZPLj8muG5uE3RYHg3ta12ApWDuqb7M1pVqRQr9PDjvjfW4zD: '100000000000' + DdzFFzCqrhsi2LJqKjzjx2dPYoVeNkZSY6xU3ExFSCMAqjRxhsjRqChk83SgnRR9U9PNkUM1fUQGsHPWwE88RDoCEpXBKswnanCFRF4s: '100000000000' + DdzFFzCqrhsvNLeV88Sca18ngaoXZMj5AKrAuiArrZPBCjvMpmM46TjpHwwgLe7jkYF83MyimCyyBrg2DZ3tNwTUyPh4arAanUXPxoyj: '100000000000' + DdzFFzCqrhtDDEXJUVpwk3hY7Qoov9qZ8opjoVfJUDXiN34Z6GtaKTsKDJugfrNshAW89f95jvKtrUeKeXMedehNcukU4uBoZmmdvm79: '100000000000' + DdzFFzCqrht8okn63zWJeU3YXfAMvWhVR5xX3waQdayPRznMzJSoFZ6VexxywugCGKJk8rmrF7jCGPmpg1J1yPBYM2aaXMpqyAnSMhGa: '100000000000' + DdzFFzCqrhsh8HnjvhZHNGLRDLQyNPoWVBsWJNGEwrUzjaxjP4mz4ky8qQfU5zHpjsHRENK6UwRApkhYaE5Yix5R4z4YKvi1NejavrYB: '100000000000' + DdzFFzCqrhsg2t5zWdHhi4YC3CdDw5WrH641V263P43ic6Bjvvm1W251SdaHXEphYdmYo4Sufd1aBo2YexVMWqSG7pShg2NBdXCw3qez: '100000000000' + DdzFFzCqrhsmW4eK2tgHhwv3VUUHY9G64nSEVLohbwKEMBvRTr1Xv3KaBHNVSFD3NYXWh3Pu35cdRJgww3siyaPfQsnt3jpCiQPgcxzX: '100000000000' + DdzFFzCqrhskCNPjm9y7NuURa34Lu3yNNBb352nucX1CgN2AMMEjZVzcGmPqd8J11c9ZN5fAY655bsPRb7ZRR2MijKTJBpZpbyf9VauJ: '100000000000' + DdzFFzCqrhsn4wGL1xBJgNBjDx5f1ZDnZ5hdzLwKufQ7pTt37VCu5DCo3QKKXWair2SkgVsp5nRmSLnd89hYCHv4foJdD9mKR85JDMF9: '100000000000' + DdzFFzCqrhszHW4NZjXiLozNvPfAShzZFPGoVxkqQRDynKcX8AN3vTsaMvioYGGNaQ3CB1jjGWdVUyQQ3psxPJo2hqPysgGC95ZG7KCV: '100000000000' + DdzFFzCqrhtAxyD6YE2oQeWUxhTT87a3cYrSQuyySHqMq3PcLB4zc8iBaVKJFvibvtNhUHZVrxXoRRvEzEFXoykeLBJQkkvDKCYsPB7e: '100000000000' + DdzFFzCqrht3p5bxND6yegJRgsq54ozEsPPMXUoJFesuDSiGSEs9gNuAQ7Mdj68YKayNqNbsBPD2iXubR1Gm3AWmP8ysoBgE8e28ZZ6K: '100000000000' + DdzFFzCqrht8Tt3RDcCQMeYnmv26JV3SpXSoHeuSoZGQYLz2PFqv4nc2MsUM4G4MLcavwbZK4Nt3KeGhwHZ6bceasgU3h5CoF15cLog4: '100000000000' + DdzFFzCqrhsi3hDdrT2qt7FyREyj9opL3qyxyZGhx7yqcsQMJk1KRsyVbm9fuuckcxJojmKi5Bf3hUARymuYmKKirYVDJWpYuZRycuYa: '100000000000' + DdzFFzCqrht4p2xyooBkGxduQ9Twyzk9poePc8tSaTRaV8pJ474tZJHRUsoVXFJd3NuNWDnn6nWtEcaD5kXSmn1A6urVQSHy2voSrPsj: '100000000000' + DdzFFzCqrhsuMmJM2URCSETY8GMe4kYiDdrjGv8R8LKynQWcqNf5KTJ51Bff873w14RuWitzwz9wGQZh2jEh4dDvEow97tK1Ds6tZU7q: '100000000000' + DdzFFzCqrht2eyyngsrqLW1zRVWZo1Ap2XQTJW23EQQVNnngjQx7BvCTEQHDdpnuRSTXnCkmqx8T1rQrNPAa9kugM5cfuNmvSUoBp5CL: '100000000000' + DdzFFzCqrht8sJAdGeKLFEragNooh1JoJFANmxJwXGXeBgAkxLApJVcRJbWkU5fh4aEdqwtJVFibvHZG6nRivKK57Ws6suw6H29bocam: '100000000000' + DdzFFzCqrhshNbqqjHqmwbuBMA6LNG7LFS1CiWdcotPWokBLjHxzCW6d2jW5WvCfVsie2oyx7HrnGWQacyvV2D7u4FS5LfiUr1gdfNXy: '100000000000' + DdzFFzCqrht5u2qAJnrPfjTw6GQLRbAyX4ToJrXd5f5iTtTRT8Qvuf7Mwnu9qvE6sRKBWqy1jc2mXKAzRwkx2CXtiAUTZzdD124X1EsS: '100000000000' + DdzFFzCqrht1e3sfnY8C5qm8BtTZ7JgeJewWXj6AseZwa8pBXc8s59gkcPfjMXdTncnXA2QhHoYcBdrbB4Wevt7AZJPEEf2ahGqTKmBR: '100000000000' + DdzFFzCqrhsduBmKoiyV5JMptPcsx92vEjEP1XB83vFZ9PuJHwL4LbT1YUahftueutWrd7sCxm95WoyvXVKz4mR2kw5XjXHMKvtz1wNY: '100000000000' + DdzFFzCqrht1dQaTmtvXDRftmxo9eAE5AKP3gH9rtsqNdCKkLWYWkswhBXSJKp2HoWmwJc2o7bEYk3xLUVMHfxia1eJKnEX5Li2aZVWB: '100000000000' + DdzFFzCqrht4KnDKouTA9vbkDTEG4BHbYQK3wEYKu4HdZaSLsY9Ahk6NQaAMvRBZH1k41ndaCdJMWFeFEXhRjmALEqkJQM9mPZH3mypV: '100000000000' + DdzFFzCqrht7ReDSccYqFgHS3n7SsxSXupaV6EbDANTHxzNXDQfeKR52Yybqu5SEbJeCgzEzTmPuSUf5MdJ845KDAszaEuvkX4paDSH3: '100000000000' + DdzFFzCqrht3ZBz7b9mXXDpWPornBjmdBFD9kUuGDPcH5iwteStxgykjV4F6vE15ZPcPrDKLVsdMuFXUrL1sjM9ZqCEewjGxdDphXqYX: '100000000000' + DdzFFzCqrhskCKLa5Jxu6EgcqGAg4bQ65GqT8dfirk4bQwbid7sU9bZBRqXPDQNZdCr3xN7d2EwKmB5Z46MRZQc4yHi86YS21Ve1JfBU: '100000000000' + DdzFFzCqrhsscBVBBosRRqdzV9bZLLhw2HRWwJPnPccbnWesthDRmYzgFvSYpmxxGfFwhb5ZoMhLenmWnurrUxrrsRQKEZw67m319eFa: '100000000000' + DdzFFzCqrhsugi59n2nGhmcffPZUP3fn2R3YBkiuUjYEipfRYsmg9LdZCh7kzLbahK8yxq4R2U75LV5MZXEdCsR5ZWiXWnoSNnreEPm9: '100000000000' + DdzFFzCqrhspMZg6QHJ9Qi1HWxwsKKfsYwhv1QAFSFYopirBFTgA8C24h1XsSrAJ5vY4vm4nRSF7YCLdjcGYcCnocAPtpLdA39P3zqKk: '100000000000' + DdzFFzCqrhsu5AuJ2K94J1DZVpE12wK1g3QhFXekPqNHXTtoaWoe9CJjBwEakoJNL75TUPkVe5EroKEx9CFXU1nZBsBRZRAgvKZ3wZBs: '100000000000' + DdzFFzCqrhsy1cnk1fixDdwwwvVapurcTdFMMT1cd2rshSZ7Lm24eE4gqsC1CkBotNpzumaqgSk4azFZ54XhitsLYjiiffdi2KDoDxFz: '100000000000' + DdzFFzCqrht8JenNkJeSvk5Rf896wJKS114RsmvYm6YBkvLzg2cDgxue1myB5ExAf2yFQkp1tV76wFQTCTcxvXwzGAB9UnGVcvcVbALm: '100000000000' + DdzFFzCqrhsfoPMc4WkrD2WnPE9PcVEDgCkKk65dCqALi3rAodXB3Vqq2TkXW26cNXeSXvzobPB31WArwxB6fFArViPAkvAzz31ge3hP: '100000000000' + DdzFFzCqrhsr3ndNijDuvAvZLUWKRfpqoaUuVf2g22gtqqmmDQk3eAL7aRZ3bik2yZGGruZYw7yzwbbawEhcKmozaDf2pMt8iFzCQTQD: '100000000000' + DdzFFzCqrhsoDAv22hhbouwKscBNRRnh2mBcUwHBcfLH17uxN4tfsQWJDpwpna96SsUYUk9p4qJoX63ApmPq9hwrJohFiQMHAYzFoPU1: '100000000000' + DdzFFzCqrhsjD8ifeVpNo6Me5hyTsRPgB5K7JZ5GJqPeemqCgBQTcg5wew1GkZfojYGUu8KtWSVXCo5fYn6VjC3jsCYNvamTdHfVLp13: '100000000000' + DdzFFzCqrht3ncXQfqXbjMzuGtQhfsCdHuX1FbFDXn8seoFJpuEbTZKBUujyYmxiSgXafqkrkKwHeZtLbzp15BwrngZS9qzbMTnMsfjA: '100000000000' + DdzFFzCqrhskFgBrTWsyX3tVzybbwDJHXmLRo4ZKA1Xh2xyaqitGvHWzhoXrjcXbsd9yY1Yz7oXvCj3QwC2QWjbAikFu1H72nN6rPKFL: '100000000000' + DdzFFzCqrht8aFzSNnc8NHzADWNufedzf2EcJCAzK1pHiWXPPfN85EKx5Ze1sohdDwQXvcbu4Eu38QNdYTwgQ1SPscU2AMYqH3xN5SsN: '100000000000' + DdzFFzCqrhtBd7BmyTGMUQVbCuicqF4MoB8itzgFQyeKQxr1uu7C3KVJ9G5xdQ1cp3URRDMQKtoKWyyU18ALzaqwLnnRaXskACYbYHw8: '100000000000' + DdzFFzCqrhseDfLmPMXexSYHT5BcuqrCaLaj7Utv89HSHEXM6JJhnj5AJCEJLPaihW28LaY5x7bGfDzk3bTzYEnXZAeWvHbCrigaHpp5: '100000000000' + DdzFFzCqrhsqDaw44Zg3FDLkXJW7RiTSSwH3KhfSZKREuQ3DkRc2ybmTDSckMm8632uWHishffQU2cg7VnMJW4o7w4LYpWxfnTe4HDfn: '100000000000' + DdzFFzCqrht6RqwmevaghJLgy3jzL6WVhokmij3LesHpCLzCjKFNoqFwDqYapAY9yaxwWdPMPxyKPqtnuYxXLxAMnproe1vbgGAEYm9W: '100000000000' + DdzFFzCqrht5n2AygCgM6WUYdahf2pDj1FM63w4zkPuuHQyY2xyeZsZVugmTiuRhoRFQZtp2zc4HTyEUM6WycDwzM7PqD3WBbHUMepi5: '100000000000' + DdzFFzCqrhsrbaaoa39zNKrgikG3oU7VirBumeBNHaSFC8KYVpcPBLcK7MXoyvdA5TedJ5VMV7f4PL6KpPXn3uv3wzA7FxsRaiYbwnLA: '100000000000' + DdzFFzCqrht7xzE2W2G4fzDaW4LhjDhLtmwkebh5txAMtmASqijb4DQmngnNFAmsFg4tc1F9KwJsLHw7daqivU298o9MCUS1Nz3H37FK: '100000000000' + DdzFFzCqrht87hXb2121ZpurC6DTq2rX5FXf8MDzr6n2sgjAukmTQSir2VJZPfZRiqyKke18SsZbNUzfLTmB2DQ976YhbhpBmXvrnyVZ: '100000000000' + DdzFFzCqrhsnKFXnVRkWWdwiuvJMLhbzoGvh438MrFW3hVGKuwD9zrZBEK6KN9EoM7L9Z6x5q9eWUftDMb17vbdynURoMpyqMr6sj73L: '100000000000' + DdzFFzCqrhtCYz1ZSzuXUDxumhL9jVTbCLNeRXMhe6fcbdxH4K4X64c6dtbPhqeouDpxpjtMdhP8L3GawDwNQdfLfHhaSxehTzxw9g9d: '100000000000' + DdzFFzCqrhsiMd7DsqPa8Dtjv4y9hVUAKoZARSQL1Kv7k4KBWorMKZtEkEGXtBthhq3Bis1k3oNmyyVngGKxZvEwuCCjmeqbVZfUn965: '100000000000' + DdzFFzCqrhsjB9y6Jpsnrni4HA81ZnsjFwTP6261yCfa3FDdMUA3F52joWZihrZNVtJAtNzn7rFUEUXkThnJcYxGGygupndZFd2d2ZR5: '100000000000' + DdzFFzCqrhsg84vsepmwRoYqu6mwiafT2LgQcdD9GTHSWCZ93pEyUGboG9rjEghPdkLZU2GwERD4PU9TR9ZaEzuKQ3ghRWJ5kj9iqK3h: '100000000000' + DdzFFzCqrhshUzE8cruj5JWmYakNzg63P9FWD2B489A1GwBRM1e8fsqk7fCVR6nb5mTYJrrjAdqMw8JcjafbhdYAGsG5CFf9P5Ust8hX: '100000000000' + DdzFFzCqrhseTr3SeFrLf2trTfAen97FhGp1w5ruErzF9Zhkt28CeUHbMnppvCubLAxpBRi46MJJDt6BHttogo22ccNzhCUCykJmKaq3: '100000000000' + DdzFFzCqrhsiHAUy6W5aJe6PJEk5S6ZnSjSDocM4kK6Yr9H4NgqPProyvZu33K2FnrTYWF3hqVwWcpioeGzCYHXaEVGn72xkaMmJKUA1: '100000000000' + DdzFFzCqrht2JtTkwghp9gtdyFjQQSS6CcsiZ5KjDqMr8WXuim5K12h3A4CExaSqqLG75qxsGKF6vUVJwVqwmuZJxmBDRd4rSccj3vZp: '100000000000' + DdzFFzCqrhsn81Bif4S4TvArGbSuFiUDjmMudN4jcWecbLV1ELMz1VRjPVDTjipRz1MxcgKcdYMLo4ZS9QgKz1YWFJqKqVzpj7or24ga: '100000000000' + DdzFFzCqrht7K7s4BhN8Q79CGFXi6f3bZ6z9dEMiTpNSc2zSC27hLUqf6ZK6KtNHbsxBfSW9iVcWK2R2Wn1NdEZW7GLk9xLVPYX5UXSc: '100000000000' + DdzFFzCqrht6Q65AVXCpoG3F1jzktnwc9xDkXeHw6pQt5wMMUik4Wj1NdRfRVmhyCubT88vCjYbVZDaZ1LuTocf1VkJeSoEvBhCV577h: '100000000000' + DdzFFzCqrhsygQoj4xwJv5LfeWaefUSm5a25iZL6iLotro4KCvW25uKpuspxY19oVZrQQrWLTwG9krC2zBu2eBAQ3Vj1QJi78kzRxhps: '100000000000' + DdzFFzCqrhsr2ceCax8aJ48gHNYughZx9YT3Vh3KdmM5T1zv25BoZ2M5NNHXrMfX4w2HBnF7yQLzdXCe86XnABoonahWMtuedDLGrgmQ: '100000000000' + DdzFFzCqrhstjXnHbw5ivuEjLxxM5orLACAtQMR6JW5YT1aeAAS4nbFUX3VnXcyhT2Tv26ofxCCRzx1HV65K8Ttz757C3bh766hQi6js: '100000000000' + DdzFFzCqrhskyhURJWsNsjWYNUxnYb2cZGZcAfLRB2QvHuuaQcC8KdtikSwJwow8fZMLgmAqvYv2JeV9XZTrR2oWyYUswuQn3AbypaR1: '100000000000' + DdzFFzCqrhsrxDiKst3RAgLE8L5b2RCHXfe2rshMDCgcY1qhXgp8cSfrmBt82ueuRbmpeZpqyS6uZoFF8Ga2qu3DcD63q3eYh5ZP6RXB: '100000000000' + DdzFFzCqrht7L4XNRPyf6UbCU7THasU41YZJ4mJuDrTobBBg8g9PCzBcJ2DavVDz3DVP8LmsaSWCG5BkkMomRunQJDRYK7YHJh8X3LKu: '100000000000' + DdzFFzCqrhsxQGZSRbGbTP5EgMEoCg5FxKDwAeUZek5QpVKMvEhgYodz2ucvzRzBjZh7vQiT3uDFR2uzp5YiQatKRdkeudRE7U26Pi1G: '100000000000' + DdzFFzCqrhsmk7Fzyfm89Yb35PA3osmkLie7BFdwqyGsko7wQSCJd8qyk2ZNDZT5EiJJ6scgNRok86jizRGQiKsLcbUdji8mNb9eCq6S: '100000000000' + DdzFFzCqrhseXFuFSSPZRK749ZLP7Bq1aD6hqz2wpQgUg5c8f315VBVuYL6fLuk14T6E5b2tATCPhNoy2b8gzyxUaC5fhBXFDxMuMTBh: '100000000000' + DdzFFzCqrhsreXyoKhFgZDdiu537ovwixw3D1zkqsG9wzUJPjhb4KvppugKZRCyeaEEVNKNom6DRzRXD5iLfrxENUFkH6hP8dcZddcaL: '100000000000' + DdzFFzCqrhsq7gpp8qXHzQUuWQYZr4ETQ2L1T8SPUiwSftsPgoFdS8TRLWBpgYzU2HaB2rcRVmta4uWd3XT4bmSKSYBCbRgEb5sAvSg2: '100000000000' + DdzFFzCqrht67GhRFmxLNzFRRr1vyanuTbmeh66ioHxhbiZWEmJDs9V2WJsdyfvRf6NhETLzcF43bUnd98cgfeUyv44PxCdqnXJnTsGj: '100000000000' + DdzFFzCqrhstx7L6UY5wZtuDVZQkndMWAmokSKcgZMudqDX3MMnGyZhy1J6RnWrYdGPU9YeJhUc33gCRuu5EE5dgERCiu2ebUXdRipGW: '100000000000' + DdzFFzCqrhszuv7rHKgyuUAYhnGrtH5y7XdWhV64fgfeJSFny7Ytj5dPKLbF75TDGtvd5NXbEdPDrAtbadY4oHw5CB3B63Fbt8CvXhNg: '100000000000' + DdzFFzCqrhso9cmx6G4y3cxKjYHKktTNHVQ1AW91RntyVAA1Co64puNeoAKN5udYyDrRc5Sf7oD8aSpsapnwFD7K5ptRGnALNGaTBnvF: '100000000000' + DdzFFzCqrhsxTWZMDFRbUNJw752A8qFMLZXSDVbtxm4mwDJFZo8dMeCYAN64BMYmq5ZvwiKSNFAEM3M8gjYyvtjRwxqh28GJqiZ7SuXr: '100000000000' + DdzFFzCqrhsgcV7HvRC2ccD5fDwr5BodgSouKZzfso5kqyGPU38f8Pe2wm8JnQCGkD3JpUPCQTtG7ExJZKmT5DCuUkv8Rvutm4KPVTp5: '100000000000' + DdzFFzCqrhsgTD2ozBXhkfdS9KL2xJPGhi4wSnBFPWYFpVoo8jCBZMkbxbhPN6EnxFvhrJzfwBXqnqR5891wwfSy3qkKHsJJX4B78TEZ: '100000000000' + DdzFFzCqrhspWNxXjAWCBbiQkeBiBMiGJpz1vUthRcoFhmKrBidcBR9gqQBzU13iS2DwWFsCtYJkTh5XGyEVr8SRxZ5B779njrX8o8Aj: '100000000000' + DdzFFzCqrhstLwTVCQhuyL4h8b4FP7KApykt4QAjwD4wpoXhUqJ5Uu9DGG3cT2bgjih3c8QjvFnmtSUg53vZtZvmxVcWa9GPxWeTUmBu: '100000000000' + DdzFFzCqrhtCeDtgG6wDBEACTRJRWXrWidgpnJJj1JeY2aZd3ssevtZXuwVSbRLSRhUCHAoE22CH9TSRxgevqyY37X7FnMQJvZrzaaFM: '100000000000' + DdzFFzCqrht8BGBTenpg6FNtYb4iJd82b1d8eNpoCFe2gNewFRZy37BmhLr8fMz8AXVveuavmbpja3cC9rZidJ2rzGG9Fu1GGKg2ivVM: '100000000000' + DdzFFzCqrhshWdbKro6b24uC7vYuVPLZ6btQbE84xoW4ZafZbyuAsZLnadHShGhuaJ1geeiH318gAns3So9hbz83Fn3HcD1877Hg3qPP: '100000000000' + DdzFFzCqrhsdqAnHuL33afabJ99YKS9xFkMGcHLBBFkmTWM8YJswTApxUFZCU1f81xs9RMU1hJk1b1X9UqbzF7de7UnnMoJCGQaQNFit: '100000000000' + DdzFFzCqrht3ouyQW1UL7uqaL1mc5GsCQdivs8m8PDmghKphNL2mPjB6TYRUVZkmiZC34ttS8aq35aAUkeVxikpEBNpBjUxPCvWdYEaG: '100000000000' + DdzFFzCqrhswpxXZm1yVcTk4xiVSkjw2HeBbGtPqK8PE9ETbXKBkBo6uobqRA6fENt8XiZ5TPoyWnkHsTvpCQ3C2jvg8FnAsgo3pHzcf: '100000000000' + DdzFFzCqrhtAABG8CSJHtdqBbRkyeRfpS96g3zLc5fhLQcDAcbRYFt3G8Y6uhrwoHMUTyWooUa6VeEM4bCLpD6y3nvWjc2tSDzAZAuo3: '100000000000' + DdzFFzCqrhssTWme7rjdx54rTfz9KEeef59ghJHksxcPL1c9dsDeNuqhF1cXBSYJVNQR82wDFx6jtUhYDKprC7Ru7vJeZhPzroJvJ6Ug: '100000000000' + DdzFFzCqrhsuNKHnBS7rFUf7sNDBzDFQhxSX7zudomuQVoSUXb8u4ooTVKSEtd3Ue8qTba3EJLUcAMVJMqLp49pEfwkHYms959gcMx92: '100000000000' + DdzFFzCqrht6SMHNTsHsBJXbsA9AU19TTJCy8VJoBVE9FcK25zhq7opUvPs1roHtiNhdL99DasqT8yBMd3eqaFn33LNYJYQDYu4wq666: '100000000000' + DdzFFzCqrht9MJ1VfVugY1tYdaZuSn1stggZTAZVruQ2P5NW5osCWLGbkX6XVr2bmmJrNFqN8eMtm6onopdANk5K8C8y7AG3RStfpAie: '100000000000' + DdzFFzCqrht8hncXkj6aJ5k9aQnL79b3SuTbmSVXLjC5W8Zk5RznV2WQpvKy4BZKrdSQd7DAWGSSWY2UHkLMTv231ZFzLVL2b6YZJuaE: '100000000000' + DdzFFzCqrhsg1g7uBuUWDDLxVrevbFkw8C7neo9jsU6dh1d1oRZ8Xw6dFmL7zzEG8PnndWAZbbEqMr4ipaweW71skFJpskmqPc67nQtZ: '100000000000' + DdzFFzCqrhssqqTmU3zzS1KxQbRPb5URNf8XUbsdXDujQjhNXb2K8LbeeJPD5f9vhCiRe2r4BYNriFRjbsavFTVSe5i86zH2Rs6twWzr: '100000000000' + DdzFFzCqrhsz2Yz2xcn4mG3ZTY9XPGjfSPDRKGycps24ZJcjd4fkf4CbGZstbLEpiNbpuwNsT6vBK8mVXvrk2wC4AnM6m3NKzQx4mGiq: '100000000000' + DdzFFzCqrhtARWeGotFeY1BrUA9g9pDzLfJmN7VEB6Bd4i8r8KQC5ijgihYVPiqsw5ZMj98C9wbuEchxf6pBYiD6WDgZCo6MSksV6uK7: '100000000000' + DdzFFzCqrhshhonGcBv2dbEKsCPWnv2dcpFY1GfZwnGEY3c5aFCu231ZWd4PSy1da5WrWhgGFzLSc4Sa88WLmx7AwGKyzmbMMhVhbzwt: '100000000000' + DdzFFzCqrhstZUb3muPTBBMMtvdCtaGaffpBphWfPSRpfiuWtU57QxaSwEcsXwUygN5PCNnsum4EEat7zGH83fSCiyz1JzZZVg2gunHm: '100000000000' + DdzFFzCqrhshEDcRtbXHoD7yddStcC4R5upihoWXMY1Lt3cYRfk8zn7WHrrEgms4GwR3B1hP8Hdt1BmRfWtq7NG1VN8X5m5nzp2hYwMz: '100000000000' + DdzFFzCqrhsoxAj134nTLUQQML8Yjdyye6HAGpsQjtM4V1KpCu7eNH89XMqGJkTTQPXMdjTkeF47BXedjf4MfQhDDdyZ6KvRCREXBfcs: '100000000000' + DdzFFzCqrhtA8gCxis2ok7VmUAcUf6Lg1itbvvau9NTzicFot1gN6SGVmGLksB8EZDtgZfv2aX8XUrpK8u5AyK65eJrH3MaKui1XB4NV: '100000000000' + DdzFFzCqrht3AbCSwur2UZDNzXfcRYJvGjFwVWpmW7WWhrAUUDoJrt9R1WjzdmPq1GyGALMnnFQa8kxQCSQPjtA5uJ7GaCTT9W9BPwir: '100000000000' + DdzFFzCqrhsuopMfCzNikpQKnDgbe6e15Eb6CKGdm5nFmNwT3GarAjRVcE1KER4grMDq3A1i6HDF4kTJxJRpQdogzMj5TRKuukVDshWr: '100000000000' + DdzFFzCqrhsjFQTt9miGQCMFjNcqb82egFSVTXL1x3EvmMENZ9PH6y4gK3uvgM34nZsgvHDa9ZAbVoYya8C6HEVoSMJiyGeocpuT1Mcb: '100000000000' + DdzFFzCqrhtAKBD25eMMUS2Vow4eghk58nYwfif5JP5pdQkAD7yuzmzMJaN3gJSYWNJqFJikoMepdwWFtauAUayHuYhEemHKCY7fDcSH: '100000000000' + DdzFFzCqrhsqxHdeT6WQxjLgwKvMpiUsTePQopSdodAVjbotG8Y21FKaxTBjd1uzKTMhRzHuVG3yHJbbxFoZpT9eK3QQ6hGFzeZbimWY: '100000000000' + DdzFFzCqrhso71omgseidDjnQibyiZH2maGbPzKfoRuH7B4mXuCqT5FENHiyDL8qvuuviScbtjcfie9ejM8kywsBwLs2ShZkST47HWyA: '100000000000' + DdzFFzCqrhse2wXHgsdG2Qd3aJgUAXza6j2DBtwTfmjBnSBh1VxK3u6S1E6qQDZrX7bfLuNissUmeAFQSgVMWKCupXb2KKPDFUPEcZqW: '100000000000' + DdzFFzCqrhstGqU3NQnutrPccuL4nwYfShPmayGJuEa7sGokS6UCovzbA3sm4EAxBPaBF3iPSqvF1FQH5rrVbSQ6siRStX4CgbZSXPCF: '100000000000' + DdzFFzCqrht88Zc1gLdusPtk6WNABbaaBiTz8681cJ8VXwy4dLdaHSJcBY6px7NSjJ3fevJLSaE1q3eZGNhjR4o7rc8RH4oEpFL7B4Qs: '100000000000' + DdzFFzCqrht9rVFmiPYEVZTAsgF8cuqsD5vsSTTT7NZyfYQdMdPWnXXyxpZepdoQf4AxmjhtGRAu1r9Uf7SprNJTwUPtLGRXrsegr2py: '100000000000' + DdzFFzCqrhtBY2YrGRC2DFHhLRegn1Gi7aDuJbR3wVS97YpaV3Rc1SxvKRGNjwVQkzBXo6AQv5UpskGFtmFABRN2LjfDUTpmYHcAU6ck: '100000000000' + DdzFFzCqrhsuKN4keaM7FaGh3GvD62BzV7f3NRJ3NjkVpPMxcuEDZeDRsPxiKm12vKY8hcoAAgKBvF79M6Gne7AJG1sJ4kP47VqPQyFp: '100000000000' + DdzFFzCqrhsfZXJQ6wuXPxobyaykc9WKeDWM4mVzkzmaCj2ZWgUnMHQDjEsCGM49fskEuSxsSQ1Ft1gzqpxFK2PacHSkzQvCCbWVZGZV: '100000000000' + DdzFFzCqrht3Yho2v1aAZvNFA7n3C9dRpvPj6jd7MWWXNvg4K1FkhPXLRkeyp9EBQbfHucBKda2tWy87DUrMZHj2MMrjbHc7bqYZKSwA: '100000000000' + DdzFFzCqrhsfek215p9sn1KaZ5eeYnE8M1JN4ijCXs4Y8QFt7mVZf5bZxpMW2ne8ESCU8twRwmyfJGD4YvUo7pmMBEDTkxWZt9Hsm5Cv: '100000000000' + DdzFFzCqrhtApZdLq7QavRUv3yhstvAUBBnqKogfCsSSQv2Xmuffp43shQt4EXcrVEXbBxLnqwUeA7qXwBGvQLu2t8jYZ1syq9qzg3ub: '100000000000' + DdzFFzCqrht8cSRbfuJ2CjKdzGjWn7337xoiLW7b15r84A7dirUxsqpLNesyJwtBjQduNQxF8hK8VnFaup3AVogtedukS6NhNHd3cn8e: '100000000000' + DdzFFzCqrhsijhdyfNuk6YWkW6P9xtT6qKnM7yNj587d4rPhmLwtn2geu1w2CN9GaScuqwmVyc9WYSYEnQG9mpVC4jwzL4Ttkf1DbYdp: '100000000000' + DdzFFzCqrhtCtC8CA3ubpopY5Jn1KW4Wj8EmQfxo7mbiTi6Tb93zCE1L8V1AGrF6U7mY3MqPGAshauE4yPtsydAVhrrSSnVQvoRqeDnC: '100000000000' + DdzFFzCqrhsruE4E1Jno9WVQ77i598VZ2SemdfbiiDX2qHKmszQdegMHfqVFoKXEpaXXk9CN68wVa2NYhVZkpMMZihkiCzBzNcjfV4Ai: '100000000000' + DdzFFzCqrhss7WeV2Ax9RSwjF2UbiL3YrZrxk4gnLqvBpj28xJDyotVUKiGNph4CgGXF5KeoJgrfmkWpArt6bEEZZCBgQnyo8tLuAQYj: '100000000000' + DdzFFzCqrht8k86spcvSjiPBntvLNka99aHhZeckFobRGbpciXkJzLeBcnorPVUMxiJ2Lun96essWGkD8C4XkgoJiFdBZKkiAAqdsXHo: '100000000000' + DdzFFzCqrhsvDcQuSCVE8icer8zxdtQrTR2kgGV2NwVrT4iSyhXBDgmEXofpgByrQTxx73BttjsM77TzVxpfZTUUhsGjjkHd4oxGEQ2j: '100000000000' + DdzFFzCqrhspLBxBUc7N7RCVs1n1mVHhUGjd4sUkR7czgxWVmfxizFkCN4H32MTMSLSah9AGEDzrFvV1hz5a9NiVDc7iVEAJDdaA4RHn: '100000000000' + DdzFFzCqrhtD2aZNiRmwwWMD5KtSfV4K72djBmVr9ckD1RAQw7PPm9HYDRb5yZiZkhb3zrAVfXyHfG4SzEaN7MkY12Z19FEBe4rNHpzn: '100000000000' + DdzFFzCqrhstFTfQ4whUJSMFHSHGnQ9XywzKXNoXo9awSpWZKu4ujUn6SCyKFAz1wdJcX77bXABsgEespXqKo7dbdGof6Tu2THeUimAE: '100000000000' + DdzFFzCqrhtBUTPtDvD8Akuhp5T7J9NmpYeDhJeDWE6myJUwB1vLg1ftyHoddCo5EgpmAcBEwvC9Jkb3JEL3M9eJA1zmjM1Rc7jqwCGV: '100000000000' + DdzFFzCqrhsfcGeyPDw5tn1cvkTrcAWZEB8FnzLjxPHnseLzqp6iKjYt8ZfYjeD5AyGRKuLiF3VuGpJi9MMk2K9jMZPHxuEQNKAKqiTS: '100000000000' + DdzFFzCqrhsgZ2XfLjWdqs1DBP6iD5EftmwwnqYenXjtLWm3NiUTnCX5tivVSJfPabEB2v5UWRJ7w6xYpvPZFu3anCa8kDBwZhSEmQm7: '100000000000' + DdzFFzCqrht9HMM8Ju3sKNFJ9SDFaE8fY4P2mvW2oNCkYDmxuAFJfpZ7ZQawfH13B6F35q96e323KcyRTXDMYNWeSVKyQQB4txFW9529: '100000000000' + DdzFFzCqrhsyRyBo52ruuxBUeogukmBWFHxvpc9EJmtidXhYZZcA2xHb3QiztLPB5U6RhbjdJNHuWdUEQcXRRdtasgS6SrddyM73aodu: '100000000000' + DdzFFzCqrhsyQMi4f2CzPMdvMWj3xfrPyG1vQsKDrZ2RxuXffji4Mw9ntg9t7T6uoNqzENzKK3t36Rv8jGbdjZDnfHdNsBZa25SgR6Dy: '100000000000' + DdzFFzCqrhshsbfGrn7h7AhzHRubspv8faJJNFmGw1GZaSdUsMYN1aQM69FjReT6fnaaMDhHbRa45j22Cji5u9YZrxcsrn3hWB3K7fuX: '100000000000' + DdzFFzCqrht67ZkDD3fv91tGUPtUNQ5ALjCDJudgqGXTX7TRMTvz2SqT156vPrPZJbQ3SRetVBk3R9KWs6QGPhvRZjpuQ64e8warHoix: '100000000000' + DdzFFzCqrht9oQ6Sefw3BsYG4fWnftowNz1JriCn7zV1zx8dqqd3sTShno9EfhZAPSX1W8tBRMySEtmonKtTm3K2Pk883p5wTQJxv3Ky: '100000000000' + DdzFFzCqrhsjNT5kanxnF22UG6fRojRB5sGXjuMEyy9GDz13aXpbT7wdUgx8ChdHThVwwBLvmXweQQVyR79KTvmY3fPEhXmQ9JdNgSRK: '100000000000' + DdzFFzCqrhsg2meWxvZAoqXtDn8i67BLhFfz6MjZJd1CXfyBV1XwY8JopEr7LBEruqqFqBD9UogzEvN3Nz5RqAdL8LUoiMjgSAMLokZi: '100000000000' + DdzFFzCqrht34u8WkcZWsY1sZ5oqGLEPani1AKeHZDfrXUAPf6ZpTWfMjCWAgWq3zdECWZ6JQxbwaUdrLPKwSMDC9dmPF3j6EEsAZhr2: '100000000000' + DdzFFzCqrhsxtMtsJU3DkzrCUJ5rUnqRj5zET7DSTyfFptYRps4v6EEpvkqvYje4WrWdZmuR6BAKYvZSDu5r15xixoBQinVGMCRyRSP1: '100000000000' + DdzFFzCqrht2NDSR5FjTGUguVM8bsHxbAAjWL9hK8cPv6x76MqwvFzFduFxsPvhk1Wihss5nPWg7jX3Jtw7a9pQar5DQJdEPLbubW7AK: '100000000000' + DdzFFzCqrhsn5YM1sUjML62hvuAqtFbmZfXyrWBHTx3ibYQQL2sx7XL3LPVfi4Htb9i5QTLBDdVRf2p4yUYVuLu4Sb1Vq5ekVNDCdRUV: '100000000000' + DdzFFzCqrhstjRCW8CMTRsQtm2js3eNY8g6Himv9wRq2nGqHGcxrjjnJWg8sfv6n9XmgH2HUtdn74ECXAo46Pquba6ARDL3FWnhpNtZq: '100000000000' + DdzFFzCqrhshgLViiP5Ri669Pi7DWr4dJaWP3JWR63uKxUJPBkhSczY5hsmDBF5psF6Qztbm5ZEvuqwtzu6xD19KuHW2v47ao8cz7HQ8: '100000000000' + DdzFFzCqrhswp48YcybJsKQjSoHU1d633kAvp1e2b8mTe1zWNfqkTR13uivbBEKwoUW9wZXzvJsu2AQRN7QCnxf86PboJYSfKCTziEFm: '100000000000' + DdzFFzCqrhszfK9mSNKmkz59BQqrrw7QaCjh3RePKQLMfptzaWMhH93PvDZpUVrL6k3Rpju13HpPvtTQ6PGj38aMFTQW6dgZ9FnnV2KA: '100000000000' + DdzFFzCqrht41ppXhcQH9LiWms8TacShaaa9aKF9PDGNcLmYcRaZWTKQWLtaEH93A56YbMBTYExiRs1dcNWQJ4gBwvV9Rnz3HtZu7zDr: '100000000000' + DdzFFzCqrhsh9Q4etAbbGNGsDQ8PWDDywgaZcULNeuYDeozumxWS2iT8WTCWHeoNedBZrgevcVxjjRiyqndxHpQEZJ33tsbiLciPND1W: '100000000000' + DdzFFzCqrhspRdmyRj9vHsSiERi3mxuJt3fNbdLuXwofUR69cqSk86EZqrkVyQgsxXXsouwgvHSLrbeS4wivsTnPF2ZcrinspBjVqLQC: '100000000000' + DdzFFzCqrhsricu1G19ztma1NfZre4cMtj8teA7qxVXyJZRtJCqQqEAUgsCdAj6NoHFCMJtSquenLg8HrT1q4XrVngKobLeN8TNizEqG: '100000000000' + DdzFFzCqrhstwetBwgiVZsTGFeJWHn1PG5vPGZEU52a2ECkGd8x7yxyBKwMjbnjRSd7M2KsDYj4JDPDzeZFXqRGzpjBc7APj5nKCsFW1: '100000000000' + DdzFFzCqrhsrweSHCw4eG5M9HLeabUjomKhVpMyPQu751b27Q6G2sYwkb8YjeCtE6mTPHxdemBpyi1Rg9XwQvfje1YbHDvZPLE5Pj13W: '100000000000' + DdzFFzCqrht774BLMpeBxqUmUPVw8hc5FvwTabDYq5zGYrMCzQLVnsevFFg4FrArwmMEQ6jTuTnPjYzSS2R4KcdWqhCugH2MJ7HtwAx8: '100000000000' + DdzFFzCqrht335VM94gwfV5V6wbPyV3DziLGmDBcDdChsvEqtn7pXaSR5q5DEEGpsK3fgizpoHNFNUFLFKimteAfiZzR8hH4rPveHeHT: '100000000000' + DdzFFzCqrhsu6yUWUgdrrX33z8PsAizZhSS83CMxT7BRJNk7GrCQhUvJGyxojQsUftZxwtac6uujAaGerMdxacQZcVto95YUvduw4ZxE: '100000000000' + DdzFFzCqrht1cYp4zCqsUxFTMGiiuseKicKMYYQjcMyo3Lnn7rWFqEReyuWhR36mC7dErgUP9umgmj2hS3Dd1wXcFGSeUZ8ssYvDxX9x: '100000000000' + DdzFFzCqrht6Sxt4d1p4joo64HqTmNhXRrpbi2A1nVMyZDwAGhY59XXNKghG33wuDVxbGYJYRXD3FzJUi45qm4aALNXSDLRfDe2go6nA: '100000000000' + DdzFFzCqrht8gsu8hjZyo6ig1znmnxihU8fwK4LRbpMfSf4HkwuXdEwGgkVgbsWk7jiyNRcYmfvqCUw6cEcap58Vai9wsgyZDS8ttg3A: '100000000000' + DdzFFzCqrhsfJpvLcHBZfGzUL8fyGNB3rSMDHWVsKbbSdRhLt4NbqoY3nufQBMRzpCtNTZcGFiWHpoRqKY7fLXGJ9D3aS5RmdW1Aw6ee: '100000000000' + DdzFFzCqrhsfQ1Ksa5Pqifh2mLqZhwxxDf6pknCgSwSLdGVWMeBcLwNPBzpT3yS24vF3EbiQwnxpqKmjcyfmmYJtap72XR8YsRaZL9TQ: '100000000000' + DdzFFzCqrhswAFhUif2wtB5ZieXzKVV77xkkejzM27g9QWnX942Lwqgp2hY9uUdcffZhS2TU5gYnAmYQAF4wC1ccz3hv4dSHktfMDuSj: '100000000000' + DdzFFzCqrht4gzeTABzgcMEHf4Kfw74FcUGLJhrbbaSAaw5zC5euhuTxtFPx5Y6XLDAjFPWtaZmKjsvCz6C6UyLQTTEWUu3W9xTmGw8X: '100000000000' + DdzFFzCqrht6W2ZaCijsjKAf1cLLkVKWiusmEjirYLAJ74X4a6eGSBa9y5tGDxYHYNs2t6BZ47LZ8k4LzjT1qHh3g6WVREp4Uz7v61bt: '100000000000' + DdzFFzCqrhssH8NAvZAGxj4gME9Cjp86DpNoH3KtpLDYdMMJTJMvcS1YgQFXURBbzKf7yQaGb46JKJWRfAgwSqExHwehWAG1cj1WbYHx: '100000000000' + DdzFFzCqrhtA9CPR9ybbU4Ya3yDhxwhonvWU96AqypXzq47LC4ke1omoo8uoqGSd6XL43do7njy8empxtvazToGUSSQsUjrSCBpKTj1v: '100000000000' + DdzFFzCqrhsneb6wahYrepbDMGEop9Xrp6LUiiD2o2GHfCSVtCNxYxJJXqw5iW3Hta6poasNr2CJX8mUinRurbdRnF2PCBDAAqiTiCoR: '100000000000' + DdzFFzCqrhsq7QfyHaRfHte89XAtYGog36uvbUbSP7AwZCXcqdg5EoUYtHEUyBSwemH4VT3v22xui9pJnYvE1dFVEqXyjMoQb19Cb7Y4: '100000000000' + DdzFFzCqrhsh4puDVySVKZsLDgUpqtf14yBsQbuEbr6VZ4j8xET7PzKYHtKQMnp6jzSGM3gshAivQhotU9KTSVPBhYHGhbfHZrw2teCa: '100000000000' + DdzFFzCqrht3D8ajpqRwofh4jEABV7rQQdRKQDKboZ88sZqfmYHVYCiq67jR4BkpZ7GkGnwkTdVikgHzU3hNAzfJDPd5LdWNfLPJLyXV: '100000000000' + DdzFFzCqrhsofubXZFZoD9jXoQTQAf15ZHXtKSYkg5ASPCBtJ6fowQV8Zn145PwnqjsHb96y1USEEYvfzqHwX9jpsRJYhEM9f4T5NeUS: '100000000000' + DdzFFzCqrhsmBK5csecqbvVW7F9m2CB8PFWaqEckNwTf4cw8LYp9ywz5VWVebCPhLLzsKUvXvUPCBD3T42yDr4H7fujLsB8GBMvQ48f2: '100000000000' + DdzFFzCqrhseJ8oNov4FDoHsMube8TPRguHXnzJkqwvCXFEhY1rwHf9TbCxrXLni9RpMXSJsYrdg9eqvWw8GxkvGsHy6kZS96dArYUpP: '100000000000' + DdzFFzCqrht786QiJDAbM57AXmuY8mxFUY3hiwKfSzd6DPhx7HbWwSJU5AfHrYCdKfktDVkNRCE6LH2ABR9t1sfuAyk2Gfw3QVyuEpAF: '100000000000' + DdzFFzCqrhskdyo7sWSbC4u1baaSDvs3i8jgSFPEz5b8LSWSZgYR4s4g3hcCt4hfhVMHQec7VjP1kT6WcDPgmEDy72mm7RatDYKswqXo: '100000000000' + DdzFFzCqrht2CbY7YRP8TzfupL1hDGnhTpfzt8eqKzutzkUn6YFVNAzMg6xiaQHGT3TDuEkbsH44j2GykynhP7SAcLrmRX7hZiHvEtP3: '100000000000' + DdzFFzCqrhsqhXkMqahoV8KxH3MGZ9ttFt3BQ51egE3fZSBPpjuzAqcd67uYFFPgyLww1E1T76rnFDVPWk5SoK3pk6hMGcwkAxwzVaxx: '100000000000' + DdzFFzCqrhszV7peSPWBiz3VJQc5sss6CjaLK14ErvotFeKyYUrUjQhBsjsjYZwPCnzurcMqbedXdo7ouv7PExwfC1qqVDuYEuNiCggu: '100000000000' + DdzFFzCqrhsujF7a7XyirMJuYh3VFXRitBRHpbSgfSiNpck7cTNmeft3oAiNpeRcSBaUfM1ndSptMBNFrxcrEYcPbHhwV2TV7BJ3wLWV: '100000000000' + DdzFFzCqrht9DGXbSN7fHYxqK2SPm8CBL7s5mzKR4aRFNFJZVND8fHLymBnkvv61tFibtkLKQmaFtMM2A5NZFXi7zbDpieEqqcFMdFFu: '100000000000' + DdzFFzCqrht3TgMjouHLWkAxFcuCxk8wx1XoG4p3gHCR1cdRZAtVmDqgSaLN1rPwiKzMBLR12GZhreFCdfBmdvr7tcagUMp2pUyEBo66: '100000000000' + DdzFFzCqrht9zNDXrxDkztkQoKPNqAnW2SsMXLUbGyvEnamF9ytYkAP9RcJSjpCk8imtx37dWiMNfrXKZAStpmNKDXswvd7TskbmJ5iH: '100000000000' + DdzFFzCqrhswUHvMPNgFVSpd1U5xpt4J74msDF51DhFCTNud7bhUt3d7ZfzupkgU2axa53igLU129Pk87DjFK3VJBWyFY1HzwGzGCk6p: '100000000000' + DdzFFzCqrhtA3WXZPaUNZBoAchGS6sbTkkmAZeUt8YaMKPxBTCh4Y3HhfsAeNV7aEHRbKdrbUSPVmtk2aQiAiPDvCJW3Hx44NpVKS3fC: '100000000000' + DdzFFzCqrhssNLTLnp45TsHmjgpxhEE497KCEqjXGTvP2YNuAZ4hR7SLDM3swmCiTo5ed92TkQyS5b3Vyy5ABq6JxeNp4222YdZTDSQG: '100000000000' + DdzFFzCqrht3N3YQ43u8jJTkSxQteg6DxqwX6ADWbLVeXtDHdc2TtQfXSvWqEK33JKp6Mz5dnJBYu7i22PoYupoKsspav1QDksMn9WJ8: '100000000000' + DdzFFzCqrhsjctXVagGk3vDSkjrYRxYZNm2tJJwHzeMeSTAiQQdJ2RK6qEojGPemKwJVVWmnLXndzjYiWMuJvtGnz2pkqYSfa5UiiwMP: '100000000000' + DdzFFzCqrht7bhjZErXHxigm8TW3gjBQJNnQ3nr9tqYeBFqNkhsbE7rkm5DmqmXavNvkVGMYfcemhotpX6F634kkoXgJxBxmoqT3Dp9f: '100000000000' + DdzFFzCqrht4fZ7bWmAaQV7JkgSEMvEuym5taFqDXqYn6GAiQTrbSqs8XFiU6W2rGje7cqYMNd9hJMbKhj46LBKWwJQsXRNJhPhBYUr1: '100000000000' + DdzFFzCqrht1cZxgpaEKkGj6Hvijf5ZEvHkLNBjhTRsR3noM9y7Haj68pXag49J9Pj7SsQrSgY4aNXyQRK9w1vnPybGU9LEMobe2Wh9n: '100000000000' + DdzFFzCqrhstgcXvdfkUk6HxcAtTs1Ys4WwxKPHiQM118enibwVLH8aPNY8TCBoKTh1g6m6D4Vq5dx3d9Jk7JmUekrH1ofxFBqkB4eNa: '100000000000' + DdzFFzCqrhsoTcUtzM18LjEuNvHApod1apAyMkYeiaGgL6ArYL6Enx6z6LvDAiQrB8hUnjUYdoMBAguKbbPkUwb8UZnwGuD7aQ2ZyBL5: '100000000000' + DdzFFzCqrhsmDxRBj7avPbTGGABQphJPDyPZotcXteNYcooSKfxZ5jyT6iDBZYAu9a6W6fPPWW62bXzXRWenEhqVEkXccrzDE6PX8UCF: '100000000000' + DdzFFzCqrhskPhD7hk8Q91J2zNcmW9R4ybLpvrEU9URW9oANULhAh3StYxeHWRTuZh97RE3BioLLzUdAVMupFCeR3JTnnTg2btm33LVE: '100000000000' + DdzFFzCqrhse7FaWK8CNGENKpywSPfnbLVDtC4zK2MAKXYQ6UuGrF6rA96AjQ6SvQ9dEmUgkDwP3WffUE2NctGtrjo1rk2Yg832vjS3v: '100000000000' + DdzFFzCqrht67ksABwmf7pFKBR4KunDk1VCRvDj2XeLwKZvubmpjSd9xLxyBsJdjetGgvL4HRQkZXu7m3TAQG4cbkNeeoUHyxtkkXwep: '100000000000' + DdzFFzCqrhses5fkMvvzWuUtkBGhdWaX7HFbSZfWWvDg7whKjPGG8wrxYqNRe7cceZ4YVbFuQ9SVQAYDerAoAiVEuGB4jxYQ428ibfVx: '100000000000' + DdzFFzCqrhsnov55muSAXAEwocLzwMX9ArDTKTaHXztteiYfpPYBQDanGTUkGb5wMGQETtS2tEripCgrKToDZRNbAxY1iLNsJTtGXMqS: '100000000000' + DdzFFzCqrhsj1KHd92eaHYMWusaMDShyefqD9j84rgdbwct9j1AB5kiDn8nbj7sQUB2REgAgQhXSdPt7musZf8xJuqmYBMXgJPxArCd4: '100000000000' + DdzFFzCqrht1et62EbBABXtP9qHeV2pRaEU9cyqguBsxzbLJBsNUb5rmstfutHzvEYujaysyjiCFGvakczvCTLc8hLTGsm7vBrfSE5Gg: '100000000000' + DdzFFzCqrht1cDmt7js3nsDrjobR8zFKiS5v1aYpNefvxCY8hsccq9YKkMZBp7yGxVQNLgxenRmXLa6eNVMU8EfmHBkCiDjPR2i3Cg77: '100000000000' + DdzFFzCqrhsetQSZMV8r8GcknBKvT3iMUD5szcYEkik7vkHYnDVMdjzZuPDqLFbCVEic3zLSEdum4kovmCfcLoBDETqN84YhJqKBxMES: '100000000000' + DdzFFzCqrhsh2jrDHdnhY9UZvnNrg9DNtuGUUrJNP1SDf29xm7w9fD2LVVcxYhAHbygZdcPrqLuUAdEnKDwCC14YARk8kRmDAuewPWo8: '100000000000' + DdzFFzCqrhsxSZz71Xe1ER1MTk8JZCohNTzRCDrx2gv1n7ZhPxenu8eFkk8nEdgkpmYWj4DPeH2icwHNipHLyDdtv11hEmx1HUZ8REqm: '100000000000' + DdzFFzCqrhsvdgurD6tgyCgTKzGnn542CRKEbJzKec6kc6cbmBH4E4wZngLyk1YLyxSrFdPbCUud3EncEQSQM7dLUSHPiDDxNikrDqoQ: '100000000000' + DdzFFzCqrhsshqdyoZ4rEBhLwCjwtLMnVcZW8qGwqkwE4zx1MWRp2cUPrp7q86gUAYyrZdJ2QUH4Yk5orfYgEoeeqRk2NSLvBo1MH5jq: '100000000000' + DdzFFzCqrht4jbeQLqNafwxfXoQXba8kRjz54BFGE7NFHNSoGioAFEZT1Dr1ikDyc9DyVXz6rNePZLaJUpTVHkLqwV12YswT6aQqxTSF: '100000000000' + DdzFFzCqrhshnp81eRN5fZXuViBAtJ4fFRsWBQEVnRp5U6NWbkNAHRMnbR3uEDCeJnhBoMfzzqyHbSG4a8QMPa3hEPoznv1ivjQHxYVm: '100000000000' + DdzFFzCqrhtCpt8VLw58giEDbveGi5AyYaADcU12HhZ4TzZX2AzqVYsXA7APHDR9Z7CNPUYb4x7CFrYiDmBUXRXpkHy1f7zqrTtaiWmY: '100000000000' + DdzFFzCqrhsxyz68spbiaPoHwXBKxoD5ZbUpscwgu3waU7nLBXNfkzLTy8JfEqMz3qhX2wHqPapfxCo26qdySs28MTp9pZPy3TTeTgwd: '100000000000' + DdzFFzCqrhsxLSS4VZTqcDDMawN12zMKyJzwLYq8Z4RjCM7Fm61JXHCiic1pfaf4hppMeZPiw2M3rQjiC2t4d74aXoDse8ta5Z3updzj: '100000000000' + DdzFFzCqrhsfbEcs76dGUaYEJCorLheaQcy4Wv5ATGYTff321GZZWd2nJ9SedhTV2eNnmNhcpSe34LVaVaN4sEu3AUYGzM7cpma2pQ5e: '100000000000' + DdzFFzCqrhso6PQiCqtH18UaK4CgAYKuvvTQ2R12o4jZ1miVtmBKTh5nLTM9ny6Fe679UZh6msXA64rEHSobVi8oieig3Qqag2ywRJmC: '100000000000' + DdzFFzCqrhsw7HNhZ78mFEec3zRgJfZuhzyTtwAMqqP8Mr73pEFLqTgAk8qGTM4EnGoc44vvkkJRgJCSwLqFxsjePCbPKPBAeGund9Fz: '100000000000' + DdzFFzCqrhstHsGLQsQhYRe2CB7BDNtfsqnuTdaD11zu7w2XugfMfXmJuMgMX7vBZr5pc9mwwpaAbQ77QM7LjJP6h2uhrYHBNxbv2zEt: '100000000000' + DdzFFzCqrhstP1y7D5nGi1TXkPkrAv5rypvHtZE8YkD3r9fseTeD7Lc3EBMyRG2Z1o66u3bTpfm7Lp49LnhyBBGECyp6L72RouxFfF8d: '100000000000' + DdzFFzCqrht8b23Vxk4XvUMDpqMiAr9eLuF1e9k1RzTCXNSNGEfZuqzJnuHeFwVnRy7vTxoNquj64ywoY8xaT4wEYPmt1QbvbQ2Prdam: '100000000000' + DdzFFzCqrhsz1oyrwS3HQ8nAeK9yhPvC5vYrEE8jqmkixv4aKq1NudSn6giyNQQKuM3FhBGwMiJHhm6kYtMr7JQho1oGiKw5YAsAPrDi: '100000000000' + DdzFFzCqrhsmWNTz3GNGH4okFgGcxRzBG94NiMnF5GzoaZk4LUMjT487DvRLvCJCAqrQe8X1RNeP7kX9NBieR5mqkmgbWxVd3uTQJkrx: '100000000000' + DdzFFzCqrht7SbejtNAHvDRzqqipzjqFGXucGWZw2bPE9QrmAMEba4hzh6t1n64RJMDDbbSN5wE3ybEk2mLwFUmBPHoDoyoFGverPenQ: '100000000000' + DdzFFzCqrhshvYUKNEbqNUyKbPhFiUjrG2wHucpw7t1ZP8Yk6YSGgrKe8U5hYmPUCMutkAM5UG6Mxw8TDs9tYBzsutEEXgS8L2gaBQiL: '100000000000' + DdzFFzCqrht8hnLivYANprN4uhMqLAbVAvpkx547i4UHfiDAeMQ8623wbqc4teWU2zM6XBPhys66yChZPLqiLiL1Bx2LzcUBWirRmTra: '100000000000' + DdzFFzCqrht3ShwB3C6aeVBQStc8oRo8mpqdCr4TmrzADwrz3ko26aqscvEUuFWE3JhwtKERy5Q9ihUYAK6AaiDXcV5yYt3e59ovZStd: '100000000000' + DdzFFzCqrhsebz3EtfjTYr7ZEEnQcpHG2V6Gs7zjo3FLD2YyEk2KWFDQ42LNczHZJAD3GtjRx6hxNA4zTPbEDxGakJKP7TKnUfCfTwgh: '100000000000' + DdzFFzCqrhsnUAt4kNHFcnZ6DWiHT9pbfMsBsn4SxUsWK8Snf8aDbskmKG95gLgyJQGkP76yedHhgEDw5ssRWeTThpss4YH7AvjJxea6: '100000000000' + DdzFFzCqrhsjP4JFevxikr6zU8TpZSjnoBcG81iu2JoGrrwAgvNgdYeVYGKFzq93FCsqeBfmTR1ktyPQoF3V7kAcaxj8aD6Rtuwr9HoS: '100000000000' + DdzFFzCqrhsrkt8MJdarX1ryE5DpYF8qLKdw7Pnz6S44yseEaByVsJDq8nDbgoJyNFNZGXKbXiaYqaLHEymWWgJT2Derz6zCRWgJ5VVV: '100000000000' + DdzFFzCqrhsuaHCL3YetjZv4gbVtuiTydkk8bxYdS3QD38HdXv7QPu3i2Na4pegcUEhpvGvZrRJWd1EwZyaWwEtx2iT3D9yeboMWZ8fm: '100000000000' + DdzFFzCqrhsspuoR5bGh7TGk7qpmrFYbSF13bibwZRaZA6fC1343UNC96H3fF4EjWr4yYxs93hyiB4FP4oET3DkdkKkwFthFrzcSfyTB: '100000000000' + DdzFFzCqrht7ZSUtTzHASGtimVWkSEayKwAWdWS9ybTVyE9TjAixq5Rjw5NwE7BpaUqRmzNBmqQKeQahsEHJpU266tmJkx2cDWCrYpQZ: '100000000000' + DdzFFzCqrhskbcDjS3TkPMLcfbqFN28uzoHXVbpAaEJRk3H5TKXWZkDqcQPsLA5EQKiTNDWqCEWFQMnPU99yeZgQxtn5bja48LtPwUn5: '100000000000' + DdzFFzCqrht8isJrdTLQbE1qVCmoe4DY9uZsGiC6V9cJvxdvZBTLbmnx2wA7u8LMCiMDRDQZ67PJc6qgATvdjDmdvyAroAvmcJoXcbJX: '100000000000' + DdzFFzCqrhsmSLni517VQDeKgi6NioEP3qdfh1q7EH3cxStiSsrQnnW2kYw1VzML2PBS7AuNwUaMZAAM3LfPSp1tX6UsaLAo2QTZG1uc: '100000000000' + DdzFFzCqrhsxiFDvynFQEdNbwEjoxUwoYc88GC1aQUWpqorusBy1dyST6rX54cF33afGANNScdoYBtBd9TgZbmREuih9VqGrVFDqcVKH: '100000000000' + DdzFFzCqrht61w95SBc4hCcYuZmd8mbmQ2X34xRjr7bvVGtfUXVBHy7HpAfzfYDxaaLNJHbr6tWby5xAqWnMospUxi2Hn5TFJ8k1u4hX: '100000000000' + DdzFFzCqrhsrUmUNUR7fpRgSwHVJk3S61sfBpdiacCBmfiYvwKMdZocyVhUxdMa4Q1Nub4cQuKrdhkhqQXFqHtcbpsjVfXaVn8is57S2: '100000000000' + DdzFFzCqrht1VoBf6Qh2cg2yWa72rJAmRSrKvJzvRT8fyN9vZzk9eFEF1S1tg3dMmKYj6hpjABP14gd6jqph8GsQzxNfkY4AmYVSnpXo: '100000000000' + DdzFFzCqrht8gn3ATia2Nm3frGzNm5wJPSL3k4r9S33hgXWhBX7Kei8Yhwd99LtsfddYLV49bHid2QuVWv24eMBrQW72CiHmLH9wx77s: '100000000000' + DdzFFzCqrhsh6qkNtSLLVybmaTFP8TxxxehP2P6mX4zLx2fp9yjBoDrLEP6UfgmpWNu4Xmx3XfpePoq8Z3xnybM9XcJsSR1CWsrXwxzU: '100000000000' + DdzFFzCqrhst8Uw7gByKmaC9iWiJcdX6JXPBvKeY6H5cLgNovWX2bHrJpJn1ZFoB57AS6HDDz26EyBd1EW5SJus9js89LEjJaTmj6tbH: '100000000000' + DdzFFzCqrht674UZJL5dJvsbRJPTERWPdcNKqhyw6WY2rQhg1bked72hyEhKtV5jQy69NwTj8512955M1oKkMv5pNzxd6UJrKsfXW7a1: '100000000000' + DdzFFzCqrht5bgPw6xdXnB92xuCvUyJku17s6qZNZrVG7vJZ9ytGR3fhvwNSnS5rTUpJtJBnywJPWNionHhwugusHHnkDH2pnDv3dZGY: '100000000000' + DdzFFzCqrht1WUNQWNky85reojZbvftJJE6BEwJoxHdh8A7hkJCz6YNEU1Tubvkdm6tKm9UoWZzjLsLybPHZd75mNmFBzsxv6hsjQ8TS: '100000000000' + DdzFFzCqrht1sa38YvhKjmC8X7PksuxUPLJoMa4J6iZLHTVcTUPmug37aiTvNSKz1wecw3H9eBJAyW4iQY99ChvH6xYa4yk5GbpQC4jU: '100000000000' + DdzFFzCqrhshKv1mrTmmVvMmv8RPVeF4F7BwuUMsQmMzh85mhUcG3LuGvKoNUeyScoX7B6AxQVwMJxmGyi4gcaiHdUgP1pzKubSKDJ35: '100000000000' + DdzFFzCqrhtB3isMxmMqEinxsNuZFDUjEc8YiYPauQ6Wk1i7dBZNaREeELYdTPma27DC74wPwNHgUEx3ddA1UqzfGPm7LJsQ3aXeKyCU: '100000000000' + DdzFFzCqrhsj5EJP8ixwzFQ2NAj2wz5DgBWqPqBRwXacK4D3v9QXomrVVupMvUnLWP7xMVJxTcQeXfGkxp2WCFwkgueHCnR8fzAP7wkS: '100000000000' + DdzFFzCqrhsqmAPKepyznWeoPeheeWUmWcv2TL4hpRRT8hFajT3d96BE7n4WhK1weN18YR18M9onrTVqHdQVLvaLFf64PFDh1Cd4ouBn: '100000000000' + DdzFFzCqrhtBe52zEhFjdGAsv7LkaYaX81Ho5yygUD8hLnhwxwoSiL2DyhU7YF4qyfcPfu6e8ZyViyhv279QbQMTVwqwt4Kd88Drmt1V: '100000000000' + DdzFFzCqrhtBMoPC1cJbMPYeLLHay9qazoAqHmi6fAtgVkedcoWvUrkuANyzRwmL4oCuo5SsUwbLCvUTLyPKJv8bN1kd31Gan5hihJUQ: '100000000000' + DdzFFzCqrht439benSkBHLrLHaicWnug6otuF8bLngSDYKpQZk4yg9tDhRuawuB8hWACk11qAULoGu9vM8UPqoYCdzmjRU5SYBGNe3wj: '100000000000' + DdzFFzCqrhsvn3VAfc7C5ntUjZr7HDgmCREuiJdmy7YBDqWS6mYrmdRRZsc3FVcyA1xJLoNzjtkuhBqrFwpQLVTMe2AQBXZhT5RBMrED: '100000000000' + DdzFFzCqrht1AD6wnMCZQYRXN7yPmnPFyn4ckJXcvfiwkxqJY21C9uimHr5YGuEtsaV7LT6vWtYMubo2PsgSDzbjkhs2pVgcEgqPb1R4: '100000000000' + DdzFFzCqrhsyZKJcjPdnL4yFT5iaVAHTbNwuVGwR4s9FUZoRZRtnky3WaDuvxtPdw5WDJXxtnf1ZxHvvVaemvH4E8qvif5w4L3FMyq71: '100000000000' + DdzFFzCqrht26W3mvKYkUrYr4aRXumECNhKYJ6oni4VhrfEsFRT8ibVgoeMp5EGqjf1SLojTcejx5dPXbxienJLsjaaeBLAjGLFVQGXG: '100000000000' + DdzFFzCqrhskRMcqPxXszeaaa3e3GeGm8svQEKMXzGGaFrxkkGeUmQqLzga4yG3NU6ST2REG6dvA4puebdrRF7Pb2LGFiCsTTPSSCWX3: '100000000000' + DdzFFzCqrhsiRDd2Yg7sRQvzXzGV1KH7ud3Mayof939zqkmY7mBKPDVVczmVLhZAWs26BLg3D9jDqacJZLq285mWSKVFdjCVCT9bUs4i: '100000000000' + DdzFFzCqrht5fwqThtNT4fw6zXctvuHhq4M9wjPVHYqdHDae1h1NwiZ9D3xoeQALXLEdp4rQRAtMK2sYBWTxSN7tuHLNyZ5UUr23aMCW: '100000000000' + DdzFFzCqrht7ZPByhWy3JoK6VWHNH4XF6sjV5MVvtx1v9a2eVLiUSUce1HSX16dSbS3LYYeh8uQMPW27fuG1P7kv8HprM7ebX86m1Tdg: '100000000000' + DdzFFzCqrhsqCo1nbUfeKbuwBS8MRSAfagH5jN32GhF5tizgs3cTSoHhEDtXjWmRXw8Bu49CLQ3pZ6pvwk2oCDACX5fefMcU8vKMQzTw: '100000000000' + DdzFFzCqrht8JyqFHBZGvCmizKmfH16WePzznmEFozMByVHVnmAbU69U4VmoxSeBxzyJG1rtcdKkSMjuzoJNe3VXnMkUVDzGvQcYTkGj: '100000000000' + DdzFFzCqrhswufamdszJtBM6RjHjdeKxMuRWFb2YmRaUKGvVY7e9rLdvzXAY79HEiJqDT5V4oLEX8w3JExkAT8XuF2ZjFHXNJY8rvUFq: '100000000000' + DdzFFzCqrhskfDsd7cWp7yv6LUwcb8C5DCDSdJ6W3VVMyJzZ3RdsfQBbcGhcMVqzz6ZbbwoZn5P4c76fzKjUMm7kWFNRRtYB9gSNtiom: '100000000000' + DdzFFzCqrhsgMJmbPNm8trUEtaSvF7MRorHnNL73PzuCL9uauuUUN7K5oHsop6eXjtDPywmBsokBiHz1zQyf6GGz1L7nDfmYn9gsUrNQ: '100000000000' + DdzFFzCqrhsoXKATuRMKD8rih8rwiRbs5aJuhpVLYCVYvafwgcpwjNnid7NRBeu4k68EVhvL1QEA18xbAWDW8kn9uJSsoTjwQMDNUeE9: '100000000000' + DdzFFzCqrhsot5S3cdu1tojRcN7cwidbvpdiWscrBGvvegZ28d88JvR6CyAceDCoZhw48X2R24XgVLkTbtZq6TkCUEDtXRhSt9WEmykx: '100000000000' + DdzFFzCqrhtCQkRpBXwvzLQHmJqPBzoVngbyFGRG7D1cQ74QhKCo5f9TSUF7gXXZ6E5aDQjm5BihSwvufNCZ1WZ6nabQ9Fhnt9M9CdZF: '100000000000' + DdzFFzCqrhsgP42mxaHtCFnubPXFeDwZuY2PPL2DcZxc5swphMBNrFq3i3FPAzq9CbRWKYFZrYQgxkSXNHo4zhpV5e3rTgyQ5SkWdKNS: '100000000000' + DdzFFzCqrht5aik8mrKuZVVuNtq79aC8mn42CMYtd8C1qTJTCthKqisf5N52mxDv7AbLekF3mCxYcPuHwDXYL8SH5fmQzPLsY2xJ5ynv: '100000000000' + DdzFFzCqrhsvmoPxZCuCx3ZCXmSpEeAoZtmXzwg2SLUiiXqNkNRmPjCXorfmUrhsiYTBKqo57AiRQMoVxrJdgXFxr6UDYmeGbn8oRmmr: '100000000000' + DdzFFzCqrhswZ4zGD7XBhJhhafGzTz4nCttX6kMtDdzugabPrcaac35qbKNau3LV4Qvk4zKU7NLXBYE9Yo9wbNkQwHMYjYkx3BpiyX7t: '100000000000' + DdzFFzCqrht6jLpBnpFJkUQy9fnmVzETWPfXt1dPwJxvzWWJBQDTTBsHN3HBWU81tZhmATnXR34GmYAjYr1AmaF7h2jt9htTmFJvNTMU: '100000000000' + DdzFFzCqrhtAxyonZvFvDfbDpXnzYV4Hva5S8g5sHDdA1d5PKeTjpkD2HY53S7YPL8og3h3xxK6Z4T9NqgbNx56PkjWTV673jnb8foGX: '100000000000' + DdzFFzCqrht1otrMqMYaaa2DR1mywJMLx2mLcBtv7Agcr25ez2yeW5Az8URR3a5GQqjqyAcMLcpkHsJLrcY9mHfLGkNZZXGzHJQeHMUV: '100000000000' + DdzFFzCqrhtBAjiiCzh4jvK6DjacJM2kq9ig5K7gm1EfGq8CxYkVJJGQSjFhsY41GjEr2Ed5e6MTJcCWhnaC7YWU87VQrwffBRqtJrSU: '100000000000' + DdzFFzCqrhsuQJwWwhu6Vxpic7WZHWq6sY3vcHh6DuftyLYmRSqfgMjgsEAfTewQx2qzASm84hXsQBtweAAHuceJSuq8J71pQ1Phe9Zy: '100000000000' + DdzFFzCqrhsye2oD2kUWBVMp1tf4BCGCs59fRrH95ujZzBktXhQsqKW4STScunHzpo8ynrK17NvhGMEL7SKz1Ahs1ACqUNdNeZgdpJuA: '100000000000' + DdzFFzCqrht2PHXFLM3Q4SiZx5fRAPFz3KjuMJZGxifbormZCwBwzyz3iChnntXRDosXTBuDcnkCbpNnLfVqZ7QBs1BSVxPexFKKkWhC: '100000000000' + DdzFFzCqrht8R7cPMGDB6Dc9j6iWJiPqddfNehZn4Hm7qVZd5ZsuP7fkDAc6QJhKj2UYmHW2CugNfszTdtXNXt1GfobUJAZicnFDektu: '100000000000' + DdzFFzCqrhstRWBbLghUCXd5Gnz6hYCQ3UBkzDdGwHRg7xduF91Y3uP7XvkNtN3HS8AXUvfB4zTN6p9a5i4AUWshgTGevpGvaUvGQauE: '100000000000' + DdzFFzCqrhsnrMBKUQPpDT7FuEx7GE4wR6rfeeZTfZXZM2rbiG6gctLxBjbG6hf9w4KbSsSFWBrZUsS69jJhnBDwDTPAMXmonZTEaaJ9: '100000000000' + DdzFFzCqrht5AHhMMbfzKf2shQcgSqdoWq9g2aZfbvMERPGjMqUru1J2LwUzDmkeQoWJ7gMSyfVWeKy1DQ3SxfToGjsWCX2Rc7wh7wwQ: '100000000000' + DdzFFzCqrht4x4UcjeNeUKLETyexLqRaJZCibBDPCTrChEi17DeoX4DskREg9Yt5SpXwRKB2MRFaM6THKDwDMWsNZJcDhp7xjjDPXBJq: '100000000000' + DdzFFzCqrhsqLja7ksswD4V54MUPjWuVKbB2WmvhNvLpJjYLsoRLhHhmVYKp8B6TjPdm3jStFhpvFuHGqgfKYsiwersy7c5YawyU9XLp: '100000000000' + DdzFFzCqrhtC2RFhDpTrKMVhUyDkoqB6rbn5XWm23EFRNHxiMYpRVn6oHNUudLkDnVBhsE3VoTraucUK7gEEozNzu1aniXoRZPNr3TV6: '100000000000' + DdzFFzCqrhsztPvaC9obe4uPPeReoe8Yz7LGbEvgoUMURW2t26ZKvCKQHRYwa9q3qmea1Wq6Wez7N4wMxKstZvhUSMKGq2mu35YQSncp: '100000000000' + DdzFFzCqrhsmEdDDkWxW24xZv4miGsG89AP2TNgC2r7EEAxtaDi3ueEFveigv7V9ZL8Z3aDcuZ5jni6q3Ww9DZ3th7PA3bvpGz7JbNpu: '100000000000' + DdzFFzCqrhsky1fpTgvjfyfiH5oUWprVjckb398MjDj8bK13wcRhz7H9BbEsjCNj3Rc3xJnLkDNSkMcY5QQoAznRC8uPwfhXkk4HMhAi: '100000000000' + DdzFFzCqrhshFQU8vJQnDd5xgC7b2uEZX1RPibumRJSEdsBUQgWS4PGhokHc6XBM4h7tLiGirAhMVVwgJUpTxBtxoKbp3pXtCBnHKq3h: '100000000000' + DdzFFzCqrhsqvYYfAtrwybXyrZ2XfGpEDN3WTMyH2BsgehC6GWTvs5CvQW1eekvdPWDQU6HLbfETVDugNbeNRYbfKUJzyLjuVVDtmWRt: '100000000000' + DdzFFzCqrhseP24Yu7xxXQjuKzhQyCiKb8edL1qHVaV3K4fUgEAvHdeYAXgpGup6EeY15pGvVfFfkfBSRncse5pFijhLy6tGX97Muj4i: '100000000000' + DdzFFzCqrhsusXwj2sxaEXmzz7wAy7ngdF3pjnm1f8U58VcxXRPG6Zg3zsU5xTpUwsQzKTcXj14KCffdy9hUmo5dUisyZgGXWiyfoptt: '100000000000' + DdzFFzCqrht53feJEW3NDHkikGTpkGHoSqpwF24kWSEiFd7P6ceFeD2fptSJQ94yiCzh9FgqH8AdNk3gczsBVv6ADDvJSsqyiKxjd3vS: '100000000000' + DdzFFzCqrhst4iBUkfT3Pj5xA6vqb8e17LhFHyKkLiVyUxGc7vLkYSktaJbC6F36j9d1xN5vX2hkgRHzMaN2xkaGzw62WFnRFVauoNb4: '100000000000' + DdzFFzCqrht8P2ybUJw33prwqPWbkdcbhHNy5QhsfBosrV7toU3R56kFjhNyhdK7gZDHWojsKgZztJeGidTxh81wLHDKXxBwqj9QBcyv: '100000000000' + DdzFFzCqrht6NaQ9QkkRx6UrqFLquWd6gGicBcu2BxWS2bP9cXmhJ1Jsm822Ljtq1ir13R5nZETVGZNRtHjZGbddCywVmk615kJQuLcc: '100000000000' + DdzFFzCqrht7ncG7G1AuvaYpLn5E6zrwja12rW2WatbR5QMRaLJvoCKU4QLct2MFVe9VGYbRPDtJBfP7E7PapKuoKMyU1qz79fD6PR8G: '100000000000' + DdzFFzCqrht4N1sj7JjkVgdLnL8zRLG1RSF4RmoUoRS5g3JaMXcQfTMXz7fgxJQUULK3oUcgS6j5ZyszEqFZtRBoYCZ4Zcm5SfkFAyJe: '100000000000' + DdzFFzCqrhsxSdPSYTEWC28j8gi3qWDXxn5VgHa9XWWrYPja6V4xBmob8svGQho5AHFWCPNHcT7XHPBEeYcVtaMHybNGgzYbe2jaiTiw: '100000000000' + DdzFFzCqrhsjJfTgS7pG4CNtR6zCJhVHFaqCzhfY7jY3Cf8CxLqdvL2QRMcuAaRZG5ABLXAcB674a4LVWTbM1wXJ3ADz9Tg7PHoEbfuX: '100000000000' + DdzFFzCqrht5QL2ZCjRu3vsp36PReVKRqjGr4UqNU3i454psdD9hiLMC6JbhSncwjyFBNjwZiBWCUyY7ty6iwpCUBT7oyk5Q3PkrrhQs: '100000000000' + DdzFFzCqrht9zucT19Ym69mPEorJo8XnbCafwr8r4DGGJpezxMDeWASyZhQNc5vmMvE7wm5VX39E9oeC9VknNYbt6cZSeHn5pkWT6oFu: '100000000000' + DdzFFzCqrhsxU6yHdTZSq7ybgPcRdqgLgiZ66Etya1G7oGRAonUGiPugqfYu69M5QzTMMvZZLPnybSvjWAy2BYwBk9WNdyNBrQNSQSMw: '100000000000' + DdzFFzCqrhskb8geC1uij7PH7g4f5DNkYxcfpPksiKFmhZPvivukH8UiqoqtCn8Bm4zjMM6tE4BZ9UVpFvWmJqNkZSeyoi6XnRAseYrv: '100000000000' + DdzFFzCqrhtDGHTDogrmCeUYB45ADfe7jsUD3sX9ZTep8TsVefuxjBA2nDSZ7wD3h6RyfZZXJJxJssN4x25zH28s7qiF1Hn8vKc6bbxX: '100000000000' + DdzFFzCqrht8AbMx3Y8KcapH2zc5eqKtaY38ifkS9cUjzZtyFT2bNTMWVuJQwLQmJ2Q5pL4DZQau6bqjH7N2EttF3bdmyWVYs311ue1a: '100000000000' + DdzFFzCqrhswKhHP8yVXgyS8Tv54T3aNHjvVgoYigggyoiMD6847ro7zanHEVsKHgjtBi12b4pAYH86uELcSKLeKFfqhsgDrCXJ3mUh5: '100000000000' + DdzFFzCqrht3mSSgh6tPYh6hTqnWwne8QTHmuDVwExYnVmeNESsfS9o1ps3YqZ8zDTmCBLm36kya8kAknxv65FHq1mzuXEeh1xru4uvy: '100000000000' + DdzFFzCqrhsyENFC6AjpwnanwvCVYFEHjDuP1pRaLSKHiAMs9u32W7vsUChmK22p5AXT2ExmgXPfAUVaDVBGuTPzM9nAPPjSzJ5cKcUC: '100000000000' + DdzFFzCqrht5LzM3ujWHNuo54Tw8psAzq6LAYmfGsbyUGwQePcKK1oEb9qF5MCAmoWtaNaQSnUiT2oEs48UkG8TRrj58hfC1MaAPNEyk: '100000000000' + DdzFFzCqrhske3AMwb4scPsfK3Zy2TtD9Ero7R89482cKfvow1oCmC5eovgrykPrPbU6twceG4ChNS6jzxSYgUG8CUov9XzJwpzfJi3F: '100000000000' + DdzFFzCqrhsvq9iJqPVr1qMsPFT4DUzD2TuWK9F4WE9B9GWZWaad3Evw9VbdTsEkEebS4YaDiaB4tSiaZupk7mqPhaiSLJTPrY9Tevzm: '100000000000' + DdzFFzCqrhtBXs6wxxRnJBfr6PM3fQxx5gn8jVMzzS9DYhdiTsZ8wZwvBTazaYZuVoov2U5Ljr1Epaz41td7UDgD2iMxMAV3rqbZ7P8W: '100000000000' + DdzFFzCqrhtA1aAZb5ewZvR2LbkjcQjSAPGqGwkZwQ9XQKJRwTUVCeZYcNrNXi5T47SxRHQ27bJCa1fJkvi9rX2Dr1ozucSDMSYY9bxX: '100000000000' + DdzFFzCqrhsnCnZxEgwwXu4WKKSNADuPnrid5sUzZKiEx9b6KGPuksyM2gffmFN7Ar4EuB7sggome2ymbkNZYCfd6H4rw7e2hwNHQJcF: '100000000000' + DdzFFzCqrhstxaRYq8wHTYkjBhaZLJBDLGRZDM9RnrVvbvWT21SogEkoG1mAoQsEHwY19ypQ3EiQa7fynmHvYUUZkmHtD9RGYi1KhCCf: '100000000000' + DdzFFzCqrht2w1AnP5nUVdHNn6D3TUKP3dw6bAijbK1vzUzD7sXVPothRffWVSXAh7w9UjjLcMzCznNmv2JH5zsK4hmSpX9pGRx5jys5: '100000000000' + DdzFFzCqrhtABvmYEZptEVcw6gxyTd62k6fhPLtpP1Tr6CnJEc6dintCNuZes4KxH4Zhmm3TSZRVUWLwYKxZ1K4ijzuZvXCfkPigRy8t: '100000000000' + DdzFFzCqrht8qGErRZP9pdNtioCn9Y6cRDNXsu4UyrfzxnEzCnEVPjcDoKZKQEvaoNHv9PXm19geUXujR3zWMQ1QqQ7Jp6X8HfTYbGNC: '100000000000' + DdzFFzCqrhsovhRtApboKb3prBCub2m2fTDcJ3CMbc8UzFbifNQqrBSh4gbehxPjqLGYdAaWShfUYDKCHCpQSYPqHWSbmcQJKuh3D8sz: '100000000000' + DdzFFzCqrhsxoTxVUtpWvdxki4gQ17RUQWrXYHbL6YagHqVQnsVW2v5XTnhxFnYriPVS9Ar6LgNJ1iL3R5Aia1bpJypnR2nkA9WHbSGm: '100000000000' + DdzFFzCqrhsnhKt2MWvXBt2429LxvnkwJ79kmrG5WiM9Mkc5wDQNPrj8nMwFcZiRTPnGE47tKUg3TwA2Yq9vovpMSHRTysn1rt2SbJnH: '100000000000' + DdzFFzCqrhsjKkvakS7dVrShF4wz2orNBSMJMGpeyYNkN3kvN99gFJAhhVhFxVExHxXnmhTkJtcHWrRpY3xm3DAjC67t2CiCcmhyxyKy: '100000000000' + DdzFFzCqrht6Yy7op4YtaarvDjZtnQqF3kaidEdSaGqz5WrqhNx5x8jirBwjTFM9tcg6phXwkMdAoj3DoPWrQAC8hQ3rRUDQPZcxFh9K: '100000000000' + DdzFFzCqrhsunHKPAoacUVWLjX6SdGeHMymcN98WjRigakuNumCJeyCoDaYts13YS48tTkGYaP8ii7aTv3DvMaaHg2c6UBsTrzSB59Xn: '100000000000' + DdzFFzCqrhsmLc9QdkGQ9Dwtv6MwinCXpEpAeMz7Uc8giDk34Ud9Y5iTL31kajUbVTGNJ7g6vF57mwhoEx26U21DHyZe5kPWjVKw57Eg: '100000000000' + DdzFFzCqrht8F8ECWdQPVEZM4z6zkiMnfdVAjHwsSSGFyKfTe9NWDYfv9iLUcftptXYuj2jSKJ4YU3VpaGfKaxNsS3aaorervsgSLUy5: '100000000000' + DdzFFzCqrhsr821ubDTtA2N42NY2zBcNb78csH75ThSxhKVYGWjGu5kxJqBQkrpvtNXmSHawPDgnvtuWCpYCtmxKTJK5QArd5ztGXSd1: '100000000000' + DdzFFzCqrhssQMjAmz66DvcAfSMfPJxQSfNd8cA9vuknPoin5zS6QJ3ApW86EPhvJ4RzzkYooEWw2XWM2KRhqe5pqLF7ZZL5YUFzqupY: '100000000000' + DdzFFzCqrhsn5WhR7z3AGj5p7jZmr9YdAzojZYQL5s4ug5XFtZet5NodNbF2NuKpYki4GhYk7bM4ehhnCFrSzhveUosXbrF24XqJGFV1: '100000000000' + DdzFFzCqrhsvnmPSFn5k5NyjzQbbUuXsdvBrwrzirDNJz9T1m1fYc6dXaa6RkHxfbtpiHoiUiYM5VFDUfFRuBP9FD3UehuofKujo3EWF: '100000000000' + DdzFFzCqrhssFCusazWHXUZ7khgSfSNbXDUTrR9u1tc62Pmk6cy5PtYoPqXAY4wXnAZccHVvJQduPBQ7Xj3BmYUaQjAtACiyS9STsWRW: '100000000000' + DdzFFzCqrhsuX4Ju7VST1WP5jvWamxTkRb1ghrJwSedFhBXiZtdj6EYAGW5CdGwF9NeRV9g1GS4ttYso7soU1BvYp97BL1bJdrHZG7Pb: '100000000000' + DdzFFzCqrhswvTyXzhkrufxNkSMQY2sUqt7THjne3wqUmqNgRsUVXefxHGZ4mUq2FjpSKngah8Kgnoboxh2f3HsTXPi9xsvjnXxiJDLb: '100000000000' + DdzFFzCqrhseBfUQzpJanYhPqpBQdYYsoJuRrSxAi8fQbL4Sm2UtLjNRbm7T9Hc1vKj8BB7e3M7F3eLRQUFNRMqwjgJfJ4ANnFSoRVhU: '100000000000' + DdzFFzCqrhsxTE6PwWFgKnEbQo9NJvBPCSoTobkaJmQRXJdwhiJu6sXGn8oLQhfXsvUjskXetp4phZN6GPsiYW2CSNebvbkdiiWS7bm7: '100000000000' + DdzFFzCqrhsrQpCCp4LgSTqkw6PPKH1bkjQ6KAznmSK7izVDaRd9c4WsMQfKonRU1WSX3GeSzQw8YrSLcZckFiaKrdfGaKg5ps7CBzph: '100000000000' + DdzFFzCqrhssA5bm1sZwM5waYSF8gzKAqfKcPHmcDDztCSyVPLSRT97YcpC9wH3ieVmbcEft6huGCHNKT4JWGuVU5RdyVmN1Byj7JV3S: '100000000000' + DdzFFzCqrht4wQ9tURQwpDzMHFkxzthYn5GmgQujS4GFYLfXSCCmujY6rKkW65oKMDhDv3MxrwE564CdEpRCX9TthjxzRpH9K6GgjbMF: '100000000000' + DdzFFzCqrht4S2sfyY8nsiLJa1L1LeKVK7Smd53zYBhwwDz3XsnaZot7QNUrmG8TsfL1DAQccQ16fMJYDvLoQMQMv3i6q3CZL7KQzaCR: '100000000000' + DdzFFzCqrhsrHg2753KenwVkzJJKJCTLad3fydBmQaDyy9Z5AVwG4fTLHR7dAPm1Q4dw21vekUTb8RdFkgmviRZarBiUqxF3AqcFwuL9: '100000000000' + DdzFFzCqrhsnoygDdz5s3jHhZB4aUAGEQKHPJcbAAuEzcY4M1iSRh2tcH8r1Gm4QXEPrhtfq9bXjaEhxxrsQRDxwpNZfjiK1Qk7ahkMu: '100000000000' + DdzFFzCqrht2Q922m9WpwHYxStkPMHRH6T3yCW4TXPBMuTJhr5zGncVygCURWNgdrgKBqsNojqK5VWPpDkr7rsGF1jdWrreweamKqFT6: '100000000000' + DdzFFzCqrht8zHHSqsSqGVUYzS7XN1ZxAaKbFh3A58a3Mh2f1MDff4jHRmBe3kgqTHkr2fo4ootgite76yMqEoJqRd1EqoEf66FPDbFr: '100000000000' + DdzFFzCqrhsmajz6R4cJmAmsiNdS2DTz8xBiiHufwwBziWFJFD12B8EsvhJrjTo4o497CZozESxaSp1j9RsxFKUdhTXeBgBWUdBdT63D: '100000000000' + DdzFFzCqrhskspMSGoJsEBYtrthZpoKgnMALXkn1xvj6FLngpveHxH9Xz8cjNGdPLUVvYMXg1AMLAGYGBa4FqNn1Fg3J1spJsVbNwwkM: '100000000000' + DdzFFzCqrht7JdNAPQCq89zpLY8dJ4eKEBZmfRW4qR5QHnJgnd4sXHYmotehGRG3riec6dDQWVx9PTtNy7wmDCL1y86WpyPfjejwe6cg: '100000000000' + DdzFFzCqrhtCSH1pouAatoNeF4MtVHc6m9XNDQwXVTiBYsZTxJoSrCmBncAe51t4TZ1kmtZGoCLXkSUL2SvVdc82ne7bw8y15GDrVt2y: '100000000000' + DdzFFzCqrhtA2vGMiYJss5afhtUN63EdLJk1mxnvsXzhygZgajKzEVxURZpu3EikvVAppnAxgg4nfRJxypREE9iGjdM6qx5cHj5Jpejw: '100000000000' + DdzFFzCqrht3pM6bqHYcJRsYmiLD7NkTnty5AUVtiUmnUiGrpg5Rt5xwmsntBe2HDrsrKteSTSDbfoydXALXk89Kzdp9JobQbp9J1VvP: '100000000000' + DdzFFzCqrhsr27QaZfATYvsqjV98vMFEgvffD4tRsPefxJi8MHHoFQMEJ1ZV2msWyCgYb5Etgh4KV2Sh7YL3FgwJHuXLuVTYv1acdKnY: '100000000000' + DdzFFzCqrhtBb7mNhy3LowyiKRjci48zwuUqXGzZgvDSLt6mWWdgw82zmLprfhmLK3pS3JXYSJMPfndcUHBPWWNmyuS53nmhNF55CqLq: '100000000000' + DdzFFzCqrhsnB7u8SrdGTMgf3PVRUyz9gzsK3YCaDEP8G4rytti9REugshq2CCstwpTkg5iKguR39K61vTkxeHqZNaSqPB1ZATsuhoTj: '100000000000' + DdzFFzCqrht2Bhpc4Ba6nT8R3zAaiU14vhJRSSHgtbGYWziqUMiJ6FnDisdhVtfyUqyfzsPvUjYWGk37xHxqDCz26427wXCpAN5j2w9C: '100000000000' + DdzFFzCqrhtCV7RYuxXAwLnAu2rkmcVKasbuTzSbjwbQPxHzP3KSbVudmTKgBpRfnzM3CVs6p4nBeegnqD5KC7v1oXjfw4rEVNQg4gVC: '100000000000' + DdzFFzCqrhsuuY2n9bbyPKxT4ZqqDVyAvFqEnRnjabaDPDPNQrxPruZEGUVtprsQtTFs4h7kGisCeF97Wi1GSaaa15EFSneM9QM2k6qe: '100000000000' + DdzFFzCqrht6j1wgApngbzBXbnpFVQfPg4JQ2b5C8U8pG5M9cWo5v8rAVo1nDGMPphyfDVPjS5rc4sxb5y7MXNjb4xsDjEZ4UwqvbSYn: '100000000000' + DdzFFzCqrhssKmUtBsrjbWL1iT8oSeD13MXh7yrkVmecAYv7pUYfNSr6XRT7qQWcWHJxaYYuPwt2exac1PBTpZV65zapvbnMLzu8wmd6: '100000000000' + DdzFFzCqrhspPtL3MfMcHeSZ4wQUvac6SPGNCiEHrXbqfzQ748Ne1ZUMmBUzVkN8RTZXqGwTPdMXY7qnWRUmBGoS577wqvint733qRNK: '100000000000' + DdzFFzCqrhsr86UF6Y9WhdAY1dFyv3dkwhGBGwNwNx19wvPugGAyDEDwmyQgVTNfCHGZM4FdLSWQzwfXo5DxDRNLyizsX3DHqhCzucAM: '100000000000' + DdzFFzCqrhtCEPtsXCc19jpjRZX1yL3Bfp6FfP333DZ4w5R6dCS1CkCAM3eQrF2dsrNs9YaanbhBoYoZXabrKccYDqxiqwDCeXjCAy6z: '100000000000' + DdzFFzCqrhsuJ4KGXPeq3D77Fh4qgz8XKkJwmfG84fEhcftKyDVGzfrpPsp883F39aS2DFAjACLUVDKuxARh3TjnRk8hbah9YLbJ1VFA: '100000000000' + DdzFFzCqrhsfPshhTyx3fsWoDA4JpYgAeUZYaAgwumDqF3E5is8hpD3qQJspe5SrktkZpkp4ACSJvz6AEHEGqA933H6SBCBAdhS2qHTs: '100000000000' + DdzFFzCqrhsid645qK4Emgvho21JkCkMXNNsjeYDnGxSFtuy3VVm6BSvGuWSqWptkz7iu9E929FaWVtnX7Gv58Re1TESYNkhTcrFBnBY: '100000000000' + DdzFFzCqrhtAny6YTDBw9BqR6B8EjhYXk4f1FYLGBBqHktdetgAT3MPKtgBVHw8uw4DK6Das5Ya4TkbmNqwgqr7R8L4H352YsSfL3X7B: '100000000000' + DdzFFzCqrht8qqQVBVJ2mcZgqahX1BQ1393XV7ZUzZw2gzqWy17nRdrCvPLhrxULWFuxXmtdYYp939BSUuAvSWsFvL7ymkeZbvdMEcnE: '100000000000' + DdzFFzCqrht2q2XaYTfDdAzG69xZjdFtYj14EJTkUdJPTkFPtDNzKuQGjrbNwgYi63GrYCLcKq5syU5iUcFBHDSYUVJtu1bLaDVg2i1P: '100000000000' + DdzFFzCqrhsfHLcUKMopeMSVjbUU1waXdYzdvsoBEnoQGQ7481AMZ2SjbMhfqaELD3baKuR9UgtpEHPtdP4PYBNcAH5qL8fsvEMzrYzz: '100000000000' + DdzFFzCqrhsoBY58ytmcdEPBpcNsNZSZWxmc4tUajwtn1f7BLYWjuRsZCj7aYq1ijesCTVJKQ3hNSSzRzYV8YehCZQmbNN3VREzDQYuU: '100000000000' + DdzFFzCqrht92ihcWZLduFG3k4KiGgmQoGhSBEPExHDCh2NbSqvra7GNix2RjYfWX2otBy1iv8CYQQb4g1MrtSW3CT9Fj7fg4pmuf7Pb: '100000000000' + DdzFFzCqrhsehNKvbiX1iEthbn4sT1nucdcrAEeJLnMs9B8SnGCaQNvq2Dafs4SikXnRPc1hdH9CuEKRNN999jd6Uo6umqeZd7pcLGYH: '100000000000' + DdzFFzCqrhtBVnrSLcUGj7wH7iyf1bHrtnrHcoaUWg9YQf88NC5xoDpwuxEm4huiLhNN8ti8ptX2GzxC2GxNnWT8oXx8snLCcbvZgdMX: '100000000000' + DdzFFzCqrhsqmv1XXKrBZAR6fQdjA9DdHW1pfgkPmrak7qSmbvZTA2XwXfPZnc8XimHLLiA3Car9K59StccqNXBqyBcsjUxtQRSHyrER: '100000000000' + DdzFFzCqrhsqzdSBWXQkUJ1mJWxUbPgXo3vFnTfA7A6G1FbFTeaCgp41PD4cSbr7YGdy3Xe5imXGRnds6mTeecC1WTVyqBiE4A71FJAP: '100000000000' + DdzFFzCqrhstAu5KnBxgNCTT5XJdYQ3XYwGmsp6nuGoPXtj2wPGY9vLEzvsAYw2hmkei7EBpPEaEE4jw6fnJGFgQeyZj7A9EFUxRF9aA: '100000000000' + DdzFFzCqrhsqiQdYJSpcLAPXpS3ENoiQKbXRemTrZL9fUvFxWGzqtViSihqhNEBJFqQpTU9AWw81M2vCrLyDNV7Q3wu6MgnZkSk78u2f: '100000000000' + DdzFFzCqrht1BE19pzkzzPFojKNvgUHLrEQZUqDYi5GSnyoAu5n6pgUbhAbEtdY455QEMbLQU7sPKgL46hRf3Aydr2uw3v2NycVsnc9c: '100000000000' + DdzFFzCqrht9YiSBaGY3xNtoKxzRjwxGAqVVaX2LcdUxvPvwsbmC8mKaVDaCWpbsaMCxL5zZgcgd6XcykbV6Rp5DEH2UZ3t9kVkL8pvr: '100000000000' + DdzFFzCqrht7icQSvUaNXxLMbS11ouxKytJf6ZetARe8Df1fzoSA2jYAUtmmcBUs7b6Dnbg1Q5RhYWsbk8GksMvpfVA2MCxc3C7fAe2y: '100000000000' + DdzFFzCqrhsdwyL5Xdjz18heotupQcqGcaYwiEq4m5CPVN1Fu7x7kbx7FRdgvVbh8rsAJcoDc5cGj73ZNiyQxmBL7tXBMWu3f2y71QKY: '100000000000' + DdzFFzCqrht8ZUn39jnjtfCFQsShGLvnvogzrHV4mhBSwUabMduz6p9mKLtkVWrSJWGFJsgFWp9QwscFNHf3mcUQxot13HV4tbr6cAv1: '100000000000' + DdzFFzCqrhsmD9xRHRAPvmsBmTMq4MxF2Ezj85zrbxYLsktrXeYmeMbdtdje9TKFcrrq63bX8mAG6cX6PYdPVhzSXamrkRkefGGp4ao5: '100000000000' + DdzFFzCqrhsrXidYNscXZFyKmEcfsoFzpgn7ktHcUHfqVX3xMFLTx6hbYAF4q4sb76E7LDUpHxB5kuAkqx9jyCe1WaURB9eSVdU1uSuJ: '100000000000' + DdzFFzCqrhsm14cAPAMCk77kG7Gwu6YsRqhaJsPsybZnq7yru9YX7fT1VgSgrbTzkP3zBQdq4otjBMc8ecPbNh6MWt8k8ZXiTgh8gmFi: '100000000000' + DdzFFzCqrhsqqgKJTCJqRHH4EvDMBt8N2JGTqD98qZWS8vKoYzKYNVsgc2YvenK2thiwoyJHGPKWBRZ216mpgJXq43zQxt7bZ3QEqKhv: '100000000000' + DdzFFzCqrhsidJNqfDQLNiRVprzRhpxvt9B6dtn1hzqyCKhqchnKLhjLEu3ESVzEKGrc5EAiHHY7rrP2zFaSVmkce1DNUkEhFVBy5KuX: '100000000000' + DdzFFzCqrht1QZdEH3vdXTYrboyKzhh6Cn5r3pxkN3TYoN7oiTasyiR5q4XX7qF67o4zCMYnafDgDczehqw2KipxR7boRku5Nw2y794P: '100000000000' + DdzFFzCqrhsiMhkHeXDNRHZzkBNzzGssqgFqFae9VrZ9fV7USUN4ogD4G4DQAyYiAg3tdZ4D2vR3tWPWwTsQWrjSJiCyjBkSzbirDvo1: '100000000000' + DdzFFzCqrhspRmwRiwjJF9ZHvmNi4FGYCMEATFiytAm8uweRJFUY8pm89NSdGAQWG3XarirFoK9XXaHPGuDrzuUREdkNkz5DkyTFtBaH: '100000000000' + DdzFFzCqrhsejoW2qcdB81U6LNuhVae3hWX221V1yx22EjyjGMrW4FcWJwPnBx6iUwZQCrCGkQmh1K3Vivjj7MMgD4QY8C9KMBe4QVYF: '100000000000' + DdzFFzCqrhsqie1ffztHbz3DbGSTeqYQDqZMQk7Cy65oMqm6zXWAHRSeJnboMr1txHtcLyRF9wFuzzk6SiT2C8DJVupN3ip5VrhHKij1: '100000000000' + DdzFFzCqrhsiVXMXwGUwvKkgwrJg5Bm9GR58hE4Soxpy9SgtkWBPrG3WT4bocxExNTHYVy2KLz4CGMf2DMBDL1v4SXiouKCio4LMNoqv: '100000000000' + DdzFFzCqrht7hxr41HJ4zu7TFL6ZN2Rr5Sz9zPshdKboXgoeb5UdMMFqPsqrxtkCmnT2mSVUuPi3RxdqWpvrZnyq2mRodcDxMHvsjnTa: '100000000000' + DdzFFzCqrhstfrqD9djhFjphQwE1wy4vSzfNJAXppHSPGxbw9cfPGHD37qmVxS3icC6BuAg9z8pqSVnhVjRbxv3gnE1tjLfGSh9ZmqNn: '100000000000' + DdzFFzCqrhtCBca8t28wWgHPLXrqVbRjpMGo6ntAQbBVmesnUkU9VnXpfpiHmv3xgu7QT3MxoDzgvM22hAYWb5dWBjNy4ZPe4tnqVPfH: '100000000000' + DdzFFzCqrht3P8aqQNHnGFvJVsjYBTMWyYHeCt5KnsB1yNBika7kPsjBQpAbeA9TZZRuRc7fcB1vY4ZkPNiRRL76wL6CDvVLTwgitikt: '100000000000' + DdzFFzCqrhsyL9J4HTGVY9nojxhrdf8rSTrWod38VoXYRHtUXMhFK92Y4bmHsYgpvVqKk4wUjJpzHAEBmHbAN8bxKZHKCcz759hou868: '100000000000' + DdzFFzCqrhsnnzeUWi4xQu88SM5Bn2dZWFPQCEzdexgoWWRkck3k8s5orNA9WLQr1dGnWmekMeLKDkspBnEZetuZBCa6tXCvGQGng62L: '100000000000' + DdzFFzCqrhtBoz6w9wwEnxoMzUp7Vr6S9XwpHQJWrib4vJU7SEwPbhyKf7JJr8ZnDfqUe8rbySddMGgHNUHFWZNAW1sFoapmF4ncN8Zx: '100000000000' + DdzFFzCqrhtCw9zL7n6dtmgeTvqcrUnYySoWwwKgacRevPY5sxT4MbjBzVXe8LLZd2exFWZdLdmtJ9bVNZq5bqdeXKay8SeY5311J4qx: '100000000000' + DdzFFzCqrht96nPuZyMinb3AUuoh9XLtWaQXX5vBogv3CxRCu1jAGLAH8Ls2Jk3Q6LfXZvJ2jYzkDxB4VsRbqhFrvLJpb5ZPUX8N1qBY: '100000000000' + DdzFFzCqrhspDHCaRX8fhK2tPg8V3Ttdfqqv6LCfnL1rKx8XiMPvHTCxghSAZwMr316jRrtuy15evxdtNd4wCsy3wLHGiK8ALLCuga9L: '100000000000' + DdzFFzCqrht6SqeTkLsu4BCz1p1iPiANnCP8spSZA9vQWunUqKHzXQwqCBkYHvJ8T5cvRC5zAhyFp1HbTBsvYZtHTdBCk1DSPnMFpgeF: '100000000000' + DdzFFzCqrhspimnLiNraenn7vZTB2qJQySoJa9jdLzjiiHECUTqdfv12X5JDc2N1jP8cHHMBsgBR9uMameBuWgGkQEmvgERCctUHuLaK: '100000000000' + DdzFFzCqrhsviVcEcCKBXwfTVFV3J5gSzA8nJzgNgxLeoHRGEua187Gkyt6ZkypavHgRjd66kdx7KUbNKU3PfC9C33e7NEHU1Dx48ht2: '100000000000' + DdzFFzCqrhsgoVMKe6GN7HN4feWzFwoasfQqsGytg9mg6Ex2zjvVendKrLKHTgzVu2d6AF2K1zShYUHVCz37kXVcJvnLgqmTvrUKrUWb: '100000000000' + DdzFFzCqrht4RpH7D7toLDRT2QKrx6m91TGWh5Dw26KrCXqxvY5PVRFvbh9nqhPm6BN1bGohWDj1yheWUsucETLqSdet7bfivwetpzR6: '100000000000' + DdzFFzCqrhsywbCUoqj5sXi9xK5Enut1xZmDHEFYNnJt2gh7Tsydi2zLDEEgpkL9oorNJ85BQ82M2kGTtBv8qwZPFDmoNKMmMPF7W5iH: '100000000000' + DdzFFzCqrht8VvHj7E8pKYfcY4gAf1vzFZcTr1YnYVPJgHanv83pc4CzPb2E9y7AmzrJCJa6BN7eDXXEjAasUiprmUTVURkKHjSJuZ2S: '100000000000' + DdzFFzCqrhsxZY2sW89zcsKNFvaTuG5tb3nsCnzdfWDuc5vCbqh8986GRyK17Yd6DpQ7P4FufmUBGQH6phKHk5vh2QD8qREErqtNRVer: '100000000000' + DdzFFzCqrhseTob4UBFTJ14S7tfetxzZGmf2DsS57LXuDib7mX8JCUqpmyDfYqoyyKRDTvLByZkxS9GQp61YYz5zPmTtkLwjyaYpidEH: '100000000000' + DdzFFzCqrhsrQ6HrGAhhvqsvDTLbriJqnqHTAR9p9bcWr9C8m6Z8zRAzAVxVcDMCzp6dBkwf4yu7fEJXVLNv2KVAMZXbUb9MNz8ZA6AU: '100000000000' + DdzFFzCqrht9upMHEsV7LkJp9dFFiQ6R4ciArrR8rGbjbThvNSuTeTPWTCsj6j8BT5Bkts7yuUjE9gLpDpoLDVhSFTxw4Ge7y2DhpmHd: '100000000000' + DdzFFzCqrhsxZSWpmJTfXPjUFzq9YFz1NakSHam6fayRXF7gEZYv6JfWvHCRk7UbFjD3fjVdG7ukvg1eT56XfJNySZzu1Njt2ZiLitmw: '100000000000' + DdzFFzCqrht3Gv5U1Ekwt2gcmCdyZG7XYrD4TQi3fEPYZGBneUKMiT7WFWCieKA152VRj74hf7QqLwjDjcfM75vHTfqSnT5fJRkVhdhz: '100000000000' + DdzFFzCqrhtAkkHcqmn53L15oPmvuh6ycm75QGAmhNNDaR273UjDCAw27b8KSydHX7bGoypUyoiR66ug7PQk8eimg58G5jfU9JHFoW6J: '100000000000' + DdzFFzCqrhsrHfuXELg6C3Q3jYsWavU2QXCXQ9VLGFkPnYX1CopJ42i17epaT7KmKYvTPfRrFmM12wcwqRoM3VipUj254sqcTai6tWQo: '100000000000' + DdzFFzCqrht8Au8vc1g5UWEem4Nwvc7PWXnvcmXcqhLWhGixABtU6SYjq3Yk5MjYrms243cZwiNbqBgTjjo4jCbKak5byyqaMXmBViiq: '100000000000' + DdzFFzCqrhsnUNZ5DWVetCaseiviJ7KmX3dpLmJdRyBAWDmPSAxkepSVTW9zuxHpQvvDMvp16TKtMzoDVoqjiDSFLFggx5S149dZKcZm: '100000000000' + DdzFFzCqrhsexrE141shQ9GSabDFGuhgW5H8TR2U7kmSP7A9F8e5hWYtUDbaHew2eKr3iBbfxRJBGXMmykYwULo3AHrGCb7HZjWmjN7i: '100000000000' + DdzFFzCqrhstpwMupeBgNya9wmGkh9bYsyrZb6bz9v8a4orynopWp3mNhh4XZoFRxPHgJ3cTjCEHu88CZkdUiopxBdeptZ3SvkhSEGx2: '100000000000' + DdzFFzCqrhtCfoX5ssz6TcuiYPXpxSZRkcZzBe4tm13m1r2J8xXMUDpt6eCZRZyeus4DSWkxZxsp3za1MbWukuDKMk7DbNEBNATHgZrD: '100000000000' + DdzFFzCqrhsuj3A5C3vQD2JFmCCpQybhYNpnWf8XgAidkoiepPhLqEDE3n133STaeA4Gi52GGVbM8N3WLWDv9eg3YbWMTuCbMuLrFKpK: '100000000000' + DdzFFzCqrht66Pd5cbKxe2B6tSssiWuiEYukctVVXib6VzpJtFbPJ6H59b44zPcdFjqj8nWzXGcQG3j7w7kVxzRfWGPjaeuhN3oSswdv: '100000000000' + DdzFFzCqrhstemddBkQ4FdLJ1zw2RheCnfVzuhdA5mZxMpjkehpVAZcerhxShuYfEghytuxvb2xBXx2CyUBKuirN4HAL9VpLN2sTe1CL: '100000000000' + DdzFFzCqrht7ECrWLALfcNFpY15t9uFKRXBg9XnTeL1CZKaeVaYcozYPLPCUJPFCafshs6Ut4KsoDkcFz1szWK5ETmpbmP2nKuRbz33D: '100000000000' + DdzFFzCqrhtA81Nd4nvEy3Yed2AMazNJZAdxWeYZ9Y5GV2ixiQnEA2ZTByMNQQEdGwEtqUjEmHjsS712TFBUt7rwkx3mz7pVwBqaXXDi: '100000000000' + DdzFFzCqrhtAhTNyzGV9vCXAvyaWd47XMcUEmWnUhFQaWfmRwM1xa6d34YdBvZdbCXgnMhy43tVRp3kb1ojsBFvhYYBS8JJfQcGZLfRa: '100000000000' + DdzFFzCqrhsjau1oTu4CtgwQVe68CCELCrYX48v92kQbSQvX9mV2sMtX1pfruYUivfmMmuhDV2URXs9Zii8rBvjQJvizEVQZhkebcVPz: '100000000000' + DdzFFzCqrhsr3hg61iDP2sR67k77WpjJ93Q6Jg1jW7rwuG8SoJSRfkyciBdPD46FtUTC3LMk53LgYNogYLDRvAMzoiu2FgVkE3ssFALg: '100000000000' + DdzFFzCqrhsmGKjNiAn4rUfE2w6eU7PB331snS4mVNoJtN1F5Yp1EFuVJC1yCbqK9V133C3DEVWfQKLo5crfDv8w1XwXRevMrJve5AQs: '100000000000' + DdzFFzCqrhshyFfBWD6xzdLaFE7nP7cVmXJBxqZfC1ACTPDzKwbFZQFPr6v7JKUxBSN2XVQSaEXNLhWPYvovL9idPcY7njZPYVn4sc9N: '100000000000' + DdzFFzCqrhtAZHCrJBX2Wg4ivSes4rSo6App4SaEXLMdqNgFFb6zeD8APtx6TSPddgoZHMNpcVttpfAmL8AYu8xvycpoKyJX8Z5WJ9iB: '100000000000' + DdzFFzCqrht2nE3pu7fiuu7CYxDtfCy1pnPyRSvEqiRpQjgw3AuRHuUqwMnt69HfFD13WNQVB92EPFvCxBRthP93SmuJw6Y1CmiYffBF: '100000000000' + DdzFFzCqrht2FP8YFs5YkNf2Aqo3wYXRQRZT6C5ydQ1gHeGUiQDojMSwj5fZXiHNgjZLwSoPU4d3ryD3NRVHwVTUV6E2Ajf1PonncbJK: '100000000000' + DdzFFzCqrht1mSKrFd7zbreqbyA7CbECQMSUMwd53usRCL7cmjkweprK4m45boob2hpjKLnRjq9BWd2JkfAfXcbox6iWgTQzLDWy4sai: '100000000000' + DdzFFzCqrhsieTqw5jZwYoG5ibkuJXbPhdQHsoGzTxMC8fEacK65rgTkZrsMdjNrxbJCg51XNe2Z1DTfgbRhdY7bGv39Sgva5dn7R6Js: '100000000000' + DdzFFzCqrhsfysRg51kA4FxFWm279ZY7646jhxvFjF8EeFSb2RBZaTHD4qEUoVLA89gEska3fr6K934P1SUh5jRbfTmemAX8oXZe79h2: '100000000000' + DdzFFzCqrhsewZh2mPZTTgxEJa65UuMZFTfMVYZdgkNu9z3zgL8psq2Sx3iGVtWbvHPpW5rDFgtqkjA7FJeEz6QT2JJ1mANMffvfsNwp: '100000000000' + DdzFFzCqrhsnDWzJ6eLMBiC3yNAjFTnUwuWTswT71SLMJew1YdVCmdcsQNE46fYC1AT4zj1zMPMH5mBNH8hyQRDB31mD4erEzsRQmZg9: '100000000000' + DdzFFzCqrhszjaKta1B5LawWmwHzep2gUFLPcY2nTMmrKnBva2gM7sVPdAZ5K9quRmPMAv25SjXR72QZYsM2d6npyvD2tYbKkedQrB5J: '100000000000' + DdzFFzCqrhsidhXsAkgn75ZW5hBm7GU3rVx9vpHUERVozN2imdF7YD5KrRjAxyqMvSpanC1qk4MTRABBnQUp6wUTA7Cxq1kfpb1H59Ec: '100000000000' + DdzFFzCqrhsqKffUrbcrUQd3TYKQHNDYmGUG52yHJC6Bpj2xGiS1SmibXbkRPAfLCB7t7WkkChJ9UNYjR671KShb6yg2UmqcJDVYuMRa: '100000000000' + DdzFFzCqrhsz6oPnwmPFD9Q71EXCp6UjqPHT7DhsDa9BQiCdDQQrnMF6kvX9ZkN3xDcv2fkZa4FsWepL3KJK7KgCjDu5HgC69LbptprW: '100000000000' + DdzFFzCqrht5v5msg4HLVFPLtT7ndyAS51uCxgvSVvTSyGrLUFPiHPJE8CCLgr7eHp3BYN7FPQyz5z26jKeXA385K4Mu7MfeoQTHxafH: '100000000000' + DdzFFzCqrht2qEERrHHQEteoBBrohrGhUDsqoC2XJmVGiueaYYgKozTN2bR5VtzDUUzBepmMYdn7NWJFBoQ6rGumqDpsX24gxJ5b3MJ5: '100000000000' + DdzFFzCqrhsrWSBJW2xC7B3DLfTB82sa1gc5pyfyLewSDc7edF1w1LUv6xMyWFeLV223ZEttxF3M3EcPYbP9qYKxxBAjHYr7xoZ7Swhz: '100000000000' + DdzFFzCqrhsuVim8EiNU3tsX415aJZ2UVvYTxqVEi29WSY3QknwwiLptKB9pUC3gnJSxbjCcsJoxcxT367aoCe26BWQ3PrvxXnCNCeaC: '100000000000' + DdzFFzCqrhswFzx7cwCX3c5jDPye8aWJ1h9h15rMvV4CXstDCyJFvLWhgvyBWjktKbvyk2u1MHVWt3F159jT4c9foHAYR2pzCJq2yJG9: '100000000000' + DdzFFzCqrht13bfVTveGynbJjCdfvbFWYbALziEvVzdCeuMWboEvyQg9KQ4xfBick9arDwaHSCSmsPvRaqVsMAkiYhJoxUTSRQa3fut3: '100000000000' + DdzFFzCqrhtBsYvva6meVRXmcJiqdoDeXuwMF95bFcF6Xm1Bis1b53fbHxYu6XW1HrrpLNZuR4Awcpkd9pWjcmEarJCyUmBgr3hzqg2C: '100000000000' + DdzFFzCqrhsgiYV6v7koQ6Na8pyoQ5cJPr5Qpf4rSaBbPTnprk8c1pbJBmX8L2XDp1QgS5zV4dwLkezAzXKRPjqJNCvkdzWB2pto6fTX: '100000000000' + DdzFFzCqrht6bncAcUv2Xkc8H3C1Ac4HbUZwFz5BvX4p66zdPNtyVug8A1eisRwVYpmYRuZi1fBYmG91NqGModmdTCGuJKjsTKyN5Cbr: '100000000000' + DdzFFzCqrhseipkRqSWnEFo8okC2kJqBrNSyLHrooSry2ig9JsWCNp9XGWS9j4ifMD6pJEeiHfYqqpipJoQF5exiKhmLCXaR1HfbpwHK: '100000000000' + DdzFFzCqrhtBWSfB52qb4R426ammhF7nQtLPaFGFHjVH2ZLtrcx9CEZq4AdHwwa9XtkLrrKF43BsUTyeqVaxBRi3WJbvdfsgBytFtMSR: '100000000000' + DdzFFzCqrhsftBgnzPrVcKLsVyjrPq8QLJPgSUUqK3diVQ7tcufY8v59kDb3WJtVs1ouQUtSDo3Cn4GspMx7mxtFaVDH41x2TvjZoBL5: '100000000000' + DdzFFzCqrhsmAN5s6AB2iPnA1Gs7SF78ZSKYCjxtNjx8NxgaJXG3fqK293UbVybEUb2bTPFN2BzPuUydU6ygNDp3XcHEPZGnXy6SjDRX: '100000000000' + DdzFFzCqrhsnCT29uT5DV4cCqBpyWDNQqeAQ5BcqG61hB7ttdkLyjYQ2gMwV28zd4sxvGpnLKHH161EuSZi1D95YnJ7FsEhwSYrCMxLK: '100000000000' + DdzFFzCqrht9BkyJ6xmEzVgy2A3MYkWyC5CcHdRFg6P9d6DPedLTJfAuaMBzTuhUdY3uTHmynzrNYeZcPNWMr685mS6aMEp9WzQxctbX: '100000000000' + DdzFFzCqrhsjH8ZrptUx3Lqn6a4KHT1CEs7Kc8qYJPnR8JM52VDe2By569R8gYd82VGTmmkNPMSGjwp4CS7VfKkcjSvR14sfgbGPyquN: '100000000000' + DdzFFzCqrhtD11vYVXP6x3DBujPSbd8bjiwUwuPPRyPbJqdTbYTFvRq2az9WBUXPp9YxWa4To2tGdqmUWrm9xjRMRiPfydDbYWnUjcGA: '100000000000' + DdzFFzCqrht3eWRupXFoukzrNo4tXApqbMH56KsxYBC6HDMSJ3XKxLugg626agrbiu5TBqXfjr8fdryhrkBsHwXyckkMxqMwEAU5iv8u: '100000000000' + DdzFFzCqrhsjEQgHeZLBcKVVHoN8tkZVXXyQSK8xchmSGUegSDQmq69mdRL7hPcfqfNGh7FrUibX9UHAaCXjpQxRg2L6CQqN8Q1WjMCG: '100000000000' + DdzFFzCqrhsmnWXeLsNdoNZcphmnUhTD94XcjfCDoV27DfYmVA6umVGfarH25fG5CYW5dDUB4hmzm5ZySrNgYstZ94umfJrjXxDVUr6V: '100000000000' + DdzFFzCqrhsqWrNWvtTwi16EY2xxjwmELa8gB94fwkzk2g6vDiTB6T6exyvhcxsKKRnFWeTPJquuJqeqMmmF5oTcMpcqyb7W4L3HgaYE: '100000000000' + DdzFFzCqrhsmazcxguukyfBwAstmuDZvtZvRSQtYexveR2BrC1ZB5TCscAr74EGcthbbGSaTrui3VjpmRXzHw9GU3j78p3AaQUkTcnPN: '100000000000' + DdzFFzCqrhtAA64GN6rvcr2wMQPstST774T3iePwyRD93Av9GxJBBcA6mKmKwdt51xpjjWf1NFo3LyYwhh6AnLDE2yt4ubZkNatTtm3t: '100000000000' + DdzFFzCqrhskiMixCwBP5xXjJd2LV41gKwFe2qMWWbznenBxgJ6hRwGGP2yToXwznwc6anGrVixm2SchpHzwG6NDDc3UN2CJq6YBSfaS: '100000000000' + DdzFFzCqrhstXqSybDkiKY3QHdFAV6sWdkK6PV3Qh46s37SxSjtLJdTk1g9oSGH4ZLYUye1anZLRpbeVdtTY5SiEZFatxZgZeuUjHtPJ: '100000000000' + DdzFFzCqrhskR6kYqddQP6m1nxm6HtMnFkFkMRVKoCyNSQCkAbM3nmtekHZxHE1YdWWbV28dH6sdJHtGtXS8akcBFtqrbMQTdjeixEhq: '100000000000' + DdzFFzCqrhsePBoa7AM18nPP67xoBRtYeox6PxhQLhzBCxBNBSvxSbSbiKGe9cCEVcpHya9igKFktyGnxRAnpczHbdt5qQvEMNXj9eML: '100000000000' + DdzFFzCqrhtCSo68dDjR7AhgiUVUs2AFhpsL3PDppYZgJjKV9d4ST656e1HAjYixdvasGu4eKP4cbLTUe1X2YSoHs5pPJMTg9isJAa6T: '100000000000' + DdzFFzCqrhssveYPKz2V8eBJT7DSx3cP1eDzMJzyo1WARiD79y8B7L42Rp7XjmzcdgL1hsda4JVHghm1jQj2xHZrSN3Mjw9RiPBuWori: '100000000000' + DdzFFzCqrht6mgbjQnSiz42d23v1esngXkuqWSTGbChgmRkGCQcP96VmhddYbzXVTZtZoXyZuvvQMCMkmpfo7RC53iR2pHqMg7tVs51i: '100000000000' + DdzFFzCqrhskHLdDjF3jvVD41NAdGqGL6bZa8pgNuKmTYbRtGWTV2YdWkGE5ATuqXSjTYYFDvbok73d2zDnnuUmoZosJSFSUChpbi7Zz: '100000000000' + DdzFFzCqrhtCgDcuE4AHFYesG1XSDS5hELrctspWMjZZ6zc6f16wDj8aEMKZBtXT5d6VoT3VqmguMV1rqDZ3Hwo4ZzmsQHiE7VVDuHw7: '100000000000' + DdzFFzCqrhsoazkWATWjoRtbLHJcciH3G39PWnXTRvwksCxo2Y5AK5rvcs1dfQXu3yejWrBEmotHowNmPtLTfx3DaRCfjv2xjdXwwk7b: '100000000000' + DdzFFzCqrhsrC22jQo6rfgVGZKUutJPW5e2vKTHC2c5nn3jGTw1DBEK78MWwHXHq5KVDWTQ69wf9yqWV64da8QnM6ke6iY1uAM4aX6yT: '100000000000' + DdzFFzCqrht9RtDuLeCZW77XGxTYVByen9JBxaj96uKKccCqEPmvzfvHCYS6ucFDYYBhAEqFqg3ejWtkgsZBwTUA4rSthRbgqkg2c5Vm: '100000000000' + DdzFFzCqrhstpgnjboHWpndAvU96xaDFfzabrG7ZxEHx5J9h7RsckBSiAGFryeyRV6VfPWxMJC8fbsvoZjrpw6fRD49bYnUJiJxiu4WW: '100000000000' + DdzFFzCqrhsrNfLGtBDszf4zgw1LLfXEfeG7p1xq3ubgyysppojYWSD1S3ks1y871PTGQPUJhr9e3ynWBJqY38Qno15PjRLzPAP1mjsv: '100000000000' + DdzFFzCqrht7YUutvA8M2dJDRpTkrS954ufZx6bAYZGfx1zd7vB6hH5viuyRRMbrKjAzuKLPPNj2ztsPDzdFFKSaV2m1bk3DrKXaxpEm: '100000000000' + DdzFFzCqrhsiSV5SKmQVBgNMG1SJBn4hEU38MLHPDu2c1kfDMg56UJXG6EV8pUmTyKdQXLJYd4ce3T4Cm5R35JXF28HQP1NmFcfGWGk9: '100000000000' + DdzFFzCqrht6vqywvNZ3XYGEPg5pxBVDGrwd9KCL3SgXETnJYYgctjzEJGg2owhDMyvcje3CPydJRux87DGhceJ6RpsCpYR9V4U7vN7i: '100000000000' + DdzFFzCqrhsiz8vGAPQGQPhoXxcou8AWR8Yavr6zXBtHj5faW91tCSthdRkrnzDj4nR5x8r5ZNhbU2y9kLqCXgwGF8W9EAm5dB2p2nj5: '100000000000' + DdzFFzCqrhsnmJ3aUSkKX2YB1B1uhtdAkqEnhMgNSkaDYcmjmxCt7Yk6gJCRZS1m8AZrPSQFTVkCTvEXw9JfXLzgLdbW96odBWhfrifW: '100000000000' + DdzFFzCqrhsuPALKSafpg9uN2qLUvWTykAg9UXxqkfStE6hky3ER8dDrs4tasek5aoPKhjzwmrU91CcAo3LRZGQZCnD12v8jVQJjCRA9: '100000000000' + DdzFFzCqrhsezMDDoc4EFs6FSp1qQE4cxH9yfHZJHTNgEJyUFYEY49EkBJp7z6LEdufKZncG7waj3jSqizW6duQsksvyLmcn6F8o5sHE: '100000000000' + DdzFFzCqrhshBC2drNiVTAPUc3zc6sH72WVquMjbsCButxbU5hoqLm4MDDY2E5GuvCYqyDV5FCeo2yb9mUC7xmWTRXoC3EM9ypCR2tMV: '100000000000' + DdzFFzCqrht1gsp4NTMiMsCromT23af8CvheNnPppMNQjwXHXDNMG8Tm2CbZw8VtLpjTTjgWw5zwSuPYXF3g4fXDtpzsSuogPHKBXmd3: '100000000000' + DdzFFzCqrhsiipcZJdaUjteUWzYaC3is3rawtS96o7mi2c8CKLCsmCGUen168uVxpjtL4TrrShdErMqyFzKdSmWCBcDYEgVH5Uym18hQ: '100000000000' + DdzFFzCqrhsfQcxQTStfPAvrDbXzBb9UY8DRiPjkxmhXEhaQvt5QBayaweSmbrgmtaqPNJucwA3sqDtGq1JZmJpR74EdhZsv2VRnY2f9: '100000000000' + DdzFFzCqrhtAiqawiEAobxWuo4yRKzYL6CF3EpSYX7ip1kHh5iRj74bAn6ngXsXTQMtdsinVhr7hKqsXkqEGfKrKnX1iazWnVvpiseFV: '100000000000' + DdzFFzCqrht6g5GdQotde1CSpSCQ3nQX3PtnBqPWHoxTTufi9pwPQa1QhEpDGXo4mqsv8cgEn1rmj2hxxJ593HNEAmdyi5KiGJzWPWc8: '100000000000' + DdzFFzCqrht2Bk7Wm38FXUoi8tMYmn7eytAKynW2sSGxoEKjC12tEkrgP8VTqwEPxS5Gxazv6UQtBUAYqLM8gCG5D61HPX8sHoH7BYXB: '100000000000' + DdzFFzCqrhsizfHhnqMrFdGSm3BDZtoHHPzCPbNGixV1nzWDYy9xfCdg1miwYsBDwFiM6frVcENrQx9KZtQqYfwgxEc34dkTx8tva3RH: '100000000000' + DdzFFzCqrhsmikVEKgvrgvDcJ2b2wS5ygpCCB5nX6Bih4DBT5G4UeeYs4T1NSsDGQ4k8zejxnV5zCGksBvMZ5zztcLoyNWvZAzr7Ymg2: '100000000000' + DdzFFzCqrhtCYjdYEeZtDEHq5zCZo4hbDxgtP8t4CUyPSDLFQYXbMgJKrwXHL96hrjE8fHLfLQE6EnmBNAz3zjERywxQnxkFmDeUrEra: '100000000000' + DdzFFzCqrht9PPqthaDdnnYtqNL1wNDQDwucsmGCnfKTNgz62bQEUwDCE2D6tXrn9mT1tdesPQfVoTPxtKGqvWhmNWVCRc6Aq5LudDAr: '100000000000' + DdzFFzCqrhsxUttsj4AwiQKbLdFEswoPGBPji8XaLUHzwW3w7kD1SLonudsTPxeDUWRnJtSgKwfYMD7ihXFTvZC68VC5pSXGojzU7fpi: '100000000000' + DdzFFzCqrhsz5Aiu9F3ngXYzX4w2Kg1ZmrxH4FP4RtEQNj8sSoBp8zG5Hs9k2QwsrVeiu52fwRBhu5SvyPKRZWxRi4sqkwqC1yA1zbgg: '100000000000' + DdzFFzCqrht2ydUJho3y4Ae1HqhSLFwq9moKxLDQW4dHixA6v2XGrrT4KqcGNNjk3cN1N1Ectc2qs9JViabnQ5vQ8cuosCCBa9eKmznZ: '100000000000' + DdzFFzCqrhtBGsakVjnfBeMAAP2w1R4PVRXdfaVNwz5f96MhxTBoMsF3qk3hghpSp3CAXpwRkjUdf5cVAEm34AuEDMopVPeJTWz6YAAY: '100000000000' + DdzFFzCqrht7vHs8w41ehNKoLjQ81YaBeR4rqdQNFpL5dW4cspLzMPgnfLJ7FpoBB94io62wNz7XcyxEjjQrUiYGrc5bQeVNm3E4NCGc: '100000000000' + DdzFFzCqrhsmboHF6ECHkopHPfZnNe1CTMzo2anHdry2F19aojkAiUrSqxqLijE9ADxRRFBc8eJXveCVQNQ69UKUFvvWqh3irvo9Uj7E: '100000000000' + DdzFFzCqrhtC4sak5k7Ur17e7Stfs3WXHfD4Wun6YYHyNuKZ73YUpfbWPy42vz6V767m9uh3YwsV72CxMMd73sHZGBudBukygar5a65H: '100000000000' + DdzFFzCqrhtBvNo9S5pMDYfEmWBknyHgQfbgnmvC7Cfvn1D5JFvh72FoK4MJ4L5ZJnVpbfsnEYXjiJSdvbb3ZWWUbrVoyzRGdUA2i6o9: '100000000000' + DdzFFzCqrhstE8D9dQTxod5Atxz5cRnUVnURp2yWSgUHDtPTDh25kBq9w3PDF1MicztsM7ywdQExi5TsMcFaqSvgwvUFPMY8sQNcy6ua: '100000000000' + DdzFFzCqrhsg5zSxwqDMn2dyYoRTzF9bPgyJjLXwR6MdecedFLoQ3JBqPGB1C89gd5pDR9n68UDzG7jPKawcz6mX21hA5iWiDT4UpfCC: '100000000000' + DdzFFzCqrht8NtBkvoWbWenp6rghioPNPX55NvjsyXtRAocDnPTaLN1WyREEga7KQBqUWBzCEBkYamnFbiXb2qYF5ZRHKg3FvtFt9xBV: '100000000000' + DdzFFzCqrhtAYNzJvKZueNn4kegSUbBCVSSMkH7DiAucbJeN86mRs3MWa4hzzn2fiPHhNXook4YT6ZxnQ99EvmuL4DkMRU1dPF6bRJ9s: '100000000000' + DdzFFzCqrhsdso2Acs3ZWRZsvSiacqTb9RJCTd2tqKtN5jJUwJHAo9mCih1SVpMoZvPvQTLvryjfK7S4k4nopra3CdXYerEAS8sXTiQs: '100000000000' + DdzFFzCqrhsk2LUttfUUtw9K3sbFgexo61H1UaRakYKarUT9BqC4NdCK51wxdeTAf2nWrpvk5aeD454HkwJzWZS4f1SDJnUqjwJdAwU1: '100000000000' + DdzFFzCqrhstL5nEaax7t1kpHKPzXS2jcMEPf3PYB11fJmyjRNvzj9d5a38BdD78VSCUFJrPUxoVyCmgVxqogi7FdBcjDkYP1QBZcQTr: '100000000000' + DdzFFzCqrht4WPKUCjXhWAfibm5Wo2bGsc1QwsDcZBbuNU1Rc61t5cx5Y1df7YrSteNdJNAMLimMfnHT1idmfGKA3vSrC54NjWZENFqr: '100000000000' + DdzFFzCqrhsjuiPr5P2WFmJzdQn8LiqixgNhfBqWSzQgpkjWZem5iYC6m9roZUUuoNTfRWEbhP5X3RqmsC3u7zgw9kUHnd42cZjyVPmx: '100000000000' + DdzFFzCqrhsh7q154dg5ieHsvdjW8pbAQ7mJLJo464mSPn1kccyNXT4yhwfN9YBSitVUiRGs4cw8wiy4PUunn7ssmtRxwU7nfwxBhyKU: '100000000000' + DdzFFzCqrhtC6WPsuyhqtVPmWEz3MdT2uDk6JW8gVEb2J4Nsi928Zmox9uKmEVXpzw42NhprGXRLiAgQTALRU8x3btiUdmnAYWXY4k4r: '100000000000' + DdzFFzCqrhsstkWYNBD3fpeP8xSXyQHzKySdNfSZVsPqQ1jjL8Du7YVBwB8bPqd8RJP9M5c6S3pav3Ys6fueage6Vf5MWGGmgvTZGKbA: '100000000000' + DdzFFzCqrhtDEKPFcpmBG8EXTgXKdUHFALzy9yBzasahChmSxyXFnUMch2LBFDgB6k2u4TtRbE4zPCc7vokG3vMZkJoxNaMVHaoZwV6Q: '100000000000' + DdzFFzCqrht1QvSXSVcFCPE7dm9eaVB56eMRUeKadtnREkHC6jN3WR19gWFscoAvd4tT9HB1GGhYUrdVj7yBYvh5Vg3G38Qd5jwAqFY4: '100000000000' + DdzFFzCqrhsu37FVmDNLAngSqp2fZoX474mzrXYHGM3bDeqsG3nyuu2rLW1bhndHG1XL9NoPikGXb57vdsiFGD5rvfXCTXyPNAUnM86B: '100000000000' + DdzFFzCqrhszt8RBxLWN8raBaqDR8hTW91qeohZ7KfcR4bWXe7t7CYZYmQGR4qzZ8qc5WzoqxVRzPEcTSi9Naz1SZNavMEXVGm92wmV7: '100000000000' + DdzFFzCqrhsxYoxRtXRHu1G8QjF42oLdYtUvjTUar19DTr1c15rWhfMhVaumw5G1T7suC7UGbjPSHzwNbEwrDzpVBRzkM2xUioKEr8WJ: '100000000000' + DdzFFzCqrhsfbYrsF3zrvznBw8aN2Rb1nQiaotFDhaJzXTTcW6EnMN8KuNqV6NRMPkZ31eps3PQ93FxdWXm4wdC6PDXQVaQ4N6R7nHmp: '100000000000' + DdzFFzCqrhspPG75WPd8Ff7SfSHHUj1ThjyX4TTrNdSRfR3Rf5tYc3KCHCsPTGz4bmZcQh2yYVFvZ3a97K8pm2xaYgcD97o7C4xjHh5m: '100000000000' + DdzFFzCqrht1M1m7hBpVHLTx5J1UPk8G6JEmjBpoHiQNpZDf9vFjTtJYHhvw7WvUHFEogWefTzPdeNgyMAfG99axy3bpAer5hdkMwywJ: '100000000000' + DdzFFzCqrht5yEbfJY72VZHKbizsKmAfWErHKmQ7X2SCwBAbWJys2SqZqwsLwek8xYZqFDyCP2j22NaxzwPojehgqdCqPrBLvAMa7A8U: '100000000000' + DdzFFzCqrhsxQBAhsAKjiohg5X29WKhDgByq1iRfBEY4zS6RtBxskJqfEdHr3b6xEQrYS4FZ2V42z453V4cPoPUnk9t5Wnz779RKyVPq: '100000000000' + DdzFFzCqrhstorkTmRLeMuVgDGYCMdS5cCjNVqkockyTNe8VDU2fHLFFoy5vZDkZCgYSXhj1xQD5Dsjy6m28EELmaA75WfcnWJqURKN4: '100000000000' + DdzFFzCqrhsm8CuhbBL8Gbaey66LTHPUnZAFxzwPmLGfisT7d65Xj4NMYKMRtdVHeF95gicTCbkj953KGxTnsrfMnJHKjv6eFnSPeNVg: '100000000000' + DdzFFzCqrhswSDgiie3Grt8pfU89fDmnK9M21Y4fH6YD62vv4nMV7X36BFdjqz26sYuZoTYbKCZXWGsBCroZdbj93Ggsa7JmfoyBSnf7: '100000000000' + DdzFFzCqrhsr2e1v3shpmm6akAoXe3moXZ8gqVgft8f8nKhHGvbw61nJ58bTP8meMzfK6CRLydqBFmgiyhm9nRLytto8idY4NWVYwY4R: '100000000000' + DdzFFzCqrhsq9ksjqtNkiTMCQRefFRpFZymKYR5KY9K3dx1iuMDLfnxbcCjttmApQS3VqBw44kRcVYZqcKkmDLX6BQSSdJpJsjrd1F4i: '100000000000' + DdzFFzCqrhspPos2BJmUkkG9kWTb1N5mrqkWxt3xtiKJLAZfkgYB8pe8JWmDwfZEmAcAfHYdBFfQX5f7eH85vmNGwVXNFYYMi8et5RWK: '100000000000' + DdzFFzCqrht4zmwguWjWYscg1J2Amgdi51qFbj3jZxZuVFtWbZj7KhkwSVmaj16CuaCaQ8mUvn9BH295Tj59hMksNSvUPLrtPE2J3Q8A: '100000000000' + DdzFFzCqrhsjrzU9wpS4MKuGPwtdGvBMqLwAArAQhDoZdhF1TyTPzVPiVfnZsXEhK3Rg2HByeMYbLs7CxhNZQEbeWiTMZgQ6S5nKvvge: '100000000000' + DdzFFzCqrht5Ks8m1aUaucNsgjnH4W35JWue68wtiYfmRtsuhLZ9F29qTFKJf8PXU2RpczMmf4C4sMVFtSMSpgz1bfgxk8HtEYDeHbKh: '100000000000' + DdzFFzCqrhsgyL5jMQK7VQkkm434yEi7XDiZriD8YhWtX1bWXD1qr5w7Kr4Abeo6QrzDPzNDgYgxzhvCYNFjtKV321gevYvSWCxF1bcg: '100000000000' + DdzFFzCqrht5NXVz2Pt3kcdsW3Q5qtRZCK1wfKZoV7am7P9yD4wnj9rHgzm7nMpeLtuZYrUdpioQh3Bi9tLGAuvHrK2uCztxff8k6Bi8: '100000000000' + DdzFFzCqrhsj1TXEZ9wx3gfT3UvNJjijfQPe9Qmcbt6PxEmmbeCU7i7rR2QkbPei8CyGvipmax8NfxesAXmzSCMV76ozUDdzjw3Qdimo: '100000000000' + DdzFFzCqrhsdpJZHrVp8pv13Lvz4TxNrhTPqyt1Hnpad2GzhRikEHaon3XRfLZpr6973nJn668ebtPUgL9FpSZEH8UiYzXnKmz44iaNA: '100000000000' + DdzFFzCqrhsen5WXkaCV1EPz8U8Gkhn9nP3K5iJbLJKFAzGgnfDydXuASTJzpm4CeHujWMKqh48P2Fg5CasgQuM9LezhPeQhpsr6y9GQ: '100000000000' + DdzFFzCqrhsqyT7BNaHpE58gLaBwjPgQe8TT7gyx2mj8f6YzD5ZEnu4LFTK91aiLUDzfUQzpU9t1AxV1MvVpftNvt6YWoFu9rLeMvQYF: '100000000000' + DdzFFzCqrht5w7Dv7kVW1ivoCvRKh3A4Ju8cccPGpNNX43FcSybrVXWyrNXYFSut7q7ogQaJXeJ7ycEm71oZ9T1Tv1zv78VXdPNCf6A2: '100000000000' + DdzFFzCqrht76Tkn6QzYeFSPRx55Qmoqz9yeCKV8RjLGueNdDaiQBPyAHhsZdaJLXiovZzyYx7MjMHaDF3iGnv2aA3He4debEgAGrK9C: '100000000000' + DdzFFzCqrht77LAUt13bNaQD3xrkUDWZTkdwHEyUzd1WJyoZpdJV7bME78s7xcVF9j7PNjBis2SbRDDSASrcKo4ZS1yix7shKKPmnVcZ: '100000000000' + DdzFFzCqrhsdu9QdfAi2BmXcmdV1DA4zHKsEtWdeti32jpKzQC9dUpGqy4A5WPWgoNSvwhmFceVj8BTVna1Fq3jmjS3NbyAqseACNhqm: '100000000000' + DdzFFzCqrht53PjyZUcneCYf9CGnHxnpc8fbsqjhVRNu8zx9onVDX5rS623SfAJ4enUZseRsFehCYXoTiMFnZrrXk9daNs87EMVPupzs: '100000000000' + DdzFFzCqrhsdwALkqZUNTYvqq1cM1HDP9iXzWfEwJktgnutkDDzhEKRYa5u6DLf2Qbgo8bSEhNjrjVAFRK5CrHH9tvxhSDoV3u3xG1P7: '100000000000' + + # Icarus wallets + Ae2tdPwUPEZ9CbZnamvZsqj5vpQe6TwUNgVtFzTUeMjvk99BwtvMeSe9KRS: '100000000000' + Ae2tdPwUPEZCjKWc4sRBRHhWtJyyvAE8P5jk1zGJL7sVivMrbEminDtE3AS: '100000000000' + Ae2tdPwUPEZBT6m1fWaekRtXtKnTk4oyDC3mrDZoLSmsdmFBswdUEyVTD1N: '100000000000' + Ae2tdPwUPEZ6FGr7qJQzsjmAis4TH9p5PiccaSzDy3epNfnijigXhvqjuRV: '100000000000' + Ae2tdPwUPEYzLXeB3NuYYouNwF3ut9CoZUHTnV9BaWMXR9ELnn2VEYMtJLy: '100000000000' + Ae2tdPwUPEZ2hRRf7qxoetRqCqWcoekNVdWgeMDvcycUYvTwFgxnSj3tv71: '100000000000' + Ae2tdPwUPEZ84xfQnTBg2of8xvP3auzM2NsxttaWikFeGWHXXhDLPPHWYtX: '100000000000' + Ae2tdPwUPEZAeXYwmaSwKb7cj1smTacYE1y3BHzgCKreLBgccWqNEqzADvB: '100000000000' + Ae2tdPwUPEYxFW1qHXvrWBEwNXhKMYxSdGcouVxW6S1udSCsGsZzcP5AG4K: '100000000000' + Ae2tdPwUPEZJbgFPzLxpQ66FkKpusPCTMuQJeHTP6VEFTgUVHqy9oAKRTKi: '100000000000' + Ae2tdPwUPEZ9t9fA55Ky6Kheo7fp1CadoPBLV9sGFMAz37hbDuYbprfqG8H: '100000000000' + Ae2tdPwUPEZMZF9obmh6qQyUpV9Prw2njh21r4LCbUvJ4dLBM8W6wbqoBTz: '100000000000' + Ae2tdPwUPEZ3vjD7tijceV5nofKJPCbo38ALCcJ96yrbFxjUHZRqEEFVUp7: '100000000000' + Ae2tdPwUPEZEMydxoUBCYJst1gZSuqPtvzTDs27vDURrMaUXzztoBH54aRD: '100000000000' + Ae2tdPwUPEZBkPn3hNNsD9mgFxDFHbALb9fh9fXZaqmYk1M9PgCoWxVgv9v: '100000000000' + Ae2tdPwUPEZCwCFGbbdprQqKUc57PoxBipLwVhVw45buSQAMmEKZN5rUxcH: '100000000000' + Ae2tdPwUPEZEXQ89XLfn2vuTvv8cAFoBA9cutYtNMa2FY5p9vNdq8x7CgBH: '100000000000' + Ae2tdPwUPEZKEwDyJHFeZYNKwCZG3ZDKugj2epNJ4QJvt8HvKhxQomzKX8N: '100000000000' + Ae2tdPwUPEZCPH41CHRo6ydFnq3b4WwE2wvYwLULWMAXgTyfrVFsqYuckUf: '100000000000' + Ae2tdPwUPEZ6gpdpSwcQncGLkdk4RAfco5aApfaSUNZaQdxwYS4Kecz95SE: '100000000000' + Ae2tdPwUPEZJ5BCs5wCMTo5w9PugHdwCGQHt5Ezv6jzib4qH2NPYZNtnYFg: '100000000000' + Ae2tdPwUPEZ53mQaXLxW9w4C4K5RGu4MyVbtMhhhCqUnub1HYyVVNnK9v3K: '100000000000' + Ae2tdPwUPEZ7QzV64AccYzKZU7UhejzQ8QH4FUJbCHqp9ApccoAtSCzAPvj: '100000000000' + Ae2tdPwUPEZNFTfSVZVB6GnMuf3zEBPUednPwX9fttdLZAhpDJZm3Hr7Kx1: '100000000000' + Ae2tdPwUPEZ6hmBiNFqRdpG1o1rZ5akRnVfdgSECD1A6d9FnMF4nq2MwzPy: '100000000000' + Ae2tdPwUPEZCBVAkDmX5xLAmHgTJY33mU7ATKg3eau1MFPu4iALGSdR2UfP: '100000000000' + Ae2tdPwUPEYz2ryynipU2cM8qpkMyDya85dBpDUFaG4KPnVBjwCUrHQUSH5: '100000000000' + Ae2tdPwUPEZHbbFsAxgxNBBLdfYpmQH23xmMnxANrCXKu5PEcsPnUC834aL: '100000000000' + Ae2tdPwUPEZKvTGfva3r5k1BjnSU1mwgX35sob4AL9fvJnvwot2aCLonkPN: '100000000000' + Ae2tdPwUPEZM4hC9yXZUuf2V9w5uE5Urozt9R51j4dKRyC3rW31SZfQ5wZT: '100000000000' + Ae2tdPwUPEYyUapnFvgSr7cHEGYqVfGSkS8QLA9d6zC8ESu2ULTD3uPsSDR: '100000000000' + Ae2tdPwUPEZLpnoNNUf1Zgssgnq3M2Py7vYWaXtCaa2mKjVbqeaaCdmh8CD: '100000000000' + Ae2tdPwUPEZFoT54DRvCDTM2dffDcwy75srTAwqV3JQ8WPXZdJU65zTSeL7: '100000000000' + Ae2tdPwUPEYxqxw6CYgrdgvW8iBbYtP5RpVHoewWpnWUc1HxP2zEryVAYdf: '100000000000' + Ae2tdPwUPEZ72idRngV4tz2LTDYqpJWAgrrb7hsGN36wWYFQH7dRkZzh8Vr: '100000000000' + Ae2tdPwUPEZHk3FoJtJ1nq4LP6Ajme9MtznQZn6AXXigjGSm4ypoJ6q5EHp: '100000000000' + Ae2tdPwUPEZ2CB6bhGuV3E2gJ8wVBZFnW8MWZ9gtTUq1kLRBvBty6u6YNkc: '100000000000' + Ae2tdPwUPEZD1hu4Dkq5ExcntDEGjHTt8JH1zT5ijPkmhdiVeCbZo9po3SD: '100000000000' + Ae2tdPwUPEZ3f9bQ8XRwKzMbmLnBUE14REw5PuaWzCXGtS2X3fMSzuzZuqM: '100000000000' + Ae2tdPwUPEZJTZH1J5oCnLXeVPyBwkbuddMRuMuauZ1t7txkT1ynpQZJvi1: '100000000000' + Ae2tdPwUPEZHDNbJuTCebMCxMSNytbRbbtmrXTCdJGEJez1BhZhEBoAHMp2: '100000000000' + Ae2tdPwUPEZG87YBDmuacpg6kQV7LLZEio28LXkbSeLz6oUqsjWdowDa3Wf: '100000000000' + Ae2tdPwUPEZBXw9gywojwx2bXYHk3gKBhSKK1S7xrF2BgMcEk3ab3Bb3P8P: '100000000000' + Ae2tdPwUPEZ9rZH8FVtHdT2g6LbyU3wv9PZVUS9MpMj5jrrpnyskDgnfbmf: '100000000000' + Ae2tdPwUPEZDrbgo3gBvRzJncARkVysRniLTp26QuRYnsp9QeReKRAFiMs4: '100000000000' + Ae2tdPwUPEZFaiMZkRnArEdD5tLF2mK1v1Jz6ocuQLdjzR1UZ4yL8tDenUb: '100000000000' + Ae2tdPwUPEZLoDUMrpV4bvVHMrcef28CxED9oCeWVHPmBjmi25QG86JkAER: '100000000000' + Ae2tdPwUPEZJjN8qes1hxWYPRzeQoVBmzoHL87dW9ZZTo4DURTcV4VJzSjp: '100000000000' + Ae2tdPwUPEZHisqwXFgcegTeeEVkbPWknFeexujv4AhFBpDLEQDt37VEpPZ: '100000000000' + Ae2tdPwUPEYzQTSyqGffL97S42p4Kn4151CbpNPkNy6HhD95mDgVC42FcAw: '100000000000' + Ae2tdPwUPEZKoKVCyUfvuh7dD6sb4nME361R2d8LiDFDtKcgQLyDH6o6ZJv: '100000000000' + Ae2tdPwUPEYzgHhxnLQWo7LWuxSEHaageDhRqzLJGVPJcp13oN9XvFDrvpj: '100000000000' + Ae2tdPwUPEZ7hX79gagSogoHmgqvYfTVbE1QenjBWTDeWSXRj74caV6Ybzd: '100000000000' + Ae2tdPwUPEZGu6E1q6VQNTH5AUU5WxKKC5p18gBjX382oEuRn9rw4BL7QqW: '100000000000' + Ae2tdPwUPEZJGKJJdH7vmjXDnEGE2mnvJpmmzkgPA9wqwQusiaNu9zK5tbb: '100000000000' + Ae2tdPwUPEZ7yRuj5Ufd1H4JfQfpDeJUz9UwTBRQiW114wKMv1EbwXc3CzF: '100000000000' + Ae2tdPwUPEYzVFgja8tieWubwKUSnxPTZgogN1n3eQR4MRgtBWoxdZjpS69: '100000000000' + Ae2tdPwUPEZ3yuDr9bUjQsqYwuQ6fsU2uRMrtetUmUddQ3js36Fvo6fPQMs: '100000000000' + Ae2tdPwUPEZ9YPk5PkhbNeQnbGae38V3k5vXrpMR4kMXLdUNQGRFDTmdn1y: '100000000000' + Ae2tdPwUPEZHwYNYYtDUXJRqb1ssVu3QnPqKfkQ5SeC6SPHZWpnf7ioa4hS: '100000000000' + Ae2tdPwUPEZ1UYrjuQ87Y6PGnETHeduWxWkrhv7nWRrMywBRUYCgAnshEVt: '100000000000' + Ae2tdPwUPEZFV7UWLNKHHLkeibYnjpLmYknUMSabeMQQUSThxegqewFnmQA: '100000000000' + Ae2tdPwUPEZ18qDPCBnuUZmoX7sHjqt4SkTXdEysaiLrTaDFiiVKmmRpbrz: '100000000000' + Ae2tdPwUPEZ1DZfhPiqgJmLQ1cFq6WbtRNcppQrajNfYG7EUMC9fz4a8Wjo: '100000000000' + Ae2tdPwUPEZLqUBNRwSeAtdHRjBGMwcZKeuawfZd3kkJi7d2kWujki9FzEs: '100000000000' + Ae2tdPwUPEZ7LndjRSUmsJQaA9uQB4hFgAAdzsbSniXdzYZYYwFaEQ2aXF4: '100000000000' + Ae2tdPwUPEYxTXUvPJUGGkVi22fmGBRnqib5mZLuZpef8P9NRxfAKZmiUmd: '100000000000' + Ae2tdPwUPEZBorBxQ3LNZtuvwtGJgxigk8Qtr3z191yKvpVHmghgETxLZjA: '100000000000' + Ae2tdPwUPEZFP9XDgqvEfyxxA5fwNC2foMAYP8i2tJ7iAw9HcS1deQAyzNV: '100000000000' + Ae2tdPwUPEZ98cfPdpJszzo7NX2oyqnntXevBVTsTKQfAJm5EThF7bK93VF: '100000000000' + Ae2tdPwUPEZFayinWxke6wYgHrEGZj8c6PH1kvWAcZtnHiBo538ZH9Z1u54: '100000000000' + Ae2tdPwUPEZJhDM1zkiZYyehsEJPPHBX7RkT3g8CuqqYV6RZsD4bu6v3uF5: '100000000000' + Ae2tdPwUPEZJH3cD6rZcxcuYffzoYX2f6nnVanQEcXgridHjafR8ExnjEfp: '100000000000' + Ae2tdPwUPEZKREfBnaR2Dsggw8EkVWGnZVa2BT56Knifxy55ZXpCmwrqQiW: '100000000000' + Ae2tdPwUPEZCEEuSQGATQir8GavQykyWKM6c2e4m8VEmsBbJ8NY7Vz8VTNf: '100000000000' + Ae2tdPwUPEYxHGAwkPtNW8qW63Na7RzNaD5HW9amgagByg1hd6pmRiDEwmJ: '100000000000' + Ae2tdPwUPEZKLEBt2AMF3z5ng7tqeHcjs8oWgvV9eXnFKANMzXnP7fdY8Cm: '100000000000' + Ae2tdPwUPEZ97snjrcU36viZhV7GQGNEFUdvB3TgJ2KqZb5vTf734LAV7nj: '100000000000' + Ae2tdPwUPEZJhkmTnn8j9AHVRjCzdGJdr8rCcip1Pc4Wz1ZjBR3kytRVgGH: '100000000000' + Ae2tdPwUPEZJHw1SqqJdG5HkpQx8K7hKCBY3v8McntQoKERgZGqrgtvP6xE: '100000000000' + Ae2tdPwUPEZKye4tAhvu7EyojYtLt1f2YhD1bzaWJsPnK7bnQ89ebWrxiNa: '100000000000' + Ae2tdPwUPEYzo1SMdPsSVheagaxMDCS36SM6DGi4rzpYy5pqxW67PD9R8mY: '100000000000' + Ae2tdPwUPEZ92siraj8GpXTRoKgS2Q4UQSdy6UXTiBJ3AsjpfbiYqK8fzeM: '100000000000' + Ae2tdPwUPEZHxGS9WQiQWKb2bYHQwqjwB5UiPhR7SyvoEE4VroDzP4cqGbg: '100000000000' + Ae2tdPwUPEZ6F7S6R4hyC3bMx9unr55mH32FdfyzxywFnHU2xwTpeGWmX41: '100000000000' + Ae2tdPwUPEZF9wESGBLARRTFqj8SyUyqEtFeDt98wvUUKkjhetx6tmo7VRi: '100000000000' + Ae2tdPwUPEZ6VbCbFSw8vednot75f3pqSitccu9mfL8PtY2a4ApqXt5gDei: '100000000000' + Ae2tdPwUPEZDCr7WL6efn3Zszup6mqnHAeh6BZ4tpR38VRFirMzrkzZje9U: '100000000000' + Ae2tdPwUPEZ3hajHbGabZGMWV1jeHChUpxiHRmoFcF2RMbp7LtDFAjNyzR2: '100000000000' + Ae2tdPwUPEYwnD9hKk8Ju3uQFaPfrZeCM8eLcNGuSBw6HDCEpnRMAoVk4Yh: '100000000000' + Ae2tdPwUPEZAMx6daGaFA5AqmsUbLgXvdBZdvbYNabc5HwuH4HSR4FArgCv: '100000000000' + Ae2tdPwUPEYxkewyCrzUrSE573rnbJJU82vnCaV7gLgoMDxurHwRDLWCbGi: '100000000000' + Ae2tdPwUPEZCTmkTcNnhpQRR6Y4T3gSSgLX45RkgdMgEkWWCSVQind4BQGv: '100000000000' + Ae2tdPwUPEYxJNjS9G1CWZZ7oK3dE9Lj3zr9v9FqvNHuQVTzv2L3Za5cUSe: '100000000000' + Ae2tdPwUPEZGLkUU4xVqcn53hBraSyxxm4JwiMxPMnZd8t4w4kCKRrrGt1r: '100000000000' + Ae2tdPwUPEZK4tJHCDj5ZPmh9GkMVBK8LB9viUXinWKNum2zeN2Wwe27G7B: '100000000000' + Ae2tdPwUPEZBJucvYyV8Tw1tFsLsLBNM3ryfuME65kpBQBn8eGUs2dKrLDt: '100000000000' + Ae2tdPwUPEZ6A1QwNygXpdtV16WvihLJ4kcf4sMDM5coC54JHaTf1KZHB9T: '100000000000' + Ae2tdPwUPEZKzCY55tHrSw3d27ibdH8Jhu5bmhqCwryA86gcJeRTSZqYnSA: '100000000000' + Ae2tdPwUPEZ4tyQR1CmmsZtNy4BUx7nP4GkNMYS5BwUNRq3rcdDudMksn5j: '100000000000' + Ae2tdPwUPEZ44dZvh3Z26i7tURh66UgsYzq3HatD8E2eLqe7iRVUhRyWgqq: '100000000000' + Ae2tdPwUPEZAxF82KqfQobHK3N5cp81BpXsT3pKRK49fdKEDv5aErbhHAnf: '100000000000' + Ae2tdPwUPEZBQgC63vHEq8Pia7GnThMkZj2fLL1ct41rySaZ3cbaCG5eLWk: '100000000000' + Ae2tdPwUPEZ5V9UaqSYNQrDHajyCMFmNwQF47FgzXDrSAJm8UnKpia2n41Z: '100000000000' + Ae2tdPwUPEZ2jRrynT9an1BhJDWRMzuPq2o4SbcrwEfp547jhi5KBQfSjqz: '100000000000' + Ae2tdPwUPEZAWdcTqJBm3WU1NEvVdEF7Np9E3Menad8eXuEQLmCfAKPcuVJ: '100000000000' + Ae2tdPwUPEZNJZa8SyZd4Bpfh2K5E7SU4ha965wLG5ppUwB3WsTGz4V7wyc: '100000000000' + Ae2tdPwUPEYz2bX1Cjng4gdQgWLJztL92kdCVzoP7cv3LssgUfksKeBuqjV: '100000000000' + Ae2tdPwUPEYzTJj2S4FKbyxDazf5pLF8wWTCy92zq2tPyyVXogc3tsX6VA9: '100000000000' + Ae2tdPwUPEZ5DjrpQYgcdBNZ5QbsbNBFLkcHQfjqakJ7jLJGLhwumNKCQMm: '100000000000' + Ae2tdPwUPEZESZekewoEvS4Gu2CXePzN8S5jzMrQzitpUGrQjMiAcE16mtj: '100000000000' + Ae2tdPwUPEZKfTpxjHXxTnkSd5KDKHqZoXzzQ6dP7gWW5qViVLvWz8E49GG: '100000000000' + Ae2tdPwUPEZ9dYypZ8MujGzohGUFth6jRm2zpsve17Uc5VF4ik3YLV8j4t5: '100000000000' + Ae2tdPwUPEZ17zd3GSobgex9apxwXUsPesezueFvdzkKX5S1m11mbiTeSfV: '100000000000' + Ae2tdPwUPEZEKs2YqyduGgngU2o2veqrk6fZjGDnW7GdexBF6Sfo3SLt5BD: '100000000000' + Ae2tdPwUPEZAw6JSmz4oLYn6AFGTXTx2mN41jZFUEYtfCzPLa9DFrn4VU2F: '100000000000' + Ae2tdPwUPEZ4SogTJgoPViU8MH6NrBLXECCNJGpVTLavPbJzsAJfNrAH3Qs: '100000000000' + Ae2tdPwUPEYz8wxMLTWuRcPLkh1KWWYbgMA6VNyKbc6YT64WyCBtpPigfTv: '100000000000' + Ae2tdPwUPEZ43fSQtVLfKpKgzo3avdDCNsZNWFphtumcr9dpk9BvVR72Bpd: '100000000000' + Ae2tdPwUPEZDV62Rgc4HL8A2wVNfhLgjQW8Pip3gRZgMY33AYKer8vTSa3E: '100000000000' + Ae2tdPwUPEZ2uF4wHtZeHieavknWfo8wK6oJ7EKQuhPivCQdWchEMBidwrp: '100000000000' + Ae2tdPwUPEZ3AdJWunrCm9DvBWNweoa7V3sG6hEkyYjo8Lx6ifQmy1PmM7m: '100000000000' + Ae2tdPwUPEYzoNQQUCaiW8aWQpatgpBNpLbLx7NUKFqqbBNcJQWxGdUKsVk: '100000000000' + Ae2tdPwUPEYy2qgZAS3JqDKjAYrRq9d72JBjo7MsMh1ufzELtRQbU3DfxD7: '100000000000' + Ae2tdPwUPEZGEFvshtd5RXEyTQukbBbirLDr7H1nG3eX8iYXFutetPkRLf4: '100000000000' + Ae2tdPwUPEZJZ3ntYzKwMiJ2NvvoVDVbBDGY1A8SieFV54f4QnHQtQhBqWq: '100000000000' + Ae2tdPwUPEYzbLk4qz4J2zRYKk7GD3STC62W6VwvEQs5xXPehP2nhC6ZJuV: '100000000000' + Ae2tdPwUPEZEQRpoinX1kBxbmxPEEiBohJbw7byuzu7zmD8r7n47gvuxHiw: '100000000000' + Ae2tdPwUPEZ3U4wjcH8jfsZhByQsJmcc4cAUcPXYwoAgjygL2bZsZQfo2yz: '100000000000' + Ae2tdPwUPEZ9C9jvGbgBhob5UjkvTrbniWBfZJPHjBaUvkf7QzokMEjvyA2: '100000000000' + Ae2tdPwUPEZMjeQZAR2zVuXDxmbYCJZYwqEs4u8c1BBL2urxKU1Eg47qqdn: '100000000000' + Ae2tdPwUPEZ1wjde935ncT9xZa9Prwmqi1AAg77mHVSyYARpbrZhqToxNfY: '100000000000' + Ae2tdPwUPEZAXmspP3SJGsFjEL8FFEeajb6NJGRjQRYDMEYHY8Uy7Rfc8mw: '100000000000' + Ae2tdPwUPEZB6Vq9YbkPnCD8vyWbWbpTb3bHnh1NTTGZnrbUN2mBt2oK2FT: '100000000000' + Ae2tdPwUPEZDqP1ooXnVj8K1iSoAep6YFXvBdxkAqpQDYUvkF6T7zBX9Gr8: '100000000000' + Ae2tdPwUPEZKKe93c1DSP3jdGaLLf1QV25P5KGS9GTpR2DR7VB2E7ZbpVUT: '100000000000' + Ae2tdPwUPEZ8v3EN8AaLk4u3JBwxopVr9eA1EYSKQZ6ZTUkx2WbvvYVxWhJ: '100000000000' + Ae2tdPwUPEZ4UQ1TiCtBMkEXUbQHpxvAVJMMqYacjgQ5an2oRFLE6ZaCqvm: '100000000000' + Ae2tdPwUPEZ6NLB2T9MpHqi4yHSFiMetTGXGsLKzHgdfDTx7SH4kTVhB3zB: '100000000000' + Ae2tdPwUPEZFq9QNV7QjyhRHf1j7ZAKraJGCRvYgLEmJ9CCp3hXYRK7xHaH: '100000000000' + Ae2tdPwUPEYxETqTVLXf5QewsMYddgztYR4q4RTQv2ZgcHRcinFgfCE75vg: '100000000000' + Ae2tdPwUPEZ8QeqaTzBKjzYMx6nPv1fNfHDPen3DCGuPeAqwEJLnjPXrwzn: '100000000000' + Ae2tdPwUPEYxUePM3oHmkrvyn8K8o64bnPZQD33LW2GxDgn7YGkDeiXg5Jz: '100000000000' + Ae2tdPwUPEYz1ZH2X7ZpAJagbWDW2HDJbqixbw1w5PYtk8PTY72o5xZ51HL: '100000000000' + Ae2tdPwUPEZ7agbynn2exuo1y6CPEsJCuWFzzdWDp4WwN9ZVHuWrBhus7yp: '100000000000' + Ae2tdPwUPEZBLcoTDJdnefFiF39U9DhzMDaC7Yzti2N3fmqJ95dqaLdBJNv: '100000000000' + Ae2tdPwUPEYwzJsYYTkbWJoPvXkcn7hfp4FRi3xHvbcLAewub8DZXX7CSSi: '100000000000' + Ae2tdPwUPEZ7ZSFv6YrRs2F5wPH9iCfudBjfwrWJr2p2YtT19bcT1cuDXAJ: '100000000000' + Ae2tdPwUPEZHA2Bgr6XT8ZwEkiUQvzFK71gya7ED2K6v6pi1jFXaT7GdmKn: '100000000000' + Ae2tdPwUPEZ9tVtyj1cC7WKknx3WC2Wq56uZoZGuwKM6GahsaGiiSeAHt6m: '100000000000' + Ae2tdPwUPEYxWxA66PhgAV3GYuG32jptf5MVgCPHxPZaLFMNpEXH48HLDTk: '100000000000' + Ae2tdPwUPEZN6BwCB5hoqFm3oK8qC2xjtEkSv52UeK3vaRsJiB6RL9GNYXE: '100000000000' + Ae2tdPwUPEZ8zraXmkS2qPuJJDoqohSh7uoTAMUpdLXHdFMiFUFyYhyCuWx: '100000000000' + Ae2tdPwUPEZ9X3e3qWK3XQHgM86hQ1oeL9dXu8c5zr4VY95CgHp7MgCLDN1: '100000000000' + Ae2tdPwUPEZ4Qp5V7LwHCXrZbWFkiA4ksJNHceHEcdtazKiRUQiT4hurkRH: '100000000000' + Ae2tdPwUPEYwU73nG7Szf2cw16o4oVVSogArjrmb57BHoMYksDNFJemy63P: '100000000000' + Ae2tdPwUPEYvy3bpvbX4XU9TzRxtQzuX5qB7KmTKX4quQmDRgATTWqb2AAJ: '100000000000' + Ae2tdPwUPEZ5Zjac6pucQcez81iCUTnCp7xUpDjtJfStUjLGK5biHFUiSiu: '100000000000' + Ae2tdPwUPEZFUHhBy3baagWZY3pAzTSmecL1DaSR4CinhFXsn1LdVQcfPUq: '100000000000' + Ae2tdPwUPEZ8biBAsW2pzoPVrUmEussYCKQK8ohqR8Juf1BBr97zmoL24FX: '100000000000' + Ae2tdPwUPEZF3G1hWedaTDy7z5nmi9T7wH6q8zpmtmcdTUX4LPkYM54F7jP: '100000000000' + Ae2tdPwUPEZCqnehWJedr1cAhEh3PndtepQZDZWXAnEH6CmoCyQp36MmVib: '100000000000' + Ae2tdPwUPEZJsgsQ8EywLdrCkWchoSw4dtQ5B29W6kajMoL6HhBHZXbPtR5: '100000000000' + Ae2tdPwUPEYyzou9NfTcGn9HMEsQPQaFotZiTuDNTCj9viKCqqLTHJf9kMR: '100000000000' + Ae2tdPwUPEZJPEJ3NM2Do8V5P61AYLGtpxc27rrGE33eQCqmVzv6kmBzhAE: '100000000000' + Ae2tdPwUPEZCjtQAmSvSFBJa9tLDUVKV2zNfR4xhkCCE8B71vjPPNej9erU: '100000000000' + Ae2tdPwUPEZ5Bt9dTKqD8iHTtJpzttGRPMSLLVraXCfSYAFewLruvSSXkQw: '100000000000' + Ae2tdPwUPEZLjVEJAkF7JVK1NrkEdtEpcvtFnd56bf28CwGfEMHpamk2R1N: '100000000000' + Ae2tdPwUPEZ4MxjzgeAVts5xkA3a3KXFw7Hi7gQjBaGVxLUFjZd9bJiqCz6: '100000000000' + Ae2tdPwUPEZHgYmjSPK4mqErqEPCYrCaGp9MBxsLNLNfFVFj31ZPR2vZWnP: '100000000000' + Ae2tdPwUPEZ3DDG4G1rnGGbWj2yhrsgi4LW64rV7D7hdRZ1w9iDPzaBkw81: '100000000000' + Ae2tdPwUPEZ3M79mNDBaZm3Xxx1yTxmGPzwmEx1nSfvj125n8UKghW32Vps: '100000000000' + Ae2tdPwUPEZEURY5ybR8TWu2z9iVMbJR3A5TpvcHpW2L6KodfR61TshTM4g: '100000000000' + Ae2tdPwUPEZJbnq4XxL8B9c1LHmG3VQ6WnVHzHjck1fu32ZxmwgCknawaDU: '100000000000' + Ae2tdPwUPEZM4S8WznaspXyaNCz7oYc3ED4XEFaTNS9uaDk5eCzaczwNyeJ: '100000000000' + Ae2tdPwUPEZJ7cysTFLJ38GAQQYDKyh7bF7QTNZutixaCWmGjJqUtzgc63T: '100000000000' + Ae2tdPwUPEZBVNnUh1HBwTogJiwW2ZpVpJ5SofHv1uBtSJnUJHyf1qk7TYn: '100000000000' + Ae2tdPwUPEZ6ZnSp8kJkL88MwAWYnvy2a3p3cbvEYj3RFhH3CTJVHgjuJNP: '100000000000' + Ae2tdPwUPEZ8qsU6yNkZbDgPAgGEya53ER5haQHEyYMqb4gAfRaMCLcSiJL: '100000000000' + Ae2tdPwUPEZMmCSrPtibGN7zCfENiUu4DjqgWKnTdBRwxnwpVRLm87oRwin: '100000000000' + Ae2tdPwUPEZL71mCQ3Zcb5EgC1Vy2oaWhSFLZki67uxWcdFJ4LzApPxpjVL: '100000000000' + Ae2tdPwUPEYxDeiSegEFJAJJg645mjn9EDhbTpdcB4CwPT9aPFPo1xhQfMi: '100000000000' + Ae2tdPwUPEZ6WA45qamy1G2fyeT4SKFrLWNDAhUup1CgrLw9B8pFbw39Gm6: '100000000000' + Ae2tdPwUPEYwYiEZTKhCQa7U9KeRkK95toRBkR365WDFqoVZf1Ak19F52kV: '100000000000' + Ae2tdPwUPEZNA4M3Mw3TFvQqWxet94LTrjbiFHH51jnU2ikycMmUKcqTPvD: '100000000000' + Ae2tdPwUPEZH9yAjkpjaqCK7jNwPiKUdDN1rm9XmLWZ4QHa7M2sk8P2rer7: '100000000000' + Ae2tdPwUPEZHvqGg2oN4QJ2zuqsbkkZnZ2Y2PwLHsW1yEukC9StikdRUAEY: '100000000000' + Ae2tdPwUPEZGAenMEmMDzEbfDoTmPpcJnhAZu3LsQS5WeXpkx9V3F1hruuX: '100000000000' + Ae2tdPwUPEZHsJt8TtbyoGQuxaMQzKrFJz1upBVHoGn6qy2f1KFtSoAFW1K: '100000000000' + Ae2tdPwUPEZ2WgP6WUAHaXjuU4Mg5GourmRaviT7JdJKQmC7B18mdo9rvnk: '100000000000' + Ae2tdPwUPEZHpAm3AZ9oqMjStD6me6nw6Bzs5fpA83f6yNnQYV7FY54k3fM: '100000000000' + Ae2tdPwUPEZ91uU32wM6Qb7cxV8uU1Wsibfwn3WJBZaiWxYuLe6pTVi787w: '100000000000' + Ae2tdPwUPEYw6waL6WVGsBTHU8DJCQt1KVbdaTDDpCeaGJ8X1Kguat1FrC7: '100000000000' + Ae2tdPwUPEZMNHYd6486pwdYiyvHWxkvBtd5RMoUP9cG72N6TmDxmH7utFC: '100000000000' + Ae2tdPwUPEZ4MAt66BNoieVMxpBsWY8GjGrvdGi1xPtzYfHfY8bzR1AQYQ4: '100000000000' + Ae2tdPwUPEZGD7NjNauzvvf5VWu7X9KjsKP7iHWT4xYkgwCvjNienbFpR87: '100000000000' + Ae2tdPwUPEZGdWobiLjyqTtvKJXEymuaygUfxb8ekACjf742UPxKMgw8J2Q: '100000000000' + Ae2tdPwUPEZJAnKz2m7QeYWQZ3rq3VHwjnWW8cp277FQ1oWVM9oxaxf1Yer: '100000000000' + Ae2tdPwUPEZ43Rseb8dzgxJ7o8BeJyFDKKVWupkSvwzLiMRbxnGbri7bBao: '100000000000' + Ae2tdPwUPEZ81jqJDQ56PXGAvXj11C1AF6C54LsYHwq3X36x7rTxEUFt4ht: '100000000000' + Ae2tdPwUPEZCBfkMi5X8bRV91RCKfJwM9EYWQ4eTUA9Wi2mtSBPCSQgDeJD: '100000000000' + Ae2tdPwUPEZ7yyWmfooy6E87GZX3WXQoq4tFkgMTqQ4i8gHYvQQ66TWF8NJ: '100000000000' + Ae2tdPwUPEZ4B3UUq52fMj5AEMpSiudYYvkYV9WEUfh56BHQRLqaEiHrZ3U: '100000000000' + Ae2tdPwUPEZHPGatFrcenhvBrWzxGN9bz4xxfN2JZmtPJadXCRqmqiUGcM9: '100000000000' + Ae2tdPwUPEZ8XJSS4wcJtWaEN1crSCx2NPcutwUDcQCQBZGH7Rn4ktWxogV: '100000000000' + Ae2tdPwUPEZCt25tJ6xeeWJmaxrS198o3G2WCu59grjKMa6zzdST1Spgkmg: '100000000000' + Ae2tdPwUPEZCzG5Bq9Mca99S2xC2AS3AKa2HYKe3zUfwisQaAywWKf39HVA: '100000000000' + Ae2tdPwUPEZ5wgLfsuc9qbDsTRneU8miVKDd4VVnChYnc2PccQfwpMELSwt: '100000000000' + Ae2tdPwUPEZ1RFG81KCTxgLFZJPxFxAgdcwfMQGEbektxusUp61XNEb9G8B: '100000000000' + Ae2tdPwUPEZDbFkB7g1rDbWZE5F7PgJEzbj7J4F6XfEU1R9DKpiF9rmJCez: '100000000000' + Ae2tdPwUPEZJMVJK9bENjToka83ioUyetLvNMfGXfmGuSaK17oJPtY19Hmj: '100000000000' + Ae2tdPwUPEZEBNARZnMGANKpCUXrunwJQDd7fCkKfCwsAdRJd5TbeC5Hzfh: '100000000000' + Ae2tdPwUPEYydLNMtNNeiLEFArMzbrfAhUEhms9TggfSX2HZpKvn19JpUWm: '100000000000' + Ae2tdPwUPEZ4WFLyntPbTpk2fGRaV7ZXjVFH9Q2tQLgGLfC2biU5zks8DvM: '100000000000' + Ae2tdPwUPEZESzAfNGmBhK7rHJd9ZcR4G1usLqT17vdfDdF2XCJCQzExPm6: '100000000000' + Ae2tdPwUPEZCjNmQo2gvGWbdcFte7Msv8HU8B5B6MMbx5mczFzFq66ZdJQ5: '100000000000' + Ae2tdPwUPEZ3Tc48SwqCSiUBBkcNaUXsbr3hSB2cTqrGGN1FL3pviv8TUCf: '100000000000' + Ae2tdPwUPEZKJ2tuoz5hSe2varQ94jdW8RVZUyoqcminPkcDwRrFJYz9V9P: '100000000000' + Ae2tdPwUPEZ4poJvNPT773s7SYuRRH9mWMDG4Eva7RWLxdq5uybgqNbGnoR: '100000000000' + Ae2tdPwUPEZCy3jyej8FAyqAudArSGbd7o28kRdy5AspprdRM9ntwiTpwQP: '100000000000' + Ae2tdPwUPEZ5s1VJbFsdnS5D9vA3VzPZDJxkdBC8472zHSguKAoLMntKzmY: '100000000000' + Ae2tdPwUPEZ8jGNVJUZLwthZKtDvDbMhkp8o69yjbqUxk5NHCqHhjxRL9xT: '100000000000' + Ae2tdPwUPEZ4dFtsNLvezT1rf7wF3Yq6zRshUWkU4pjvPtVCMR3HTLE7RjR: '100000000000' + Ae2tdPwUPEZM38W7d5ZppbX8Zg3uEAzpVmY8PNdwXNzZw8rGhmyCrPRwXpb: '100000000000' + Ae2tdPwUPEZDcy47uhHy56DtZ3RL1Gh9ykEzij4HkfN1nRNB5VFhx9huXdY: '100000000000' + Ae2tdPwUPEZ89D2J23b7KePqnh5dXMdLgXc4LsYJBuXKQcncSWzzLHPfZgB: '100000000000' + Ae2tdPwUPEZN6huac62PMqAsJfWLmBEAAKwKR7mGexMWUJrHm7c3hUHuQ4J: '100000000000' + Ae2tdPwUPEZ5auFwdyGfBHvDSYXwdFDv93QdkQTNK13VRG83r4Rp62JbpHq: '100000000000' + Ae2tdPwUPEZE2FfDA8RScRBthjRE1X111S1Loc46bsFSf4WwUg5AP8eig5n: '100000000000' + Ae2tdPwUPEZG4X6p59Tc6bdWtF5KT8ZybAhM6KV9eJ7Q9576J47a6zjA6pC: '100000000000' + Ae2tdPwUPEZBZMV1mMGXBAaLmkebkLsHyfsskUrSLVsyYV3J38sMHMP4CVG: '100000000000' + Ae2tdPwUPEZFQ3KCXx1SPg28jaKU4VBLbf7MdXmPk4jGq7HBfLubrmPUikD: '100000000000' + Ae2tdPwUPEYz8c2d1oAhwHsSjxjHahcQ6T6D4NHj3VoPH6AhVvBTKUcYZRW: '100000000000' + Ae2tdPwUPEZ2YHh5cDQL4MBwk7761Lf3miKpNDSYqiEZkyxjH3ZQvEKeFP6: '100000000000' + Ae2tdPwUPEZD9MjaLL4cKHYcCxrTgD717EW1pMMYt1wJoKHjg4W9T79y1pM: '100000000000' + Ae2tdPwUPEZ78o5pKwU4zq7tGoPUrXhpLc5N6q4vf4xwLtbJV78XrXrrp7x: '100000000000' + Ae2tdPwUPEYvyo6BtkHXyMHQW3mpbY5jw6adkRVuBEjdbQvPMwtqB5F6SyL: '100000000000' + Ae2tdPwUPEZDTNbb7nwVyyKAeGZEPqKUTbzU5c6fo2M8KfqAqp22HBx4qJp: '100000000000' + Ae2tdPwUPEZ2t5sdV6UwuUxvfLjF2jTCj6xsxmDa2rmVcJu2qDv91ZQoF1g: '100000000000' + Ae2tdPwUPEZG4m83wkwfei4CRVuqHMAWPtLvF4pPzWrbnmdBPJQMBjZ6X2a: '100000000000' + Ae2tdPwUPEZ9gqJdt4Smy3UZbbTaHbimnk5EmtQtyupLgoUeX6YH7oBvfnn: '100000000000' + Ae2tdPwUPEZ7XhNKJ3Q5Wd6T7UGCoxjW8EQFJis2M6eturuJCssBhkDZump: '100000000000' + Ae2tdPwUPEYyYS5rXxkssATS1UQATyhk3gPusGbm7fmh3R8uvVRyBRYgkrR: '100000000000' + Ae2tdPwUPEZDCF1b2F5z5RkhQprm1HEsDrZ9gWXLEn5DYR6PAwxZ6qQihcR: '100000000000' + Ae2tdPwUPEZLh7L5PNqNtZyC7kuevJRBdXRaboAwnVgo97zAhsMzcxHSDwf: '100000000000' + Ae2tdPwUPEZLUkWS2gFqUq54iNoa2rAbPtjiRwRqKYvbrZtts3UzVV8zaM8: '100000000000' + Ae2tdPwUPEZAmbnXWAAexP2P6d6FxJ1KHALKNkqgkP8KF2mY7Ry4TCwSEq8: '100000000000' + Ae2tdPwUPEZHQ1bg4QNidpiGcZLUdaFcWGFpj1WBZ47gCsFPsSPHX7WzWXY: '100000000000' + Ae2tdPwUPEZ3fzeis4aTbaekV2MF85C3tGMW2iMHeXDuXtJsrbir4t5Lwya: '100000000000' + Ae2tdPwUPEZ3crEQ5hStZ6zEK6H3ejMWU8yP988JbiqgvgtvHqG8c9CYiL7: '100000000000' + Ae2tdPwUPEZ3xg1CTyJe3viw8guBo4g8p6YbCi5fnStsZhKbrCnyk1hjfwp: '100000000000' + Ae2tdPwUPEZNDT1HQrdfo7NVqkejhhv7f3NXYBY5yuGieB8K1HcEanCPFL2: '100000000000' + Ae2tdPwUPEZ7zuDhuZfQuCJ59AvWEZQH6Q2tcYYkQuUUbt5RwLNqc3YCet3: '100000000000' + Ae2tdPwUPEZMo5ExHFPhrAo5JNaA45hBtpfbw9uUFEsHcY5iQbL8S9CRUAg: '100000000000' + Ae2tdPwUPEZ3FtUBTxnyucxs1uesPzD3tcGsPU1PdTvouTMXgLNn3BKjiL5: '100000000000' + Ae2tdPwUPEYxE7cNbfJguDBGZ249MRzdmtHEmmyTkFzHsawtyJSkXjXNVW6: '100000000000' + Ae2tdPwUPEZCqizdNW1izYYzuqRmCWLPrGwjXivpvpaY3yG2tdVN1iHTMFb: '100000000000' + Ae2tdPwUPEZMGNUf9vyyB5tVZLXpHpw7f5fUnfWLMGyrfqSYyW6uArHbUVP: '100000000000' + Ae2tdPwUPEYwuDDDQhgwbq5mZ338srdAWzSmHwwyqXF1tkqhZKLAxABBqTs: '100000000000' + Ae2tdPwUPEZGAn3KG8aNRoTXUP9QCi4FeG5V9cRYYxTaWfm1vLMvWHF91EH: '100000000000' + Ae2tdPwUPEZ1EzGZmZZvpu8mvshMcrJRACavoJQPihU47mH3kJSkzzmPgdo: '100000000000' + Ae2tdPwUPEYwZaPBzd3NzofZ5xq9FLgWsAzGL8hmmgty3GLXkQtP4Wm5NmN: '100000000000' + Ae2tdPwUPEZMRoAJXEWs6EYtQ2iPCArTRhsX7dLJrduYQUA4ao7m2TV77dg: '100000000000' + Ae2tdPwUPEZBxWJFBYhVfwGzhsEVah3LFYe47HTYPDVToQFZXH1pfgVhLfu: '100000000000' + Ae2tdPwUPEZ6mjX6ESZtXoV3HCbbwYgjTW5ZRGcMuZnTbxMnB3Z3RQ7CmFY: '100000000000' + Ae2tdPwUPEZ2R2R2XkM6GVwPCmYSUBcuYmVpVHHd1AJiwrSAT8rpT3q3yzs: '100000000000' + Ae2tdPwUPEZBMCP4GygT5jacFHctQ9QxnkRU7cs3TSyvM1G2X4guWCLM4Zs: '100000000000' + Ae2tdPwUPEZLrzZdA2FFAMPrjTzh2BHCc6KEuEXuNwdKuQRtNEDWHzLRDT5: '100000000000' + Ae2tdPwUPEZGGaCowLNQGE8NrV3bQbrSDbhfCrsmgEsYXiFA6sTKgy6n5EK: '100000000000' + Ae2tdPwUPEZBqnXzZJAZfGEwpKsk4dezw79kuV66T1hLbymEVgou8tg1Wns: '100000000000' + Ae2tdPwUPEZDTuVTxZHknpaGPRETKt35fmfu6NumLqmWZd3kiib48oFxRVU: '100000000000' + Ae2tdPwUPEZKUdeNDnNskBfNrr7GK7FNdYm4DVTXiNdBXQYBfK1ZfrGj7vC: '100000000000' + Ae2tdPwUPEZ2D3XWnHnwaQ8WXFvASyS9zUWD5E6EF36GrxoBqrFARDeK13m: '100000000000' + Ae2tdPwUPEZ1X4fckx4MozBFaqpsFuE5fWBqhQw9UANFaum8sTYEhe8pYDm: '100000000000' + Ae2tdPwUPEYw5nyCBLuGSWHW4tRRGEuKDjXYwCxJ8CDoPwu7HzbHCZPJAn4: '100000000000' + Ae2tdPwUPEZ7fth7NCF5U3fMAooFqK3wuSzXkb7FEn7sRFUbNcUzxmPZzXe: '100000000000' + Ae2tdPwUPEZKBx3FSL1okH9eQyLsjg6yF48jp2CpfkrfLtoaxtdfetuph6F: '100000000000' + Ae2tdPwUPEYya56MhSDa1SxLX1kyqjCGWKCY3ybrKWVpK6GQPNr9TsRfNyz: '100000000000' + Ae2tdPwUPEYwK8GArkU3sd1FrXsTJSj77QqCwM57p9ciGpEvaYZGghegAjM: '100000000000' + Ae2tdPwUPEZAR1XByfgkgDf1iv2GHeUH4XVfK9vs93rxkHnBGE4Ff2QAVSM: '100000000000' + Ae2tdPwUPEZDpGznRRpVoTiNsqjRXqBXS6tddPSnM8ikJb42UCeDegJfsqg: '100000000000' + Ae2tdPwUPEZJJ4d9vocjJCcnusesxu7mxzqWtbGZQDFA3SL5GN3y4UujQN5: '100000000000' + Ae2tdPwUPEZ3jwQJ7nxhWU6UwzvikdcQpkt5dYrCePpBa613miSf9JYL8Jd: '100000000000' + Ae2tdPwUPEYxrnDxc2fe7v2xfhue6BREW8ysQpP7bjePjuJccakNWsxCz6B: '100000000000' + Ae2tdPwUPEZMMuLmLFweVGvQoEs76RCKVVD4TdUooeUDQsdQpnTpZnpxCDp: '100000000000' + Ae2tdPwUPEZ13crmX7Ea1u2WMrBYHLjKC4345L76NNWcKPqqfPCNpkPUYDy: '100000000000' + Ae2tdPwUPEZ25DQAqG8ECh1PCF4k8GcxAHtyvvd3gQZav2aWzgytoHq9U4w: '100000000000' + Ae2tdPwUPEZ46w2tq2T9VgfwNLSKFn4MjDvGMcHMY9tBERRaMEcFvT6Gwuz: '100000000000' + Ae2tdPwUPEZGJBEPxNgyWLjx5z6nm8AyFJApGbCYgeC7UkVuTJ7aHarq11K: '100000000000' + Ae2tdPwUPEYyFfHi25EMFC3QaR2KLEQVfN1Q4PHpspr4zy1P54MwKzCzCoE: '100000000000' + Ae2tdPwUPEZGE3keyCPnPp3kiGLHbArJPrw29tbtAxBDprGrjPwB689dwqV: '100000000000' + Ae2tdPwUPEZ4kwuedCjS51N8DU9t2FdxHtNMB5mZbFwHDyic61H8ADLFRpi: '100000000000' + Ae2tdPwUPEZFPjnKmFhRUCBa12YwLMgBbfrav7iqqNa2iRFSPKJuRU89126: '100000000000' + Ae2tdPwUPEZ46DC1J25Ydqvw4vv2QfsyQ3YXXJLuEFxxzYz1RohkwdPVXXe: '100000000000' + Ae2tdPwUPEZ3QKC5AKpuPbDVBAtXLYtmJNAoKqzk21zysmVK2j2XQTktCiM: '100000000000' + Ae2tdPwUPEZFKv6KXgaCiA1zXJoDs28njnesWD1cupFYQMJsymbqQht5UVC: '100000000000' + Ae2tdPwUPEZ56raE14SucxceZnBB5v4JatYKzK9UFnCRU8no5wBo3X6SD5x: '100000000000' + Ae2tdPwUPEZKDBqEfrKvRx6KjdKEjhsw1Rm9eBGNtEAaar66CiV1S55vwXo: '100000000000' + Ae2tdPwUPEZ7tG1hd2YGUjJYqTTZytcbxGDhYyQBQK4E9isJ9NAuEFx933D: '100000000000' + Ae2tdPwUPEYxpuYgmbEdtqdLxpf9bVc2rG8VTLSRmiaBF1pWmrZKbP4qKGQ: '100000000000' + Ae2tdPwUPEYy13QE3a2DGcJaeibwXy6jGDM3vvnaXhLGBV4sduCVedjRmdA: '100000000000' + Ae2tdPwUPEZBFomEuQ9RwkjiUMbvVPysFqTowS9ZuGKfgqpDRm2Lbg9fWzW: '100000000000' + Ae2tdPwUPEZ1DzPArFeppQ8mjgV61m4oNupUf6Y95yquUMhZ1DZswRUTF2e: '100000000000' + Ae2tdPwUPEZ88V4RbwFa67PDu31x4LMqvvv6qpRCcoZhQa1jkuok5egBto7: '100000000000' + Ae2tdPwUPEZHwPUk5g4HFqM2qFAvqzwGyH8U9QTZkZyAnD6geKqZTqbqiTy: '100000000000' + Ae2tdPwUPEZ3SP2NhwRnqkoYZY9t8icFkKj7h16MEnTpa7fTnVn6SfdCPeQ: '100000000000' + Ae2tdPwUPEZ6NbyM3PbPnGx7Z3do9QjcmLgbL15Gc6Z2TGt3VLLuiyp3Smu: '100000000000' + Ae2tdPwUPEZ4niF6Q2HvuCLvoNxgUVzzqi161Lbx4MhBLi6UJR66YyUunEV: '100000000000' + Ae2tdPwUPEZ3ern826FfTxiPTDVz7oXzug1MtoS9bqrA4xar8iDUy4igqVM: '100000000000' + Ae2tdPwUPEZBiLGAPdXDnwfdsxVudSEUHVVKWz8uCJyPFQjT5aW5WxwBTe8: '100000000000' + Ae2tdPwUPEZ4nbpbFDmbocwfykydyvtJyEPETxQ3CUHuarHjZWSEoQuEHoa: '100000000000' + Ae2tdPwUPEZ89jgUR3c8XuLNii9QN5nb4LUQ7HC9sVYUNrBEJp4raRtp2VC: '100000000000' + Ae2tdPwUPEYvyPh4q8suUZyLrLHJabDi8Hq4kkC3KmCDTKdN2vtrj4H73sZ: '100000000000' + Ae2tdPwUPEZFCxJsCyXFfP6cPgKUz8b6LFq6UewJCcVAtrjq6e4NP3pnVoA: '100000000000' + Ae2tdPwUPEZ8EfXXu23343aKDgcxpP8oZA3zkRJxkZRRvr2yKoce8QtgcEg: '100000000000' + Ae2tdPwUPEZChWR9u5zN3NcR4exqgjsMVPDfbbu5zvHjCd22kkuaN2aw8gk: '100000000000' + Ae2tdPwUPEZF5H2V6svN6io75oeiFucxLYUdQhpNDuEcg5vtXTES2QSurpQ: '100000000000' + Ae2tdPwUPEZ31KkH1KTwM2PzncJW43UB8MGYD8zyNsiRDo2q5AZzzjYSRiC: '100000000000' + Ae2tdPwUPEZERL2eCLpbAFmA4dkvpAAkBBbmDa3nJeBgiJTXtJRPonJSFuh: '100000000000' + Ae2tdPwUPEZNK4iVzTjkogxZcJdSYvHt56xyKheAn1mv7Lzs8ZwhkytprPC: '100000000000' + Ae2tdPwUPEZD9Zu6swkcMigHxi7GiQ17qcyDa777jUwBbtXeedx4yGg6hn7: '100000000000' + Ae2tdPwUPEZN9jV1D2fBMoFs8DiWcocwDcwfzk4n3KSgGQMWBPVHLMzrdib: '100000000000' + Ae2tdPwUPEZ8kLAE9bLNTVsCVUJdC9Xfm2o3dum6WCECfeTcoasLwyEM3my: '100000000000' + Ae2tdPwUPEZ7ceYmnUBVGoDrHV1pNs6YRgkYzFQUMQVJcUGkeBG5hMkBUF5: '100000000000' + Ae2tdPwUPEZ7UKYc4F6btGCg6h7tNTRua8c74AQT5oLejMHftkVonCqmxtF: '100000000000' + Ae2tdPwUPEZHpziVD7ksyQaQ4dtKGkB8NyGW8kZRihZt8sVHZHR9gtTzUoH: '100000000000' + Ae2tdPwUPEZFZ4UnjdbKuYqjoXUZTYJ7kJpHvyEkXj6Q2WLQdfb2QmmcPV5: '100000000000' + Ae2tdPwUPEZ1Cbg2ym2YcF84iKxdfxrTtUTbep3r6gc71NQbbuxShDgXdM6: '100000000000' + Ae2tdPwUPEZ59CyAoFEbJJMR8KMFrfVnnb8Dp8qp8PSAwf1Q6itoFpSvNya: '100000000000' + Ae2tdPwUPEZ8Uv8owFy2dnacZ3Wsbd8KdpBixvoUDm7LRaNyXuqF2ZUYvS6: '100000000000' + Ae2tdPwUPEZ7jmwUBsotNoVeV6AUNhmhYKWDRhaUk5QPf9XBuFNaDBuH8JS: '100000000000' + Ae2tdPwUPEYyBB7uSUatNL7EG644onyGBEyNGvxkjoJKSyDvQ3Ew9WsFfhn: '100000000000' + Ae2tdPwUPEZ6SYoCxNgcg8ztAAsXB4bzGifGzTSFNrS9YuCTWZi3LgCkrqz: '100000000000' + Ae2tdPwUPEZL4kbxsCLVRnvE2wL8aQWEk5k8YQKhxqWPzeYUq5fQ3SFNBfR: '100000000000' + Ae2tdPwUPEYyu4WTaBS9bYw2P4bB9bFTwK217FyYnFPTWuxEgSJLzWCb9X1: '100000000000' + Ae2tdPwUPEZ9147MgzAgnRvUo4gMbZyxBpSdSQZTaHKESpQhHTm7sEicRGE: '100000000000' + Ae2tdPwUPEZ53ytiak4fHVCQgUYg6rVG2buWmBFb5mBDsFtXRN5MremGsBC: '100000000000' + Ae2tdPwUPEZEuNVUBkf4WGxHPuQ9cQ1GfWmLg2o1TCWj35hWqqpcEapXoS2: '100000000000' + Ae2tdPwUPEYvxXFR5ScY6J35xH9ZK6dUzUHpKo7aF6usmAjJKFgjAMUZSXM: '100000000000' + Ae2tdPwUPEYzuELo8zE6C1tKWv53KsAehShc9pbBMTwjpKyTSNbkBXDiJSF: '100000000000' + Ae2tdPwUPEZEkp6nKiCC7ha4eAS7KdsEmVtLPnKg1mrUxcBWwBd1ksKvbSV: '100000000000' + Ae2tdPwUPEZ5rnspVLgL9fwex7aY99MXGgxUn5PTez4kqY4QmY3oqxtvQqB: '100000000000' + Ae2tdPwUPEZAKsM6crrriAGf9dhjakPYsopJz2sVu1FHoCCRDr7QeJnj1zK: '100000000000' + Ae2tdPwUPEZ5VNAEm71feVGjcYWdekv376syPodd7934BgB8ccpmYvNuiFo: '100000000000' + Ae2tdPwUPEYw5eBFkSx1mUp3nkA7MuAXGw8yFzFtpPm9TZNHdCbJQo8KsF8: '100000000000' + Ae2tdPwUPEZ5z22Z4uCXc64osax6ENEnhbYv7P75GyHD43mnumUeReiJbFK: '100000000000' + Ae2tdPwUPEZ43i4wkWjnvsQZvT5ammnuqFyo3q38My3vrqRvRNYTF1S8u5Q: '100000000000' + Ae2tdPwUPEZC37NZXejuUa2xbWRz43WZrsJaMJEVgnTsojG5S4gvyPEW2S2: '100000000000' + Ae2tdPwUPEYxuAtDEJj4UsYeMYnvVgD6b3CbKsaz4wEwcm5P7742HcCq2WR: '100000000000' + Ae2tdPwUPEZDVHSWfxyyUHEeZ1iL3Ed4KXGqfqULbvQXnY5sQFfhdjjhkrB: '100000000000' + Ae2tdPwUPEYzAca7B5LaSbgEnWieSgzYntSqKnbcaEsE6t63rxj5fAXteY4: '100000000000' + Ae2tdPwUPEZG7UEhBtmqL1ky7DusRHAFkjHfnjvuCQLQKr2NFz32EGgfVfU: '100000000000' + Ae2tdPwUPEZCNrHcAXxQbMedZ7cesYVXeitW6PMvDMytohPqxgAyvYkd1aB: '100000000000' + Ae2tdPwUPEZANcctpoj9vQg5r5zuoCfC4Za9o4TX2jHm3fqqQqqM493iJ2u: '100000000000' + Ae2tdPwUPEZHNZZfmfiwou5xEnajYcNYs1cfGtTUPaYnWeU3iQbbBcEAPCy: '100000000000' + Ae2tdPwUPEYvy6p4rzW5jdWJhsWB67D4JLTtgx1zNjZHLrGxM6V2sxuTGCH: '100000000000' + Ae2tdPwUPEZMvLqcUAwJyHvjC12j5iXQXG3qTxyNY2HMy7Nrk3KkQAVsiQn: '100000000000' + Ae2tdPwUPEZEZCBRnYgMXHijysd1QuHGifD8WWHWZWK5G8pZVXbhpwgzDAV: '100000000000' + Ae2tdPwUPEZ2zmS7RFJLV97JrL1CZkwRBp4nkQNS6emHwuUMrieG29U6RUX: '100000000000' + Ae2tdPwUPEZErUVUMXnChqoeHRNmTkrypXFXHmzNPxJ2VDxmEyVRv5x8Nsf: '100000000000' + Ae2tdPwUPEZ8ebtP5yLvnvz9QpnU9MdzbbLMVdkEU7jg2nNkJPBXLqAFwMT: '100000000000' + Ae2tdPwUPEZE54GTpXRZPjty6x6fZccgy94tiyEXgRqzmSsdnrnhLhUwGrE: '100000000000' + Ae2tdPwUPEZJ74CyQxBmJk6Sg1nbdLYhFWeAdNQ9xpyn5Q45J9PE9Jxx92u: '100000000000' + Ae2tdPwUPEZ3vixYtx92ZQbJeuaJ9kKoXViMP3StyAv1DrNDV5erk4w4Tx8: '100000000000' + Ae2tdPwUPEZ5f31q9oPtNSXRFvF84eSiU3xjJY8SnopBV6TNfmYRoMqFZp2: '100000000000' + Ae2tdPwUPEZMHzvJz4bFYURDTG8G9zFgjcBHFUDyjZa5Q2etdrjd3qWxDey: '100000000000' + Ae2tdPwUPEZHRASZgqVnWSqKxavKfqc192Wn3Wy9LX565qvhFvaAgqtuBGF: '100000000000' + Ae2tdPwUPEZ88tqAzyv1mr7g4Aozq1oxS53Pxjm46Hy9BYETB3iGYTXv1a2: '100000000000' + Ae2tdPwUPEZKMQuZZUfTzbgZcUBW8JA5AVC5Fu7mKDTghuwNPHPc4D3aCDx: '100000000000' + Ae2tdPwUPEZEENhfCDUtvRrDrx7PsQAuvrf7PcZ7XJ8U7xgZkyzAW1Vaazx: '100000000000' + Ae2tdPwUPEZNAqKk6PRS6gpzGPwXGmxdWCuohu7Kjf6VYDHMz2XSgb99yEA: '100000000000' + Ae2tdPwUPEZDgm4ZoU2uRtHaHik2V3KmwsgPSbyeMvF23a9VW7M3G5bq31P: '100000000000' + Ae2tdPwUPEZL6LYQ7MP9ERqHMyUUd1PkTRwCjAwfAcq9D4rPN1T6Qi2A6f2: '100000000000' + Ae2tdPwUPEZDgPg9uyqoF8nqPQLvqGGVxLLKfCgtm9njuwAZJRMiAjg13DU: '100000000000' + Ae2tdPwUPEZEeqihENetKejKQ6HRbwhqUg9VSSSqJdkdzhMxnjLSDQMksMR: '100000000000' + Ae2tdPwUPEYyo3egDtEnk8Wb6Z74mLFjZJV5jZx2JkkNsGq5urzivHzQkGE: '100000000000' + Ae2tdPwUPEZ29MxnpS1cwy8BUdGztoLGwQcfofBHPs6x6KAL1ZtbigR1p6x: '100000000000' + Ae2tdPwUPEZJhTW4ymcMTedrjGqajjT4MkPBhwL2vaUWvJLv57G5HjvPYRH: '100000000000' + Ae2tdPwUPEZBHMB7jsNaA85E3dcmheVtZmzbtZj5CPZhaBHNTYT5oADiiQi: '100000000000' + Ae2tdPwUPEZG2sLRZiWWxCqwNMqTVjYTDyMfv4S251EqnKLDHoosvqnH5fC: '100000000000' + Ae2tdPwUPEZFoJoe3cAowR8awBiTgpidKSM7jq17bbdCRmKRoH4xoaNCa1v: '100000000000' + Ae2tdPwUPEZ5x41wUp9fvvGKee93aCVoZbzy7du2JAtunkCBWpX4y5c6oyt: '100000000000' + Ae2tdPwUPEZELtacz6AfGpR6ksGtUUMb6FopGupMbyEWKm5EsFtvzkFUsTu: '100000000000' + Ae2tdPwUPEZ794iXyVB54CHdH9c7V9y4hsCDwBh8YESk85XK2EGgXSpEME1: '100000000000' + Ae2tdPwUPEZ5tQPRd1abuUQHMqwPMyUUN7trD6QCcjm18pQNRUwiNSkGQh7: '100000000000' + Ae2tdPwUPEYzbHgN93mBt5MapP51HKT1Wg1qD8cVWw36A1GZkZ1VeEg9xm8: '100000000000' + Ae2tdPwUPEYyyQ7Jfj1K1MJQr18E7Xpfwq56eg6BqcAopK19c5633jyhe2h: '100000000000' + Ae2tdPwUPEZ5rUoM2NySqyVKqYovHPmu8qFWBKsfAxABwgTVKFPsvZTGkiB: '100000000000' + Ae2tdPwUPEYxFSD2BcVNLshc5ma7nvSYkXW9fy7UftmH7kMRjsRNYNsgTnx: '100000000000' + Ae2tdPwUPEZJFag3c9i2Q5diXV7ddP1uyqTK2D8b39SBkjnfksyy6kK6W1U: '100000000000' + Ae2tdPwUPEZCFCLevrxUrMHD5ki1zPwW49eBPQHnnt9MUbgyTap3kaXpU8U: '100000000000' + Ae2tdPwUPEZ5PS2jeYyER5CmUMdGVMUtNJ5yQc8xYdoswSznM7QWURMVXo6: '100000000000' + Ae2tdPwUPEZ1wQ8iC3hGspf15DN3za3z4ou4Je8qFt9GgeRjFjaErNxHdeE: '100000000000' + Ae2tdPwUPEZD4Yv2j365jRdvj2viVYG3mEqpr4aHPYsAwC5fMtFAGasHCVH: '100000000000' + Ae2tdPwUPEZBoZugiAfSpx1nckzEAsguJq5kENa3wAjLTFaif4qTRAykESa: '100000000000' + Ae2tdPwUPEZ4WSPCCYRV59emZyuLrXUDQpq8j2fa7LUJN4PZkxS6okF5Bi5: '100000000000' + Ae2tdPwUPEZKyvDUrBcPvh89cYTs1urkSqb9NwGtdUYjSqnpLCKrMjuHiZJ: '100000000000' + Ae2tdPwUPEZAzjyZC75HHhkTq7nDxTaHxqc9GqeWXS1yxzuLNBA1xKexr8h: '100000000000' + Ae2tdPwUPEZ2go5PX9rrC46yesPC6wQDAMEBbPmuNNEnXa6pF4GYyinPGRg: '100000000000' + Ae2tdPwUPEZJqStRx8pyVhW2FnfmAU7rh5xZZm7oiXUJmAnMg8mLFrnMn68: '100000000000' + Ae2tdPwUPEYyt79Lo85dSmBpPhNNDZWn3fnuUjAX4UUfXNQ2X1LnSXUdQPj: '100000000000' + Ae2tdPwUPEZKZGCFao6ZHS7Ast5v9T8K1JWv7wFaZmQiFNU36Fs7Rcq54FH: '100000000000' + Ae2tdPwUPEZ4etrSY1cxdA9q5uHzSVwbvD8ashufPcbkmRgpJXVCzv1si1M: '100000000000' + Ae2tdPwUPEZJpa28YX5BpywUkJ5mcNq9Xx1jy2SNwhkgE6NQih25Xpx2GUC: '100000000000' + Ae2tdPwUPEZJCY8nnhzhE63MmrnwdKVrwAieutUHojxz68dQVtVAFpy7GQZ: '100000000000' + Ae2tdPwUPEZ44otc4nD544HLERbf8Du7RRD2sP4276kSpzYTp6GRV1RTc7y: '100000000000' + Ae2tdPwUPEZ6aDQ9AUMt73sAEEucThgCs9vxTGXE9LH2byoacgxLZWtPm3z: '100000000000' + Ae2tdPwUPEZFrAuBp1kVTKBJvZUa7iYATh7PjuFFVKb9AEAFPmRvf57fLRu: '100000000000' + Ae2tdPwUPEZFXCW4QqiMUmo3UqKcyZ328NjsnbXZXq7yp8NwTbdDDLhQmSB: '100000000000' + Ae2tdPwUPEZ8U9MCjDkTeq2tct17YXVn7eixE7NkR35afqbvJsbYexk74RK: '100000000000' + Ae2tdPwUPEZ1R7vkdmpaEzfJf64X2tBm98eZFy2zHvwwm5ZdyNVHfCds4v9: '100000000000' + Ae2tdPwUPEZJnA9yKBNXnHC7FfTA9bPRTRf3zNNPJPpp7DS2N2jckscmr8k: '100000000000' + Ae2tdPwUPEZGWeABA6jTneu7G2LmuAMobUanuowaCaEuHnmWZRPEGhpqNbL: '100000000000' + Ae2tdPwUPEZK2nm3QLMmZ9CCkCYMMpsZmDtfhwyKz7ov3FKmgYvZDksU1LB: '100000000000' + Ae2tdPwUPEZHKJNysj3g43iACQHjyaBsgDGYkHKKwJWqLKMoLJGrPkWAxYy: '100000000000' + Ae2tdPwUPEZB4GDYmNfAEAc9iGMM8CVigVRWvc4Agiya2taFpLbhAbNPhnG: '100000000000' + Ae2tdPwUPEYvqJSmg7PFGck66m4RrmVikeKMoQUietuHDMGTAFoCLz5rHjS: '100000000000' + Ae2tdPwUPEZDwNzwhb2V8irmSMNsAJ2FkjJP5xmsHXqBv19dQKWHcoRZngR: '100000000000' + Ae2tdPwUPEZ5cYocyXpEytvbdKmdDSv3g27UfzR5EudJH2AxSz8spDPzRvh: '100000000000' + Ae2tdPwUPEYvov4qsXNuDJiP53YBvbqwQcoFrUWkDM7PzxC9GyEVGB8ZPyr: '100000000000' + Ae2tdPwUPEYymTKtPU4mCRhqxDksnd33qTiWsFVtoyX1XsGkWXXombKHYsE: '100000000000' + Ae2tdPwUPEZCAVTJib2PNSNDqxB43GzCafDxEELBYh1ffhRq8wn3k5CR38D: '100000000000' + Ae2tdPwUPEZ2ter2zfgPbMPJHGcqmhgpYM3ucsRmxtCuE4HSkDnNkd9Hpaa: '100000000000' + Ae2tdPwUPEZ9zxPjYDbLPYmf6vRuj77rNSH4nzsMNuAx8HVcxJEQPGmxJrW: '100000000000' + Ae2tdPwUPEZF23c58GHUhNy5wDpGkTU9pzdt6q9d3aoJFPUtx7uXjvdmbWV: '100000000000' + Ae2tdPwUPEZDJyjtvbY8XB1C4ho1tz4Hz251oHiu9e9Hwwc2pJa28fB5gvq: '100000000000' + Ae2tdPwUPEZHCZ9Wavb8xPmqtkXF21a77aFk1yx3oDKRVsFL4okyUgXMEmp: '100000000000' + Ae2tdPwUPEYy4NZWXVkGekFyAE1QVBeHEx65Lwu6JqqDCe67t7MyGp8HwAE: '100000000000' + Ae2tdPwUPEZ58HopWJ1ybMXnZ3mnc6qMwNBBSyvLXzspad5RBuCxVZXc6um: '100000000000' + Ae2tdPwUPEZ7d9t5WFRsyusjcKNokWE64jG8ZbGtUCXcBars5RMWj4Z7HDH: '100000000000' + Ae2tdPwUPEZ1RzdYk3dk5PYw5aQrUkTatFZ5ecUMWK4UFAu1RgcybqA1poE: '100000000000' + Ae2tdPwUPEZ6nPGLRhSphdG9WnfLF7ZDia6geKwbrrq16bi3KnmEgyyGp6j: '100000000000' + Ae2tdPwUPEZMyVN1HGvByrgGjCm14HJ8RZnBQSMt997cd7ZPJWXFykbpQwG: '100000000000' + Ae2tdPwUPEZFnSGD5Ry4TLVWYS5vSJ24QRFKNmTJMc1hhwg7oaX2j4hYci9: '100000000000' + Ae2tdPwUPEZAkVTJZkLNXmcx2A4hnxkDRA8r88MTsm2osWRsse2fxj8PKYr: '100000000000' + Ae2tdPwUPEZ817Wd8eVcmwx1fDBCJUgAWphKhTvUYvvUNHaaZRdFRn1xtAW: '100000000000' + Ae2tdPwUPEYyRtGppkaT38My6up9qwxNVaBKWvaYkSAmHhZqdL8iQgWQw22: '100000000000' + Ae2tdPwUPEZCepQh6o2eKjwwskrJ7u7kTCHUfWWYpLa1shRmqdPUGaT4L2o: '100000000000' + Ae2tdPwUPEZA9rTKkP3ZjJ2fBczHWQaFiSPsWXpd8Zhx5L44PqjKGAov8oe: '100000000000' + Ae2tdPwUPEZ9ETnXzdeVSgM932qPta38NRuTd4LHSvuNUKdHdjrdVkQ69VV: '100000000000' + Ae2tdPwUPEYzn3EjuGqbinDNnpXHktpctCnrjqxNuisG2DE36xHSTs3eRe1: '100000000000' + Ae2tdPwUPEZ1hgMqHp16Lcek2Yya7mtKHPY9ERgcmpNfw41SXM2E6zyrmWi: '100000000000' + Ae2tdPwUPEZ5V7V33SPoTQdcLtpPuhesMZJWskty1THSAaC6H6cDYoe8dDy: '100000000000' + Ae2tdPwUPEZ8Dk5wCfxAqfDqAE6VBriDfnxNhpZFTPAGeJSnca3Vaj2mK8R: '100000000000' + Ae2tdPwUPEZ4LpZe3THwFh3WC1L4rCqBNyDjAxpnHxSneoPWxL9NdFqAGuS: '100000000000' + Ae2tdPwUPEZAkdytYKhgzG8P6rVhZWuoD6V4DBcvBfTLQx9yZHgsNFcjZCn: '100000000000' + Ae2tdPwUPEZ1ACQBxLAAK3HPxSbmnpGsSpLbwbCNTAqrDFu8y12pgnSHKjV: '100000000000' + Ae2tdPwUPEZEuod1rhr7TU2f39maXDBtbJWVFpm84cWEWdnHnLKvL5ikGeg: '100000000000' + Ae2tdPwUPEZ8pt7Pv1KYJDGd12G5tW6KDNS4Nfyb2SXLXBkySGctTPYiCpJ: '100000000000' + Ae2tdPwUPEZJsQVWL7AUT1R4UWKVWgU83Ne3UigKANdLeNGimcu5AhWPFhj: '100000000000' + Ae2tdPwUPEZ6mLhxJBF4xvJs4Nn1mCrGpESnuWJNvLgB9WNjpF82nbMKRjw: '100000000000' + Ae2tdPwUPEZDnbB5QhjKuDLJtSLpYijfCQRKs8AVNZq99a8sHDjXRT8oi9Q: '100000000000' + Ae2tdPwUPEZCW5AZDx9sK2irEtWRYybEmPSTgQVMZAwKhLjcrzfiiqyZzpM: '100000000000' + Ae2tdPwUPEZD4nhxDVYSDsQEFf32weouEtvagMWALs7NQLQFHmZir8ULsUS: '100000000000' + Ae2tdPwUPEZ8oSsuTZYvWJcJVUi5ZYdouT7f5PF3QVKZGErs9Kxvu6nakLc: '100000000000' + Ae2tdPwUPEZBx5NBU4Ja4C69DQzeVMaEwW8pb4VqxQPjatt9tTek5DP71n1: '100000000000' + Ae2tdPwUPEZ2M3nQK3dEcRjG3Np9CTCKxEkXhmt4wVcsytuLU1qHZFY6D9J: '100000000000' + Ae2tdPwUPEZ9GD9AtEtJffpuY1V7MtuZ19VNvv4sB3vWPsc8QaBBDupfvRX: '100000000000' + Ae2tdPwUPEYz6kHBDcFujUxZJtRGk31hjfLrUQKG8qhkRX9KG1rUfWWdGre: '100000000000' + Ae2tdPwUPEZ3gQVUhBC2tWpVARdSBWshdMACLsketBVHAMQM9SJwupY7tKK: '100000000000' + Ae2tdPwUPEZKk1ay1FVHXrq7TikPUXaN57ugqHG7JqKtipoaoopbx3CpWNt: '100000000000' + Ae2tdPwUPEYzxV6jJo37mTrr1dTpahzqM8FSmLkYgtLinjzXicwDmEt65Pf: '100000000000' + Ae2tdPwUPEZELGoNGmUr1QAbNoaaQpuiAFdLR2YVfAKZZQCsXkypGMvccEi: '100000000000' + Ae2tdPwUPEZAH5Vh4T4D4aHeBWBuFTzccoiQkN56RPDkCWo3kNimqJPVvpW: '100000000000' + Ae2tdPwUPEYx8L4VPbNQPpUkBhtgLK6HTe5Bis2t5s3na2y657ghUL3Coo4: '100000000000' + Ae2tdPwUPEYxgiCkHM4vvR6ZgExWi9x1icupe7k35UFg1mPrpNg2iQPQJz3: '100000000000' + Ae2tdPwUPEZGo8rprmThXMacgbZWv7yE6oZFqqTdh5hQVdstXwLsoPgH4EZ: '100000000000' + Ae2tdPwUPEZKUZRDxVXaiKWHdUPXdoJt1EQR7yAEmGu3t1kFdSRLdwfXka5: '100000000000' + Ae2tdPwUPEZ8nXHubodagrQmZGQsggbxoyhJpZPsBGsYkGUmgX5tgVD2HW8: '100000000000' + Ae2tdPwUPEZA8uRLUY1bcFKu8zRLGBPnUJk1pMzyLtMGXKx5L6bVYGGYejY: '100000000000' + Ae2tdPwUPEZMgsg38BfjUp1YiDKjAyyF8oMMCBVjjHppAGEj4J1geA9ryAs: '100000000000' + Ae2tdPwUPEZFzgVJLcaLUkc8WNfattXi4tLjdvp8Z2SvZ9S9WnnvjzytQNK: '100000000000' + Ae2tdPwUPEZ3bDM6ijEE16WjPNoGSVKQdR5oNMVzp62ihKfjEG5xDonBPPP: '100000000000' + Ae2tdPwUPEYxj92Zq5nqKP6GskZRKbdsmYN6fSER7CZLZZah8PtmghVv8Px: '100000000000' + Ae2tdPwUPEZCkR2LLixyVmK89XCoc9cJ6pXsbSRgG6JkkfiswAYRhdhLFuR: '100000000000' + Ae2tdPwUPEZ4dbdebXv7Y3eDm6gJs6ZXDTfwUH3rSLwGrAxwPGWvdXxrR4y: '100000000000' + Ae2tdPwUPEZMu4iQuM5WN4NTbv6stfwVN7KjQTN4o8DJZA8k34spdD5n2hX: '100000000000' + Ae2tdPwUPEZ8u9QL3YyXDsTAky2bFZCz997sbUrJCdGzmDaQtWxd5oWCHv2: '100000000000' + Ae2tdPwUPEYyNoLn4LdkJn4bqTJrd883jWa6rweFgMShbRJKeFD3N53emj8: '100000000000' + Ae2tdPwUPEZ4fszZ9QhnP1CEy17FsXA7dWkdvinxWQA97p6mZ1ewzQrYiqJ: '100000000000' + Ae2tdPwUPEZ1vTCrJQYAemoXwezted46NstSMjYWKDyFhDqF7H4qMMuvgvd: '100000000000' + Ae2tdPwUPEZ5hfpyogjLRfWUUsotoUqkrDFNGwgbYBH7hpkuJbVQjZySEwU: '100000000000' + Ae2tdPwUPEZHGy82xAgyoEYc37DyqkLe7pWzEx2MdxCEwXP2TwU3hG57bWm: '100000000000' + Ae2tdPwUPEZ7VEDceyz99aX7CuRs1LhC9dA1NnDz844qDd5DekVZLDSfZux: '100000000000' + Ae2tdPwUPEZGrTVGHo6joxndf73xzfGgwh6DYH97sNyXsLsJmNtHW6QNFiQ: '100000000000' + Ae2tdPwUPEYwXoqGSP5noGZwQqtxreDEMcGCvpTLvRWpAjTLZBkyKoKJAeu: '100000000000' + Ae2tdPwUPEZH6M29UnLYQJCsj6DaCAY87RzyCXUGQeFkbVU9QMJDgzg2xXT: '100000000000' + Ae2tdPwUPEYzKg8YnsHScSB2nV9Y1t1bMdLWhegthzD8XEPm36uVmXSLngE: '100000000000' + Ae2tdPwUPEZApTr5DTA6WZN88oo9cXBYQPS5Yv7gqqXJmkaeFYs6xrFNjtP: '100000000000' + Ae2tdPwUPEZ68xMJMNmR9NS564rWUV9eEUdyTfxCM1SSeBhhNLRgj1ZUzLf: '100000000000' + Ae2tdPwUPEZDvQApaEytrGqMme2UTU1YehaVgY4snHJEHEryz9R6wLece4S: '100000000000' + Ae2tdPwUPEZ1y7VZAvt9LxWimoUVM6Bk3GbbXE3AfhAVHemAEQfZejZxd8k: '100000000000' + Ae2tdPwUPEZ6wXNEinkg3ojy8F4PbS1pjZwkqd3ewPpB21tJdeTb71uCDF9: '100000000000' + Ae2tdPwUPEZGxstKHepJQwo3SSkHsZwXEdPnNLgd3rd2DHciuP8qvuNJMiU: '100000000000' + Ae2tdPwUPEZJba42PS2e3xgD5i2WHBe9JYxgnVep64Ud8Wx16o4Kwp1p2Qv: '100000000000' + Ae2tdPwUPEYyEshwRhjXJUHn33xZNeYJp8ySP99DLyisgJPY9NK5sDoCBRL: '100000000000' + Ae2tdPwUPEZGpRmPxWpHSNJRvTQXhARCYgqyCK62xXzCaYMyRdWmkprxfxr: '100000000000' + Ae2tdPwUPEZ3yoK7GCwrwdiMQcDGMkVcDF5QmJ18L7cLxo9k9RkTJJVCmRx: '100000000000' + Ae2tdPwUPEZHapZEXuqVB64tJBtcupit3P1SDj1xUzjmrc1ANU9rzocsHq8: '100000000000' + Ae2tdPwUPEZLsht9t1VaszK6NceJC3SaXDXGJedEo1d8WHi7vT4HXWbu6k1: '100000000000' + Ae2tdPwUPEZ922BJ21MxoRWshnAQGKw4bsHyShd6xPSR4vMgFGQBVFViaku: '100000000000' + Ae2tdPwUPEZ6JFEcaY1jy5LZJpP8Yu9WPTfriZi4rFGbRqTScNmhXChxjZA: '100000000000' + Ae2tdPwUPEYxAyELpSWvTA9bhxn84uYu7uWf2KvuoAegJyiCLJNZxmvfCEa: '100000000000' + Ae2tdPwUPEZKW6syqzBgAWWebh3n8UstPukZNR7ZTxVzts3UfMaioZsweYJ: '100000000000' + Ae2tdPwUPEZGS87ojKH28sdbf2FhvhXQo5EaHcHnQiRwm93t3ckBk6LeGa5: '100000000000' + Ae2tdPwUPEZCBndw8dH3T6ebanAgmSRS6iut5yuYbhQwrZvqUc3MiBTcUwK: '100000000000' + Ae2tdPwUPEZ9iPN9w2P5xCcbZitH3H5uhH8vHMwcoikuW2z8fuETxnzBAX7: '100000000000' + Ae2tdPwUPEZFAF4qdAPLLm7juXYY6kBtNGk59WPwmExNf881UeXh832P41r: '100000000000' + Ae2tdPwUPEZJjV6ehFK6ttCk3KsHe6KaRko3jDcaa7YGfkWXGADxGHHDXLo: '100000000000' + Ae2tdPwUPEZ1wo8wY7V9FyMXZsNg95dmJbRX6RVGJdjhrCacKcpVNb39say: '100000000000' + Ae2tdPwUPEZBV3CuELwNwPNagjH2BXYCS8fEVNfX5Bmy7kXiAq3gRSEHDV4: '100000000000' + Ae2tdPwUPEYz1y5UuB6qfMXpR1Xj4FiErhWDDWdevJbP6PLeDczfa3bKB5e: '100000000000' + Ae2tdPwUPEZJ3QqoL8Tr7vcMoAo7oUBb2yaXS6R1j43SSxKeKzCt6wvafVr: '100000000000' + Ae2tdPwUPEZE2F8rMYs5MNGdpK9qHytsdiwGCLH1Grg6N1pVP6b6YXFDMQs: '100000000000' + Ae2tdPwUPEYziyQpAVfdZ6UCoesnEvAn8spLRJLsJHMnzhqnyTGPjJgMtTC: '100000000000' + Ae2tdPwUPEZ5mVQ8qhZ4b4SRB5ADita8pb1gJfvREQoEJoM2rXPwWqAHgYW: '100000000000' + Ae2tdPwUPEZ6ycwrDkUF1sfo6usrZWQ7LuKd7F4CKFJ74vdjSD5A5jaasRM: '100000000000' + Ae2tdPwUPEZ3ub2HHLy1bwt6HNSUGN1wbcZ6GqJr2yWUx73bfSFB32PBEPV: '100000000000' + Ae2tdPwUPEZ6KF7DyGay3sf7WsDGi4UQiUtFBU4KZmkDAEkX4x7qLC7qNxZ: '100000000000' + Ae2tdPwUPEZFqbrJeQGFTdL3EuaE5DRq598ZyfPPrTtFqAfsnzE6zLd8ghd: '100000000000' + Ae2tdPwUPEZEbsQozN4jWPcgVruFEX5iUWgq2wHbeLskEiWnVWmm93v8W5b: '100000000000' + Ae2tdPwUPEZHEpFFaQU9FrbezrSMTL9C3BTbc83SRMTPDfj6AViNKtEsKwz: '100000000000' + Ae2tdPwUPEZ2WYZcz6SU8N1EVVmsREbdpSQgPHDYUyFtP9JhznBQ82uGqjA: '100000000000' + Ae2tdPwUPEZ5RuAUgbYY8TZEmwEX6ttLB6CNxirwNVLeRLKzrZ9NfF7R7tP: '100000000000' + Ae2tdPwUPEZ7ZSsejr1gx7YKLX2R9sua5xPpaDVgREAumRczGwCDLvXJkxv: '100000000000' + Ae2tdPwUPEYz4YvmhXqjYWMZNqGapmo1pYxTSBebtULsRQCAJepn4fXWM43: '100000000000' + Ae2tdPwUPEYwSivYSvPwTKPdbCZabvuqAxJcLETLQhH1ssaqAVZtAa1sMRV: '100000000000' + Ae2tdPwUPEZLfUNWNBHNxCUgfj98BnWwA9RmDHeLoLDJXT3qPbDBTG4sG6c: '100000000000' + Ae2tdPwUPEZGk5xRu5rTBjmipvfTGK7N93zoB5kgSiUBvjJ6QNN31VTAZc4: '100000000000' + Ae2tdPwUPEZ3CEUaMHEPL7Th8N3mDzBqMofxaGyfdKzfqy61AF66jxvcbyH: '100000000000' + Ae2tdPwUPEZBpSUGiG4F3dQZ55zoct827kM3nkNh3xCAXNpSUd2pmq7g4iF: '100000000000' + Ae2tdPwUPEZ46KN1zTn6g8r3cwhfy2XRwuxhThybNG7QoocsYPpwr2L6VmN: '100000000000' + Ae2tdPwUPEZ52nq68ibgzAywbCfeGiJz1RNtTQcxSrkzq9LurXnsPJj3Sfo: '100000000000' + Ae2tdPwUPEZ323oZCWCJTpWBByjEoCzPRXunXohagdNSRDBpVBhk6BbBXjF: '100000000000' + Ae2tdPwUPEZ7ZKVS4z7CzzoiJyofEcRRRjfdepNtwSeFYhYNTz2Zzp1Bhdq: '100000000000' + Ae2tdPwUPEYwGHGkGGnBcyxmi2jWNr8Bhh3GPy7zwk2U516LsFkVkx8KQxT: '100000000000' + Ae2tdPwUPEZFhhQAeFmHXE9VgxoKYetVUA9FrsjWuAhSVvhyhLy6zZbPGts: '100000000000' + Ae2tdPwUPEZFbSxefymE9M3DVjEdRxrtFdLd69kHHvXKFASpZMkrCEHQqEL: '100000000000' + Ae2tdPwUPEZ8L4HyV7E6XPCde2mRFTiw62dd4mEZmbv2yy2Zy2RvoGHE2CE: '100000000000' + Ae2tdPwUPEZL9EHqU2bi84zzywUNf1AngSvupLzmRK3G5ej3SzfFoAmKgc5: '100000000000' + Ae2tdPwUPEZDYfBSwxEtiDFiZ2uj2W1ZFJTCcw7noUJUAMzAWwh5FzruPA5: '100000000000' + Ae2tdPwUPEZ75mzmESVGv2NikTgMkXhLLzCS1zKrcDgLxDworJfqR5aEnPm: '100000000000' + Ae2tdPwUPEZ17rurZnLR8JbkY8NnL8KsDGWu2Zq9A6AWRE5BnGGUpKV5cRQ: '100000000000' + Ae2tdPwUPEZGr7hcnV3FCjhMHk6bbf4FoDf94CbLtsTT7vThM8HrNvRs8mu: '100000000000' + Ae2tdPwUPEYzChGiHuFDbcRHSHF4j5HE2xnEVq1URvYJVdJtp9K4UoVM9Wp: '100000000000' + Ae2tdPwUPEZANjQ4CfGpk5h5wi4qFwUVbzRZHc9euPrnMWcxh62zZy6y6PC: '100000000000' + Ae2tdPwUPEZDK4sEXDpii6VKnMFW4YamJnjKd1FSwkwEuGd3aXT7YVm6mw9: '100000000000' + Ae2tdPwUPEZ26bkJ8vQ6j7eGwnag3iRXsubCqDUJm3k19nR5qA3Uq5KH6EU: '100000000000' + Ae2tdPwUPEYxT6vqP8CEUBsFwoNW4NtGXKci71JVwCmcFUDGhF68oTRUMrx: '100000000000' + Ae2tdPwUPEZ7ReC86k8yytwUNwAZvgyafkHjR9gwNAmdbs2twEjWRZbB2Go: '100000000000' + Ae2tdPwUPEYx6ZrqAtW9MW8ajR7v81Aps8TcbcXgMwjuB1QqkoDjnjJ19ZX: '100000000000' + Ae2tdPwUPEZDpAgMVGYuGZwYdnCcY3GdKm157xnhcAZrPMGncPAsXAp1oS2: '100000000000' + Ae2tdPwUPEZFLHZ5pzDno22duSXtBvvLjXVy6QRoV26J5UhXCLLQyMeSGhM: '100000000000' + Ae2tdPwUPEZK5e9fJ16JKH8SP6BmKjTzQLQbKC7XQdgUNzF8PK4REGofXkv: '100000000000' + Ae2tdPwUPEYzRQ8fDPgkM8n9y3ASiyPgS956BauwS7LTog2VC4GmZPs4URz: '100000000000' + Ae2tdPwUPEZCig9cdGbay4jYJyxgpKqCveLMic5oEcjZtzLhrovV6atpiJU: '100000000000' + Ae2tdPwUPEZKgmRxTqmvR3Sz2nvS9BLN4rvo1PUx19q5i3MbUbChY8Zp1g3: '100000000000' + Ae2tdPwUPEZLGucJvjhVbuffKWnb9N7cV4SE2nEhrnm8M5RKXq4mfDh7Cqc: '100000000000' + Ae2tdPwUPEZ6imbAhsFQYtmVjAY1njZGKswv8FwqtgVfMmcZWcda8fLCLb6: '100000000000' + Ae2tdPwUPEZFptM9jGFbr9RjHBVF6BuBJPXf5phCNXfAQTa5EpxuQsPhpEG: '100000000000' + Ae2tdPwUPEZJvGgmcDAgaboLJZyPWAqtL8DV8oa5SjsVotnNeTPDFWE32Ey: '100000000000' + Ae2tdPwUPEYxSJKKTPYMMQq7RCpBfTtmtH4uo47EhEy4jKepYhcCEW1pn6D: '100000000000' + Ae2tdPwUPEZ2PDcCbvvCeDCbcnxQo6dfUpu4Aop4kxabjdWkB9DK9QmhSD7: '100000000000' + Ae2tdPwUPEZ49gecr1eLKrdRyeQYt72sTfU8VFpAwpJE5hZ2BU8fpZPKnZg: '100000000000' + Ae2tdPwUPEZF1rSQtctMxFA52UiZjHGSrsMQ5eBJXLQCrJ9YgXTMA6pJDVJ: '100000000000' + Ae2tdPwUPEZ51SX8DhZnhEzuaDaooxeYPegmNpzkQvmy43MqrV2ikycLkuY: '100000000000' + Ae2tdPwUPEZ4cphH3Eac6B7Z25XEaGzB8ozvWieTktTVjDYAY3gzTfPZiKo: '100000000000' + Ae2tdPwUPEZCMvvpULP2dg64eML1zcWS9bie7Xcbp8oGvPFwEyYrDtyevzX: '100000000000' + Ae2tdPwUPEZBRi9zpG5fZUVF4wPJM89wZ2gS4FV9rcweyhkaCm4JoUrmcW5: '100000000000' + Ae2tdPwUPEZL4Edj6Uyxj2iqneqCkymP3G82wRQD1DWeCtpS1KsDxGGLsp8: '100000000000' + Ae2tdPwUPEYx66tnvjg7Pyycg9EHiuAZq3uNYqhKnvjsXQvDoaH62wQsxS8: '100000000000' + Ae2tdPwUPEYyidPXSzu3y4Ez6XUGKjZfEM6oL8sWsLFiCJqxgjoVpkyUAZY: '100000000000' + Ae2tdPwUPEZJNb9rNog3v8xSqUTkFB5yB7rMxDr9ni6jV7R4PyXAAEKad73: '100000000000' + Ae2tdPwUPEZF43jN7VVqZhTZvHg4FKzdKzy7RvkuqSDsfP5NFfpWGwu3tPE: '100000000000' + Ae2tdPwUPEZBQ45uKrxDJspmhj1kN9ow5VDWmff3Mzk2GKj7UECtzWPAMXd: '100000000000' + Ae2tdPwUPEZFFDYKQ8RPryzRgqVwUCVAsvkH3o71qKujcPmYHBZ2cbFSnNr: '100000000000' + Ae2tdPwUPEYxwn8YnS4q9xMbvpz42L57DdfhtHYwiqqLFWNWRwqoXhY5Z4c: '100000000000' + Ae2tdPwUPEZ7dkiWzvPhGF92Tgyxd5ABSEUmV8pPj1PxpDsHn2fBuEMoUT9: '100000000000' + Ae2tdPwUPEZ1d1yq92zUT3nqZs9PQBN1tZiF3rKfXGvAkeR8E1bjFsHjYHn: '100000000000' + Ae2tdPwUPEZLeLQPWPdWR3nAji3yFtp1DNdDnhqXf1oqPjwERQuBnurESnp: '100000000000' + Ae2tdPwUPEZ5Kd4NCyCz5ogJVCEq7QQvf31nAJgaEAvHo2qUd8jRTwxnYDE: '100000000000' + Ae2tdPwUPEZHBhKs5FLrCaBGSp4pvDmkf1jttpcr7tekzDaE8pYFkcpBhPm: '100000000000' + Ae2tdPwUPEZ8chT6uZkDtDQ8xroBRffwbajxEDpzYMgHzRBMVnDGAaw26cG: '100000000000' + Ae2tdPwUPEZJBKSFyGnqKoGBPqTBk1RQfbVXJQRpUtYchamzXEssXoKQz7T: '100000000000' + Ae2tdPwUPEZECgworJHL5iBVSknP443U8tKMomDNRMdGfFUo5aVW1ypQmE9: '100000000000' + Ae2tdPwUPEZB1SHQkMzAuf44qA3giZ8MgSsP4y1CFF5LSuYoV1iSxBQdVMu: '100000000000' + Ae2tdPwUPEZ1wdaz6H9hBYjqwKSbqNthsLfZ3nX3VvVm7jNGGL8YrQMsBVH: '100000000000' + Ae2tdPwUPEZ496hoyvHgCoAFrcB3rkNqfBEMrwhGjfWhPgu99u6w9txUkx7: '100000000000' + Ae2tdPwUPEZ5FKdFgfR66MLFFZ8xUWeqcUQg9az5G2JUe4chyGGBy2e2eGA: '100000000000' + Ae2tdPwUPEYwE4jmWM41qyA8XDeaRUUMsrDBQwsM7LukPTS6Pwtb4qbwW6z: '100000000000' + Ae2tdPwUPEZBr5dMsPkuDWcMLPraZcvCNpDjKiYQyfdQzsvwnBHgzZvd1CZ: '100000000000' + Ae2tdPwUPEZMT9Bd3kgzFor584N6ckWKA9tMxKyDMWbHRsZMiFTvB4xeWFV: '100000000000' + Ae2tdPwUPEZJPaN7Bb5d6LoLDQsNfrjuBBGLGHWc2Zx9geLg3yUHDsVSMAD: '100000000000' + Ae2tdPwUPEZ7xGmTzbaufs5k5eTcfH85tB6tKewTgqNBdyDXBcojhckfGTU: '100000000000' + Ae2tdPwUPEZHnaVPvDLfp9ALs7yAkihUxBwGX2KVcUxpReBJQJhu5FxYhvr: '100000000000' + Ae2tdPwUPEZBN2SMJ88d1N8uGNJbKPgyPTbmWHh4zM4iTd2mH2yoNhFCNXn: '100000000000' + Ae2tdPwUPEZ4LMYQ7uG9yi1YPAmDGpfjGcR93jHKAbEQzFTZy4CJEhkBgTf: '100000000000' + Ae2tdPwUPEZKRAZemEWm7RosQahbdXY6gYoP56fcU4QQFf2LRyzGucwx79u: '100000000000' + Ae2tdPwUPEZASdWZ6Y828MRXb9TgqjJ2EjdL2tBNz2SzLQ41g2taRMHpr6i: '100000000000' + Ae2tdPwUPEZBRMGTDnMj8MrXLQT5NrjixodheCWfXwcgWYyjbBxbA25U4tu: '100000000000' + Ae2tdPwUPEZ7Efktfq9QCq6qvtnmtE6dwbVWqCUUENDsU4qgpwGy4ms9QgT: '100000000000' + Ae2tdPwUPEZ4Rtyrf35bLjFBNXvZVawEeQ5m4rKao4RfMEGje73fgrCH6L9: '100000000000' + Ae2tdPwUPEZ9WgcLhmGaXeqnRZKAoMUYgzkitTnY4w3wTR4eJCrpxyxePH1: '100000000000' + Ae2tdPwUPEZ4VCtTCxHEcVsaRNczU77myPxteyMACZKXKkc3AFkDFE5Nozt: '100000000000' + Ae2tdPwUPEZ1bXAc6t45KVNZ1K7CDfZXMYagkTjmVp8T1zZwwsi8Lbw36hW: '100000000000' + Ae2tdPwUPEZHRHGRFatEqmaZUYyaiQ8u6wm1F4NbPnc31Kx4pSKHhmnqtf8: '100000000000' + Ae2tdPwUPEZDnTGUVyouXCzcAQNaDHbBcNQh9wxrjmyXZZKdo9rgWpAgPNE: '100000000000' + Ae2tdPwUPEZ6xHtgXRYpgSYtpD5FjaGq6pya81HZmG4k5ybQgrC9c18Vx2Q: '100000000000' + Ae2tdPwUPEZ4HEPMZQojTkYXoqM6emJKS331csUw7BTqRguModgRz9QfiTB: '100000000000' + Ae2tdPwUPEZ33Yby6MUGuoaGAmcWtoxGn7fn7cmN33o83wDziQL6p6YDogi: '100000000000' + Ae2tdPwUPEZ18hcCwpAg2s9oETj8kejkkBkx3AQCKjsc46UEXAjw9Xd5gnV: '100000000000' + Ae2tdPwUPEZGPtVeVc6q1tR4aLb7MJmY8STi6Xmiuw9dsUHnVXsmtP7M1Fs: '100000000000' + Ae2tdPwUPEZ4xVsDdPozUd7Z3teJL84FLBEL99UefcFKBSHgv6GLHudg2z8: '100000000000' + Ae2tdPwUPEYzYrLF1MrBQCGdmAbbBFtu1AqRH4oohfnxePTjwAZLsg1h3jX: '100000000000' + Ae2tdPwUPEZJL79ZEiTzaATEddT7H7mMXvHj5JvJjPmYaVRGEwU8htYC14a: '100000000000' + Ae2tdPwUPEZ6bA93GjEAebH4xkvSCnkYYLPTKkvYisXjoiVaERPQnu6sSDe: '100000000000' + Ae2tdPwUPEYyY9Lh8ArzQUrJxMMyitGcYWskBXPwvXT7zWV3XzM8X6BsBHF: '100000000000' + Ae2tdPwUPEZFfQ1nSPt2YfQomJCrf65SoRExCZ5tusjLTQKXRiibHkVXsJh: '100000000000' + Ae2tdPwUPEZGk4i9j35Bpef5mowoTohQb843QxexToQJCdsUbBYY8RQbiVx: '100000000000' + Ae2tdPwUPEZ9xmZURDTzmwQRpABGeVs4z4mpzgC8ztdwVxqL5PCxzhcSz6g: '100000000000' + Ae2tdPwUPEZ8mYikh7Vpoe9fRwM9HAxXP4rSh1mgAt3Ym2yg99kCsrDM13x: '100000000000' + Ae2tdPwUPEZF51KnYRGxXBum2TdQJehUGzaP6Hqdxmewvr8U33vp9KEK1sW: '100000000000' + Ae2tdPwUPEZ8sqZjExaJmvbLuGMZgLsWfhDQHfe7KKyhtRBNFy9USLoEmFb: '100000000000' + Ae2tdPwUPEZMQXFATLpkx6Tn9uR4HGwGXdeTW57PVQafduh4qo1Nvo3uvmN: '100000000000' + Ae2tdPwUPEZHp3W1XRLVGJ4oRgqm3CPtUk9StCdQKowwdob6y77Gc8b9e9F: '100000000000' + Ae2tdPwUPEZC5tKu7EVtG6zZPfrZtbN1xvinVADXKrYgmoeRWYK6um1CGHb: '100000000000' + Ae2tdPwUPEZCM7C6ARR5hf88RGdMFecNyWn5BweXbXt8Uf8R5g73EJidSfL: '100000000000' + Ae2tdPwUPEZKTdWcFco4fJjeKdFaj1s49FeJEkAH64LU7GKvcGX2WG6JFYR: '100000000000' + Ae2tdPwUPEZ4SxZvoRBH99Qe5DmZY7qzseTPKxSe79tZGpgap6gvnR3xvvG: '100000000000' + Ae2tdPwUPEZK52bP87UdNHK5uWmv79h5NsHGwPSqwoggEcsQCosQX3hdx3Y: '100000000000' + Ae2tdPwUPEZDTjaXYuhY1fBvhr37d9c8VnK7392Yc7dkfBW8cdGq12u5dXL: '100000000000' + Ae2tdPwUPEZBaoB1JefVKtA3VGk2eM5qcwvVQQvTQAhJwEhGBqqyzWjKftY: '100000000000' + Ae2tdPwUPEZKSQiJBpcTC6HcyGUJTks8UXdbeo5Xvtd4sPsopD3Rv3tLh12: '100000000000' + Ae2tdPwUPEZ5cf9wx85gwoTij79i1dyNcse7daujFSMR3fGTKByC818xQba: '100000000000' + Ae2tdPwUPEZ63wPWaj3xmT8JkBvd7ZDrWC5UkKVsGB9r7QoukHghrT7ZAjY: '100000000000' + Ae2tdPwUPEZ7Vi2faNy2M7kULFgukmbeHU5Si2ZoyhenR83eUSHJuKy3SH9: '100000000000' + Ae2tdPwUPEYw91WTetobvbfbVFu9DudduwAvmmsambmv2P989qYcNMtBLT5: '100000000000' + Ae2tdPwUPEZLbhaongPApXtGQ6aZyQTSncVLSXNqqoSDJJivcTN5UgCxJF4: '100000000000' + Ae2tdPwUPEZMgBHHdB4uj73pAu8zgSoEGJhRMfpyesUJebJomFybFXGhH4g: '100000000000' + Ae2tdPwUPEZJYpRA5TcWaVB122YLkoadggtTWa86vvK4Tmc6DKd5CKuGaxZ: '100000000000' + Ae2tdPwUPEYxSkyoTTcxeEqpCZzYsCLY2navAeFCkjNiSG4bSP5T4fQnhQu: '100000000000' + Ae2tdPwUPEZLV9Rx63N2HkXvj8LttaaVryK9fLUZDt9Cna9bbcEvbDHWLEr: '100000000000' + Ae2tdPwUPEZ2pyN58t7iNWFtifqaxkPRvEw5fvMykL2fuMjzMCQ19yAe22g: '100000000000' + Ae2tdPwUPEZMBgaR49mSYGBbHifbcvDzpBsg7xUkbj1xx9wagdqWtL7Y9Zz: '100000000000' + Ae2tdPwUPEZEsMsCmfCFdUX6RA1DWg7ncUAAFeT2UXZvkKTuEhyb2Q6LGqr: '100000000000' + Ae2tdPwUPEYy5r4FDHJxzokphy952KDCTa4C3Pk5n4nZ7rGpocFQ7qRhYLG: '100000000000' + Ae2tdPwUPEZ4CxvJTGg3DK8Fo1QUAZV3zghdVfkGKzkGW44oSHm2EvWGusR: '100000000000' + Ae2tdPwUPEZ7nZ8vF21oMiLm6KQkSX8pes6JRgUvYGNTBNQ5839WjJjDYtj: '100000000000' + Ae2tdPwUPEZ83kRM1xbLQKeLCc7LPTYBFMqEL61Ef8xTfb7g7qz4SBHU3sX: '100000000000' + Ae2tdPwUPEZMyga1QxtEYaswU8yCvad4VLSJHReGMdxXijzn4bRKMr6bRiQ: '100000000000' + Ae2tdPwUPEZ76WDAraZcH74uWgXyRVEZNBPzYm14v42LZjPrDjDAefnSwQP: '100000000000' + Ae2tdPwUPEZBXCbQLR4sCs32y4AHcSp7EYxsJXTB911VV5UD99p7GD89mjq: '100000000000' + Ae2tdPwUPEZ8XMQxdpAmrqXs9rdWehKSduXezRR6esprs5EovyBCf8hVywV: '100000000000' + Ae2tdPwUPEZ9GmEHu5E1YqKf42VfqgNDXipiCxjLcCnqGqHFr7R4kXA2eC9: '100000000000' + Ae2tdPwUPEYy2n1ZyyJE1VCBbLq5BCzPTLA6yHz3pbKqazJ7nW8wPG9VLbs: '100000000000' + Ae2tdPwUPEZA4hBjdVnmrUnjjnau2xAj9Ezfa1dqdjtkrkvuM6ydveuguPe: '100000000000' + Ae2tdPwUPEZ91Jqh1tetZMh1YVB61zTgADdHbjsB2mvnFyzYmzhjeppSrRn: '100000000000' + Ae2tdPwUPEZKjbhkYGFt8KpNfBHsHko2zWoyTL2sNwYGcduCQCDBNhEt3Xm: '100000000000' + Ae2tdPwUPEZ85zE5t4byntUuEvDdMpjRVLBX74JHCFLZ5uLyLsHyVoFX17A: '100000000000' + Ae2tdPwUPEZFU62cHp9fYzgNC21TosTsoLxSzD22dBZ6RxDp9aHo6G82xGo: '100000000000' + Ae2tdPwUPEZEBADxGQpSrMieRXfvz46VTMtM5CB5UQjMDMtKEdmE9dHYUtJ: '100000000000' + Ae2tdPwUPEZBHfh8c2V3Xr6gsKV1SPYo2PBo1oGj6kG1fZQ2WizbJXnt98K: '100000000000' + Ae2tdPwUPEZKg4Y9p18z3BR5qGdbrnYV5qBbGBYHkJqEZi8Ur67yJG9WMxs: '100000000000' + Ae2tdPwUPEYxPUhRwTeEZXjD1Z5HkPgSeV3Ku7WyVnfcKqRF8p92DAeMVpi: '100000000000' + Ae2tdPwUPEZCTjyViyDg2Ws6pT2q26WiGvUXfs8kWKxZV2qp67qjTWoEpwb: '100000000000' + Ae2tdPwUPEZ14ybwmRGnGCyYTcVs3gMcep5rFp7FsfPqRhbYdkiukh16Pgu: '100000000000' + Ae2tdPwUPEZ1dBGjbd6WuxDeaTjtbY9G7hYFUZ6s9GgE9r15G6foJYasjZ3: '100000000000' + Ae2tdPwUPEZEV6oViBK2guboRFxFAr5ZDYeVj9hTPXXDY6jyTJ4xVrWRjYw: '100000000000' + Ae2tdPwUPEYzHq4VbnAvFHH2DwxVptDXPoUPFfCFm3vRirT2cgMKtjvfU5i: '100000000000' + Ae2tdPwUPEZ4pVGZymoUiH3gSUtBjPMcxfaqXt5Kt8wLaYtp7FW2qrjnc7C: '100000000000' + Ae2tdPwUPEZ3r58STrCwpQGFey25cpj8By4SNterMCFurW7RAQUnzBzQBbt: '100000000000' + Ae2tdPwUPEZKUwJYKyUXbUZBZqcEbuSBvu2ANsNVB7L8Xp2rkV7V1DziMuP: '100000000000' + Ae2tdPwUPEZ9nfEDZr3DHTDFuYcY52gN8Qm3sxU3fLDEtBAZuqKi5rxruaK: '100000000000' + Ae2tdPwUPEZGzXPGcN7j75TTb7kiNLz4SUYQGrQFRfvomfM5o1nMrWheS1m: '100000000000' + Ae2tdPwUPEZEcRML3yeSiuDmd5U3mPQwAJGCeJTdLJ3ujupPYh1wE7sVTcb: '100000000000' + Ae2tdPwUPEZ46zno9nb4wJL3rZVB5WAB5jN4hMuWx5JsPv86MgRY4VHfQpA: '100000000000' + Ae2tdPwUPEZ3JHXPjVfKKbfpWT75dz2VJ5mFoW1md2P6rrbDRAxCyTE3xZY: '100000000000' + Ae2tdPwUPEZCnmAmLUroHXJ5vBMmM2KamBJmVvMZyyPbsce6jjixGtLWZck: '100000000000' + Ae2tdPwUPEZBoHJ79ZzgdMXHLQXADN4kn66zpUwHPcDbTKoSetcpnVr6hU5: '100000000000' + Ae2tdPwUPEZ9hPDAkNcuHgCHxYk7aNd86rRwY1qxcqsM2cmmbHUTUm9WnSz: '100000000000' + Ae2tdPwUPEZCsfbt7myzCXYLRwdHW3riEHd7eM3MgZFgUK8VXEoGggik4fY: '100000000000' + Ae2tdPwUPEZDbe9s18AxDUy7X9y4jxSxbBApv3MqfRVZB4PkiNtXH6GGKdo: '100000000000' + Ae2tdPwUPEZB5nf3Dhvn9REc3BMbstXhPVzSWN48XzVpkDKDJzxKt99CqCP: '100000000000' + Ae2tdPwUPEZ7cYeZvJuVRuZ5qCAvPUGLYvm9aNzfdT8hXe1KbbxBFGLtcmB: '100000000000' + Ae2tdPwUPEZMHEb2QVRAjcKs4jEwkMnyp1L9BHKtwzatf5WKFNskXzXE1mo: '100000000000' + Ae2tdPwUPEYxfoP6tvfiEz2XAhFNpBuqfdMPRKqHru86it341sYbT5yJaD7: '100000000000' + Ae2tdPwUPEZDeR5K1Gx1oYnqEU3BReHGCHXK53a6F6LBRPnHrnyVp5kVn2k: '100000000000' + Ae2tdPwUPEZ23HVxCLEWQByYvhZkpeEdCa8NSe2jwqFyC32C2smx29uJNPT: '100000000000' + Ae2tdPwUPEZABeUoGmwZ532ofYyTmiGBtFZ3QKYP9hoMaJtW79u1fpmRBvo: '100000000000' + Ae2tdPwUPEYy6cRNLgSP2cst3ot5TmVUUgeXsiCA7Tm8vG2R985onW38MQ4: '100000000000' + Ae2tdPwUPEZKULp3T5nrCCuEaiqhDHKqiVBopd5mgZKUvKnis66kHA7mE5R: '100000000000' + Ae2tdPwUPEZ4owDgDvt9BEZmwyuXAbYn7B7MXdbTm11agYCNVWNYmy1CPDx: '100000000000' + Ae2tdPwUPEZ7rtRtUBLv2zJGSrKDEXp3yMNNJFdk1R6E8QzBZQTauyAkRV6: '100000000000' + Ae2tdPwUPEZ2ZLd4Ld9rcZQtisK39nBTHC1FzbVB4zcGfhgrmY8fHrVYQdE: '100000000000' + Ae2tdPwUPEYzZ7psyppHBPsicdDoYXasnqFpR4kXMJomSKzpPJNYkCc1s69: '100000000000' + Ae2tdPwUPEZJyTmY7UQJju4BLKPB1G9G7Fq28joMiDgQTkn6QyBDVzW8EYK: '100000000000' + Ae2tdPwUPEYyGYA8MZVMGnmrSpLZWBiWB4Jhkzoi2k4v1dqVCSpd8cZLghu: '100000000000' + Ae2tdPwUPEYzeQ9PaaCLGJxd2FuFv4RKxJXZPQHPxW13fynNdFgCtHzCgCV: '100000000000' + Ae2tdPwUPEYytUuZ9hJQrNXc1H3qsdQGMdeEWBxafL1E8uoAFQpnhSEu7aa: '100000000000' + Ae2tdPwUPEZJP6oxMxayhiBzkLqXoA7mjyq5RFS6o9hDSq3UdkHbqDnTTBp: '100000000000' + Ae2tdPwUPEZ7YuarjjrXh9WwqsW5yC5G1MmVTH3Mi1LCm3wjcZkLppa3YP7: '100000000000' + Ae2tdPwUPEZKxSA8gYv9eV44TBmGXtp4Y988bJusYgqHEUyVKAy8ZAeTBgS: '100000000000' + Ae2tdPwUPEZ9efjN2wk8NepR3FEmgJQZBj8HEFNe9Rdipc1XJjy6CoJC9TH: '100000000000' + Ae2tdPwUPEZ74hTQxC2ePnFQvkcPUvRcprtSDRgPLpo2tQ2NNWWFQaXe9Gx: '100000000000' + Ae2tdPwUPEZDkMBVEAey5sLPEszVXLwYhwcyXNedBnTCaxm5s1Hw8nk4iPr: '100000000000' + Ae2tdPwUPEZLcAN2oFb4YMCSY9pAFmYP49q23NRaUaqjt6cbJyPwZWzYo8V: '100000000000' + Ae2tdPwUPEZGSRYyKNkJftoSmjnRwjULiUSu8VANkzfjYhMfq5BACpRTEob: '100000000000' + Ae2tdPwUPEZMpfEAHQgC6vTmnpfySyHmUa3c2C67pUhmb1aZcQEF81MEfeE: '100000000000' + Ae2tdPwUPEZ8TK3dydjiVEi2SXjfCcxuLfimBGqWA3f86Efhrhqa2tAfKtB: '100000000000' + Ae2tdPwUPEZ6hmaqv52tMhXDnxErbpycQ4tSgpredA3PyKqd8VrvQANohYE: '100000000000' + Ae2tdPwUPEZ6Ln9vFxXWSjMvJhULbn9QfKG662aQ1Lj7Lav1MTZTiuF3Rmy: '100000000000' + Ae2tdPwUPEZ59UvfWLH6Jep7ZNUoxUhRGn4mcGHHb98zA4ZSuJDdF2AR7yb: '100000000000' + Ae2tdPwUPEYwz12sBtQ4YkQv8LzCTpiRC2y7y7D1fsxsBfYih43s5XTwCro: '100000000000' + Ae2tdPwUPEZFWUqbEuBAaHsc2Ne1CBf7dM3JQgGv6vksx79tqys9mQBxDb3: '100000000000' + Ae2tdPwUPEZF869bbWvNTwnTagnLhGVBmH12Tj7A8KkDHeGX79daYP7NUND: '100000000000' + Ae2tdPwUPEZDkwXJ3ZXZMGtaj7nFn8fyH1Gj49DUkaJH4pRpToWKoS6HM8n: '100000000000' + Ae2tdPwUPEZ8pBfNYBujUbrFQyTF47LSuMpK76Ux4AUjfvm2AECk9r4qFyd: '100000000000' + Ae2tdPwUPEYwbD1M5TfdjQvaP8pToc2ZA5BBjjULChaKrLgKJnQDj6JoH6Q: '100000000000' + Ae2tdPwUPEZ7Hu5GZbYvbUjKdRdgp8WUncrGyX8LE5Ct5zg5HyTzCL4iXtn: '100000000000' + Ae2tdPwUPEZ4W1ocZ2KFAe9YtYiaDEA2KboKhHVnFCraqdzAHTgiVY86RiU: '100000000000' + Ae2tdPwUPEZGevz51cU19G837F89gyDqbQVc66JR1QWPeCAJ6H6vB5x18LW: '100000000000' + Ae2tdPwUPEZ4XFdcwGoiTYAZNX6tDVYFFxdL7fMSrMsMUwe8tBhoCN9d125: '100000000000' + Ae2tdPwUPEZ8JgkqaJQJZNYhAbKVqNcgdwjbrPeDpEgugAeZ4sufBu7B3qM: '100000000000' + Ae2tdPwUPEZK9kaMF4DCPEKBsMFgQArqNQosamFJbntLx4qbxZJVKPpybLX: '100000000000' + Ae2tdPwUPEZDoYN6BHMJsowpmos2wN9DDAyGRn74cAv7U6P6GvQDdZJpQYW: '100000000000' + Ae2tdPwUPEZ6GjqdhPpSYa82MuDaQ4AdHp99q1y7mXy4xFcSaZ36L3xMQAJ: '100000000000' + Ae2tdPwUPEZ9gkH3SL9RsExnPT2u4uvd5vobWFN2VqwFmL2MDZ1pJ3avNuC: '100000000000' + Ae2tdPwUPEZ5TzQAyQcKn6NyhtMHnBPhoZVK7HcAN1X6HY6ButR1FEkSCsn: '100000000000' + Ae2tdPwUPEZCHNjsUvHr2sEsGY3tHKw513RFZ6gEVsWPeiHw3xRvRs5s5Lb: '100000000000' + Ae2tdPwUPEZ9ww5xjpzfWfQZvfRMuCGz3rEMSctbeAj1nSU74U8vgeySfTA: '100000000000' + Ae2tdPwUPEZ91XTvWQjTs678nEubKpdNmijBWzQ284m4QmyjYUVJVsJB5Le: '100000000000' + Ae2tdPwUPEZAXWeS4kTx98CgCwxxeeyk77sdCXgtis6dPTibkkNYxy9h685: '100000000000' + Ae2tdPwUPEZJMAnP3UiznuqS182Q1Ciy4WtsUxtUT9rW9JTwh2kbVZjbHHy: '100000000000' + Ae2tdPwUPEZBWxWetYqN3cXVa6VxL37KuE9g4fYuCHxzcEyUweyLShnXpsR: '100000000000' + Ae2tdPwUPEZDMSAMN4vrtPCuM1FkivRL5gb6wR2UZhNGH5sqTKifRYiwMJw: '100000000000' + Ae2tdPwUPEZFvdHVj6vUUEVkChLqK1wFC5tYy3eUwgpVjEz11mhPbm57QmS: '100000000000' + Ae2tdPwUPEYzzsGJmP9WHG3M7f64ecu8mga25WBg93diQipnukQwhtM7qEn: '100000000000' + Ae2tdPwUPEZ8vE3DuvtAVvzG6RmxKgnANEqkxVoVRty61yZprQFcZgf7t8q: '100000000000' + Ae2tdPwUPEZ2Ct21TrzaVgz3tEBbSFU9CjNXCgGhwYqQBqLwcBymuTwJevC: '100000000000' + Ae2tdPwUPEZCc8dasxJJD1BFzCHK9ULESu2cgTDgXzyJhjAwv1nYCGEzkwh: '100000000000' + Ae2tdPwUPEYwP11rHrn5xgAWPMasT823xRTPQTtAeFTA6qvuhnz7xdpMNRk: '100000000000' + Ae2tdPwUPEZGrvJRYDbxREDuSk48DLvfyKfV1NaZHUVfsbQqcWuHC6dYecM: '100000000000' + Ae2tdPwUPEZCHibWTjAndMwXDyPGJQjY54zPJvfb4Gx8ggkpDUczsatZpaz: '100000000000' + Ae2tdPwUPEZHt2wCW8nX8Tn8ebEDvLfowgL9V9QAaWGdbHvY1s73H7VKbzw: '100000000000' + Ae2tdPwUPEZHMwXMBsL5BYbH69rA2D3nJpUcURn2mZPe9iXnq1XZvYJ2HDE: '100000000000' + Ae2tdPwUPEZHkrw4wXi3Y4Pk75jCVP8QYSXpwZtygCuAgRdoPwVw8j5SNbj: '100000000000' + Ae2tdPwUPEZMupHyK6AgPAKSTSZ5fcDRzet2FncmAgqVDizgvJQ5NqysLbP: '100000000000' + Ae2tdPwUPEZBLnbve3bo2NKER3b3vLCkfxNzJgeiFPUt33sZgnji3Bz7YBV: '100000000000' + Ae2tdPwUPEZ1vPsmkZfqckougrkz53MnLd6gBahWe5koWQ7DgmdxHNv2NsU: '100000000000' + Ae2tdPwUPEYzaDAgk3zN2sqkHYeG9M8CmqCKmE8adSgYq3114wCynkb8Mbj: '100000000000' + Ae2tdPwUPEZLcpRqXzanRY69a7scsryiygpBHgvdpPHvWD34fjQMZE6MYLA: '100000000000' + Ae2tdPwUPEZJB87GNHZfFJcs1Ei6djhj4HKLufc6FYViqeCc8FoATyKaPPB: '100000000000' + Ae2tdPwUPEYwdeYNWaPT71jhnbZSQesV9gzz22vydfvXtWhC5B2djs8sxyD: '100000000000' + Ae2tdPwUPEZAvzE1xXpgNCmHYWPwATb6LALZ5bDcapuwpxPXmBn2uz2irWL: '100000000000' + Ae2tdPwUPEZAMGei2LYdmRVtBtZHFhK7g71TV8ooXxe9ZztkaYabomhPTTP: '100000000000' + Ae2tdPwUPEZ3EsV15t7ZG8AHqE8kvvxGuzEJwYZkrHmx1CzoAdpwaayFgSz: '100000000000' + Ae2tdPwUPEZ8mWnL5CUJ4KeRpEvqphR55h3ZV1NRoiBPx5jWYV4UPByeqN4: '100000000000' + Ae2tdPwUPEZ7LqyFESUyn2yhgNybSACag6hb2Qh81sAxGSKS8to1skwG9Us: '100000000000' + Ae2tdPwUPEYwG6qzvxuBXZbQZNM7ouc6VDZyM6iMpJLL8z6GDD1ZHWWy91L: '100000000000' + Ae2tdPwUPEZ8A4ZYi4yegF21KmBbFgcCgHSWqc3LDYJHUsQRd3aoqxpLNhX: '100000000000' + Ae2tdPwUPEZLd9tnEHHVZX8wSF1BfwkxTLmXM8M6ZKVnHcDSUkbSeMpb3bH: '100000000000' + Ae2tdPwUPEZMujdBbhYJdU7czhhNKsPNYB6SXXbvpqmYx2hwqVqyd1eNmE9: '100000000000' + Ae2tdPwUPEZMkWBzgxwD6emaajTQM6CJtbWAMrbR4eC9ma9rEoj1xFuhkmN: '100000000000' + Ae2tdPwUPEZGEMwn3SaDfeuAFfFPLLzLW9uuaPraF2PrKtCpDo1xtLXApJK: '100000000000' + Ae2tdPwUPEZ6q8wQufb5E4s5qKUe7uSTMN4mJfLXKgkfVySzPMbqX2wAxwe: '100000000000' + Ae2tdPwUPEZGNP7rCTdMT2K645118hQEwq346G1HiJrs8y9JtxdbFZT1UqC: '100000000000' + Ae2tdPwUPEZ3p8qiAv9rZcNnqHupvS5FGY6AfxkA3NeAqbMK4QHWYwDAYsd: '100000000000' + Ae2tdPwUPEZJcDo5j1qv1RhTKau7Ns32Kzk7WY8gMo2u4vT2VXBEcDgUDmT: '100000000000' + Ae2tdPwUPEYz7oNcpbfkQrYbm6sP2R239Yx4remK8vY35Xn2HnJDVzuh34o: '100000000000' + Ae2tdPwUPEZJvEnYsAYGXSQxXpPydWFQLWKewGpAE1DunZURhfCW8SbncFF: '100000000000' + Ae2tdPwUPEZ3At4hac395zvqYMVjze5a3hHvGnctKGNrwB7Yxf2Wqd52H47: '100000000000' + Ae2tdPwUPEZ1MSdnXbdHdD7uBNkqXGtVYANSTZvXdacKpS1hNcvQM8rqL1x: '100000000000' + Ae2tdPwUPEZ7taSV1G9rgNh92NrJpV7yEA8EsAGNg898HVR1fBkR5wC1fA4: '100000000000' + Ae2tdPwUPEZEDXj16fiG5aQg6vvEnPG9HvQJV7UDpSkmN3cLgUwzk2ghGRX: '100000000000' + Ae2tdPwUPEZ5pHMPPvL1wAVFR8gcJcqMLJtRGtjzSyf35P9pY2MaYUC5DP3: '100000000000' + Ae2tdPwUPEZH87zCxrTZnWJpjQ5QnjY265PE219isMzVB1zh1RehV9PDkHn: '100000000000' + Ae2tdPwUPEZAtVWzKqkbtHUUvkxh7XvHrVr8o31APTUsru4oizT7t1pHKJj: '100000000000' + Ae2tdPwUPEZ3bF93iFsmUjQoVjUE8JjiKJdWsh7SsVbjR8NXzmeqZ1jTiQE: '100000000000' + Ae2tdPwUPEZCPDrbDU4qusE4yhjLfk571RynMFwxrj5icqRyBZeHGWnAs7m: '100000000000' + Ae2tdPwUPEZ5dABVHbfzBHhvQEjujEJ7GL3cVCBU5YubhuTr2h5cMHGxB3n: '100000000000' + Ae2tdPwUPEZFbvcPe3zomByRbCEcpoZfZ3eyHdoeGysgresyrzN47qDawvc: '100000000000' + Ae2tdPwUPEZGHx7EAZY71WWpG9Tn8Ww4j1uuHvemqECjERSnuP5sx9VyW34: '100000000000' + Ae2tdPwUPEZ9zBw4UxLE1Y3RQfvvZF5mzCgNyfg1STiTr58gxUyPWPQG1mQ: '100000000000' + Ae2tdPwUPEZ6ahnDES88dSVat78TqwiYsffR8y5vX4dDkDtyGTEDK6veVxD: '100000000000' + Ae2tdPwUPEZFVE753Bn4K67Acs7HUUgB7s1jhu3c4mWAQjJDuBJMB1btUYQ: '100000000000' + Ae2tdPwUPEZ3NNXpNA77KnNxVnkrVjwakjh4h3zWvffK7d3eHeHi9hLDabh: '100000000000' + Ae2tdPwUPEZMYj3znfx3UH99H88eXXDcmg7hnXtsqFJwCnVENFoaV6DfCWz: '100000000000' + Ae2tdPwUPEYw1kewNHsH4iTLz8hNbCw1JDT1XhELsEW7dLtgyHetfc9dDav: '100000000000' + Ae2tdPwUPEZLgpPCrqyR7BpgApJxZbdTJzhqAr1scjXdGUmE4ShJnn4keJH: '100000000000' + Ae2tdPwUPEZGtdimxpnZC7us214h7QMUcSzRNuT9Tb5SpBJTR96kqT2Jzx5: '100000000000' + Ae2tdPwUPEZ4yxCTWMK9WXMniVbCtGmT3rp4SmjvsQApL5PdrhhmqCcdZK7: '100000000000' + Ae2tdPwUPEZ7RKtd7x5zwt3qTaDhaYTwSD5ioE7aRHDg7KcxrMWxyCqefKp: '100000000000' + Ae2tdPwUPEZGEMcmPeH2nadvmj249gVsXhaSpJXxNZWJhDr7DZbpoLRCR52: '100000000000' + Ae2tdPwUPEZ4N9U6QspKLAa2UV6LUG4DcUotA7AktCcTot9SMirob7cV5yw: '100000000000' + Ae2tdPwUPEYyV3EooWPmd1fECtgwHJurJ7JgcVPnsWr7RTeXoNJFD2MUuP7: '100000000000' + Ae2tdPwUPEZFMj3B7R3BUabTNN5ctwh5ovhpRRahvmRsHJ1Sj8pwbujQEmi: '100000000000' + Ae2tdPwUPEZ4K84XiKnnR87iBJMNRX7WXxQcybjTThVpCfFvCVVsqnH21Q1: '100000000000' + Ae2tdPwUPEZBQDyhXvnBV582n4KHrE9YoLHV9fSgKkmYBbXg7tEp1HLYSmF: '100000000000' + Ae2tdPwUPEZFZSTmpdBTcS2UZVcKghv9aMBbZtwt1k8epj9EJEYUVHpzdLe: '100000000000' + Ae2tdPwUPEZB9XZ7YXZ45tH8DCe1HwCmY9gKdWA3EzPKQtV8RS77p37YsD8: '100000000000' + Ae2tdPwUPEZ5Rdw233T24RhvegGQZ45EfSghHBztak5WZ9fSugB85HUpBFv: '100000000000' + Ae2tdPwUPEZJ11pM8xBEWNvp2QjkWwy8xj9XXbz52RPrfDJPFA9xmksZqic: '100000000000' + Ae2tdPwUPEZDiggeuD5JFi16JqSqENV5qXeSbWEWeU5dzWjRY2JUtDQp56U: '100000000000' + Ae2tdPwUPEZGVfzkdfXkfariW7CpxpEeeQfWXhXP5st3NzMPj3PC1BTrCYm: '100000000000' + Ae2tdPwUPEZKCJfHVxCxxnYFJcvUB3PAeisfPGBdbx2eCCAW8pxrPBZDp6a: '100000000000' + Ae2tdPwUPEYxUu6UdVLZBNxvkPhGKzwqDwGrcrXwmXZj9HthX7691r1f2ou: '100000000000' + Ae2tdPwUPEZ7P2B5yqvxMH5Zy7CKPES3mwgaLQQ2dPQ26fAt9drJfa1A3Vv: '100000000000' + Ae2tdPwUPEZELdQWr8ZseGDJRMKRm1b3mh6bNZMMG2MWh2F1MQ5ZTJX4iEc: '100000000000' + Ae2tdPwUPEZ2b6UxgNELwMvtUn94x45bjAe91tYzFRMYZhWyNYtE8KUAYz3: '100000000000' + Ae2tdPwUPEYxK7tL3jgP6hJBzpxog1t9r9depsdCm8k7xL5ucoYqs2zS8jz: '100000000000' + Ae2tdPwUPEZKhnDkfAUV23pghKwUGoWsq55HLcVrzJXiADmgLcDKQMFq7eg: '100000000000' + Ae2tdPwUPEZMJUxV6uxYtSvkruafyhJg1SWJdbZ8GZoVFJARHgxrKFk77c2: '100000000000' + Ae2tdPwUPEZ4NDxqhgx2uYtU7YR8PA3vTkaZWVoQ57pLE8jpYGf6LnwGQss: '100000000000' + Ae2tdPwUPEZM2RP3V3wT71g3AnTmrHQfu9dXGUU7JEGzbuYXp1Rr8BXD3ik: '100000000000' + Ae2tdPwUPEZ5XJZX331mVbardNUgtriPYy87kFt6XSzhAJZmcYESnyPQTMg: '100000000000' + Ae2tdPwUPEYz6sqZ4WYZUh3h7jmwA45EtVWkdfwGEwkqUXGRH8ukVnzcVQr: '100000000000' + Ae2tdPwUPEZ9K9WHN5ZQGcYTXrZ5aVgnjojBCeT5LP3WcNMZagnaApHVwpA: '100000000000' + Ae2tdPwUPEYyQndV92UcWm8bCdX7TsRJuA5hqVq2HYuFHATdpnToZQoxCUH: '100000000000' + Ae2tdPwUPEYythZh57NUkadgMVbD2fSJnKHDP41bWHbZAfQ37UhYBpzvXVq: '100000000000' + Ae2tdPwUPEZAN9wbLkdu8SU5xaNFJZoLUmQvP7AvZZuq5Fpgkq4JEh4pTW8: '100000000000' + Ae2tdPwUPEZH8TVjchLtCeYmig61Pafd5JU5qj6izAUuBCCN23Gjgkyf4VU: '100000000000' + Ae2tdPwUPEZ4jhhgGhA9shyJ91ZgUdT23Gdk9BszQrmwwvDuTaH4UGJSgTK: '100000000000' + Ae2tdPwUPEZMWw5qNCYrc6GHCD1TEvgtNBt9gZVFsdwsk5frGpbxE4HBZzx: '100000000000' + Ae2tdPwUPEYzcx5X8R1L78ajAXkDEWNQpxKPbuxiRqVqtZXwBmW1hw5d78W: '100000000000' + Ae2tdPwUPEZ3qjEmFHVrBoNiExKuqCq2wDeSM3fsHvZA235RrQLmRJNZJ5B: '100000000000' + Ae2tdPwUPEZ2TbvHWS8iqUUkbMet8XprC3492aE1BebMFfp8PWYpEihdi5N: '100000000000' + Ae2tdPwUPEZ3KXygpAB5ySYPqHfWTNqMkhUTEdVYueqSshwT8yQqmt4crUM: '100000000000' + Ae2tdPwUPEZJvJTfWgJhUMppZeonnaT2ZpwFrBxSYkh3t8kBRVbgz8ngcFd: '100000000000' + Ae2tdPwUPEZBdxbCA194iKBoNVrPoDQyfxRTuPnMBjqojNqJzRQ95efGNDz: '100000000000' + Ae2tdPwUPEZDq3hGvEzWTt6txPuM7hoYnZRMxvrfvqAoE9RdZ4SCFiupq3H: '100000000000' + Ae2tdPwUPEYyDb2e4yE3hzapCSMhdaXQvojPJ2dxC5ZLUz15Ry5UdQfJggU: '100000000000' + Ae2tdPwUPEZ8FFJoEvjfsWxXUwpsYH5mSaqNJWvfSDNfsgaapHooKXTFoSf: '100000000000' + Ae2tdPwUPEZCQH6VHymHcjxhGrv3bQV6zkBfhHhS57uFY4kWaH4BSzUJkzq: '100000000000' + Ae2tdPwUPEYvp2GFyDRUtAx2YYosFfaCtYFJtQsGfXnDNCtGwuPByXmqzP6: '100000000000' + Ae2tdPwUPEZCNxbrLBRfNyzrcxPoGn4E4bPnR9N7zFpK9ddj3UjpER5ay9V: '100000000000' + Ae2tdPwUPEYzk6y3hpZjfC2xeHxceaLyiumYJXDECZSyZP8SZaXG2B5aNCF: '100000000000' + Ae2tdPwUPEZ2q8AwouwaeCJTJqY2ZbDC5jTARLseVJAKNKyAeYeJNFEoFEp: '100000000000' + Ae2tdPwUPEZHtXyMoD31N3VCojHQWHTqGFbhy2fCQjQWab1TNyyvG7BRiDy: '100000000000' + Ae2tdPwUPEYxvGAmXnU6tHuTiB6MUCr88QhSr6QgbvoSJuBzKugHHcQeFKZ: '100000000000' + Ae2tdPwUPEZMFd9fRJqhvh9KQhefNxyyDFb8rziER7rhCk4u7HR7aTQUWXF: '100000000000' + Ae2tdPwUPEYybwErVB1h5SeHW8wARx21KbBuhiJQd5zwwwCKUyhi5kLwGwz: '100000000000' + Ae2tdPwUPEZ2jyADZdkxJGHjLtmqY3DVpgfPzeq6Upe85KcQXxUBktLf8zv: '100000000000' + Ae2tdPwUPEZ2RFahkUugaBLcBHyJ3bWc7X92yG9YNvazguVfgKEjGTFyGJu: '100000000000' + Ae2tdPwUPEZ87DsaXtGcyCne84GVGjKGruzDbX5QqCSNgA6WeW1VoSWihrm: '100000000000' + Ae2tdPwUPEZEjgyRTVZJc9CZiEoGRPiCJmGEsHWndj8odNdHq1RmNncj6fT: '100000000000' + Ae2tdPwUPEZ2N3x1ELxEhoBVvb917kSK6rKRPQP4hMFWEeMa2JRm3Cjn8ST: '100000000000' + Ae2tdPwUPEZMLQV9ygYcBqqBwA4yUSYppuQvNhHdjrgAHbvQN1rxFRNPjrD: '100000000000' + Ae2tdPwUPEYy6b3XydEUTztJELJygyLHLaDvBe1YRN3XbKYCo4avxyYvi5D: '100000000000' + Ae2tdPwUPEZ69LzWFSLc4kWktnY5gtdWN1eWNdPK5jvq29gRXEAgAhVpwy3: '100000000000' + Ae2tdPwUPEZCQzfdKe1486wXAiz8Ysnv1fx6CiqjdCm3JAnUP5waRJyQWEW: '100000000000' + Ae2tdPwUPEZMA8X4rMwovnjaRx1ndmFQX52dq8wkzWDZjYa1Tt1THZbRhjq: '100000000000' + Ae2tdPwUPEZ1DxkbPTFHibGNGT53LstXmwcXwDvRKcL9pFSfn8L6f9v9Vmi: '100000000000' + Ae2tdPwUPEZ7EfLhBqZvXJ5CkY2rhon8ic7rRrTorZVV3Bn2GKWo8bTX4yM: '100000000000' + Ae2tdPwUPEZ2BR6xHsoaqWj8SL3HaHuFcsBeVaZ1pT3R5NqR1PdG5kmtxoc: '100000000000' + Ae2tdPwUPEZA33ArbNrW4cQrQPspHutfvxaNoV8tuaGa3AwNyaWa4ieqQoz: '100000000000' + Ae2tdPwUPEYziHXFqYub2GXnbtyM4tfTp2hoEVfVSqf5GVi2P56Vv2p6hvG: '100000000000' + Ae2tdPwUPEYvuqX9tZqqAkDDP7afsCvgFujfXxZHTz1PKeQwrh7gbjGFQ2d: '100000000000' + Ae2tdPwUPEZGwXEmQgFjUkQWRipq7AGsCpiMHq3rFfVSPFFSXTRwELizrfo: '100000000000' + Ae2tdPwUPEZ9BAxwfpZFGnK2g2TfYkRKnCo2U5wdyYGtNbP1pEsaxi8AnHg: '100000000000' + Ae2tdPwUPEZALSuJYXrUNfdVPef3B8JmeFZN3qLL7NsrvZhdcrwoaF31NQB: '100000000000' + Ae2tdPwUPEZ93Gu6c9TBcjSZMMsYRqZvtetdvNC39xWRh6uKwqjMmpkzrq9: '100000000000' + Ae2tdPwUPEYzcvDX756wJHLbWqM7PtfqEHnFbnNy48w1ApaYGEuEA3MPCw6: '100000000000' + Ae2tdPwUPEZK63M1TwrMijav8ZxSVsDusTTSmndc7u4J7Nv9FRPWwTE4FEZ: '100000000000' + Ae2tdPwUPEZ34oTAZoo37HmkacJ91SnS9Qa6C38AAKoiVyDeCkv6LSWeBCN: '100000000000' + Ae2tdPwUPEZJwMKhpij16Fk3Vvwky2iYqJZgsmG5WcV9DQ9ic7N2rSqdEwd: '100000000000' + Ae2tdPwUPEZJ18GpEJEv96UNEaHpCRh8eJQmeetBmg3XhewuCzyXdRnNrXQ: '100000000000' + Ae2tdPwUPEZ6hD8AUzwEGAfyc5PThCDZQHktfqYGCebxiK7jqcBiaxrS1hr: '100000000000' + Ae2tdPwUPEZ8jaQAnhLoz6FMcw8h217BmHvNTytqSjJtQR3WhSvcGynm9Ee: '100000000000' + Ae2tdPwUPEYw99Hz37zU5D7WiDmaPDQMRACzM6sx8WYDHhR25Dp2FrAHCyU: '100000000000' + Ae2tdPwUPEYzKmGanjFGuD5V3gH6VG5qV1QvregiKdrJceUpWQQiFMQZruP: '100000000000' + Ae2tdPwUPEYyC6vFbWeLNxHXmP4omZRpcJ4HzASaY2wzZkzsBBcJzw4WGFy: '100000000000' + Ae2tdPwUPEZGNuzQnUrzAMQWPowcDF2rVXZin3MXR8PFzACURzQ76NLM1mK: '100000000000' + Ae2tdPwUPEZD7SfaobKSba9pbFjh8ZnPoDdsbGzaANKWvCbYUqNPVWjh4Ma: '100000000000' + Ae2tdPwUPEZD8zhkg6qn5cBqRuo7JK5zuycSdN8QnivPm53vKcfvMee3SpJ: '100000000000' + Ae2tdPwUPEZ93EkFiNPmJGYVxCtCTwyFxFAGqYgVXXF24TuJ6kVTAEqcJDB: '100000000000' + Ae2tdPwUPEZJBgtVWWSqNjp4KdtnSeMjfyUbrYtKRZVrqDQ9QnyEdkr2rC7: '100000000000' + Ae2tdPwUPEZLwjWp67wCj6vtTd6zAjRBtna4SKJco4UYizWuKzMizKDktbU: '100000000000' + Ae2tdPwUPEZ5k2M3LzdnGdijwa2PK9MU3piNA2aU9Nr4PtHDCM8BjsUusq4: '100000000000' + Ae2tdPwUPEZD1neex1GiaT3CiA2icFPaDVxbNWUDMdgGNdrevYAcjjNA2Nj: '100000000000' + Ae2tdPwUPEZLoAS77y5vg4zawjfDCvfJRukaQB9DuXrq1ceYjh1fixwj5tQ: '100000000000' + Ae2tdPwUPEZ6CqiRL8Eyja7pzm2vheaUWb4PtpuzFaEQz3WSffGWHnkCMoh: '100000000000' + Ae2tdPwUPEZL82pcDJx9EgxY2619buYMbtG7hfhUgC765KqNmbdivKXbB2s: '100000000000' + Ae2tdPwUPEZKMpRR8qoe9wfM8sQcfYPp2oRmtumGB6Y2xMghmscz8wRqPq4: '100000000000' + Ae2tdPwUPEZLvFUcFHk9QKVAYthaREiEj8QrqhtAWqyfUGGQGf32SCvBYfP: '100000000000' + Ae2tdPwUPEZ87wPWbY4q9hArZzJikVdFs2JoHKNJEojkjxy8Vp9zLJ51muG: '100000000000' + Ae2tdPwUPEZ7fkQ36m3UFj2RdrynWpadFvKFZAUxvQe6D9SFFbexeTyMuJE: '100000000000' + Ae2tdPwUPEZ8TJXYXt7EJkzZA1YS4MxyjQ5pVxKxVtV6jZ9dHr99Yjbq4hs: '100000000000' + Ae2tdPwUPEZLoABxB2XkjSsJ2ZTkHpR2qJ5qhCoawXiBfgBuFw41oTn1WQD: '100000000000' + Ae2tdPwUPEZFXnqxxggvgGcsSNkjkXvy9MtdKT9kPcZoiWHg6WpJqTidTdD: '100000000000' + Ae2tdPwUPEZBtTiXjHCAZLWYWf6jsuh6xvqy2NAYDsuWnbsSxJAxM7iLgW9: '100000000000' + Ae2tdPwUPEYwPNnfohiWmX4gBdXSPvbS7yXnje2RLSpAiMFC4gs8QndqHeF: '100000000000' + Ae2tdPwUPEZ13sHbK1QbjL5n3DdauAEfQs12uvwyQaWGFSuDbqtBjLNnuqg: '100000000000' + Ae2tdPwUPEZHXU6Ci9uEzp653gTbe5TQ7gb3AK9TLtF1MttBfr5KjdrEBHk: '100000000000' + Ae2tdPwUPEZ8VAi986YfPxkYuTQmLMnfYsPEwkj4ob6mnzSpPC8a7eM4ajk: '100000000000' + Ae2tdPwUPEZ3yoeyvrM9N5J5nPug7kX49eKKsJFm7JNwQeCadWbMzsvw5uZ: '100000000000' + Ae2tdPwUPEZHvzmTM8aagizNsrGrabgeuHbWRAQEpHAsSUzVPEJpbEJZsrX: '100000000000' + Ae2tdPwUPEZBR7kZfwscTkBrtYV8Ff5bajNnUmdcrMhBV9dedeT3wVyFdG4: '100000000000' + Ae2tdPwUPEZChNirPh9QzubG52AWoRaNhofa3TbGf6eGLUvzEi3g8s28Rov: '100000000000' + Ae2tdPwUPEZ3AV95GkjRJCjGPab7DGDKLHecHfebJeNnmSzKFLso1b2zRDn: '100000000000' + Ae2tdPwUPEZ8wwWByYZm27Tbk3ZP4CRvJmWsGWYikdFvhC5tvgW3rf8ueB6: '100000000000' + Ae2tdPwUPEZ7zLi2zvzCDuz3kEjw97FPBTLqaFKS6Xc5n8yhKLh6D4xiXhY: '100000000000' + Ae2tdPwUPEZ8ncxRKKQjBqKtUCYdcvxBc2iC2PqznWcV7UAwdSoAD8DyAYt: '100000000000' + Ae2tdPwUPEZMqP4RPxdmMhi3JU8h8cqzVRjpk56HCjvoJ6mjuCbV28bf14e: '100000000000' + Ae2tdPwUPEZ8FuKmYNKksVxg5t6arfx9HkdLgT7oKf4qA5bsin8eXG59pYb: '100000000000' + Ae2tdPwUPEZ9jDSQyS259HRGSwkQDHSutLwNpaYxpwcayHcqvhUaGjNHQQQ: '100000000000' + Ae2tdPwUPEZ5dSDJ8BbkTMVcoGY7vgYdMVuaDiKZSVRknZndpWAxHXTSEYJ: '100000000000' + Ae2tdPwUPEZJSoZX79C6V3W5cuytGH3yK1DEnEezuCGWnvrsJxVTFaxqTKs: '100000000000' + Ae2tdPwUPEZ4BGksrCA7GFohmRJxML8bYdiPfYHzRAH1ZeehTHWwoaKUPUj: '100000000000' + Ae2tdPwUPEZ4CkT654whww9MPPz5AwzxEhb8QbDynh99C3VChvcW7dmyBif: '100000000000' + Ae2tdPwUPEZ6w8X6Y9z7Cz74nmnkKnjJWqfCSn4S5tXYYyqMhCvpGoHDnfA: '100000000000' + Ae2tdPwUPEYwPChJ1zr8hB7QUvyzpDesUp4to3JZbsLN57PLH7ZWEq4yYVk: '100000000000' + Ae2tdPwUPEZ7Cx68hJx7ZZZ5P4s4vu2tpmeWzVP5zSEi6wC5WM1qc3PzioQ: '100000000000' + Ae2tdPwUPEZ5WFJgC6Mdxegq95JxtEXWLbRwsbivBkvaLTNqoDBPAbQ1ypB: '100000000000' + Ae2tdPwUPEZ7WGiJu4a17o5fRvA9Jxy1AWk2uZuhWb9FRUXZG4cPUw98d2f: '100000000000' + Ae2tdPwUPEZ9t9BVAKsHmA9gkUGpRSeeYZDV4oY5bjShjo3V7KDBqYbiUNW: '100000000000' + Ae2tdPwUPEZ3Qd85yPhvpH1zW3T34cfJyvjinwbi9odxowZwmm4aoJGczDN: '100000000000' + Ae2tdPwUPEZNJiJnsy6DttDVkmCDRMsSrjcdo2cVbZooSYyUcb2SjcmV5jR: '100000000000' + Ae2tdPwUPEZKxr8pmCZ8WwbuBQ4B6ow1EFdPNYKFLqWnJsGpDaUCdDVKnHa: '100000000000' + Ae2tdPwUPEZ1Pz3k53z5UbN6LvCCTczn8dJsVuk9ZRTN6Wt86FmkUGc1Doq: '100000000000' + Ae2tdPwUPEZHrU42ZDpm6deQHHtvNuBopoz6tV35eb571cBnFbEeUiN3sw2: '100000000000' + Ae2tdPwUPEZ61HSMuRvL9qKocuPPEciqGw88eZrepNWhLdTG5s29EpyA4Cy: '100000000000' + Ae2tdPwUPEZJctCftDzEDGzr226gY782YukcHE1KHqrApV1wi1JNhKESVSS: '100000000000' + Ae2tdPwUPEZ43WjWQrTk1mQCmofyiQJsN3dBuabaRtrr9kcxqRAKkYu35L9: '100000000000' + Ae2tdPwUPEZ7TMGPjHcsQhy5ZFkixdpkCvrKF5GJLinm1XYn9UuSKkDwxe6: '100000000000' + Ae2tdPwUPEYx5UAX28QmV1fBvr5fhUd7c6uokLu43JcxTYUK3LnBALT1Ycd: '100000000000' + Ae2tdPwUPEZ7tf4SnwQNPBEhZS2fKVKk53SH4gkfZzh9TUWLXL4DBLB8HTd: '100000000000' + Ae2tdPwUPEYybP1TecLtjztuUo64J1hxiYXhrojcbmN9nQhTdraQKvtjPao: '100000000000' + Ae2tdPwUPEYyEt37tDBMPTQthSpVWMmP3i79kWiV4sxrGTyg2tk67sgGRvq: '100000000000' + Ae2tdPwUPEZ3eXAzcgVu3To6stLGceEJmafZez8tbLMxbDbYfRqepqoSTvH: '100000000000' + Ae2tdPwUPEZ6A4FzdpC5n2E4jhEvRcz5Pk1fa2sqWtDr1BxWz7k5KQfytM5: '100000000000' + Ae2tdPwUPEZHxkEqg2cijMqdYq2h569ALyLD2e1iDb6RbhTLJ5isWiBMWvK: '100000000000' + Ae2tdPwUPEZJcAsq2pgr94xhQp7m5KC7S9RsBaCN7aauttwNSBoXB6utxCx: '100000000000' + Ae2tdPwUPEZ8zkm8J4QjQ685ejAiwP1J5S6s6bVcfUFrJw8shD6GeC3oFa8: '100000000000' + Ae2tdPwUPEZCGEXr5CCvxDHvMqGVyZcHXCmtGL7u1BV2Vy6hPJ7VeTEiQZd: '100000000000' + Ae2tdPwUPEZE2eThpHN641QoUkg66UMjdoE7Q3yLrCDLYtBgsuZkdCQddmm: '100000000000' + Ae2tdPwUPEZ4bozW48zMym8kKaLnR6MAKbgSsifqqWwA1xHM1ozVkhFUj1D: '100000000000' + Ae2tdPwUPEZKp8fMNbmWgL1XFFfRtFj56E2sX7Hw1UP6bQH4TiWb31z2wLP: '100000000000' + Ae2tdPwUPEYweitdnXpbPTvVXVEn4ZzhmpvfBvnbyDrgjBNtcFgTKKNBN6A: '100000000000' + Ae2tdPwUPEZ62uW1TrYnB5ueZ2Wk9cg5poFco6N43VWJuLi8t5SJFjjt6Hb: '100000000000' + Ae2tdPwUPEZ6bjoU9zALeZuYJNzgZyQrJvx5ciFcz5TDdDSJDUz248VdU4N: '100000000000' + Ae2tdPwUPEZ8BCtfUU91FhumMMNWp9z9UTfLRneruNkChuZr6YDBwU7aG6k: '100000000000' + Ae2tdPwUPEZMdaUvXZ2aXF7ZXYsXyQnRDNxLFKQXqK3vwjaMaqws4GHxiim: '100000000000' + Ae2tdPwUPEZCe3snREFsBJUYp7BUu4HTDxrr8hkjmtoEJWqEgb2h9oKTidP: '100000000000' + Ae2tdPwUPEZFU4FdqvRkgMfcyct4QumN9VgZbBEQVtmecEWmBuJtuPx2G9T: '100000000000' + Ae2tdPwUPEZ9ViHaTSrKKfLxr8mf6TdeiFzA1UjMzr6baruxib1HcMRPfmr: '100000000000' + Ae2tdPwUPEZCcDwhHSvmw3eVvD6LoaGSAhBo9yBhMiBk4M1A3sH924Z8mmP: '100000000000' + Ae2tdPwUPEZKn6mM2ChAREkMwHxGwdHRBDU9NWANWLvGByFeSu2WyxCcst6: '100000000000' + Ae2tdPwUPEZ5FTU77xdpyyEZTsHEWqA4SkuYBvFtCbSskoMzC1ft8WTYEui: '100000000000' + Ae2tdPwUPEZ555CLvYqhHRE1XKjkSBKqneLpEJ9v6sjsV4NfdmS1vmm6mN4: '100000000000' + Ae2tdPwUPEZHUwuEkHm1eon6wYnWmt6ksFFRTt1XQuP5MHHnmvi4NJijWJA: '100000000000' + Ae2tdPwUPEZMXz8bacHcxvRXaR63VsDvz5uhRWPaq3Cu61Xhpa9zd5MeM5M: '100000000000' + Ae2tdPwUPEYzh48Qk3ohSe5XnNdoNcqZuYvCgsEMASuWPB5n4perL1BSujx: '100000000000' + Ae2tdPwUPEYzBDp8a6d5xdm1xXpvgNqKVEh3k5z9pMpykrFFiWjp6FaXd2u: '100000000000' + Ae2tdPwUPEYyckp6oURgGFXd9jG69n78zCee4B9SEQ2bZXyjxbUq3R5HMU4: '100000000000' + Ae2tdPwUPEYycp9vuzZHXQtGrgTM1gCPjszoS1SzqBWjuoAgyUCG2XjN9ku: '100000000000' + Ae2tdPwUPEZBMNmzqSXZsUDqry7aF47NPvT43LxMWGKmviEUJzN9Smeguxg: '100000000000' + Ae2tdPwUPEZDa8wGNQ11jonhjok3ehzyWsbkFVBij4iPcQd2CJihWjyYZ5S: '100000000000' + Ae2tdPwUPEYzxrpydczZyQ5AeY3qAXCngijc5yZNHNAhoGddCSgm5Lnkqnh: '100000000000' + Ae2tdPwUPEZ3Vn2gGxXRpvZX5uXjqHSXAAzQTstzsaMCWCt5ooSt7cyRH4w: '100000000000' + Ae2tdPwUPEZF2UPCuoSq3ivvovpBjXc5taAqLrUw5vgGh6zx3ckpK2Fi7FD: '100000000000' + Ae2tdPwUPEZFa1ssXJN4sgukaGBDtst2jcA49ZGzXa2Hr1C5vuZP7CuCybW: '100000000000' + Ae2tdPwUPEZEMZ2a3tcUU4bvb6hoM9w3defNmMti7ja6wigjCdSxkJNDwZC: '100000000000' + Ae2tdPwUPEZFKJDXx4Fsp91ZgpaAgKNNZWB13jkYXW6wPEey36chKL3NDwe: '100000000000' + Ae2tdPwUPEZBCkARDHPo852i6XfT58pw2Pjvirgkva1EPw6PwEaYGuTNwLb: '100000000000' + Ae2tdPwUPEZARA9MeBQwoccSYDUj9YChXLyh7AtHMvwvqG9ayZ625ArKUxM: '100000000000' + Ae2tdPwUPEZ2SsnM8YH4Hf38XvLidHoZ4DPmTiEDtMPmE1MzEnPfbssXNJK: '100000000000' + Ae2tdPwUPEZHKAokswWkYgcpD7xafPndkRqpUgQaZHsarap1JAgFjRDGfXQ: '100000000000' + Ae2tdPwUPEZM4tzjPRCcjKSj7BTNika8my9DRRAjY1EHi1oo24Tm2XsS2tg: '100000000000' + Ae2tdPwUPEZ1JqaUF8MTCB7b8CtKXYm21fTKSa6yYL1RF2s79Ti9ZbThbKk: '100000000000' + Ae2tdPwUPEZ1KgqFrnvMZxDFimrPpLmdwMPzHERU6vH5twNVwGoWNnPo2ua: '100000000000' + Ae2tdPwUPEZAwJp8YhT57SFdGsxYcdNH8tTX2zRqdTxg43FPaPp9JCJp8Mf: '100000000000' + Ae2tdPwUPEZ25AXK3R5hJkV21NFPHWGqgGR2xcnHcbPT5p1hGeTyN29i7Kk: '100000000000' + Ae2tdPwUPEZ5UJfgzYLuadaTe1woBSkBM8utqJnQzRB7UyfjN9RP6788oSd: '100000000000' + Ae2tdPwUPEZAWahctBMQNS3W4BXtYzwkDiaMoMRBwky7dTV2Ex7uvjqJfs1: '100000000000' + Ae2tdPwUPEZ3Gaq2hSnXQsxtnTuFaXMFmj2DZd2fvuQ438w6QewyFiWGhBF: '100000000000' + Ae2tdPwUPEZFxrHZD4xbVj6rbRDSUenw5cqrETC9FdU1c3V5MB8CBA64rwW: '100000000000' + Ae2tdPwUPEZ17Pp5q5Uk6nuoVZaLL3sV2tsMfC7gJqhm2ejLY5MNoWNw7Dt: '100000000000' + Ae2tdPwUPEZKuZDoFKaajmAEQ9kdhMxihkg6EHHHXa4ZudLLbKCjX3Hq6dK: '100000000000' + Ae2tdPwUPEZKhn8uCm9phfy2Lq4GJAymiZyakBtzky3fyqjst76gfu6qVCY: '100000000000' + Ae2tdPwUPEZF5pDQEGx91dJwRhniHsJfQa3hN54NZibuKw39r3LnA76bzPV: '100000000000' + Ae2tdPwUPEZ5gC5x7zz8K2XBjb1EP9UMgXMQtGTefJFdwsqUKYfFQfFwnQH: '100000000000' + Ae2tdPwUPEZ42KPbxKa3oWvgGAMNyuLJiChHuqhK3xr6cpMyvtm61TQWWsc: '100000000000' + Ae2tdPwUPEZN5Uij8nGQZZPS6aAG116Lk9Fficg3HyNnZBMX7uE1vUrWy9k: '100000000000' + Ae2tdPwUPEZGYm1TLWoAr9bnz8E1uquebQpFu2hQvgZsTonU6BzAqyBRiTs: '100000000000' + Ae2tdPwUPEYxXAL3ZDYMEQRBWnEdPUKua1VN7kzjPPCftRSCJ8fH1Rtwiqe: '100000000000' + Ae2tdPwUPEZDzUGRJZzF1ULkP9NuGvnx1eqPhPdsRR9jEjYA1JucvWCpgYs: '100000000000' + Ae2tdPwUPEZCrm6p2guL2YpegrsznYJCYjoTXWqXFiVGvkXGqE9rUgB2kbp: '100000000000' + Ae2tdPwUPEYwNeXui4QEN6wcBmYYzfbxY7Z4bVQLWnNv7d1gjKmeACPYzCM: '100000000000' + Ae2tdPwUPEZF1rWkHBWPKEBcbG3tS7MUZfZ9HZGbcJLb1PYenysWX4MXnVY: '100000000000' + Ae2tdPwUPEZ8qstsN6TLqP6UHGMP1Eo4iVzoNr6WqeEYFdBz8wHKCL7wxvH: '100000000000' + Ae2tdPwUPEZ8cVvmKvAutGSseymQScV7ot2jd3HpeddcygXTkUBwQxF3Tqm: '100000000000' + Ae2tdPwUPEZAaKFF3dYu4SSXz2npmhWQ49bwbZanRWjTLU7yyihrV4VnE5D: '100000000000' + Ae2tdPwUPEZMgkVA1gXHNwqYZKEYqEiBhkXXRwZU8QYRvwPtgv5seiNg54w: '100000000000' + Ae2tdPwUPEZ4wCrqVNbZyVYjt6ZN4rM12iPRSSCdR46tpmKgUGqsK6NvhiE: '100000000000' + Ae2tdPwUPEZBMR1jky8fkFR6mtBpir25PXoS3R4wCKWpytHZNwUzSAW792F: '100000000000' + Ae2tdPwUPEZ4iQaHPshodNHD6TKTjvkBtn9AWyv4NJBLDX2sky2Efsox87W: '100000000000' + Ae2tdPwUPEZCqTNGRt2U2TiUAds6Bsh1YpZBe8ED9s3Xjkq4zKTfBisFaYu: '100000000000' + Ae2tdPwUPEYzZhAHMPqpXcEZr7nXxj5BgVaUdJR5DPawBC5RkUEGnhn5bPE: '100000000000' + Ae2tdPwUPEZBy4idd7minN27Ygb9xsNjQTaFi8x6bsTwQPUGPo8jvqLaSgZ: '100000000000' + Ae2tdPwUPEZ2S6AbCeAHSLF87HNdT7JQN9NGBg26SYHfMEPDYLZyTAZnKpr: '100000000000' + + # Special High Indexes Icarus Wallet: "erosion", "ahead", "vibrant", "air", "day", "timber", "thunder", "general", "dice", "into", "chest", "enrich", "social", "neck", "shine" + # + # Address indexes below are #501, #502, ..., #510 + Ae2tdPwUPEZB1rJ7Hgrvywn8zETWcv95csnqZ8UhxM74CrQ48VeEq3vjAai: '100000000000' + Ae2tdPwUPEZLDsoZbe9FKwsCDhRQhGUxkGvrMH17Go3EtGNSMp6AutniqQh: '100000000000' + Ae2tdPwUPEZLBfW9r9E6XcfZq9WsPJ1ufE9txTvMYUu8kLtwTAbEZdncEMc: '100000000000' + Ae2tdPwUPEZ55N1WJFJSQbFuKbKGdbFZRVTS3PyNJ84VGZiecuqy8PAZfLE: '100000000000' + Ae2tdPwUPEZBShWX3hTsErG1Fx9YRM85aNcqiMZ6VFn8TNA1ocgUddTC5qT: '100000000000' + Ae2tdPwUPEZ8kzoviC5H9y39rb6mykNhiZqTz592zPFUb8TGU9mBa6ycrbo: '100000000000' + Ae2tdPwUPEZJSoRXrbFXYaJEnZcBaBj137JWAzgG366H1oxupQPVd5daCFd: '100000000000' + Ae2tdPwUPEZ8g2f5hJUnMGmro3dpwW9DfQSDpNfLk5tfE7hxZKtNzwwTHgc: '100000000000' + Ae2tdPwUPEZFux7F1Cthr49tWitNF2vqwEL3A9R4cgvKFDSFkzGBBKv1a6W: '100000000000' + Ae2tdPwUPEZFbUA2eji7qzph7Mug3v9HVSWvhSExvUDez3CzKB1grupYBAL: '100000000000' + + # A special Byron Wallet comming from ["suffer", "decorate", "head", "opera", "yellow", "debate", "visa", "fire", "salute", "hybrid", "stone", "smart"] + # + # with with only dust + DdzFFzCqrhsz56VqWWAQpRMcSFYE1WKeuFcVzV9UpovnJghF4YmV7TkMLNh1GCHftUBNEZQ2h3fCKsb25syBYrd1Qob2XkyeS6vgDzQ8: '1' + DdzFFzCqrhsfE8zNNyc84uMJrR6Ma3ToNYfwwZ4oQVGt8QrG9ZQtKngy3Qe4tzioZSdnwpD9n8RwFC22n61ytMs7NkXhVHrZwPoDjUju: '2' + DdzFFzCqrht6QNVjDuTwuwzYbubxxEHkRLR717NWYsUeqimhr9WwQQMJS8r4cfoW6Fkdefm53ea5vX5drr55vrTsGcPDKjFgENcXtDC8: '3' + DdzFFzCqrhspYWP9aDtu4t3LQWyt4h7zWSYgmRbfdvHindyJoSozKq81ZDEAVhzQy7PFCMFBDFyzrszZXvHQCwTwyPLpqgFwadJqn6rN: '4' + DdzFFzCqrhsktZddiMaLXEBdfpcZaJvUQpaM3KUQgaj4Tg3v2EeVU8HXimv6Ci7C46rYeQJ16sgwxU7t71eEbVpAknSsZDgCrk1ZbLk6: '5' + + + # A special Byron Wallet coming from ["collect", "fold", "file", "clown", "injury", "sun", "brass", "diet", "exist", "spike", "behave", "clip"] + # + # with 500 UTxOs where 100 of them are dust + DdzFFzCqrht74rkP7eNhMp9iaQ79JQZzHX6QxjoFoie4qAn5D2MESx3Rzpqtc9zX6ASEdDThwJyqjc2kjqHMFnoUnC79GmmNCB9Vfe6a: '10000000000' + DdzFFzCqrhtD1LQ5wUyD3XB9wb3pV1YprcgwGwwyRoxcq4HRmrR5mPJyrgZn31dhYyWeGbu4q5UDHxBAoXjgqk5MuWsNsNVxTF8F2qWy: '10000000000' + DdzFFzCqrht2WTfwxWQe6xBUfW3wn3c1jzSxhSXA3N7k5pqQSHU7HPKEzJWmThUoumXZfPmwzsuH2ScHJVWd5aoyMu3KbuNjYerW2USX: '10000000000' + DdzFFzCqrhsmwHKki2LAsTmtgTVicRjvdnpnASuAQPAzkToBA24fe8F7VKJ7JvXr7nZK8kDUR55PmW2LE8L1PsoS8oQ5xot4UZSNDFxa: '10000000000' + DdzFFzCqrht9v5GtAfmEentVJVifD6wMiBtYwF3CRsmNrj6poVazpQVzUA2wSqaA3qXxLu38nYjF6eCPbvfa5eXtgqMRgbJgS5RKktbn: '10000000000' + DdzFFzCqrhsixN9C25gpSKwbuuDHUyx5CuX6mXpueiSeDL9xD8VSxTLReGzRYijPPVFibcSPasNbpQ4NC4sbGaoyDA6ui5TapZgvrRwH: '10000000000' + DdzFFzCqrhsimUHRmSXdMESb5rg4cvWXuEA4yyWG9K9zbK9JG5wELWB1J9fPS8UcC9px3inKqiMhDxRezLKfqBmEPKNxi88VUCV12yae: '10000000000' + DdzFFzCqrhseFRYgaXgzfzx6YP4UcfPRGmVFuHRmK46vbvxJKBv2G5PhDzgw51ncgWRPD1G5SpSe7njH3hANNNEmwZbHN5jmLERvwMFi: '10000000000' + DdzFFzCqrhsoe4FmTx53t9PNeRwkk2r3tThWDG4iFSkDRZ62ukgPEJwQuhVeH4wy7PevtqZJ5ort511GS448vq9TVtzq6MF6xYXSRzQN: '10000000000' + DdzFFzCqrhsmLgJ4SYYYP7NizMB15YhRnr3uB6etmFtKi96SLM18adj1bsD4uAo2W7A1qe3ermujVMrikw2W57uKdMSshL9R26qpMxzc: '10000000000' + DdzFFzCqrht7bNPEP52S1fFTL3fuXPiT684iHQL7Jh8TSpZ1y3daCiswqDpTzNLnVqbjJL4nGQr6EKU5ag6hQh3Su7Br6MdByijkteCa: '10000000000' + DdzFFzCqrhsfJHwdW8ST3auJpKqj1fR98ddQ2AhtcFVa86ygJ3mxGEeUt4x8Jj5fvnRPyuFbWcxmbY2cCm4w96HSPoL8GcogjfSqjfBG: '10000000000' + DdzFFzCqrht8ZChkZpKVRjGvTjtAmMvtH7ctW2BpGiuvFSEYFtiTpekfwZbkLF2mkAMJe6vkzCWYUAV1pYpZHBzYSXd7SDE15JaomHmk: '10000000000' + DdzFFzCqrhsr82KTijCUhB4X455iz3xfphVDfq7BkNyFxrZFNpMXxv5kpXCjBtwwtNPrg9989Y6eP5CaNbJXu5aw99eDYrqJhJxja4Ys: '10000000000' + DdzFFzCqrhsn6eNkT8jVdSWL2HekJzWbWXC8MpYsFBD9ZzoyREGEMnSpKwnc85fRiQoDumcBSFkYZLoV9QhhYrACDuyLxkrVQKZAu6E9: '10000000000' + DdzFFzCqrht7qfcesd7cGVWjR2g4Y4uzc1dN1N8Q4WSoRXrVagWuqRzXRnj6j3kBgKjK5wmGHy8iQ43ztHWq2muW3sBWSURaL639oD5E: '10000000000' + DdzFFzCqrhsunU3RzkxFFi828WCCxmJ1TSY87pcWtV35nPVieK37sdw1NFSWwyBoySXB6E4Djijxmt3XAbtTVqG2vYAsnxjJeJm26RSd: '10000000000' + DdzFFzCqrht2me1YG59MRZRYw3TrKEtaBe8K9gufXPsRqL2XZJoyLV2mGj8VUKKKtHNXtRhihRz1jETMSEiCJwaN3JvP79FUe7N1RshY: '10000000000' + DdzFFzCqrhsxa7TVpBQF6fWUVVTPMw88FFPJJ4Q5iACr8Ywp2kXJbJj68TxsgT96GmwLZFUMxuT3ckmH1ydBWmq6FnzKpEj7rDyRc13k: '10000000000' + DdzFFzCqrhsnd5fktRzjggYTBYqT8HXwpNgxQrLKn4hbbaBmoHt27Cp8wrkc8wXGLn7rQGdYfdFBHPE94kNKDQR6FRd1WB64imHz7dW6: '10000000000' + DdzFFzCqrhsh53AKGP1M1VTYQPy2Pa2hSLQemEwZn9T31npUGWypjZhXNgC9npqpKY3QLYpLAFrSbFWAG7RqcBQ84wwk8PebQTJN7ZM3: '10000000000' + DdzFFzCqrhtBoYfqGzYsP61ZM5Fsxy7CyXhSRykNwVJjoNeohNrWkbmCag6VqepW2KtcF8uiH4sXJSXFZ1xwp9NWZ3yy6fV2edfLTQ3L: '10000000000' + DdzFFzCqrhsfCo8npHCT2yUTybE28nhT2r97hwZmw1ZVpb1YLP3yT6XfvHUMgQn5oUKmPaacW1TyDDLSpDEt2bAPxAFVHAKi4h5vanxK: '10000000000' + DdzFFzCqrhskzPk1MGb1xo9BxzcCNHTfbN48xBupa9KbJ9n8tE9b1NF5mPncMfFQ1CGYhNreFbRcmfuk78XvNCudffUwcXxF9B6zmB1F: '10000000000' + DdzFFzCqrht4LGyz2PunUcmySpAqDNcYbgTrVheNRVTJZZMAgCSmsvayYG4eLwU9PGX5fViKBywuyzfLgau4sCDesHbucPN96GwxEH1h: '10000000000' + DdzFFzCqrhsfi1p3MtYG26TpgScRnkATR2fnjiJFLVeGrULFS3gjjj3ByULEC8ZxcXD7Av2rEQwm3vXz9oFXQ5X6K8NNprseWwrSz2af: '10000000000' + DdzFFzCqrht9GXEcM8LaTRo15oysWd8c9RxhQa7MmPcFBBPKL8cJYczhojyDLuNzfZGKRgfYCeF32UmfVyuccgxWBYubGeXqmSpYgpk7: '10000000000' + DdzFFzCqrht1x3AA2J4Ht7Z1a4xUtmBecTnsMxuDeAqhQLLbpB9vgJLjyhBAhHJQdRfPMXhDaD6ANtPdNhD4xKi67sHBe3LN2sy2JtPb: '10000000000' + DdzFFzCqrhswSf3sKpjoN4YWAqBxeG8wYmuxZsdgRTxyF8PewXqm9Tymi2FrW5zF6dx86KytPWhZNwV3qPrAggS666uYMXbajkcFMWk8: '10000000000' + DdzFFzCqrhsudVzxjFvbVFyreKSy5yWoFS7zf4U9fyft25FVV81qyQA4UHKJceGPf17sN6H2NchuLp3LWn9vAsmaHdFHd5ujH8rAJu2m: '10000000000' + DdzFFzCqrhsp9rKHL1V1fdS2pdVmgpWKRe8Bmq533DzFSAaJcb5HrLEAmmsCfbb9fvJ9uz8NfGdWDj2CxetGuheMuK3aFeYbPsYRjXdL: '10000000000' + DdzFFzCqrhsn62sWhrHnq7MMds6nunf2nUiJJY9Ewn5K6L4e3sbDAQmzU4jyq2aWcrDNXT2kHanTaPftBWsaMmaDhwMvjZWAWb8YH8kt: '10000000000' + DdzFFzCqrhsmbbfJ2naGfSRvQwDWGwc5oYjg5LiJhGjyJp8Rv6RV2uPvVqPBBVLrxt9cct9oLN9kdthL3SuFybTkBV4udXrGiJPePWvL: '10000000000' + DdzFFzCqrhsrRNcVNk9tAUPSsgWUfaFmZP4WJwKrBckucAGiMgH5SuzadfMVaoh1p5Y2ACPbT7PZZavZKxHjFgwDESHGh7mD1VHSsXHJ: '10000000000' + DdzFFzCqrhsnZWFsD6XMrKfMzjhQGLPNSVgxjTfwCdnCJB5q2M9aEf7JupcknXvMRwGaeVTmWw1auhHFD9Y7WdQGBj5X4HnJf4eLfRhm: '10000000000' + DdzFFzCqrht2X9Sjw2hQ4fsv5G9XKHVZferp3sQtqbaLFPiB3G8AyYrpBBbMdsD6ctbSR1GemGFHv82UztRoa7pCbRb15KkxatHnPPjC: '10000000000' + DdzFFzCqrht1kyXPPNKR2FdwhXtdHDpW8eCwduqCegMxCHkQ5YVK6NdUcA3YEx8ZxqLxi4spe9weUMQjSify5hkdyaQN3xDbvU8fotiU: '10000000000' + DdzFFzCqrht4eiEyj8WBvXks39GMsEf9pxq2zPJzySKfPFgMypSLuWuMqRmKjt45akL2gdGnpHd6EjQFkv8TVCkZ3AVdhj6ENtqdxZTE: '10000000000' + DdzFFzCqrhsnK4ZbLydcbGh79N6ABcDdELfPmEwjLeNeK26dRr2GypwoTFJMgKcKE8vjM2sQ69Zrb8MfSoh6S7NdqCp2z1NkyVSMByKA: '10000000000' + DdzFFzCqrhstvUSEM5Da4GteUs7AaLx3c7vvZstgxg2hpYBPmgcHNXQ5hLWyvF7Qx5wJM1DLfuc4K4WCkTVr4j1h3PpBTj96XrWZYLC5: '10000000000' + DdzFFzCqrht2Lee3DjH6PXARBJ2f4mhycRcLxbPMfkytAg4mVJYLsasxhjYmRTApSwombQbiHR38PebXgnM1B9MAF7PzeG7ub7Q41WvR: '10000000000' + DdzFFzCqrhskyjSxsuovAZusy8n54jndPa9Ri1YuAJt9pQzZAhcJzBu7FBc2W6KXxLkAA4sRkfjaqPcjRMFpAPJgHAayu5VDbZNQ2WpE: '10000000000' + DdzFFzCqrhtCeiAvANjy6mtcF6YV7hLNp7pS7raiiCRvrFDYQJR9Jujnr9niAmqQ9NLgMNQdzfW154dzZGNiVF6YLkqZxQW1wXJz4DdP: '10000000000' + DdzFFzCqrhskmdcf1AvMMoTwpLe99D942KHbU8duNxZujFx1Evwj4L5MYHXYvJVj7RTLLq82d8m1T8dNx3FrAUEj1Hf7GqaibWeazqqz: '10000000000' + DdzFFzCqrht8LXg6C8gYrnNw2vM6NjQq54yYZcY4sxQohccgA4Ugzvn7XEuQswDS6TjTAEe32HxwHn1tYXQi6nNqdcTXyCK1xHoYri5K: '10000000000' + DdzFFzCqrhsv24r2yWyW8rk7KC28gZAgyYWYZWPqxbu5F6KUeUToxi8gmuQzMS2YWkXeWFXipL3JpMerAWqVKY55SqDZDfSsBuvPPKFP: '10000000000' + DdzFFzCqrhsqVCt4UUKacnHgz27FtJZUfvK1uUQXnKd3QVjjUy8z3CppouvYkuLfvK4LYeF3uXazAKsbmPGD11uDAnUhJ1hkxHZD5Z7h: '10000000000' + DdzFFzCqrht5Jsq8pc6XZ7HszkS8GKdjWTLwx9yBGMCvUMm9B27t3pGGGstRHVpgEJ8ZwbK1831z4q9fLXR6jZ93DJoPUaaJzS3XyUvC: '10000000000' + DdzFFzCqrhssADccjeDoHmGY8b46ikWGHMsaXpzhM5r3fc8D6rXjxMQv5r5XfosrXBiRiFnHFVdvKPoDRzGjk53xM42vrgmJFzrMKFCh: '10000000000' + DdzFFzCqrhskDjCB6feTvqrNMDmtcDuFB9pa5Q91h6VTwUT6a7jccdmv8jEiHGioeCZgRV77BdBGRLcAbhPNpJN6AHQMd7fN6TDCNfBm: '10000000000' + DdzFFzCqrhsvKsWhmmLFrteyGtaGjZUprgw9LHXpXLq2WR73iszWbzd9Rac8q122nXjbFxq5tCkJRkYXV1poT8JnuhaPToKEkfHyYgY4: '10000000000' + DdzFFzCqrhshTqnGQ3vwT3usggSFkhcisYtw7CHkhZYWPKxw6YQUrmc5bRam5cjD7S9opQus9EfgxbViHVKGUAuHFktrtGgHCKpiTR3X: '10000000000' + DdzFFzCqrht9mqjNjcUzMJQCCKuetEYNFduchRbFqTmRLe9ERsNChQsDziDEK1EeDeutehcU8LhYrQJQ3NkwWNLuNgSLo1ZZNStsyKMR: '10000000000' + DdzFFzCqrht62RJx2nznFLa9PyBRGou8CQjWtd66ntzCzWmp1qJCG8Ls6BXQCDa1GTbT1PhLdfJ3fMexHBRs8RbqdwMJpVXzZSC9Sbgq: '10000000000' + DdzFFzCqrhsfGPwQT4KQidEfEgxt23tAyZKmatiKxDivkaL7D2nwHtRureaxCN6TJ6aTKdg3YM6YL4e2RKrBbuKgfwcSJ2GCtt43fJgC: '10000000000' + DdzFFzCqrhsq9gaTbqV4aJ9mWNAXjdpcCwLUCsruHn3PrUo4FadN8BZLKckU8RE2qkk4NgnQwjRwLnzvs9zkJJXqociz1TM7MDMWNMDN: '10000000000' + DdzFFzCqrhtBgHtgDnvge3BqAyHsdQaaa2kNveMH4DwHeowNMYoSCsCxCEVHctpmbFQa7VyzQTApNZkgeuU5CAzUFPw58hqxKifeCk2h: '10000000000' + DdzFFzCqrhsrjtD75C5JPZnPYc8ERSoXejiC9rLjaieUqDdwaizNa5QceGoVs4G1iyxsW6Xpd5TijRSbSKpi2XAtahfWEgk8ydLAfRic: '10000000000' + DdzFFzCqrht3Nu1ynP945mofM4mXRxbQwzgRG8JjDYqnL5hjEbByEfWUTCgbEGrnDobdRf9R1xzJcXFJ4KZ71MgdWv8F5Ta4vYwdtzf2: '10000000000' + DdzFFzCqrhskrYw9LBJmbaBdF3h4SeGggM8FVwoCdrhZ2uRTjmWmaQfyXSpegdqCgNLmEJiTFcPDjPMj7WZuCuSjHmCmFJaRpHer9x5z: '10000000000' + DdzFFzCqrhseZminsKqmJgvt6Hq6jrv7VWQ5Uw31thiF4gPdVUrxvu3Gmcvt2EP9CHzC7S5pSgSJh7waBNZrjZEzVEpV3W5DjtFiqGDt: '10000000000' + DdzFFzCqrhswqffexzb3aoNGiFnUrCiuREuK63J65toAzjpwD2cx1oCHLtBR5LR4MaAJSGRbn2uWwAC4g2wyjx4w2z7kJjEGuFCVqmSW: '10000000000' + DdzFFzCqrhsnm9uBb8qarQZfSSYxYXjQ81TdcyswH4vgsHBjq1zov7nMy4ndTRS7Yuq54ne6Ds6rfyFUhdBRk2pJKYK6RoeUiGV1vwyk: '10000000000' + DdzFFzCqrhsm1QSHAcAjK3Va4jZdDq1NvHCQjrqfEAqUBUki34yQvdeiKkZpGabFLVuvVbQJDk69YFTcwoCLbhLWi6vYWuzi93miau7v: '10000000000' + DdzFFzCqrhsksQXvpRDVaovPGxirbBZcv3pxsb16fAEw3WbWu4fSLjvo5NLxk6jwizsBPG6jHzvwHn2DV6QnzbHHvQdLq2NNKDUukh74: '10000000000' + DdzFFzCqrhtBmu3pCXv8rXFW9YuAFrrVBypDQ5GfEvuZHfsgLfeTBsnZUT5X4BqMhnLgoFFSnnC2FTz4PozcSYxqCCw89QETsn1DdnvV: '10000000000' + DdzFFzCqrhsfhPP4rNa6k991fiUXpSp6thLbQkzSVZesnJeaJwFk8h3HJkWBJGRECokpTthCmuJr9qEqGtvCP8xLmmUnK6zt8kzhBykd: '10000000000' + DdzFFzCqrht7cWB8GyXGv8VFHUGWyKSdp8LNXdzjLmhRpkkak2wAZDTeonN1pzkUU2YSQucvQ3XHtAzxPPoj7eNUXkV4sq4b9LKKYhXi: '10000000000' + DdzFFzCqrhsxcnheSckLSjUyNWc1yZD9z7yudRfQGu7VBoEu45CPGmDE2Zo7a1KJVA6SinACVzoRfpsznH8SnxxUEgMpi5ALKUArpo2t: '10000000000' + DdzFFzCqrhsyv2KBMBB66EJHkNS7w7Ei3ismZsK888BE8pDcbKWVrdpb9qmMDPb4RiSQ3s12cQ99QwAcyA6wEHU877t18igwJs4TDAnt: '10000000000' + DdzFFzCqrht58Az971KU11U83wZ8ZcPRLT5M4u3iyjUyJnwthbA1pddekoczb97vxmuAsGAJdvGJmKmG4frEdBE7e7MmYp3CnXWyAtUe: '10000000000' + DdzFFzCqrhsgFfKY5vePdM3QmjHb3GsUrKWMpLgo8GxPSy8fmCQNdUqjYm6oA6QTaSJa84wZZHvZu7V5xsNqrRxYjh6Nxb8SwypkURhX: '10000000000' + DdzFFzCqrht3VHwMWTC2qwUy1uH3zQkCnHkX4XcJyiVU3YwQPWGMHxFGnNR6PPemgjWBvwPfAfNfypxbLhmJuR34ph8vVszVCMquLcv2: '10000000000' + DdzFFzCqrhsmrxwxYLr4FesY4abQ6wYeYDbAn13teGi6gLcU1dsZD6uzvzF2QmGuBvmpyF2S7uotax69TzX7w2k95A9yf1FkBihYLEfE: '10000000000' + DdzFFzCqrhtCNu3fevJ5tbxwWrk7nF8RZKwTwjtZgRtW5hZwACqRcfGe4xLVd6bXeJJxjhJi7ne3kKqtk7n2YkxM7CSEMDpDHuKUr2ya: '10000000000' + DdzFFzCqrhtCsJdwUCsoo7Hj2exyA3nEqPzicMH8va7xqkHmgMgHvtJxzg1MKM9ntjzzvBAsUuZ5ictd59CxEmJ3kiKNJ6HHvdaVN4qQ: '10000000000' + DdzFFzCqrhtAY1WSCqaYrrG3fKvyTM925RzwipCphUpekgSrDsjA4Ps7GJCqUjv37RjcyfKMQFfRQqrm142noSv4Gdwrzca1uFCEH4FN: '10000000000' + DdzFFzCqrhsmEBikbsSNrU69MjNcumTY4yeErzt2MfNms3cEKNVJBU8cTDPoDwsZD2CUE7W8bCfQDsH6N5HCvDkJr5f3ZgeRbMyuiAZZ: '10000000000' + DdzFFzCqrhsuNnToiZ163uiiBWQBzjiMVugy17F1n27KzyCmB5AKewPyzWqEFWU9Jtoghnm6Jr5rXnU9c4WDoD236iKZHK4re67s9twj: '10000000000' + DdzFFzCqrhskns4CuEYywAcDBrWUU2mp3Gni2jkYUg8osrGKPyonz5oBNMMXicyWKiFpXDtearQHed2Z7qK19oNaezLKa8fAcjL6LGE7: '10000000000' + DdzFFzCqrhst5k9WRKnFRpUK9b2cznh5b7NRkUynwiJRec9wdiBbyP5PUVJfVXn47NFmwLcuMV4nLyShBVNpnSWbj2juRjquxvKwVq55: '10000000000' + DdzFFzCqrht7Un7iRMdZCjTZzxf29xKMiBLgs9YUyktmuk8qMwu6nSHQ5UUWf8k3VvP5NaY56XMJwnroswpJveV9T1YPpoEPLMnxS195: '10000000000' + DdzFFzCqrhtAzxVLejkpxfh56FXiBz5PCUF6Ea4LnNc5PC9uSSjss7RFMErLdNCDiETPq5m5ZL36Wdw2MSmmu37vmAzwikzNzuVVT9vh: '10000000000' + DdzFFzCqrhspAEmqDbk5XGWHD8FETFnoUAC7RNvBRnXZqnv4CusQ6oo9gKf5Z1hsiC5rnC6nzkwcE565ouA5MjGGJDD2JV4pqogJppwP: '10000000000' + DdzFFzCqrht7Xw9GSxcBzSrKpxYniA1x8gb2KrHDF67NMzhLMyj7q7RqZjdTFdoVMRrC667vxjfDWVb5NVMEmqTSv8R9yLPkRAoCZbtd: '10000000000' + DdzFFzCqrht8czQpERWB3T34hVP7V184HnUYsRR2U7tUYKvdrhrzswu9oFzNVz19ZFZy9tA44G8FmRmGrCCyxVeSLfxwqUQYMsHCB5UV: '10000000000' + DdzFFzCqrht8kukQRhwF8ZS51Ac6ZWiyBex4yevB1phtcwcmXCrEWHdJpKAVRpWrs2WpToK7YzHXVqRS5yCb7FdRotyNJ8Wb3QoZjA7p: '10000000000' + DdzFFzCqrhsrL2onj7RdwXZEBqgFpSHK2BcWx6DoDppJzd5Sszi938Ss3yiGnjH6jJVuPfTZ1m9QtxBPWQoFxdyoLjkt7gic5B1ZWdfN: '10000000000' + DdzFFzCqrhsvpQsmdyRD91kuqvtxhdWMGE6XUQQf3vo2hdxN9vJ2w5RHvqoUqycdLoEskLom6bQVo8YG9Ys8dG81ssD7gWm7WAzwgcG9: '10000000000' + DdzFFzCqrhtARo5aZWRwmgsHTGvQTUaMyNjcv6YRt2hRDebygBZcMBYuNwJNU8Vhtw9XuVy8cVR9fJQ4imXNAAxoETgmser875DtB7Qd: '10000000000' + DdzFFzCqrht2phxeuGkxu36gUTDtWX6GniKuANNFa9SxhEjajWtPzc5rumfvSbdLw4NQUyoxSNsqi3RhJedtCchERvp3chrJhFnjzTDr: '10000000000' + DdzFFzCqrht2cU4htvHMeBLiPgDDmLxopVi2Py14tmDhBfUYsZXTTsLs2Tjq9Ne5wUSQYHZWqE8n62GLQ2vgJ69jBCDpjZ7J321q3zWa: '10000000000' + DdzFFzCqrht1FjxeaiwrMp3vP38SrAuvB21Kmaar2TYEWapNG1qdsheXXzU3N5PWrt5ZRsHMuy8fzmAxtxX4Y82EXu85VJhG8SAEc61K: '10000000000' + DdzFFzCqrhsgR3ytMhHziYpg1sEG7cYzvicoHyd5kT9Mgi4nLzwc32fUCV7yMpSWcarAU31MtCurnpqFoSCVsabiBJ8A3HPvqGu7debf: '10000000000' + DdzFFzCqrht9UWFKQUrmHZggsWCvc58aoTPBNPRYNpEaxxY358ddRYF2YXXdRpPfbMdnf6hqqK3QRxhtTxiWUZVBMddKDGVE4CuEsXeL: '10000000000' + DdzFFzCqrhsgdRAMQ7JuP7jS8d7BukYHsjXK69FEpZAVquAJ5f3ksjNP69HjAdZufGp7Zfu6ieEwDBSSkxZTiHHWuL1uyJWVwH72okwa: '10000000000' + DdzFFzCqrhszNccp96SsQZxkzqMBSs5Fwgqjt8mWE9LVmAeCuj4Kw2SvywfgPA5gTU1KYCkZ3G8e4i4SvodXPnnJmMEEAybFe4HPBAPz: '10000000000' + DdzFFzCqrhsjMwjN9yzKfqxBsKBSf9wE4oH7JtcCfaPmugCyz7PGYNzRByA3vHxVA8RA8ud1mweqCyXqL3T6uNs7dSVCEQKFJmDYSJdX: '10000000000' + DdzFFzCqrhskPrKFx6rw4VbGzY6g1kq5K7MTPzJVvDXz7DDNMgb4KsiaDLGHXErTETyX9jHr1t6Jq16dnyDS72hRXTLapduf1JDYATYq: '10000000000' + DdzFFzCqrhtBGHMyjRhTdWkmVoTUPpbx3AUZiKG4C1ytVBUhmVutdXzcU9jcyUBwQ7hV2b9cZFrPh8bXZaEWUSWaV1atSEDwMjcwBD4i: '10000000000' + DdzFFzCqrhso56Q6MoLicTf3xniWQFDUKAGAsnMBXEhqLWzCtiDHE3tMvLu2YhRAdfKd2WF9jVj9zJcan3hvijgytcV2vsFqioZ9ryG3: '10000000000' + DdzFFzCqrhshTd4CpVK9NRWtcJ6A2qL11G4DG1A1eZ6yq73QvsbuccWVYrsZ4k2fu7qjsZjeher1FVQ3SpfgxkWV7fkjAHoKKmoUPiAD: '10000000000' + DdzFFzCqrhsoez4kAFHpDrUXeRfGoi7yxEwjRiiNAAuYpgtpRJSiAHytKyr6TvKgoYjKJsE2gzjVkemz2mUm9P7KBEHt1PpZrwFTJvEB: '10000000000' + DdzFFzCqrhtB5MddMzrtV3VMgzSu39iR7oNbJTUt4JcQbMNBHVpdHSn1UAMcS1Tg8CjryaSH9LjvReBLCMM6poEfUApkixb9uLeHfDST: '10000000000' + DdzFFzCqrht6WiMPLcU5QNGvN6HwqWYTZxyge5SMweQF1MK5zibCKqgQjh3gvLotSwKcYnZfupUUrTr7RYHBdrhrV99uJUyVJBDvDibb: '10000000000' + DdzFFzCqrhseumPpQeXsd85hrwrjVeiLd1xEn846veoYkTh9yiN5tu3v6tKzyRFAptZtTADaHcC4UmEkHMdwpBXHdNS3xccp2QPGbLYE: '10000000000' + DdzFFzCqrhspHH6gW2PeSjuZYiEYGZTB8kzt47bz4iaZpNWvVseZxRQKq9iRXLZ7hKAhBLJN1LjdaXmorucGgBwH3YAeQs2GU29HMD7x: '10000000000' + DdzFFzCqrhsqfET6V9bP9BFbqrfF8pPqW3yFu3yGi5fcpc8JsgTmkuAaKsRGMokSa7AGYGiTJpcbBiNYZc2rSkff8aECKHTR1ukryMjD: '10000000000' + DdzFFzCqrhskxbuAH9yagoekt4HoTnqFJfTvniwZLn7ZABjp336jTeQe1wRzw4ftoKRETNzmkfQ57fLqnLPh1ASHg6h8GL4xXPUGnXYA: '10000000000' + DdzFFzCqrhsxkiMYpysqZFwDESf5DuABcB6Lu6Ej99q9SF1y3xdVU2yzkQ22oigNudEW4GmEFHa28esrZvGszWRRGm2Qdo4WpakKWVUG: '10000000000' + DdzFFzCqrhsiKjmRFtZ9r4LcZGXnHB3kf3667wfDYYcoJ5kgmjdEQebF6DLdk8rf81ByPWXsbUSqohPHegdhdvH3nyagnvPd8JEzT9Q9: '10000000000' + DdzFFzCqrhsjKBHW3LGtau38Rjfc9zNJL9aGfDpryjpXPFeV8sKVRMDENaBJKDnnHmUMu64KXg7Xxvk7WkajUCA7ak1goaDTcc3SsnRn: '10000000000' + DdzFFzCqrhsp6YKqcPShov9twJSUVafhfLFS77XBtgcgybD4TnKXT1GnThaEVfSQvHhutjvwtxf2Ae9BaSvxbHvA8KXKkFsZsMnNvi2p: '10000000000' + DdzFFzCqrht5b8sXXzPzvsTayZyoy9VhREPe83n8pw5B5fDWBH79VL7XoVrcHsFzEKgaGD8wwFehEGNhzrrzqhe5XoN8F96AAu4d1Quh: '10000000000' + DdzFFzCqrht4UfD1oFbgrDDdB4HBGa6T19uqyWp5ukVeQH2fdsPNo1pfvHAnbr1WMvsjg4PpruGnBB3sXRH2pqc9NDEuPe1e7C1ryGVZ: '10000000000' + DdzFFzCqrht76xYGFRn9JWSbQoGr8nKeNGGopVaoWv67DzhbEhyZHSkoG34U7nVmNhPtx9gFyGFDjX3Vo3cw6DBFTWbhGggJmstrtv4C: '10000000000' + DdzFFzCqrht147RYeEX53ijQkdTP1r3JwYtXehUpuDzvkaey8BXQGECWycJojgMkzu2HxFMXwoHjds9ARnRNCS2WAhQuQqx6cTaxsJqW: '10000000000' + DdzFFzCqrhsvee3PjuwuWaiMt2vjhQzSWNk8PLKtqTsScTPeyT2qsFdGuFFiRhg3HacyeVJ8CWeNkyCbzKKrR5i9soVGidUYJjxyKrEB: '10000000000' + DdzFFzCqrht2hNoZusyjxGJPWQQzRw7QmmZL9DojQ9CSetv2EBot1XV1RaAwuECKsWEFtrwnLcfo6HzENqQAVk19B5gGgS3FcCqaYE1R: '10000000000' + DdzFFzCqrhsyuuABmjPmdAdLCpiA8J5W23uj9sJ1RQnM2D3TueQ3RFgk2EmsYxF8QUNA7E4vk4AAsaeD8W5PGGwyuHHCwG3R6bseVLT8: '10000000000' + DdzFFzCqrhsja25MAkqAEPQuTrNNiEPPwfKW5hUhbdN454iFuqtFF1uRN8VCsrKG7phPF1dKMLby5Z4SafstkEMSsAuk9uLUBkfAfGcV: '10000000000' + DdzFFzCqrht4grmqogVjdp6P5UTN6vfNotKuCFbPPT8Co1JKe7gAff9HuF9UmLzpypsdyXjrq98QV64WhMk8q6RiHLwbMn29pevPVbLQ: '10000000000' + DdzFFzCqrht2W3CUCMMEGMopZbRxgqJvbAvRWdrZ3vB9nUh85jfAzbztUGuUdkAZiNPvUPaiYuUj3EW8JzGtPCzaAL2tNg8zwKtzbHJ9: '10000000000' + DdzFFzCqrhseT74HR7Pakfdxf1q5Ya9FwDLigiTXCd5HfM8VCnZ9CFc9PUL563X9uNK12s3oefuuhDFMZjGf95Q64QSyvs8iRUQjLCv4: '10000000000' + DdzFFzCqrhssY4kLW1s88sEfi7TXMUpCv4FBZ3NASyTy9nWmWo3xJiAUHTGvLZ9uYrMptCaJQMbvhKVW4xrYU55YjAx5iir6QTrdYEcM: '10000000000' + DdzFFzCqrhskr59V5PhsihPEYqXWETFohYVuqk6fZsFDmTzLpSe29dQeDNSq3BtGqDeq2TEyXgfR7cLGqyR3HjXU7ezCpHFE6PaPtbGm: '10000000000' + DdzFFzCqrhsga2K5TgrGWRdfLpBtq8TWiz6sSvvps4LXmpkzTvRVWMqhEeWbjTSiTemeoKLfZ7JgQXgYbv8yLghGcLG6avvytMTVQqyP: '10000000000' + DdzFFzCqrhspRn8umM8KUxVBXr897ub5nJWvBziV3CK7KZ3A66mfgHbAVGrFDg77LvYgLtPSoE4drkHfd82VPJfCD7uqRFSCpJNWPqdG: '10000000000' + DdzFFzCqrht22FgBsNMKLQzEz7e13vFgJnY9asRZadUHh8rsymAM1W87vigUGa1avr5odr7VeyPfPRWHSWdtvjB7ZSceFzmiYCfgRoum: '10000000000' + DdzFFzCqrhshLgMEWfa84iaiph568skVh7zso4b4NH25eCkQc2czA4DGCodrUoogffXiCcmYsojZ17V4QuVym3ExVedxzKCepPSpneoq: '10000000000' + DdzFFzCqrhsvq9SMVfQpuaEQutU2fSCpmNso66oQ3YUYh1BXoYpMa3nytjCeiTg2kFNuzAyQhFmvxofQvsxNpGjLCXE4tZ3r8MCXQqFJ: '10000000000' + DdzFFzCqrhstdybP394yYvpoD35cMQUycokeFaU7v4Z26QCokWhHHKvKtqqaiWSjVSvs7PbULLuMn7PnPKhKeJuL9F2Kv9D1LxUJTJ3g: '10000000000' + DdzFFzCqrht9oy8naJFg1wwKZU6RyKGrbm81iHtige2mf8FjwhorMzyf26KgLeQfMpK3To1eh6LYujnJuvCyUAuVPigrQJmz3zg9fJJc: '10000000000' + DdzFFzCqrhsfDgGE8DiieXTXs3KEMTUiyPM58xrhpXbDgrifB2TW5yjHb6jh74bZuqPxRiZabpvj1L87EycsRyxHGS1L1JHNTRQbh9Ty: '10000000000' + DdzFFzCqrht1wtyWjNuDqdbrXr2dJmpaKG1iWrq2waWemcjQN5GRLfdx4ZnDLXfVQh5ieNs5U48JeB2qSForfNq6ktn6eYYX7x6f9d3k: '10000000000' + DdzFFzCqrht2oCEfURAN5k3pfYme6VVafLaER4yHHk2KqxCZM53aWo7o73sfAwugGEnUJ1e9bYtgyHEf4UxVLhyrBhUC8rXnja1nL9qy: '10000000000' + DdzFFzCqrhsttvN5SYbR57HbjLCvKM9UMcEDGL5WYBcgjCSyRyqWcJUM2pkPtcddkTHNSmkwP3uc9Btvhg6zytPCQCr56eL1i7B53Wxo: '10000000000' + DdzFFzCqrhsjbKxuDaCwuoi3k8SsDVzD5zvjjsNLp9C9Yk5XjhPk8cTWYzErtStoXRwMfHKCkMADJWikXkXgY1CP2mc1UpDP5dPENwFc: '10000000000' + DdzFFzCqrhtCM1Ltqvxh8SYXje84FqXPZCF4rqaGrwe9cs2hHW7kEwA7uzoJuQaPM2Xy4SkNCqitrvC1ia8cZvANWABpYyKRq5mN8wze: '10000000000' + DdzFFzCqrhsfy25BFvQotnd6zMXaC9QqWSV7HJa1SBEHxkiQHR5zCwdp25Qg2Nd54kVLfmHxUFKEJF5y2dUkHCqz8r4aaW8rSDejSjYm: '10000000000' + DdzFFzCqrhsyT41UPeRUU2BQ2wMHUSJXniDJSiqdXvN8tesCiBuUMqfq3f21SaKPywqCHa2o2KyTBbfWD8uJ6M79YSR3xa4aaJDdqqFV: '10000000000' + DdzFFzCqrht6unWrSK4wMHnYzbKs9YAxmHf4JHLe98gKFiQJMzCFZ4qRRJijbdRYksxRvHMrrx9VpQXFMDrgKh1sr3NocHUbTVAWBc6q: '10000000000' + DdzFFzCqrht6jA7nTeiT7JkH4KMN6EbgDT2tPswWznLCHNonybtwWw987HbwrMYtXRC1spSiqqHf9zr38Tvu6ZjsFnfRGCSf5nAcNqAC: '10000000000' + DdzFFzCqrhtAzpaeQoSftdDk6V5GQFCUCMYrTUL7yzwDs2t44hVweXxMYyoUto827zmp1ndmMfCkqHuaDgozpCxZLpU1AiuxVmtj7dqA: '10000000000' + DdzFFzCqrht2k9HVcXroFyigNLF6q29rnUqc87iMjzULiR5MrJPFqZiG9NYqim3LY7oy3Vva4BEo1nLpj2XMDLgwztibF3HAVTmtqRxQ: '10000000000' + DdzFFzCqrhsoSWFixq4B1ZxGp5dJRwcCVaLxKysvEsvsFoUr4vn6XLDdMExA7QjPm7XZDtYD6NU5gmx4JSNxw4cazoLfZ4YD2YhTdAKF: '10000000000' + DdzFFzCqrhsnHGn6bzS4USh4SSWt7TGFRXvr6to2UgCAC1PdwL2myVoZ4jM5Y6jSDvTziyoDEbm37djUR1br9tEQr4prwzQMSHsEapxt: '10000000000' + DdzFFzCqrht4pnJkQx8bzwztv143duEYyKD9BaRjg8nugjMWpE671ZG8rnU3ArfqsHbdasu5Zv5rhfvgfmwEi1eyxXzNfE6YJewGyD3s: '10000000000' + DdzFFzCqrht8SmwQCteG63pBGLzrmL4LnSQfoZQmPsRgLjBSiKgnicwPjvufCYEbXVubU2V9Q1g1JaiCSwGxvhYiBTxuJ8FNe6MXTsVt: '10000000000' + DdzFFzCqrht51jL8MpYciemXat45wWv7LuqPS2dY3emJYVrWFFyBvCv8r5KVuTwKA58SkiV9eWmWXVrT3Dq2zjEAW8unSZACWCPnVZPN: '10000000000' + DdzFFzCqrhtCPHSeVrhQGwiSa1mcDyUPb45WdkaEqKTUkS1SxuKhxyikLVP8fN213a3UTrABSuWSy9PenEutVj6ceELEFjBmHJViQztg: '10000000000' + DdzFFzCqrhtCQsAPnNfZsYJ8k6hanrwrf813Lbgyz15VVLziFZjuWJiTPRatgKrzMQdwraKvk5aeShudVbeyqGSXtp98QygS5a7eXzd6: '10000000000' + DdzFFzCqrht93kyKopqa6JkJbiJTacgq16krUoE115dATgU1FPXT4xmNc87TH4AtUgrrzFPvGkDzqtuz4L2eqb3fupBGFciy72Mwcucc: '10000000000' + DdzFFzCqrhsvso1dAhgEyJRGRrJDTTyBkhy281rX2166ywShZ1WG1Waok6xsJ6jBUwaH1QbMQbKYAArLhgpnLtgV6mqTwQD9nQvW11Fq: '10000000000' + DdzFFzCqrhshBx8veya32mipNzcFbMhgg3GAN4D2TfGf1gim49PSywrFWUsoGFcC3Uv1MYfh8tzsuTxKbxNVQEUbpKDv7ajXB6wLJkn7: '10000000000' + DdzFFzCqrhsz8UJE4nmYQtUnzU67kKzwq9AfLEG1eMc6KwNschhS1kr1BozeUwrsFtFxrquomCQt1SuUScnZv6xfJUk3GbHwXa4de8Cj: '10000000000' + DdzFFzCqrht1XrU8iDYgEKDxvBgWefRFc3fyiPRDxkKkJTBVkHKnqbfRGuAmKHJRdNEg7hdfYz5JtLYF4LhyFsSF8DJ9XEzae2qcZCso: '10000000000' + DdzFFzCqrhsnnRfpwZcmMViPBXekT1EgWLu5M6GR8uLBaizjLArHs55sw4zUrN5sAUNcYKqDBjL39bnfFbTD53iJKi7bHTgEpLrGJDuP: '10000000000' + DdzFFzCqrhsrofPrkxdJ2LyYnZoHfqrUdRGd8S8d1VJDePGJuYRK57Rz4dXcFNyCfAgwdJrNFzbgde5FT7XduZ7SrcjGeD6JQHr7Y3Hh: '10000000000' + DdzFFzCqrhsitf8wPy6UToPsP7wRysPMCb4ZroiuaTsYCcDcU3VEeCvR5muVw83GyzjX6PiPVKC43k96o78Rqi1EQRrQqfQGRUzsmNzd: '10000000000' + DdzFFzCqrhsrdxLCMeLWbKpg2kNK7nxHPc7Lo6pCkGRxSWdCr3ZQ3iru1TzJms1fyaDhDyrmkWHgPQahc39fWuNvBZgxxgxT8PsoV5Sa: '10000000000' + DdzFFzCqrhsm1dFRtiJ3mCP7ymy1XLTtf42egGdNJcPKMuzNQYytvvAq3BYVFaxzjypq6kpJnXRqBHmfY7KD1TUzjmYSe6DkxFioAgHw: '10000000000' + DdzFFzCqrht3UpUBseRATusNQNzqCU2dW43A8efBaBiuNsStxL36LgmMSRWhk3LAavKXXtav4Sa6mskHS6cSkr1xsAJCKVdGUKScpJW6: '10000000000' + DdzFFzCqrht9EDG89L7nL5xRa837Bzgd8ZNzWgyVZ6aQaDDubRhaCkZuCvrDT8yJSKcgerCPeZVcbep3Q9PAUL8RpuBjshzRQmhcaHCL: '10000000000' + DdzFFzCqrhtAZnJW1BygFYjQ4VFcvrhM1D188zNLCAVKctbpPURKrzB21gpQCUZqh5EoUAFbPGjTggmRqwTmY1Cwrk6pbQQgNJgZGpC3: '10000000000' + DdzFFzCqrhsikNDceYgYHAkWxuZKGLHtzhppTbh4JP6Z3NoRAJCTsLt6GPMz24J43bVxzUswtxYP6J8RHKP8yXwsLhMRfNfheSGiciR7: '10000000000' + DdzFFzCqrhsneHieee8wG7MV88xECMametFmnqqfgRK6UUc3WdXPBTc7zB2sz5dFcsgXQVeyARYCb1KTCMxQz5QnBEhF198hGWKcCuG1: '10000000000' + DdzFFzCqrhsgLXb6P8bdZZrPMYAobcQ2YtTdWRGVGkggW1mgtQqBZYn8wCxGqqbTmf5yFWAAXWvAw8FbLWUVKuNDcobBFY2wEHhYqdRG: '10000000000' + DdzFFzCqrhshK8w7NS3VwDXujDhyBNWCBVbTCBxXmrrxiWdpPQcfyHARb12JHXT8ZxjQ2jGZb657GfjniM7b7UgxirhHtpjF4BfSSrJf: '10000000000' + DdzFFzCqrht1rvbLnJ6wTDeTrkmhecufGuKz2c2FcNW7XqvknouWidJBuggDiYktq39i4LRUYjygdsjjmDHj3NPYWz5Wd57XA8n4sjjj: '10000000000' + DdzFFzCqrhsoYGPs5CBAZd9erisJJcy9ppqtFVxP86VYzqMTuSWSzEbQFdmP6X9LxEJ2Rg37rG6PDvuV4NPKaTx7EAabzUabjFUyTACb: '10000000000' + DdzFFzCqrht8Hx66mQdCm7mbdWHATNsAbRxn7Gvu4NSF9QCDmxiujhZcdZTWBZ6QSWMEB8zeBWe3v4JWJ6fb7ygY78UALHbyY6iUwxV2: '10000000000' + DdzFFzCqrhsfCUG4oGS7zjViF1Kq5i6R2tMUg24M9otSjbdFvniQ2DQEEEZjAQ3ajg7zMf4JJNdTGFQd3gWnVMEzi1d3EArqjsqi2S8E: '10000000000' + DdzFFzCqrhshMjK4UKScLNrirHEFoG947jyp6E7nAmLNXz9DM8UPC4AGeAzDRpVrwSMJj5aXXuh6CGYosAZG7ydm5ag62Cei1v8wVFQq: '10000000000' + DdzFFzCqrhsvikunnuxVpA5xNMoGVEEQY8i9ehdipCoQmxxC4sU5wbXxv9DvEQX1dhpRYuXVFca6V4didAT6QTVmZRGSSrtHT462gyxE: '10000000000' + DdzFFzCqrhsfpMvF4abFootCnqqGZTZLUGTUG1L3vMzZAeHKkB8Rs8b9iwer8zB6tcnsHXRLgenbdoV9CsV2bS7SjvxS6DdA3Rc9GJz3: '10000000000' + DdzFFzCqrhsq7ARArA1xzq5GhM9eytxFGX8hHybBg1zYuxjy5GVR1aK3QjrYXqqehr5TVLyPSfLNLSU9JL6GeHchYFdZP8NkLmUqnCkS: '10000000000' + DdzFFzCqrhseQ5wfpYVXPdDyKnCNaRx8n9BJ1jz8V1hJ6E7B3pXQMJgyhzuAHfzc61v3F7Fw94QcsELdLGBbv5K7qHRKYfgDcp8Foqx4: '10000000000' + DdzFFzCqrhsfsnw3pX9vTEuuJSfNpvhxZFXkSAtVMNxpqJocpgC588E1LPpBFsaZMBjmhVaU7tR4ieXkJhR9unhiyqkgffio71mRzhey: '10000000000' + DdzFFzCqrhsr15mNYiBhT8JDrPMJnsbjvSJmgyJDfvruMqkfF9pKKZ6hfyeNAW3NKtqT764muqKjqjzepJQwLE5bx6oJn7UmbTL8FRZE: '10000000000' + DdzFFzCqrhswjvnrbemRkNQRNTQT3rUDhScuNxVGsPpomZC7oc1guLiMFj7wupJiyDkfHqJq1fQSDFptPEkFuywLYgZxjK3L4CsWdjUZ: '10000000000' + DdzFFzCqrhsi7C5wvHSrewFeqh9DWKtL4EEtFmdyiHPoxkUz9Yo4XUQGVkQXsP1UaepoRNM6grQvj8syBgqRq8T6cozavgXQQrFzUwUk: '10000000000' + DdzFFzCqrhsk7aBFn9e6N4PZTGmA5U4onA3Ug3WJP36hpHZ8qHK29N3itSHGi59NZJ2SN44B8JEBwBp9PHsn8fyi15RTGUeegDEqBtq1: '10000000000' + DdzFFzCqrhsjvvGJeLuQZYrU3e9BGQq2xi2qTJoQdW5dC2QFDVAeSHJV4C58zQaEuRgZcnQLkymgvzfnmrpTtwhFjcNPd9K1PzbRM7Te: '10000000000' + DdzFFzCqrhsgdF5ewqKgZoefu8hYJ1NMkhrdszu71f7xKSGoQoox7PZFYs78GHuM3Q9sNiRSGZqArVLie9Gd3aS4pL9sD9ZJu9t8tBZV: '10000000000' + DdzFFzCqrht4pxhAijfxNNb8LiDjL5ut6LjvMRHyErYRc3ttfpBZRCoWJR5Yb5WTQTN3GXVRBhh6rBKm8H29AHvkvaif57pWNq7f8QNp: '10000000000' + DdzFFzCqrhtBWFa8BNP9TUVCAncfKs6Qh81RiYDwohQrKkaEGDBJYDap9FDgWK8FmksxpXBX4f8oag8i3V5PKC5kiFvggeT5euyJi2i7: '10000000000' + DdzFFzCqrht8vj34iTcz4CixanAkgudw2xeFaSW4wSf5pimtSMXdBA5bhshJ9xPKddPyUj6Wk9uigEMiuQWPYBjmKm3QdQHAPUfqEvjx: '10000000000' + DdzFFzCqrhsvGMTrYTi9FZoysTZcziExju3Srq58zwsPWxkbabCM1Cqa5JY8m4pEEj5tjneMtK8RPUxYTHkDKSv4mkWtDwWk9h8daUhr: '10000000000' + DdzFFzCqrhtAPDcnp5dLfw7DnPDSmH1c7ESSDEhnA9UpZgC7bH1jBfMbCUEYt5kHaTNRGXV8uMmCiPTRpP6pvnyjeqov7NjQkhJsdFya: '10000000000' + DdzFFzCqrhsecVteqJ6rfrHryNKEfJ1hfTA5wB9PHe1ny6Re895knu4ESKUMUq7KWqth3NTH843DpUAiTuv89SZcHGBJKTN46i5auXBJ: '10000000000' + DdzFFzCqrht6nBMK9KR8dpqLhAM52F3RCXVg1rN3GqKpS6SJmnTUEkfbE1wpE3QUcUvDpsuDz6saj3QX4oNWfj2xXBHsNEnYvEFPPgP1: '10000000000' + DdzFFzCqrhsuKMys2Mh73eYpLjbSv3AYrR9iuPNWEEuJLHsDATynafibZMBXXuA6D7rhdAzcfxrdwTWHBp5uJS5NyudhX5YvubQrQBT5: '10000000000' + DdzFFzCqrhsho3PU9uewV1wcVqbcjjYeWJUb9cC4MFcNPSpnQ6DuXmDNYRUJqTCHj5ZRJVzvyaGV8aNuNT2dba1QKoagyQEU5AVgzDdu: '10000000000' + DdzFFzCqrht8CYde41pumpqH8ATqC3V2UuBzPthLvuxyp9Z2oM8iHr8Uuedb3sDjAaf9cGQULffMdwnwqLwE2CSQUk9xbfeTnn74bBeD: '10000000000' + DdzFFzCqrhtA8S17spuytNxR1mv4Wh6MV5fFTEFWMP5NfSBDLuVmzvcobNa1LtsWv2A2EwKsn6EdfqdRtaxLiK6Z8yUpG7p78xTPn9p5: '10000000000' + DdzFFzCqrhsjGqV5p7N7ViTUdZ3zLw1TNsF4KkhbtVqqhFfTBxmKsodHzSz29X8KgnNPDdPu86g2qzWa3TfTcthNE4fqbKA7KvKeCSiE: '10000000000' + DdzFFzCqrhsvd37ZutmSWHe4MgNNDuuDMGVEgb7XBG9MkUnHBTPwvmZVfPZCQsMjDf1BMqFjVaJL5fH1sXC44B7TonUny86mbhXS7j3Q: '10000000000' + DdzFFzCqrhsf8vUNgN8sR1xhkBuMZrPcpxVJeU36edc2yhxRzvReTGCzhEJEERRvhNPSvtrzf5bVQZkTpdF7LJznPx44MBkSmp3sGDHV: '10000000000' + DdzFFzCqrhspw9dD3yHYECAqmamru9b4fNdMiQxBoB2FLRaVrVVC51LxTchE9nxq1XvvbjM9mY3fQwBTLkNt3Qi37q3H4vqqkc6nvi9H: '10000000000' + DdzFFzCqrhsvaG798uncErvGtbk12Y3SwYqunB1dZ9Zob3r1N4BkPxrXG3cgri6ddQoEYbtzW6ZpGhz2pZt7mXMseZDTTJHGBfwQQNW6: '10000000000' + DdzFFzCqrht9B8Q6p4LYDs3MitMyC3NzxUWshQHmBhZXDBrNzmRRk9xJmcw4Q2oNfAmbNiSX1zUDGWXc47suSMKaTH7fpQUWPjw3VhQt: '10000000000' + DdzFFzCqrhspDPBJXM22dRKbQSa1P6RqPm8E4QCwsgSXNTdmVCmykt2xCBtjp8Z61McvBWGR3ntsntxHNSQCkntYfFHFr7izD4eEVCw2: '10000000000' + DdzFFzCqrhsqWBezj3c1aT6tVzHJKJfFsuTXV5RNzCuQ11bR585jCLgz1BfwCG1U2BBJSZtQ8UxLSW8SpMwnVrvUjahbFnAy4vVM1XM4: '10000000000' + DdzFFzCqrht7KBByL6LVBYdyqMeuhJpuQasfQY9eRidhLqQ5x1oKvABdqgPpvbqfqgM2ALCufi31qJRHsWR3Y2ADNe5h7SLyPGRyJH1e: '10000000000' + DdzFFzCqrhtBNdqwfmYpDnrR8TpzgSeyUrviMj27RhzKrBskqaLphpaBkHNe2qhB43p1TgkNHa56Sa8RFRPpuAsqwQLXZFh74gqJAozS: '10000000000' + DdzFFzCqrhsi3wBPawwQrsu9erKoxqZeVsiHcKQTV15SUXvxcmvDevWM5A5k5UwbJizfxCCp3FBns3tsCwSagpXUP1En8UVvXdUwMibB: '10000000000' + DdzFFzCqrhseKSAbSy9gtkd3U8pwg5eTmaokXYN4rBUJhUtz3PJ6vPiMdLrkX5eerchXQCsHc68QEjaNg27NcgRwJ7Xj2ijr7VR8AZLv: '10000000000' + DdzFFzCqrhsik4ct93Gm9L8oVvJVasEaefrQKtgv2214i9oQqXnCFgRrLsGgJMvyxrg8zqpQnm6dz1ktBAC9cmTqPhoXBcgnddrofVBv: '10000000000' + DdzFFzCqrht4RikzEYS7VAWQmhDUXYGFaUtrBeR9SXSotEn4rFHnk6iB4kit3oAnHHwocmH3CkeRiVW1Ek6wg2dhKoe97tDX5sJwd5iv: '10000000000' + DdzFFzCqrhsoGuX4giemBGZCqidjDvaJci4FQTdkhKoyEpjAsjdRq2UmDf5KddeugzoQtU38PDqFEmowDZoyq8NpxKbR9GRLLZ2EiQwQ: '10000000000' + DdzFFzCqrhsuafWiUBoqLiRtvicCxUGjaFjCnBs8qG9ghxyRDd75KjndNAvNxs1diLLorheN6k9azFKcssZL9yrccysgmNYn42TrLhLM: '10000000000' + DdzFFzCqrht5E9ycEhjoAqPy3Rbn1RbDwPwQ6oadwqs631ySreScHSmzWKMfQEFpJ9yZoqeenViDMa9FJCYxvUpyM1CAZ8EWAViL56jw: '10000000000' + DdzFFzCqrhsf3KZvkpc18GgUjEZpWeCezNMdCpYVWzFEvhtnc3ofkTWvhtwk3BFWDmSZJTmwdGTRHHQyTVv9z3hZL9zsPPBuwFbQp7rv: '10000000000' + DdzFFzCqrhtBymcjBernduecHeRE5jL3crCWYb63DEu6uhKckg3tUdjv6J87GMDbPAcBgNGhw5KwpNRDQ1zsdDVKpjwhUeoiPtF4iSY2: '10000000000' + DdzFFzCqrhtB5K8KFPfrziDJQdn6dRrsAF2WAsypwHYMgyfkTMVuGiG2wDpMADgXxHGkDAABSx9Qf8zZr9s4JZrAvawASvZuPN5wEWdi: '10000000000' + DdzFFzCqrhtBQ9uJb3SJKTEUxozZUZderwG7PMoVkL1bSoBbkCZ3mfuVHtGemXZxkQbKEg7eU8ArEAtMSbk2HfRWycHY3hsXchnyTpPd: '10000000000' + DdzFFzCqrht8KddSbpWJWgQTG6gsCQXWmyi1dnRA9k58P29myQjErgoSazFf4xMUJ5HC6ZXE3A8Ef8gz4DkE2iLjLJiKp2JGohUU2RCb: '10000000000' + DdzFFzCqrht4Z7oVMF5FAbZFENnhUGo8HDwi3AtvBCewoAMguJMcusj2xkZ1G2KNaeN7e62vi8gbKcaURc7jVPHf3DK6N8gwA2rbyhBn: '10000000000' + DdzFFzCqrhsqdbMLcwq1ir9ttKk8QDJBuJbPzCGtCifRuq23K1k9KpkrdbuRWmsUb1nHJwHvEsECHf2Vo34cem7geb8nVemDuGzMUTJ7: '10000000000' + DdzFFzCqrht7U2Eys87vsZYbYwRTtjWvc1drULS4pk19QE4duecG8bKN9qPT92P4rkahCtr6MJj2zPk95aSN4f49HPd98KPxFtdTVKnS: '10000000000' + DdzFFzCqrht8eBsZcMSjVMXA9MPMzAqawGyBc73TkjzH53mNTF9zfyHUHPhZibmJSCjF2LY3w2XrQxZ7F3fKoKuH5BuKfhjRwx6eRMk1: '10000000000' + DdzFFzCqrhsdnRDN6ZLyNSzmdd59Esn2htSY2zqRZWkBEh2zA2vpkrXmWUb4RqPjSqPk4ccZHuJBZTN36gGk2HzQSVHKc1KzAv5yunhT: '10000000000' + DdzFFzCqrht6GTRsyLJdyHAUCnESamUmnvjncurQ6zd8U1vgt3tvkXFVntpLEynDi78sLZKpJVp9oGmmtKYhkTHDqdzEXi6JYqmiSSda: '10000000000' + DdzFFzCqrhsfB9FNhwvC9KEquS4eFQiVUpXdGrL4krwkXmQ49VszbYd7S3DJmSurHTozCjRCRyvsUn5TbRg5vK6Wod8em2YBum9a83pA: '10000000000' + DdzFFzCqrhsn3M1bzAvqPqA8yw9thMh3639y2c5iFR8aLvdAhKr1EhRFHY1ygjSz1PdEbmgs3Pn2ks1pep8qE2AkYbPXz71yEFyGq5Jk: '10000000000' + DdzFFzCqrht74ptLRT3UDR7refaNqtDFUe338o2FwgrDsYKYEhiUZaBALNm1xLxxh6iSrDGQkgYb1VtgCZkBGyekLSE2ebnXLEZ7mU8D: '10000000000' + DdzFFzCqrhsgXGomhLSrPnrezNzHAknpjuaWEgKVscbdM1JQepwEhap9CcLzqr96eBU6rfsxmJbDKjCjNNXy3pXmoS8494EFJnkZQa6j: '10000000000' + DdzFFzCqrhtDFEzUa2PcLpHQVQEjuytjfUC9WAGUkjtYnd5nCprVTmKfxhzhJd1jRkVh3aFALRBNgmf9pYKXoLvKe79x91UKCuPKz9xV: '10000000000' + DdzFFzCqrhsmhDuzuLRjzVQpnhTPy8d5Sv7SwhpuNqfctRotUu8tDS7d9ioBif66FBVDpNXdCpb82Zt3eZhvrzmER6wjCzLGQkpmmfYJ: '10000000000' + DdzFFzCqrhsmbgdPRJi2kNgjYELYFGC9jspHRezXXo5Ka9Zb5fvqAqaJdGSJcTnocRyURjHRbrW8pDv5C4h8AJoL6QeZ2R2ykH7YLvKu: '10000000000' + DdzFFzCqrht13CTSxXhUTBdqcm9PankB4vCbkPhK71tobVwkTn66TbQG4gCH5JPjiQJabxtfNWBjzJJFiAoZTeaiZvYqD5PbsHbnf2X5: '10000000000' + DdzFFzCqrht3T4RYwMSyioK8LWEMTSyxWngY51Et2Grj478dxeZbsqXtSbaawjJHz7xNMknuff9Evoyj5JAqdm7g3txwyzYmq1fi9HRn: '10000000000' + DdzFFzCqrht32VWaHYHhBpeA1freMs4Z3eXfoHNz6qrGHQwqQRPPprrj9gvECqTbS8TueJwsEbUvzXJZYpLBSBSxSH5bAphxvc9eTwrK: '10000000000' + DdzFFzCqrhsr1J4rtwSn72XjUPbKKHTbvm9hxuWqEm5jsojSiY1DNH1bpMmvoVRv6c19Sz5dCxbtF5XAn8ueF1617LD3NErxjRNbxc75: '10000000000' + DdzFFzCqrht7wF5KB4S7siCWk4izz3UJRnymjQBdPeaYp5utMdEUGM99DRkgharYPURB9cLtv3oWKG3DeCXELtCF5DpdhXQBv4Kv4Cir: '10000000000' + DdzFFzCqrhtAiKwbcUajTmuwa8hLyqJHgEioAK4iKyAaQrUGnKUdYVtrz7j83i8R5dXoPwLybYtin4twFEd7mPJCR5qKhu6uBJvKDxbh: '10000000000' + DdzFFzCqrhsthrBjqKzNbTkUdD1SoMNvVvf4cNN6Gh4u7uwcHJjHL2QzG5WEcekmuN6bgWa9y2eYombrMoaNRnhzknQyoURvgzTjVi8K: '10000000000' + DdzFFzCqrhtD22TCjJS1kdhcqeNSaCi5Kvb5Lvu2S7YWRSHAVaQ5SihumEfoMKkrfbqmS5iqHqBPFmh4stq9etTr5AodqWNtHMmTJZoR: '10000000000' + DdzFFzCqrhsyguE6CN59zezKjDFC1jSoCQDvn5g6q9EFXmrKdzFXWzV1pARV36XDTbDNQYSz5EFYEtCJZFGoezhMPDq8pkzeYMgWZeEa: '10000000000' + DdzFFzCqrhsnDM5SaEoP8yDF5wi2XAw2KLqYd5RzsUA2JEVr7KqTTQ2NVd43EC7mS93EZC5NycW1zrghHQLWvparLyafAyYNqnhwYEHF: '10000000000' + DdzFFzCqrhssVDCDxgZTPgPD3Y9WSLuqyfXRCSPqzkxtvFf77JDLMqhQDVHmz9r9fYryBMvg4b6MS58Cg9uz8tFtyZzwwQBNfAuJxqck: '10000000000' + DdzFFzCqrhsedHfrifMgyVUSVLgPW8N1QJQK3kfkRGSw68bNLcsp7TA8t2taoABwp2Uvdis2ssSfBq5k31GLf88HveRnKcg6YZ3j9iKU: '10000000000' + DdzFFzCqrhsnUZtisuaEMZvtT4PWPhhb7aSjTPSDf1QndHzcxAMBr97GrQXK95y4Bqmi82Tt1boVJAxURkBaeMsp3MPueNjizoF6s6iE: '10000000000' + DdzFFzCqrhsntNHzA9Ma6rtKWPQuHekuDB1rYu5aaKAvd5x1aiXouHipe9RDgdwKJQjo5rK3ErgZYrbiBP2yRErsqCRP8vURxHCTqx3k: '10000000000' + DdzFFzCqrhsqVUG4obH7CNynkBUoonCoAd4oVE4mSwixpjKjG4oWaHa5qTfvEjDitJ1wGYv8Mo7AW5GMFpp7JQSzjsav1bAE6jNoYfKs: '10000000000' + DdzFFzCqrhsjodeFggviQ3JoPgQ39buiwdQkk6bM9ik86PiKk2EyGTACCwdjqUyGHshqvteaZxuCyD1uQ2YXHyhjRxg7WYsNr39Bdbfp: '10000000000' + DdzFFzCqrht5MricGnFpFgPHaf1BeFcJ5v6aNAgXwi8jncyUy7ovcWNhUczguEinDYa2EpNtNa7VkHRdZurPhyNdgvF7tJjqeaPc4X7z: '10000000000' + DdzFFzCqrhsvr5Z5UhsAr74ZoWag4QhcGZ55vWqBtVkMDQy6pg12EEBhtEtzdCcXysP636unS78w46fmh9MwHJBNRd3s8AVMx5LyBGGi: '10000000000' + DdzFFzCqrhtCCWEGVB24pahVkjtBiUA8xhS9xqGj2YLjUnCW7iPs9zSHHEkdHiSvZzXq7dTD2U44tKSvxTTRpoUenC2PQ4g8dk1ggQkD: '10000000000' + DdzFFzCqrhtA4DvzBfGinwyYDH3djyYM3tNHkMxcvGVWL3uXxBMwNDaA18rq9aVGtgRBexG6uZ48xDDq1A5avKvFm1NwMZAJBsJ8dcpV: '10000000000' + DdzFFzCqrht3rxvH6rwC2rEHaUbtLebTe5RpgEjXB58owS6aqLpN6xmRg2gSKK5jT3m1taraaUMPDDngmG41K6BSazRheX5y429vJvpM: '10000000000' + DdzFFzCqrhsfXCNd1rPcDJFDSJf35aEY87T5gyNSbuem4zQZhLH1UxTATwa5Z3Yk2ojPjp5AmFAXFJDTuyncSnBd8ssTxjaEhcsRDjw2: '10000000000' + DdzFFzCqrht2kWBbE1yLNHVLGNdP6UWDqSg2U4GfSsn3TRJy6NS2FpggHmn1Az4E4GJcC4u6REJPVXtjptobb2UG6FKf3sf7w9yjwvJ6: '10000000000' + DdzFFzCqrhsiavT7TLS6sbVyn7xDedyQ4iKk3RuK8U53YLfDgdnMvuEjLhKTjjDRj8mwZ4GxxDGjkS3MXgqBmKK4oqwfnETYyVwN8Te3: '10000000000' + DdzFFzCqrht35KEh6KPSep1NAngHuaHqTrzDdJKrqwbM2buY9hNAzgaTw2onsr7Kyu6HkjhTpnft9NyywxzMwj6XUfSJeR3Ccib25hU6: '10000000000' + DdzFFzCqrhtBSroBoZ8ini2Sen7AAL5he7wefqUoF5oJZkrLRh87wiwXHHQRaQbwNT6CQN21TFwicLsLey2m4KXb5TKaCKAqx8cd2SrY: '10000000000' + DdzFFzCqrhssVuNLJYnqs2pk9cgoExcvymaijVmSQgWf8MDydSjr2tzKfycsH9jS2DuHWRQ2wr6pwecmMpMkLsb3p44kGT1QCm4S6pjY: '10000000000' + DdzFFzCqrhstzym611BFyakKbgCGjKTchb7eq5sPAPeZ5zAWe8MWQ8aCBUh75Bze2kuMzDMKoJbXCBBGiM8CfrjNf1RDf5uoxkcUBwHY: '10000000000' + DdzFFzCqrhtDB6tRV1PZhemDS3mrdKKLFGBXCsbxo7HJVyHJ9ei62hmcna6vwYGt3yd9sxrSTFJ9Mpkg7YtDQxKUETzXqnXy5y9CH2nc: '10000000000' + DdzFFzCqrht9FJbc2WiLVBt5WTh58t3SqZiQsiHjMzyHqqxQtBYvamG2XvCY1HMDVBNpNk3wdpAkwZmAuZn4GDUa7m6mPawntkqD8oMW: '10000000000' + DdzFFzCqrhsue2UvhSTVXFmQ4PkLAtz2BsTuxGZ8BMbtW7eau2BAGEXabyxeZHnp2QyH4JPRwJgxTUacGJ7yFpLjsKuLT183AKjceZsx: '10000000000' + DdzFFzCqrht27bMfZ8MJgTGwvbNq1uUwk5AUoRnvRE9VTso7QeZ8jP8tzoLhcrvjWsUYjAb6nR2zHaUxGcVVzUZoDDXM3b4nZU5SqwzV: '10000000000' + DdzFFzCqrhsfvWA3swTGsSyeTPrNNPQ2tyGz2cvzDWN7DTHpw2DesCF45YMRvczHckzYC5GjF56WiPn27mStLnwkyVRaxREbCdPZ6sqn: '10000000000' + DdzFFzCqrht17CyjGf1iGd4C93BWmvUUQPiUUV6uxnHpP5t25WSShWuGTnGNqt54mtsNnE4nyH1jUPjM7mTRz7bVzoMnLkLJ6XPiacp7: '10000000000' + DdzFFzCqrht4yMWp8VKn3wZfrBe6cZrzwuuPePBjtn3YjWNUe8dLKrE5B8djoGK6pVHwtaYKcZGsLcsyYTVE1REmu23gbWtRDFvKih3b: '10000000000' + DdzFFzCqrhtC3SSYgNQgXwg6pUBoVWtKdLCHUJA9sjmAeNMBT8o5wwUUuJCA1h2FEaUXMC6PoH7VS6SkREgmh2r9x3JweWGDUqC8WZnP: '10000000000' + DdzFFzCqrhszHozdh7ExhGLkTnc8bHzDFC5FwLEFBADTH7sLSLmKZBo5kKsDZzRdkyh4XmN3EsBkXMAszHfpMfAehj87W6hdPo28evAD: '10000000000' + DdzFFzCqrhsiupnwzg2dtkY3PVApcTg4Fzt5K8naJrrbkQrbYZ4XSiR7bvPW1kTZrR1kGDSTW3VqWr3pGSqRUn6k4s8mzFY6Ciw2H8Qe: '10000000000' + DdzFFzCqrhsnu5yxMyympCi6Xu5UiA9BMdf7N1RZ5rZidknBSKVBdkfSvP16KqbeuG3yxYvcsmDtSQb28P2TQnRzKPXQqvkhzMpcC4b8: '10000000000' + DdzFFzCqrhshTHrbfbxQ77EXcWnpiNvTgJEthxwJMDhfbCGxzPAaPrqLikn7kFT7FpNFHWyJTZCFpjz2NM2b6ELZH5ebKRFtCuFSytej: '10000000000' + DdzFFzCqrhsufFwxJGXf3ifThZvCSEF7dTEoqbmNABaosiFXpuDnRpY6wTWnWbJD5w3duPSeiJ869W5AySG6u77qKVSY8fsuGMXmJtC1: '10000000000' + DdzFFzCqrhsmBa6F4hZPLmbs2uPrhFHAAyiB4Zabh5KybAeMUf2QeWdWG5VwCd7tGtG4fFeWmTgN5ZfXDxdaV3XSe8xF4hjfpS2fAPoF: '10000000000' + DdzFFzCqrhswf8E7muMq2hWCq7bp6eZYp7zAeJZ5K3qz143ffknzU8ASPsL4dbPqTgnfQQ8evqGXwQmmAwasK1Qa8Dd2fEpFiUXU62As: '10000000000' + DdzFFzCqrhspYHyNvWJpEiCRNQtKNfVPxXngLatdktZkrG275Rw9cCog2qa4BtwsjcTjznjn6DZLWVkHaX2wRxe2ux6w5L1jMLhmPCar: '10000000000' + DdzFFzCqrhszHY9RnrwohyWQwh2nBZxtS9HSmPMmGHWEAdHa7yjAaHhvBYiKq8LHPmtWiPd3RmP8KaYNeA26nwqFhrWrpB3sHVPCdVCE: '10000000000' + DdzFFzCqrht2CjwUvdyhtaEfCpkWYtMvMUCbfWyFtNh2K4k2ZKPtnx6ttybVLKssa6RK2jdA8xW6DvYmT5aaomZYJHmyweBpHbthwBaz: '10000000000' + DdzFFzCqrhszuqMAoRFdhCT6JEjtXw9BW2RvenicjaA8Efd4WKWmRzbJudEiEmAXsFo19z7FFy3ZLkJP7JyuryfoQxXm6phQZysUrNAZ: '10000000000' + DdzFFzCqrhsqZAnQvqhGYDToPT5igTbrJoRoEL17cpEzdFUrLyb2UygQzsvbwhV6oNtbVTmyn1BJmo5xcidFmKQfwFVzZgxE653yGLF4: '10000000000' + DdzFFzCqrhsm1aZZ2UVgDBF3jtUpRKaWtYFSVzrnCywduAk15MGrp7z12zqGD57xxGgwXTqvFwpQCRsFZs8aduB8PgwvAfKFJ9K9bc8C: '10000000000' + DdzFFzCqrht1CtQ699FnjddzwQeot8jWkrSWJPjs26rE2295kpzvhFmSMzjBsWySVNrhMRHVXN53CfmuWMs523J9htfkzvhazDDgoBk6: '10000000000' + DdzFFzCqrht2dX88v2WiqHxjD6Tj4s9QzcS7CQVCHQBANyX9X62dzcfFwJ8jd2iMkMa6HUNWMxdDDcxag1skioC2TgjASwQkdWeHkZoz: '10000000000' + DdzFFzCqrht5tRXazUozUnXxkYSaGNVj7P3x5yuWenKcis316ZypGgYprNrvFDQnD93Wprv9qhrQEns4qktdsGvDTzcdUPpcCtDEoVT1: '10000000000' + DdzFFzCqrht2HzGmmJDG5Vmudu25cuCFnKkd8sNLurug17WM7gr9qKVpdkLTvUwGkqztKagJyHnTs4CTgrAQM2Gr4kr8HP4o3y9kLVpi: '10000000000' + DdzFFzCqrhtAewQPfHkqCg6wRe3nseiATEKtMQb3R1pSjKx18J7EZa6yNmUMvSYMqv81zFh5Bi4Hgqc7G5RFwbNf1eQSu7reQDVhfJCH: '10000000000' + DdzFFzCqrht2uJ1BNrNhkqjJ6tPwNXgQ2repfJsKAoaqjg7vXZugJtyAULYa6diowxwsyQLwGXHC3Lnw63DjmBqdPPhHBHhAKk4VUGu2: '10000000000' + DdzFFzCqrhsh64VWCZk9Z9ycxafDqpXLCAqVhuF3rV3Saftd1UNu7JM1iZFjbS58p5DWRSfbKSv54gwGvAZEEgSSgYmyeEf4d6KTQL5S: '10000000000' + DdzFFzCqrhtC2eYjcruwUvs7bwXsPwEhUHZbuQdJLSQodUaF4DoSJojFYFRn4y9VUTMyKbxBjZEwxqBaLUZ1g9Zy7aDCVrECH1frbzK8: '10000000000' + DdzFFzCqrhss3tYm3qU9Et2jcLYh7RDwt72cpvq6i8KTCtKY1e2wtp8BFJfsCuegzG6gm186o3g2dwpgKNyMmCPwvXBV1xrZkCJkXZUt: '10000000000' + DdzFFzCqrhshUvafQSrpnpd1ZzTD5CdHzqzB66QhpxifQCnT13WaSYxwbzb2KKEW8izuD8C6eU4u4XrCN8cSaPdHtbRrPuJZKutxSNoQ: '10000000000' + DdzFFzCqrhsmDoLuXNJfhMyZpT8VeCaT4hN1BCJBwha4pD1NxP55d7oMGxY56S3DN6QnqyeYyC3kiKCPNXsPr7u7EX6ZsedRap7HaJUb: '10000000000' + DdzFFzCqrht7R34pLS5NdR7ePiBtz16zfEVoyE4oaJMEuWDayAG3kydeZqD2yiNkTNvEQgHw5LJMjsqZyMHSPrrFuEkmHkdyQFNEz8Pq: '10000000000' + DdzFFzCqrht3Pu5M4iE9Hxvg9UiaMNnv9kSZmxggphBmmnM6nWL9ahfpRf3AYFVLiLcfvXgzApbUdYoypVgUTm6AFxXp8taipuwRwGtq: '10000000000' + DdzFFzCqrhsvcnDs668wvgqaC5jcejPgyWbHWncAc7fKrkhEFFAcX3WifLs7Sd3SthgbHS5RG14qRw1N6WWqtWYQc5BvJXG4CPrCnNrg: '10000000000' + DdzFFzCqrhsnRJvSWfELm4PBGNz7FVPEc6qRaNfKMa7sAGrcjCDPFEQDKujgn3sJ8ssqB1jL45NAhhRjFzpm54caiHugadsTrHBNB3wi: '10000000000' + DdzFFzCqrht1t1hJ3otDAB77eQZkv7Z28viJomZ8YpjQJnqHLq6ESaL3yUpbToCxmtrPuUognQev81D74SkYKRSKfVNNnz6s9PF1ARp4: '10000000000' + DdzFFzCqrhsuAxiyJCYRBYV9Wd7m2xSiFzt2CRF6LzN9b8VXEeV8kJQuFHXGWVpdeahVvWXZrFcBpB7CrMoWFxCN3t384WkMvGPdRfPa: '10000000000' + DdzFFzCqrhsw5HAYvVkxdzoqJ6B7iLCQc1PcdphC44G7Fgce2zYwUUFkbTJEtkaUbEB2iYFhGjkpM2jpXXbrU6v7Ey7NUZ3gJNUEv4Tb: '10000000000' + DdzFFzCqrhsgW7AJzGDev7mJMwPhnyhJTbj6oGuxGJNYSRLbLa4Hs7EKhhM3cLf8GRdZ15hNBx24DUuPBrrG3gXd2BkppaNPPC1tKaii: '10000000000' + DdzFFzCqrhstgD6mPUe3HyHTPWsaS5GYWX8SJxh3FpSPgjiCBn86B77M6DH5Rn5zh15oJA65PZMTEftFFWEUCvHTaXFccVeEYEifvYH4: '10000000000' + DdzFFzCqrhsxPd9VyNRMEz7ud22Ah5SGY3VKmTtUEYSqotDqoU8R3wGyMRwLbAiXD948K66WvdANz8xdoQNKNWUu3xNMbNbgky53Es4b: '10000000000' + DdzFFzCqrhsfsVn8fQPTdVRCzhPZBLq8zEojHmnppSPRAKPvcPfhXEUdH6uDh8AhGVKosG1YyLZnWHQh49BJSHDs3pkTKp1Z9xHn8ADq: '10000000000' + DdzFFzCqrhstgazfrV6PciQzC3gDoY9dLhzuCtbcUexWGqcM5V3Fs5E7XdoNrFkGV1KBgZDCF1vjyFiUwPvNPJ3TK3Aqgu4WmQ9PzpUL: '10000000000' + DdzFFzCqrht85VsHdJqCYJDmiDaaJjRNPk527QEktJJejERR4jcPEAxbjVQwTanR2dAPwWuPMPEancQSNv5seqjqvJAum6AJ7zWgevuo: '10000000000' + DdzFFzCqrhssyAHKKqNebKoM23WHDLCqhMjpHmcUvksjjkJzdY8Ft8Soexx1LDiP5ATbqEZbG76Ci5Ni2Dzx1AUBDR1HbRHB3LKhrUX6: '10000000000' + DdzFFzCqrhsj4U66gcp51kfva93ynUfX6dNnmMqC9BaGCr9MTha1i6y6hizZvNwsycKgwFkEggA3FaJdzrap3eRAiPnqwBGLJ3pjqsgx: '10000000000' + DdzFFzCqrhsmcjXnSs3Yu4EcGuenh4xBVretyA6XjDi7AbjYVp58DVEaSsLeK5sJ7Pg99JGgWXHHa4j4Nh1F87C9mA9fGF2AXJp6DGkr: '10000000000' + DdzFFzCqrhsvCRtWW2MwgoVC7NwZWC33gNiSP6ZZ8f7HMWwwAakYeisLQQ5xEDmmEfwmFmjW2hEqBaSXhiV4oEhYSo8EPza9FrknnmPD: '10000000000' + DdzFFzCqrhsgrGP6Nn5ywJjT14gfLasr9twyukvTRCuqaFSM8jv6955zn4moRtY2tAb4YcDEb6UydXxkmsZofpSbpdT8XjgwiAfCtMnJ: '10000000000' + DdzFFzCqrht66quyC86tAjoQeHvxfDEGnX9AhAbTYkxiVXZQmE329JLwtQ4ybF4GqXS177BuVHaJR6z5qTMgjRpZrBQqDV3NzgPBXjXg: '10000000000' + DdzFFzCqrhsynoQsqCixazQNK78GPzXonQwQoUoxukLB7LVCL9ZgJNVEd5RqHGAwk1AeKXQpnjY8fs73ANafFTjkg6u2tkWb4ekvatew: '10000000000' + DdzFFzCqrhsjfkSUMTiHKt3bv1yZvyWCvo1yPKb2BafXzwx2CfZYeSMz8LbKgwKvSAhQWKVpqmGSMp4n7GXh11NTRcNZFuPEHPNKk1zd: '10000000000' + DdzFFzCqrhtBeJnzCEy7mAdoRGobLWU835q8XGyvW7Z1mbSsoK5oz1ZneyWbBiFb8FAkRZL7fc7QazDxkeufA9bxH9DoWfAMD6NxnteW: '10000000000' + DdzFFzCqrhsnLWK6dUtD3Uh35xwxRdioGwXE1VfToPViz4gZj7JrEpy59DsfSPpwZGLh2oHH78LveaDTM8jCMoi5NocvsjspLtZW62zz: '10000000000' + DdzFFzCqrhsmiPJzTzzhJMPfNNMNoVSnBurFv1cHzxkvQJcmeoBTcLEpV2suVNbiYUNdnLLNEdxJLzohSNUmBfBEjAgV6wd9AAo6NAqi: '10000000000' + DdzFFzCqrhsxrerM57qVR4DRCV5GmdYXCd92ypHdV5KBLtit2aVXVFRTmEhuGSLBT216DroY1NUk8v2i9Jn7pWk9jQjN5U1vVA3v3RhV: '10000000000' + DdzFFzCqrhseL3qHzrGJcWPw1hQd3sq56kY86accLCwC7CxzR9HUnyhRWHzWxscQJZD1gL6obJwBD11FhLjMZEwkwrwvDUAS4Pmmfx9c: '10000000000' + DdzFFzCqrhtBeGgAgC5x6KPVrkWUki1DUwMTYqbnApyr143ZaxoazKynbyq2R7AB2twcKXuK4p7Y9LURSKfL5HFne7xBHT16LV81myLa: '10000000000' + DdzFFzCqrht4GPdNGsAPnK49wAi1F51YCs3hiQNGhMrtX2VUz78c8rJLgtY8RkLrLiFvptMx4iZBqeq5kXuEzVJoK7N3ccYpPJ8UEmW9: '10000000000' + DdzFFzCqrht81o3eJf52zrpqkLMg9XeXec3FiXWGKQHDnCc77BosGHLVzVy1pbpGh7vXcwuhsbqTZibYbKB3Ga8z96FkEz52pysncxkK: '10000000000' + DdzFFzCqrhsvYmMBFWAL5M93N4yKW4BhgADg3WSHf5ocqhEwUp3KoDATdZLszMFL1FWd961ByGVVDLHcMr7p351hNYTt8TALG5Gy1FWp: '10000000000' + DdzFFzCqrhsjHYggbP3jcvZnEjV3FmfCMS2XKeymB6NSeVQgp2UPQbcx8ic4raGxXHoSx2kAdxavZS7KdFkUj2G1pfcHJnLMZAywRBuk: '10000000000' + DdzFFzCqrhtBqLPeqdmnPBRwhQXGj74i2VtAb7Wi2PX3xJDVUdb8xxT89qSvjbGzwhGEWpehhVsyhuNn1XtMhCDNQXXt5yuvGZCzRxgD: '10000000000' + DdzFFzCqrhsnesabcE8wBzAPD7kqsotKpaG5HigJebLyDqzQrZiJsh5JyZZA3YsAuGnPQDBTJGCJ9ZnWoNfFQYZjD2w5u2pSraPEE6GV: '10000000000' + DdzFFzCqrhtBxTwHb5PicMkbp4XDLD76uDcoLgJ3M9Xm6fpkg6iTtkpBG4thYvovuVrhj73hqXSZhvHpcJjCBmzPEWpdqTjdgEaqRbJp: '10000000000' + DdzFFzCqrhswXm2SsmSMFEgSXxne7cCQxUP7HZxvwKV6cUvmeqLXhixhkVBGpiBEDmLo1SnFuL4wCGwudpMazKjfAKczZoH67HeN3hcT: '10000000000' + DdzFFzCqrhskCWEf93NNZyBZQXmVrCGsLcjWZMBuW2FpbaNyR5M4mF2RgFNaUfpfYdbvgQrYThRjrgapK65LLe5Ziwui4a1dcu8hkLPJ: '10000000000' + DdzFFzCqrhsjYQJRVELiMz7uHds5QQaRcYhzTzxraFvKfA86nF2F2E67LzJ2qGh7zgAs57k1x5fLxT271NRsDuMwyyDAonTnkfk8KbMo: '10000000000' + DdzFFzCqrhsjn7bwzzm5KTT11n9wzAsYqdf6vQvtjMYQs3EP1XzPSCLjAU947obPzaAgAWTQdnSrJYu3kvjPyg4QvwNViwDb5Ybichow: '10000000000' + DdzFFzCqrht7MaJGX27cFhYuRmyamLEJ84fZ51GUMVJ7Qf1GzCzYyz31nPRiRxHAsxaM47HuwqaDFBQmDF8CM6yV6hdijA9GLfCthDcy: '10000000000' + DdzFFzCqrhsm3iajZhtLy8SqA1N2dyKbat2x9Sm5ncvQ7Qynk7rYyFAZ2nRrGo2dcAA5aQMVTSxz5csKFTWto9mzYWfN7PViSYge665V: '10000000000' + DdzFFzCqrhsqiJTdP6xw1guQXyfc4ih22xsJAcZtAoxL9QYN4rcV5m1n3YrVopabXKpcwpb9HWsnS9mFEPiNAqAsh7ReiaZ3AcrKdAet: '10000000000' + DdzFFzCqrhstSbFSWPnTDeFubtefFSt1sbx6m3K983siRWfbu862Vw426FexoT3Rigasj3h82MmJbMj53qtQpK47ZjTcaj4gM8zdWRdz: '10000000000' + DdzFFzCqrhsszwvVhkDYyKjGLRLgHJgdLeNLnKpXpEhvRLCUdv2FpiJvztNt5FLgNDYAwGmnW1Nzxi4Uqj2mJs1KSTQdqfFkHWVPoPRN: '10000000000' + DdzFFzCqrht27hn5jgdjpKywH4Fb4cvZ4hgFAaMQLh5mEvpBGwMkArPhgLAYUsUK8Bj8SUfA4wX1btziBhQhQv7tU5SgC8NXBfVVY31v: '10000000000' + DdzFFzCqrhssEmDggFGe14YNQFcdYziJuWiRKfYADyWBHyeWYQcvE9xGShQDqg1XNg4LwJvPETqY39CABFVNBQiYQwMPhBgeeF4b8B8F: '10000000000' + DdzFFzCqrhsmkgAB5uD3BxBhnjpaQQaLn9xBwX3JU4bMivKxp1iaD3CF3DLKViTuhWFjDc2iUnb2qR7CSUTXzhDFbhCeE1fPeuYpg6n3: '10000000000' + DdzFFzCqrhsjY2waBGSMqHScGy9xKDcDqKtqxvG1um2cCqkQUS8uLFr7UyP3UF9nsbmmggeyjZLorMH6hGCB7cNQwvCUSKsCufokTnqX: '10000000000' + DdzFFzCqrhtCDC9iZL2oyBGnj3jxavaDxwNuTqHiLLhe18q5oozydzot26HqpQLCLfGaVHjzezjCs1WnLZbY3Kx7qia9LfcVXmbRKoXm: '10000000000' + DdzFFzCqrhsqwGgFeHaSHKpnXUwJoZzt82FMFtWcjHCnXML4Rew8w3jnGrgMC7j5F7njSmN8yT6gyWTTy2cZvFjXEspBYpTN5Y4J9S9Q: '10000000000' + DdzFFzCqrht5hGXeRiyrrLYN7v9VVRBcS1UmsrYHCxbooze8DEQFx23DEV3vhQxJbXGY5GTFkbHma5wTK6A7EvS6qNhCmwGhEKHnTo83: '10000000000' + DdzFFzCqrhspcAnUmFchepbFrAcTwc45XfZBWA1FfwCdqECCy1S6wBQB32s5s9cYiXfR7sXTSemPZVMLEYPEXSEc8YyWsDLNLx43x3tp: '10000000000' + DdzFFzCqrhsvGWuG71Qb6bp768uagkuvrz364Zw9tEnNwTiSLa6LS3quRpo2Rc8F8Hir6oLg8VLdmd3K8AvvFPbta55Ny71hnj7qitZR: '10000000000' + DdzFFzCqrhssVjUsGCDZuLPhPur5TaH7NURnKaNU2GdZQ4FAAtg1USouoi6xVieZVjHrSqmqoonYHS4s7v17A6eUcyiJWvtvfNo41Rwi: '10000000000' + DdzFFzCqrhssQnVVWihm8GVfU4HgRxL8FxQ26F8mqa1Wu2y1hpqrMJqQXe7c3Rt7JhGGMcnikTXwn9UBS2nMUU7hj6bmz9Zzofsut1zK: '10000000000' + DdzFFzCqrhsq7iUtW7oCUzB223FhkVxpDNMVvGvTQDkDvLbTw6yZHbE42vo2deMSTwX8hy3zn1WqBBhNXoznRWfVGyG9THtriRsxGM72: '10000000000' + DdzFFzCqrhsyw8tFEki4K2tmuTNz8vhKuHcpZ9drkM42CW98PGvxrim4YYuK5vzgx6otU7rqb1H7FNVJCcbr4CYyHDRVaAAm3YVsxhUZ: '10000000000' + DdzFFzCqrhsx2RZoAxRjeJhSgBy2uego8u4zvrt4BwKvJomgXxxGvsbBt6AyMKBiCRkWgmazUZLFonnCgjLd9bkzTMGVf4v7Yej8j2NE: '10000000000' + DdzFFzCqrhshSGZVKQL5guHqdzSxjc9vgJ97PJnfDgwoyEYFes2uuHrZZNGq3uNeoX6SKZYqj4iYaBScLthsrdWF4go5Fu2XMfkB2ovR: '10000000000' + DdzFFzCqrhsurXqRgFhHy7BJAKiQrGXTtNyEVXfyG5Av4hQu4CUDv7F4fHz3xFXfK8jU98G7edePyNRsVujXyPQioufcxtvLn5P3sGYV: '10000000000' + DdzFFzCqrht6AkX1i69XNiPhUDvJLPRC8mYQsZn81j1Tm8G1Mb6BRzKZYmiNnQHwxuw76ZxJEYDbsoGvtkFg245KPP876u9MtiPLNFVF: '10000000000' + DdzFFzCqrhsydVKugKbZeRSqR5HdSZ6JVopeCtFAxKqNHLTbCfQ1N3Xb5jW8y2mmXV7jMnVNboHAHhGbPK8HwNdaSdVgBcFsfz3uiJf3: '10000000000' + DdzFFzCqrhtD2jBGYMBaEfZGLWg82q2HPaD6jcitzJcSbR9yXabhpS9jv8JB9Z1V611Wc1cSqCiZBwfsTrLY5nwBaRpmhyZCyWfEG47R: '10000000000' + DdzFFzCqrht8Yd1tRytVhqR9j3tAbQxeUrGRMk46Tub3uZKaimVUR3W6vuZsFGx7fHhZxMfy1yYWiHTFLQmUdtW8UfutmjEauUWwuwTw: '10000000000' + DdzFFzCqrht64vuNJEfBn8KbquQn87HznHNyjg66Bpdv54t2VhY8Mk2EobgCLeekUJWEBhJGwyaXnzJCM31TFPPLKcJjPw6bnmkc37Fe: '10000000000' + DdzFFzCqrhsf54yAgsFscJNBzGRRbAkZ2d9H35DtV3yBp9iYhj3Wckqig1HiCJmR89RnMd2wU9wQdqek8hs5UBoiNV3ToM342yCVmmKp: '10000000000' + DdzFFzCqrhskDXMz7jA2ByZbZA72hsGUVQu8gGHTMysdQAs2irpfxL7mBxNhJJfwBD56C2aiP6xYiES54qXh8B9K7MXHUavGHephXfqk: '10000000000' + DdzFFzCqrhsoKzt6btX3WpKYiXrjGMypsM9q9V5PKb6Br4nJpeUCJZeR36HZ8MVCzkLfZMhLkD6S9rchnqXvNW8eh2NCDSdkdQpwSLvp: '10000000000' + DdzFFzCqrht7yM3iN4odBhJTUxmnNghgHnFjy52j1xhS7cbsLrWCSBZj943NjhZ8cN5thAENKjisxcM3sxzQe5ozzUnXreQdrxCyqqpe: '10000000000' + DdzFFzCqrhssntGk7U99LNgECjJ3rkkBhrDQt8oPEguhJyRrJZr98pqvut5Tq5oTAmZErwSd6JXJx4prx86TwmsoXHsoiHuR3CTWbh8G: '10000000000' + DdzFFzCqrhszk4sj7UBwRxG2p2xrdfH5Tz3jgq5w47gVoCxm4CbsLYcZV5vwByNzzPtkGpGBFJg16QGbpJhE7aLa9ehaxdphcy6TDAQR: '10000000000' + DdzFFzCqrht9hUY7JURPNekxprv7WMvhJmfurtZtRpZ8MUyDQnt3tT3WBh28Cct3dhQaaszeVEwgZCBV9nwQDtVhoNx12Me3ektSa8hD: '10000000000' + DdzFFzCqrhsyy9skP5uwnLjzfnHu1pv6nKRCq6DeomaAvyWA5TpkG2YpRMJPHUZTQLWZFoVGZdsvmWyWkH5Sr4juNp6qfoK7ZdRBNwDk: '10000000000' + DdzFFzCqrht2QLWpgK6PvohW8hz29ozDvBDWTycJpf6kBncreV4JTLVTFZwkp3gwD8LVSXQPG1cH98qwEi5ZCuq6FFE9Un5bbCDCi4vp: '10000000000' + DdzFFzCqrhsmKrqsoi5s9X1wyRTB2wsp6GVJ3hx7aaDEzsUDkf8obFy9bycMkSBh5YwCjznGLsPUaZjxFMg8bWfCpSAJyRZjeu4c4STZ: '10000000000' + DdzFFzCqrhstEYKKjXZ2GDJgEn4b3gKuvBEcMmyr8Rvmu1fQeM1M5j4vqBzjBp1GfHcYCt7w74ioMqjbFrdd45eDnxjejrAY9rZrswg2: '10000000000' + DdzFFzCqrhtD9MvJKybAe2d9483cMCKQ2EVJ3uTcHxTnWGTfVkVw13voccFsXRUNDMYQmizLDjyw7c6MGVnkEhiMTWC9APAyP4K4hq3q: '10000000000' + DdzFFzCqrhsxzEsbxo8Kym9BwtwTYmi82vhJoK7t95oJWF4vRBHQXCMc7RczDvPQPnodiT6ibtJnRvEMehJ2SDvVJ65X6vEQgbX2h3Fk: '10000000000' + DdzFFzCqrhsv4jgAPJiHq2G4JZe32Nuanx3MVzDAJbVrukmZ1FRmair17jxUqLDbwgdbD2ZH6rJq51zDnVLpoq8GavDkQLxhifoz4cPc: '10000000000' + DdzFFzCqrhstp13x87hraHqFD82JaTiekq6uYe4DtSunAkydnKEAVuwTwUxGtoD4MFQuUfV1NPXYW5jhWbWzsgRmQiW7FYJedipijJi3: '10000000000' + DdzFFzCqrhsxu7aKBxcZcDSS7wP6EHoFGBND7bd8WKc4WcFQyFf3umHjUnaz9pPHhMKLWdXEKJtsWPkxtMfjV376YHK8rfyT6ZKj5E8b: '10000000000' + DdzFFzCqrhsfo1L3f36fWZJrcHEQUSLq9C8AcKsuz5DbVRtqTxb4gvoaWm1zMQf3j28myqk4FPQiJ4GhErbunWxJySEou7uyVv5Zw6yx: '10000000000' + DdzFFzCqrhtBWMWh5GXmio3MPDNFXFRrEWcSSwjSA2cYqwqAyJpdyRgPWRgwAPYHpET3WMwfdD2Fzm9Ck39WN2w3yuKx2GVgWKs5fW4k: '10000000000' + DdzFFzCqrhsgvCcv6ivRqpdUGYDE4XVD3Y6crQ2PQMWz7oUZQ7toQL9rDdy1B54ZNi7K2Tu5Au9w1oQ2JNJ2zjyM7WuDjU3C15jZLqye: '10000000000' + DdzFFzCqrhsknvpDWkfBDc3NGwZ47Xj1ghjuUp7xAU64eXHe19p36mf3zbJgrDwKfjmGpt4V49Xpwg4TZPewn7dPPw51cZczTVtno6We: '10000000000' + DdzFFzCqrht1oCJ6DD9tnk3SdtLo9tXKLh7qsTBiQxePm4jSRqNPQPDUe9T1yGwXNUBDqPufEDtcdRPU2VzvAc5Bo9p7becfKRUWVTMs: '10000000000' + DdzFFzCqrhsqWhAMsdQtSAhJFxPT9bmTTQhFTpVwHoU8Fbm5NhFpoyJhuNKCskDfjUEApVzMi8W2YrvA1daAfTLh3xtDqi4X4iV8Ex4w: '10000000000' + DdzFFzCqrht8kkwGHWAx5VhxLfU1jE7Wrw1Wo8yEUFQ7ttGvbYhmRt4vYxo6oskfEXgpZBeBrqBYH5hcSmVH67rWVcG8rfxLnPvd5k57: '10000000000' + DdzFFzCqrht7ZkRDHpZQmX3RyTGGDDGdcoTycCYB1ZQKwtsEyJ1RfY2gGGdxNo2y8SHLWiZbJBqQACY8CAhWxWqDBvNToNJtmtqMrSpp: '10000000000' + DdzFFzCqrhskwSAWQDd5RoJ41FoYangx7fb9Hh2oF5qzLsnbu9PxCKwXrfFXWs9RC8JdJ5bUQxvnSaDobsW6wdvYAW5c94nQaX3riPoK: '10000000000' + DdzFFzCqrhtCYD7CJcsyiVsdnqTBfP4HqvNDTrpttMj6s3dSiVDo3MGDrgJLNY2xXA6QpXYurdZueUPSCD1fdfKKnHiCkoBewf5EFYmr: '10000000000' + DdzFFzCqrhseAnGg2w3PSU8E3b4LGpEtrPd2Dh3ZCraSCCi8nR4r19AgUX9as9Eeg6FTnQqfsjwtAWfY2TJYwuquxjFVg2kgHD6AnkgA: '10000000000' + DdzFFzCqrhsnap48uhewuKY3FbyLWEdui298UYGWrEVre2NtNn6SQ3VHWZZdqsnzFK8UKVG1FTDfEa7DSX6pREFQmcZwrfcMuL6vgmWZ: '10000000000' + DdzFFzCqrht2A46r8tVs8FQPx6UxDSffGDAY6VGHbZYfX73Y6T1vMS4H86nMGdYbuyrzcUAM9YqXmDZ9yBfApu59DQ4W7ZTNTNGDHRo7: '10000000000' + DdzFFzCqrhtA6sBCE4tGZmEZqn9NeGeehez5yEiAjn4Jothn1a1jAX3NHkmjfEyX6Hj3koMuhao9MZDRrmG2emYoJtBtH5sKNsNbFcS3: '10000000000' + DdzFFzCqrht57TmHQJULP9XgcGy92uyQyze4hk4voCgcqL4ErzV7ovW1UN78VhwDTJxCvR2BU4Z2GG9uND5ZajLPTnrjoFbEgKBP5QqQ: '10000000000' + DdzFFzCqrhsepducT53921t9cJKLegp8RxpGYMtPv6AHRxYLGKoCjnC2dUq4hDcPLdHiAaxaUen6hFjeVR1uGidLaUCaWsRz7JmhJQAb: '10000000000' + DdzFFzCqrht9NWjkCZZKeHXmyacs5UAKJdGh7b8XNzqaBXJpPyfSTns6jB2ZdcJ4LVpW2ADDYsvGM7AcaeSWf94wZYkNR2xLgsccCw3o: '10000000000' + DdzFFzCqrhtAGN5xSMNh8bNFaDX5a2J4sRjoKb6YXmc8c4yEVZhdXrpJnnyTUuA5jFBu3zSoy2y7M4N8BhJi78AGjwMNV3zR5tuNeKLA: '10000000000' + DdzFFzCqrhtCnBwH63XMs47ZDAYfCTLhWyRBLTM3dFaZG63ttsUjqyw7YRrNPpzzzTicx71qZvRmCUiPL9W1ZTkizXW4fnYdEdKkLptC: '10000000000' + DdzFFzCqrhtBAXGMA6949agEKHbZ86x4WvYMafmZtBUQNQbwkMzC1aTnX8FYxxkPCa5LbL23fhg7GARUdmbZ1bYnnm6x7ywKeqim81By: '10000000000' + DdzFFzCqrhshcui34R3te9gAdqFLbDUGRfgk4zLAThtj1pxHbZiYGdEY9VFtGJigE1xEAsDLq5Pk8E7sTsbEHBmwTzjdLiuFX7A88DWF: '10000000000' + DdzFFzCqrhszhrSkjuwWhSNzLAGvwm1D5nazBfL1s2ANZNjGiN1HAR3MjfN17o9eG62P4inFPTRqpdzEuY2qehuf1AsssUzPfpyAefLd: '10000000000' + DdzFFzCqrhsisFVP9iwkHQiQABnf4mCZYbKXh6ZU25x3j765tTuzhYXjfvrznPo7ENJTwPcdTKWQicBhjELz3N79CUtoGWxReX6fc1iQ: '10000000000' + DdzFFzCqrhsgjeoThwXNE2W9A15QdFVKWNghrriZjmyLCciTSgxTYsQTwqTPqTHdXvXjvx1vmgeyZhjKoJc9LCiTXKsZ8UYLEMp2BLFY: '10000000000' + DdzFFzCqrht4kvhaiiATFAYWtcJG5CRLur6TSNyuyVwC5LfzKVDFiYocPNYxyQU2suGxg8evbxtQtehmq7W7YDuYNvfqiZwruQQXDvBo: '10000000000' + DdzFFzCqrhssNwF4W7GbmXD2uxGC9LRdPj68oSQZRXcdPjh7DQzF6WRyKXrrR32LFjhdU9cRdkbBJ4bNptgW3Jfs5iTHrvw2u7nApxyj: '10000000000' + DdzFFzCqrht45Tb5r98EjYZuKdvp6N8NyBA5iHpczEA9W94aRRscUk7QENwgvL58kt8YsPwNTw1NAa38NxAVxjLWomoGJK3Dkg9APnWn: '10000000000' + DdzFFzCqrht9iFAFaHAtvGpqYF8FPET3ng49JktmYjfiBA6kXBtezMxuTaFzx8s7VQQKFteRam8waWVMwSF75HzGjjLspR1FY7qTh2cK: '10000000000' + DdzFFzCqrhsuQQctgQiRC2G8qHoL25USXtuFyMVxNkAovL5EfTVgabFaMNjjD4Ao8oP3ATUWWtZM4eAkzT7BKgDCwr2DB5nWaxtENLE2: '10000000000' + DdzFFzCqrht8mWkGbyctZecURYxaY2jK3HDub9z6fbWZNd1RM5CUvPiSAo4X8TYWr6JMVNZ9QbyuawnrQzfKcnCLqPDMmHR3VNSieKZ9: '1' + DdzFFzCqrhsrBHGSy5Xcp4gdi9jF6YeSR66PX3wVJ8MuBNuMy8JtLbgW3vy1AhGCV93w9NQ5dLbPwdGpJtuwvwhEQLFFgz1F1JjKe3r5: '1' + DdzFFzCqrht4xtYUhJxYmMANcaKrPaoEndbt8TQdYXgzeVX2F93aWS6dPJqDZgeUSLCRMZidycs26w7TpbodmfU25zNFwzEFpfegEhdr: '1' + DdzFFzCqrhsxZxjUKf2ih5FXPck8qXB2UQfMiGLWTJUHS7yKnJKEewnzJkBwh2VGSuFNa8jBrmobtve8rGHHHtseq2ZD6pvPAXSMKCB2: '1' + DdzFFzCqrhsymxqbEvQwoEoyGNUUnn91pCcxZSgCMDhLxnyGbdjnG48BdWApjEbFiqoYfP2nfPQyz2uiDYvSRdz4CGfwbCTNYJVzcuuW: '1' + DdzFFzCqrht4Cp5w8QSaMA2cF7kPpLddp1toCFTkY2mzdCss6D3DdhYTB1nRXCUhvfWvh9e4k6TPrrapXQKGePPkG1HAGiD8iDiW9ivZ: '1' + DdzFFzCqrht5drE1utizafRN2GUwZtMeaWVsXY9c5kYyro3Lnyf1GANgMfWc7WCErJVdQXbdNaAKSxmXTG6PNu2uNBidNjTz5XsAdYj7: '1' + DdzFFzCqrhshfTiHuQXZ9dLAeyFj4VWPPU7KiEjUXixwUiV1rn8vBSJmxHzapC31Ecz1FcUdMrsMxUTdcLzzWvTR5yGtJ8ouT4P5FMcK: '1' + DdzFFzCqrhsegMx1JjmgF3rL7Dpa4rL8Y4cvBUREcA7CNRgYRjrPexsQJSAYMB7VbA3XRyNsRF4P4vDzWP43vCnqtox9AEndXKtPT9Ss: '1' + DdzFFzCqrhtASNaEthFBpQJH7KADxgHzwJp3t1pdXK6hFgarpZBv9FDzzPu824MBTLcfkUQWrgdqfGZvsKuXTZFNsNgGH34vLbV3UnAZ: '1' + DdzFFzCqrhsv1XSxrFwtPZkKFjUC1Pkv6xGi7vAaMP4KptRFhMwRtTPcpKymUFyaTe27NoSto9RQyyqvBJqss5bZbex72SArXa6GAqeG: '1' + DdzFFzCqrhtB1J6VpL1r1nKVapAqkT2NypXUbRhG5vizekX94R9yygUxYG7skmiL8DxFbB2rCZdVpuCKja8zxhkgbEYkkzGKoT88VFmz: '1' + DdzFFzCqrhspWQrzyaMvPgKZYpzV938kPsucQ33RMGM8KBEWh4hFmXKa2Z1pfLWftznjS9kGgMDRYdAPcs7mfmFcwF6NPpkULRGqNCpi: '1' + DdzFFzCqrhsrdcBTYEPBMx5VFdvNhrvBMzScTw28ZcrCdtpqoWwcamfRqFJCZiaurP6m79fmQ5J579xPTkFXBdBzWZQuJyY5rucfJR1V: '1' + DdzFFzCqrhsiQbNzqp8AbYc2uS79Y7eiSnXPGbookN1RN5DN9LFEuuf7b16v3AcfHmj2PYVB15UuiP3rMBZtfSPM9HYREakyQfrKgsER: '1' + DdzFFzCqrht6qAJ28wEbJaAs1JuAZQik2qpwpywZB9bUQ2SAaiTDpSLWyvEsjxinkTAt9jaX5pdCWiNDHdkTwuZyrB7zggwGDdBWymt9: '1' + DdzFFzCqrhsjRLwW7b4V1gtA1URmwyvbTES1kboiXZ8zPsTMXXjsyXhKZymERbceCLVW5q82LzcwHib6Gu4t7cDxQ2V2CGueEqGfgiAK: '1' + DdzFFzCqrhsu9HpnmxnKNKdDwBggGevwNrgywxwFbU1GCUDJZZtJkDdMmcoEKWLEwJdHrYE3ZzMCpLecG3qRPToTCncLf7Qgq9J4jcs9: '1' + DdzFFzCqrht5mQX2CAFtRqh3igRvpDePkU7QEHbrtiYQefZagZEDaCjjPTAKktuF16hJpVEv3CEBDQNBqMxmcRxpAHZSudJygFfW9KpY: '1' + DdzFFzCqrhsyhrXzwHn5NcUdpafk6u4UmsUG3rwKotCgCN6VR6mTyasHyDcHA37fqaTpetm4WSPBFMck7DXbRoKkXTTqzQjBj7i6SUiR: '1' + DdzFFzCqrht9fJGbcYETEmsdUTZZKZStppKt75d2j9BFu8ZgawoC8dL3NDQ7t8MuuKZVvr41Hk51BxuempzPU87hDm5E72vz4gUoB4oT: '1' + DdzFFzCqrht7k6Moq1y4iRrmyVgEdDphyugSDUU77kkLyEcNVtc9mLWzEgk2XnKD5nEBFDPeiWFWLuEog85eQXNdRrJusAfLGEzDirpv: '1' + DdzFFzCqrhsrbC3CAx3MgskKNhQLuRngeovypdE2LNcz9aSNDj5yMpQYDWsSY23NSkCmCkTckY9Z9EPs1niP6ztuUjPSfWY6uCGFPjf9: '1' + DdzFFzCqrhsiA7iN2yxdhxTQNKGx79f96J1bqiGf3KKQvHRppETgik1KXQmJE6c2uUmG9ydPjkNgG5NKPaBeuuumvdfaiTW2DobfXF4d: '1' + DdzFFzCqrhsx41vheGcTWUidV6f6qEtshFnR3K7HVXtq2gN976U7yDJgRDxEiTzAeDgMJff486cGUcJCWeSd5tGj216iJW84kkZpjLJH: '1' + DdzFFzCqrhsrY3YHZiB4zBLw8WHWkeCfbh4CTRYKjxa5edhHjt2x4FttdoeNq8kcc2WgZjsbdWcBmqv6CyigiG7DcShZHJGScHAm4aJL: '1' + DdzFFzCqrhskvCaEZCKaeNxGELir8xnaUmSE1YUQD7FxktQEb2hdv5TxcYvJgVdvbiuD3hh8315iq37kWNDU9in9hHGzEUaSut6WdqrV: '1' + DdzFFzCqrht8uNnaVxNs8229RpG5DqG1VrcGzjSgNANyq7hBu1NHrsnWDz7HXzorLfyzKbFJnPuYpquAXejFRXqdJHbqgdzP3KJ7y43K: '1' + DdzFFzCqrhsqHPcyNxWzJMm9mKc5wM7bRZ1MQkiYgEuAXaByXezncXp4Ng6ZrTgV9AB79ZnqptfxkWiFBtaXyDstUJbPE7vKjodh8E4z: '1' + DdzFFzCqrhsdxeDPdaf2YSLSSZL53HqkaGrhutswmuBggiFzonZ3gwD4CypmQbWWPYzpEYRf798Wed8gvJXoWytqZFyT1ak4FJH4Mvic: '1' + DdzFFzCqrhszZuNUE2Lvnt3QLkxKHGNzYHCgkj4m2mi5N1Mov2WJQxwG8mmbHebT3n2Qrj3G34crVU7CVAWFoAyeauuEHdbJpH5Hcu9M: '1' + DdzFFzCqrht9WpwCR59FcNt6LADojUCgZ2xGbXAjRp6kwwy8UMN4jUHprFq9pMBNkoUrKbMqmCKYo8YZpffZJeAHAQSFhZ3Gd1JWito5: '1' + DdzFFzCqrhsmNfQkxdkcATtM8SHiArzDW9bak3uSVjFaAC3LT5m8FB1FDKtcRinA3dgEkiWacotmaXnhCaca5nXxAhGghnpQ4itCbfsj: '1' + DdzFFzCqrhsjEgXGbvtLtTAEmCE9U9LXHsLbuETHaKQkNQQcnZPqA5cqvsuNrsuwbzVw4VAecdE5QUbaDyUo9EocnzXzxgNhUv2h5Q4E: '1' + DdzFFzCqrhsnJRUTcfmAQKcuvh7Y7M9tJqMdh6YSXCANRHmtZu8AP1hXKiUNFbEzt8txLqVsoyGc2u45keLWrPngPksgNyF6sSpoVmKQ: '1' + DdzFFzCqrhsodAYc3nR4Jnq81C436WJfXTXf6PiZ6r8oRDqq5b28y9J8YGL5NqT7TN7vfbfcSdnL9GZbWQstWCuZUPsZam1EbPFuE3a2: '1' + DdzFFzCqrhseqxku84gVQNLxJSWDjGkcGUaMTWTJorgCwXwYQaiHGnaYH1AAjw5ecm93jPHA68mQB2RdY5VhvHcJa8NY9GXKU3UkB4xJ: '1' + DdzFFzCqrhsh712YhxvhnoBmGzkeFKf6pGnZKt1o5s7DnsqC2mbrcM792NEPZ2GGNPM2TLSaQCmX7qH242rv4fzjyALoVdWF8cSGQYfh: '1' + DdzFFzCqrht6PetGdiGHQ6Zai1QbksvZ5HBuUmMA1FGLsF6S9e4W2bu3vzbi6Q1sT6JbFpgNuBXvsMmxeCvNdyie7KJSmzAZdVpymdyt: '1' + DdzFFzCqrht7WN3gGyuqEEMPnpKmGwDXEDawoCb4BzuYz7nxPcdjwi77jwDoy3bQsN6Rhe7WvcKbHWsvcoUJ6w7i7PRQCy7ZQ1GTvv1u: '1' + DdzFFzCqrhso5WJ3g6xvXrM1cor1kn5Q7sVnujdoegsyqHKDSMfB4QK7ABa2SzWLjQrUDfgDF89isobuLFdubvhEU41cE2WHDD7tmSiv: '1' + DdzFFzCqrhtBkyFfaKMqjoRyB74TVbJHV5By8fK1rr8VuemPNCDNUPBR4gNZqatuqnXMkkgL1NDLWmonjSjfXPpZLrgF3EHtT1Vy1FVL: '1' + DdzFFzCqrht2oPToH8SAhh81F8FhucH7JngGqp2ZkBVNAD8xy5vtGAJNfbguu9HWGEuBhS9KPTBrrekcUaatfbJwDGbKcVYzzccqezP4: '1' + DdzFFzCqrhshYui7m9fwUuycoz9BVs7VMLzWryGy4zhrCVy26qiEGeohsNUfaN8gtVG42B88Ahv62xJ7aHGDkWkLucJikVrZ9YZbrCSq: '1' + DdzFFzCqrhse4sjw9nMvbkMwW88TMYc9VGRSQ1DmdEYMpiskwPB67mce7MML5scqegn9rpj4wkWLaWDBVpoinxxys9GebX4WxnBPWfg9: '1' + DdzFFzCqrhst1Zo3FEvMPoFdDZKPN339MgkHQJ59RD7mk9S8DkqkKQWGHFeXbJHBqBy9YJhgzE5xZ8PMEgkPsijKAqcjtJKTRbNPQxac: '1' + DdzFFzCqrht5hLsaHDaZ6vTWdwu8ZZ2txwmnAvNwTzo6GVNRk2qGYN6JWGGTxjG1hnXYWdLacoinnfmhUxbzwtjaH74rhCFAgdHDjvb3: '1' + DdzFFzCqrht3h9FmFR46Yc5kPAxw5uPgDofAiW6ZTmtaQe7RSEpdLFzidRhuDS6c3QbknTmeqtL5rhS7zdJoD1oLZfUQmfMt4hTJ5pi1: '1' + DdzFFzCqrhtBGvZLwFJFkBgduJi81RpxhQhHXGH9C5vJ1aVbjgi3BbNEZWnNVGhjAMNgUjG7AkNZnGGjjNgnbrPRNbZyJHmuQcLosGvm: '1' + DdzFFzCqrhtBqecSoPP7Lm7bP8DCuxa1vacZeK77iRNwEcRQSyZvshHbKkHfa9x5L9PYFRxZbMwdPRYVSQjCuMioPc7MBQsVCELnRBm6: '1' + DdzFFzCqrhskK1nkhBGqVEvyn5NiUVNVz21Scv8F347Mo2VQkKSkm8FTRrRgPXicurddXYSZXgDAPoBw93gAUwjpp5H92cWpjgrk5hBx: '1' + DdzFFzCqrhtAnRc8y355bthDX51XJRGB6v6T88NXDt1PkwUWed277Sn6UUmcWLs2MNS4NEmbTCxixWuyzGZ9YwzjabHrUvf5ekVCCrAB: '1' + DdzFFzCqrht7RrMXGCoJLgM2twa77ScRVjz3EQ8gM4fDBc4tUZQZezionySMo2MVUzAEi6f5HvF8S35pGTRiJ91CvKB4SUVvZR3LasB5: '1' + DdzFFzCqrhsg1NU1eJfZk95NsCGBwYZqr7UpGLnQuya386BqVixtvGTSAMsDYo8FYZ6NNNRukHdPsN8WiTm79g4ezexuGJTS3KyUDmZe: '1' + DdzFFzCqrhshj9ukQXuERwRcGDTaBrcbfiBvhWMGevKVu1644xmLZKZfP5nYiT2ufFzVYbu64iFRgFuz7DmA8XCfwwXvA6H6Cg4nCtBZ: '1' + DdzFFzCqrhswAbXVPVMg3iN6oPfTwKjDfNqxJZGDVmbds2n2vBWqN6iHnBvbMQ7PdXcohbSTA2UorQbjgerhVqSNba2ANJryEdWT6DKN: '1' + DdzFFzCqrht3NKh9EBsXuobmZdxZEW3upAchJTh5pLc7eFo7hbDWjq1ZxGq9BMikx8vS4nLj2nzb4tAu29e6BxyWcBg3QDnZZvHb3Mir: '1' + DdzFFzCqrht44FVTU9fAqUTX1SPHjwJpiveZHwZSCRTfCBF8LypfKnhU35MHrBbrSmRqBYcPqQ14DQURiuemXEjUAWB1kGsBTy5ogMNA: '1' + DdzFFzCqrhsvdf3ribBNGTyxzWbpx4dRzuJdTf2XN2cosn1hZrMZGUkuZDVJjxBDZwpkkZx2FZTSM9K3WZ4cG9Hava2sCnqTaaMF7WiA: '1' + DdzFFzCqrhswHAdygxamegXwAk8uDXwdmoTieQtGFKyaZYCcz4XwEqhv3Jeaf9LhC1owTTGwqW8vAS1ksLpt86m14sa9uQyoWHfuAGpx: '1' + DdzFFzCqrhsh4tPYUCCmsmL17qd4VtUrfANNiYrJvggwUF19E7G3L4sgHXDjN8f57TnD8UaAbLRXXCrtvaQyfYHSqigFqSwnG8qJZ7Zi: '1' + DdzFFzCqrhsjmnBuQuyignUBAP5x1jafDzYh74cxicPqDjpZHAs3S3n1TyGB4xXJ6qM7vHw7VFtBNyCgJyDQ2wvEndjtX7gJtVsg4Xfs: '1' + DdzFFzCqrht6doMmkszAjDy2EYs35DkEp7jif3MbrKvsf9bSsu3dbk8psw7ct5fJb7DqfC1qnnwgstK41eCAmxebxm6vGQQ9Wn3HtsLq: '1' + DdzFFzCqrhsoTrAEaBtWHu4fcR536ZUDvaZHBDrbWuRqzUJDWmWnAdtqbGwqhjH7trne4o2sdhsddcK2FBCLGvNZLYZY4mVZvSjs11Uy: '1' + DdzFFzCqrhsmx4tLP5Z5Qurna87W2qepys66yW6MM5US6zCZQMrT6anXUyhb1vd4njbgYxJSaktngVEfWuo9fW8mFvPXM3RT2FH34bho: '1' + DdzFFzCqrht7PimMYDpYb8vu8Gzz7EqKZwUXJ6SnjG42SFqpXgHEESiYDXPiN9n6MEW1KRPD1Tbx3XnvfLetJX3u3TecyFxmLvWCC2ae: '1' + DdzFFzCqrht69A9ZPSxmrV433vh2drezdj3PeudsFXwMLfMCrXMBtuqM6qp2Yrrhqt792sjrJVNQBiNTj9s3B8fGiVy4JphMMVUBz5VU: '1' + DdzFFzCqrhsrgczySAvGsQqQSHHgxKaSJbTnEZQ6UFmADNs29dTzDRdsyd4XjxfUtMpgNZbBey3wYxHdQeKXLVPS4Wx9e4uCmduNFeDG: '1' + DdzFFzCqrhsnqae5WsgHaN79wbVFrejXZzQ6RoK6Mpi9G43icHsXa8K9iCb71YxptrWzDpxyN2VAxm2xssdNUmESBr8WvVQChC6BTzx1: '1' + DdzFFzCqrhskrqJ8FKmxxY6BJAdw9VUdcLuYNKySvu4Px8AhE2VkCDXWBM5eMycL49nCLnk94NwstfuW7p22bEuctfrioeTV6x96k7qa: '1' + DdzFFzCqrhsxR14qWDod6aFJXo7iqXWHBqrrhXNrZp6H243uaBb7eYhg4e9py9Q3jhv5Nmyp6LkPHNSWFeUeJEEy2cb2gZfGWkP7cg77: '1' + DdzFFzCqrhss3xNNhiSLFVu15nu7xRX8T4bDSB3kggdZBiNtzX8ewuMuhUGomdrmCaG165U3VTFSUZNJuvxUAzdduq5P8zC8daKw7EYX: '1' + DdzFFzCqrhsedysVVpdN5UvmWx2Ho4cMMgJcLTVJwdd7HaMwTye2k9LnVcfY9a3jgM6J4e7io6YgKcbd4skqXtFj28RWwWRdfAEUouEX: '1' + DdzFFzCqrhsjt6KVNWZbxa4sub2fevcTUv4tDajZPsJBFXKUjW7wAWdc2p8y1uY5nKYuWsdHnNSrFde2JjLMkDqkKmRB2iFKHhHwuhub: '1' + DdzFFzCqrhtCLEnXQd9Ah2BmoxipMtru9YzV8HuYFGk6XGjxTSF5wJorF1DhcCQGxNho2kxmnKjGGRw2HhVfygYRJUYW52L9vVBztKoE: '1' + DdzFFzCqrhsiFESMpPL5ALB63KicWudnFbCALCgatDXGRDLFj6kGBL8E37snW6qNL9ChUvQzBhm4ojhgN71JDn28ii9XvgoqTykm5fcP: '1' + DdzFFzCqrhtBRhkjpQBr5Dn9r1JB86V2wqgYQTTstA4XWXUMQ7Nrio64rWSSs1XyyPGpDp6EytB534iZVmPdCeaNyH11CoHk79DAjQLz: '1' + DdzFFzCqrhtBYTSasGLK1jzm5HpEnZFq7QkwHexCY2qXUMRaDkB3U731DcjvFQzH4EgLvEyNGHqRwSmo8XKn1HRAHePMVni3eXqq6tgV: '1' + DdzFFzCqrhsoYs1agKRPzwuZgaRu8zsGqoUoEsEr4zSQTnovqe2qa9AHNjKmqGCJA6i5YVv2MYeDv9a5Ux1akckj4EiadDXSZwiFFuGm: '1' + DdzFFzCqrhsjR5McmAEa1nmX6VNddvyGm1boCw7GKhCtF8Wr12dpX6P6xm8NWXh27RvbDBgsdrUB7W5Uo64Q7CHb3LngpSja33wJaEjU: '1' + DdzFFzCqrhstfZLzr9CNy1p9DkxKv1g8dtuXgCctsTSHicfGHSetW83N3KY7qfZhT2Niena8PCKiAqdbU8u1QhzVP6dkzdK6RcnjWjWb: '1' + DdzFFzCqrhtD4dSWQknti8PJggXTo66ywwTPLU8zv22Qy31q5V7GFCEe4HZNaKig7hwTykjoZD8Z9cKZfRj8m6FwtcWpYTPLnG6saNo4: '1' + DdzFFzCqrhspvqNXxMsRAGuZrC1bMeMvaFERHZHT1kMq8bHzMCsQB3qKBAKz7r873eLYYNQEgB6XWfuCQxgfMwqRqpeg7dv6azCLKZT1: '1' + DdzFFzCqrht7pb9NnJCJj44FdPRgdeUc8PmgGJRzNP4z15YLXTCBAUp68whMjKYuer7Z6EWG515QY6CgrjhrrTtLDwTku7JjRiDwcHo5: '1' + DdzFFzCqrht8VQirMHtgxcY4AXWVh3YBUN5tVdbEXnZcVFxaoVPKX1wqtUaBhobaoeLfHbND68penZAX3PqDmVyVvfUXqksgHPPmhY8y: '1' + DdzFFzCqrht2XLh81uEVUVyNBoW8q8nEhLwxxpyUHAGPXF1yAHS9M5Mbm5DgAWcEKZ8Jnd22PUpiim7hPJ9wzzohWMXXyVdzmWbHAfe9: '1' + DdzFFzCqrht5gxffruELEz4gCUoeNxyk6DRVdmkS6PiX2Zxv3F48v6grxzVXzNaW74wyDE5eX5ErdDxj1jnQpHQ9hieKj2it6TQERsjH: '1' + DdzFFzCqrhsqAd75y7ieJ2nJAaJgWRnbw1qhZF2bXbygTHsvMkRcHq8Hw6TEodMJVPpiELcUw5wJdaP2aZ3yEC8vHCE9WpUwhFsJuoP5: '1' + DdzFFzCqrht2TMhhAMYEhSbTHDtbMWVKMgNiaQPy6XnNC77HywPNWMd8dyepR9H1p5Chr4cmEWNEhSPbH1eSjGW8d5j3ThJ4KqQyLmgf: '1' + DdzFFzCqrhsgDhBd2BNiVtYoHDQ6Gw43papt4QVihz4F3LqVadbUhyeX77B72etNhhitPVfA3w3BtLzcpWwS4gN96i67mc7zweRAvuRd: '1' + DdzFFzCqrhsfKJnaN6U5oQ455K9ugTSdp3rHEAgtuEGtgoPtAkPAWweXKJLcTTGMkfiwCpRjquUK9HAqLbpPjzzsF71DsgUE53kX2dD6: '1' + DdzFFzCqrhtA32AGBJnDM1JCyYvqXsxvBhwnry694koEBY27YESifEPCCBBEt7UTH95pDL238DNkgazeZCwDfEUn6YW2GTpvzDw9J5JF: '1' + DdzFFzCqrhtBTYY7mL4HnNoFpR4Yhuh9SaDbPGB6Vs71AvUFNAMkwCUGCSNzpxiE57XjWRste5QhrzBhfLB5WdtAR1kbBJ7B5Ejb6ZD5: '1' + DdzFFzCqrhtCraCNwTHxoCZeM4pEcfJPpF5DU2XKvorVtdN3U8PuHM2efNWLEmbvuFrkREDT9dBDkhczUqctP6rJ4ZNKxiYcMzrfx4yK: '1' + DdzFFzCqrhssQWcBX7GgNJ5nueGUa59JKWanrjsRTbeg5Ks2RjMB7nsbAgTbczw4de31X71KuiZv6zj18hAVq2UTmP9uKm2TeGkocsJ6: '1' + DdzFFzCqrhsxSdYvTsRjur3x1g23tXe41cSTn9mTBw9h76zc94KKohoRf3zhiG2EKSzpyPnGuLsN4f8e5x2pZSf59emBQaER8vrgT5KG: '1' + DdzFFzCqrhsiZKP4qWrrbuX7PovLEuGMFGpvnMfYWbsjLyfLqH5eAubSTpLvpS8N1XV1Xj5shZY5rtvdUW2zWtDz3DV6Mms1rSpzuf7B: '1' + DdzFFzCqrhst4ZXQBmZCSyinqjRf6zxVZirhoh5YcRA5mxigu8MrCubTuqQ8FsUJy3Sn4zzHAWrm8XgKQjnifKZZKhLfTQDDmjRTXv7t: '1' + DdzFFzCqrhsyP3PxMqF9oNVp5zMSitEoWWDpRrvvemT5cwfjjG55FafUwRkaUeTHvuvkUShtjuECycRLg28iTZHAV9xWdjK78tRGjkbn: '1' + DdzFFzCqrht7QZSiR1kWkoBvF4sfVdifesg7aXzMy4c9AqSCkcfw94HstiHFqxNDd6dcEDRBgum4in41HztJ1JDuRsauLXagfJ41pF2y: '1' + + # Legacy Funds (Trezor) + # + # (12 words) "walk", "license", "firm", "dwarf", "hundred", "pride", "ensure", "midnight", "unit", "keen", "warfare", "east" + Ae2tdPwUPEZ9W3XajXS7ypra9BBYkwfvTz1PinD1eSCxHCQjTmw99wBz39y: '100000000000' + Ae2tdPwUPEZEhg3LiSAMZmtosbQcAgSU4jvLhWSRyph8hwYqv9CzrFy6vQo: '100000000000' + Ae2tdPwUPEZ2zpcZVpVoBtGnncG3qSCMQGQ6M4pV2H2K5YyDhqZ7424GKyz: '100000000000' + Ae2tdPwUPEZ7tEnAvFtc3v7eP195XrS3pFgZSSCoa5S8oBFk6ztxVwmUcxA: '100000000000' + Ae2tdPwUPEZHanmRFbXA1f4pYrFRoBcDMG88CeV4Z57XpMUjqsc8jRz8GE3: '100000000000' + Ae2tdPwUPEZAyvGMHqdRfLcMuP6Ez6RgYjdyGUFBCeqzPqHbkn4wd3WQrgJ: '100000000000' + Ae2tdPwUPEZ2CdZbNdzsbu8yBU5ZK3XLEQa2pYwsZzgagKCMMdpRLKQKFfX: '100000000000' + Ae2tdPwUPEYzrrpt2NccDnv72v1noz2vTXt17UeHPtXuZztcqYM57ncCvfD: '100000000000' + Ae2tdPwUPEZFyBM66NYnCREpZy43gEpUKwyvYBdf8nK38N6VeKJoawNsVQC: '100000000000' + Ae2tdPwUPEZ7tNoEkK58MrWdR6q6unhSqDgXQvEc2XyRtNLgSWbCe3QZghK: '100000000000' + + # Legacy Funds (Trezor) + # + # (18 words) "hen", "idea", "mimic", "frog", "second", "magnet", "egg", "indicate", "jar", "girl", "broccoli", "heart", "verify", "person", "present", "toe", "vibrant", "unable" + Ae2tdPwUPEYzx9hEnPZKT14SfPmsQvpwL46yPRFqzkqBPTDpwwDBiSQSe5H: '100000000000' + Ae2tdPwUPEZJYmMs1z8Gh2eGZZR3uBqgcQxBevA3rsvWft3U9d6a8dGkcZ8: '100000000000' + Ae2tdPwUPEYw6pDMLtHTxBq8LnYCbXeey8AkPeL9DNkibDz4i1SssCTH8R5: '100000000000' + Ae2tdPwUPEZ4wqGZtptW4LxngfZjdmCRaLrsdo3H31CqFkrKH5fxF3GAUdm: '100000000000' + Ae2tdPwUPEYxyHGuNmABqY4P7uzzGd6UWVeguwgUrF3tV9AEptExgAbb2Ds: '100000000000' + Ae2tdPwUPEZ9wCuUSgeHEC7jMhiHS8hXWx8w1Vtt9ZxrzYoKDPbTKhdPAfJ: '100000000000' + Ae2tdPwUPEZ8Vt43wsBaAzHnEdvjwPnjAoWLC1xeJeNeWAvvZnNDAMwZ22b: '100000000000' + Ae2tdPwUPEYx21tKjtE2WzQsmsxNdVZQxCCgojUxMFtmCYR9gqqwXhBPm57: '100000000000' + Ae2tdPwUPEYxVQrJm6PuWkjgNadiUV3YfC2sCmQFDZqwuzNFGj7Tgp8n1Bi: '100000000000' + Ae2tdPwUPEYwBbU6ghpjWkNw81wZ6LdyWdZVMdoScDPiSV5ZhwSJzkZqus3: '100000000000' + + # Legacy Funds (Trezor) + # + # (24 words) "slot", "young", "shoot", "surround", "equal", "trouble", "rice", "update", "rare", "dinosaur", "drastic", "kitten", "mom", "actress", "salon", "abuse", "happy", "satisfy" + Ae2tdPwUPEZBvaca39j3KRRikqY3AGFseAtgBLdnV8pDArUS5pqyMAzXUzY: '100000000000' + Ae2tdPwUPEZ4MemwEvUPeHWHckYjfYGiU7qyLCJ6MumaU5c64YVboeVBU4o: '100000000000' + Ae2tdPwUPEZHwVZCJ9ntZM6w5XJ2z9QtZKwkuPUMBusiVx5q31KpqGR9FcJ: '100000000000' + Ae2tdPwUPEYygErppRsoEqXEyPGxEFsKVoa2BFKMG3prWh6sFi8VSgW4h3k: '100000000000' + Ae2tdPwUPEZCWwt43jbnf3RjEBqixpjkzMdTB9cyt7zJjVnq8PTnF55rHQL: '100000000000' + Ae2tdPwUPEYzbmFy6Mbn1WjwtQJyj71Wqj27jz9QpPty1KoyJL3tQh4XBkW: '100000000000' + Ae2tdPwUPEZ4m5XyBU9c41sareSBsLMoSn97co3XMnaGtuQDCPRywXp6bt5: '100000000000' + Ae2tdPwUPEZNLXT48whvAoRTn9bMeZweHhPqG7xFDzCrKfzGu8Ku8myrRcj: '100000000000' + Ae2tdPwUPEZMpnbSJauTkyFvaxzmcxbz29h4ogiQemoMDEwun5tAEQnHaV2: '100000000000' + Ae2tdPwUPEZEaxZqj8oXrCPuA3Ehaa5fa9kPAgpdLmgoSeKipZEPWo5qeQF: '100000000000' + + # Legacy Funds (Ledger) + # + # (12 words) "struggle", "section", "scissors", "siren", "garbage", "yellow", "maximum", "finger", "duty", "require", "mule", "earn" + "Ae2tdPwUPEZ4Gs4s2recjNjQHBKfuBTkeuqbHJJrC6CuyjGyUD44cCTq4sJ": '100000000000' + "Ae2tdPwUPEZ8ozZuJWsLVb7aEb5p9ntcja47B9i68GV3y9by1eY5C2y6WUT": '100000000000' + "Ae2tdPwUPEZJoUCoyoCxUAKAbn2vFo6nu6B7aTWL1Pv9MRKm8unG9ixLurg": '100000000000' + "Ae2tdPwUPEYwFNKLxqF8s31nbaNt5MZisVqsQ5qsiY763HY5wsBN3mSzPRa": '100000000000' + "Ae2tdPwUPEZ4ZXzzehKoWWC9QYVqJfEL9x63zjH6wyEJbNRsZ9eccR6nSpv": '100000000000' + "Ae2tdPwUPEYyX7ug8zm6K7nLWhgEEBo7Ewf1qALxkvqyHHSC5jMFzH418Q1": '100000000000' + "Ae2tdPwUPEZ95eCwDjNQjReRkeLZFv6kBs3vwaKPHJsw2cxXc3HaCD2jzqw": '100000000000' + "Ae2tdPwUPEZDHGbQ9sbLZuw3cfhcSzqqdK8Xj3dhAzmWZGeVgJhncu5LR9N": '100000000000' + "Ae2tdPwUPEYyDca1eVbeEea6CjihoMAgt6mPiNuC1hEpy5U2qQ1Tzt6E8q8": '100000000000' + "Ae2tdPwUPEZHRMjjXMT2icJXp5h2k2j3Ph6dB5iGRashA2QxHLgFZbHzdms": '100000000000' + + # Legacy Funds (Ledger) + # + # (18 words) "vague" , "wrist" , "poet" , "crazy" , "danger" , "dinner", "grace" , "home" , "naive" , "unfold" , "april" , "exile", "relief" , "rifle" , "ranch" , "tone" , "betray" , "wrong" + "Ae2tdPwUPEZMCGyPAK85FrcserPvzVZZUcbFk5TvDmL9LrUyq2KPYubPcru": '100000000000' + "Ae2tdPwUPEZ6drrnNd1KW3UoiU3U1ZK3mxSpQpFAdXzJHuwvDcYB7Wzxkp1": '100000000000' + "Ae2tdPwUPEZ7Jaw9qt1q2CjCcds6zpHMyzmPGDh9tBeyQG28AdRGHcaWYx7": '100000000000' + "Ae2tdPwUPEZ9SW4qxWkFoozTux5i7F9jVpHQFQUycQuNanSUScyMTYrnQXK": '100000000000' + "Ae2tdPwUPEZ6YegpN8XurGfWyKqkNHLgdbHpdohumKt5QpkNVJhw4FCSRdo": '100000000000' + "Ae2tdPwUPEZLgrXt3zJeHgFWM2stxRjdm6wWATSoUzJ1CmUxKqgbYQXR8cC": '100000000000' + "Ae2tdPwUPEZ6axGCfo5nCLn5hEoRo4yNmQKBzn12B2quPncgQRFP6JBZ2ex": '100000000000' + "Ae2tdPwUPEYzdHGmJDL9tEWXfzyshohvzyS3K9wmLc5qMrwRNFPQA611uzB": '100000000000' + "Ae2tdPwUPEYxLNQJXcT3XUh54BXn5w53pPe5EHMXo6qo47gpNM9QyJsaXz4": '100000000000' + "Ae2tdPwUPEYvq2fnzqs9EWxFF2j87nZzBAZZ7y3qoj5oTce1ZGvsc4potp3": '100000000000' + + # Legacy Funds (Ledger) + # + # (24 words) "recall" , "grace" , "sport" , "punch" , "exhibit" , "mad", "harbor" , "stand" , "obey" , "short" , "width" , "stem", "awkward" , "used" , "stairs" , "wool" , "ugly" , "trap", "season" , "stove" , "worth" , "toward" , "congress" , "jaguar" + "Ae2tdPwUPEZFvG914wGXtCsb9hCr9aKjJC2ZciLKSNRqAKtjnduH7XtPn78": '1000000000000' + "Ae2tdPwUPEZ8rVsdBE6EMZpac32MLzciY75MrwrPs8ikjf6MWYFJUHkGaw5": '1000000000000' + "Ae2tdPwUPEZADQdQy2cbHDwwFRYUcrfreiu82Ngm9Bxdw1pJqJFUnFoQmNL": '1000000000000' + "Ae2tdPwUPEZ3NULtb3fK6qtJYwJbVnmhDeWzoMbjzPbCsEC9MyB4foBABhz": '1000000000000' + "Ae2tdPwUPEZ3rGvPCdzCPrVRvzEfpUp8XnZ861nss3XfLun5wA3c3YMA41v": '1000000000000' + "Ae2tdPwUPEZ575pMY9TBJyPdrwGkq2kr49V9fuqRWpF6wM9JbuZLmxHDo2N": '1000000000000' + "Ae2tdPwUPEZFaVKwy9bcN81ZPVL8uHRfsrCj7ZZhbm2uqiwLrzsy9Bs1rBN": '1000000000000' + "Ae2tdPwUPEZ4K16qFm6qVRWTEGpq5TJiyt8ZojmRANTSpPDAWZuH2Ge85uB": '1000000000000' + "Ae2tdPwUPEZMMYd8JP9F16HJgCsDsPjUoERWoFzZugN4mNjhR9ZnFwPonCs": '1000000000000' + "Ae2tdPwUPEZ3anXo172NFuumSGjrvbk1pHK9LiF82nGmPKC52NMYR77V2dM": '1000000000000' diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis0.addr b/lib/shelley/test/data/cardano-node-shelley/byron-genesis0.addr new file mode 100644 index 00000000000..e69de29bb2d diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-payment.addr b/lib/shelley/test/data/cardano-node-shelley/byron-payment.addr new file mode 100644 index 00000000000..3103c61961b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/byron-payment.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZBYMg8DAAQmTWoWxrPLYzDFmTDnqy6qpJfs2J8adQy8TLo4V6 diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-payment.key b/lib/shelley/test/data/cardano-node-shelley/byron-payment.key new file mode 100644 index 00000000000..58183eeebf2 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/byron-payment.key @@ -0,0 +1 @@ +XF<;ޤ=Pbe\8S,fraڼgTd$e<0p@˺{v!q{z ("NmkD4Tyo@ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey b/lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey new file mode 100644 index 00000000000..a5ae1ac7229 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880084698d81fe21cf0c7e2c618a6e58ffd3c3bdea4d03d50126265b25c387fb353992c9b66a972611cbad9c8dabc675464f6adf6e324c96514c3d13c30a196a770a58ae5401acbba7be6cddc0e08ef76f79ed621f38471b37b7af60de8e0062822c7c6efefeb4e6d6bf6f38ddd44081234541f168679866ff9a3f0ebfa9d1d40dc" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/delegate-keys.000.key b/lib/shelley/test/data/cardano-node-shelley/delegate-keys.000.key new file mode 100644 index 0000000000000000000000000000000000000000..ebe7a70a2d3cadda7e48b5dcbcf0db335d132860 GIT binary patch literal 130 zcmV-|0Db>hfcQ46X)T-lx&T3qyilBpL=_uu*h zrnEc9eg0#EBLMLouPU*1;7qJM6nu(BiE?Q5)G?+~Y{%g8U=~)6qB<%I9?Gp7a#P4J k4<&>I#!E$-QCl}*?Q!aF3N@mYN+^^K-+_*|!j21mxwFAOw*UYD literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/delegation-cert.000.json b/lib/shelley/test/data/cardano-node-shelley/delegation-cert.000.json new file mode 100644 index 00000000000..0408cfe19e0 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/delegation-cert.000.json @@ -0,0 +1,8 @@ +{ "omega": 0 +, "issuerPk": + "EcTlNi0niDQxL/vck7Q5rykozISyOTEMstVojJLxNORm1WfbSglEW4VgpjbiEqw+2KKbc1ivP5QI6ng+ZTtiug==" +, "delegatePk": + "fIpFiXJo9dQxplJsx+DyYBZWjqI6Kgseyq0bclPILw8lhATGS0WaUVs3Ye1x6m8KNaKVSiiUDd+BjrfCjgt+uQ==" +, "cert": + "1ef766c62e55f6b81afd3785b37ad96e2cfb3fcf2c117050cbba8eeb2285f4428821afbe43580cfa08e0479b13d165a1a03fd57bcd26ce7c4e3c0892d25f5207" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr new file mode 100644 index 00000000000..4865040e505 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZGc7WAmkmXxP3QJ8aiKSMGgfWV6w4A58ebjpr5ah147VvJfDH diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.byron.key new file mode 100644 index 00000000000..b972926011d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.byron.key @@ -0,0 +1,2 @@ +XL +hfB<5aVC}DXl6<((fxW5rd>_N4LqsOMt@B0DT+g-eQ*bAAcbANd*|W~) zCSE7THk!rQ;d8c&UMVkIqv?%L-hrUBYgL-U!2%d8=4R)ze-qv<{x $dir/faucet$i.addr + + cardano-cli shelley key convert-byron-key \ + --byron-payment-key-type \ + --byron-signing-key-file $dir/faucet$i.byron.key \ + --out-file $dir/faucet$i.shelley.key +done + + diff --git a/lib/shelley/test/data/cardano-node-shelley/node.config b/lib/shelley/test/data/cardano-node-shelley/node.config index b5318a83bb1..20d49991e14 100644 --- a/lib/shelley/test/data/cardano-node-shelley/node.config +++ b/lib/shelley/test/data/cardano-node-shelley/node.config @@ -9,11 +9,12 @@ # |___/ NodeId: -Protocol: TPraos +Protocol: Cardano RequiresNetworkMagic: RequiresNoMagic TurnOnLogMetrics: False TurnOnLogging: True ViewMode: SimpleView +PBftSignatureThreshold: 1 # _ _ _ _ ____ @@ -25,10 +26,14 @@ ViewMode: SimpleView ApplicationName: cardano-sl ApplicationVersion: 1 -LastKnownBlockVersion-Major: 0 -LastKnownBlockVersion-Minor: 2 +LastKnownBlockVersion-Major: 1 +LastKnownBlockVersion-Minor: 0 LastKnownBlockVersion-Alt: 0 +# Set by Launcher code to trigger hard-fork. +# TestShelleyHardForkAtVersion: 1 +# TestShelleyHardForkAtEpoch: 1 + # _ _ # | | ___ __ _ __ _(_)_ __ __ _ diff --git a/lib/shelley/test/data/cardano-node-shelley/regenerate-byron.sh b/lib/shelley/test/data/cardano-node-shelley/regenerate-byron.sh new file mode 100755 index 00000000000..a988f982e5f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/regenerate-byron.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +set -euo pipefail + +cat > byron.genesis.spec.json < byron-genesis-init.yaml +mv -vf tmp/delegate-keys.*.key . +mv -vf tmp/delegation-cert.*.json . + +echo "Byron genesis created." +echo "Now merge byron-genesis-init.yaml into byron-genesis.yaml" diff --git a/lib/shelley/test/data/cardano-node-shelley/genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml similarity index 99% rename from lib/shelley/test/data/cardano-node-shelley/genesis.yaml rename to lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml index 8fc02a61fd7..49bbe83bd08 100644 --- a/lib/shelley/test/data/cardano-node-shelley/genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml @@ -15,6 +15,7 @@ --- activeSlotsCoeff: 0.5 +TestShelleyHardForkAtEpoch: 2 protocolParams: poolDeposit: 0 protocolVersion: @@ -43,9 +44,9 @@ protocolParams: tau: 0.0 a0: 0.1 genDelegs: - d4986e098ba851648d4399b15e818e3b33191b714eb9d3b33d4d2f70: - delegate: 2e47c73dee204605f8a1e76c6bb31b7930db8e469c2e64e20cc07faa - vrf: 8a41571fbe7d6899ce39d403dbdb40d5b71d92b404b7a1f7790a3b09080d1e2c + 8ae01cab15f6235958b1147e979987bbdb90788f7c4e185f1632427a: + delegate: b7bf59bb963aa785afe220f5b0d3deb826fd0bcaeeee58cb81ab443d + vrf: 4ebcf8b4c13c24d89144d72f544d1c425b4a3aa1ace30af4eb72752e75b40d3e updateQuorum: 5 maxMajorPV: 25446 maxLovelaceSupply: 45000000000000000 @@ -68,35 +69,35 @@ initialFunds: # $ cardano-cli shelley genesis initial-addr --mainnet --verification-key-file utxo.pub # $ cardano-cli shelley genesis initial-txin --mainnet --verification-key-file utxo.pub - # txin: cea1b041dd5465be636b5b88805571f83537bd503bc4db447f088d942673736c#0 + # txin: ca19b0e82b51213761a4ce234e84b02bcb35b4e0cc6c09207e6f9a0f45f9533d#0 # type: Genesis UTxO signing key # title: Genesis Initial UTxO Signing Key # cbor-hex: - # 5820db101b5f4cc53ca1d61f7505b23c05b1b58de0b9f509c4dfede4348549dbaa9d -- 614c85a0172b371b12b9c25c10f95f520097a04746a98ecd1eb3581793: 10000000000000 + # 58203ec965762b14406a605f0761222ce06e3632c3f3eea70a2762c8a43ea1403666 +- 61126ad4b7c56f6db2a6a83f40def1e071adc65734318fc68d05364f05: 10000000000000 - # txin: fa271c369d4d9a6b78e18f9d554730ef9978847ecb187c064cb9c8d56c2092cd#0 - # type: Genesis UTxO signing key + # txin: d021a0b60be98fce5214488f1cd0590b542d6ac7d3aa2d8bdd3a33531fd18cec#0 + # type: GenesisUTxOSigningKey_ed25519 # title: Genesis Initial UTxO Signing Key # cbor-hex: - # 582061e08f3e8ac1afbf0434fca2bb4aa6484270d8dd3e251c049006aab368a74a7e -- 615d67f3cced240a022d6fbb69e9a4dd0f63d4679b7392da7e0ba7503f: 10000000000000 + # 58202dc882a6ebf9c8beb9f30f595c597f4a9d4856b11eed576bd5ab2e1779f40cd5 +- 61e9de932d79f3ff9e041c793be1d4eb1205e10d97723fd8e737a21d96: 10000000000000 - # txin: 672d7558074f02c662b11a4ff761ec3a24c94a18b319033af5f9f22a03b8891b#0 + # txin: 28dd1a860627fe2577eb5f0a994ccd0292cc27add634bf8a7b4e7222bbce0af8#0 # xprv: # type: Genesis UTxO signing key # title: Genesis initial UTxO key # cbor-hex: - # 58204054ff827451cad61241450a09ea80c9d0658398f588ff976393ae8eacb859fe -- 61c68ea9804b0162e68ee2e9a5e71f3d10494be643327ab6274aaf0b3f: 10000000000000 + # 582003b5b3158de3a20886cbedbbbc566006d0d411d23c373a43fe817634e9390478 +- 61ca722c7639c12551e9e4b9352ee3fbc049c1b692d5a8ab8d9d1f74f5: 10000000000000 - # txin: ca97dc6662a21f1b7ea0790c380d13dad84386cbb7f731c7ba3982a8d105267b#0 + # txin: 306c27331900ae1c3d0dc31bba1c37365f594b9e1017048c6ccac054ec1b12b2#0 # xprv: # type: Genesis UTxO signing key # title: Genesis initial UTxO key # cbor-hex: - # 58204a7a8e7a1ba0d33c407dc3ceda225c605287cfb0e3b51d9eba3822abd6aa75ca -- 614d105f72fe03107047a9f72e93688ea34c45a5cf73af3e02bc8d5d4c: 10000000000000 + # 582022be977fea1ff0843059d7a202cc9d84678d8c7ea2f295844d6acc4312c29882 +- 61e5fbbb9b972b05ce0af48d9b410b850febdf36376c50aaa20ad3a026: 10000000000000 # txin: cfc08d97636877d94cd19a246e72d191bc3905712bbab8cdbb1aa240fc09be3c#0 # xprv: @@ -104,7 +105,7 @@ initialFunds: # title: Genesis initial UTxO key # cbor-hex: # 5820e96f612fbff3df3d8eef4ea3a07e3dc98769020545ced0167998a85a4cc50aa7 -- 6103c32076728a07982916b61bc95b7ffd4ca7f69c8097f3c0ffcdc4c5: 10000000000000 +- 614f03403749d2825ccb14376a1ccf60e1cc0f9e930d3aa9220880f2b6: 10000000000000 # # Byron wallets diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index e87341ed258..738b4ba89b3 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -69,6 +69,7 @@ import Cardano.Wallet.Shelley.Faucet import Cardano.Wallet.Shelley.Launch ( ClusterLog , PoolConfig (..) + , RunningNode (..) , withCluster , withSystemTempDir , withTempDir @@ -225,25 +226,37 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown race (takeMVar ctx >>= action') (withServer setupContext) >>= either pure (throwIO . ProcessHasExited "integration") - withServer onStart = bracketTracer' tr "withServer" $ do + withServer action = bracketTracer' tr "withServer" $ do minSev <- nodeMinSeverityFromEnv - let tr' = contramap MsgCluster tr withSystemTempDir tr' "test" $ \dir -> - withCluster tr' minSev testPoolConfigs dir $ - \socketPath block0 (gp, vData) -> - withTempDir tr' dir "wallets" $ \db -> do - serveWallet @(IO Shelley) - (SomeNetworkDiscriminant $ Proxy @'Mainnet) - tracers - (SyncTolerance 10) - (Just db) - "127.0.0.1" - ListenOnRandomPort - Nothing - socketPath - block0 - (gp, vData) - (onStart gp) + withCluster + tr' + minSev + testPoolConfigs + dir + onByron + afterFork + (onClusterStart action dir) + + tr' = contramap MsgCluster tr + onByron _ = pure () + afterFork _ = pure () + onClusterStart action dir (RunningNode socketPath block0 (gp, vData)) = do + -- NOTE: We may want to keep a wallet running across the fork, but + -- having three callbacks like this might not work well for that. + withTempDir tr' dir "wallets" $ \db -> do + serveWallet @(IO Shelley) + (SomeNetworkDiscriminant $ Proxy @'Mainnet) + tracers + (SyncTolerance 10) + (Just db) + "127.0.0.1" + ListenOnRandomPort + Nothing + socketPath + block0 + (gp, vData) + (action gp) -- | teardown after each test (currently only deleting all wallets) tearDown :: Context t -> IO () From 25183c09cf515bbe3894132f2471bc51eaa930f9 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Tue, 21 Jul 2020 22:26:21 +0200 Subject: [PATCH 40/86] Print cartouche when waiting for hard-fork to finish --- .../src/Cardano/Wallet/Shelley/Launch.hs | 36 +++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 19d777b3d6a..618318ede86 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -186,7 +186,6 @@ import qualified Data.Yaml as Yaml import qualified Shelley.Spec.Ledger.Address as SL import qualified Shelley.Spec.Ledger.Coin as SL --- | Example byron;shelley using manual HardForkOnTrigger dev :: IO () dev = do let dir = "/tmp/fork" @@ -208,8 +207,6 @@ dev = do _action _fp _b0 (_np, _vData) _triggerHardFork = do putStrLn "hi" --- | Example byron;shelley using HardForkAtEpoch 1, and withCluster, which --- tries to register stake pools. dev2 :: IO () dev2 = do let dir = "/tmp/fork" @@ -464,10 +461,13 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = withBFTNode tr dir 0 bftCfg $ \bftSocket block0 params -> do let runningBftNode = RunningNode bftSocket block0 params onByron runningBftNode + updateVersion tr dir bftSocket -- TODO: Maybe poll and detect when the fork occurs + traceWith tr MsgForkCartouche waitForHardFork bftSocket 2 onFork runningBftNode + setEnv "CARDANO_NODE_SOCKET_PATH" bftSocket waitForSocket tr bftSocket waitGroup <- newChan @@ -499,7 +499,7 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = writeChan waitGroup $ Right port readChan doneGroup) - traceWith tr MsgCartouche + traceWith tr MsgClusterCartouche group <- waitAll if length (filter isRight group) /= poolCount then do cancelAll @@ -1458,8 +1458,21 @@ timeout t (title, action) = do Right a -> pure a -- | A little notice shown in the logs when setting up the cluster. -cartouche :: Text -cartouche = T.unlines +forkCartouche :: Text +forkCartouche = T.unlines + [ "" + , "########################################################################" + , "# #" + , "# Transition from byron to shelley has been triggered. #" + , "# #" + , "# This may take roughly 60s. Please be patient... #" + , "# #" + , "########################################################################" + ] + +-- | A little notice shown in the logs when setting up the cluster. +clusterCartouche :: Text +clusterCartouche = T.unlines [ "" , "########################################################################" , "# #" @@ -1468,7 +1481,7 @@ cartouche = T.unlines , "# Cluster is booting. Stake pools are being registered on chain. #" , "# #" , "# This may take roughly 60s, after which pools will become active #" - , "# and will start producing blocks. Please be patient... #" + , "# and will start producing blocks. Please be even more patient... #" , "# #" , "# ⚠ NOTICE ⚠ #" , "# #" @@ -1518,7 +1531,8 @@ withSystemTempDir tr name action = do -------------------------------------------------------------------------------} data ClusterLog - = MsgCartouche + = MsgClusterCartouche + | MsgForkCartouche | MsgLauncher String LauncherLog | MsgStartedStaticServer String FilePath | MsgTempNoCleanup FilePath @@ -1535,7 +1549,8 @@ data ClusterLog instance ToText ClusterLog where toText = \case - MsgCartouche -> cartouche + MsgClusterCartouche -> clusterCartouche + MsgForkCartouche -> forkCartouche MsgLauncher name msg -> T.pack name <> " " <> toText msg MsgStartedStaticServer baseUrl fp -> @@ -1571,7 +1586,8 @@ instance ToText ClusterLog where instance HasPrivacyAnnotation ClusterLog instance HasSeverityAnnotation ClusterLog where getSeverityAnnotation = \case - MsgCartouche -> Warning + MsgClusterCartouche -> Warning + MsgForkCartouche -> Warning MsgLauncher _ msg -> getSeverityAnnotation msg MsgStartedStaticServer _ _ -> Info MsgTempNoCleanup _ -> Notice From 5d1e611799fab4fe09fe54c19acc726797e5c0e2 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 02:09:12 +0200 Subject: [PATCH 41/86] wip: add working sendFaucetFundsTo --- .../src/Test/Integration/Faucet.hs | 33 +++--- .../src/Cardano/Wallet/Shelley/Launch.hs | 63 ++++++++++- .../cardano-node-shelley/byron-genesis.yaml | 101 ++++++++++++++++++ .../faucet-addrs/faucet1.addr | 2 +- .../faucet-addrs/faucet1.byron.key | Bin 130 -> 130 bytes .../faucet-addrs/faucet1.shelley.key | 2 +- .../faucet-addrs/faucet10.addr | 1 + .../faucet-addrs/faucet10.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet10.shelley.key | 5 + .../faucet-addrs/faucet100.addr | 1 + .../faucet-addrs/faucet100.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet100.shelley.key | 5 + .../faucet-addrs/faucet11.addr | 1 + .../faucet-addrs/faucet11.byron.key | 1 + .../faucet-addrs/faucet11.shelley.key | 5 + .../faucet-addrs/faucet12.addr | 1 + .../faucet-addrs/faucet12.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet12.shelley.key | 5 + .../faucet-addrs/faucet13.addr | 1 + .../faucet-addrs/faucet13.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet13.shelley.key | 5 + .../faucet-addrs/faucet14.addr | 1 + .../faucet-addrs/faucet14.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet14.shelley.key | 5 + .../faucet-addrs/faucet15.addr | 1 + .../faucet-addrs/faucet15.byron.key | 1 + .../faucet-addrs/faucet15.shelley.key | 5 + .../faucet-addrs/faucet16.addr | 1 + .../faucet-addrs/faucet16.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet16.shelley.key | 5 + .../faucet-addrs/faucet17.addr | 1 + .../faucet-addrs/faucet17.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet17.shelley.key | 5 + .../faucet-addrs/faucet18.addr | 1 + .../faucet-addrs/faucet18.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet18.shelley.key | 5 + .../faucet-addrs/faucet19.addr | 1 + .../faucet-addrs/faucet19.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet19.shelley.key | 5 + .../faucet-addrs/faucet2.addr | 2 +- .../faucet-addrs/faucet2.byron.key | Bin 130 -> 130 bytes .../faucet-addrs/faucet2.shelley.key | 2 +- .../faucet-addrs/faucet20.addr | 1 + .../faucet-addrs/faucet20.byron.key | 1 + .../faucet-addrs/faucet20.shelley.key | 5 + .../faucet-addrs/faucet21.addr | 1 + .../faucet-addrs/faucet21.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet21.shelley.key | 5 + .../faucet-addrs/faucet22.addr | 1 + .../faucet-addrs/faucet22.byron.key | 1 + .../faucet-addrs/faucet22.shelley.key | 5 + .../faucet-addrs/faucet23.addr | 1 + .../faucet-addrs/faucet23.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet23.shelley.key | 5 + .../faucet-addrs/faucet24.addr | 1 + .../faucet-addrs/faucet24.byron.key | 1 + .../faucet-addrs/faucet24.shelley.key | 5 + .../faucet-addrs/faucet25.addr | 1 + .../faucet-addrs/faucet25.byron.key | 1 + .../faucet-addrs/faucet25.shelley.key | 5 + .../faucet-addrs/faucet26.addr | 1 + .../faucet-addrs/faucet26.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet26.shelley.key | 5 + .../faucet-addrs/faucet27.addr | 1 + .../faucet-addrs/faucet27.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet27.shelley.key | 5 + .../faucet-addrs/faucet28.addr | 1 + .../faucet-addrs/faucet28.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet28.shelley.key | 5 + .../faucet-addrs/faucet29.addr | 1 + .../faucet-addrs/faucet29.byron.key | 1 + .../faucet-addrs/faucet29.shelley.key | 5 + .../faucet-addrs/faucet3.addr | 2 +- .../faucet-addrs/faucet3.byron.key | Bin 130 -> 130 bytes .../faucet-addrs/faucet3.shelley.key | 2 +- .../faucet-addrs/faucet30.addr | 1 + .../faucet-addrs/faucet30.byron.key | 1 + .../faucet-addrs/faucet30.shelley.key | 5 + .../faucet-addrs/faucet31.addr | 1 + .../faucet-addrs/faucet31.byron.key | 3 + .../faucet-addrs/faucet31.shelley.key | 5 + .../faucet-addrs/faucet32.addr | 1 + .../faucet-addrs/faucet32.byron.key | 1 + .../faucet-addrs/faucet32.shelley.key | 5 + .../faucet-addrs/faucet33.addr | 1 + .../faucet-addrs/faucet33.byron.key | 2 + .../faucet-addrs/faucet33.shelley.key | 5 + .../faucet-addrs/faucet34.addr | 1 + .../faucet-addrs/faucet34.byron.key | 2 + .../faucet-addrs/faucet34.shelley.key | 5 + .../faucet-addrs/faucet35.addr | 1 + .../faucet-addrs/faucet35.byron.key | 2 + .../faucet-addrs/faucet35.shelley.key | 5 + .../faucet-addrs/faucet36.addr | 1 + .../faucet-addrs/faucet36.byron.key | 2 + .../faucet-addrs/faucet36.shelley.key | 5 + .../faucet-addrs/faucet37.addr | 1 + .../faucet-addrs/faucet37.byron.key | 2 + .../faucet-addrs/faucet37.shelley.key | 5 + .../faucet-addrs/faucet38.addr | 1 + .../faucet-addrs/faucet38.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet38.shelley.key | 5 + .../faucet-addrs/faucet39.addr | 1 + .../faucet-addrs/faucet39.byron.key | 1 + .../faucet-addrs/faucet39.shelley.key | 5 + .../faucet-addrs/faucet4.addr | 2 +- .../faucet-addrs/faucet4.byron.key | Bin 130 -> 130 bytes .../faucet-addrs/faucet4.shelley.key | 2 +- .../faucet-addrs/faucet40.addr | 1 + .../faucet-addrs/faucet40.byron.key | 1 + .../faucet-addrs/faucet40.shelley.key | 5 + .../faucet-addrs/faucet41.addr | 1 + .../faucet-addrs/faucet41.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet41.shelley.key | 5 + .../faucet-addrs/faucet42.addr | 1 + .../faucet-addrs/faucet42.byron.key | 2 + .../faucet-addrs/faucet42.shelley.key | 5 + .../faucet-addrs/faucet43.addr | 1 + .../faucet-addrs/faucet43.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet43.shelley.key | 5 + .../faucet-addrs/faucet44.addr | 1 + .../faucet-addrs/faucet44.byron.key | 2 + .../faucet-addrs/faucet44.shelley.key | 5 + .../faucet-addrs/faucet45.addr | 1 + .../faucet-addrs/faucet45.byron.key | 1 + .../faucet-addrs/faucet45.shelley.key | 5 + .../faucet-addrs/faucet46.addr | 1 + .../faucet-addrs/faucet46.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet46.shelley.key | 5 + .../faucet-addrs/faucet47.addr | 1 + .../faucet-addrs/faucet47.byron.key | 1 + .../faucet-addrs/faucet47.shelley.key | 5 + .../faucet-addrs/faucet48.addr | 1 + .../faucet-addrs/faucet48.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet48.shelley.key | 5 + .../faucet-addrs/faucet49.addr | 1 + .../faucet-addrs/faucet49.byron.key | 1 + .../faucet-addrs/faucet49.shelley.key | 5 + .../faucet-addrs/faucet5.addr | 2 +- .../faucet-addrs/faucet5.byron.key | Bin 130 -> 130 bytes .../faucet-addrs/faucet5.shelley.key | 2 +- .../faucet-addrs/faucet50.addr | 1 + .../faucet-addrs/faucet50.byron.key | 1 + .../faucet-addrs/faucet50.shelley.key | 5 + .../faucet-addrs/faucet51.addr | 1 + .../faucet-addrs/faucet51.byron.key | 2 + .../faucet-addrs/faucet51.shelley.key | 5 + .../faucet-addrs/faucet52.addr | 1 + .../faucet-addrs/faucet52.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet52.shelley.key | 5 + .../faucet-addrs/faucet53.addr | 1 + .../faucet-addrs/faucet53.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet53.shelley.key | 5 + .../faucet-addrs/faucet54.addr | 1 + .../faucet-addrs/faucet54.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet54.shelley.key | 5 + .../faucet-addrs/faucet55.addr | 1 + .../faucet-addrs/faucet55.byron.key | 2 + .../faucet-addrs/faucet55.shelley.key | 5 + .../faucet-addrs/faucet56.addr | 1 + .../faucet-addrs/faucet56.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet56.shelley.key | 5 + .../faucet-addrs/faucet57.addr | 1 + .../faucet-addrs/faucet57.byron.key | 2 + .../faucet-addrs/faucet57.shelley.key | 5 + .../faucet-addrs/faucet58.addr | 1 + .../faucet-addrs/faucet58.byron.key | 1 + .../faucet-addrs/faucet58.shelley.key | 5 + .../faucet-addrs/faucet59.addr | 1 + .../faucet-addrs/faucet59.byron.key | 1 + .../faucet-addrs/faucet59.shelley.key | 5 + .../faucet-addrs/faucet6.addr | 1 + .../faucet-addrs/faucet6.byron.key | 1 + .../faucet-addrs/faucet6.shelley.key | 5 + .../faucet-addrs/faucet60.addr | 1 + .../faucet-addrs/faucet60.byron.key | 1 + .../faucet-addrs/faucet60.shelley.key | 5 + .../faucet-addrs/faucet61.addr | 1 + .../faucet-addrs/faucet61.byron.key | 1 + .../faucet-addrs/faucet61.shelley.key | 5 + .../faucet-addrs/faucet62.addr | 1 + .../faucet-addrs/faucet62.byron.key | 1 + .../faucet-addrs/faucet62.shelley.key | 5 + .../faucet-addrs/faucet63.addr | 1 + .../faucet-addrs/faucet63.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet63.shelley.key | 5 + .../faucet-addrs/faucet64.addr | 1 + .../faucet-addrs/faucet64.byron.key | 1 + .../faucet-addrs/faucet64.shelley.key | 5 + .../faucet-addrs/faucet65.addr | 1 + .../faucet-addrs/faucet65.byron.key | 2 + .../faucet-addrs/faucet65.shelley.key | 5 + .../faucet-addrs/faucet66.addr | 1 + .../faucet-addrs/faucet66.byron.key | 1 + .../faucet-addrs/faucet66.shelley.key | 5 + .../faucet-addrs/faucet67.addr | 1 + .../faucet-addrs/faucet67.byron.key | 1 + .../faucet-addrs/faucet67.shelley.key | 5 + .../faucet-addrs/faucet68.addr | 1 + .../faucet-addrs/faucet68.byron.key | 2 + .../faucet-addrs/faucet68.shelley.key | 5 + .../faucet-addrs/faucet69.addr | 1 + .../faucet-addrs/faucet69.byron.key | 2 + .../faucet-addrs/faucet69.shelley.key | 5 + .../faucet-addrs/faucet7.addr | 1 + .../faucet-addrs/faucet7.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet7.shelley.key | 5 + .../faucet-addrs/faucet70.addr | 1 + .../faucet-addrs/faucet70.byron.key | 3 + .../faucet-addrs/faucet70.shelley.key | 5 + .../faucet-addrs/faucet71.addr | 1 + .../faucet-addrs/faucet71.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet71.shelley.key | 5 + .../faucet-addrs/faucet72.addr | 1 + .../faucet-addrs/faucet72.byron.key | 1 + .../faucet-addrs/faucet72.shelley.key | 5 + .../faucet-addrs/faucet73.addr | 1 + .../faucet-addrs/faucet73.byron.key | 2 + .../faucet-addrs/faucet73.shelley.key | 5 + .../faucet-addrs/faucet74.addr | 1 + .../faucet-addrs/faucet74.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet74.shelley.key | 5 + .../faucet-addrs/faucet75.addr | 1 + .../faucet-addrs/faucet75.byron.key | 1 + .../faucet-addrs/faucet75.shelley.key | 5 + .../faucet-addrs/faucet76.addr | 1 + .../faucet-addrs/faucet76.byron.key | 1 + .../faucet-addrs/faucet76.shelley.key | 5 + .../faucet-addrs/faucet77.addr | 1 + .../faucet-addrs/faucet77.byron.key | 1 + .../faucet-addrs/faucet77.shelley.key | 5 + .../faucet-addrs/faucet78.addr | 1 + .../faucet-addrs/faucet78.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet78.shelley.key | 5 + .../faucet-addrs/faucet79.addr | 1 + .../faucet-addrs/faucet79.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet79.shelley.key | 5 + .../faucet-addrs/faucet8.addr | 1 + .../faucet-addrs/faucet8.byron.key | 1 + .../faucet-addrs/faucet8.shelley.key | 5 + .../faucet-addrs/faucet80.addr | 1 + .../faucet-addrs/faucet80.byron.key | 1 + .../faucet-addrs/faucet80.shelley.key | 5 + .../faucet-addrs/faucet81.addr | 1 + .../faucet-addrs/faucet81.byron.key | 1 + .../faucet-addrs/faucet81.shelley.key | 5 + .../faucet-addrs/faucet82.addr | 1 + .../faucet-addrs/faucet82.byron.key | 2 + .../faucet-addrs/faucet82.shelley.key | 5 + .../faucet-addrs/faucet83.addr | 1 + .../faucet-addrs/faucet83.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet83.shelley.key | 5 + .../faucet-addrs/faucet84.addr | 1 + .../faucet-addrs/faucet84.byron.key | 1 + .../faucet-addrs/faucet84.shelley.key | 5 + .../faucet-addrs/faucet85.addr | 1 + .../faucet-addrs/faucet85.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet85.shelley.key | 5 + .../faucet-addrs/faucet86.addr | 1 + .../faucet-addrs/faucet86.byron.key | 2 + .../faucet-addrs/faucet86.shelley.key | 5 + .../faucet-addrs/faucet87.addr | 1 + .../faucet-addrs/faucet87.byron.key | 1 + .../faucet-addrs/faucet87.shelley.key | 5 + .../faucet-addrs/faucet88.addr | 1 + .../faucet-addrs/faucet88.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet88.shelley.key | 5 + .../faucet-addrs/faucet89.addr | 1 + .../faucet-addrs/faucet89.byron.key | 1 + .../faucet-addrs/faucet89.shelley.key | 5 + .../faucet-addrs/faucet9.addr | 1 + .../faucet-addrs/faucet9.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet9.shelley.key | 5 + .../faucet-addrs/faucet90.addr | 1 + .../faucet-addrs/faucet90.byron.key | 2 + .../faucet-addrs/faucet90.shelley.key | 5 + .../faucet-addrs/faucet91.addr | 1 + .../faucet-addrs/faucet91.byron.key | 2 + .../faucet-addrs/faucet91.shelley.key | 5 + .../faucet-addrs/faucet92.addr | 1 + .../faucet-addrs/faucet92.byron.key | 3 + .../faucet-addrs/faucet92.shelley.key | 5 + .../faucet-addrs/faucet93.addr | 1 + .../faucet-addrs/faucet93.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet93.shelley.key | 5 + .../faucet-addrs/faucet94.addr | 1 + .../faucet-addrs/faucet94.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet94.shelley.key | 5 + .../faucet-addrs/faucet95.addr | 1 + .../faucet-addrs/faucet95.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet95.shelley.key | 5 + .../faucet-addrs/faucet96.addr | 1 + .../faucet-addrs/faucet96.byron.key | 1 + .../faucet-addrs/faucet96.shelley.key | 5 + .../faucet-addrs/faucet97.addr | 1 + .../faucet-addrs/faucet97.byron.key | Bin 0 -> 130 bytes .../faucet-addrs/faucet97.shelley.key | 5 + .../faucet-addrs/faucet98.addr | 1 + .../faucet-addrs/faucet98.byron.key | 1 + .../faucet-addrs/faucet98.shelley.key | 5 + .../faucet-addrs/faucet99.addr | 1 + .../faucet-addrs/faucet99.byron.key | 1 + .../faucet-addrs/faucet99.shelley.key | 5 + .../cardano-node-shelley/gen-byron-funds.sh | 2 +- lib/shelley/test/integration/Main.hs | 22 +++- 305 files changed, 856 insertions(+), 37 deletions(-) create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet11.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet11.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet11.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet12.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet12.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet12.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet19.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet19.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet19.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet20.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet20.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet20.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet22.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet22.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet22.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet23.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet23.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet23.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet24.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet24.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet24.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet26.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet26.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet26.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet33.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet33.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet33.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet39.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet39.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet39.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet40.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet40.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet40.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet41.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet41.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet41.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet42.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet42.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet42.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet43.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet43.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet43.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet48.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet48.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet48.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet49.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet49.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet49.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet52.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet52.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet52.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet54.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet54.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet54.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet57.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet57.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet57.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet72.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet72.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet72.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet73.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet73.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet73.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet79.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet79.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet79.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet81.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet81.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet81.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet82.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet82.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet82.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet84.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet84.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet84.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet85.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet85.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet85.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet86.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet86.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet86.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet95.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet95.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet95.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet96.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet96.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet96.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet97.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet97.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet97.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet98.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet98.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet98.shelley.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet99.addr create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet99.byron.key create mode 100644 lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet99.shelley.key diff --git a/lib/core-integration/src/Test/Integration/Faucet.hs b/lib/core-integration/src/Test/Integration/Faucet.hs index 60a0b700bb7..cdb3763192d 100644 --- a/lib/core-integration/src/Test/Integration/Faucet.hs +++ b/lib/core-integration/src/Test/Integration/Faucet.hs @@ -21,6 +21,7 @@ module Test.Integration.Faucet , genIcarusFaucets , genShelleyFaucets , genMnemonics + , genShelleyAddresses ) where import Prelude hiding @@ -1388,27 +1389,27 @@ genIcarusFaucets = genFaucet encodeAddress genAddresses -- -- >>> genMnemonics 100 >>= genShelleyFaucets "shelley-faucets.yaml" genShelleyFaucets :: FilePath -> [Mnemonic 15] -> IO () -genShelleyFaucets = genFaucet encodeAddress genAddresses +genShelleyFaucets = genFaucet encodeAddress genShelleyAddresses where encodeAddress :: Address -> Text encodeAddress (Address bytes) = T.decodeUtf8 $ convertToBase Base16 bytes - genAddresses :: Mnemonic 15 -> [Address] - genAddresses mw = - let - (seed, pwd) = - (SomeMnemonic mw, mempty) - rootXPrv = - Shelley.generateKeyFromSeed (seed, Nothing) pwd - accXPrv = - deriveAccountPrivateKey pwd rootXPrv minBound - addrXPrv = - deriveAddressPrivateKey pwd accXPrv UTxOExternal - in - [ paymentAddress @'Mainnet $ publicKey $ addrXPrv ix - | ix <- [minBound..maxBound] - ] +genShelleyAddresses :: Mnemonic 15 -> [Address] +genShelleyAddresses mw = + let + (seed, pwd) = + (SomeMnemonic mw, mempty) + rootXPrv = + Shelley.generateKeyFromSeed (seed, Nothing) pwd + accXPrv = + deriveAccountPrivateKey pwd rootXPrv minBound + addrXPrv = + deriveAddressPrivateKey pwd accXPrv UTxOExternal + in + [ paymentAddress @'Mainnet $ publicKey $ addrXPrv ix + | ix <- [minBound..maxBound] + ] -- | Abstract function for generating a faucet. genFaucet diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 618318ede86..d9f29a9ae87 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -25,6 +25,7 @@ module Cardano.Wallet.Shelley.Launch withCluster , dev , dev2 + , sendFaucetFundsTo , withBFTNode , withStakePool , NodeParams (..) @@ -74,6 +75,7 @@ import Cardano.Wallet.Primitive.AddressDerivation ( NetworkDiscriminant (..), hex ) import Cardano.Wallet.Primitive.Types ( Block (..) + , Coin (..) , EpochNo (..) , NetworkParameters (..) , PoolId (..) @@ -209,7 +211,6 @@ dev = do dev2 :: IO () dev2 = do - let dir = "/tmp/fork" exists <- doesDirectoryExist dir when exists $ removeDirectoryRecursive dir @@ -218,11 +219,17 @@ dev2 = do let pools = replicate 3 $ PoolConfig Nothing withCluster stdoutTextTracer Notice pools dir onByron afterFork onClusterStart where - onByron = \_ -> do + dir = "/tmp/fork" + onByron _ = do putStrLn "### Byron has started!" - afterFork = \_ -> do + afterFork _ = do putStrLn "### Fork has occured!" - onClusterStart = \_ -> do + sendFaucetFundsTo stdoutTextTracer dir + [ ("addr1vx0d0kyppx3qls8laq5jvpq0qa52d0gahm8tsyj2jpg0lpg4ue9lt" + , Coin $ fromIntegral oneMillionAda + ) + ] + onClusterStart _ = do putStrLn "### Cluster has started" -- | Shelley hard fork network configuration has two genesis datas. @@ -1110,6 +1117,43 @@ preparePoolRegistration tr dir stakePub certs pledgeAmt = do pure (file, faucetPrv) +sendFaucetFundsTo + :: Tracer IO ClusterLog + -> FilePath + -> [(String, Coin)] + -> IO () +sendFaucetFundsTo tr dir allTargets = do + forM_ (group 20 allTargets) sendBatch + where + sendBatch targets = do + (faucetInput, faucetPrv) <- takeFaucet + let file = dir "facuet-tx.raw" + let outputs = flip concatMap targets $ \(addr, (Coin c)) -> + ["--tx-out", addr <> "+" <> show c] + + let total = fromIntegral $ sum $ map (getCoin . snd) targets + when (total > faucetAmt) $ error "sendFaucetFundsTo: too much to pay" + + void $ cli tr $ + [ "shelley", "transaction", "build-raw" + , "--tx-in", faucetInput + , "--ttl", "600" + , "--fee", show (faucetAmt - total) + , "--out-file", file + ] ++ outputs + + tx <- signTx tr dir file [faucetPrv] + submitTxNoRetry tr tx + + -- TODO: Use split package? + -- https://stackoverflow.com/questions/12876384/grouping-a-list-into-lists-of-n-elements-in-haskell + group :: Int -> [a] -> [[a]] + group _ [] = [] + group n l + | n > 0 = (take n l) : (group n (drop n l)) + | otherwise = error "Negative or zero n" + + -- | Generate a raw transaction. We kill two birds one stone here by also -- automatically delegating 'pledge' amount to the given stake key. prepareKeyRegistration @@ -1176,6 +1220,15 @@ submitTx tr name signedTx = do , "--mainnet", "--cardano-mode" ] +-- | Submit a transaction through a running node. +submitTxNoRetry :: Tracer IO ClusterLog -> FilePath -> IO () +submitTxNoRetry tr signedTx = do + void $ cli tr + [ "shelley", "transaction", "submit" + , "--tx-file", signedTx + , "--mainnet", "--cardano-mode" + ] + -- | Wait for a command which depends on connecting to the given socket path to -- succeed. -- @@ -1228,7 +1281,7 @@ takeFaucet = do source ("faucet-addrs/faucet" <> show i <> ".addr") putStrLn $ "about to read faucet: " <> B8.unpack base58Addr let Just addr = decodeBase58 bitcoinAlphabet $ BS.init base58Addr - let txin = (B8.unpack $ hex $ blake2b256 addr) <> "#0" + let txin = B8.unpack (hex $ blake2b256 addr) <> "#0" let signingKey = source ("faucet-addrs/faucet" <> show i <> ".shelley.key") pure (txin, signingKey) where diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml index 2a53460bbc7..02c2c312154 100644 --- a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml @@ -48,6 +48,107 @@ nonAvvmBalances: Ae2tdPwUPEZ2pEgBhSNKiUXRfhb5p8jByYiJXAsokHdLGMVeqLjHFNaEr7b: '1000000000000000' VhLXUZmS1gXFnDcCzVHi2BqhkA1cvDUZrMvGfYotD4eEjKnkdfid7YsY: '1000000000000000' + Ae2tdPwUPEYxYSimKRCvz9iqtsCEAeN6KR7SC1dWFYgCVb18ttTrJaht4qz: '1000000000000000' + Ae2tdPwUPEZ16WMj3KGxQxTtm7cgY2oygWF8Pk1gWRCL9phsawFoJUQo8V4: '1000000000000000' + Ae2tdPwUPEZ3S2LzBCw3v9qm7ZfADBeHa8GjC4g71bKLeS1HJiNPz58efsG: '1000000000000000' + Ae2tdPwUPEZ5MEg5J9CJBuanYyoAeq8Usyeh3mTpAjFAfaMUHErZCC6VESB: '1000000000000000' + Ae2tdPwUPEZKTEGqULNJggS2feij8B5DEkTgvj4pf6BX9xaNWsrk83a94op: '1000000000000000' + Ae2tdPwUPEZ1x5d9EZgDis5f33LKFR4ZrGwh3uhYVYThiubgFSzSa5ZWWjn: '1000000000000000' + Ae2tdPwUPEZLEiDLGWsbGYvnKQbDxJaUJ6PPx7ynjAjnLsNjsBB9qfwD8FL: '1000000000000000' + Ae2tdPwUPEZEMR4QcU9rFCeTK8G6E5ABNAhiuEDzritQarbJ56GBMbPem8v: '1000000000000000' + Ae2tdPwUPEZMgjLUEpnfpbaGrrBc3mcfLMgzT8JL2rsWcE8YGuwerng4JTx: '1000000000000000' + Ae2tdPwUPEZCdpgB296udjjMqK4crPXjpMz9zzzk1QARbC844JqYGygKZck: '1000000000000000' + Ae2tdPwUPEZC7DMJnx7xpRjG9wQXsNtCKvkB5RhDqK9zzra96ugUfMgkw6F: '1000000000000000' + Ae2tdPwUPEZA2Hxg2X94qnx42UwLdnC2vfjSw1na2jcWnS2LjeoazWgcGqz: '1000000000000000' + Ae2tdPwUPEYzwDXTM8VDDNG48ZVJPZT5ev3BGpLsBZqkYeP9Ay6keHQiUHN: '1000000000000000' + Ae2tdPwUPEZK5jjAU6gc8o1Hxk9FGC2JXYR29eRj2zvYDVRy3oJKmzkkWXr: '1000000000000000' + Ae2tdPwUPEZHRYGpLbcxzKSBFmVghBdUbMLD7Z1RP3CaWmE2MfudSCdLERE: '1000000000000000' + Ae2tdPwUPEZ3YosvMkMYRuHAzGXmj9FDZiSWxZJxY2bfjtXQupV6cFufGxj: '1000000000000000' + Ae2tdPwUPEZAUVNwHSzyz3RRhe9hgFNvw6ZBWgusousZEu71AUxwkjTJQXd: '1000000000000000' + Ae2tdPwUPEZBWbsXKZ6Xj1hVqNrJevo1MguQErP7Ekws9Mwe3QyApRbfzuj: '1000000000000000' + Ae2tdPwUPEZBwEwpyZ86qJJ5UcBs7zENaB9JmB1ccKKrjF2m8WqYvRLQTUQ: '1000000000000000' + Ae2tdPwUPEZLVrvsAkoKffT5T2Ny9peTcw1pgDQZGUNuyhsShZYRGdJdg3P: '1000000000000000' + Ae2tdPwUPEZMMcjnYLD8hNzD8rBuQX4Rbwh4Hrri9wo9Vd3QhWgJp82Q3Zb: '1000000000000000' + Ae2tdPwUPEZNCXJnNKSoVwATYNRoehHnwhQLeg7Voeun7aKgw7pBELp9Xyx: '1000000000000000' + Ae2tdPwUPEZMZgPQpYm9VNwW6o1y9gtgmmuto8XxnVzJQnQWNyfbK1ehxhG: '1000000000000000' + Ae2tdPwUPEYx5Boej5GuTgWrL6yhioVeAN9KybWPCZgfbzTNfE4p134zvFr: '1000000000000000' + Ae2tdPwUPEZAGMrgFKgSjDymZ6bRhcuCgK53xX5n7xcDUHC8MnijrSVU69g: '1000000000000000' + Ae2tdPwUPEZL7g7DTRjBp63JMbSouTPJcjjZD6GQCiK3HseKbs2AYHLwcUk: '1000000000000000' + Ae2tdPwUPEYw3nfF8ceQBJZ3zFL4jP9SFoyJ6N1qYTj6fk1SLaxUhrYFqAp: '1000000000000000' + Ae2tdPwUPEZBWq2xEQD7NacM1cmTAvnRdwnLX5jGkBvvZpjBCCaTyVbQyCg: '1000000000000000' + Ae2tdPwUPEZ2BJqnSoUrhVQ4Nf5XmHP6beK1LvYrZFaJqG6PLbHtEKzQCFV: '1000000000000000' + Ae2tdPwUPEZLGkJsDc5t8WUgPafrvpQkTjXhc3zwZfT2RRSD2SCDwGJ2gko: '1000000000000000' + Ae2tdPwUPEZG48xoQbHyjEw4sAz4KFFPC6H3RjvZoqDd7ui1hnBoCZ7hjZK: '1000000000000000' + Ae2tdPwUPEZGjAkaWbCogSWVBjhUxnF2sMRq2QUu82itFU4PAcdo8NkLBGx: '1000000000000000' + Ae2tdPwUPEZGUUmRGEwhKYoGtuqjubky2tQDB4b59RVsEaMedoNjkgBhz3z: '1000000000000000' + Ae2tdPwUPEZD4CQHEa9YBp3FgK15dbM8wE4i6VcZczaUNix8U1rnrxrTBqe: '1000000000000000' + Ae2tdPwUPEZ8uESNVsKkobHzoEZeRpmim475QdWF6CmBdJHWFSJjo9BT5s2: '1000000000000000' + Ae2tdPwUPEZBhxiuQ3tnhdh5mW8PS5yAJ8jsxYbhs6PvYPx11o7eBs2Nja1: '1000000000000000' + Ae2tdPwUPEZGXi9taRWo4pYMMZ9WtvvJme3yhmi61PkZEPUaE5c4GhwPVim: '1000000000000000' + Ae2tdPwUPEZMCPdErTxmgUT4FbQty7tcCmHidJkTAxMpYGF6RYVNkrK1JAR: '1000000000000000' + Ae2tdPwUPEZ92FRSRqV4dz49btBPRJUEhzyCN4Yh3QZmxGjkD18VxtAvjrJ: '1000000000000000' + Ae2tdPwUPEZHto9s5ouv4SQha5WpwNrEERfWQDerXgxygM2exm9MSH972o2: '1000000000000000' + Ae2tdPwUPEYyg77BWtM7HDR9DgtntvnjD5sANzHsXhLSrfHw2QoYnhzVkBV: '1000000000000000' + Ae2tdPwUPEZ1SBb6wXc9WP5DY3PGRyh6puiaFCUG8mvwPsfijvDvE3FtYV3: '1000000000000000' + Ae2tdPwUPEYw7n23qBj9dxeTk6vNjGwzHfSXx1zzG1k98smReGMGZmCdwvD: '1000000000000000' + Ae2tdPwUPEZMsinkhpKJy3yYQ2f486UC1f3iLfeCntEe2AgyWkp3sMxXUZB: '1000000000000000' + Ae2tdPwUPEZ8V56xa8NY8yAz6pbpyzmbnwneqmHJxoHisXyiiDSubsSDqTY: '1000000000000000' + Ae2tdPwUPEZNCgK9K9CD9B6c1BcVMcJbSLhTBwNDWzhQ265zrYEjrV47eeW: '1000000000000000' + Ae2tdPwUPEZ5PXtvRfwrrGa9ZGcmApTwTqvh58QTQANDX2ddLUcpTZnaHLo: '1000000000000000' + Ae2tdPwUPEYzVh39uUKFBSubv4FGenCAEyV2BdKSwCADzVJYKEJVwPAUicj: '1000000000000000' + Ae2tdPwUPEZCT2LnNBam5QjU6LE5VQRS7Z2JW1md69zMvu9y9WMnLwN3bX6: '1000000000000000' + Ae2tdPwUPEZ8AFCshDagF6igZf2bHXixA1g5PdpRvn4KyTpG6zyMzky4ehh: '1000000000000000' + Ae2tdPwUPEZ6nWqtXbKtchU3mpyRtrRZDt4obySFrrR85M4XcN74KTktXKv: '1000000000000000' + Ae2tdPwUPEZMigfySnz9UFSmmMYvRUd2kPadT272pbbHotNVRp2scDyG2AK: '1000000000000000' + Ae2tdPwUPEYxiwE99mBo8SkNPkzPEgrJmZpyXd9RuHWhpGKrSYaxUcKAbYQ: '1000000000000000' + Ae2tdPwUPEZ9jpF2FAh8dxQ3BCWgG19ThVYPkEyMjhThvrhXx8ngBQeHhCQ: '1000000000000000' + Ae2tdPwUPEZ82cmCBfjYq8iRzRWGgjMs7UkPypwp8LiSUJyMFEJGxBr2YKq: '1000000000000000' + Ae2tdPwUPEZ1eMNrx76WA5JBwvxiHQWxM3tNYjpFDnJp9fgq86BHcxqSfN4: '1000000000000000' + Ae2tdPwUPEZKJUFkpxqYrE32biZKQuqgWUdNKhFWbrGxJCnUNXVaxtQkErR: '1000000000000000' + Ae2tdPwUPEYwAGnLtgusi3JKq4mvNqWvY9aztGtLwa22ko3HzUra3hjGXGx: '1000000000000000' + Ae2tdPwUPEZ81XjXQAzpCj6QkV99kgkK46aS4J8xfppMi3R2Dpq4hhk7VNE: '1000000000000000' + Ae2tdPwUPEZ7nPhRYqbcNaaif222Dp9rx998Q2YGYR2UNxw8qmNWwJ6daxo: '1000000000000000' + Ae2tdPwUPEZ43xHeJbzVkx15t8qAhham5nt72JeK6XpXYvm68bfUHk6uVju: '1000000000000000' + Ae2tdPwUPEZD45f87j3XvfwTWfTNgnz8QpnksffePU32ivaifqxcENuG6KK: '1000000000000000' + Ae2tdPwUPEZF42GYPd3j7iw2cCUEMvirSk4vLPkTRdqqJtr4R4PsHSj4w2d: '1000000000000000' + Ae2tdPwUPEYzyxBezBeDqDzfNQ3gzF27LVvAqETTsaw6kdJpTWHCgmPVEo2: '1000000000000000' + Ae2tdPwUPEZGXRwDFR5VCmKCesFgBqgtrADgFo9FfjwSPEAyJvtVfh1JSmX: '1000000000000000' + Ae2tdPwUPEZMYDvawa3S1DCA7eZdhrDFJMXHyh5hpxZJCQJD8c6ruBRanDJ: '1000000000000000' + Ae2tdPwUPEZ8ffskBQYLzjPyqyxKsiNzYbvcJSN9JintHx6V6K1K8aEtho5: '1000000000000000' + Ae2tdPwUPEZ8cmT88Unk2WD5YzUCcc8ifb3SzMQMpj5LS1QgRa7g6kez46h: '1000000000000000' + Ae2tdPwUPEZGqtA4AbujDXkMH6zFZvTjUnRajLtwTCRV39EVdYtQJKrsc8u: '1000000000000000' + Ae2tdPwUPEZ5oH337RvQhYkjaDjvZnK1PKD4tVsJsNKcBcGUWihgTsiVtde: '1000000000000000' + Ae2tdPwUPEZAKA1vGHeZVpa3zhakExJ5utM9vwJ6auahoiCNFf6SufibHpC: '1000000000000000' + Ae2tdPwUPEYxkHxX8KdWAPkfkTxa8kdNaZEo69baccQ7HpRfUUsELigZJf4: '1000000000000000' + Ae2tdPwUPEZHajXavDF4CN4ExxHJUof8A2N2ugdEhv3LuPb76YmgUhxPu8R: '1000000000000000' + Ae2tdPwUPEZGpXcqTCfq9KocPWYgVB234GRUdFVDhnxJ2H9stGrszkZJKTc: '1000000000000000' + Ae2tdPwUPEZDVJUU3NfXH8di6D5E16djtgaFjWm8f81CEmoHUnMwMGGqbVj: '1000000000000000' + Ae2tdPwUPEZAS8cHTvHVwgPoAC1dg9RdTx3nQVam8gNebLYwiy9YccQQuB1: '1000000000000000' + Ae2tdPwUPEZ5hLgiaE7dzZuhqo68xZ7sMiqMGp39auHPcsE1VNNRvq7PnYN: '1000000000000000' + Ae2tdPwUPEZAdY5hGCpQpxT2ReHdW8gd3A4h5CJsedt9SyQeUpHBzzcwjAt: '1000000000000000' + Ae2tdPwUPEZ4afabfMLDJbX7Gaazj71zPpPrLeNywrv8uusU95bm21CBnwE: '1000000000000000' + Ae2tdPwUPEZ7wwdAXP8z1hhMMWNrP9cc34eCFPbvEi5zFm6jDunvFq74WZe: '1000000000000000' + Ae2tdPwUPEZMNyJAuNPb76ejraE3j3vQTup1xRxBHa5fKgzfznWbJijt5q2: '1000000000000000' + Ae2tdPwUPEZHSzjcTUtJGNw5EcMtoYcEMpmdiPAMn1HVzy52WoTtRFpukws: '1000000000000000' + Ae2tdPwUPEZMZLrkwBYumeF8P8eDPzRUWmW2epZRGRiGcvkhQptDFbujuQq: '1000000000000000' + Ae2tdPwUPEZ56rfrz5TdFY1JHnCkTGMWRX4orh6Q1BMmTV5ATx7z4xbFfG7: '1000000000000000' + Ae2tdPwUPEYyV78NYSddi6atWJgjWTpBHC3J1H2ceXzbDd5znBchmyp7sV3: '1000000000000000' + Ae2tdPwUPEZ9jb4o5V26jQKbeDkppnJkgebXbWaabndYsRnXXYVb6weu2BP: '1000000000000000' + Ae2tdPwUPEZHVs5JvSXmYxYvZGHZ8DHoM2zfJaiL99LkRbnvpH3oAVKuoS5: '1000000000000000' + Ae2tdPwUPEZ967PQDmUALkQ7cEuuQVdCQp1iuUXnpbgE1kzamaBJ7qpqkwj: '1000000000000000' + Ae2tdPwUPEZA8i4pSXDVJHTufffv59optZ9CFbfdUgJbHqUYbdx93N7ppV9: '1000000000000000' + Ae2tdPwUPEYyDqAPnJ18XPaTE77vDAeuVa4Ytp7GBNe9PNvNLeLVBiM4jVL: '1000000000000000' + Ae2tdPwUPEYw1wgtGgnoe2NbgfoFyxERny8qJM1vkqCXzkiXipJkJ7qvoR9: '1000000000000000' + Ae2tdPwUPEZHKcKbatmsP23ACD6VVXiNa9czTngsBnHGT5dqqi233xVLcGs: '1000000000000000' + Ae2tdPwUPEZEapggvTWfEx5jK1kkGVYMKeex7DcJVcTgmKxdcUnQXrDho2b: '1000000000000000' + Ae2tdPwUPEZ1NPbZE91PQidZVBafLLco2YnpHdgwTxNPKgygXSwZVq4dgKB: '1000000000000000' + Ae2tdPwUPEZLVnbtDRzNT1WmVfHTrkPs4JG38xNfmGkNWV9WgxYriy1qd6o: '1000000000000000' + Ae2tdPwUPEZHUxRcryapNJoL8Fo6kMGFXsLQSLC3nmhbpz3M6RaT3CcfKrZ: '1000000000000000' + Ae2tdPwUPEZ19YqjHnDr1yckaWEjwtZoaC3HZpVHepyzvcrVFtFoBUx4y1P: '1000000000000000' + Ae2tdPwUPEYxdvmBHt6hD1ra9DwYMUed6VT3aB16DA8VZWGQvJyhd1MJSkE: '1000000000000000' + Ae2tdPwUPEZ5grUgBooGGbBK9yHqdgVTdECqwS2XaeqG8boGBGqCA3nSBDi: '1000000000000000' + Ae2tdPwUPEZLSj5xiNKzbZXQ2ZjKU4JLyfvf5E7dQLahcGZZg4QA7pNVZg2: '1000000000000000' + # Random wallets DdzFFzCqrht5TM5GznWhJ3GTpKawtJuA295F8igwXQXyt2ih1TL1XKnZqRBQBoLpyYVKfNKgCXPBUYruUneC83KjGK6QNAoBSqRJovbG: '100000000000' DdzFFzCqrhsj3hDxtjHA5Sbrf5Y5A2ExAgxeL1B7PEetoE8g7yBphmHYGDkKTBZtbVv7TjB8g7Q5rw1kvSjeJwxPXb82W8vw787uqMTz: '100000000000' diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr index 4865040e505..49d13d1cf26 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.addr @@ -1 +1 @@ -Ae2tdPwUPEZGc7WAmkmXxP3QJ8aiKSMGgfWV6w4A58ebjpr5ah147VvJfDH +Ae2tdPwUPEYxYSimKRCvz9iqtsCEAeN6KR7SC1dWFYgCVb18ttTrJaht4qz diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.byron.key index b972926011d35b76975cb3f46e7be07fbc64589b..0e0a47b470c6c7114a9b403cc7822ea884ae5b8e 100644 GIT binary patch literal 130 zcmV-|0Db>hfN0ax$magu#ERRJ5&9A{#&aw{mrgXk>hdd1{%}&EMKOIM=agm+smsFL ze%&+WayC_$BOaZM2439j{2lUSwNvJ*9QOZ8r-j>Y9J{7~TU!8KEh=@aTPY#7Lp>OX k3zKKFXK|y*ui?nf`;T-uQwLTW-3e=_p^^}yn6gRET8tAx@&Et; literal 130 zcmV-|0Db>hfCvt;;7kfURVm{sttFMa%b)c`^G-L4t75RWk^jT`Lh6i26|liwPL7!r z1%N#g8a;6J5M|gkyo|Gu=xc~E512a3;cvJJ*MBSzIn?Q7;T>MQGU@KnK~1RPiv{`9 kP8WaiTzE}eMfqEoHX372zlvGGop^=c7N96d=9Kmm{T^IENB{r; diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.shelley.key index 216490cef8c..441a888924b 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.shelley.key +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet1.shelley.key @@ -1,5 +1,5 @@ { "type": "PaymentSigningKeyByron_ed25519_bip32", "description": "", - "cborHex": "5880080eb1e04c0a3c5529e329ad2595bbcb9ff544f34e378aab62b0b691ffc3fa42ea8c4815b0c15d4e8e991405803d121a3d70f51065d835bc8cb390e86b88310f983acbe16fb809d77f2c0f39d4e964e11d5ebc32e9eed0414da8e18b05f9d34e177ff15c784d5b45f95b97361a634ebf8a59c19d7885df16a02848e694f613fd" + "cborHex": "588068d3d3c8e6fedec48adb9211fa1233c6732c40974e34beeaf22b4dfe7052a145317d22e794660ea9cbc2dc7edd33e572365597231e9d8c065edcebfc1df264b553e6aa1cf6ff4aa785db6e1cbba6805b5b005d2d2a75ac5b2921b6433d18880b9367b36771a3c8afe1c8cefb8f74385307561add096ba7a19210a298b249ce5a" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.addr new file mode 100644 index 00000000000..b29a3b13c9a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZCdpgB296udjjMqK4crPXjpMz9zzzk1QARbC844JqYGygKZck diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..4917ee18efa6c4c996924beaee86461a7ce1f2a5 GIT binary patch literal 130 zcmV-|0Db>hfC%#v;x*I5hpouRUIF&Dx+nzsSjyE^+#Wyj`+L#XK{;D6fa@l!ma`2b zo%9DaN5?5Hs~>oy%kylt31{en!`gX2tC&pP%Sk=H2?qr literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.shelley.key new file mode 100644 index 00000000000..db0057c8781 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet10.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588008f312e235d3c387adc8c75e01f6b6ba2804f958cad555dc1e3ff2fb7bd1d741395b3080eb26ab96b30d239df4073547c7292eab1f78a3cbf36cb50967e882c3da793fab9906ca1cbd15b534d8fb5afab03dea30444f6cb1a432009b05eff7dc3e5f29fc3b817c66606e92b35a87876f33a6c9bf6a58dee7e93ca7618c2d1850" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.addr new file mode 100644 index 00000000000..404d653b8d5 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZLSj5xiNKzbZXQ2ZjKU4JLyfvf5E7dQLahcGZZg4QA7pNVZg2 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet100.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..a17267b7713b9f26725b1c7ab3d9c8ef598e39ec GIT binary patch literal 130 zcmV-|0Db>hfT&-YmS&l}?afVczaB6%2kH+1P~>eE>X1IYgxA(ZM_5}F1-WiHpKsO1 zegjbrUb6G+k|d#r?%952HO8Sh`PxIaDhfDlK%$jx8<#zNzzHTQwi=MlfQ9X7p3U34DDO_ICOT*hv4Se}W!avjOu zJK4iq2u=T_+y@k0GqaFE)oLFd6-G7F?}6~t&I~RltL9jDh295OFvg2)iNs3is>ZuA kv}7aWjh-aPY!!w6nKd)H^nxydvH+ssmp~^YF%!2u1RBFYP5=M^ literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet12.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet12.shelley.key new file mode 100644 index 00000000000..7aaa19a0e25 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet12.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "58801047bec8cd5ffdc642e3a535f781d2e711bfb61d36bd475d741ec74d92bbd15cc66e72589e89bd721dc9de3bd9c35b084dffa4dc07145d33b39041d56a1f1d154635d3ef81f0d4ce0c2e26abe6587785de075730c68b6c89c44ae8aac6bb32b46423e38d9e24c86c1585fe993533b9f4822e81b200a2e0974027233113b73c04" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.addr new file mode 100644 index 00000000000..0b0a84646aa --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYzwDXTM8VDDNG48ZVJPZT5ev3BGpLsBZqkYeP9Ay6keHQiUHN diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..d402d3c4dac9e057cb6a930faa3bdb05d68c08a3 GIT binary patch literal 130 zcmV-|0Db>hfKZHnJY@m*;2Gg&%j-;R06?><0|q&i&D8>Oz-!WLQ5W7Z6GbNMQg7h9 z0~hAXt&>7nZixh$Fiq#Woy&%Hf+M_Gl7s||?4qONv-1Y9vC4Df`6cQ5%nErQ?-PMX`N$zJk5m>-q{sJVNjo2kV=Kufz literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.shelley.key new file mode 100644 index 00000000000..538d6c10602 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet13.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880508c7e3c6501f7e019e166cbeb4c6c0040b3aa03063994cdd50272c06bd26b5117de31134526ec526fe0bb0317e6caad9342586e890499304de7ba9dcb86768223bc589284048ceca2a3e3b3f313a5a70392ac2a2a4a7db89cfeb34dd6dca31ba6b7bf257d30d21412130898fe7792ddd58a6749ee67391158c05ffe02249c8d" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.addr new file mode 100644 index 00000000000..7b1f49ebc6b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZK5jjAU6gc8o1Hxk9FGC2JXYR29eRj2zvYDVRy3oJKmzkkWXr diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..11e040c0a0f53848d98e34bf4264b26fb9e9f3b6 GIT binary patch literal 130 zcmV-|0Db>hfWWTl!39Q@^~yulUP;>R*GbFs*S(79?P@$?DZiu>NK<}bMhgIXy(`l} zxJGjDps`z@OOV literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.shelley.key new file mode 100644 index 00000000000..c519fa0d365 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet14.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880c0aee9c1054695f5ca43d55e49daedd749cbf3d7bd8ae8ed6a3c6229bfa41348537e60460b007abd2bd341b84672f0a0b15b9f4d5c60e766e5468bf71963ca347f11cabb7190075e6c579a32d492774ba46c78243c2ebf78bd728f88a138f77fefd1eca07da890cb78cdce3024a20c0a5b30c181b3e3ca539fa8597a9951baec" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.addr new file mode 100644 index 00000000000..3138f5bfc8b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZHRYGpLbcxzKSBFmVghBdUbMLD7Z1RP3CaWmE2MfudSCdLERE diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.byron.key new file mode 100644 index 00000000000..8d91c1092b5 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.byron.key @@ -0,0 +1 @@ +XR7Gz2 p k9ʐe_ 9o<DGd/cs_qLZJIS6x(jfm ꘫM@9xS\H]yx`_ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.shelley.key new file mode 100644 index 00000000000..1cedbd76ced --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet15.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "58801891af52b0fcaf378547e37a32adaeca20ae70c00d6b39d3f6ca90e1b27f655f09c1b093399cec6f99a90502ec883c9018eb44a8054764c42f631e84f1738a5f71a44cfa5ae1181efd87cfef4a49f9538318368c78acba286a66126d0b1ae69cea98abe09d4dbe40cc391f9078b3a314535cee485d06c9797860c05fe3fcb9d6" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.addr new file mode 100644 index 00000000000..df376014d98 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ3YosvMkMYRuHAzGXmj9FDZiSWxZJxY2bfjtXQupV6cFufGxj diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..3e8dcd5fdcd8a6956eb74a2bd386eba4f4caf32d GIT binary patch literal 130 zcmV-|0Db>hfT$BNArKjcpVz0S!QHc0MVR`@fpV2h>vsv8%mjrfNuhlr)w&q)l#i*- zsLiCEK<~SiY#gol!YrQ40TBj&;o&~*$DyW-<3hms@;rVi9}k`p3|t3EZ2fdt&5REF kJLFLk{~R02YQlS^ArnJLqkj!^iUa_0I%v-hggHdDc)NN&LI3~& literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.shelley.key new file mode 100644 index 00000000000..c8e3dd9b621 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet16.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880a81330211019869fd7a7a7c1ddb3574598fac98172954ceb77099bcc04852849a17d22d5ba18f0948fa9cea8cda49d40efbb956c1cadf8c22c9ecb0111067fe1e13eedc7a1a68ce342c0f9f23c7e291f0f9e110c5c07496cfd7458cd8c0efb3be45112ff1c1bca6ac27ba521134348a37f0d738a0400713a68cf0e843944b578" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.addr new file mode 100644 index 00000000000..f8939ea2be8 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZAUVNwHSzyz3RRhe9hgFNvw6ZBWgusousZEu71AUxwkjTJQXd diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..83d7ac8e9f5a846d4391cc24a3302d8112104642 GIT binary patch literal 130 zcmV-|0Db>hfFQeGr|fQKDQz!eqyv}|iCzLzZ6icnBUY3QyTCvmSDMVU#GjzE?k^lez literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.shelley.key new file mode 100644 index 00000000000..f20340af620 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet17.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588020bb5ea7ec6e66296d2f62a4039812895e02536d23445c2356940cbbc0401e579accb4e51ef4ebafa44aa5d7ac72354e694be6b59419f17dd529576917050a74b7fbb94daaff7f377613a0a2ef72aaf700164cfe4200de0b71579357b70ef2649eec7757d4ae7be6f4b7f69d921c99188540bba2ee2ac87feaf2e8db109c6133" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.addr new file mode 100644 index 00000000000..a4b2da062a1 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZBWbsXKZ6Xj1hVqNrJevo1MguQErP7Ekws9Mwe3QyApRbfzuj diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet18.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..19981fc2bd7b514377ca54025e55b13ebbf3a1ad GIT binary patch literal 130 zcmV-|0Db>hfJmkp1v6QLX#^^8B79ap#|tna1_yI8AhfEXE>m7M_gG2olZlFe(FO&8cVBWpbpID`n?)EMUj!Ms@op*u%AX8-^I literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet19.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet19.shelley.key new file mode 100644 index 00000000000..6416b9609f6 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet19.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880181999959d00f631e09bca92cd6b984d17d837236b3d12388408dcd418f543416a908746367ad3b555993ea949f78a8cb377e625ea1f38874f46657846e1d996755d8b844a3ed31175400e1b8a9571745758ac584abbc3219498bc1eb214bee0d2571b95d8335f91550620562a2aee61e37a001c6ef595a08b4863c1bc5905a1" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.addr index d0860858025..8f7c3a8495a 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.addr +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.addr @@ -1 +1 @@ -Ae2tdPwUPEYxL4wYjNxK8z5mCgMmnG1WkMFZaeZ6EGdV2LDZ5pgQzvzVpuo +Ae2tdPwUPEZ16WMj3KGxQxTtm7cgY2oygWF8Pk1gWRCL9phsawFoJUQo8V4 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet2.byron.key index ae09cc48bef4d8532fcf3e902c63578adfd8fe41..44ab1c44cff739a4d5c469fa9dace14928ab8e6c 100644 GIT binary patch literal 130 zcmV-|0Db>hfRGMn-dt}-{HomPerePeYXi7;3aqr4+;ydM_cZLkSJ6q9oX^(KXJ**I zlgeK7CNA)bvyUd7`{?_qmgu4r!l4S7KQci#W&{!@Xpdhpz4xQf7kfdPtIVs&F~`Tp ky5P9&6!fQz03Epyl?jCL)4+D;dXFm>wyIEw)o%rN#VO`SBLDyZ literal 130 zcmV-|0Db>hfPn35QCZcpfzHz#%$P6(iP!KdUE!Z765Z=Xv|a{oN48OuF31oru#Jk> zL6BqajA5TCJI}TH$5vJS%bH>9oMX`}R@)IW5#}^TiOzL|M%lJ?y+eRPHoQ]ᙲd'p㙆/<zӭ.dƿ+'msʀH|Eeuc-/9 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet20.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet20.shelley.key new file mode 100644 index 00000000000..9de72bcb92d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet20.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880183ec4db29a349e98a57cb352391d607049a03cb7d5e549569a04f7a4c7ce24d13a31f256c4a7fa28df93fffa8bcea9912e979c8dd2b655250070648191b6f51a05de199b26427fab1bb70f5e39986142fab3cbb11d6137ad3ad112e64b09a8de1c6bf1b2bca276d8073b6ca80cce74801f8d17c9ee745c56575632d2f0139ad" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.addr new file mode 100644 index 00000000000..58800007ceb --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZMMcjnYLD8hNzD8rBuQX4Rbwh4Hrri9wo9Vd3QhWgJp82Q3Zb diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet21.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..4fde062513c8cd1bc68a14dede7c22c638c71843 GIT binary patch literal 130 zcmV-|0Db>hfVjTj$JRR^L8X$I!0|A)bcP1b*sGBtXbk0mb$Q)VR2!>1q*PV5cl6de zbV)!Kla*D?N#@Zfq|u=(@;P;`UQ9EC6RWM+IO)r8q++%t?*I(?|IzzR+!RVA1hO!0 k%p(@`3HP5N>xVDt;s!{+b@0M?ZGEX6Oc}hfDn*%FxBvPm_C|Y*tf0Uy&XMPD-t@+h6x67c7XWv%|pqnWSS`7MR39hrtjDMg0NWQ<+lNs4*aGPY֥-b>zc@N!X5loцm''Tuy01~*^ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet24.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet24.shelley.key new file mode 100644 index 00000000000..47d5434567a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet24.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880c0389cdd2b8a21d1b9d81a10a48e48a14edc6b0982f7466252d9aa4c61aa7c5998b144cd7be3aefb8aefef904d6b385f8788013e34d3fbdcfe9f2afc618f4750c059c4d6a5df2d627fe5cb3e7a63404e21cbc2580e356c15fa7fef1485efefaffff1046f8af591d186fbb49a6d2788eb8cf8278d5475be7930317e2ab4de5e02" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.addr new file mode 100644 index 00000000000..fdb4ed1a6b2 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZAGMrgFKgSjDymZ6bRhcuCgK53xX5n7xcDUHC8MnijrSVU69g diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.byron.key new file mode 100644 index 00000000000..847135bd488 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet25.byron.key @@ -0,0 +1 @@ +Xk/3#;ݚ%/ljq`s9#AR\M:P9$hZ.]xP0@Ί]VE ZhfQVBjlF8937%}#p9P?d+(hbW2!loH20z0YD4XJ@)QqGLtB@bx++5J$4 zKU(DEKi2kxAjS1pvl4_N4R^=1L!!eVf5=!&lm$JC%HfKdT|52@HZhJ2HsUr0{_c<} k0cw)EWcon+_JVL(;A&3e#^h3yU;H0JrZY4E{mr1^;~G{$2><{9 literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet26.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet26.shelley.key new file mode 100644 index 00000000000..fcf7f132a4d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet26.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588088532692c9d12a1831f69d1cf35d83d20dcb01c2a6192a023ba9d00da9816152ce8cde250f68fed9fd50863f5ae4e43fd6f68320c5f557b31284220d77c7b443a2c3207fc8584c94053d8acae18a9a5d3bfe0b36318e0c36e23606feee902a016a92ba64fa40fbf6827059e06a4ee3c6e452935ffc1f42a6333400fdcda0e1e3" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.addr new file mode 100644 index 00000000000..731606e6dfd --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYw3nfF8ceQBJZ3zFL4jP9SFoyJ6N1qYTj6fk1SLaxUhrYFqAp diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..36d39a04037699330c27c156a1617cdc9beecdb3 GIT binary patch literal 130 zcmV-|0Db>hfWW+c&=uE{GsF8qL)1 kSR1BdOB;Y05V~aI!9|68=0mzx=x^VqUsit0H)c->mK@VX5C8xG literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.shelley.key new file mode 100644 index 00000000000..e57608b70c9 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet27.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880c0bc7dd015d78b71d0546650f5e8b80bebcfa650208649d7a403df5b9cdd9d5f2a650e43f69ae80053f85df4affbeabc6ce573964ab141b7d4ccc5153c54833c9625c4c23c57dd781aba92cb788f911efb8284988f90e5ec53be651acdd4ee581ba6624b1b801910ba64e2c145857be643ba56e86fdfa65f567ecb37664f0996" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.addr new file mode 100644 index 00000000000..403d29731f4 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZBWq2xEQD7NacM1cmTAvnRdwnLX5jGkBvvZpjBCCaTyVbQyCg diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..03767bf62f0a1f7e8cc69946378ee5b38dba8dd1 GIT binary patch literal 130 zcmV-|0Db>hfS}^-RmE*oRR5!}a9fWine?Dh+fg^mCSI)lMo2{%TY4pR(#5+4-Rf!@ zLuX3Dw1ZR}&uWujR_`z}(M5ldAr#0C?6|`KYeU%2BAG8apG2{_wCb_U4#vUTKN_)P kZJP~S1EH{YF(5f*h4nilDLq#|NcmGo?AD)aiG(6(?u27L%K!iX literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.shelley.key new file mode 100644 index 00000000000..37d0943bb77 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet28.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880a0e2ed55c56d5454ffa3b0705b8f2699f4a051db5137cb265eacfd464845185b7a2575d2c5bb05ddea6a1a43674ac2b483541ccf6a935f56ef3032d1457f902114c80eecb8c3006b43d8cf22992f399f44b1b9b4eab1cc0ec6c1db3f1ab1636d9b0d5b03a1b0773120396585f53b23293d573f48f95347ecd69f6b89842268ee" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.addr new file mode 100644 index 00000000000..55ea1c8cca3 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ2BJqnSoUrhVQ4Nf5XmHP6beK1LvYrZFaJqG6PLbHtEKzQCFV diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.byron.key new file mode 100644 index 00000000000..7ae6b3ef3e1 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.byron.key @@ -0,0 +1 @@ +X 4)Z&ΒK/GZV8L]r";v?zf䕴eY+yb&dЖa*מ@vq5P!Q G{x9Dvڤ Q \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.shelley.key new file mode 100644 index 00000000000..2bceaace49d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet29.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588080d00db8a0d43429dd5ae3b526e6ce924b2f47105a045638a4a9bdf8c64cd85d8a06faa3987222b6fa3b76e1d4db3f7ad316816616e495b46559c32bfd86030179d4622614e3f364d096612ad79ebb40c2e2a97671a1853550d821a9b097ba0351eb0947c27bcee4e80478394476daa48c1cb7efce0b8f2051ebea19110112f8" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.addr index 5f5cf899e29..0e8a960828c 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.addr +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.addr @@ -1 +1 @@ -Ae2tdPwUPEZMcoAHgC7RvCL9ewjZdj9Yrej2bHJJpvubhkSaRn5Y7dPGKRy +Ae2tdPwUPEZ3S2LzBCw3v9qm7ZfADBeHa8GjC4g71bKLeS1HJiNPz58efsG diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.byron.key index ed2ad9e7ff74925895913df5a6b94591919309fe..dec2ccd645755232aa77118f452e0027bdcd71c9 100644 GIT binary patch literal 130 zcmV-|0Db>hfcS1*O!0fcYDfWP9Np9q~#$iSm-fdsl^aKWNgmf4rc5?kN^Mx literal 130 zcmV-|0Db>hfDpg+^v>JJDr=(3ech*3sRlp`A@ls#nwtjIyT5MZQa4{Yk0Gz2(pR_& zum5r?INR*kdO=Q#i|gm!2MN~^83eKK@65zwYDuk-?l3P!M3hO`qXE}(G#`aSIW>@y kXA~*zu*2i*B=&AO^_5HS!G&@p-K>pTs9wNY#ocz>Bd=0Kk^lez diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.shelley.key index f04c6117062..de46be62c95 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.shelley.key +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet3.shelley.key @@ -1,5 +1,5 @@ { "type": "PaymentSigningKeyByron_ed25519_bip32", "description": "", - "cborHex": "588010bff5f4cedbc82a6ba2ca7ddda755a906400b21f3fcd79a9b06d5bbbf6ee352375f398f21afa1d257b80aafff722a38dbecd77a414e8a8bebe7de0709d7111904b1efefccc4636a49ad90ee302f45449449d8a301d771341f854339359092671429edb0c3e3ec24f66e39f5954befc1857224ddac8d5aa85ec05ac5dd76db23" + "cborHex": "5880f86e5d4cf17be48af5662caed92c1b6bb1505434e7ae2f0bbb1ab7252ee3d04008c0556aedaf630c7e805795864aedb666f9848117aa3da4a568d106e815bb7ed9475d5879946f0062181e961baf9b8a2519a6c37669e55b67e7fd2a5c4dbac3d297ee63b9a0e2777bca624e1fe5b5a4e5212b58e8315fa9c5103f646ccede0e" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.addr new file mode 100644 index 00000000000..e22b27f5f56 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZLGkJsDc5t8WUgPafrvpQkTjXhc3zwZfT2RRSD2SCDwGJ2gko diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.byron.key new file mode 100644 index 00000000000..0f53c3541c4 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.byron.key @@ -0,0 +1 @@ +X߾`gW^Tr] n@k2%u1dbQ>&FJc{ 5[YؠF_Cw Z7c0,'vz+fn@XQ{ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.shelley.key new file mode 100644 index 00000000000..348d4a4ffa4 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet30.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588080addfbedff160c0675712eeb8f25e54bb72bc8a8e1fd7165df5096ef712d6406bcbf3f4c8eb8f32259a7531f56462a5f1513eda268e464a10b1ac1b63b70888c57b0d35935b59d8a0b1ac46b319975f4377f58aca095aad9c88371c6330932c9f02f80717ae271cb3e7b076c37aba082ba6c666fa9fa46e40e6149158a1517b" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.addr new file mode 100644 index 00000000000..237974f96ae --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZG48xoQbHyjEw4sAz4KFFPC6H3RjvZoqDd7ui1hnBoCZ7hjZK diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.byron.key new file mode 100644 index 00000000000..78269a3d00f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.byron.key @@ -0,0 +1,3 @@ +X@KjD`{hcA6xr\g}y7=  + UaA*vyy>sG> +~=@^_Jx"wckl&*nDB5ny> \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.shelley.key new file mode 100644 index 00000000000..c42a7540878 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet31.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588040c94b6afef9944460d27bc8fb68ace2634136d8781df2c2041e8cf60eca725c03a8da67137dce79c037b73db2990b1c0a8fb90c556111b9cb0606412af38176e6798d9b79171e3e87f6fde2fcf773473e0aca05e3f97e3d40adc95ebd895f4a782277636b186cefa090db26c1bf8db4e02a6efce3a1d644eeca42356e06793e" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.addr new file mode 100644 index 00000000000..df12cff6b34 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZGjAkaWbCogSWVBjhUxnF2sMRq2QUu82itFU4PAcdo8NkLBGx diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.byron.key new file mode 100644 index 00000000000..19c7b9e10d7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet32.byron.key @@ -0,0 +1 @@ +XF_h{3 $١&YϕDJ`~Z!>L8/dpcwdCߝs-myu5-`__:p\iA d*O`5a+ +-a^Lnka K.Q: \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet33.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet33.shelley.key new file mode 100644 index 00000000000..28e044ab5c8 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet33.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588048f70e4cb247ddd1ba22725569889f6ac9f38bbd4d6c1d364356be47a784bc4396fc025b4c217d6dcbc57343def6c60cae79c7e27eb89ce0e453aa173d3e798384b675fd35d5082d60e013a8125f5fc03a70d30f1f5c02b769410b8364902a4f1018608c35612be8030a2d02615e4cbc6e6b7f610b804b2ea49b51f4809def3a" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.addr new file mode 100644 index 00000000000..fe1157e4851 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZD4CQHEa9YBp3FgK15dbM8wE4i6VcZczaUNix8U1rnrxrTBqe diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.byron.key new file mode 100644 index 00000000000..eb2fb7b5762 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.byron.key @@ -0,0 +1,2 @@ +X|utR1(*D+tF)fW .=@!^X^p~ +NSkt`_{Dk]Gߗ#Ed^a;xrc=@LcɵvJ46%- \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.shelley.key new file mode 100644 index 00000000000..05d2ac39539 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet34.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880c07c75f2f674f452ab9f3128f29e2ac04485ca2bb2037401fb10468d29669757e8070ca50e2eb3bc3d4021945e589a5e70807e0a4ef4fdffb153046b74c4c56008ada9b410e8ba5fa3e27b446b5d4793e6df97fca2bd8a182345e4af645e61ae3b957872a5633d0ffc40bd4ca69d63a5c9b5764a34b888f13689dd252dee9ada" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.addr new file mode 100644 index 00000000000..8b24016c4fa --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ8uESNVsKkobHzoEZeRpmim475QdWF6CmBdJHWFSJjo9BT5s2 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.byron.key new file mode 100644 index 00000000000..3f69df45356 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.byron.key @@ -0,0 +1,2 @@ +X /zzChp{i^oxYሦ)GwA^C|V$emզ` k> x$ +Fz*zec+y|5ec\gW#rhB0! \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.shelley.key new file mode 100644 index 00000000000..f337e37d433 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet35.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588020802fe6987aa37a9a436870011c7b69d35e6f78b1bb59e188a6bee529b19e4787017741115e437ccf56b32411d3e865a36dd5a6b2c7600cd6f96b3ec7ed0c9f7824d6f00e0a9fb646f7e17a01cf2aabb40facbd7a96fe656304d8f3db2b108af1b8797c95356563fe8c5c67139757d9f705237268a9a142103021b591b49c10" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.addr new file mode 100644 index 00000000000..79a147bccc3 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZBhxiuQ3tnhdh5mW8PS5yAJ8jsxYbhs6PvYPx11o7eBs2Nja1 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.byron.key new file mode 100644 index 00000000000..59fa88cb5c0 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.byron.key @@ -0,0 +1,2 @@ +X&gB?<#< G_*Kwڬ[ӫTF#pgI5;eEf +`rLfG!I0jRbɼ7e-E}Qi6Jlʷ$1i'5}? \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.shelley.key new file mode 100644 index 00000000000..d8bf8d25905 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet36.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588098266742033f083c23c1d33c091e06a7475f0ff52a4b1877a404b1daacfb885ba2d3abf854462370bc67ac490ea11d351b3b6545660a046072b917f87f194cb5660147214930f5bd6a89d0ec97e6995262c9bc37652ddbcd1ede45e219f382c1e1dffd7d516936ced54abc1cde6cbd16dccab7b39024316902ce27e8357d3f04" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.addr new file mode 100644 index 00000000000..d7e911bcf57 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZGXi9taRWo4pYMMZ9WtvvJme3yhmi61PkZEPUaE5c4GhwPVim diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.byron.key new file mode 100644 index 00000000000..dda1c9aa516 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.byron.key @@ -0,0 +1,2 @@ +X0 EDw~1€] B omy;]Ha 2_zjCT x5w^ϝ04NGDN`oz" +̡Tx- \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.shelley.key new file mode 100644 index 00000000000..1eb005007ff --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet37.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880300d0b45064477beb67ed31f31c2805d2091fba442ec09d6126f6d79f48c3b5dac4801ea81610b32ba145f9d7aa66aae43e854ad820c1295c2fd149cd1f5eced11ff78019dd0fd7fabc435d577801be95e91f3cf9dbc30ec9d34c1ab4e4744b5a84e9b1dabb2818ed4606f7aa218b0f596c9f0220acca1fcddfadf549ea5782d" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.addr new file mode 100644 index 00000000000..48eeedf6a93 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZMCPdErTxmgUT4FbQty7tcCmHidJkTAxMpYGF6RYVNkrK1JAR diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet38.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..f20d022d540c4fb3e864283dc080d78650058dc4 GIT binary patch literal 130 zcmV-|0Db>hfbgJa5_%oCuTU4VaOv1u$;hezxr6O|XyI9&UT&h-;6XHPuvUtL@d4vv-LXfZm4#XRM kC4TMJ|0|cZq;nNtAt6N+>3gx=CkMpsDQ/o YgIaݺ́la( \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet39.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet39.shelley.key new file mode 100644 index 00000000000..d693f6ab6f1 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet39.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880f88a82e5bd926b90cad6506859a7a50b22f9a615fedadc95d16ea1cbd133d9485973f2e40f84fb488146335cedce42c1b7d4cd922e8427290bd33b3b4ae1e4695b0f273ea63dc0a4f3ac43d46b9e92844d707344d00813c4fc98a4bae9b8e79d512f6fb40dac59fa1367ad498aef1bbdb0b4d261ddbacc816ca4c6f4d5d26128" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.addr index 7c814661a14..e46668f813b 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.addr +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.addr @@ -1 +1 @@ -Ae2tdPwUPEZ7geEbqcaNfMFL8EMpeRYAQrHABau6xUmek87xeyyrmPm4ETc +Ae2tdPwUPEZ5MEg5J9CJBuanYyoAeq8Usyeh3mTpAjFAfaMUHErZCC6VESB diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet4.byron.key index b46563e1caa269497a9cc7906653d9b3b9b06cf8..a90180279b4beb7d6f6d4c73d36eeeb11c81ce42 100644 GIT binary patch literal 130 zcmV-|0Db>hfQY={x-nq^4T<#2c0epw2@+CW1km(|G4?%2?L%J`Sl#b4nTKQ`z^_wt zdNf>m+h@_CPtMsNm&h~tbbus?My5fU)q5Ft64hfB<5aVC}DXl6<((fxW5rd>_N4LqsOMt@B0DT+g-eQ*bAAcbANd*|W~) zCSE7THk!rQ;d8c&UMVkIqv?%L-hrUBYgL-U!2%d8=4R)ze-qv<{xhfN*Y^I5;Tu8Z@??=jdp;^;rp&mR5$Jq$!DbsfrGzO3IEJE3xb6v^N^k z_S~;_l$}LeLgL&M8}LG|9d~Y3yQ}liTrqxYXTnTsyTyS7>py*}18i69Wdhfan3wBRilJBo1Cg)N9hEg=W&}>7tl|`|M2409dnbS@LxCXX}K{>=4Jo ztpsG{Irh?s41CnIMuQ4=YvxX*d+QTD0!CcBPMg%_BDQV?eAg6)RZDZY%3o>lyU<@6951J literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet43.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet43.shelley.key new file mode 100644 index 00000000000..265ab88e44e --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet43.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880e801cf233ba014240e5e44d46bd2a58566d2e9e9a29882fbec4cce0058b36e59f274f567eb84ceec10c7c2ad0464e539f6d2880c7cd4b446830a766be64ea47beb133d02465cbb4e9bd4e522bb95bc54c0159fa74051baee23436ebee1beb3af765cb0ef8d4217db94045f089a650bd5b1af3dedef61c6d49422426c2b1f3f94" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.addr new file mode 100644 index 00000000000..701ce1ce865 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZMsinkhpKJy3yYQ2f486UC1f3iLfeCntEe2AgyWkp3sMxXUZB diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.byron.key new file mode 100644 index 00000000000..9744fb4e595 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.byron.key @@ -0,0 +1,2 @@ +X7",%#שM7kZ9]5=#Bڞ#z'Zvʪ,eV-Ǚ'^HH7ӕ + uSPjK9BQLX_H3:u'Z6 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.shelley.key new file mode 100644 index 00000000000..4638bf489ee --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet44.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880e03722f8bc2cc4251723d7a9d5d30f0fc1a6ed4d1f1937b6dde96b5ac639a15dbc8d358b3d238c42ad97cfda9e23027a1327c0e55a768dcaaa2ceaf89590896556a92dc799ed1427a65e92d04848c3fb379faa8eb5d3950a940ba1157553bbe450856a4bde3942514cb2fc0e1e8e58015fe1940e4893a9333a7527c5c35a1936" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.addr new file mode 100644 index 00000000000..612e22465d7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ8V56xa8NY8yAz6pbpyzmbnwneqmHJxoHisXyiiDSubsSDqTY diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.byron.key new file mode 100644 index 00000000000..6c901f7fe3a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.byron.key @@ -0,0 +1 @@ +X|PoK ?M\DhA\db^oC8 0=usQag`}k/W/R(ZPo@ =+bqi7Ž4rmZٰ6j \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.shelley.key new file mode 100644 index 00000000000..bdbd9369c5f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet45.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880b08016b27c50026f9bd31d804b1a8a0cec023f974d5c44dcff0fbe68a041135c87649b629c5eace1846f4386cc380d30927fca18907f143df4758314a473518ba46167a5eaf7607daf6b2f1857f72f52285a8b17506fadff1f989d40a5f1203d832b81621df01b04d27169a537c5bde134a4728a6dda5ad3d9b0366a88e717d3" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.addr new file mode 100644 index 00000000000..c860332d26f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZNCgK9K9CD9B6c1BcVMcJbSLhTBwNDWzhQ265zrYEjrV47eeW diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..86108335b6d88f049985fc645eef3f7bf19c1ffa GIT binary patch literal 130 zcmV-|0Db>hfZ%_HL`?aWB}@u$I_b)iKmC(0r9;oxGny4HkD9~PMc0OsE2|vDJ-P%m z^v|V)EjkyHHS-p&n;B=?R7WDO!*lj!mfWaaMC*bkdq>6RC9Sk;ps khqFqri~<0u6xz!5I7Yf#U+%&AK+`BiA<0By96psP!&`ShumAu6 literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.shelley.key new file mode 100644 index 00000000000..842949ffdf5 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet46.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880e07f85444cf995254c0a6f3ae9ca923ffd932fa543cfd7339a152e8f9ac3d545d786922bab1cc43dba0434f4cfa5842d3a179235f316ad9b1967da544722afc396cc053bd0411145ca5cd893e8f20f64e5eed2d80f9b5be996177158d5931f87b34aaf8c0200a914dacaf53846ba5b5feec1f940d3284521c944621c3e9529c3" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.addr new file mode 100644 index 00000000000..b0b75540f5b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ5PXtvRfwrrGa9ZGcmApTwTqvh58QTQANDX2ddLUcpTZnaHLo diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.byron.key new file mode 100644 index 00000000000..92be8ed408d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet47.byron.key @@ -0,0 +1 @@ +XhfIxwBnIfv%@Un&9A97l@h}t8^Sy4Y5P`pl;qwRqGTQi?+5>)GqdB$3B z9ucJFJJ5h|mihP6k;Za8+Q3o}Ww6=Rl9)!?%k!X981qpؓFZtrdH"&]Pbw[?bQG ߤ.xJam= \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet49.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet49.shelley.key new file mode 100644 index 00000000000..a03efef142f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet49.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "58801843e9813a857c1fa8d6e0614c53a3ea5c99848d104543513be5af873350aa444c8a81d9e8d781ec61f4ca89eb022253bff001cd3ec45839d438ca31fd8171ef70a7d893465a74f605b27285ea0364fb4807ec229decee0226f3ad5d50b56277ec05ba5bb795013f62160251f6be4796d009dfa4b02ef492788fba4a616d3ddf" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.addr index b0413dd36de..cc65a9bb8f1 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.addr +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.addr @@ -1 +1 @@ -Ae2tdPwUPEZNHxjww4RhosX3LMVAzbJtCj3vzoQM3wgLwhEHUp13jX8Xte8 +Ae2tdPwUPEZKTEGqULNJggS2feij8B5DEkTgvj4pf6BX9xaNWsrk83a94op diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.byron.key index b1e06c7d51bd2059e5e7960253f1f603c210167a..ccb8701b39f33dd04ce49355335bbb113ab08f36 100644 GIT binary patch literal 130 zcmV-|0Db>hfbjgRQkf^MCKr2%bT4FphvbLTX-2n_b1H79g$tX8Sx^we2a$6KSWna4 zn^3gu%Edr~l3?!}9nhb4**Sb)zWS+^D{xfVSQK8dYfAbXLLyX0?K?jxx~IL|h!D)} k_=(Fxabu+KS)uQ@CaffMz9(i-lpK8k2ST_1u#0D%ep#YGBme*a literal 130 zcmV-|0Db>hfVfYUyixpzl!2;Z&w-R^U;LC%xy0V2bNMhui#62yRLMo%q;|-LQt*!& zy1A!eQz3pJbr~6V5)sFoJ%FcR+^eq!6p-~}CvG$I>@Y)#GVs(@d_-+5iK8pHIJtc_ kRHzz4Tp=56GC<7RM%U&F(HY_3l=pMlr4+KC&FAJ1(=bXxV*mgE diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.shelley.key index 0677335ea98..5366f662f04 100644 --- a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.shelley.key +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet5.shelley.key @@ -1,5 +1,5 @@ { "type": "PaymentSigningKeyByron_ed25519_bip32", "description": "", - "cborHex": "5880b84f95bc51fc879481aa62cf8194685ffc9450b9c4dea473f930458b35d4fb54c945dda476c88652f08f1abab9a76153217e20751919771211c79c3d80a760dcabaf061490f563276e33f3ec30438932f0d4557c446d2c89a32bb838b97d3554a81a425c211b6d3240ccdb46d7e60ad119e1e094f773d9a514b29fcde7e60fd3" + "cborHex": "5880f0fcac529927ad26177b88742f648087e487d36946b792732a6ea7850b9b86595010c307917308584fd3dd9b50b4eccac540839260ef1b1dd09f76d9397c5fbefaa9952b7054d958145eb16b4afa1b42225447ed3b3f28baa7bddc8810ccedf889cb427163a4ef59a1efb726ac2474be276650941c7d000742b7ffb08b679d7e" } \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.addr new file mode 100644 index 00000000000..50995be5588 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ8AFCshDagF6igZf2bHXixA1g5PdpRvn4KyTpG6zyMzky4ehh diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.byron.key new file mode 100644 index 00000000000..fa4f35e0541 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.byron.key @@ -0,0 +1 @@ +Xy_9=kV$cȊ \#*x'Y'&\2|!B'6O~2#p, :xτ5ܠA6n49S%ȓx-$nG J_ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.shelley.key new file mode 100644 index 00000000000..728b5c7b279 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet50.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880d0d5f67995a6d35fc01d85391af8163dc26bc19156cf2463add0c88ac0c5095c2394d02a78b22786592719ebe5265cf7327ce8bc072142bd27edc836894fdccafbad977e32230e8c708a2c92dbd4dc04f7efec0dc13a78cf84f835c0b0dca041941936026ea63439531f25e8c89378f5de2d841cc2246e944703b50b4aeb5f84" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.addr new file mode 100644 index 00000000000..9f61a864ce0 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ6nWqtXbKtchU3mpyRtrRZDt4obySFrrR85M4XcN74KTktXKv diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.byron.key new file mode 100644 index 00000000000..ac440c25ba7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet51.byron.key @@ -0,0 +1,2 @@ +X! NGfH&^}}_>Ќ0$P hfPl~Es%ripPz37F1ZSsL@@sFf7`aC1Qj%fkKS!o;T`Tfs$C@UYW;rwz zms06gpx2sp_m^nb2ht7MNW}f-{MzJzOSX6bA?{QZkuQ2&#ju_5T2l<9UH^5Wk_`+r k1O{Oh1;7bd?$F#rGn literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet52.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet52.shelley.key new file mode 100644 index 00000000000..0712f99ee49 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet52.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588080cfe7aa6afe1f5004eacf0467a757f26b6fb018b946e8529261e73f47a6705d2bf265c79a2699663934149752e956a0d79a75f79768d707d20dd948c4fde6fcdae4804bb6780021ee5414912f7a5cc5b09df05a530ca45dff75a2920d0c3405ceee740afbd124db56bf67ef4a0512ec7a6a11db7b57e25970f0b2fceba06917" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.addr new file mode 100644 index 00000000000..e27a4e5b772 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYxiwE99mBo8SkNPkzPEgrJmZpyXd9RuHWhpGKrSYaxUcKAbYQ diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet53.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..85baa84c6f7fc7b4f1934a942b9efba626fe963f GIT binary patch literal 130 zcmV-|0Db>hfH*L4I*CGl(gy_C3kO>H9e-)cK0I0tacroGNJo}rKw<#$(27XXJ9H|1 zyw$s$1Nhi1Z`m~4vSAb%m+g%VDsW}o^cs1W<59qWjKyAx6hfMAzas##w>t=7G`BXD!3f%>+7X8j!nu%ZcuN@bCVMDih`!2WR{jxfYj zOwzuQYdYh6gnj+oJCG)c@>E7fM8`Fl8C^1*pQivR!s literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet54.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet54.shelley.key new file mode 100644 index 00000000000..f5a89444d71 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet54.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880609756aa595f3dadd6bdb8237073a681fab67e66fd1d05b0a209864a65918844f221a2c0fe71208e30c4544cd2be916b3ae37c847dfddc3b902689f2545c346cd68a68fa883f305f3510e7507a508cdd6878727b7abcb500edf3d48104ee4e59ab115634f1cfa2b6105f6186773ba10624cbbf338d847de9a104cdf97b385ef2" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.addr new file mode 100644 index 00000000000..9244617134c --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ82cmCBfjYq8iRzRWGgjMs7UkPypwp8LiSUJyMFEJGxBr2YKq diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.byron.key new file mode 100644 index 00000000000..5c951075c14 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.byron.key @@ -0,0 +1,2 @@ +XY!*e&&qY&>#o~GQm +/~X GʢMf9vs1~_([UtcC>/t2DGlߪU x#yjAZv/QP68\;F \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.shelley.key new file mode 100644 index 00000000000..d7ec62f4b06 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet55.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880b859212abc652626715926893e236f7ede47516dcbf1bc0a2f18d37e580c0e47cfe8caa2b5f3ce1ea34d6639ba7673b731f18e7eed5fee8886285b88e1a355746343ac3ec62f741bb9fda332f744ffbfa204476cc0bfdfaa5592f998c40d207823c4fe796aa5419fac8ca85ac0f5c3762f5110fd50363802bc825cf63bdb469a" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.addr new file mode 100644 index 00000000000..2aae342a38a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ1eMNrx76WA5JBwvxiHQWxM3tNYjpFDnJp9fgq86BHcxqSfN4 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet56.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..88d41f8fd85261ab4854528b271c14c4ee16823c GIT binary patch literal 130 zcmV-|0Db>hfY6;RjbTf3?Ik}9u)Rk?p1j`n9x?(bOz05g6CEKIL$4nt*E5cdM^&l4 zHdk_6YsBrg-(g&JLC5-osTAL?lB$NLCV+T=l7msEf^PQt&2?xFpL|_o$YR$J8mW-& k7rO,cxДۈ+̨qw2G5xM.Ʊ{6v)*UzFiٔѸ9(C~.ObRi$)SDp +iԃh \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet57.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet57.shelley.key new file mode 100644 index 00000000000..9e5113bee79 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet57.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "58809871261269b744ca30195160eb0f394c98f81cb305d0cbc4db32c552c9e46a563e2cb06378bbd094db88872bebd3cca871d777329bac15aed91218470135784d9ac3fa2e7fc6b1c57b368b76fb298d9117c62a93ae86557a46699bd9941bd1b89239a32843ada37e072efd1e4f6252692498ac29534470030a89d869d48368d0" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.addr new file mode 100644 index 00000000000..27156ddbe05 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYwAGnLtgusi3JKq4mvNqWvY9aztGtLwa22ko3HzUra3hjGXGx diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.byron.key new file mode 100644 index 00000000000..1ab8ee3663c --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.byron.key @@ -0,0 +1 @@ +X`{8j dM:T{-G+hiWt'?NKg#F·RyuLy*pT,ʐ(J~xXC2ُ 5:٣^T=:Hwb b"nG9 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.shelley.key new file mode 100644 index 00000000000..85ee13acf12 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet58.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588060c8f17bce386ab20b0d649d4d3a99a3547b2d472bbe95688669571474273f4e4b672346c2b752ca7984a4be8f75bc80aef192f24c79041b2ad91c8e927054fea32cca90978b8728a6acb84abc7e78584332d98f1ebd1c0cea19f1353a9ad9a3f1fb5e54aa3d1d3a4899c877c01162149baf0962d322186ea5ea4739149e85c6" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.addr new file mode 100644 index 00000000000..8306b018bb6 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ81XjXQAzpCj6QkV99kgkK46aS4J8xfppMi3R2Dpq4hhk7VNE diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.byron.key new file mode 100644 index 00000000000..9c66835dd7d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.byron.key @@ -0,0 +1 @@ +XxqG8v_'p(/2=~QEI֋ ;ѴE;%-34؁WpE .ę&)NKIiL{̬N<g _4_eXmf]U \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.shelley.key new file mode 100644 index 00000000000..8f7486e99d7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet59.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880788c7106b09f473876efe3cd5f2770282f3293c23df3017e51a1ff8ef845a149d68b0c3b8dd1b445d63b91251db92d3334d8815786c30870cd45c60cec96f12e17c49926cc291f4e4b49ec694ca47beaccac8eddf98ce4924e8d86fdb1953c7fc6f4670bf45f04d5345ff48465b5ca586db5ad66efa3b85d9255f5bca0eeaa9d" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.addr new file mode 100644 index 00000000000..933a60d7ee6 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ1x5d9EZgDis5f33LKFR4ZrGwh3uhYVYThiubgFSzSa5ZWWjn diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.byron.key new file mode 100644 index 00000000000..5d3bc5af0d1 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.byron.key @@ -0,0 +1 @@ +Xht#>{/48gZ*J UM~G*>`cҿLv71!LYCÚ^0=& [2PROȫZ=dXƻm>&uFuB2m.o \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.shelley.key new file mode 100644 index 00000000000..d65710606e7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet6.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588068c2fe74bc11b799233eb3a37b2f973438ba67a289115a2a4acc0b554d7ec8471a8488942a953ee66063f5d2bf4c76373121b24c59fea443c39a82bd5eabf413e8303dd0ee26c709d25bca328ba8d250524fc8ab5a8f8789803d6458c6bba507fa6df97f3e91d5c1e7e5267510e246917542c0c6f5326d128db72e6fd113a4d6" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.addr new file mode 100644 index 00000000000..23c4b277615 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ7nPhRYqbcNaaif222Dp9rx998Q2YGYR2UNxw8qmNWwJ6daxo diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.byron.key new file mode 100644 index 00000000000..4fa8f9053b0 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.byron.key @@ -0,0 +1 @@ +Xt#0keΕ\{L QH,kO0p#,]#pq6XrJ0Q݌ZV`\$̶g߁Q$xyI2mOHq,vpHw{ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.shelley.key new file mode 100644 index 00000000000..c4fbdb5341b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet60.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588010c0019f74bea7233006fa6b65fbf4aace95985c7b4cc30514e20bfae8a851482ca66bde4f3070232c5dbb19de1dca23bfa470a5d2e11eaec18b1acafab5b4cf71365872aaa44add1e18d1d208308df351cfee8887acdd8c5a56605c24ccb6bcde67df8151d42478ed8579a3ca4932f26dc6184f4871fae02c76704877e1117b" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.addr new file mode 100644 index 00000000000..a3cc512549b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ43xHeJbzVkx15t8qAhham5nt72JeK6XpXYvm68bfUHk6uVju diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.byron.key new file mode 100644 index 00000000000..361990356b1 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.byron.key @@ -0,0 +1 @@ +X`>4+[q~ (zт#KZJ{ow?kWva ˢ@W#'%,3q\ݑgYxqy\+׈YPq׿6cw D{&E \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.shelley.key new file mode 100644 index 00000000000..6c2373ecf4e --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet61.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588060113e34fd2b171ff2aecd5b717e201228b57ac7d18289c7e41f234b5a1ecb4aee7bbec2f0f81c6fbcd177903fae6b57b3d976d8cb61ca0cbccba24057237f27f7cad7f7f625c32c33c271d55cb6f4dd9167a9b15981787105795c2bd78859d85071aed7bf368763b7e6bae303f2bdc5f681ffb977f5a20b44101f9a7b26c445" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.addr new file mode 100644 index 00000000000..c87a9adb883 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZD45f87j3XvfwTWfTNgnz8QpnksffePU32ivaifqxcENuG6KK diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.byron.key new file mode 100644 index 00000000000..adbbf6e712f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.byron.key @@ -0,0 +1 @@ +XZ2&ﺐ<ѴV1Q2Ve)~{tf_ЀC"2&،%?Z.#UpLcPD/@Uґ'!K+[8aA<*uRUIz \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.shelley.key new file mode 100644 index 00000000000..1a0955f23be --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet62.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880d05ac7f7ef328026efba90bf3cd1b4ad070e8bcbcdefbc020f92a456dcec315132ea5665de297ecdf08f7b027466f6835fd08095a4a307bc1c4322d2113226d88cb91325951ff23f5ad92ede02d3e8aeff23d955e6f770ab4cffd463fad250c8442f4055d2912721c14b2b97e0be5b3861c3413c852a7552131855a649da7af3" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.addr new file mode 100644 index 00000000000..3fd9867442e --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZF42GYPd3j7iw2cCUEMvirSk4vLPkTRdqqJtr4R4PsHSj4w2d diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..7c79b8e3b3b964b9fb2716693f29a7af244e1ce6 GIT binary patch literal 130 zcmV-|0Db>hfN)N(`sK&~Ga>BTw*sC3GPvkz&eISF@Jagw0~gL_LR}X+@4Wt8ekgzr z7zr6f=N3+}r?5r|TfxCYX~41#2rmk;r`V5Vj9PFKh69e>K*HVh$srcF2P=m)!nRDu k_y;BtL=Jd0eUMf}@s0CC7`%d}SQ2jY2A?TFFIGOL&HhX|hX4Qo literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.shelley.key new file mode 100644 index 00000000000..0160ae37dbd --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet63.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880704eaefae5c8003321ecdbb7029e0032b8e869ced31007f049fb040317ce66425d173aefbcfe5c7e28800e18091944e7164eb1a7b046095bc1c14369c0b20d082f0ab1a7d88f648c5a701286038edd40c2ddf4c92116b8072b8735c2b64cc7f8072611440e78357d905644f18df34318bc82a658126ef3069f29402f563ea6cd" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.addr new file mode 100644 index 00000000000..d4bb8dadf63 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYzyxBezBeDqDzfNQ3gzF27LVvAqETTsaw6kdJpTWHCgmPVEo2 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.byron.key new file mode 100644 index 00000000000..4616eaa37a7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.byron.key @@ -0,0 +1 @@ +Xaݪܽ\ kq.:Qb==TҼ>(+dy|D*r bT+~+= >_>dXe]T.t\I \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.shelley.key new file mode 100644 index 00000000000..136f60c9b1b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet64.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880a01261d917ddaac61dbb97dfdcbd5cf9ee871a99b89e0d80b3a06b712ebc3a51a6621d3d3d54d3d5d2bc123e28faf1b62b1cd2643c2f83fcae805d9e3e79baab9c85bc7c81e607449206f8bb03f6eef4e82a72cec9091f62549bff191ae32baf7e2b3d0d3ea5a5195fc13e645865065d54ddecab1e2e809a74040ee55cee49e9" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.addr new file mode 100644 index 00000000000..c73ef1451ad --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZGXRwDFR5VCmKCesFgBqgtrADgFo9FfjwSPEAyJvtVfh1JSmX diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.byron.key new file mode 100644 index 00000000000..401ba3e6c77 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.byron.key @@ -0,0 +1,2 @@ +Xx1b9 +ߍH< pZDM[Pow5LߎK՝(mҡؿRޘ2ЪGg5`Dw)pL u \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.shelley.key new file mode 100644 index 00000000000..20ee91730d4 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet65.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880788e31a8c2629204c33982f0bcc914b40adf8d48e63c08919f0cbdafdee8705aebf60fd5c9440fbaad4d5bfb50916fd777ac35e54ccfdf8e8fa54ba985aea0c5e4c5d59d81a51d9d28b6ed8f6dd2a199d8bfc552e7151d89de9832d0aa47828298fa6781f20635b8ae9060f5ec99e04408971d77d71a8e29704c1f0996fccd75" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.addr new file mode 100644 index 00000000000..44960a8744f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZMYDvawa3S1DCA7eZdhrDFJMXHyh5hpxZJCQJD8c6ruBRanDJ diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.byron.key new file mode 100644 index 00000000000..abb5d582278 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.byron.key @@ -0,0 +1 @@ +XPzjB .i0Vwc?6MZW[:ܿ ML@I rd,1@K4vcG5fCA"E`4? 52!D2-|܈:+~P86NMJ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.shelley.key new file mode 100644 index 00000000000..32e65feb5c3 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet66.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880e0fd12cdcd507a6a07e6c40ebaf0c242d60c2e0269d311305677633faf36b74da35aeb575b07903adcbfe20b4d014cc18fa3ccd5408e4909077264a298cf2c31b7d704404b347663e6cb4716f98a35eaa0ce664341e922459ba6e99160343ff320a3351332dfcd2105e64494322d7cdc883a912b7e5038364e05844dc44a9284" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.addr new file mode 100644 index 00000000000..cb1def845fd --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ8ffskBQYLzjPyqyxKsiNzYbvcJSN9JintHx6V6K1K8aEtho5 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.byron.key new file mode 100644 index 00000000000..7429fbdf46e --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.byron.key @@ -0,0 +1 @@ +XH %Crܠ0Gv[8&P=Y.$b|heP5a4vo$߿D(ŽbH876?6{p@TUۭQLULbgdZńkS \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.shelley.key new file mode 100644 index 00000000000..f0da886a4e7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet67.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588048f3b709251ab1937f4372b1e2d2dca007304776f1df5bc23826fefdde08b1503d59d62e24bbb5627ce16865a450351861bf3476e5fe6fdbee24d2e7e6a7fedfbf44b2ffb82884ad88c28e82afad6248d0dbcb38bb37363f3696107b887090c0d0e8400f54d755f09edbad9a514c88554cf8b48cb462cb67cf645ac5846b53e1" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.addr new file mode 100644 index 00000000000..481da58fc35 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ8cmT88Unk2WD5YzUCcc8ifb3SzMQMpj5LS1QgRa7g6kez46h diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.byron.key new file mode 100644 index 00000000000..21b1ae9bdfa --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.byron.key @@ -0,0 +1,2 @@ +X8xuUf?08jKL%[Tz, ~ +WQ"wcm29 0 m\Qe^;ĒaEv&\?Vl2i3q dED7cצ)h1;ºi5 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.shelley.key new file mode 100644 index 00000000000..5781cc1aa58 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet68.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880387804759e1defa155b0668e3f30ae8ad5389e6a4ba7c0c64c255b11ffab07547a2cd40ce07e0af5f757bf51db22771863bdb86d32390d30d20da88b18a692ae6d5c9f5165ed5edd3bc492614576ee265c173f5699946c321d8669b933710c64e24544db371763cad7a629f9a568311a3ba0e47fc7dac2ba6999b48fb03581c3" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.addr new file mode 100644 index 00000000000..7c4f2c4131a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZGqtA4AbujDXkMH6zFZvTjUnRajLtwTCRV39EVdYtQJKrsc8u diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.byron.key new file mode 100644 index 00000000000..d13f30bfe01 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.byron.key @@ -0,0 +1,2 @@ +X|ݍFJNK|ݱSBgf: FQNVٖ0zgOC/C E>irm} + yq8BM1 Ⱦ{4IJ_/?]@b \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.shelley.key new file mode 100644 index 00000000000..25453b88242 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet69.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880087cdd8df646a3ff14b44a4e4b7cf91bddb119e0b706534267b0663a0c4608514ea156e38cf7d99630977a679f164fccc243ed97c2168c062f43f197e30fb50c0cf3453ef969eb72f3cc6d7dc40a20a2b0b52079df71a5f6f3e338d542d54d318e0cefc8bef7a6cc1cae899380e47b34494a995f872f3f5d8a40621dd3e020eb" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.addr new file mode 100644 index 00000000000..a3e1a837dc1 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZLEiDLGWsbGYvnKQbDxJaUJ6PPx7ynjAjnLsNjsBB9qfwD8FL diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..dc8742d09a85d74869ba125f0f2554ce1b971868 GIT binary patch literal 130 zcmV-|0Db>hfT(?s|LFk42n+MTfK4Xqbp|;Bh*T!sh6^Zh2c0{=Mnh=V{7CD#*+oAX zig1#Cq0nksKmq3f*WfHo(T%K4O>JxvD1u9a->O>>V86#zHbpj)J!j!AP7E0(4hZp@ kx9d!%lZ0?h@e6B)jv(*2pmm^*XU>Vg6qfTjGwp6{f*K_}6951J literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.shelley.key new file mode 100644 index 00000000000..6b1675dd37e --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet7.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880a87d8fffe900c4080bf3c0804d26ea75063901885426dd860b2871079d3bbf464368d7fc48ebb8d9453f188a70927ea1d06a594001e700d7e02c4dd18dac4d4d6d6c1228824b83dfaa5b1060bfc755364536923d67e12e4e0c19250e08f19ab7eb4ca69384704df10b6b868e20efb8a075a08e67ce89bf1496f33933ed6e6c82" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.addr new file mode 100644 index 00000000000..462414b7c05 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ5oH337RvQhYkjaDjvZnK1PKD4tVsJsNKcBcGUWihgTsiVtde diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.byron.key new file mode 100644 index 00000000000..dc04d79da44 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.byron.key @@ -0,0 +1,3 @@ +XhHA'?)yOy`Y^!>Av +E~r|@~B!GHŕ4fg H2Κ>/Q +uJu\E3J7[_ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.shelley.key new file mode 100644 index 00000000000..1675dc466af --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet70.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588068fee8a44841b9273f91c5cf291f79afb6caf34fa9a6bb18aa0e79e060fffb59ae9a5e8f21bcdae3933e41f1760a9b45021ede7eb872ad7ceb407e974221b6474802c5951e34bc66039ce7a8f567a52003eb487fa3e732ce9a3e86992f510a75a24a75e15cfebf1e8c451a33ea1403faf6964ae0fc371fc1bc9dc35b0ff75ff5" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.addr new file mode 100644 index 00000000000..0ca52339f47 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZAKA1vGHeZVpa3zhakExJ5utM9vwJ6auahoiCNFf6SufibHpC diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet71.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..a87236902e6ef470b21bd4b6fa989f9837baaddc GIT binary patch literal 130 zcmV-|0Db>hfZ%kH_IDJY0G@u#%I{&h-Y<0^EXidLb*c%Ih(r^XNnI9DWPtNb{$xX+ zIVfFQY+gkI^RAgpfZWF_)WP|*JXZGasJw2ScY1|?!_hjw8!S7)pSHNY6+Zpj% kD5uCGl^r(!;9شxOMUٟ#h`xJ}6U}&D +([ gg_ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet73.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet73.shelley.key new file mode 100644 index 00000000000..43962cd6e57 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet73.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588078254cda4d50a9ab1b88f5f2ab8e0237bec8ae4e60e8a80b0c02f7929017045b650f8a3b2d4df57a6dc4ab504fb275cf40126854fcc866223daa5fb460e91204592cc85415d09bc2df58d2bef4aa6cf4b343680dde3e3b9a39aad8b4de784fa34d55d99f23f0689402a9d360784a7d36bfdbd2557d26440a28c15b0b6767d15f" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.addr new file mode 100644 index 00000000000..21390edd64b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZGpXcqTCfq9KocPWYgVB234GRUdFVDhnxJ2H9stGrszkZJKTc diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..1183a857873d18327f79cade66e84aab0c12d77b GIT binary patch literal 130 zcmV-|0Db>hfUxrq6!qt85Yq@t1I@pXd;$D{(k z(fb!QAKk9$3j~+Z08k9MLlT#84O0@b+W9y4NFXl0sZt6^GgFOxcjs}4x%`ajwK!?T k1K07X>wr0m$UKL?ZLF;Bb;F`l%B7jBy)xSb1(fw6aHb7HOaK4? literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.shelley.key new file mode 100644 index 00000000000..a877b58a0a7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet74.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880b0f30f14f5e76b10d3084b03cdc6cf2ecc88bdbc6c3a3001e6a0f227c77bd5577da667eb3c79a6c7a402bfd1fb17351fddaee90b0497d100500cb9431297700d5312b2daf937f748202ebea9520a4833538d7c77e77188b9fc8ce9b53869c503d7f1a9eb80398ac83c87bf6dacacee75c3a253caa599abbd32db040594f52170" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.addr new file mode 100644 index 00000000000..3e9ae358cf8 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZDVJUU3NfXH8di6D5E16djtgaFjWm8f81CEmoHUnMwMGGqbVj diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.byron.key new file mode 100644 index 00000000000..8e8969a37c8 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.byron.key @@ -0,0 +1 @@ +X@cy{"ʪ"TFP7agAKCVp.1r" NpĕqCKZbWOiw aTQ|j zb!q`d5dXUόUˈ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.shelley.key new file mode 100644 index 00000000000..40ca4b98537 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet75.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588040816379947b22caaa22ffd9ef1ed5e2ea8bf7f98b5446503761b3674117f44b438d5693702ebbac0831de72e3bb220d4e70c495fd9e7194f9c743c94b8f165aa8629e97578bd84f1381697787fa0c0861df541a51857c6a0b7a62c82183aae7fc877160ab14ef87ad07648e881735e0faff64a8bb58eb55b1fecf8c8455cb88" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.addr new file mode 100644 index 00000000000..bd8de4a19ff --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZAS8cHTvHVwgPoAC1dg9RdTx3nQVam8gNebLYwiy9YccQQuB1 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.byron.key new file mode 100644 index 00000000000..1a5dfa03c9c --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.byron.key @@ -0,0 +1 @@ +XPGK4GfR:P߉>-Wq_O֋6)^/巵9sFHhڣW"s@bg2!;PʴG A=! yeN{ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.shelley.key new file mode 100644 index 00000000000..c8b4185184d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet76.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "58805003ec84479bf39d4b348fcbd3f18d47e888e966523a50df893ef1ec19da2d5782de1c7188eeb55fcd4f8db006abd68ba99d36299f5eaaab2f1be5b7b5a43973f546ce48898668daa357227316f3d9e540068d12cc1e6267e0a93221143bfe12508db4cab447c2c60c41eebe95813da7ba210dc7ebb4feace07911654e7b1aa7" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.addr new file mode 100644 index 00000000000..b5def378258 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ5hLgiaE7dzZuhqo68xZ7sMiqMGp39auHPcsE1VNNRvq7PnYN diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.byron.key new file mode 100644 index 00000000000..4b904c4ad01 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.byron.key @@ -0,0 +1 @@ +XjJ kR1["|[ɜ /!RY3_4l_k'ݹı%;U{"l$ϣ#\woOz;h\Sn_^jU;+Evsm͋*V/ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.shelley.key new file mode 100644 index 00000000000..f4ae3759207 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet77.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880e06a4a92f20c6b035231df5b9fcb22027cb3ec5b1ac902c99c0d2f21e252125933935f346c16995f6bb027ddb9c4b1e1a81f253bbcafb0e8cd12e255f77bef1b22e96c8381ca24cfa3f4f023dd5c77a76f4fd47a3b68195c536e5fd15ea404069091e393c2c7fd6a55d73b2be7bade45c176736dc41fcd8b2a5694f99b19f12f" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.addr new file mode 100644 index 00000000000..a13dcee1bf0 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZAdY5hGCpQpxT2ReHdW8gd3A4h5CJsedt9SyQeUpHBzzcwjAt diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet78.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..4279d50659870df8fef2b9abd7012b1124306e99 GIT binary patch literal 130 zcmV-|0Db>hfN1D%8Zfn26b|7MGOs_oFN(c|h~08LrjOnGsZ+^ZLL+`xv_7B!!zx-v zBvX@UhfLPI#$THz|PdmQz9?pmX$TI671qN)q%iHvL-unQyvrF0hZK-Vr< zA!(lIvr{QShusQ?SLrxat%n=&<$Ba-US*DOI&a)E3-f8N(x|MlG9JW1HDJa}=ZB&! kUqg&`6xwSdy#t5-3>+jXBfnwqDE{@$Kou3*qXrNWB%XIY`Tzg` literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet79.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet79.shelley.key new file mode 100644 index 00000000000..cd969d49786 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet79.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588058d194c832e1754f3bbef31ece8801c832eb2005066cbccbdbf478defb00c344d97550a57416f240d72e5821699ee8b353294187dd0a8757e93855ad871bf1e57ad4675e658e703a6fdc320bf369aed2a8acb1321ec4413560c64ce787a22c5f438c7614da6b22bd0387fe0c1c242a23bf61ef28fef5cd401515daa306101124" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.addr new file mode 100644 index 00000000000..057ed36169a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZEMR4QcU9rFCeTK8G6E5ABNAhiuEDzritQarbJ56GBMbPem8v diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.byron.key new file mode 100644 index 00000000000..12213eeb1ba --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.byron.key @@ -0,0 +1 @@ +XW_WiSl%(ڟfڏd_n-jعbH,AØXN~WS I<ΫELk ˔J3jn (;L @@G \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.shelley.key new file mode 100644 index 00000000000..b374b3e1f4b --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet8.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880b808575f18576953d46cd811d0f5b125d5288401da9f66b5ad1bda8fbf64035f6ec92d02da6abcefd8b9dae4c21062ff482ce54106f6cfcbc39858a9cce14e7eb857afabd05320aa83b6dbc0493c9fa7e789ee96ceabb3d7fea4459e4c6ba40dcb944a8014339e9d6a6e0d28fefca4b63b4c97bb0b098cf5fb4040aded801647" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.addr new file mode 100644 index 00000000000..32892f14192 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ7wwdAXP8z1hhMMWNrP9cc34eCFPbvEi5zFm6jDunvFq74WZe diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.byron.key new file mode 100644 index 00000000000..e04223b4718 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet80.byron.key @@ -0,0 +1 @@ +XFh4dee RAuH͛]![94ǝU9tuZd)r(J&HxlNtqV]vR@K 1T ~a(;Aˏ( |G 6R C!}̾?S \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet82.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet82.shelley.key new file mode 100644 index 00000000000..8105d00b774 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet82.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880309b9b1a443af79b1ce1d8ea46acb11158aebe45bf6bd0a15125ffdb583dbc4c637c9e3cc3ab5cd27b622bc3b578d2623acef1998bfd2d29a620c9577d359ea6b621ce5d6512b55bec155e01a4dade2e9f3641a00ae5123efbba8bbeaab17fb6190b047c931947f7ab201ee8c636520d80b643e321ad7df514ccbe3facdc53e9" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.addr new file mode 100644 index 00000000000..9e9fa32bca7 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZMZLrkwBYumeF8P8eDPzRUWmW2epZRGRiGcvkhQptDFbujuQq diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet83.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..0bd1938b593bb89af2d45338bf225ce5f50ece32 GIT binary patch literal 130 zcmV-|0Db>hfC!c*R?QjWZ`TrVek#+ilfwizADp4Pm0^O$6h>PBLe&}hNguh^h7HvN zB@Q}B=ks-+rqvw2lSJ8N6JIS~q6KkKAKdv?*r}(HE__orhfRJS2MEo}(Gth=M3*oa3n|&LaK7!B^9)R(&8(uzKP4>V%X;&C;yjFm? zV1whr0;CmgtYeA?0DUxo9l-kfyC&C*E^wiQo1V-+35K@9`n}GX061Fz-+dJK,Q5rpF;MŨ,5Q]AMZWǍ- @$ʗ 5 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet86.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet86.shelley.key new file mode 100644 index 00000000000..a7acf0513ec --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet86.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588050c95aa217b02764cf4480a5861562ee2f82df60c99138dc3c3c25dd88db6e4ad1f543113a670ace73f888592752e1785ea2c0c4f213a6c2426a9b6c6b13dede9c58c6dc26bb5ba4e71fbd703ed66415944abe4b2ce451357270f446973beb4dc5a888892c351c515df741db4d5a571f98c78dd9ef2d980b40f024ca9720d535" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.addr new file mode 100644 index 00000000000..413fad71d5a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZHVs5JvSXmYxYvZGHZ8DHoM2zfJaiL99LkRbnvpH3oAVKuoS5 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.byron.key new file mode 100644 index 00000000000..6c1e68138c9 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.byron.key @@ -0,0 +1 @@ +XgGK6^:ZnNi~ZJR^B9X 9Yup4*[5 {XD!'Fn@>~> $GLo^}krU©) \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.shelley.key new file mode 100644 index 00000000000..d7d28a3a964 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet87.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588018e7e067af474b0eceff36de025ee83a5a6ea94eb8dd698ea9197eda1ee85a4abc525e4296eef196e93958f2aa0dcb0c39f6bf5975c37014a88596342a16fd5b1035207b581fb7c70644212746fcf7ee866e40a2d33e7ee23e9211b9f31c0b24bd47cf4cace76fb6def55e7da9efc76b051b87721893f555a79a07c2a9eb291e" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.addr new file mode 100644 index 00000000000..138bdc75a09 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ967PQDmUALkQ7cEuuQVdCQp1iuUXnpbgE1kzamaBJ7qpqkwj diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..fa79cd46bfaa02f1c939a4779d91a075577638e9 GIT binary patch literal 130 zcmV-|0Db>hfcWDf$dVaC-+;Wzv&j^HaP=c-P+j<<;L>k*_obu!Q>W7#liaXhkfgD7 z+aoY0`KthP_p6+A`X5M~l2mZ_ZvY`c`R`wu6N&oGrx~=J7ioH|%-m5lPwXUq;PwH9 kVscL6MXx?@&j13I#}FFJ|4{o0Y>U9RP5(D0FN5-u-8BkDBLDyZ literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.shelley.key new file mode 100644 index 00000000000..42c9c578d52 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet88.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880f8e321c8921942df80bccab3c9147f70f52368505df8a2e0d26f77f7a5a3fc53a7d31b93dcb05f90a4b175db233026f9ab0073f7ab9c74fa1f489c925470f76f002140f9ef5f991389facda719b49d17697aacccdc51344fec247ee0f6018562724ee245af3e6fcf000295c7101acbff50fb096c8bc0b74dff37262f83f292dd" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.addr new file mode 100644 index 00000000000..5e463748788 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZA8i4pSXDVJHTufffv59optZ9CFbfdUgJbHqUYbdx93N7ppV9 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.byron.key new file mode 100644 index 00000000000..b5d6c4e41c6 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.byron.key @@ -0,0 +1 @@ +XJfd8P(M!_qPW^-eT,y\ ɛ6>}5ȾӿL==Y[)m>6Em%$@\n#$rϧG/q{pI+c6 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.shelley.key new file mode 100644 index 00000000000..0f4d899c3cd --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet89.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880f84af26664183850284df52191ee5f71ef0689b7a5e0d60350575e1d952d65542c0e79a25c0daec99b363eec7d35c8bef1d3bfa6168d4caf3d3d59d45bc229fef96d933ed9364514bc6d87251e14fc1824405c836e961ec61a1a1023f4a1b08924bed6721dcfa747bb1e08fc1b172f93719e7b1ec0b7c970de11c8497f2b6336" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.addr new file mode 100644 index 00000000000..3e20eb7245a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZMgjLUEpnfpbaGrrBc3mcfLMgzT8JL2rsWcE8YGuwerng4JTx diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..4e2b6da53402c4c210bfb91b0e7c76666b16cec0 GIT binary patch literal 130 zcmV-|0Db>hfB^15Sh+qDWR6{*{?YiR>u}NxY~n&YAhv3=UY$hxUSY*}Q^L$ADtVQ= zLh-4+^(qf(sk?p}oR?@6pP><4xk3wddbeW3NT~4oft6Rzy5Y!0{Tt(1q6R@YgG#uD kEkhfLhX|(yEfTLeWhgWo{y{82{FA?HmVX#qPm?^0^Na^RS^xk5 literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.shelley.key new file mode 100644 index 00000000000..41d7f1c8e25 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet9.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588000ee4058b93e12648e5d9ffed1f8a6eb70d20c6ce2423b20b66ab35e9d44fa5e61c57853c2cc272a7995bb42f1a9bdf52a0f69a9bb7e1a9c9768149fa1115cb9420b757ab762c348a8f0fa819557cebae1c845fd1be359a2064138834ab8862d431b898708a7052d12af396528341bfe412c40fc93bf6b967f185b4f933c8bf3" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.addr new file mode 100644 index 00000000000..7da6900f3b9 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYyDqAPnJ18XPaTE77vDAeuVa4Ytp7GBNe9PNvNLeLVBiM4jVL diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.byron.key new file mode 100644 index 00000000000..b68695a2f1d --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.byron.key @@ -0,0 +1,2 @@ +XpRzZL|F3&z:aU^r@H0?}Jn[@ +Bīu՘׏K#-+)KH 4-FEHOS"lra ?&W"k'N5 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.shelley.key new file mode 100644 index 00000000000..104b7133256 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet90.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588070528f7a825a0f4c7c074633b386267a98c6171b3a61c855fb105e72d4e44048303f7d4aa5f06efd5b40d60a42c4ab75bb07d598d78f9e4b23c22dd72b13b1902996b0a90f4b48ad0c342dbc8d01f5960f9546d0e4a2def2d8f101450ea448e6a1ff4f5322c7f56c07c072b06109e7883f2657f522f4ffa9ce6b86e4a2274e35" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.addr new file mode 100644 index 00000000000..fd52d731339 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.addr @@ -0,0 +1 @@ +Ae2tdPwUPEYw1wgtGgnoe2NbgfoFyxERny8qJM1vkqCXzkiXipJkJ7qvoR9 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.byron.key new file mode 100644 index 00000000000..20d4d816e1a --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.byron.key @@ -0,0 +1,2 @@ +X\uz.Y#N'LLl%˽VbLm]$M  v /2O(x+)w9mM+KSǶumc>ᎌI +93aq.n b: \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.shelley.key new file mode 100644 index 00000000000..e5347861f89 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet91.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588090bc80f05c757ac02e5923e24e274c4cf06c25cbbd56ea624cca6d9f5d15244d09891f0310c8f80d760c1ecf2f8ea8fb94324fc228e778a0ea2b2977d2396df44db11df1e9c3d6edf31bc82ba5fd4be35312c7b675ba148002886d8c631c3edfe18e8c02f907ab490a96f339aa33d4fd1bd67fc361a271c62e7fec6e0d623aa5" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.addr new file mode 100644 index 00000000000..445d4ccd1f0 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZHKcKbatmsP23ACD6VVXiNa9czTngsBnHGT5dqqi233xVLcGs diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.byron.key new file mode 100644 index 00000000000..433311e7813 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.byron.key @@ -0,0 +1,3 @@ +XHV5(@dʜa +WA TЂK;'F5hKGh<GEdFJ;)^t3ՇܛM&s'L\X`: +(y :l@7 \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.shelley.key new file mode 100644 index 00000000000..cda48d4f957 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet92.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "588048e0c456eb351dd3cb28401dddd910a49ac664cee6fcca9c61d70a9698e95741bb0c5496bed082ffaa4b1f843b2746affa35850368e7cd4b8cce47683c164745641f464a3bd4d1295e7433d587dadc9b4d2673e718c2278298194cff150e155c58b8f160bc86f9e8ab3ad8e5fc95f604ba0a28790dba3a6cf8a3f9a34037b3e5" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.addr new file mode 100644 index 00000000000..66548a47095 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZEapggvTWfEx5jK1kkGVYMKeex7DcJVcTgmKxdcUnQXrDho2b diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..1a8adfff378b79fbe1366c11bee00c62eb4cac88 GIT binary patch literal 130 zcmV-|0Db>hfasmgV6ZXFlBkM=kdl~`{CIc)13$8}#+D8X)`N0=NC00l_a#l{^_JEv zM8O7oPu#|P{4E@F%|kQS&iEHCeXu|@r3bhD@=6Igmvq1YEIY?krlXWwwO8RrR71n# k(Nia3V1YI&s{5=U7xT*IE1-=_+9}#%Wz`)jb`uzSrk3qLQ2+n{ literal 0 HcmV?d00001 diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.shelley.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.shelley.key new file mode 100644 index 00000000000..04b6e66ec5f --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet93.shelley.key @@ -0,0 +1,5 @@ +{ + "type": "PaymentSigningKeyByron_ed25519_bip32", + "description": "", + "cborHex": "5880e89dcd60b031cc92a88a8490929894fc787801033fb2b3c6960e0bd683727d48005f32f7254de6f596d62b44c1067b4fdcc67bfc2d1c73cd4333d7cef8172d7db04034a507b7fdf24a09399774c0002c3bc754a6a3945bb557e1465443c3e3d15327616081362aaafbac2017f3cae62ba08d4bda29da6265d51d2a7613187aa6" +} \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.addr b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.addr new file mode 100644 index 00000000000..9d8c4540474 --- /dev/null +++ b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.addr @@ -0,0 +1 @@ +Ae2tdPwUPEZ1NPbZE91PQidZVBafLLco2YnpHdgwTxNPKgygXSwZVq4dgKB diff --git a/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.byron.key b/lib/shelley/test/data/cardano-node-shelley/faucet-addrs/faucet94.byron.key new file mode 100644 index 0000000000000000000000000000000000000000..dc88d4aac4ef462404c2c17a4e7fe5576d87d36d GIT binary patch literal 130 zcmV-|0Db>hfUs{zvv+6gvH6h1ploa>}$k_AgBmYe)XQ~3Y7MfNs#h>ZFTjMgnY zhqMr=j3UdY889kk5$kg){!!SOVOq{3q5h{LfxHp_s?PWhfN+>^GFp0vq_J_zjT#-wYL;N!C&DLm@{ ze)s63XWFnGKapT0eJ|xWUdOG|6X^Y(QXsI`yW4O2Qx`8@c7fd1hfM|TxvL|jps~`AeO1F%Yr)q72Iyts?%LSgcu;22tUW!)$a!nhlZOce? z|FQ;9Ydu$s>= take 10 . genShelleyAddresses) + print rawAddrs + let addresses = encodeAddr <$> rawAddrs + let oneMillionAda = Coin $ 1000000*1000000 + putStrLn $ "Have " <> show (length addresses) <> " addresses to fund" + + sendFaucetFundsTo stdoutTextTracer dir $ map (,oneMillionAda) addresses onClusterStart action dir (RunningNode socketPath block0 (gp, vData)) = do -- NOTE: We may want to keep a wallet running across the fork, but -- having three callbacks like this might not work well for that. @@ -269,7 +282,6 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown (Link.listWallets @'Shelley) Empty forM_ wallets $ \w -> void $ request @Aeson.Value ctx (Link.deleteWallet @'Shelley w) Default Empty - mkFeeEstimator :: FeePolicy -> TxDescription -> (Natural, Natural) mkFeeEstimator policy = \case PaymentDescription i o c -> From 728c953817eba6af7b9391634809794b1f03b922 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 15:10:48 +0200 Subject: [PATCH 42/86] some cosmetic changes while reviewing code --- .../src/Cardano/Wallet/Shelley/Launch.hs | 58 ++++++++----------- lib/shelley/test/integration/Main.hs | 9 +-- 2 files changed, 28 insertions(+), 39 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index d9f29a9ae87..10131ae94fa 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -42,6 +42,7 @@ module Cardano.Wallet.Shelley.Launch , parseGenesisData , withTempDir , withSystemTempDir + , oneMillionAda -- * Logging , ClusterLog (..) @@ -94,7 +95,7 @@ import Control.Concurrent.Async import Control.Concurrent.Chan ( newChan, readChan, writeChan ) import Control.Concurrent.MVar - ( MVar, newMVar, putMVar, takeMVar ) + ( MVar, modifyMVar, newMVar, putMVar, takeMVar ) import Control.Exception ( SomeException, finally, handle, throwIO ) import Control.Monad @@ -199,10 +200,10 @@ dev = do [port1] <- randomUnusedTCPPorts 1 let mode = RunByronShelley HardForkOnTrigger let bftCfg1 = NodeParams Notice systemStart mode (port1, []) - withBFTNode stdoutTextTracer dir 0 bftCfg1 $ \socket _ _ -> do + withBFTNode stdoutTextTracer dir 0 bftCfg1 $ \_ _ _ -> do putStrLn "BFT Node is up" putStrLn "Submitting update proposal..." - updateVersion stdoutTextTracer dir socket + updateVersion stdoutTextTracer dir putStrLn "Has submitted update proposal" threadDelay (300*1000*1000) where @@ -467,16 +468,13 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = let bftCfg = NodeParams severity systemStart mode (head $ rotate ports) withBFTNode tr dir 0 bftCfg $ \bftSocket block0 params -> do let runningBftNode = RunningNode bftSocket block0 params - onByron runningBftNode + waitForSocket tr bftSocket *> onByron runningBftNode - updateVersion tr dir bftSocket -- TODO: Maybe poll and detect when the fork occurs traceWith tr MsgForkCartouche - waitForHardFork bftSocket 2 - onFork runningBftNode + updateVersion tr dir + waitForHardFork bftSocket 2 *> onFork runningBftNode - setEnv "CARDANO_NODE_SOCKET_PATH" bftSocket - waitForSocket tr bftSocket waitGroup <- newChan doneGroup <- newChan let waitAll = do @@ -510,9 +508,9 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = group <- waitAll if length (filter isRight group) /= poolCount then do cancelAll + let errors = show (filter isLeft group) throwIO $ ProcessHasExited - ("cluster didn't start correctly: " - <> show (filter isLeft group)) + ("cluster didn't start correctly: " <> errors) (ExitFailure 1) else do let cfg = NodeParams severity systemStart mode (port0, ports) @@ -529,8 +527,10 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = rotate = nub . fmap (\(x:xs) -> (x, sort xs)) . permutations waitForHardFork :: FilePath -> Int -> IO () -waitForHardFork _socket epoch = threadDelay (slotDur * k * 10 * epoch + fuzz) +waitForHardFork _socket epoch = do + threadDelay (slotDur * k * 10 * epoch + fuzz) where + -- TODO: DO NOT HARDCODE PARAMETERS HERE slotDur = 250_000 k = 10 fuzz = 2_000_000 @@ -556,12 +556,7 @@ withBFTNode -> (FilePath -> Block -> (NetworkParameters, NodeVersionData) -> IO a) -- ^ Callback function with genesis parameters -> IO a -withBFTNode - tr - baseDir - i - (NodeParams severity systemStart mode (port, peers)) - action = +withBFTNode tr baseDir i params action = bracketTracer' tr "withBFTNode" $ do createDirectoryIfMissing False dir @@ -619,6 +614,7 @@ withBFTNode name = "bft" dir = baseDir (name <> show i) + NodeParams severity systemStart mode (port, peers) = params -- | Launches a @cardano-node@ with the given configuration which will not forge -- blocks, but has every other cluster node as its peer. Any transactions @@ -634,11 +630,11 @@ withRelayNode -> (FilePath -> IO a) -- ^ Callback function with socket path -> IO a -withRelayNode tr baseDir (NodeParams severity systemStart hardFork (port, peers)) act = +withRelayNode tr baseDir (NodeParams severity systemStart mode (port, peers)) act = bracketTracer' tr "withRelayNode" $ do createDirectory dir - (config, _, _, _) <- genConfig dir severity systemStart hardFork + (config, _, _, _) <- genConfig dir severity systemStart mode topology <- genTopology dir peers let cfg = CardanoNodeConfig @@ -779,9 +775,8 @@ withStakePool tr baseDir idx params pledgeAmt poolConfig action = name = "pool-" ++ show idx -updateVersion :: Tracer IO ClusterLog -> FilePath -> FilePath -> IO () -updateVersion tr tmpDir socket = do - waitForSocket tr socket +updateVersion :: Tracer IO ClusterLog -> FilePath -> IO () +updateVersion tr tmpDir = do let updatePath = tmpDir "update-proposal" let votePath = tmpDir "update-vote" let network = "--mainnet" @@ -1127,7 +1122,7 @@ sendFaucetFundsTo tr dir allTargets = do where sendBatch targets = do (faucetInput, faucetPrv) <- takeFaucet - let file = dir "facuet-tx.raw" + let file = dir "faucet-tx.raw" let outputs = flip concatMap targets $ \(addr, (Coin c)) -> ["--tx-out", addr <> "+" <> show c] @@ -1274,15 +1269,12 @@ waitUntilRegistered tr name opPub = do -- transaction. takeFaucet :: IO (String, String) takeFaucet = do - i <- takeMVar faucetIndex - putMVar faucetIndex (i + 1) - - base58Addr <- BS.readFile $ - source ("faucet-addrs/faucet" <> show i <> ".addr") - putStrLn $ "about to read faucet: " <> B8.unpack base58Addr + i <- modifyMVar faucetIndex (\i -> pure (i+1, i)) + let basename = source "faucet-addrs" "faucet" <> show i + base58Addr <- BS.readFile $ basename <> ".addr" let Just addr = decodeBase58 bitcoinAlphabet $ BS.init base58Addr let txin = B8.unpack (hex $ blake2b256 addr) <> "#0" - let signingKey = source ("faucet-addrs/faucet" <> show i <> ".shelley.key") + let signingKey = basename <> ".shelley.key" pure (txin, signingKey) where source :: FilePath @@ -1516,9 +1508,9 @@ forkCartouche = T.unlines [ "" , "########################################################################" , "# #" - , "# Transition from byron to shelley has been triggered. #" + , "# Transition from byron to shelley has been triggered. #" , "# #" - , "# This may take roughly 60s. Please be patient... #" + , "# This may take roughly 60s. Please be patient... #" , "# #" , "########################################################################" ] diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 42d78995158..76455cfe311 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -70,6 +70,7 @@ import Cardano.Wallet.Shelley.Launch ( ClusterLog , PoolConfig (..) , RunningNode (..) + , oneMillionAda , sendFaucetFundsTo , withCluster , withSystemTempDir @@ -244,16 +245,12 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown tr' = contramap MsgCluster tr onByron _ = pure () afterFork dir _ = do - putStrLn "### running afterFork action" - putStrLn "### generating shelley faucet addresses" let encodeAddr = T.unpack . encodeAddress @'Mainnet let rawAddrs = (seqMnemonics >>= take 10 . genShelleyAddresses) - print rawAddrs let addresses = encodeAddr <$> rawAddrs - let oneMillionAda = Coin $ 1000000*1000000 - putStrLn $ "Have " <> show (length addresses) <> " addresses to fund" + sendFaucetFundsTo stdoutTextTracer dir $ + map (,Coin $ fromIntegral (oneMillionAda `div` 10)) addresses - sendFaucetFundsTo stdoutTextTracer dir $ map (,oneMillionAda) addresses onClusterStart action dir (RunningNode socketPath block0 (gp, vData)) = do -- NOTE: We may want to keep a wallet running across the fork, but -- having three callbacks like this might not work well for that. From 46dc9a75dba1d150c33e20d20711d1942aaffe97 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 11:40:47 +0200 Subject: [PATCH 43/86] Remove shelley wallets from shelley genesis (now automatic) --- .../cardano-node-shelley/shelley-genesis.yaml | 1105 ----------------- 1 file changed, 1105 deletions(-) diff --git a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml index 49bbe83bd08..e36e718286f 100644 --- a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml @@ -2317,1111 +2317,6 @@ initialFunds: - 82d818582183581c97f024c7b122ec59b704f3c354862f043432c43427fb47028bb7fb8ba0001ab0ef4e12: 100000000000 - 82d818582183581c3863224f26a12596fa470583636e01ec05d0f8e450a8cae7da3890dba0001a45e50d87: 100000000000 -# -# Shelley wallets -# - -# "vintage", "poem", "topic", "machine", "hazard", "cement", "dune", "glimpse", "fix", "brief", "account", "badge", "mass", "silly", "business" -- 619ed7d88109a20fc0ffe82926040f0768a6bd1dbeceb8124a9050ff85: 100000000000 -- 6198452f8bb4b6387904cdf68c834098af2912053d9d9ecee18e3451ab: 100000000000 -- 61225dbda28850ffeb93f8773d05cb8afa80bc164fdf637c14758f7f68: 100000000000 -- 617e537237d0345523e9dfd22f6863b4b512462063cd07d9306dbf531c: 100000000000 -- 6152c2095a0cf1e92573c8a7e3d764f448719c9fddf93fea47d902d6b5: 100000000000 -- 61c669879083a6aefb0b59a3759dfa230564c20e558accff11e1eefaee: 100000000000 -- 6184e64164416c848a6e4bcd90abacd18dcf3b1c0d04e54e113ad2c1c3: 100000000000 -- 61de6bcdc2bf4a4d59b4603b79eac88d23df808f78909d0765a1e343fb: 100000000000 -- 6184157cc8ca5adbbf5208579fdb8a51dce2420f815888c435131dd57a: 100000000000 -- 61a9c60aa2edf900afc47c4f1de41504a45e41bc94d4c6c292a9607339: 100000000000 -# "shift", "mistake", "rural", "security", "inspire", "loyal", "wink", "special", "blast", "retreat", "crouch", "noise", "dirt", "around", "drastic" -- 618313175aa5a480df8c64ddbfaf278f920fcdaab5946b1ef7a701d54a: 100000000000 -- 6126090b88479e425ae1288619f9dfee7b391f3a8da88af798f4628346: 100000000000 -- 6146a2310524cafeee98861cfa387495c763d5c4ef3299e1b1e75eee90: 100000000000 -- 6197fca4d16b688ed1b1c0309260d0c516c53d6609bc0fefeb559d34b6: 100000000000 -- 61e8cb0223e2cc0150ce59d59067c8a764aa85d2f072be324da7d6cd97: 100000000000 -- 610b07b6e29b9b658d8771c937792181d9f343d791af0de195c7a5c0ab: 100000000000 -- 6168f9442797dcf241b850ea349a950ecc3649ff81fdebb5e27d24dd73: 100000000000 -- 617d109d52923f077875bcedc0ae46c352b2e3d843a621b809c8d61c78: 100000000000 -- 61504917e40019e7f682ad4c1f5bc5c8360b53569360b565de99ddf1ca: 100000000000 -- 6170bddfda56e938a663f9d2e3dadb3e275cde9976acb3e1d9b2127a61: 100000000000 -# "soldier", "this", "verb", "copper", "immune", "unveil", "engine", "know", "tower", "only", "foot", "riot", "orchard", "member", "guitar" -- 61673db3ec2f918f5341205457bb08c9a11569e68dc083a10dc3fb9ed8: 100000000000 -- 610751600dea0d090ce96f07ccf5c0263cc3dc2a56e8d9bcbc5d5123c8: 100000000000 -- 616e70e8409d7c6e38ecafb5d083b97219f82c4523c4a219c684658adc: 100000000000 -- 612f90d92a2bb269ef204d5f251d53972e29577052b788a98334419b0b: 100000000000 -- 61e26e9c54e963f42ecfeeedbc6f3a3668297c81ebe748129dde975df1: 100000000000 -- 6164fcf117b90a1a43b5e8a339e8b10e33b29c7b0cc3dc1696eddd5182: 100000000000 -- 618df07d562db81fdb39565434e4386364a84f5addde512f66d02ec95d: 100000000000 -- 617072ad48e7447c6a27d6be401b81de7feca254459a5ec93066fb370e: 100000000000 -- 61c5ad7690d5ce252fa8bad5a5067ecfe453f03e532339ca1757743788: 100000000000 -- 611278aa6782e62c21beffeab06c7957cd7e7d8f90d9c3186956c00ce6: 100000000000 -# "cupboard", "fringe", "garment", "dawn", "caught", "cream", "alpha", "sorry", "unusual", "federal", "item", "leopard", "lawn", "rescue", "desk" -- 61316377742660da7015a4925b93fa0fc115ac557cbd7a2cbdd61bf05f: 100000000000 -- 6123e3578ed1acec9d2ce455932a1edd100a17ceb58d91c04e7b3ea615: 100000000000 -- 61cd40b84a252d1029857355dbfab2d8807ea6befbe6a3e92c91e4047f: 100000000000 -- 619529f5677a74a8f561c87f68bbd1e88e1edc40380a048a7e006d1647: 100000000000 -- 61ce16c04f7908b42b44443902d13d199f72f1edce8b93232b83c540af: 100000000000 -- 6143925d015a022a569276e32132aef4dcb63d8cb4b2890e53c5f341fc: 100000000000 -- 613a8474f21aa2f7f5b26f0dcf7e5e491c606587f68ca18a09e9169391: 100000000000 -- 614f12b31769315731d1272333359eb0a56c31a70b754b25cc077c4d10: 100000000000 -- 61f99b0616ad2023caaf9e421c025f16e440669b73e9bd17f0c10d1c82: 100000000000 -- 61499bebd528933e9e675289ce14e8184b13b209b964315556810a0522: 100000000000 -# "glad", "hold", "sweet", "tobacco", "topple", "rich", "grab", "bridge", "adjust", "excess", "improve", "job", "lottery", "diary", "dust" -- 616a93492c66a704566d815ee59017a01c0f86577e76d7c44a21ab9216: 100000000000 -- 6192c99d8443b13df7cc2e9a8c53c4dacbde6b0dd0e10b9ce065fc1c82: 100000000000 -- 6145a1039c3efc62a6830165120534a3dbbeb4781140e911ce9938a2c5: 100000000000 -- 61803e7e2d93458118101e6bc0e7f2d72b3ea303bfdc715537b376944e: 100000000000 -- 618b0e563de37b2258afc51d45a6c64e9cd305ca66e5b7bf2b341add77: 100000000000 -- 618bea3c7ba0a5b580ffc77e9a686c5cccfc34913ece18a8169e044c9f: 100000000000 -- 61cd6391a616e928c839e9cca0396ada6ec64c70282a2d4b20c9124c3e: 100000000000 -- 61918608b792e8b30a4d89db494cccbee4c11031f809ec3cd75064bde5: 100000000000 -- 6176231d9fa6948f0f041565d6340cea2196d572418deb69a17839773c: 100000000000 -- 61f40151c08a5919e90fd29c89dc037fdd58c6a0c840e6b3260b8f57eb: 100000000000 -# "all", "flee", "sugar", "mail", "response", "minimum", "bulk", "stone", "cost", "dynamic", "forget", "embrace", "spray", "ocean", "luggage" -- 6136c01969f84e39cc7c84d9bbbfa6b78ea12d58b651ca9d239089b4d9: 100000000000 -- 61bec4f3700eda17033b6f6405dc4aabcfb33c71f38b01087d779eb480: 100000000000 -- 610bddd0808135ba4551cead6b09ff05c41c64b8466a2854b57efdf31e: 100000000000 -- 61ddee1a89417057dfd386dbb7c819f651ccc0ca5584b023eda402132c: 100000000000 -- 61349c835e2eb47978c069e61dba979e21053e60199714c9e7add463e4: 100000000000 -- 61d819ead7661923a87e9da0e57ffe1d6cf1ad2a74aaeb80e0578611d0: 100000000000 -- 61d92c30686aad2ed277cef4bbf924673477d8fb4528ef9f0ab5103fb9: 100000000000 -- 6125b0b8f987f9c2abc85c7899b488cec2b200848575b9faa2b9296f42: 100000000000 -- 61c92d1b2bc421ad68bc97f449c95dbaf2801030c55938b3039263d352: 100000000000 -- 614663e316d4d1e46823e47fa2aaad917078a673a4d45b58a4f17b49ab: 100000000000 -# "kiwi", "million", "space", "squirrel", "deliver", "galaxy", "cat", "private", "meadow", "canvas", "differ", "rescue", "artist", "laptop", "claim" -- 6171f6789489d663f42ae8b6db57b5a173165cf84fabb0268a5298585d: 100000000000 -- 6185095b7da72f1cbd13fcba549b51c978e1d87918c0490825934c84f3: 100000000000 -- 61acc2a2d01570d20cb1257fe16fefbadabc33201f2a7ec2b2ea1cb14e: 100000000000 -- 61f7d70983e3d5101efae6efc726d1db62c6e82c32aeb885f71ea56923: 100000000000 -- 61d42d799559c8d0ada7a7c02ef991e0583bb94803501f4d0fe7e6b812: 100000000000 -- 61cfc3453cfd9fee0d18cfb709f0de2e33605e6bcc9c8da89cf8cbfd55: 100000000000 -- 619716d607e1ffe68b37bc7dec30d60e99e43a53233caf691f7b1cbaac: 100000000000 -- 61b0ee517f9d09379e12d248203a605652afd55581d061f5752689184c: 100000000000 -- 617289f0bc5c82bdf211c19b69531eddd55b5cbee03098e209ef840225: 100000000000 -- 61f59ea6b40049ad0f80fb154927719a951bea92965cf39de4a40988fa: 100000000000 -# "length", "alpha", "return", "angle", "siren", "buyer", "reject", "absurd", "piece", "crash", "toilet", "flag", "viable", "brick", "sense" -- 61d65e6fddf75d15c594b0944e3198ce28df45e6bbf43c57ed43796e49: 100000000000 -- 612ffe5829c07b2ba4b0d9aed6e5bb10569db384fbe1c62e620938cb3b: 100000000000 -- 61b24938275e526572a1ff53843710652ba994dcb01cbc5bb63dae3469: 100000000000 -- 61cc520bdf887874e336dbb705fc7f53d5a4f1dddd8766d80caeddd271: 100000000000 -- 6188893624c7ae5d57a0da106dd3873c2a24db40e5249d72b76d051cb9: 100000000000 -- 61dd13ee995091134f04c1934bc9f8048bca5f2f2b734c73bbd3b565e8: 100000000000 -- 61149b4766c5fbdb68cd884f502d37f8a88a3e6057e9cb169bd223cedc: 100000000000 -- 61ac3c59d888315c4cdbc10670c76cf70e5a09af7bf20d13cc8a6b21ea: 100000000000 -- 61074fd7aa968aa310d8778ed0e209e009b703d0440a292a6874fa1e06: 100000000000 -- 61e5f48b4a0aa8fcfb871e9d579ee7ccdfa3da8c3ea0aeb0802957beae: 100000000000 -# "viable", "become", "talk", "benefit", "start", "shield", "chapter", "skull", "donor", "hip", "place", "aware", "acquire", "mango", "hold" -- 61d660e1ec3e3e5be2a198069325d35bb4687cf9a7fecc4236f90fa473: 100000000000 -- 61d93db475d5f2ee43e6b6423e9b9624a34803b1c42aac95d62f9c9eed: 100000000000 -- 61aecab99625b04575e1ef8d68cfbcaa03b09124c77d948375600c11ca: 100000000000 -- 61a03f92d9224c551c49fa8196e9f79f72f568114cc3fb304d6a06645c: 100000000000 -- 615e839378cad677678b68f7d108cdfbff85418beace7b0560b436d503: 100000000000 -- 615c3fac39916ff80a648edba5ab5f19337986dbf6cb9f135f58e0b904: 100000000000 -- 61146f4e2fa72729b578b7f1522ea2012d00bf4b861ea234fcaae559fb: 100000000000 -- 61832625dd44fe299528ca8aa1802978e735115bc01728e1d5506fda32: 100000000000 -- 61348a45b0e7e4c4e8381a568edd46910685303c12c74ced424884bd53: 100000000000 -- 61cd7297d2331fdcd80536de4464385c365d3143d08ef404c326aafb1b: 100000000000 -# "awkward", "electric", "strong", "early", "rose", "abuse", "mutual", "limit", "ketchup", "child", "limb", "exist", "hurry", "business", "whisper" -- 618c521136a9deb29804fbac9e893d6347927a909913f1918dd96e5529: 100000000000 -- 619c5bc3cd1b6322126b4308c4426f80a7b75dd2b6c4952fbe4238971f: 100000000000 -- 6156aa71fc446e9f88812644b84aafc5d3bc009120121c70b70c7eb115: 100000000000 -- 61cb813c475b9f51dabf44f8fa15b65da4a75a34235662900eccd0e3bf: 100000000000 -- 617fffce150f6a0d9b10dfe3427a583a0c44122d2cc8f5901e33c174c0: 100000000000 -- 61c1091fcae0023278e196babc43c80acc2a96a16a5ba98434d38d4378: 100000000000 -- 6154b918e096b557cccc8e6b0cb44f9eee8f9b3f701a67e0e9d379c697: 100000000000 -- 6126d1a6c97fa2662dfe89ec2e162d8c99e9eec85761a06b08f65a35ee: 100000000000 -- 610a2d01272aa3151bacf51ad418336f38d067ad98f71beb4e754df004: 100000000000 -- 61aefc2b6bd333d2c47aaffce975eddd2f8014d8bd9adba3cc589b1fd2: 100000000000 -# "blood", "limit", "pumpkin", "fringe", "order", "trick", "answer", "festival", "ethics", "educate", "luggage", "dinner", "record", "fox", "truth" -- 61b86b6ec104118272b50bfbfcf0a572603b419667ea9f510e43222553: 100000000000 -- 612f21491ab806a42c6d14aa0a2d5cb4ab2963d265fea1ba92475866d4: 100000000000 -- 6138aa64aace14dff68af4128ca2cd86808f3e234076c5a8b8c925cd1e: 100000000000 -- 613ec09f5c5fa1cf75d3811bf561f7e8fd1a6b8c74984e3fe30309f14b: 100000000000 -- 611f588de197fac86e294a75e04864d09967ed0e60a6de0d05a4506230: 100000000000 -- 61a7b24d171e02041a1e7956ff3ccbd4fefa4e41698891f32d548e935a: 100000000000 -- 6149f0bb86a7e58fd10c117bc98c0e0e9ccf640177ab61188623956200: 100000000000 -- 6154fbf8dee7b7068f8a6ac7fadef5f4870773ac25ec10c1d665707e56: 100000000000 -- 61bec4efb21f74df60cbf9bcfe197964507c2fc231ee61e5d4396e5fa7: 100000000000 -- 6151186180cde22db0a414123fcf7f51032b3f7f072f95c95d81c71a5e: 100000000000 -# "bridge", "joke", "jeans", "width", "social", "banner", "visit", "enlist", "reason", "hand", "license", "subway", "butter", "render", "absent" -- 617bfd014381d60dfd6ae6d6d040411a0bb2dd1744258ecebaa83974a2: 100000000000 -- 61221a244ce2788c4330296ebf710633004a32cd53b8fcdb034ca72940: 100000000000 -- 617c01e2142ac10b90f793bdf0ac834f7bfee5ef0dec9fbfa7a303d234: 100000000000 -- 61f623d3e2353b29e7ec262a0beeda249a6568f132f81e2224862c6764: 100000000000 -- 61c1c01009f204ddeb0fe0efd40908bbf80afddf52650601abbcfa848a: 100000000000 -- 61105f7e08db858997e294719c3eacec5c994a5a06a4de078eae14ec94: 100000000000 -- 61457c91d5878a30b6f8e4ef05878f9a64c4a5dc62ddd99053e30d29c5: 100000000000 -- 618c62cf2bc52a2376812799a2fb052d15efded6630461aeda5fa3a14d: 100000000000 -- 612e94cbfd227d1e46e62ec6b668ca0a73a90d362b0bc35a9dab56a606: 100000000000 -- 614ebe3b1093ad408272ef3fce84993ecb1b535ad55f5134348b1415b1: 100000000000 -# "bless", "turkey", "install", "across", "bronze", "check", "true", "icon", "treat", "that", "tuition", "flush", "panther", "powder", "ecology" -- 61b51d223616b1d08423f1624bf583c8c1b36b97f90a8f40a3a2d43776: 100000000000 -- 61640d892e078a84733b8034c51f83da78a29b871029160627d77f541b: 100000000000 -- 6162006dea5abd191193402b5e354eef19eda5a114a0bbeaa2fd667f0b: 100000000000 -- 611aeb38c370989d2add2b187d7797979d99641097194c95c7e1e6796e: 100000000000 -- 6197227c202e51aa4e26deafa15a81095b29f60de5c6a1e401b0cfbe5d: 100000000000 -- 61e58152d240aacff0e879ca3a92c9971c26b9ed36008ddabdcdf27309: 100000000000 -- 61046af20d1522800d45db477c59457f800dca91a0625336d63f6a435b: 100000000000 -- 613bd0a3ab0d2a23c500bfdacda3a6fddd3184cbbfc294a116848be56a: 100000000000 -- 615790c71d48863de1c93c4cb27e422583fb0c732e6763fdea2867c9a4: 100000000000 -- 61feccaf565e6b4de1bf6a8ed6539768eff61280acc39a91426941c010: 100000000000 -# "trick", "razor", "bicycle", "front", "hollow", "liberty", "swift", "coconut", "pull", "raccoon", "level", "woman", "awful", "sound", "swarm" -- 6181accb1d72a9fe77eb7f460ba6feb202caad73e0766492cb073a031e: 100000000000 -- 61b60e4df7aaec37c6d82261a815e8cf3d09b50189c310a77f9d9275c2: 100000000000 -- 616d8c05c09a569a22dbf39f07db3cb3a9fcc43c45a805e12650457fa4: 100000000000 -- 615ee358b3a13314a93e63009cf5a7aa68cdc7de017f270cbde5dbe833: 100000000000 -- 61dd7b0e06139455ada6977b78e182bf8e400b5b95b8c42a5f2dfc9722: 100000000000 -- 618820fda9264b380ff021982d6dc5f8b15d299a34e8ab9d3ca6bb565d: 100000000000 -- 616a9e79e51ae4114fd279abd286ad8458bf3977c8dcc21800d1dd631c: 100000000000 -- 61e24388d6a959701a38ec3aefaa43c4a86be846be7e44e94604001fae: 100000000000 -- 617e3078818717ea87b94f3c3f7034b297a7140269c604e3bceaf82f2a: 100000000000 -- 61b210ebfb17978ec83961923e11dbad0831f3a567100f1f90dc9d61fb: 100000000000 -# "task", "invite", "open", "reflect", "guilt", "net", "require", "story", "later", "almost", "wedding", "essence", "divert", "shaft", "stone" -- 61d4a195c5a26ff8c609e5aece7de87778ef1e469be400d0e898cd26f0: 100000000000 -- 61178499c6c617a9860c7828fc7983eda1d6429dedb2fe3127adccb007: 100000000000 -- 61a26d246e587186e76a4eeac3550ea287332ba2acfe6ca100b1988858: 100000000000 -- 61deb08e8820de77c0771437de2a276d6c5af026b4c8c4e18945175a4d: 100000000000 -- 61f3a743526731aef1574d785d7173bb9a9b3809c74850cd33d216bfb9: 100000000000 -- 61f15fd499272bc08dbac8e0e7ea64066eec26816505a0171e58c6f24a: 100000000000 -- 6158e46f8d8d638f64c9cbc057b7e17ae289bfdabdf112dc1c5a9ac6cb: 100000000000 -- 616f5bb13e0051a5f20b90447b1a162b834dfff2433e49041392290edf: 100000000000 -- 6191ed96634467ddd7b30defdde333d445f4da0825cd81d96b170812bf: 100000000000 -- 61788fd140b3083943f84cd0c2ed53edf58f60c7fbbcb8f3821ccff3f0: 100000000000 -# "annual", "outer", "ozone", "clever", "major", "carry", "evidence", "punch", "update", "antenna", "drive", "scrub", "artefact", "intact", "drift" -- 611d2ebd499cd96e59b282cb1cc09a203c34bca149a0cf539b3be9180d: 100000000000 -- 6177a56c6937187ecfaa602a17a6c1234fcd2d13bbe9d72391c4ee90b4: 100000000000 -- 617a650772dda161f62ebd905269c113e213dd51dd6906d1622ce2fbd3: 100000000000 -- 611a7f0b3da8bca2b1b35888ee2a11ab0616aa41d024895318f0339bba: 100000000000 -- 6109c8ccd7234e2a167df4cc1f99a73897fcb432f484338dcd52f1beb1: 100000000000 -- 610a7a6ab9a89a6520bc2e13372b9cfad6faef72475c86526a454525e0: 100000000000 -- 61008f45228de0eb152c0a68f1f9b0a04e68a76877862c004e6df98524: 100000000000 -- 618038af65abdcd55c5ada29712c01ca37543cd7326fa265319f6abb10: 100000000000 -- 61ff343e86a70e5eb878adbbfa15fd84b79951ed406cc5fc5a58f13f79: 100000000000 -- 61ebc055611e1cc5c67c3956829087abe2bb1be2fd27dc9d40c4059179: 100000000000 -# "absurd", "seat", "ball", "together", "donate", "bulk", "sustain", "loop", "convince", "capital", "peanut", "mutual", "notice", "improve", "jewel" -- 61c8c08b91dd16a0c92d75ccf460a318619f2dacd070caa06fc0f5a0bf: 100000000000 -- 619233d23aafec421b2c9c25e83be24ebef19fa0b77ac134fdea0c88b1: 100000000000 -- 61c790795eb6e20b03c36d4a634568e63252c8979c977fd36067a5c627: 100000000000 -- 6113c8e2668e5cec8b5727da96319b2ad0d93e4b86d5abc3e402708b8e: 100000000000 -- 611d9ba9502d1a80ffb6146b297d266ff5c10c83812a95f64e96265209: 100000000000 -- 6190d079e2b44db08091a7833d358c10b12d3cbbed2ebb921b1483aa0f: 100000000000 -- 61ed31e80a7bf789d39719dcb1c318f522d55eddc638f96d203ba1867b: 100000000000 -- 612300c956c5e9c4ef453ec63402cb390315db1d69cee6478b56ff8887: 100000000000 -- 61571a349a63fdd751c6004bf8e1a7bae19526c7c1333c5d89f4417a14: 100000000000 -- 61aec1c05f377d78960438c917cb025616632debe9c7d34feb6c350c85: 100000000000 -# "hurt", "timber", "clip", "wall", "fox", "tiger", "kangaroo", "cliff", "soul", "muscle", "vacant", "output", "whale", "keep", "avoid" -- 610737b00e014637b9adeb6a482a714448b366605183739511b990d91e: 100000000000 -- 616db9763cddb2e72666028226053cad7e2b5d009f9b4f0503633cc89a: 100000000000 -- 6181a09c32115f888bd9b656b08e15ce9cffdb5485b08e1d39797584f4: 100000000000 -- 61d5100ce04334aee74d5cfa990511b974a3f364065bff9bcdb30a92a2: 100000000000 -- 618e46b21349eb42fed99810e05c9048f6cdc26909b310c4f3e1ee1c27: 100000000000 -- 6144b4d5ac74e7af62a2c0ce1c36f7162afe3cb43c3fc3ed07b8f2b2c1: 100000000000 -- 610d5c3c557bbf03021c3c390c513900c3535d75fde6b28b4a1f52e02c: 100000000000 -- 61156b48ca675a6cf50c351086693fa45e9846e80f4f7f8a9276045584: 100000000000 -- 6109305289caebe4cb79938717728850ea9dade838b0a6b1a7d1bdef18: 100000000000 -- 61de379865e6847f08164321fed6b45ba38fd90298dd723e708abe504d: 100000000000 -# "sand", "album", "coconut", "come", "lamp", "sick", "curtain", "mammal", "ritual", "robust", "spirit", "year", "total", "patrol", "roof" -- 6128ee7151cd87bf77004885db86e3dcbf118ddcaefa549dc5f2ae228f: 100000000000 -- 6137e49ec939a7b524e55457dcb10c6ab7186d6328c89fcda2e8ef7b18: 100000000000 -- 6112b391b7066e9c033c0338eec752783608824ec5809c7f85acbad829: 100000000000 -- 61f9fb233bd40894d794f672b02f5c54b0bebc72de0ea053453eb689b6: 100000000000 -- 616090403f67babd9f101a8cab21b839452de1d5e228b53560eed1894f: 100000000000 -- 61ad2f8373b8393c800e7f33e2c28dfa51ecdcbdb0b61e2e4847d8432a: 100000000000 -- 61c67390f0248b08ed5279606c21f1ef6d4d5b338cc84a72bf2e1c3dc4: 100000000000 -- 616e3cf483bbd094e04e94385e8becdb35661c5f01567b7c57459153e5: 100000000000 -- 616ab3754aa6d7991e38ede8980342338d3a1ae3809d0c5013d1204ccd: 100000000000 -- 61326d5b4641ce47ed4f8c4d71b0152463c070e7804df974834324f0bb: 100000000000 -# "answer", "burst", "guess", "family", "jealous", "acoustic", "captain", "dog", "south", "brisk", "space", "ability", "copper", "trim", "quick" -- 61e56034cb7a3d8c714972530dcb6c550f0c394ead722d360320cb157d: 100000000000 -- 6108cca95b05bd47d69664789326afff61fea1ef6a11ec848c68506b8b: 100000000000 -- 61417f6579509c1ac6291e28cdb5828bbce121b2e27e1de5ba76d88054: 100000000000 -- 61b857f34b68296e554a170047ef1da9a8d96772046b3b683e8f02e234: 100000000000 -- 6169275cc2441b996b1a1b0e616c4e6f8c8c0e4f68405460d525282f8e: 100000000000 -- 61d4f062c92402af453ceb17f97774738b63edce18519f4de12ab19933: 100000000000 -- 61a8487309f50d94469024d1d3065195fd2fdcd050dc5f5976f90d4982: 100000000000 -- 6196e4b4819052385f4e83f4cbf9be1cb68610d0328b68441517dd3ed5: 100000000000 -- 61a1419a78a67ce5346c8225d7c7db69c61553bbecfdac29fdd2eba242: 100000000000 -- 6132600dfc4410df991459e0880d440df49aa4900be5f7bc83c1bac2e6: 100000000000 -# "snack", "furnace", "coil", "winter", "unhappy", "relax", "blade", "corn", "metal", "casual", "medal", "load", "joke", "since", "violin" -- 6196ac9dcff14e1b9fda442a3bbc86ca66cb571d2bd51fe31517a92255: 100000000000 -- 61ab12901131c0211f6f80070d0d3d59b7df9f221801867aeb0b1500f9: 100000000000 -- 61dcca8ab6cd99d0bc05c31da77d3f58675136078723bd31ce5499f155: 100000000000 -- 61b39b2cf01699be2e99c622f59cf942c3de8779ed26a85efb825e8be4: 100000000000 -- 6112cf193cdeb45ba7d1676a49a0413b2ab6702e485169256314f45376: 100000000000 -- 6146bce8ac2a4c4d9ed9637c2b44224f4237dbfe8457ce62b68c01ac7c: 100000000000 -- 6137d988ad76b5332a714ba655f06706bc8505a8dd3ce6abb2c2b1e923: 100000000000 -- 6194890812fc026116b6e4cf50fe9d045d498271bf09fa8d16e5748649: 100000000000 -- 6127058881426445307335f705f8051bbc56d4c067cc09f891de3f91bd: 100000000000 -- 61c3a7754347056c97100adbccc908014aa9e582fd2475cfed785ad124: 100000000000 -# "phrase", "lyrics", "park", "ring", "orbit", "walk", "bacon", "balcony", "rare", "unable", "wait", "attend", "rigid", "slice", "reason" -- 61178c0ecffb10fa23268d5abf4647899eab95b11d2f0df8b1bb32aaa1: 100000000000 -- 615a6ba621714c5e8edde5d969f32cb484b7d70aebb9bd01aa7b71864a: 100000000000 -- 614810d519819d0db485b563036adaf60035de35ce07ed5523dda933f4: 100000000000 -- 6129390d82fdb1bee8808fd5fc88dd4f239c38e14343a3f9547e297a84: 100000000000 -- 61039dae747d5b71c867f3aa2df1ff1e19e347975a8af51e9cea77e840: 100000000000 -- 6175ae24a9c9e5ee43873d2f6f1ad74e4c8a7e4962d01aaf950dbdfbfc: 100000000000 -- 6168eed00f95e6b2f1a2432da8a94760c9a4be7abab15cae39d34e8a39: 100000000000 -- 612d46b9687c65c338bb9b2ee7630c71a338418a6375fc5dec0ac62274: 100000000000 -- 612b8ca03c954518cace2ef10dec6d92a94f17f61aece259cbfe173166: 100000000000 -- 6188e5778716cca1f8de6f5007735bc4d7a7cb1b5bef2af673cb5c176a: 100000000000 -# "drip", "squirrel", "pulp", "joke", "glow", "novel", "flip", "online", "mention", "security", "silk", "wedding", "ceiling", "gospel", "melt" -- 61426a32890f58a26cae5a9ce0a850a260f6a4e0050949bf6402e9805c: 100000000000 -- 61b72122975683597f0abfbcdac5039b9703890e7dff0c064d2e9f6dfa: 100000000000 -- 6109c77ddfbf6b6757b6e11cd41866d868402e9c524c9f6ddda97c41b6: 100000000000 -- 614d0c010cde5486b3575fdfe1a72ace371d7fef5a95f024ee9c0020a7: 100000000000 -- 6188090d1426258fb7f02d16382c2c6b00d211bd53483c6e9acd379e8c: 100000000000 -- 61ceeb7fefd711a9746ca984f4a716f05afa36c2105fe8a8dd56599b64: 100000000000 -- 61132a1274b14c7c4c41fd18dc0083c82e8898472639ccffcc9e6813f6: 100000000000 -- 61ea75c8b7824af06bf10a9c7eb9ca0a3c43a62c84ff153686f65bc34c: 100000000000 -- 612db0a0edee607d1fd5119f8bdd0894ec2d603d9c071cf506cddf1297: 100000000000 -- 6138b3ce369242ade8920d500123f2145530f8ead8d35618416dc7cdd5: 100000000000 -# "crazy", "alert", "crop", "beauty", "normal", "ripple", "material", "return", "advance", "rookie", "abstract", "voyage", "carpet", "approve", "pudding" -- 61547ab58e607750794ee0e736eda756cb6b53b92f19229f6d9b028649: 100000000000 -- 619768ff8ba96643aad22851a0d9b62e7399f83c4e175e544553fef3e5: 100000000000 -- 619d565e485183c48fe9b817f20e8c9f032c2cf78bb9ca0b2ffcc7d7e3: 100000000000 -- 6160c84d666624769e5a494af0d00f84582ada41773dcebadd4fbf8b97: 100000000000 -- 61ae9c846c992b910d214915553a11efe3d387de340999930cb96a1c3c: 100000000000 -- 6149bd64e8147875dc13e60696dc1cf670ae88ba352078ad3ed4b2747d: 100000000000 -- 617082b3e96343d1dc67de93502327d77a7d4742438f1a74d9920c53e7: 100000000000 -- 61b47627035694c0c592fdcea963cd719e9eedd50dceb7ed67fd3fd96b: 100000000000 -- 61ee25d5f902119aeac77f69899ee058d97b441d7439f5450497a7b278: 100000000000 -- 612034e424bb3242c4f312a97dd27a20e619d1ce5c98baa6d8c6927061: 100000000000 -# "absorb", "achieve", "keen", "border", "display", "enrich", "item", "economy", "upgrade", "bamboo", "absurd", "airport", "next", "exotic", "lemon" -- 61009e2a80c02a0239fcff7e109232ce6f34df07908300dc664e14bf9f: 100000000000 -- 613093a200a99bf18e15f307a69cfc42b9a7923486124eae587a4450cb: 100000000000 -- 61f574b0a630ab6ba41aec98e654707aa9e8ed16cbe0a712673e677e12: 100000000000 -- 61686cb027d00f6a3d8dc4be68533668e3de3a5b359fcc807883a7242d: 100000000000 -- 61f979d54ef8302d620ded0ef2a11dcf09b75039459ec6a0668780cca6: 100000000000 -- 61b3029e39b9f13bc04957f7f3f738ee7758daa7bd1e4f037e6667d034: 100000000000 -- 61549d8f736b20c59b3385129e7eb3c04c29f6fa328c7c58a088912a1d: 100000000000 -- 6194b43343600a1fae1336281ec14944f3e4663b75f98971ce68a9ef67: 100000000000 -- 61e8b87cb490a294fb8dd91568465e3f86031080bc46ca76b947eb9dd3: 100000000000 -- 615ab891c01b0085c78e6b510d2ce0d2e173bc0856ef047ab3414c79f0: 100000000000 -# "life", "manage", "acquire", "push", "baby", "much", "organ", "lottery", "charge", "problem", "divert", "treat", "panic", "door", "blade" -- 6135fecc4d7d206ff3ee86f59314abfccc8a531056a78c0af0fc452e76: 100000000000 -- 6194cb31034d180d19bd7e00f5f23bb29f13f08772e954ecefa9a5b83d: 100000000000 -- 61e539f58c4259a08ab6ebcb419115a029de26b8f75d79eed9b7e5a9d4: 100000000000 -- 61bb8a5f8ad335d833ba004fc57112c34975d33fa648b6d6571dd3587a: 100000000000 -- 61a82fe0cf76ff89960369bf92cab48b2afc937aba8517a05301572773: 100000000000 -- 61522a28d9aee9a73b739dc1bf88be2391351a488b48c3fa1021e22d2b: 100000000000 -- 61142f278de379e327824acd5c3bdc3117c69bfd36d0b170bd0747d56d: 100000000000 -- 61a5695d99bc2cfa4e3b22e53c7d642ab57c31f330acfe0037b5ff0810: 100000000000 -- 6108b9983fe1311055bd25a0522b510f3ba659c5b956a5c8ce9aab5902: 100000000000 -- 618208bd0ca84e75b1c44f675d35b3d95b4027b11a011f4d9e3331096a: 100000000000 -# "degree", "human", "razor", "tonight", "supply", "neutral", "cake", "match", "orient", "kid", "black", "car", "castle", "turtle", "finish" -- 614e9fda01782a80bc3b33279f52096acccbb7ef3a9460b7e86bf277cd: 100000000000 -- 6142c67aca0442fdc14a39718c6f99ed8edcfeeaa2c5e3d35ea2c18666: 100000000000 -- 612622ef9ab5a506f7300a1bd2256cc4d2b69c8f9b916924f7cbde1f6c: 100000000000 -- 61c97dcd81d3c5e4c4d2bc1cdea8f63057915675676f5c954f97fbf904: 100000000000 -- 61921ab29a24e9f0b03d6d280f2734cb798645a52b3a10fc41bb2cce44: 100000000000 -- 61e684c3c86a8b35bf1afd72a9f423b5f57b0c813d0a506fb2f00203f0: 100000000000 -- 610e940bed079dcc2b0764ed3e4f1eb22272f8a5695066832a0b832c94: 100000000000 -- 6183cffc0a8bbe84ec9ede0c3448879cf29d509c3edaf1d6b6246b865c: 100000000000 -- 6181b9941a42705c73da0e11a643938d8c33639515c32681b647e0ec79: 100000000000 -- 61639abe9c602bd04c49263acd5a4e66cc918f74a4ae648f59fab9015c: 100000000000 -# "that", "replace", "level", "proud", "arrange", "cube", "hope", "plastic", "agent", "hollow", "supply", "town", "goddess", "permit", "suffer" -- 61046b1e2d11e45066b4349d1ceb82620265caea6b06edde059202e001: 100000000000 -- 61addb6abe319dc8748c8b2ccbc3525a3948b17fb5121f4ee4c55a5b0b: 100000000000 -- 616b9b2629d4bf30f3181088afa497df51f949f2179a70037117b34efb: 100000000000 -- 6178efd1421eeb397ea9aeb1b185e48232e4e3b2082e8c018a6381acb0: 100000000000 -- 61653f25d514357705d4b6a87d9771ec106cbda168bc19c2a7995fe57d: 100000000000 -- 617b84b94e815f3531dbefc109b05a41dd453cfb51b54d7f8df3edaf63: 100000000000 -- 61a3ca73a43610b9afa29511107aa5344d5ddead829c217402e5e7120f: 100000000000 -- 618c5d4966da7dea5abdc3623cee4ba6b947895d0ac40ea0cba3cd3081: 100000000000 -- 61aafc67b77bcd8876fd358ad09b2af3449ce4e71b9704c0fd45aad611: 100000000000 -- 6183556920a0a8fb909c96614eb4cb14957c90980ef0c863630330089b: 100000000000 -# "raven", "pulse", "like", "typical", "radar", "fantasy", "neck", "way", "feel", "mixed", "actress", "wrestle", "outer", "game", "empower" -- 61140cc28fbb206788fc85972daed9d0c4bb344a30e624639d9d04e064: 100000000000 -- 6180a1dac357beb0261efb65aaa561721f8a6f20aaeda6118f112609d5: 100000000000 -- 616659238f9f95ae7dc57f73eff1bea5195f21ae52e3998d9b33e3bc82: 100000000000 -- 616119552ea932f471e60db7161c3b8c6899724227d97ce8cb6480e74b: 100000000000 -- 61f1287ee687484434bbeeef9c3a61c40e79449e16910f7062cea743f6: 100000000000 -- 611ab8b96e88d40048b9a0b28c256edaec41139a911585ed5ce28251f7: 100000000000 -- 6199541f67a33861a8ffa623667ba52cf261da277e80b28a7ecca446ca: 100000000000 -- 61f1db707f984407a752fb047fd3ca2e783d22aef1e9c203bb245b7b9f: 100000000000 -- 6106c4c082ff6c36d130aadaf4f9492323343a1ff8f7cda57bf8fb8925: 100000000000 -- 611cb660c03458761b13f089dd019e0b35ab6f1a4f0e1ba98d9865e5fb: 100000000000 -# "manual", "pretty", "road", "prevent", "merit", "security", "nurse", "junior", "dice", "program", "pudding", "area", "grant", "deer", "tuna" -- 61ae18ca5d3cc4c43a6650df092368909d968af8e8499938936b118331: 100000000000 -- 617ab84f7c36e63d7e95203c94a3f36201475b9cd39a743c48ac7fff86: 100000000000 -- 61626e066e6763c76a67bf0b1f4baa72da3eae052d5705fd8c8284acf6: 100000000000 -- 614451896216bb8b661f22f3ea7ea57da1bbc3bf4afedf505ea472f5d7: 100000000000 -- 61515b459d243dc5769bd07e925860e7d7a832a124c1e2016eb459fe41: 100000000000 -- 61b16331b2b9b55bd4e4059d01a82998d5f4ecbf13afb250b209f714c3: 100000000000 -- 61d032b58e77a9197ad040d3449c284576a880dd54c7518fd09033588e: 100000000000 -- 61496ce48f92ac8943f9eda3d19528785051ce5c4d8110cee533d385d4: 100000000000 -- 615f46b254db8003def8943e6e6ad7e1a3e79e50ceca39b77def83fe0b: 100000000000 -- 612bf8bc768210cf7e5f3fa8ede1cde173959cd9fa3908d94848d79bd6: 100000000000 -# "fly", "key", "inform", "infant", "stool", "juice", "oil", "scheme", "boat", "kangaroo", "sort", "hobby", "rapid", "hunt", "same" -- 61756da40f2e068a61af384cb099b65d2d2d6dcef1bba2b04752635060: 100000000000 -- 61dadf8779e966136a93b36c765dc5e8d2200400fc9003fc95cc957a69: 100000000000 -- 61816539b64a52e51f591844bf7ec36591c4bf7de6e880b63a45b28452: 100000000000 -- 619ef8cc0a4129e4d4e9cc243be3f1bfeff2c51cd758e7410ddbddb6c8: 100000000000 -- 61482d04741613987fb7e8659bfddca53f481a4a8eb4285be8cc130ed9: 100000000000 -- 61658795f958f6474fbff52a26793805aa6efd5dcb78774d4e9a9b4eef: 100000000000 -- 61f7b5727938d258a2ffc5357ce972b37f6ea607633eeddb7bef383270: 100000000000 -- 615b4175dc90fc76b66ba98ad369bc0849b4461ac420102894a3908e13: 100000000000 -- 61271962c09de5bf596f485f37c78ed3159096c0a53ffde2aaea2621c8: 100000000000 -- 61936c56adadf74e802d654e9e4bb2d837323dbc13dbed4412c0ab2aa5: 100000000000 -# "cute", "flee", "error", "choose", "deny", "poverty", "power", "crawl", "soap", "universe", "pact", "grief", "gospel", "cat", "account" -- 61aec96ee4c9322f911d1997fed77a390c96878e0f901246d163958f6a: 100000000000 -- 61f490dfe79d1addd681f81a2c69789594cac19a32331aa271cca54366: 100000000000 -- 61e108304c17a2ad2546b02d37f6fb8ac8a935a5b957d8e9552c5d33db: 100000000000 -- 6156434198c1041cfe5078e3cff27ea2ddf8ddb2fadb90bcf425ed4082: 100000000000 -- 6174f015555448ac3169ffa3e837ecf6884ceb88a913b92a72f508d25e: 100000000000 -- 61a9741707e09a8abff89147f24fe1df4ae97eaef218d78646403f0845: 100000000000 -- 6119aab8390f799435b18bd064ea68c1a21451977f6eb19a35720e4c09: 100000000000 -- 619dfcf22ece11d30e370f2e86c0d4e53f08c6b125875a37a62b951d46: 100000000000 -- 6143147e7f29f5614e6c9b2041fbe895f811b5485382f61a58d2db8a50: 100000000000 -- 61c0ee6b9e769a67ed78b3055c19171fe4b4cdb99cb395a91550786677: 100000000000 -# "worry", "fox", "sponsor", "equip", "pulp", "excite", "unveil", "mansion", "nerve", "acoustic", "swear", "lottery", "elbow", "hold", "approve" -- 61bed6c9bfb3029ed0d526180418875a6bd1759eb3e2c65c11b2bf7e1c: 100000000000 -- 61b413f4ec68eadfa78d7d6c20adf803b076f3e270b83e5deb156c4dc4: 100000000000 -- 617e9f4ecc0c34e2758a4f42b6e6c4a26be99d53f2b4d549d1a9caadce: 100000000000 -- 61f4e7cfee6fe7a754cb7d5d86a60d1fe00e14b965d5ec32961e53bb98: 100000000000 -- 6174519e99a0c7c61c62489faee0491e009b2a1cebc90dec949b8c7fd3: 100000000000 -- 61a6b8544a7c2ec611f539ef33627b6cf13b0625ba17d57feabdf9cbc6: 100000000000 -- 61892cc3fa9465d4ef4189274bcdcafa71de3a11b6929de055c0e54ea0: 100000000000 -- 617a86574dedaa3c1c0e6514f64176da9e64f28362462cca514b93d407: 100000000000 -- 61b5b563a41cc82a8ee2cd7bb0d0552ad1412e42ae3b62e740d4ccec8d: 100000000000 -- 61952bd423cff4b51656ece861bd794e06e7f4ad112d1e87bd60b52e72: 100000000000 -# "easily", "original", "word", "layer", "inch", "portion", "way", "dismiss", "control", "return", "match", "update", "spike", "olympic", "party" -- 61dd8c4521af7d667c9c2405081db726cb4593b42f988c57bf023b9c1d: 100000000000 -- 61c07d7e557b4da06569058173f73b15d8d884a09ca1fe6abeb25cde69: 100000000000 -- 61ee77f2faacea583a9c5ff247f403603dbfb14d54be9b05c31cb6264d: 100000000000 -- 61d9f3829a2d587649aef834c4949c9a666bc5feadbe28bbd2da867442: 100000000000 -- 611e37aee827516c025ba5270594fcdd8b34e3edf57522b32499a29aaf: 100000000000 -- 61a6631b023d31f5d3f74eab8fbcab9f754474a71c6ca6ece2cb577aa9: 100000000000 -- 615107c3afe0dc516fc67f5a7860bd133515d03d905e50ec63e9e675bf: 100000000000 -- 61ccb766055543ffb2ce44e57b597927b27c1df803c06da8b93d6b5bb3: 100000000000 -- 61087c5474efb1060623759e30e796edf2369af839b94c95f42d171456: 100000000000 -- 615578c95a34041776cf831ba2033acfd0790b864649672e77437df79f: 100000000000 -# "amused", "total", "version", "fiber", "anxiety", "volcano", "drip", "mention", "ripple", "list", "wear", "erupt", "island", "leader", "jacket" -- 61b7f605ed3d741802f9ccfd9c5d29054b3b95db2ebfbac806c26a2dc9: 100000000000 -- 6103d0e7dde666cbc4ef514d9ee22108f3d35da09ca606c073f5004be1: 100000000000 -- 61b7566385061e1425b7740b7ec96e45667e147fd93b0f7deefc1a555b: 100000000000 -- 612e1ddb4801be680b5c240d879d79450e653fc2259addecdda85a6772: 100000000000 -- 61ffd3933a6bb01345c0a4b02c585b82bd403c114db008f3921c0be08a: 100000000000 -- 6110506588bc47c76d980787e44918cf44df28e185bd162480a1294ba8: 100000000000 -- 611aaa4f2ec85741ce0283118c817be494828cdf84064a481cdd1827b3: 100000000000 -- 61c56880c1ead21aae26d6affa4f6ec910b1a36b0482009736036ee1b1: 100000000000 -- 61c7acb6ceac4d903f4ea4cffb27674d0fb4b27f1152a3f8fb8524b070: 100000000000 -- 61488efee11e2fc5ad92610252e26ee28e6f155c6145017b8748f22414: 100000000000 -# "identify", "arrow", "pigeon", "wrestle", "oxygen", "logic", "notice", "once", "rally", "cool", "sausage", "ensure", "caution", "next", "lemon" -- 615b27652fa7993c114bfd1488a9ecda3302bc1e7a06123a86bc892810: 100000000000 -- 61a53fd03bb61c013d9dc40ccb97b6fa53634b87f4547e1d399f29dbbc: 100000000000 -- 61c12866b8e6eeebe37442ac235a49782cc6a38702a34614ed20cbda60: 100000000000 -- 617915877cc6cbc8b092c09c2d01ef5dc58457c7a116bd638dab0f480a: 100000000000 -- 6139a8bf9b1fe32faefe854e220d380d37f89958fa030dce4c8d7570f8: 100000000000 -- 6147c22dc40ba708e41487bbdbdc38afa0bf0201fa111ef7af177e918a: 100000000000 -- 612fa2a8dacfa67e075f77f014c8c20eb5d0ee599a6c9e52ad1f98d9b6: 100000000000 -- 6148df51da9f94f05057458fa67393d28c109e8b7d1ea7317dd7f22980: 100000000000 -- 618a6c31d1db069b1d190e8b120e926f90910ae7be1aa488e108c1d5aa: 100000000000 -- 61b7f3f4bdfdf78a1d3b5a4d22ef06e80a799ccd09c9c2bf1930939580: 100000000000 -# "fury", "basket", "nice", "survey", "unaware", "girl", "large", "vacuum", "brain", "cross", "man", "whisper", "begin", "check", "joke" -- 61afd5c92d5a8c036f6dfc5f51f2237f25afdabf40354b7de63b69bc49: 100000000000 -- 613063899d54a75050ac506960783a5732ddf70feb9342482e459a30b6: 100000000000 -- 61dc583c2735d6eb23f251df8138dad971ebc9d81b97f63cdd8e1ae530: 100000000000 -- 61d5012cd02aec14606202ec6471a36dc77b5f755fdd267ed77c15a6b6: 100000000000 -- 6191f18763b687c2e98c16f6ac08204dc9c6c7ef25adf8d0fde30e898a: 100000000000 -- 6188604b3542ddd1e5feacffaad652068ce9aa457252f51bb6a6f269b9: 100000000000 -- 615fc52b411d87191d15096a5c55372876c01b7dd7fdd0a621181261c3: 100000000000 -- 61587b25fff9a35b57b2f74aaf439a00e21f2fe78cbc9a9410f3d364b6: 100000000000 -- 61f058a6eb9a4eaa54b8f1281fa1def06132e25f00fe1d0e4ca6b5eb53: 100000000000 -- 616c456ef87bfe0f68aad5416cc6d9b460bbefedef1048ecbdd055b8e4: 100000000000 -# "force", "skull", "thrive", "skirt", "hundred", "hope", "cheap", "agree", "involve", "sing", "risk", "coffee", "expect", "wrist", "bless" -- 61e623f3b05d17d3c8042ee020ea966963bb3a8360449a21d328ca2867: 100000000000 -- 6138b2a51f6da8d9007fb8db2f62431ccf0b3fd200a3ed6919eb8e7e68: 100000000000 -- 6146c48b0a8e33a7bb967ec9cadd66c292fc16ddd9a906d69e868e23cd: 100000000000 -- 61ea8ee1cc2110f1746745452be09179fdbd3254d57c2fe83337f9c256: 100000000000 -- 61232d2b470627c415611a439d57a521a419c41038bd0743bfb602c565: 100000000000 -- 61b2c130f4a01a6cac76ef28bc9adc93667af0bf2596d8122f56d69d7d: 100000000000 -- 614b24d48bb45728a1e9e508cb159b4ecc1c5c4cdb66251ee5f94d6601: 100000000000 -- 61b83a83bd6f665afa23730207b67c4ebd4f86b6bcdcb5694c7e3dbf12: 100000000000 -- 6192e36208f88aec67abb93d1fff340e3ddaca5db7e488bc6114a62c3b: 100000000000 -- 61ed4f5e989df59b91fd778ec109b4bf85f70e604b1c2dd6fc7c740279: 100000000000 -# "love", "normal", "hedgehog", "happy", "float", "treat", "bike", "canoe", "differ", "same", "canoe", "sister", "wreck", "amount", "cruise" -- 617c339c8814cc041037ca3a0b767538b6921335218c11a6096bfd2391: 100000000000 -- 616fe5a268756b8f47c99158af9bebf711f09a86699db8ca9a2b98fa0a: 100000000000 -- 61a68002c8c798d2c6209db6142c1f9471002491af3d450509f38defb5: 100000000000 -- 611232cac651e050afb9cca5b8fd55e0189137ed378eb28ded1f1650a6: 100000000000 -- 616b6350ae484767f4e73fca97f76dfd80ebef64e8812b30841be30849: 100000000000 -- 616e38122e4a88b535545ca25e7b05d95823e4dcaa3b4b96c5eb92143e: 100000000000 -- 61a9f096dd9b1e6b5560f5a807d244c6f7370d8def57e6580548c9813a: 100000000000 -- 61bf12fd0d66424b776b344442979815f8fcb888488b66283c09a009ac: 100000000000 -- 611a10c3d7484949554770dd44d9352cd6bd9a5381db46214f21ae06b8: 100000000000 -- 61f9006679371572ff8c68a2a2eab96e3c074bec06c38ff40841a6dbc6: 100000000000 -# "soul", "scare", "caught", "before", "kingdom", "width", "object", "crash", "truck", "senior", "master", "bonus", "evidence", "jewel", "property" -- 6116129c607e7cabb2c6d0db858ec9d3218e42e66faa6b0065ddc3bb03: 100000000000 -- 61a94dd07ba0c7b763a1b83997e424c54732085f0c93f28ed80ff927b2: 100000000000 -- 61689046cb5a2fcab66906de81cc0bda0afaff92f2fa7f496cdf69d522: 100000000000 -- 610044e6c052970af5caa1703199a6df59855c9b08cd37fa811b6288ab: 100000000000 -- 61e71a36739b234ba4a86ad3df2dbc35f9fdffb59384c1af25edf9fa6d: 100000000000 -- 61610c7b81ca77f1473a159ea899374ecccf946da6d805c1a539e30e26: 100000000000 -- 61ad6776f745458a339e458a050835faf160520a4466b85c4f4cd2de54: 100000000000 -- 617de6180b8869c9eeec6fff4e8414343d15374bc9463c8b9cfb18bc36: 100000000000 -- 61c7cb796bda9f2d254b6b907e345bf2a9f3c51eb25910e825076b0898: 100000000000 -- 61f737766f883f2c08edda085df2a9e9d3f0808abb3d3aa5a82df12412: 100000000000 -# "document", "decade", "puppy", "short", "surge", "shed", "seed", "strike", "never", "maple", "extra", "home", "route", "require", "devote" -- 61f3744b55050ff530f7315e2297418006dd9387ba250525b06a8fcdae: 100000000000 -- 6117de64cbbe136c11c21965ad04bcf60ef438e7e60c0511618d21fcf0: 100000000000 -- 614d110ff0e92db5f9e55a8c71807215a0c33c9fe9ae1f77646733ce8d: 100000000000 -- 61e6a5542447cdae4865ceef25292bb168912c3a60f15d0fb6a44eb6cb: 100000000000 -- 6165eb9401dae33f09a7524e3423d0938dd5b9329f2cb889e8a077a9e9: 100000000000 -- 611bd7cc4e6c4ef85cd748cc3e9d511be7e3b865d71c08210887e9de7b: 100000000000 -- 61402a523bd4d0d4cf4b6d40c1b27571f2de8ea844bd0a570423100726: 100000000000 -- 61ae5fd1ff23e00208d485a1a77642cb4bb7bfdf0b202ad0215be87dec: 100000000000 -- 618849fddc876155bc2f6a27d0119bcf4f8d7454efd7d43f0549f27435: 100000000000 -- 61096698e45c3c12ab6eed95cd878b69e296993f88ca6b83a8f301cb0b: 100000000000 -# "desert", "utility", "stock", "option", "marble", "build", "type", "zero", "royal", "version", "venture", "chief", "lawsuit", "stool", "boring" -- 61a5f93bbc51e056a51ae756aa9658c14e6dd4c9afbe2679cd83f7b0a9: 100000000000 -- 6138d96841bf979b5bcace16114237e7e55c66a47cc2e6a8e75d922030: 100000000000 -- 61bf2a76eda8a43882116d20d3408d137026e6c092037d6ca5c9db094d: 100000000000 -- 61f2206335163642f64fd3b142e547adea5a3a7284de76b33200395e34: 100000000000 -- 614d5b4ced9a79967333d75faae43ba4445eea4ee609e105666412c614: 100000000000 -- 61ff34a4c6809305d91008c3b45ba512ae62afbb36a9ed410a121a03cb: 100000000000 -- 615c4a7e21e2c452681515a296588f5dfb896e32ecc81722882696f58e: 100000000000 -- 61ba5d706c23d1ca91a52596412f3e7e996d928a7892984bb071b534e5: 100000000000 -- 61e5ac87801ea73923afa1b9a85dc5b1c398bba0c2b44f7566f1f6c5d3: 100000000000 -- 61394660a64530b824cb1a127106c0dccd1b2a22bf0faa732898795832: 100000000000 -# "hidden", "romance", "message", "federal", "truly", "daughter", "rabbit", "boy", "subway", "anchor", "glare", "arctic", "chaos", "fish", "wise" -- 6154f5987bd9fffe90c766739c843dfc47e8a476a3e1defda457a15317: 100000000000 -- 61eb612335fe939c407de416d88b9cf21be5114183989eda4357522d60: 100000000000 -- 618f97028007d4f52079fe3b90b777c5d0673f93df482468f65b9ecafe: 100000000000 -- 612bf1fd8eff14762d5fa7aa096c43b0a4bd5cc40b3cb7feafb7d8719b: 100000000000 -- 612b6439a116b6730d2ce010dea6935d109f4200e85b0efe8e8edf633c: 100000000000 -- 610e815f932d864182abd8b79aa86c7280814c40cfc555426c0ba9bc4b: 100000000000 -- 61d8f937a99f944e0d89869292e54c206bb8280651d2f3f79d32225cff: 100000000000 -- 6186a760925f0ba40a53f6665f19d7248d052587639b2111a7dfe46d1f: 100000000000 -- 61566612ffb9a895a047b1b795e62486f004f1296cd389f840a8e5708e: 100000000000 -- 6110be61c7a8cd01b551fe2039fb16adbedd228ccc477dd871d79cc46e: 100000000000 -# "vehicle", "cage", "endorse", "buddy", "train", "leg", "push", "muffin", "consider", "cover", "coach", "rubber", "invite", "purity", "crawl" -- 610a7d79e42c2dd60783e8037e4cf00ee54b963cbd9a2fbfbc3269c399: 100000000000 -- 615b4e18bb47f27f06ff6d3bf36e4f0af85fa432627913c60660c5376b: 100000000000 -- 6143495dc267277a3c4337bd4cfd375695d294dc6cc9fdb280235b68b5: 100000000000 -- 616b8379dc25e49f7ce8c478429af1f2abfaa5786575720360c88e668d: 100000000000 -- 61160d462bd72713841776f8c3b998c0003190c58c3a9272c9204234a3: 100000000000 -- 6181a08e92b585186e3438e58657f7ec2165894c651146e5dd38113ea3: 100000000000 -- 618e5be1b21bbbaca9073d72cfe965460a9e3702680bf80d2c1c0eadd5: 100000000000 -- 619dbc751b88afe710a06aa00f68a904061a215dc3ccac5676a280e8d6: 100000000000 -- 6183213969a169847b8e22ec41b281af2800ad526004711b532f61509e: 100000000000 -- 618a0038dea45ef5b89c3b1429abe744d40695d0c15c4fe25fdf4a9708: 100000000000 -# "pass", "diary", "pumpkin", "cradle", "upon", "shy", "stumble", "kangaroo", "soap", "flush", "glove", "funny", "scrap", "two", "balcony" -- 617ecad06eb492b6eeb86c678889ab6551fdd4271b9d7a4f05cc55fbd5: 100000000000 -- 618a4cfc1ff782c5f21e6dc92d794d1824109e9d082907b7f7186dc755: 100000000000 -- 619d36032b75f846e66ff0abd545bae34232f0b3a2082ddedee80ae35b: 100000000000 -- 6103ef961fe66e07225c39a013490f14fd16d8dbf538e7496b0b6765b8: 100000000000 -- 61906d3896890b78a314c3b9a39a55e23a5060dcdac6acc1a552873d87: 100000000000 -- 61dd89934ce6761e58ae5cd19a95c62854ef94505909407388c602989f: 100000000000 -- 61c02c0aff34e4fd19c8c269b6edc37b9741f96930e0ec3533bb9f6d9a: 100000000000 -- 619d330d9e8164f8acf2a8d1bdab36d02b68b32ac7caf0d822db0638bc: 100000000000 -- 61135cafcad94f56cbca53720aaf6ba860888aac10862cba953380b638: 100000000000 -- 6108d5aad56eaaa7b573f02462e3c7f100fb976f12b683e8ae78648832: 100000000000 -# "lend", "notice", "scare", "feature", "black", "bid", "edit", "brass", "doll", "spring", "slice", "foot", "drum", "clown", "solution" -- 617bc1ef4ad99798a24acc864655eb44838c3df118d479f439c6bc8461: 100000000000 -- 6115a755de6605f4fde52b3b9d3039a0a22bdfb111854e7775e12b82fe: 100000000000 -- 61feb72255f849ebcc0697f29a549c533d81d3fde9e1b2ce1a3e1cd8ef: 100000000000 -- 6141ade0d24c9f43878cfcda97df4d945aeae727525d655f5c212b1b09: 100000000000 -- 61c06ca557d7168c3d0eece9d28f1337e018bd4af5e1e5e05c1b3d2896: 100000000000 -- 6182798f746bb58a4f5124a56397f4a82f4d6ca72171f37e6a027b7fb0: 100000000000 -- 6127ec7a5799010940c3ef75588635e84c90ebbf65b0a1b601fe0e732c: 100000000000 -- 619192984fc73e4fbb24e87b65cc79523fe62a6258f9d7a340beb8e697: 100000000000 -- 618897911a95e0151e7149a57791d2ca13a61fe17019816378ca227115: 100000000000 -- 616795d2a565dd280bfcd0070a35008a565e81109669cb41b05afff382: 100000000000 -# "gold", "stumble", "ability", "dynamic", "couple", "guide", "case", "hard", "vacuum", "immune", "grunt", "daring", "soup", "lawn", "venue" -- 61fa4dc7f6f0b44d3f7d0992616e8f9e8b3930a54c2a93272a0dd79df7: 100000000000 -- 61bc7dc706338556108f80d43688fc8ab2f18d01ca82bcf9821087907b: 100000000000 -- 61e1efd160ff7388aef2b471b79f871ca7494918487f7eecd6b8c2a9ab: 100000000000 -- 613348762cd5dcf39371e3f0ef84ebdb5ff5a5c2be3cc6ccce977c56ae: 100000000000 -- 61f003d252f3b0ed09d93cfcae0d6f9c859f288d67036292841c34b32b: 100000000000 -- 618295963eca482a73142d8c33287cec1b85997a135619e996824ef884: 100000000000 -- 61d8ca7c70f1bf866c0f22f9979c2ff7ff3390881a9cee6eaa6bf31eda: 100000000000 -- 610d0b1c5434f678198d6b4d69022cd86decab65a59cc63b831fb40ae3: 100000000000 -- 61606cc66c2dccda80bedf527f057444e8386e551d6121ad096b31592e: 100000000000 -- 61bc761a7726e9a74833f96506cf356c55a4c868505b4d6aeb62271099: 100000000000 -# "same", "tumble", "pool", "basket", "loud", "cabin", "become", "vibrant", "bunker", "grocery", "motor", "jeans", "churn", "sleep", "slab" -- 612cf8c87091b2e3cd996963aea0cd1974c47a25bdc1b4ae1cfdd56a41: 100000000000 -- 61763e122ded3b62102504fdbee58b80c58357b723d72e4f77e12931a6: 100000000000 -- 61e8110310dfd706c2d314cbb4e2aefe68900810b4edf9a5dde5b06f81: 100000000000 -- 612f9155d76f83fb5deeea7a60c6f45aa06dbd6b45e5b3926f61b3fccb: 100000000000 -- 613983ac88e6fd08e40aed77603c216dc104097d0628f56ff5a3d56116: 100000000000 -- 61ef9545b08545e9301983452f1f482062d205baa852b37e715b957397: 100000000000 -- 61cb7335ad439057bbd8e539b5edc812a925352cf6051bc4d432ad8ce6: 100000000000 -- 61fb6430386bbeb7bdcb26ad885af61d840b4937869c8163befd8a7104: 100000000000 -- 61fb0e626e471c34b10f160236af98064bb66dca16c7bb8b019a8667b3: 100000000000 -- 616ea9a05648a2055a4e3f9e62cc91a2d1126a2bbf560d11f834ba5da7: 100000000000 -# "clog", "gloom", "distance", "shoot", "good", "pave", "chief", "cram", "myself", "invite", "involve", "door", "accuse", "crazy", "elevator" -- 612e014c6494ce2a2e5144e5416199b01652662ec6d13817d66f77ce75: 100000000000 -- 612c8e3ba9d696e0441502663656ec1dbb5471fb69fe50850319110854: 100000000000 -- 61d950d621a6d2037a44771d25b9225baed7a14270182db6a87d68f711: 100000000000 -- 619d6afb3979e16e46d12355fcd4c61633dc20902eb8562e3e70a7058f: 100000000000 -- 6187632297f722f0a4dada1a4021517bc67e132445a85296e4f6019606: 100000000000 -- 6196ed2c587aef0f9449ce37a0225f608893ca715cd317b1db35bec485: 100000000000 -- 61d3a7f2585fdecb4d5c0395b803cee924e07d930a5b1fed027fa0e73e: 100000000000 -- 6195ca8e4683c3cecdbe938a57dca2715433d1c384c687f967fbc14446: 100000000000 -- 61305933b91b1fd14d45acda9f4dcab62fa81b181ff09f4a4b7210ccdf: 100000000000 -- 6199236c23ddc70617ab45725364ab9acced47debf7df1906e01121888: 100000000000 -# "rally", "crater", "ecology", "vintage", "corn", "ice", "obey", "critic", "reveal", "enlist", "next", "chapter", "leg", "cradle", "outdoor" -- 617fca823c8673196579c0ccc04e790738e396b7b15dd3a521f2b694e2: 100000000000 -- 6121e58cb3366397f95943166941619db87ce6da8c0838aa0ada1de9f7: 100000000000 -- 61ddd8798cacbaa64442fd97d1aa9cca836bfc86c1bd3d469773c82643: 100000000000 -- 6132089953c2d7fd59b509bdba82196131b3548b9f95f191f125ca8b04: 100000000000 -- 61c97ea44fe08a2ff2550d4a9baf5122e647079e149003d2e5f8f6d230: 100000000000 -- 61205954e81dba4740ec0ed3ac6c69bcd764d4da52b08138f132ee983a: 100000000000 -- 61f4573d34cbfd07b2bc9d1e2233b85b05c6195c0aaa126962d522dd6e: 100000000000 -- 618bd9c4d40dc85a534100e1848d559c89a56491fc97c33e32b68fc40e: 100000000000 -- 616cd5ede7fb002013defca5b690c040e523516e9bad8cc1773b7f77cc: 100000000000 -- 619572e95407d0242465e4793c0eb59c2b8ad9f82ec3fcc2ea6e9f1662: 100000000000 -# "digital", "avocado", "brief", "lobster", "ankle", "economy", "room", "measure", "canal", "onion", "wood", "old", "place", "drift", "paper" -- 6152f6ea9edc2682e02162675aeb46e813ba01b7133a651b6adabca0be: 100000000000 -- 614f5cd745479e40489b72e6033711733afb241f37ac7b8310ea5c80d4: 100000000000 -- 6125338e2d0d6863c17f4ce19cddc878b3994960c8c6923b71d292b8b3: 100000000000 -- 61b813172b88562e2f8a6f0aba5fe3f55b148e7998c1ec2b90663cd35b: 100000000000 -- 612581f5fde40f8506a3197c8b6f1e91875d1fa71575e19825f4c55da8: 100000000000 -- 614507f96c01ebb03bb5276d13b6fa048602cddfc82fb0b331ab126f61: 100000000000 -- 611e346b34c0a06ade552c48ba14febb78e692533f05d51411225c3dbe: 100000000000 -- 610747ced01a0be30db1e72eac2aacf2822cf22a219412e01bf1cd4c0e: 100000000000 -- 61f0e75a0ce138c71f97c3d7189f3ffd63c08e43cd733636eeb41b26d8: 100000000000 -- 61d2446d6738cada221d6018210e0e25abc9dc94a46bcc48941deca9b4: 100000000000 -# "century", "response", "there", "sure", "toe", "open", "twenty", "source", "discover", "orphan", "zone", "ancient", "black", "liquid", "pact" -- 610f04117b5e9a0a9ff0a99b64eaf025ae9cf3e4f6ca90cdc9e9f47496: 100000000000 -- 616ba67887f338fd9aa3272bfb59da7b028b33171541ed016383bb363c: 100000000000 -- 61abf5580351c5d2be62c46ffa995475bbb7f399066c31f6f86ce7b7de: 100000000000 -- 612073824b94254fa24e602d6c93677276652fb30a1334c432d7dbf5bf: 100000000000 -- 614fd2ce042560a642db7ddb61861a820c28cd4ba45ad52f7d9c0569c3: 100000000000 -- 6197e0d8e196adb107a6fc8351987c92044f61066b95cd6f508c5c52b3: 100000000000 -- 61153ced588fe33867fcf2748b8a5685d853cac089a59a07ecc6e4c549: 100000000000 -- 61909132d44e2f55392d298b71a426bfdabb8c9386013ad71ee0071ca3: 100000000000 -- 61a204e0b5f7942e8827c1fa63e5665fae317f3e4216ee7cd0fed2da1a: 100000000000 -- 61e12bbae042d76612a8bd49f79abdabc418a2848c9cfffee442d4d100: 100000000000 -# "supply", "lemon", "test", "expire", "view", "escape", "ask", "settle", "engage", "view", "virtual", "fine", "home", "escape", "damage" -- 614026c8e885971d570b6f3938b325ba1c796bbbbcafd4a29d3d07f3d5: 100000000000 -- 617a69a62379bdadcba3f963cd10fde00a01cb16a0887cc6bd80b5639f: 100000000000 -- 61f988fc54f68a9524b8e2c1af1e74ac2cf24d024fe2186a211302a445: 100000000000 -- 6154910493b88b1cdfa0babc768bd1cab3af59f85ea182f669475a2f98: 100000000000 -- 61d19e26432dba35fcce66de1675471c7b09b6ae17fd1da2d0b4d06a67: 100000000000 -- 6177a2c83a8e7fe4943e03a2bf8451b856e957711774ffd3677a5b94d6: 100000000000 -- 6100333e12cc9f93c27ce31876cafc08abc9ddfd05c40530afdcf39d84: 100000000000 -- 61e3466850692b1a2036833e3ccb2e0d2b69aa2c23441ae275a194fc75: 100000000000 -- 61457e3a37c730ecebf5081643426c15f09c0df47c6b7ccd9ad5bf6169: 100000000000 -- 619f83d662b9d21f0aeff66b49cdcf3562d5b44e8b79ddbd6c59d3337d: 100000000000 -# "matrix", "culture", "duck", "foil", "carpet", "try", "grab", "author", "vacant", "fabric", "sunset", "vintage", "census", "again", "disease" -- 6139645accaee5ed2e7ca283d17b8155def57f1c2bc8a480a0d073e560: 100000000000 -- 610655be8b10991719e00d5ac2de89c5a7dac24fcd5e10fd245a5824fe: 100000000000 -- 618b6cc928defa5abcfec1d48d77377a405013e38d77e2ca96bf3dca2a: 100000000000 -- 61d0a529ee2c3bb60ab0b066b0811ec3b2426e9ea82e0a43d1532df697: 100000000000 -- 6149fa584a847dfb020c2bc7f7c8b53df505e6e62e2166ad26a87ee912: 100000000000 -- 614b75fffcf97c5b994b399718c2338d233035712d3beb4027bd4e1eb0: 100000000000 -- 61b283d71699f973acd1ee9a7ee6fa5b5c6b8038490ff5f7cafc8c3f4c: 100000000000 -- 616a84ba658484dd3b069f3ba73af8f7362d38097ae7ca8a065c45c2a2: 100000000000 -- 61f9c1580aa6cad9472162646c112ffa57cf463db5fb46547a9127b82d: 100000000000 -- 61a6232cae9cc76fdd3c956bbc70caf509c7c60290db920158f73388b7: 100000000000 -# "toilet", "gas", "easy", "hood", "match", "obtain", "mistake", "recycle", "biology", "issue", "trim", "guitar", "mandate", "marine", "cereal" -- 615fd0752b1f799330820562047c1374efc01d645e2ee2fa77d62e900d: 100000000000 -- 610531113731ac9da57bfe9dbca1ae993b52f3427105f72ffa2ddf56ae: 100000000000 -- 613a2f1c97b11f397508263f5c4ca0ae3e723e96f42dc801db1c549a15: 100000000000 -- 616c39aefbfc39bfc0465985d075310892f77b85669d15be69baef6f9f: 100000000000 -- 613403ab7007dd9d3c935865cf362e74c540fd9a452039af38e37cb39d: 100000000000 -- 61d9da4a4c45278c6a96b58451d711136db42977f78cad9bb7a45c5f36: 100000000000 -- 61d1f26b050e3b24e4fc8525b659c063698a2f6336be327c3ab866cb0e: 100000000000 -- 611318102e833134b88e34bd3d95ff361d447fa4c95616c62a72eec245: 100000000000 -- 61e94f1332375d67fb7b186400fc6f8c15943ca1112e9669a7104d7e09: 100000000000 -- 61d341e7338c5471c0b77d616383df33d4c9616e5f6fd8d9490437d30f: 100000000000 -# "outer", "found", "horse", "spray", "siren", "north", "sheriff", "grace", "party", "remind", "enforce", "vintage", "simple", "wreck", "rice" -- 618c8d24fed2132e6c7c1d9a18c15905adc2917787c33ae51c0f78afc9: 100000000000 -- 611e79858d4f547d7b27e7f85f4bf84fadc5b41b5b76f1ac634177f13a: 100000000000 -- 6179b9f4288a052a893ebaa59f3e80dad81edec48c4075e781ddd43ecb: 100000000000 -- 61e4916ec0fe2edd40089462b17fb1b0acb8f509900d22dc98d52de1b8: 100000000000 -- 61452e7f059a92730f198aacf3cc2ea36d5c478dc41eedaeca50f6cd24: 100000000000 -- 61d3572a96f8136bb60394da8a1b9a64bfb0cfd4ded61f6384889952e1: 100000000000 -- 6165d75cc96500868d01bfdf1c27faf8ddf082778ab5898baf838c61da: 100000000000 -- 6175a12c68bea41ea4e4c4b7f015f051cebc3f8adc44cace79c969f48b: 100000000000 -- 615f018452c11fce24f5cb2b60c9972e83382916978f1dd4d6ac363858: 100000000000 -- 610c6e21820adfe4f2fd6cdbdc2b4240691a64a96cc0cfd93defdbf9f1: 100000000000 -# "arm", "dinosaur", "judge", "sense", "cupboard", "return", "narrow", "title", "brisk", "test", "walnut", "gorilla", "cause", "regret", "churn" -- 61594330133def35b435a49c96fdd39c8b9aec89aac8523c8f6ac612b5: 100000000000 -- 61224c28d70705477072ea15ba359ae2c6797c4a9f825b3fd7c94df13d: 100000000000 -- 61439f7695a29b42c6fc07a268ec6e5246a85ee3813cbbf426553d8b27: 100000000000 -- 6153629393ba5be9da81813cfa140f71e0cef81f8677ece768e3309fb2: 100000000000 -- 6134e95ab14c34a23b999b201f610f4dbd97490ce2acc62f0f713739e4: 100000000000 -- 612366f7af0f572f7bb7d109aa2752f5d8837d3bdced1c679d8b0e6dfc: 100000000000 -- 6144394f50d062e9f2ae2cb3858b854a0153d60a4931d1ac960cee82bd: 100000000000 -- 615e3e5d3a13fb49b2f2c035c39d74939447a693e02fcaccef2bbf32e8: 100000000000 -- 619bba4d64740e7628e552070415be852b292d2cf232f4c55ef47663b4: 100000000000 -- 61d8bb86ca11e96e5bf5a4ac527dd465c553f72dc418f380d00356ae68: 100000000000 -# "case", "pretty", "mesh", "poet", "paddle", "deny", "mobile", "penalty", "curve", "sweet", "cake", "want", "address", "position", "artwork" -- 610459c07621f8b8a516270028b6a4bc756640a9c537acfe8c43f53062: 100000000000 -- 6120cbd757bbde60bf8d0fb45102d9317a52821799e0e87726eb79deef: 100000000000 -- 61286a7c56202b69e968511248e4f3ba96008c1696c46d2be04fb9085a: 100000000000 -- 6186ccd02f2271900afbe2f8968b011fba42c463d77f95e7b77a87e237: 100000000000 -- 6175b2ace25b96666d09bc8a6140f4e910f335467eb7158c539fbfb77f: 100000000000 -- 61dd4ba001b7ed4cf2855d1bd3162211b46c9051ae1486b784ee547e86: 100000000000 -- 61e7a74988ca4cb35d3b5e511aea07acbd6aaeb59a9ed66409880e42bc: 100000000000 -- 616e30e4a5e868776db60838604b3edb99cc004eb595092e5e51fd03ca: 100000000000 -- 61b45fc40f4de5eedf99a75ae7234155690b6ca946cf92a33559742715: 100000000000 -- 61ca83262cc867bea10e9d73675ba60e99a7f2af8d3869edd293fe207a: 100000000000 -# "few", "tag", "unlock", "rain", "skirt", "human", "swim", "match", "apart", "position", "online", "fetch", "parent", "duty", "invite" -- 61d00a6a4f2d124697b214c595258b59850c051842ec32253f071b2222: 100000000000 -- 61e2d1997fb7997357b86d1687aabd97d3ab4766734b32d1809523ef23: 100000000000 -- 61f2f38288cf6dbaef180aede630451f4ba3571553b5eb63342d8ea289: 100000000000 -- 61c918aea520fa9c64b0bafc7c6341eca8a156eae36fc6a461356442f1: 100000000000 -- 61cbd36a20879bc035b236d33403c2702c229ef55c588a40d183c3f988: 100000000000 -- 61e7639c981e375f430dd67311024c8998129edb456bf52067b3a40190: 100000000000 -- 61b3e764b139b4dfc22cc963179d5d63283057bdf4a2d834bbf8081348: 100000000000 -- 610e476bd5efd61412c31c312de870313f257bb8016f9095e673a0d3e9: 100000000000 -- 61ca32778f39e08ba7935f725a6dc66da0e9d06f4bf12fae80e9ddeef5: 100000000000 -- 61de5dada42837b3269a25de6821c79325d48eb222990f17deeb56dc13: 100000000000 -# "various", "again", "ginger", "desert", "forward", "bean", "length", "raw", "wall", "door", "nerve", "van", "stuff", "error", "describe" -- 61fcbd28320a778431ed3f98c745c40e5b5a2e535c3ddded163cb70d6a: 100000000000 -- 6193139a93bb0c3b75e5ec4bd79984259ad7a4cd891e460f5a3c161273: 100000000000 -- 61cebffb948c2238665244012037785716fee1ccc9e981a5e42877c467: 100000000000 -- 61bdac1729e7b84cc107c9c4cd98d03ebaa3b84bd2202e23ce0d8257a6: 100000000000 -- 616eb46925f7a679b31a3152280d5af1c8bf1cf8331789b9a7d4ff2491: 100000000000 -- 6117f01f2f7bca478bbc7b65544a372d173d95a1d0c1836b10308084a3: 100000000000 -- 61ef623a17e382455864beee721159c5d4bf8cb446836ef5828372761a: 100000000000 -- 6145df3d1c15715054c775a5be482ef1b865ace00009630e43bcf6bdd9: 100000000000 -- 614914eced20033b7ecfc607007b7ba86199ea665ce48e8d28f79244cb: 100000000000 -- 61f70f573462e2016df38f780f40f1b52c1f8b556703a3e7e8e3f2e70b: 100000000000 -# "there", "length", "bar", "vapor", "upper", "kangaroo", "tennis", "hollow", "slice", "case", "win", "food", "wild", "erupt", "alarm" -- 61490334b0a6164dfbbe4e283bd1783a1f3bc74f66b11eea32dffdaeca: 100000000000 -- 61a44e422df13443857716fbd36e6b7028fef90f7c49b5454eefc44102: 100000000000 -- 615c8ffda6b977c88126934cdf13f7e35b803738dcdd6aeb69931f0290: 100000000000 -- 6107f0baca7d5489232c3b36b8d5eb0e9804d4ca41fa6567f29b4a6322: 100000000000 -- 6105855b63a99e69dc6f1492633806153c23e292570ce15326f54bc6fc: 100000000000 -- 616fe73e396eab19fe95bf5a747a142c4872cd079beeb96c863ce08c8a: 100000000000 -- 61fa8c81b6325936d27637024766ce3572ec3bd611e86af9e1b23c8a98: 100000000000 -- 615afc2724f3e480a9d788cf9bb072f1511926f5dd2fe8566ea5e44832: 100000000000 -- 617d2beb2202b2e9bf7b51799fa187fe0d73d919dddc7ca1c6208567df: 100000000000 -- 614c6734db3cb57515442e939fc80d1291557cb893304d8b2a3aa6e909: 100000000000 -# "door", "behind", "siege", "offer", "wedding", "business", "sea", "fame", "enforce", "busy", "floor", "enjoy", "wrong", "excite", "floor" -- 612ca3f14f8be7ad6729df23ec83d424f9dbe0e5b470ec106a8a1cb820: 100000000000 -- 618ca8e70c09add88a4686809efdafdf32a5be1fe2caf5b2d8c78f637c: 100000000000 -- 6109cfc644b1c2f40307e81b8245c948dc40415192d4dbbd88f6ddecaf: 100000000000 -- 611be65eb8054ec40ec6dc07ce9c8ae3e5c492ad6e506ceff9b5cf8228: 100000000000 -- 6152423ddc26358e62f1796f03fb5a4592e1313acfb17e36db8d7fb5f9: 100000000000 -- 61f2d9a5ca607ebea34bda0f3a1dbf0e05d1775db15225a807b20454cf: 100000000000 -- 61327ca91e2a3a2d5746864953225355de080707d194c7edf5f994fa0a: 100000000000 -- 61638aacffca9e23e09b61ccf28e8c1fcd7a4154c6f45ffd2bd345b5d4: 100000000000 -- 61e44be8d66908b8320eb63baabb2856ad38cce11af7c9da9ac049cc85: 100000000000 -- 617d7f18090ae96d72469a2118dd96d1854c835528e6d1d75ba4f2392c: 100000000000 -# "ethics", "spike", "square", "security", "text", "clip", "future", "voice", "lucky", "shift", "phrase", "teach", "kitten", "mushroom", "kite" -- 6177626c31f5f6720b9fc1c3ccca8025668554a865d6bc1dc6f04e3e92: 100000000000 -- 611af0af34f59af7bc579aa2e8a1a718b77c005560d7c6b42d0432186d: 100000000000 -- 61ac27d71f9d30959ee6c6ca4c8f2e20d7e647fffe04abdf7d17ff5be2: 100000000000 -- 6137b858584c5885a3fc5b99a8d31d0bb327cd246af776a51d2d98d29d: 100000000000 -- 61240343d57ee012b1f930295bff8117d1da41fbceb96d4b151a36a5cb: 100000000000 -- 6121316fce3cb08a4068defd2ed4baf13558811febb348bb83eec720c9: 100000000000 -- 6112046c07dc23a0e7bfa888e442ceafe5f6d9d57aaf4b30e3e4e63dbc: 100000000000 -- 61810f9255e903ee54c3bdc00711076db6566c7d5cb6ee088dc10e352e: 100000000000 -- 61ed5addcd134f10c3ddeeeb743210f581268d8364e0253dbaf4ce92b4: 100000000000 -- 61e4bd7aefceff5401663280e12c756cb10381dfbef80cb7dd7af93091: 100000000000 -# "glimpse", "inform", "carpet", "rapid", "pretty", "select", "glare", "borrow", "another", "recall", "aspect", "scheme", "gold", "inherit", "asset" -- 61848631e53d270f9e9f78b20b4a4074a3d279040fc9212bcca4017bad: 100000000000 -- 61a24e31a09d9b97d530736c5932982ce60b6256d336dba30c5c9075e2: 100000000000 -- 617c8debf5f2447c35bf75a24a13d2ad88e5f88f4c9e00a826164163bf: 100000000000 -- 616ec0fb605bf607640bad4548cdc1376898b440f5d90213502ba85cc0: 100000000000 -- 6150234b62816a456a625108613be8b7883ccf6d3d4960ba087658c7e7: 100000000000 -- 613408ce28b2472620c0457e6e4c2358c8bbb4f5918e01a6cc4e3ad4e1: 100000000000 -- 61e980805e3cfc5625cabd8007552debc1415f23658d3294e423758926: 100000000000 -- 61182b0794f3cd62c33e7873f185f12648ef8c4eaa045750a41f5cf699: 100000000000 -- 61549bd7cd2002eb7c042d4f6a741934a364177cf000a125b5a0c5b3a9: 100000000000 -- 611d61e50ae4cc9b881caaed0de0d4aa413627b8dafc34f53329cc4819: 100000000000 -# "filter", "dad", "crumble", "vehicle", "tape", "ugly", "wolf", "earth", "coin", "grocery", "weather", "crop", "drastic", "shaft", "hurdle" -- 61b219b0461b7a660c66faa91cde458ba4a9112c5f6d01b4f28a167712: 100000000000 -- 612aa7c885ddab4c74b704e1a8316a815ed028d6bf0c94983d97227b70: 100000000000 -- 61c9406763a2a1a8e904e0d4dcd7c588e7c262e58694faf7f2fe148b8e: 100000000000 -- 614a26870a1ec2e2a6b41806a16d912e1437feb0c6f8ffe487bec80e8a: 100000000000 -- 61008e47dc0c5e0040a4af33d9c01ea736bc7424418db05eda0ca27b9e: 100000000000 -- 614d5ac5ed4522402d0ebf94a7686b443fd826e2e71e77a57db422a21e: 100000000000 -- 6108e8c4614300b0b82c95c6fc0b0bc3f6c5657acd0980e6c1abf08558: 100000000000 -- 61091516b6f148b4e6616e85ca315d8cd2df30450e162428d96e1a3d11: 100000000000 -- 61d89524b5b9c591616f2760c26e99cc3654663b348f07d14a55aa8049: 100000000000 -- 6131b9c32c8d8f33039b7cd8a2efc0dee89c8d70c7a393b226c3348a01: 100000000000 -# "bright", "type", "cross", "style", "setup", "flame", "mango", "solve", "group", "hood", "vivid", "maze", "faint", "enable", "into" -- 61c0943df138caed5dbf227a7cf4ff8855f5f2fb2a4d730057de754271: 100000000000 -- 613082e529b27a3e509bafb73a92df4382f592de056ffef1de687b33b7: 100000000000 -- 61742d5173fcfdcf57991b4b404806b10fc0295d7af81dd87d84cb8585: 100000000000 -- 610e983bfb487a3271aeffe4b5750fc17ed9ed7110f7b69d4ea7f17799: 100000000000 -- 614e168f95953bae54a2956c90c2de438e01b4879df8a5e651545f4a2b: 100000000000 -- 6163a4e0c084416b7271af0b22835b784a24e0db0f9f490f064f195cd8: 100000000000 -- 61dd1343498cc62e8c8591037550d96fc21f619819f1b101d7ae6678d7: 100000000000 -- 616865e3c56249f79876959817cc76e862e28cfbde735f23dd9bce6eb1: 100000000000 -- 61f9dd57c135ca85f0cb3de3a194f870e42e29015fc9002c1e4db32219: 100000000000 -- 61f5ebc843b00e2f358a28c47af1637bac440e4d64c68408a11b9097f1: 100000000000 -# "main", "judge", "tongue", "gather", "gain", "position", "caught", "neutral", "major", "buzz", "hospital", "guide", "page", "chase", "rather" -- 613e484eb92cf986b13f2b0425db7dad09ede9c1d46e9398ef8ee6048f: 100000000000 -- 614c823aa723b118b10e53ebacca43b95ba6254be6994fdb4289930686: 100000000000 -- 614897bc218aa20dbfa55661af5258bf3f4c5ebe044dfc235863a51fe0: 100000000000 -- 616bb4c690d5088cb8563764778549d31669f1ba98500c75ffff454450: 100000000000 -- 619284caeff6df6f140bf0ef51c681733d443756dc564d8d21b60eb2ef: 100000000000 -- 61d5f7d130f1e0f625b8e85abbdbab4ad944894116499883e6a6787c0e: 100000000000 -- 619c56bc3aeb6ab89f543da9684cb59bebedf61a2370840c62593bbe4c: 100000000000 -- 61b536d0c8cf0c690fc3a2558f6672d0c7497141a9846b40336f28b481: 100000000000 -- 61cdf8aac66dff9f269339629094c0c1129d9b7b4827195915b0e84c86: 100000000000 -- 61599e5f2ce3fb4f31c59798f914022944f4c4aff7e64a92f9ab71ee5a: 100000000000 -# "wink", "enjoy", "vessel", "settle", "sport", "turkey", "main", "palm", "prefer", "awesome", "label", "soup", "fish", "crop", "hen" -- 61328217ca6aafa064d3476bde4e36417402c85cdb0ead42f38a40767d: 100000000000 -- 61728f5946b16f6689ee754e81310097f4336e58f6268b6be0136f0f72: 100000000000 -- 61acedbf994cb7c7d77179fbbc30931c40aea7ece353d9363d3013d35c: 100000000000 -- 6180243999878e0e5283b886ed40823606f266af2cad33ad72a283951c: 100000000000 -- 619ba2b1484eb6fd849fdcaddbe428f86b75ffa39e9aaea14752cc0948: 100000000000 -- 61b7e958d9501c78990fe9e2bccfc1dfb9a74fafc04cbd5fff2c13111e: 100000000000 -- 61de6b0d410bdc52c1d19b2e0559238f498e694d34a6f9921bc5ca578d: 100000000000 -- 61afe2d75d42e3f80c8b949fd5154a2b4d1c5923e2e0506bae162c7a6e: 100000000000 -- 612cc8357307fc56a4c2264ddc939578eb0ba5e2e6c99a94810a9ab17d: 100000000000 -- 618808a41822f01d5b9c0ee196c076567b7c8109f5cb056c3b2b5a25f2: 100000000000 -# "luggage", "system", "category", "grain", "aware", "rapid", "burger", "ability", "weapon", "analyst", "seed", "place", "youth", "net", "company" -- 61e839a5844ad3b253c35153f95b342403d2b65008f99c5f413ce74292: 100000000000 -- 613de46b10b9df0681d79b2029782f58835ae6754b6a4b237bc53c1397: 100000000000 -- 6152bbd497fbe225489da56563a8d00a835d8b457072522a5deb46711e: 100000000000 -- 610109d9280b20569849cae94c963b01459be18e6ecb7157958bb44610: 100000000000 -- 61735bc0d5023e83c821ab522551cacccfa959b84355e446bcc50dcd19: 100000000000 -- 61687322174ddf030294be0a5afbc7fb12b9fc7e34e5dd1d45c1d2dc85: 100000000000 -- 61d06ca9347c5d92e561e9c9bf6a31c652b270d4ae465c67fb334a7afe: 100000000000 -- 61667ad982a96d29ca991330fc8a588878d5afd09c5225696c34b291b0: 100000000000 -- 6120d2f562fb723d840eed517b50e43ea7bc9eee4d0e20ecd20a312919: 100000000000 -- 611ff52deb25ed0b8b84da6192875e56884b3f2562e28f78bbae474834: 100000000000 -# "name", "predict", "water", "toe", "steel", "embark", "clown", "female", "scale", "bomb", "genre", "sign", "rifle", "wash", "cost" -- 61ce16a152827d6f48aa7f8f7f87efb61ba2e2196a5559b515d378b89e: 100000000000 -- 61a482400096f0266a3f05ac70afaa2920e3c32bc73e787178c9831f56: 100000000000 -- 6191d21de204aa6d1063e74b900759af5e1d063b8f75a117a2874dd8ca: 100000000000 -- 61dabdfe6f0ab7fde48f9fee1a8c10c82d1cf21cc2b08b5c8e29c04576: 100000000000 -- 61c37f50fd6bff9289291f5dac79047120934cfb99a9617940623a838a: 100000000000 -- 61265ba464b444dac6b7ca250abed72e540293f714847026b044450fb5: 100000000000 -- 61ab06e967098338868b7aa5f4542d4eb2bb41156abff6dff7ab0be570: 100000000000 -- 61f295cf23f738cff055a630f2d8e9e2d2b729d2ce115cf27dbc65459f: 100000000000 -- 6188384a91f7fa5847f65108605a36da54c33accdd0c705af4f0de8999: 100000000000 -- 610d3a75e2252a10ca9479859345ea1d9d6953b784e3af91fea261adf6: 100000000000 -# "purpose", "elephant", "stove", "renew", "divide", "dress", "brother", "deny", "fan", "exercise", "monkey", "iron", "filter", "negative", "enforce" -- 61ab93ead8aa24883898dc2af1a481928260eaade785840a1acf5a4aa1: 100000000000 -- 61be608e5d4523df6c967ae7987b5a0b9fdec4325238d9ac76ba9066e3: 100000000000 -- 6188a36a9fd2a9b5918d4182d36ad714c223ef0380bb7cb5bdea6181f1: 100000000000 -- 61e93ec7a6e410aaa04ffd5ecd6303eb149261f974cdefb3d1079325ab: 100000000000 -- 6177dc492e532f33086653e4c62f110a6ebf5d2422e135aa8e0e34be66: 100000000000 -- 61f85005967ae8afeff408d1b209f47e08928c068c40d9b06e94c71f1f: 100000000000 -- 61bd3175b2f82593898b60ee64a3ca4096c71e56fb280f0592b7dae501: 100000000000 -- 6120a3cedbf92a1f0a6b4bad241da343777bf92016d62e642e1e0a9bdd: 100000000000 -- 61e1676aaecc9c7c9629cdb955f167e3cb23d92d3247346ccdf2503f5c: 100000000000 -- 612cff57c7a5e3136a24314753241c0e64c396031d1afd3d576237b0bd: 100000000000 -# "mistake", "ecology", "sunset", "panic", "flag", "holiday", "photo", "day", "sentence", "unfair", "duty", "program", "wreck", "sleep", "slot" -- 610298853b3f523d988110302268bde391b3e5275179bc282d7f2435f7: 100000000000 -- 611ebbc797b89f69d1387e6ca08c632320d0bd8b49bf5dcb73caca4265: 100000000000 -- 612a1ef08eeb2ed43b244dc9548b77fe903b40393bc9c1c396a5fcb35f: 100000000000 -- 6125d356a39d3e744c9a64fc9919890b22a3697a3283b019be838b5022: 100000000000 -- 619851674bfe5d5a65135a7cd8e4ecb3fab1c59773c3ee333fd1cd3ec4: 100000000000 -- 619ef58cbe1e0cbab06dc215d31e8e8aa2fe8d6b502a86b0778ab402d0: 100000000000 -- 615931593ee7745fdb70809e4fcd5bac46dc3d7539568ee2bc3605d952: 100000000000 -- 61dc6fa2b0131743cdbfa38aa336b1374bee3093670d408ae26ced9f65: 100000000000 -- 615f50f75c76cfd9d96d2618830271ce37593408b9091ae5fb81a8d713: 100000000000 -- 6153f8c37a94f90fa06c6fd56adb0811ffa6ecc572edc3c829c3ab6197: 100000000000 -# "zebra", "dizzy", "body", "cheese", "gown", "mouse", "under", "gift", "nice", "detect", "select", "proud", "fold", "actual", "minimum" -- 611fc50ef7d43763254efb892bebd85184dea5676352e51077fe9a8c75: 100000000000 -- 6103edf1664ce6e8d82c0fefc3999432de4393d70b5c16b57010f5ab8a: 100000000000 -- 61ca96db9a705d66368b9dfc45059a444116a5b894102486447428485d: 100000000000 -- 6197f7879265da2bedca35cf1189e97ab7da7155a5ea2f449016cf0308: 100000000000 -- 619ff2e6b5f3891bc08d1dd44aa426e76188f8f8a89a82ee94a1b0a1c6: 100000000000 -- 614bfc0e985ae6b58e5e7a2e02cec5364bdecfbea2812f7007877b9a0d: 100000000000 -- 6116a9d8bcdf9a48a211d3aa6f554e658a6dd1e6122f9f5d52dbfa4d23: 100000000000 -- 6133c75dc2e8dbeec15cf0ed3313dafadd09fd406de82dd3a694230ff6: 100000000000 -- 61ec13cac04313ad7b4890985589e488c9c35b486969c903283aed845c: 100000000000 -- 6144b65c010cff60c91fc9446fa19d80c3417c518b586bfb25a067dc66: 100000000000 -# "glove", "chat", "click", "hazard", "anger", "advice", "empower", "purity", "spatial", "gallery", "slush", "build", "physical", "main", "electric" -- 6179f3d7342f3a1aa9b009f291b29ac9d39ccc89493dd4bd9cfa30781c: 100000000000 -- 61ad1b72e161236d7b6aef40f715988720da548a95539418a8ec1494e2: 100000000000 -- 61a0a802ae1776e7a0c724d91ca4fb9553b36b7d3c739a14abf31fc498: 100000000000 -- 613c2c1ea0033f2c5f8071e745a06b2a5b7c976b46ffd93fb812f87f8b: 100000000000 -- 614bc7fcb4cfd33b9aabcedcd7571d1b6bd42ddd0ea100f715a9c347ca: 100000000000 -- 61f56774ecd5ff88bf9753c183ac7ebccc4a23a7be4dea861a0b4cc324: 100000000000 -- 614a8d615168441e3e5dcf56c3b56435e24867e6dc07f09f4d476a040b: 100000000000 -- 618d0c4b1bbf86953c298c452062045211059d03272f90857fa83233d9: 100000000000 -- 61b08d066dffeb77eedaf160276dd1076265c560962ad3048cf1835fb0: 100000000000 -- 61f85cfc85f15a6f8e1dc49d2b1f601864729d9b94b58e5fd462a652c1: 100000000000 -# "say", "luxury", "turtle", "fly", "debris", "physical", "fox", "forward", "advice", "any", "drill", "tongue", "fluid", "frost", "party" -- 61028947e2cebff53587c960768bd10c3a89a94676184c5f4eae0fe287: 100000000000 -- 61bf413bcce80b31ed7cce1618c761989bf80ae6f0e3ec123dc77efaa9: 100000000000 -- 611f35827fe92d6acb2e51cb26e1c81b51455f4ae6604817f8da97eb3b: 100000000000 -- 61df633781c6745c35281729cc68c69f0dd667c1f9f7fbf4ed6835abe0: 100000000000 -- 61e186af6de8fa9d6067a1e0b28fce56ab03c9ab6b25c6869fed904ea8: 100000000000 -- 61e980e0f11ed1274653d1340eebe502ed5b0ead439d15487bd3ac20bb: 100000000000 -- 6133448026e2938087a94900d2a5e44001756fa3e17aad241cc16f0a10: 100000000000 -- 61b030ce93aae6b1f8ce14afd66c82f946bc1b5e2f6f489c8d2464e809: 100000000000 -- 612579d81ece2bdc6993851160332e1d6955b64937693b8b68cfb0133e: 100000000000 -- 6184eb5a35bf28cb4b67aef0857cedb0023ea2934b285fa4e9d5b03eb0: 100000000000 -# "high", "talent", "network", "you", "pledge", "equal", "barrel", "illness", "subway", "shine", "advance", "grab", "spy", "minute", "face" -- 6109075e22ff909a96d6e2fff44a9b7436059807c5f08f92448b5d7787: 100000000000 -- 618ee8b9a0deb25a2b7aa2d9fc5d593a1d0860e73067585e95f081a464: 100000000000 -- 616d9bb7f0119fb0290abd4709571cebc143c56985729fb7828cb7f3d2: 100000000000 -- 61a072eabe07d7d9bcaa19c9f196b1149727a2af2d7196ece84e02e058: 100000000000 -- 612cbf4969ebab93b5d19fc379375c7d1b0a406689be24d3d36e9c9bb9: 100000000000 -- 619ef59a5eee07748b2b965afbf115899541e40fcbe0fc4ec2465599a8: 100000000000 -- 61a2225547cd4c0d9758ca6088528ae0599f134b63865523d38c9c0ca0: 100000000000 -- 61179161f4d620b0e9f9f930c1a01c9871eec3ca389e253127abad6b02: 100000000000 -- 618d19c44c1036a6f0a7dc6cabd7596eaabefeb5739f60f0bcb4f30742: 100000000000 -- 615a3d2d5f40884c48fdac407b69230c8df4c2fa959013a8cc2f3d4a5c: 100000000000 -# "crouch", "team", "blind", "three", "twist", "glad", "super", "keep", "engage", "perfect", "shop", "gown", "illness", "edge", "script" -- 610f897edcf99f796c980b088f919aeadc114ec2a918d88b13d5c87943: 100000000000 -- 614d4f714929857b81e8e4059dcd86a1c04cf3756abb8a72bde22e978b: 100000000000 -- 61b4ad26a7ae9a30ef8245b1294b7d3a5552d3766687ee429bb93ef8d4: 100000000000 -- 6177798413471116314fb5d9897870c5bef44241eaae34378047d06173: 100000000000 -- 610ca62f774951d11b300e39d8b84de46fbdb7e80e0f9c866f0f5df46b: 100000000000 -- 61dcb81202282757ce50736f72e25ecbc592b622a81b101c9d265464a4: 100000000000 -- 6155b341ca0b6013a14e417b396af68b3dd562998842f5ee2c96f19dad: 100000000000 -- 6193c1a7de76d8f9122cbb1e071ae095b70fc96987178e035ae36aefc6: 100000000000 -- 61b80351dcb9668618dd0b211c03b7d734ee74714bd095d373ec44b118: 100000000000 -- 61db1fac4e28ba347fbefd3058e27121cdccca437bedc5371a331e8845: 100000000000 -# "hero", "reduce", "law", "vacant", "local", "common", "result", "title", "delay", "flee", "park", "wrestle", "upon", "always", "token" -- 612b5b668c2bd9ef6b0a9682f9ee7ea29fc9353e1de78dda38969cc528: 100000000000 -- 610c36ef7fff0869d7e75cd70f0f369bb770d66efd50625c2c1a5e84f3: 100000000000 -- 615f7652178c7d72bdf44ea81e4b559cf45e72c21efe2a3b11bf00a76b: 100000000000 -- 6109540f5103998ffd6b3fdcf1dadd4119e054d599cb9d77b268c73f5c: 100000000000 -- 61d6129343d2eb870021af179093b701501513a779d2ff614d74ff3612: 100000000000 -- 612db69d3916cf22a08547bb28ab8a3e285fd41272cf63abbdc0f5cb00: 100000000000 -- 61638189c208f56e3739b3b8e6962b699221c9d01c7e09bdaa8227160e: 100000000000 -- 619b773b4ebb488360fb757dfc85b77ebf8f9a94bc8c75ec0da6cdcb20: 100000000000 -- 616c3d481a61c01217db10d723511bd1d67cf6fa6acadd9a64d060b2f3: 100000000000 -- 613b651d14b827aee9d0c67a6a89086d9cd7ecd0b1f381de9b71ac691a: 100000000000 -# "predict", "come", "exist", "affair", "supply", "joke", "eternal", "border", "area", "all", "puppy", "grow", "expose", "act", "hair" -- 617b8669f75d54687be0cf51867bdbd2ee32eb305a6be9a7f410b37e6d: 100000000000 -- 6151b900aa02a3d68ea2a73d0f79750be298c999758916d200613352b2: 100000000000 -- 61563c24a52175a26836ec27cf239d653a8cf9f478a04922e7ce73325f: 100000000000 -- 6126f06afc7eb093f785fb747798cab90a5df99bdae6ebd9768a1fb76a: 100000000000 -- 61137eac7b6a569bfe0ffec5043933d4e2dda3e3e3580b1dccbea5090b: 100000000000 -- 61e01ebdcbd03cd22f4a638eb09fab9adb4f9247e2290bf8ef3fc52d9f: 100000000000 -- 614bd1d2dabf8bb052b69dd981affefff8737ed5d2b181a86cc8a5c38b: 100000000000 -- 610b58dedb743d369a9efdc8586ad7edf79721fcd9838fb4f160e853f2: 100000000000 -- 61b57de54a1455de7957bcfb2ae99cd37ea97267b79e8e5b7af09feea6: 100000000000 -- 61d618e7fd782017c9e39add078cd429710466934539697f32fd14e043: 100000000000 -# "shift", "dial", "steak", "cross", "leisure", "amused", "story", "gossip", "choice", "summer", "wall", "exit", "distance", "kiss", "sport" -- 61339ceb6337b774e6531977050e2e5a55885d2ae7f67af1b468e44817: 100000000000 -- 61d802888198bb5b1f8711dae1899bf01d627d727e65dbfc4041318c9a: 100000000000 -- 61b809f6bb4bb36864782995ed3e30c42cd3ab65d6fd8256298fca5547: 100000000000 -- 6112f7a440d75b19da1f92d943e0ebacc787a8df4d6682072e6d48d49b: 100000000000 -- 610e5623e9c0d72c9af0d074f279538fe89a563d856d8074e43e852c31: 100000000000 -- 6112a465c55a4204e30ed8f40210e17f282ce9a9d94c6fce191e277169: 100000000000 -- 61afb9ab2bf845646e27b2d2fc92a1eab46a1c8a248b1824f1a882c59b: 100000000000 -- 613b888cc48fe458a118df40395c16a4184bf6634b68e650fdf165d994: 100000000000 -- 612e07591910442203fb5de543a28f5ec94b380f8898c5ec9d94e3ef63: 100000000000 -- 615de1e1aeba411092bf084098d42c0b6accb92febd5a5dcf07c98e55d: 100000000000 -# "extend", "merge", "staff", "unfold", "soul", "caught", "purse", "silk", "sister", "puzzle", "blush", "gadget", "garment", "local", "used" -- 61b4837d64d4c9e9561f0bedfede38847155971644a0c15f9d68765902: 100000000000 -- 61b9394bf489159ee74fe09312b0520f9943981a4a56db84e0c025630e: 100000000000 -- 6144865b943d32fc3cfd23897db05045dddae2fe8fed1deba2160c08a9: 100000000000 -- 619bda9975f6a24730ece382e239e51361b08449bb81b077d4a27b2f32: 100000000000 -- 6136316aa14ed1b0adbe835fd9467ec6a59cb3f3c3e0c8e82f27ee95bf: 100000000000 -- 6189e541f3bdfd868c0637a09fba6433c2d9a52c448411c026c0bbee74: 100000000000 -- 617306f2407e11fef0d87c96002c4a8ca495a1409de0d79810d2cc43aa: 100000000000 -- 61537075829be1a3bb412c0d21ce2786fd30a4bea52634a2c836835b93: 100000000000 -- 61d7271af8396bb2ceb7db999379b5aad94c501fdde64451e269ae2e08: 100000000000 -- 61c7d691aaf975eaa45a93f8e5fc9f1b5705efb95e319bb22432679244: 100000000000 -# "pitch", "group", "expand", "permit", "orange", "wide", "roof", "organ", "radio", "bonus", "adapt", "bonus", "twice", "recycle", "tunnel" -- 61a3725243476fe8ef33e55dc29706a7ee2d676536ffe6a6179d02f107: 100000000000 -- 61a61bfceba1c97d92a81b6121049e85ab588cd9b3d30126963ddc3b30: 100000000000 -- 6157d24a51c02ea04a34ae93a5638a63f8851ba962fba3e18ca86f0bab: 100000000000 -- 61e72d6ae746069e9d82cd13c0d3bf73a3aa9f556918b0874972179e6d: 100000000000 -- 618f36536396284a25662e103af2a118c2bbe7665b43865a4da0fb8cdd: 100000000000 -- 61d0f4b1bd79f86e75aff44ee6d049ac1f4cb294dfcf5505e4f06142e5: 100000000000 -- 619efedd3e570dd2fb1110626b71fad4d42103131ab1f57d08325da08c: 100000000000 -- 6137d2782dcc06be385f9da49f2a99d96715cafcb897863a727d65a59c: 100000000000 -- 6107f630a3bba5b711531050c043d6172085edf2b37372db7f87da471c: 100000000000 -- 61024c2917344e18da3243709d095e752c5164c26da1d6a675288f7a75: 100000000000 -# "cruise", "vessel", "bird", "wing", "goat", "grab", "tide", "artwork", "barrel", "second", "laugh", "ill", "nut", "around", "mouse" -- 6180e4f60918f4beac4d8d2c4834af5f8020076dec3fa1f3e1f3f82eb0: 100000000000 -- 6131992db7a2601c656e185445c751fefdfdf14f539deb7567766a804d: 100000000000 -- 61300fee6f3876cfb9897eb2b7faa3c2a6f498eaf8ed8542551596c251: 100000000000 -- 614bc45af2b9b7cd2ec4885ca269c585f22bba7caf577b92613b4121ce: 100000000000 -- 615cdb85c12206b8b71997aeb70c340d0765caa1040103868b1457146d: 100000000000 -- 61f9bded0ac7d2cec4e54bd27330c6f2b40d77c7892bba663ff97bcffe: 100000000000 -- 615686ae282ac39769764bf4667bd6745a88aad4e1d6cfa750c82a0384: 100000000000 -- 61837c2fa26deeaa9451094540c50573fb2a511d2434b2e59e12e53add: 100000000000 -- 61b953e3a5fb31f55f957403a1e6bc726dc60911887ff979b6b3e61dae: 100000000000 -- 61a28c69fdf918b20d696b6b82758d668c0579954cee44a00a688c9e98: 100000000000 -# "garment", "sail", "west", "salute", "economy", "leave", "tissue", "interest", "vehicle", "globe", "strategy", "else", "skirt", "purpose", "eyebrow" -- 61af5f826262a7d31b2722ff6b7be37f634e5da961d36e8db3833583d3: 100000000000 -- 6145c451315a1741e7c3ec6ca6b866516a5d02e13b7f10f900ef33e4eb: 100000000000 -- 61309ba633d728850ac59dbd55f6957f20d62cc66899bbbf0f36c4c1a7: 100000000000 -- 6124f09fec7ed3004292939bdae2353447bc308697a9ce0e8f95a1c348: 100000000000 -- 614b6c6c781ecdd7c8e63da916e7c35904d20f73102f55d4e8e40a4c0d: 100000000000 -- 610198871da23c224146d8867871c331abec6fd993d7aca9fb18b4f77d: 100000000000 -- 61b2b2387154418ba6321d613e92462a0c9c7de769994129fb4d2e07c7: 100000000000 -- 61feed1e0ae667fc3700b2abfa32743cbde8fca9193f131f35b2d65636: 100000000000 -- 61a0373a40a6fe0d9744c18892a55fab34593669dc2007e824598bf84c: 100000000000 -- 61403d677c8a79188cc52bda49867c0fd3c945ac4dcb368d72f0eafd10: 100000000000 -# "hurt", "veteran", "wife", "upset", "napkin", "ladder", "lift", "zebra", "nurse", "turn", "story", "fossil", "gesture", "odor", "satoshi" -- 618ac71be6b3e553160c35f246253258e4b32815d975556a0f9c674bfa: 100000000000 -- 6180931028818a2f01a4d070499d77dd48bbc26d46043a03d7e559580d: 100000000000 -- 611ac57b7467170375cf3d7af4b38bb8654aa8e78b476e517be636c72d: 100000000000 -- 61e5c76ffb3213d74f3463a335b5c24eff00f1dedf04d555b0a4255471: 100000000000 -- 61ee1cedf5685f42f526b64fa488e46bdf5e8867dcb6f817d45a6cbd8f: 100000000000 -- 61e90e53a2e1e1f91dd1af7ea0f1f4ab69cb027c6c57598a997a6f5f83: 100000000000 -- 6141c98e980855627630bcc514c99cddec527aeb0d6f8e016e4cf53dbf: 100000000000 -- 61055b9897f0e28eb3fb0859e2c06fe31a48f7a1e86c4a10dc890e2984: 100000000000 -- 61ad4bfdab76fad2f201aae84ba0827cb92674ba54a584e7685fc6ec5a: 100000000000 -- 6167740c3ea0b6dae6f619649c03b5fcc59e4462642d59ebd6cc066640: 100000000000 -# "bonus", "mind", "cement", "two", "predict", "surge", "vocal", "alien", "high", "any", "dune", "keep", "chimney", "until", "sad" -- 611081a9edd7b4d2b58ae9ea46b3c06fec8d93176f2c079971cd745296: 100000000000 -- 6128440eabaf41c8cd226b2e843aa6a7374afa587aea576ec9baa479d7: 100000000000 -- 6136a801bf054a3011eee52a1e00ee21b9e1e8ae0dccfab3b0bb341a04: 100000000000 -- 61cfe93387843c30e64731bae3facf2d28c57f5709f0008f46a59a73d0: 100000000000 -- 61fb7302217d3c8f9e91d85b96527630625cee82e75e0c7e9ecfe5a4de: 100000000000 -- 610ed7721a0c4ebfba073a696184f8a3e0945614931fd99b71e834fa52: 100000000000 -- 614ed11e405850ef64807a410aa589e03bb79775d6adb0ec19a0932192: 100000000000 -- 61075cac122696a88a6c5e08dc0df7a62f2f32cd5c0dfa97d252a1f342: 100000000000 -- 61f4718cd615a8a7fe8f48ef92147f9be8cf8d15f297024be58f4c8aa7: 100000000000 -- 615e23046406c5bf8788f9968d53bb23362fd559ab6fb7da23bc245605: 100000000000 -# "bless", "palm", "room", "afraid", "again", "speak", "indicate", "cry", "blue", "meadow", "orient", "engage", "observe", "flat", "reflect" -- 617b26cb3a28b05bf6c5f0b016a27ca972f987430847daafa5d886c939: 100000000000 -- 614381a86a8af5e4d6d2fb89e5be763c3a2090d87cd1f6d3ad055aff50: 100000000000 -- 61ba6fecbf64e75a39793739797d315cb8448d2dffb79fffb18a26dff9: 100000000000 -- 6139fa79f5d3ab782e1b09a868d7358146afea826cd6c8534e5a57a136: 100000000000 -- 6174811ac329277e1bcd9c8ef48d6f709c5ab41a60e86542dfbad9f12d: 100000000000 -- 61d25696eb3207fde233d59e56425062712f8154aa7c6a8086734ead5f: 100000000000 -- 61059b6a29530233714bbb0d24244d2f95e9510592aca88aab0bf78e75: 100000000000 -- 61c6f90f3619f4750f48b7db9078f1e3e5cb42ecd3eb6b66d9e19b5007: 100000000000 -- 615d688c51296beb5c8fcfb7687882594edf28ec41bf20038c385ff8f9: 100000000000 -- 617379711bae098c8119ca8b6a4c2d77eb3b2425cab7cf43f8a5f3a9a6: 100000000000 -# "outer", "few", "company", "shield", "rather", "cushion", "finger", "easily", "hidden", "sketch", "cluster", "organ", "anger", "expect", "submit" -- 6130cd367fb5e4d2cef47bd14a125402b4b78a7bd5806215f4db5e53c1: 100000000000 -- 612fbec852f18b3164c7ec2cc97620efe5c2f4ac4e415879bfbc41a9da: 100000000000 -- 616b6eeade6a8a24f25c6eaceffc7371b45c4b206cf8348de9c526838a: 100000000000 -- 61888a53ceaa4cc0bfa1ff7375f13dcf33417905b37ce4c883090357b4: 100000000000 -- 61b9c787dc8f7bbe8e3ef693a4e5dbe6e5529e425c13d178c4b836f4c1: 100000000000 -- 619e54f04f0b58455f447739919a376df775c987b30270dd63ab328c03: 100000000000 -- 61779830360d893143bfc12c6e90d4a8d1a1bd0f98933576f6c684c784: 100000000000 -- 61fd36b325a1308e6550c611f8633581cc6e930507a4fa8e2f2fd25536: 100000000000 -- 6175bf8b6b8c44df6d683d7236d7d3b1da68e46163476c49b39079451c: 100000000000 -- 612ab4946e6ad4ee1180cade8bdd490dd1da83d6bab3c59464abdaabcd: 100000000000 -# "need", "blood", "actress", "beef", "universe", "belt", "hope", "saddle", "merry", "multiply", "rely", "piece", "circle", "section", "eye" -- 61d820506c672c34055cfc445617a6acdd5a54fabf5d74f53e458ebfec: 100000000000 -- 613fc019abbbac8b0595f4be14f53fc3287c86b5eeb973bb18a4afeae2: 100000000000 -- 61210aec9c819874101f2cf78b7a3b1e5ccb8197cc7f55627070bd7f6c: 100000000000 -- 619cd70b9155acff57d87c5fa2a1a5b70c7119e9b78d1a2362ead8eeee: 100000000000 -- 610ff9e34daa217f05dfa5b11c6147def3beab7c3eb3d75616ab3102f9: 100000000000 -- 6179ccc42d7f97fb329e7326859ae9201e6d26a6c4d6a0da3601388704: 100000000000 -- 61c9f209ab0c0d9f323acf3e55998ac2f1ddad6b9b9dc6c48d9e9c562b: 100000000000 -- 61cedb5f8d9b82134365251b89bd445d51c898273c0598d6d7b3513e30: 100000000000 -- 611039d682aafad221a791d1b38ddf757e1bf71f5a61d4b9e26a1630e2: 100000000000 -- 61387a00f6834d0fa994623376e0069cc107083660d4fd546b4be49edd: 100000000000 -# "slot", "laugh", "stumble", "chase", "buddy", "yellow", "camp", "breeze", "stamp", "dentist", "favorite", "trophy", "legend", "margin", "extra" -- 61feddda9054db0a5ff16ba66553173ff19cef9716c525f1512fff43fd: 100000000000 -- 6171962ce868d959da4afa7a96a874cb09f711e495ab0c3f6d204ef6c4: 100000000000 -- 61bcc81a8388c4a72ba9ebe5e6d5d8ecba19cf89a99b0ca44b810453c0: 100000000000 -- 61ca7bcccca9010a7654a75ad1e11d503d8482616a352933f9515bd89e: 100000000000 -- 6127ebde5cfd04cbeb63f87f1946376e4c8d47f5161ffd7015262274c4: 100000000000 -- 619eb3f21bd85ae4648b8ab23157f8d72119a8fe51549e197e2949444a: 100000000000 -- 613f85770e820660afabf62b938ac5eeac229620d5bfc74ff35fa022d7: 100000000000 -- 61668d8510a3d6cb16bbf9f60c8b3fa656bf9950917cc3f29d552e9443: 100000000000 -- 61a49a2be7af50f03c37ae6540eb1e57be0e31acdf813e7227f25bd6f8: 100000000000 -- 617f92b17025d3e6e70b43bceb79c927f0a5fa2894c0e970bf77c801b9: 100000000000 -# "daring", "trouble", "adapt", "december", "follow", "gap", "ahead", "human", "airport", "surge", "puppy", "popular", "start", "jelly", "buyer" -- 6147f62f0b82366d25cf40cb67da505632ad342f14a6b0f6da3387fa63: 100000000000 -- 619c8d0552949ff5b01d75b2c056dbd45f3ac83bd48ebefe11972457c6: 100000000000 -- 6134f0e923957cdee51004a0dec5b567d150e99a00106adba04965af9f: 100000000000 -- 61cce6c2078bf6e9e4842da7376b9d40a23b55dbeff20492bd424856a4: 100000000000 -- 619d218fc9351dcb2131cab6970e368ed40ea7884e30b9eb28be134fae: 100000000000 -- 61b8c253aa3a7c660ce9277de37ece93833b773135e2235a86257ff5b8: 100000000000 -- 6192319ed87585829cf1c273d93f0c20f6364f48d515c8f63fdc473924: 100000000000 -- 616637d80ea17e3e0502292cdc32c4b190ee471fda37d4120dc5ee7634: 100000000000 -- 6170105a89b55579b4b48ed6bcacb718861749fca3cb965991acf7349f: 100000000000 -- 61a24a1eb20a31ce3f9b5061e4d82052246d11551142402b0dca0419df: 100000000000 -# "tilt", "garlic", "amateur", "gain", "various", "royal", "enter", "divide", "verify", "ribbon", "define", "stomach", "lunch", "short", "dentist" -- 6143df3793f2d3c0d0e6c9fc943e8250a7a041fed7b9614197dff88520: 100000000000 -- 6140acf5c28b5e1f0ab8538b666abc3dfbc90937091e4f52ebf1dce367: 100000000000 -- 615ebb2635483178ab38513050e89b2830f4b6af6bfe17e279ddaa9c6a: 100000000000 -- 6170eef9a039d80f45e8c524aaf39614c3ca8ff26c53cd43caa48048ff: 100000000000 -- 61d631ef51b3317b6a1aebfbe5eb6909b92b654c101773c13e6ce85940: 100000000000 -- 61379b94081e2682713000fb02b531c25989ca52e992b07c0289508923: 100000000000 -- 6127163079df5b7c7e1ffc7cb8755947cf2451851c3a543b1010a00225: 100000000000 -- 61912ca7498361d10ee37dcfd5c079bb4dd1087b5b63b31247e47ae8a3: 100000000000 -- 61a77e3529ec3bdc71cb9eb8f7c43ce19ee5ff3d2c8bf7e9733a0da939: 100000000000 -- 61733e992cc16da628055d17070c66d75552494bd09ce378d221ce0379: 100000000000 -# "grant", "weird", "gauge", "vessel", "mushroom", "hire", "caught", "glad", "bless", "firm", "mistake", "save", "impose", "electric", "obvious" -- 6192c5938a696d8e98a4eccefa0673ccea7f25594ff7eb11a42aac49ca: 100000000000 -- 618344279b06be2faec3b3422795718f86ca20bf746bbee67f869995be: 100000000000 -- 615c1c38d44f435f2400208180d4a84ee614f316be595a5a73feb3f255: 100000000000 -- 617a85643b2f3048ea68468980e09bdba7ca04a75e3c1315c907bad17f: 100000000000 -- 613728e32828b88287f2788b3fbb16cb84b1916a83896c339befbacc45: 100000000000 -- 6104ca6d95a94d876f6715436c3da0eda86dda1dc58d2b4192e58bbdaf: 100000000000 -- 61fb4557812861775986b1ebb89ddfcfafd25d1bcd4c18dcaf754e3873: 100000000000 -- 618cbb17b81e7aae8e23bab1b89a5efb331507354858c88e4f080cfd5c: 100000000000 -- 61e25b3a2b022900229d230022bb406be1c1ef4e9b2350b20756ecfe88: 100000000000 -- 61af1ee0146c22a4c7c428371a5768bf028a5ee64ea0ce6967172a257a: 100000000000 -# "scatter", "pool", "boost", "cabin", "poverty", "chair", "one", "movie", "solid", "rain", "emerge", "tree", "bulb", "lava", "tent" -- 612c734502b44f189f6ed84b50a14ac6ef06f963aeb195ad1a415e1e62: 100000000000 -- 61ba53e57c16165e8ef30ded74397a672b0ab684ae92bb0d06dfb5f794: 100000000000 -- 61ae76ab7ecbe4a3f871847fb4ab8bd2ee567e9adec66d00f53ed3a9e1: 100000000000 -- 614f510bf50cb737e711e96f1f8f7dc743f485af8e5bc0ccb01b54065a: 100000000000 -- 614da332c7dc5d8a3976f2defbbe9c2b4ab758d630a42b1def22cdc6b1: 100000000000 -- 615bff5bb333f9ff2a5987b231a6d90fb12aa5f824a97f9da91e37dda6: 100000000000 -- 615f9891fb44171ef75560df386631f8cc05c50a50ca67c5423bdf8fe6: 100000000000 -- 61af76d9af0233438b255b6ee11abf90e173ea8700c0a6a1ad6a8d5937: 100000000000 -- 61092248442dd4e2d02923ffd551d3142a13b37abd031e4f02f9d2098d: 100000000000 -- 611cad592107108ccd80ebb45d47df08e784f218ff776218b14d7e3bdb: 100000000000 -# "fresh", "fit", "attack", "sentence", "indicate", "fee", "change", "ivory", "mountain", "label", "screen", "crisp", "same", "absorb", "dry" -- 6176229470374a94988417b912cf140417742a3267cd85f299dd764a6e: 100000000000 -- 617eea28573b4163509c723faee286e7f39d4fae4926bbf0992031800c: 100000000000 -- 61194fc8ad78188f26c9a89fb9363c41c88bcfc0ba4a3827a9326032b5: 100000000000 -- 61fce1f47bbd68f112073bfabee7eb51ab3ac36f4f0d2ef526f4f531ff: 100000000000 -- 61f338abf8100e77a95131d9ffd02221f310834958d35e9c88e8dcfb58: 100000000000 -- 61053355dd200de183fdb5db8e89f2d5470f9a42d558e5e63068b3fb81: 100000000000 -- 61462641ecc894409f4cdc74225acfaabd3e6e07f07672438192b1cfbe: 100000000000 -- 616d7290cfedec1fbb8b4a48e70f45caf0f4f837fd2fca6ae9a929015d: 100000000000 -- 61e4b35942e8afcfc5caeb6c1dd3a8f1bf31a79ccf465e1233cb4757bb: 100000000000 -- 61fac3309a80ae6b268de91f942290f629f04a43be692ffca91c3acc89: 100000000000 -# "digital", "bleak", "steak", "marble", "bulb", "angle", "link", "peasant", "mad", "erupt", "spin", "animal", "mule", "foil", "notable" -- 61e1387e5bd445b48238a9667703e1beea511dbeba469c6deee9071c8d: 100000000000 -- 6186e732e45a020cc273ab1cc5ee880d21ae14dd6d109740e4fd261b09: 100000000000 -- 61641f626c85a7ae13a4aacab8ed061f7130da72ffd71a55292d133815: 100000000000 -- 61469b5622f9ba4cc6a1f51e7f73eb34efb0dc25207cf196da1c2f3ff2: 100000000000 -- 619781361faaf58916ab4f4185b99273cf09329d404ee62a9147f588cc: 100000000000 -- 61ba91cc3f69deedec9996474ab211039a3f47c8e56beee6e9ab021fc3: 100000000000 -- 613b8958c82d141fec99eddd1de9b6944e934bbc7b291ea2450da6e775: 100000000000 -- 6119ec1e4a5f25557ec229ce6e9894dd425b7ab9871404f5dae55ca33e: 100000000000 -- 614560cc476e45b54c2b25d76c8390943de2d82f4624db56a273f8ffb5: 100000000000 -- 612186bbebdf7d32132a5e1c371806607b139b055a0a964213d50b838c: 100000000000 -# "robot", "release", "absorb", "toss", "van", "duty", "hen", "ready", "resemble", "wild", "grunt", "door", "fortune", "illegal", "often" -- 6144972dcebed870fcc8f276b11fb4967bb83132c8cf870970e768232f: 100000000000 -- 6125787bb8fa626d9da08affc59f2fe62ccebd22aabeb844fbc836c838: 100000000000 -- 61c1c2b0f11e04fa3dfd45929fa5f84d2fddd60e84404dde7beeebb1ef: 100000000000 -- 611686782dd54ee2f9b51652e133fd63a3c2630d0456f361deef8da3c7: 100000000000 -- 617ba7b6dbec488935337125ddf2c6d5970d2dcb05ee5c32c136bb7bc9: 100000000000 -- 61cc4be9562f496b15fe4f039b6583591fe5ddfcd7db76b3b563b7bc81: 100000000000 -- 61dcaecdf91e0c1e0c60d4b942fa0ce0fcfe9f8ba8ba1221774b4bc912: 100000000000 -- 61cd6317bbe0822075f06805ca3cde4b7fab7994bc678e61dca0c25524: 100000000000 -- 61cb81c1b706d790e6ad87530894d6152301e2f6e46a48d60bc1cf9586: 100000000000 -- 61eeaae2791c3c8567cff661f35da279625a1d67f2e6ffee12c2592d7e: 100000000000 -# "lamp", "blur", "fan", "pear", "crucial", "angle", "prize", "wool", "resist", "involve", "swallow", "guard", "used", "dash", "exit" -- 6122862d90c2ecc43468130ef8c4ea1d244c9d1fcb1326a37c9b86e5f4: 100000000000 -- 6170a8277118d0c263329146190d699d72e3301e9f9ed8f61e5c5e37b9: 100000000000 -- 61d68fe99a189da4899deb8cf33c320919ee47e71ece5ef5f1809cef00: 100000000000 -- 61817c90f00e8fb16b9ba7f46a95a2c7c531682e25860c2e6b9ea55976: 100000000000 -- 610da336b7bfaf3f2a93b6d18fb6c612b6f766498561bce4c253940a80: 100000000000 -- 6173fd05e257155872bbe0327dba5c135d2454e09c29cf659e3ccc071b: 100000000000 -- 6117696eade7a50d0eae9eda10b4d24633cbc85501976634190cc907ef: 100000000000 -- 619695efad55839015f8606df8ad1810c5341fcda0e151d553a934ed96: 100000000000 -- 61e19d4f5a4c47826fa919c55ec7b40cab11c845b3f19a7179a41f97a2: 100000000000 -- 61a64ce8d73d4b0128d66f19bbce01b9de8a8391640fff5eee785e8cd6: 100000000000 -# "depend", "scheme", "strike", "gain", "index", "focus", "flower", "donor", "pony", "cement", "leisure", "cereal", "buddy", "acid", "design" -- 61b269ada1563e7295515addc596e8923446a44c3cd8a6f51bc2499734: 100000000000 -- 6196270e28d8cc842a1332ae250a9074c072e49b0b18a47ba9d546a73d: 100000000000 -- 61823bb8bc40404f15b116e2b6aec348ae949879c977cdf5098c927de4: 100000000000 -- 612ec812a3c90b0384d519e16a3264788476c88ca827337f581f074d8e: 100000000000 -- 6127b1b25d6fee4f52cb419fab11b609f26c8df072db44c8c3060761d7: 100000000000 -- 617b604c6ad487b83bacc337a77e1fd941f1e9893b92d771cbed295c3c: 100000000000 -- 610fabe45679f5dc2d45a6876f546b8df9fda87945284247f2883d5176: 100000000000 -- 61e45606c24480d500b70bab43538d483cb791167914bd96b4f81c5f79: 100000000000 -- 610b85136249c2f6a6a2df2d3ddba8a55e26625b18311b9287f4354bd3: 100000000000 -- 61c3edd1cd535f37351bc2411c3c83c8d714b0fa204303e70898825af9: 100000000000 -# "movie", "cigar", "domain", "maze", "they", "lens", "area", "own", "feed", "oppose", "proof", "bench", "act", "tragic", "human" -- 6171d52f2d46909c5d9202ec1bcf769a7019c3545d133ac0284792e66c: 100000000000 -- 617f1a2a023e85bcb024f3c9103a35b96c34190681e38a6b598e85a695: 100000000000 -- 61a8adb4a173bfb59ac94d091c64248f26ebb3bd8f01322696c97438b6: 100000000000 -- 614e8a88720d0533c29cc9431b2cdb955ed2357f2cbc59066be84fa17e: 100000000000 -- 6149b97c6c1f370b00d67b8337601dd413265374d64286d60f93d1ff66: 100000000000 -- 614fa6f4493f91a1cd6447985fc5f73fb57e40a5fb205d48418aaaf986: 100000000000 -- 61f3d53fbe4d7ee90901a2d82c6daeec1d5f58cf623ad6d1fdf00e741f: 100000000000 -- 61f93f7eef818e9b1edf7a749d557355480a9f2940f93811aa06de9696: 100000000000 -- 616a8551331b41b0c76d11ff0826d2095827651af1d8893885b6e5e63f: 100000000000 -- 611433a4cef6238f0aecc2effddefa1bbb0febe2f9c707cbf490dd83ef: 100000000000 - # A special Shelley Wallet with with only dust # "either", "flip", "maple", "shift", "dismiss", "bridge", "sweet", "reveal", "green", "tornado", "need", "patient", "wall", "stamp", "pass" - 619595a6e13285942450fabea5c286d0ed8f35cebd8cc24d133850a2e2: 1 From a4f237830f4388545fa79a393d13aad18b308eac Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 12:15:01 +0200 Subject: [PATCH 44/86] wip: Add byron faucet funds --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 4 +- .../cardano-node-shelley/byron-genesis.yaml | 1102 +++++++++++++++++ 2 files changed, 1104 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index b6474b363a0..58658dc64b8 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -547,7 +547,7 @@ mkShelleyWitness body key = where unencrypt (xprv, pwd) = Cardano.WitnessPaymentExtendedKey $ Cardano.PaymentExtendedSigningKey - $ Crypto.HD.xPrvChangePass pwd BS.empty xprv + $ CC.xPrvChangePass pwd BS.empty xprv mkByronWitness :: Cardano.TxBody Cardano.Shelley @@ -562,7 +562,7 @@ mkByronWitness (Cardano.ShelleyTxBody body _) nw addr encryptedKey = txHash = Crypto.hashWith serialize' body unencrypt (xprv, pwd) = CC.SigningKey - $ Crypto.HD.xPrvChangePass pwd BS.empty xprv + $ CC.xPrvChangePass pwd BS.empty xprv addrAttr = Byron.mkAttributes $ Byron.AddrAttributes (toHDPayloadAddress addr) diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml index 02c2c312154..0c9c3499dcd 100644 --- a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml @@ -2764,3 +2764,1105 @@ nonAvvmBalances: "Ae2tdPwUPEZ4K16qFm6qVRWTEGpq5TJiyt8ZojmRANTSpPDAWZuH2Ge85uB": '1000000000000' "Ae2tdPwUPEZMMYd8JP9F16HJgCsDsPjUoERWoFzZugN4mNjhR9ZnFwPonCs": '1000000000000' "Ae2tdPwUPEZ3anXo172NFuumSGjrvbk1pHK9LiF82nGmPKC52NMYR77V2dM": '1000000000000' + + +# "arctic", "decade", "pink", "easy", "jar", "index", "base", "bright", "vast", "ocean", "hard", "pizza" + DdzFFzCqrht5TM5GznWhJ3GTpKawtJuA295F8igwXQXyt2ih1TL1XKnZqRBQBoLpyYVKfNKgCXPBUYruUneC83KjGK6QNAoBSqRJovbG: '100000000000' + DdzFFzCqrhsj3hDxtjHA5Sbrf5Y5A2ExAgxeL1B7PEetoE8g7yBphmHYGDkKTBZtbVv7TjB8g7Q5rw1kvSjeJwxPXb82W8vw787uqMTz: '100000000000' + DdzFFzCqrht5J1FMoP4G4RPyVcKEn9C9jKNM9VqecQ9HQK391JqypjZm3uGuLupVzEXQcJTRfUoRn3UfuKpeNEjzFXtWA4uPMtZ5fxbY: '100000000000' + DdzFFzCqrht5R7SgpmD2TffGXEJ8CoP8HfvHFWt1DM7Rd9WQGyxungKWuCKy7PampAtbWiDvJoyR32V7jTev1KX4CfdEyHyfCbZj2mUF: '100000000000' + DdzFFzCqrhsiaJWtv3KgSyE1APe9v1jWcxaSyEPsGtBbrqiddWU8cfVrXamwLuyypo3Guv1xB9ZTzoqs2GzWJ6u5j679SkQzoUHnEdH8: '100000000000' + DdzFFzCqrhshSUSN6x57Gf4AeAWzkvA8Qpsz6xbXheGWhnsvsnQ6omxNwww6AtsMvF56NJ4KZ3DCeoYSU9G8pX2qbSMHWJGkTYy3K2oL: '100000000000' + DdzFFzCqrhsgKk79Wo42Dm6BszTkiQiJaADLvwB3Bc94wyrTb5EYm4WdBkNPversvLuRELokqW5VQkLBvVdDTofd1DHPaw6LGCoaQK8S: '100000000000' + DdzFFzCqrht3fc1oQvUoHXSLLGj3woXdUM8fgBBNAmSeQ7XxtxKwEcTAn1TdLY3S7Tu9gzLPEXVJChBRFDWvVUPWmijZnSbrddDdBB6j: '100000000000' + DdzFFzCqrhtC9sDX18jdj4zBUdLpmuTiszN2ZofWwVv4SXHA97frgMjPFKG6JzVYbyk1AVks1rVN4L3jg6yJCB1rLmFGakVRxsR9EuxY: '100000000000' + DdzFFzCqrht3jJoG2rsUSjNXyLSfSHPj72HgprsNWbjSEGx3Sn3R5qDkUZXEPwsfYTBpRgYCP7D4YuFqsG2F1cV4qDUb6PTwMtXUWd5g: '100000000000' +# "finish", "evoke", "alone", "town", "express", "wide", "pair", "story", "west", "safe", "news", "wrap" + DdzFFzCqrhsrpHvUPAeXYF9Fhza9tp8V7BqsouT16oXd5ZyeZSr1xf2wBrVgK2RRLLfyPqViawhF51eHUSp4ZunW17tptMYjsYegRKtX: '100000000000' + DdzFFzCqrhsuhKwzvsPXrk4p2hVnwnpSsfx6Bz8YDdPkPNXRK3syiwnZ9nUi3yYuSyaVbxx3cnXcKZJePaAYDW7Gir6Bi4oXUbU3R8W6: '100000000000' + DdzFFzCqrhtDAsADG8aFJ7czQaJhT4nZeVQ52ugZg44AJWqsESeX8YewxeMrNM65GfmFDH7ByBeFETUQSejyq9RkfGHEL21CDubd5SfS: '100000000000' + DdzFFzCqrhsrRn9QpkXseeeBP7DphvLpwpfoY2o1dTPhsvnkfrPGo8P19BK2p8vB8R54ZkFtvTE2D7gJ3kQLo8vTbQhX8CbsdGeiidAb: '100000000000' + DdzFFzCqrhsyZp5ktXWS8KzE73q189Aj7YUZXuxfCPZybrmwFWQZw5sSPQgRcZq1xBodta8u9HnAYa5UMkiDw2RpAkATUNtSTqm9c6en: '100000000000' + DdzFFzCqrhsvYScvLTuKan1LGWeASqhR7tH3TJgniMQ8wHKtpCTBowAqSVJNwvKV7Fchd7g73iesAyQbNk3RRwmjStoF9RpTd7cvRkCJ: '100000000000' + DdzFFzCqrhsgTJYs8RaBJDzyd9zG5WPZxCu6kgkSL7juEU2nNd9CiRbDuKFQmzigMAFtDe2uEuTbgpnTe81vmesDLh4XbCbEowH1MRjw: '100000000000' + DdzFFzCqrhsuCfwXNUmgU5eyJSdvLCH6LvMomQ65JX7uAvkaZ9hNkJ6xc7t1u4qpwpkJkSHpcWPGYTb8hBLCu6YPvxRFycQjvdvJT5mp: '100000000000' + DdzFFzCqrhsmtYhQLZxPFiZv6Uzgxx2eZZzPm187osgyZWKKjXsLbGdTUpqkKiFxBHMyG2hrNZhY9ZxdqGJgEmHidSSyjoCZ3aSfNnAm: '100000000000' + DdzFFzCqrhshdpXiZtGiZsSYAvmxdGD1wZoc8HVYW8pfLd9sQHAobJZ9riRLU2yUh4Pi3jnnvVJfAgyDdyxWmN8WE7LCBBStKQfCfca3: '100000000000' +# "fox", "now", "hello", "inmate", "era", "jealous", "cruel", "wreck", "dash", "supply", "book", "attend" + DdzFFzCqrhsuUXs45RkH7SyC2zXugtRW6f6FwAH6Nj8NpppsyR1NFSfGRMQFegpPdvEEXwHJXnVVmWC4J7CGBfc1EjzLZDd7fwcuiBrU: '100000000000' + DdzFFzCqrht1wQyixEJa24mnaSv4v5XSvK712p4Vav9ajdUSQuH1vdJefTJeLgRLmgS35HYtB6icd17Lyk3g7vrHEv6XHEQuaJZe4phJ: '100000000000' + DdzFFzCqrht782JAJPNgXEUf9u42goY2WFH4Abtu4KUKM3dJ4GSnHH5RWMQ6Ff27cq467VFwa6rPvEqMBw8zGNArCSKbKcFjukKVkDmE: '100000000000' + DdzFFzCqrhsmvpq9C2QDkKm8qGCPEKx5FapZ3b2j3z1LDCRJvGxyt7N5fs8asPZPFVwgSqBhfiYRZZ95qx8rnmCBQJWDRJgnoWQM63ja: '100000000000' + DdzFFzCqrht2B4h3cgpT1rJZcqnhB9DdyGXxzGG2YeqiJdnjC4ENwf4Vz2GtwLSvVum3ykhVm9HfcbwFdVJZibQaWLhfi9tacVwjgnMu: '100000000000' + DdzFFzCqrhszv9yR8BRkFfJ9x1V67S9g6fsDsvgg5Q9SHQjczBEmapSyxMF1WZxbAZGEHcDHkQPDxCnRD5GdTwkixMA58ENa6zHVT2xk: '100000000000' + DdzFFzCqrhsx1Tg16KGnNgYL74YjUJkbKXJfDsJmvwR7yWRohAeXWfZBiEuW1XAsGPBPJ3eeeQ5Us8PwoiHuxMK8xtf269JcaNY9fCNL: '100000000000' + DdzFFzCqrhtB9kXoB8hkqqDEVepjN7iLEbrZ4ev3Fzc2DtkwFDTx5yQUQ8HFWpa1SX6xa19zJoG638SwkXD2YRZ8BJmKzmPgezpPdG1Z: '100000000000' + DdzFFzCqrhspENibdKwdhJY29iCxe1FbkaRYTCpvGUKD7RDimWTSpge1TTr5vUEKAq2fUomK89rJ9Jm2zAxhPtwkT1qH3QBQwuMa6vXg: '100000000000' + DdzFFzCqrht3PXq2rbrSWPABrzcR2ii33duy2XrvNCHFnipHpUEFmA92dZQ19J2hyKmLPXx4zNwyfJbfxpeTek7HwPGNGbMqURLDXKAh: '100000000000' +# "must", "lock", "cereal", "water", "silver", "cake", "circle", "express", "sock", "arm", "chapter", "avoid" + DdzFFzCqrhsuvjFmqGSon18Cre43TkBapMjhXMiF55zYVXDSvBNmgFfuV5Sd3NK3zQ8ADJWwotoCC7R27xk7F3mV3Fqpx6YLenjPfmTT: '100000000000' + DdzFFzCqrhshH6MA2sFv95TwnruNgEc7EwMjJHaA6ey3mpXq3cNaF5gPVnwUfhyhHt8wDGN9BjJ1VnEYWSUnCKHwgkvDzzoRioB5eaVa: '100000000000' + DdzFFzCqrhse7GJDZdrDFr8rwkYwKqQ3AnDFDtKWWh4PKc9bjMZ41mumvpSPY5fTogmsqzV389Xt5SdwzALMHsEKsAQ9majAboxF4PKz: '100000000000' + DdzFFzCqrht1g1paWFHdY34u5AJvVy8ojNeRC9aSFRCDbMYZA57CH4UMQR9XxzmpH9bYJM65kuq3K7BPEkKAmLGG6szva2K3d4BVumo7: '100000000000' + DdzFFzCqrhsnXxtUvNRmvUstDgjcePy5wkwgA5X42qxY5iVNc9Fc9rZ372yB6TJ3ye4zCbrBhMsjo671HweGFMPHv1bKNJ5ecH4xxfPi: '100000000000' + DdzFFzCqrht7t6dt967aaCZU25KdhwQLWGnTXw9zbq7DCnEfsfhz8WjjTQFaZtiG45DUvDhn3wHVYXgFWcJMqycSoT9JvpdMUE2J84Pk: '100000000000' + DdzFFzCqrht2XhxfHjuSFL9fRKtc6iLYVwMMeyqMPvxTLtKcNhNyXGrU2hM3TPs7AqWaNtDtVPr6pjjrNfJPNAwcyAFfPCRN1igBSGne: '100000000000' + DdzFFzCqrht9UvbfWbC6jt5s4eNz1v38zADUSZnMQoccZFGevc44fAH3RcdrLtqbyaXNPLY9UoZWKu3oLnAPKYvPz7tV7ac9MPXHHdWw: '100000000000' + DdzFFzCqrht9K9NJskUq7LUC3xrAgdAqUFhXxY4dCZh2BFNXgDU7qPBqisum3UMYLSkBWEQUs8VsFiUmmFBoVrZ894PxAmuQgwnUMQWK: '100000000000' + DdzFFzCqrhspvhpBXZTCD3pKyXvSVntAQQTKYXDYb3KPb5bCKvfsXqsTKqVephRoPViAfPwdbDR1yq67BRvF3DabDGGSREkQ7QvqF2Ps: '100000000000' +# "give", "verb", "balcony", "hurdle", "pistol", "flee", "manage", "barely", "pulse", "episode", "speak", "school" + DdzFFzCqrhtBQwqcDSEtyMUAzvZPyGo7iasXiCJrS8GDwPXbphxVZf6Wc2kdNp17YLeMMj3rioijxNKxK32T3iTFohfhWZzfuAxoFeNy: '100000000000' + DdzFFzCqrht3W4KpoP8CUEiiXrdDjVXMoSWmuDrErMcbQRTeYWkPPkzuBf7mGNy8sHS7QD4bhxGnY6DagY2rd7PoN44yyCfB8ELp6cP5: '100000000000' + DdzFFzCqrhsoX6VN5s61mmoX9UoQmpmmrLx2vpvF6oVby33urnyTipUpWUvq4kcKPE7YsPjWpxKUdwkSexqDCaHE4TFbXAMPPmysbZAt: '100000000000' + DdzFFzCqrht2LtZmni99CDoNL5NZd51DL4KzukJgzCkJv4uGSMqZsn98h8C8EFg8CN6P9esADw1HmYkcwhUQ8iQGLR6Yp8vK8u3PQpvS: '100000000000' + DdzFFzCqrhsmXKnXnNqMjXTvQ7ppteSc3Qg6YxhhZjx3QzXpmF3PcrLyfSzp8augogfNKaX6dzqApAcp3CFy1B4WkHTfetDg27KDs1NS: '100000000000' + DdzFFzCqrhssT43cdYzXE2A9qSo9GviGqS16LveBG7k49ph3f2mfUbpfoTP7PMy5EbuLiPbXHWmF98DBQEL6JqCoGEYjXcZpKnvJFs8N: '100000000000' + DdzFFzCqrhsiNy9NZEoFSYrttjT1acFxZQjSayt3rppQfNFzCrEE8NQYDa5ktMZTq3MDhTtjAXL7Ua1rWYJSFzChUmcUWAGHv2tUSW4y: '100000000000' + DdzFFzCqrhsmb7utbmSRfK5hL5i9Fq7mPmcpoSSEDqKZqSewSMYtqJvafpef1x4zxAjrSWU8zcv29g6tUPgH7BZAzpzcp8NAw1ip5v62: '100000000000' + DdzFFzCqrhtAG9sL7jX2QfKvgHsLwV7G5mWa2mLJsbmaC5QrHzkatn2SABHKNMfcoPERQqUwWHGmrhJTEDxLQVvTJFFTptTKeUoLVSZC: '100000000000' + DdzFFzCqrhtB7BvDH31vkTyMaAdiP1fUFA8KGAG6FkTQQETgxrVWgixRzsyHaJ1Wg5FFPULXRa1JQo7LbeafGwguWe6QkAqResgBPbf4: '100000000000' +# "divert", "entire", "urge", "banner", "repair", "mechanic", "muffin", "illness", "genre", "intact", "coin", "boss" + DdzFFzCqrht4QogR1CAGxFTib5LunkacDu9yPncCXFg9YG56sv8dUtcpTFkn7PgDCGsdWSCyvXzwwLfa7zU1AWp6fNuPhHsRZGqyAqXc: '100000000000' + DdzFFzCqrhtBhnkPNQbCBnZzUMGQTZ4U5KiHmdf7vfYro2DEVvoHA39GLaCAtmEwhmS4BJ6L9FBiDY3WGB9u3qzMctBvwTrmgtXK9KWZ: '100000000000' + DdzFFzCqrht2qoGkJbAvSoWmftXfW4AKicxQJbz9gBBgBfaoUEW7aaFSHgk5MAEPiEfdantMNmB3YhggrdGSNQajVQixr8gZn2NFkYXB: '100000000000' + DdzFFzCqrhsjNsnvXCxjqED2NQoN67qHPKXuX1Q8uw1z421ph1kqbwFitByMU9MxpzuBHhU9EqCKJSa6ZTpxn9sxWcixcCEgJKiWtwcb: '100000000000' + DdzFFzCqrht7eewmhd5drGkiQPZ8RPTebW2diqNas8zNLZFw5xRamwFwftbSjFz8zCsPoZJzWckqDfC7giYu5Z8sik1DeT4Ld84LToM7: '100000000000' + DdzFFzCqrhtD7EDyMHr8BTSoJtrx9LbJA9aYX8CFhqoSMKY8PZjGZnMJVY2EaWgW36cvcvejWi9t7f6r8c6w2BjesHHYfXAWBd7PRHu1: '100000000000' + DdzFFzCqrhsfxq5TbeLihjwYQhAKHahtRdBKZNgEUeJ7xe68RTU2U7d2NmtCpeNG9UgMaR5zjsuAbpAgUSbb3VTJMTwkLxoq2v9fzrb9: '100000000000' + DdzFFzCqrhtAV5NrHQps6M5sRnfDXgQnPxqbxiXVaSrAjXg7rHLjC1JfTpFcMM67rvzjrfHHWjBuSMVnA5ZVx79zqJ4gcDyZirfe7V8X: '100000000000' + DdzFFzCqrhsioiAtUjCJs4aRcmAn31ghqmsLxqrrk4eu8ZxM9zqVG1wGTab7npn7zfhpgB3MzjF4Xdhr3iTRRxQGN18LhpkxvyZwA5NH: '100000000000' + DdzFFzCqrht84M49omXJT2wUystJu1Y7AVJvhgBYLRTZndNNvp8kxBkBSmszji78FzAcHfWmHayZpKPzH96QctEfjNQj6KmEgAWNCwWD: '100000000000' +# "pink", "radio", "various", "frame", "argue", "draft", "sun", "speak", "club", "salute", "thank", "price" + DdzFFzCqrht57eZDhmXBWEQpZCxVEegTgmbDNGn2ETJEjwtQJD3HappzpBEDVJEWz7Np8CeGGm1MPaHBrN1f2ET4vBm3BmxytCATtow6: '100000000000' + DdzFFzCqrht4KjpLrJohdK2qqf3ABPLzF6AwWqPA5jfQAVSPfokxM9rzm6nr9tdd6WSacyaUBDDUpnUyYN5dvVJi8dLXUozZa1xC4vLp: '100000000000' + DdzFFzCqrhskqh2LiGzRYFBVPhBwqzqedC3KCMNZegxXB2EzWKhdfryCZeKjrMGx5a51YEjKgcHtuXw2hBT4SZUsKqoYykvdZN9xfr9J: '100000000000' + DdzFFzCqrht7LeAGngeyj9hpG5ZRjdDhU3NzCtEsEpQmmKmAMq1NH18uN5zfZaVccPyRBZqmsRi13eH5Pk1aKkhiwHwH6m1kq248Ddjj: '100000000000' + DdzFFzCqrht36BqnLDbxFKHXHpR8zree4a5qw7hR9oT3gzygGsrMxShQ41JevQiTgobv8YaNVCiQhXr9c2rycfYHnV6w3pARbXJ8JTci: '100000000000' + DdzFFzCqrhspgHBe9eUmcDt4o9WCsFM6GunqnWjMfNScEQasrmikoCe7N15KREgb8zfVc72S65oNHwgMgmibN9S4KVaNCakFWBLJpUDp: '100000000000' + DdzFFzCqrhssHyhhWC4XpRrbz4v834gYSvZbNsPMSFdZKRzgp8zYWue4jxPeX4eevMt48jSidw5Yr7hCfruZHFMKvLJcAiP34dvqnNgJ: '100000000000' + DdzFFzCqrht7cRsCug1zdvgQXNA8Xd3u8RtQTUQNpXWT5hZvBaT5eQeA5y33BT9oKifrFiDACmqjZY5EzMG2ru5XXRH9fmjLp7MFsFby: '100000000000' + DdzFFzCqrhskfjCZMpoK1pmHja9bPc4bpnhCPrxyQHAebwmunyy5heefMNFSQwXDRgFsxh19zJViYtSfWiWCRURbcLFF1MXWMQsPuUGr: '100000000000' + DdzFFzCqrhse3jqmUbLtaCGk6smPESyVz9DvTEs5aQjvPraHWbNaBRUXe2AMCwqHGb6dixbCgVeTGZsQWhfDz8sN34D4PrzXyTXofHDx: '100000000000' +# "all", "beef", "link", "funny", "swing", "duck", "sweet", "swallow", "slow", "shield", "weekend", "open" + DdzFFzCqrhssUnqD4WScMCzs6i2DFs9xoVDDtdkiswVR91MfFvzP4XE6HKGidaPvx5YFdXddQ2qfEko2gpL2enrXSJvrHx15f6ek4nQx: '100000000000' + DdzFFzCqrhsrFW7cw8d4iwUABgVdzCUjDfRa7d59bMJ8ySKoGnit3MZSmjobCdb3MDDmhwUBmLcrgc9DYHNd9A6Vugh74XZU275SXiyt: '100000000000' + DdzFFzCqrhsrgynva2wmP9ZMtR9VVCDVMC4nmUgz3YfdrM6csPKU5VLzW366NN971QAiSeMnKR1XjWPQ79BMzBh2mTKBRm4hP2vNcmhT: '100000000000' + DdzFFzCqrhsgAiK5F2axtBqRcsujv7vdr2R184ojg4UWe3W7FXYnWmqsCHwJWpY3P993CTVPwoh9p15215pQhXRP7xRtY39kcCvaCJrA: '100000000000' + DdzFFzCqrhtBSxx2SGmR4UoJ1RUKiEzcyetmU9KXn95eB7aE2BE1WY9YsfkjvQXx1wAbCWUrk7bMbcPH5Cxm7EnfRoTSHuDzqu4DcQSv: '100000000000' + DdzFFzCqrhsnMtZDbJ5e5Nk8QgU87Kny15LtDMxcbRA5gwksCVmS3G7jb81rk9sRhrpeHDpNmvBpPB2dwg8aqTwDZba5RkLZroLRXjY9: '100000000000' + DdzFFzCqrhsuyAfgk1e1KwCqC9WYPdoGXbHQRkZiHXgxwiESVShHQ5j6FhV4G3EmW2bRZFY3EmNdzye93aRkXVw7P2GzBxYkSt8Ninat: '100000000000' + DdzFFzCqrht2JE47Cpy7TWnnFDeGypCxJ8myjG4HCZRr88ZAsLL3sJuVa1yBpZBRkRuaEqhUB9T82qvgD5jGzWCqk1SjWVRHrpVcXra9: '100000000000' + DdzFFzCqrhsmDbBNsGTm83q69zu3RPYkuREcT2XXv8vEiyJgZhmNf777AJ5oxjCLKXf5kANFKEtiyboEdCiiNG2uDDU3WCkU6CNRKNVk: '100000000000' + DdzFFzCqrhss7raQK4JXu4abQnULTsoP7JiEVDZcnZ72bzhFYcoAY23j3fwt17mPMnFcn9PhoGVEnZZV3GnkTrDoZ1gJmnKRPuZVoAL9: '100000000000' +# "green", "friend", "captain", "entry", "utility", "lake", "blur", "matrix", "will", "prefer", "breeze", "shed" + DdzFFzCqrhsyF4quuYiAXmp1vfiFhhbcxXniypiSiE7tnBraPczHxcfBP5B4yBCyeaYJKwG2N7U5ujjoTrvvJCfXJaHLbfWg1nnm5ajb: '100000000000' + DdzFFzCqrhsyiAAwKP1fAhs5wihZ6dSEPf1oE2YG91C5vDWS3zwnXA8GUVHeoa2Vr7Y1ibHneWA5TxR7bQvZT5MSM4RMYVbBNbkBduWx: '100000000000' + DdzFFzCqrhsj39Ged8WpW8WTTfXn9GPdQmS9CjL4ooCmB1dgBQABFjiX3tm7oZ6qT8UWyjenG1M3j9DFqPTgXkWTBsyfiqL83hMXJuDu: '100000000000' + DdzFFzCqrhswiRMQc9sB3uW4CFNgMKc2PovFhMJm7F1A3gmTfWJgf16deq97qsF6f2gGiGjyaWdGAwnVztma4m5XzeoMUJnj7sk7vbj5: '100000000000' + DdzFFzCqrht58AUUmjsBjCXk7XYkT2cAX4K6AyfZPZkD2rRAKaqFEFy9QaYhQ2CDYaHZ8DAtbKXGFFnqzS8khah7CWcWZHyrDo8eYiQS: '100000000000' + DdzFFzCqrhsrK1QzPNAeMgGrCE3zUFs4GmDHhHHRev8cackbf3mbuiGTpX6C1r2fpzWjtwaBDMhcUcYPiBF2w6A3dw7br4HuSxLho42L: '100000000000' + DdzFFzCqrhsjDZirn7o8PeZrrwkcMcB4hmTHCg9t48rwZLQMvwn5hsX19yqvnVzGbfMjZ1UN4tHGbLeoXSnioTv3CYbvnE3Sn61TGuQA: '100000000000' + DdzFFzCqrht4rqa7rBzrbXRmUDvEghRBC8XqxLtvsDaz4uVrQ3zs9gtgiw2Qg6qWk6ijanwM3pnPk46jEJJAktHDhQrgNk3iTh9BkzPL: '100000000000' + DdzFFzCqrhsybR9KyLbQjDymLz3iUZMHjyniAgiPLSJwmnRcA6JVyH34fAZZkvX6fNVQkxiZoU2i4FfN96NucWqL8bMCnQDHncSJd6oN: '100000000000' + DdzFFzCqrhsjpQsHgvWQTaVZx7EgQ1VgngEXcoPCm8AAyoitQR2GRuue2JUoSvbaoEPpsoUSQqA3NR9gVMKYjNivG9XimFPgeDMy71yo: '100000000000' +# "reveal", "jazz", "equal", "salmon", "first", "decline", "liquid", "wolf", "powder", "account", "elbow", "figure" + DdzFFzCqrhsyiTnBicudK3xgsfurYhZaGbUu44bPyY3pLqDJdqf6pBePqtVhkkYnATNq49VQP1v1RgcFTfXjC2XZV1X4YYFdNBfeeNDf: '100000000000' + DdzFFzCqrhtAnCLaX6TVTUKyBEhchKz7CsqApuZX2AXsWV5DuAm9MPcH9mmgFCBSJawVTXvQrLp1g2kLdmWLNHLt989LdZ47bfAfcDdV: '100000000000' + DdzFFzCqrhsiAEyhnR6iqQfYoT8mDFJZPrp8HGmSmExU2VrdYzrdSHumSgrEB6enotFApCKYwLNojgWFgPeSizLdKxQAwAbNicAdEpMi: '100000000000' + DdzFFzCqrhtC1ABHDxF8wjtP2tqEQXM6kNYEfteNMZ9hHpzejZtWGaFibGXjfJ2RkqQSqd92n2qCggNHkFAcgrCKD8yezPZ4VJYwxzVZ: '100000000000' + DdzFFzCqrhtAfgScY4gYasbf2XCqFygcDThwphvj8cp7UfYxuJv3BaGGk37i6yNkZEGTAHTWbyruQEBSNGKWrYCmxvY3LUEWprNhyrrK: '100000000000' + DdzFFzCqrht457hNzoa6trXPNq3GYP9v8nzdBedReoMxYZ2zxWjRTtfUbcviPsYtiQ7sNou8p7jvLzQZT3v7D9PSjd5ypa2c26cmC7CE: '100000000000' + DdzFFzCqrhshQDFiDeweJFq9L7hbtFMedMtjTcstJTpNUprfGfMyXorEaSdFgsAC16AmWGQ3ZkoMNrJtniGWSQMfBMrrejjzPg4B4Jxd: '100000000000' + DdzFFzCqrhspbiLg2qHfmJvJFjQTiXgbwdzYFHE9zWuXWkaBCK1ox8kG3oUSaRT7ZZXo2nmt9uA2Q7u6PtBUQzwNoZrswajApr7wMCMX: '100000000000' + DdzFFzCqrht7PwCwS3E688NQuud8oLNYLP9nYXqqipvXnm1xc5HtddL64fLtfuVeUiRUZDx3JftfvCQi44WC8h8L4uaEHfcTf74hM9WC: '100000000000' + DdzFFzCqrhsmen6yqDxHMrDwPppTdkwy2KY2VwxvXqFLXWaii9s57YTqFh7xeUN685e4DL2YxjmoSrQGramxgaA4EwKLYBhG4LErDCN5: '100000000000' +# "olympic", "uncover", "stone", "tiger", "oppose", "icon", "property", "heart", "mean", "interest", "account", "head" + DdzFFzCqrhsvdXAz1SJakLthTSFRZUFtN8kLRMuf9jwRKgH91DLnmKnGWWar8xJhsSLS1fnV46WfQR51nJ8TUT9vAsWzhQJXRM7H1hwS: '100000000000' + DdzFFzCqrht2DtsCFb3XBfpMjbwVRsFgWpYw8G6PQ58yZ4P5FeczYCJJgXgnPgE1oovbngLXcq5kEK7EzzNvBf6fe1HhpmPyC1sdHQkL: '100000000000' + DdzFFzCqrhsv3BrjfGXmu6skF8PKRpWL9zjHqD6bhFPHbFF68vG8GzofiwNBnhwaYNX3eQch253KFPXm3xhuNNvU1U337HPdQjhbCC54: '100000000000' + DdzFFzCqrhsqb6h9YtTRB5p7dJNEhCHt6GnCjvdr51LoMc836NgPepYHu8vXAuLNrbxmMW3rz4LxzG57pB9CbiuFqbztt1ZMVH5p7KD3: '100000000000' + DdzFFzCqrht7WSNSBcjzaZKWnwpGLQZRWrHCPx9cAtR5FPrWesYRowz2UZSjpr7gC9BfT2A42JmnmNDVv9VrLvJZbThfVxrW4i4vbLzB: '100000000000' + DdzFFzCqrhsf6JHsDi2eaixZbvARSNms43kSYwP8segyCE7vPmxCF616aLx9zSB1rD75SpsKo1AsBnz7SoGnLU9viravqZMGwpTQHq3d: '100000000000' + DdzFFzCqrht8HsQRv3b79px7C68r2gewt7Ej2LeV1rB4nzhYwhDdrgxGvzXeoJiPkgYRCj4nCcKU3MheLfMvR7aL6oxc9VmViyJMMNpz: '100000000000' + DdzFFzCqrhst1pvkm5Fyvo926mcLxEhd8VRBaetNZCYyiEZnLmV8euYvEYQxvYgzoW4b2ceZqb9zWXYeDcMwaSuj69Pd6LGeuorFVT4B: '100000000000' + DdzFFzCqrhsriKxiH15F7CZTvwFDmBwTQMxdbZaomXhE75Zcg4TH14BqxUh8ztnEDEeLx5AAeZHNt1aDp5UeL9112PCXRp1RJGiiWY12: '100000000000' + DdzFFzCqrhsy74X8fHcNx9C5owuY1FFA2a4Rf9KCwZPiSiKgNWpK4Nm3sXoN8kQF9nKFoLQcom3YJoFeda6D8woAJKFrkDPcnYpSBrsy: '100000000000' +# "poverty", "hungry", "depart", "shift", "proud", "wrap", "voice", "throw", "spoon", "this", "system", "flee" + DdzFFzCqrhsoMYShvsYzCTW2DpA6vdQ4HZaDa32hp4ZA8wLLgdxzn3hjTFufb4XA9rGaq9XdmHTSHweL8mCUjgyVZgSu9MGS1xPgpyZi: '100000000000' + DdzFFzCqrhsmV7MBQZxxFUoDE3W76ni53TzC4tdhmGsZRMzK33JmBbZrxp5u54PEYk5ikPHhfEDMH4ragbdVCUufeiU2v8N57GQseWXq: '100000000000' + DdzFFzCqrht5hU1bKC1krwBPwRfbdCdKtHqorVjUtXenrnngZTabPLNMLsgixvMho1hcwJF3YNVj8Y2wuGKApmpXgbmdm7iSzoT8vgdr: '100000000000' + DdzFFzCqrht8mYdcrigMUgwZgCZzwisotuAK5CU4LgY9uaCawGFU3wKaqsXCLo3m17GZLgeCF5ypDMNHJAbPZKoZxH8kEo7rBUTeMTZk: '100000000000' + DdzFFzCqrht1173DMt1FrRyzFSzSetP6GpyH8Qf1dFPmzEf9uU8dWpmk8P2q1Fxfge3UCBpYQbuZbw4PV3q5kaPZMquuL3g1msPZnJby: '100000000000' + DdzFFzCqrhswjgRpUTisLAKNdGwebL1ghfRR4qD1RkWYE2n7AgHAQbjz3ARu3FoUBWaM7fcA6xn1g1PuZZwZgK4XysndxSnvuf5WYLzw: '100000000000' + DdzFFzCqrhseRdRAWJKDWHgSHya5oXpvzNgjChT7JvvFBUtTbqVkZ7NS3GRJMB1Tts57EErJNgv89jxy5iJX3xQcr5z5NcHo43arp1MT: '100000000000' + DdzFFzCqrhsxRLLh2j7DpWu2EycxeWsUKgC8UJNkB81caHN3FWn2Fh7eN7K7VVjCagEWcCqAzn7LGJPqXzHzbMk4Pa2VxYwy2KLYDQgM: '100000000000' + DdzFFzCqrhsvSrFJ3Ue2aVzfkSaMF7zy1VXYrNvF8PguZhzhFwbQoyL6nqurv3rMpvD3CxSS6wU9qhpnMqgysk9Cb5pTuhgL3r8C6yRL: '100000000000' + DdzFFzCqrhsgRiVjpHSfcD9q5qLvJssnwmJ6WVQQwHfRRrxiuwpUkGVDmAP6XXfgaYVGqAyANZmUJa6aTV7m6hBYApBCHhzEWqJhmeki: '100000000000' +# "tattoo", "crop", "genuine", "impact", "govern", "banana", "hope", "bamboo", "junior", "pride", "best", "skirt" + DdzFFzCqrhsrJdmtGJacDT3FniJ1LXtnxgdKEXm65mDhub2DDWxDXZCZNZ38SHJEAvRLrMZ46ES6tXBwfCKswTYq9BnJxXAKiGPP8gGE: '100000000000' + DdzFFzCqrhtAkyz34omL7tXaWvrHPBqR34cS9hVujo62Uyj7eubAePLDRTsfrAmEVBxHq8GV6ADybhCC8idDRyhCvxuW7uZBSFapfAKo: '100000000000' + DdzFFzCqrht5ZoCC7ZLVEK1KDvfVkTvkRkGQaCBmBMsP7z3Mnm1w3an3hVAteXpNJPjujEn5ZfWh6Ei1G8v2Ak3X2LohiA1nyGxbRiKn: '100000000000' + DdzFFzCqrhsidUFoGAPCnjxK2cgn7UdWjGFRLbFjjdWnzPGKvskC23NF7VvWpuw9nB2U5XgMEtmDkZxsLmC475zSXcRAAFQQRjQWAH89: '100000000000' + DdzFFzCqrhtATtiyKvxKUdJDiCwN8M7Xx1AgLUV1eJcCGEJgaTQn6mxWfqz6FhDF3uA61KBK37Eg7Vi3xXrTNk399zD5GdJsmyEmYJVq: '100000000000' + DdzFFzCqrhsk7YpKzvC1M2PUdhSXFCezLXAZEP2THzjMQ9hmf3XxsFrv2dn56sAygQ1n7tKjKRzsSF74Lo6LfXzr1Lo1ahDUst2CtgJw: '100000000000' + DdzFFzCqrhsiCgr7CZiyWH6W6tyjtvtgioRozyXxbZiJRWeoFbDjnYoWJHewAzG5KzShpziKPB4HwkePga4vC3U9UfRmJnt7Qe6MwBcR: '100000000000' + DdzFFzCqrhsgdPsjZ5m4caLfiVYnkr8YWtkYMwRVhUZ4eP2Jf5AfxyMUKN9hfi9pYQN3T1kUKJ6DWYQWGn8a2GhtH7WjJrD3d1ZLwRDA: '100000000000' + DdzFFzCqrhsxaar8kBmcyRyFX52rEh62UCDT5K7ygP9Zd86E2DVj5oPzyt9sYwdWanRVJpo9z9JuebxBqBoLoSiB1fSPW7R4gvBxsdpF: '100000000000' + DdzFFzCqrhswDdTbDRGPoLV543U3f6uQ3HPSaCb2cEhJtTXxnTTz6Dkr8YmdmxB9zLem2gm3nLnP9dmhoiLzABBTr9JYd2xuQmzzm7Fw: '100000000000' +# "model", "hundred", "exact", "control", "random", "cross", "burst", "fame", "ladder", "bleak", "car", "virus" + DdzFFzCqrhsonkkxuu5cjVich3NJ9paVDNssBxCgWgCSV8eK7ZQkaJE7fnbMkBvgsxFDVo6L64FAVpWKoaVT5cjMQm6de5wDD4Z8cNVy: '100000000000' + DdzFFzCqrhsjTdHd7rTBC43Fic5kYmcT78SrgQ6Cn51c6vpf8t1c5S7LcnLJnjRVeVVEz4ykMhKPcmGhKmzA6uZkUP4aTkJtCfTJ5LoD: '100000000000' + DdzFFzCqrhsunDv3V1z11dvdjGLb46Bkfbpqc9tqxJCxDraPeFNi6Kz3KckrQqfJ2TmWifdu67X6Ai9hzkALpEbn3v9q2BasmmRnaGri: '100000000000' + DdzFFzCqrhsforRn635ApD9XFg24kRkhgLakJn69cvZGeg3Hr36BHKD8pJB1hqpfa6uKQnnEJ3TiGnNm9bvAtXsYEHcwcty44dqm7Jen: '100000000000' + DdzFFzCqrht91SEEmwLJpadLebAKdnxJ2rwSWcJnDP3qSn5jEXHNd2xzfzNsfvoT6AK5CENUHV5Cusi5fsM7RBYqKmWLy6ShDXoifCAU: '100000000000' + DdzFFzCqrhsmT5CSkBW5WCjk1taagdZ1mxmqBhbugNymrQWEwVRCS3rsyH6i8wmEzAWSxGCGMDVEAQbgDB2NLf89EVrkoRRMc6m8xvDv: '100000000000' + DdzFFzCqrht2u4XjNkia2UodGYJrGfEGVcWPG3maWE18CtJ7ZoSYFdz8sJg8kb5tGzJKagr9DzWrq5MTru9MeRPxvVSuePU3XdFsc18c: '100000000000' + DdzFFzCqrhsgUJnGmaj7M43tYXhL6K69MrzwWdvJaPQeCjcM2GXgJgsZ7qqD9KERPPzzq1ifD2idguomjXaBmFRZbv7FBE1KyDuUc4s6: '100000000000' + DdzFFzCqrhszegz1idFqU1qhtnVoByyaynPMJ8LiBY2bfbt1t2prS9P6T8Dg9QBgAGDfyFDAtCcbjSEt7rjtUjkkFN9fFBsXQZM4mgC2: '100000000000' + DdzFFzCqrht6hfSPjqHQR5MT3EfUshXNPNXHrUvZtiWSDWT5ypCXweSxYrFqkuCpLqHAUEuyhe4FyJ7TRx1nPwUtMAZwb42Z8chjjoF3: '100000000000' +# "ripple", "lazy", "void", "zoo", "social", "plunge", "badge", "jungle", "similar", "draft", "lawn", "execute" + DdzFFzCqrht6GHvq82ALWW2Qtjgz4VJdVtQUEzkQvTh1eQ5JZdrkejuzjWPqCM9hkPHv4v9bhZfqfszHNX3XUkes9H1fypootkBSVCrN: '100000000000' + DdzFFzCqrhsfNtk6jYMKvxx5RQFtmuAygL1ZAKkhxBysZxD3RhrHJeupZNzo1KaWQoKjTf2Cd4ueHrmur6XHCAs9w9x7BH18ccDxtQxs: '100000000000' + DdzFFzCqrhtBRPp4B9CdceqEFeL4uoCxhyWTyyUqfZ2U51hvo4MHWe28Zk3VwintLh1tvXk6hP4jc98qcKDxJVk4AZn3fjN5uhELYn6Z: '100000000000' + DdzFFzCqrhsqAM93CqysJRayLqex8TvZVS1LtTwShCUEWN33raksC5n4Jz2xujaPz3MjHqDbpGfcCC3ATSVAfM6BWo8ak8r7WNbMauMG: '100000000000' + DdzFFzCqrhtBMojc5VESzeJ8tYVNktLXTxoxrS8yuGgY336o3QQGvEJbMcKsbJfggUSMdvz9ZbnbRGoEicn3QcrsjdfyTf2xa4rff1p8: '100000000000' + DdzFFzCqrht3Tu5czKRrWA6arGmTwk9ngNjBps8Gw3khHUkTPAtDpte4BYMxE4NrMndNPEAg1x7rMZCBQtKoLgBS13LtRqnozyA71MFQ: '100000000000' + DdzFFzCqrhswM3h6D6cuY4Smwir2SW6qPiGQP5hFS63qCSQLYkDqSFtkd9YXEZBAN6LhHU699XrX9KhDyhsSCZ1B7YaSseuUEkEoDd3j: '100000000000' + DdzFFzCqrhsqdy2UgVgpZcbEhdU6bkjY8pb8McWsgUq3MyXoXXfwzKrRC7Ha9UoVUyx1tpSfXLoWhsgdmhAt8rmQJcbR9L6xNUiQxbHV: '100000000000' + DdzFFzCqrhsuGxWEdM3r8aS5tx1pzF8TFW8krVxGVJtSvUKAc6JGWye8RwGQQ49jmhMLdLdazrzqxsXGSVUeCVLpw28DPTE8bcUqZNkj: '100000000000' + DdzFFzCqrht8bzmHHCZmA6yn1U6utfX6qPuZm4t9wuFWR4mpA8XtBjQw3LSgScWUwXasscTetedRF2CrguEnM15yfBT1FaFS16wZGok9: '100000000000' +# "guide", "penalty", "erupt", "plate", "benefit", "moon", "motion", "sing", "envelope", "range", "midnight", "spell" + DdzFFzCqrhsv9NPjstKN2ucUp9zpN9S1qCRfS8geWXVY6DNSruj95UpohYxV66MnHw2un3QgL5gBaUQPHrRpFUtWkXpuU5iy3PPCnMmV: '100000000000' + DdzFFzCqrhsgHWks4Zmu8YfjnUgTY92bL4KJKopf8CuPuHeqZG8R7hm1PLZT2eJdoSCVkdAJYGvMxjM2Nz1wDV581u7hh6RnhJdpCxmm: '100000000000' + DdzFFzCqrhskpEHqhFfYYcQv4An5bVBZmEEWHUM1s6SbocstXfSUqqhPmPmbQUUamvssKuLrWip76zoAohmRcxG5Y5yeixGPPULFa7Aq: '100000000000' + DdzFFzCqrhsm9bB8qYkfKTmLweiv7saHCtTgvmjk1wbapktgnUwCiEntRgaZpcEiBNHttMRURnTK8cURzjfnpwcJuKc2QteDHRtHrc45: '100000000000' + DdzFFzCqrhsgu18fzX1oKxEPutnGsSQAh6wf7A974T9mgsaLrCvKmqnUp3y73kw7pVuJfYJWtB8XQnTQKGJrNNuwjuJmtJ2UFqoAQpn9: '100000000000' + DdzFFzCqrhshz5SZ8FJWckBeUQywicwbUJMrmRSE8TwoCLscPTxzgSrrrmrgKdWXf2xdQeoAfAfNyJLQ9Sh7XSZfwww96eWhGzFmZrC6: '100000000000' + DdzFFzCqrht2ncLwKpXDRbRXr7wgvURkFmqCujbTozRzukDC69H8ue8ZxKKfftYawN82LUZ1dB68Sv7sLjouJUQyfSznToc69g47Fyac: '100000000000' + DdzFFzCqrhsjsZjAVx9u75DMW9h7daAWhL7V6e4YtaQEz7f7XMAge14rt2m4rbDA9DpMp5YmzAhy7bjsMRb8s9obEUwyTT2EWTni9k19: '100000000000' + DdzFFzCqrhsoWc2K4SiFsM3BgbfS8fru4t6NzXR2FGbeoU9MhdQWXdmKn5SCEGCfGLfGehoqsx9fDJSZia55hBopYoRoJ1SdUjN213cb: '100000000000' + DdzFFzCqrht9FRFEqbyENDVSvKhbzwxGEW9hGP9MfdYvx56PWKpWPPevNSL1asq7c6dJCMjzRrzgAipaLcUE5vixV718zuwKoH5BkJaz: '100000000000' +# "bulb", "normal", "curious", "leg", "essence", "chronic", "envelope", "cannon", "comfort", "spare", "private", "uniform" + DdzFFzCqrht6Y9KnEi9jh35Fm7GjWqWrW5Cc2Wgt4rSJM2gBC5hmE8tPbCm5ywjfQ8aEHP25VDmCFcTHfMk1G9w8GCZMHQBSGGVUwWw3: '100000000000' + DdzFFzCqrhsnKVE9AAHaoQbPYjXCiEbyMz6uzHCAMx7hK1K2tzfroQGp5dS2C68Gy28vMLvcVu6F664Qw9iChsVoFWL7hqeMp83U5TCP: '100000000000' + DdzFFzCqrhsjPeuAtJF87FUXQBUKssugSf5rsYEUoXTNcJ93msNs9riEyAmzu7YVgQdxwmjmqfhbNTQZ469SfWc2V8Ert3KCcSYTjVD6: '100000000000' + DdzFFzCqrhsm5bgZv4SFZ5vC2JELPadbMWSdj6BP13LH4Z7R6uMHVv2Q3Wvxbf6kdJUCk5S5ecmM1A6xLwKvuDjTAUjX3VD4ViEnYan4: '100000000000' + DdzFFzCqrhsnAzD36uvr7rHLhU8GaRuNkNhX1MpKtFBmHYkTvUqGrjjab9s2EviesFvat7HL5tx36XovBkgFBrobRh2fGCMH1CZ9EWmF: '100000000000' + DdzFFzCqrhsz3nJePTVEyEt62Aopr4npWnwSTxruNwsFsVjAHHWeijiZkW2G5wACy3DTdsBGxb8WzahS3c164Qep2Cm5HfzGrZthamLx: '100000000000' + DdzFFzCqrhshhEsU9gYh8uUf9nxYDNSJYojJ9gaDHTtAYwr5nswEdpDDyZ2kkGvndVXxdENYNbUyyW9pzCrvrf9gSrbUWdnuE7XE4AcG: '100000000000' + DdzFFzCqrhsmaGrdAfo9qovx4Fv4fnF7JMFyT1kWavyPVsLTCjRcCXvCxoKYeTqP4rTsXyVNUD6UqZQEDNxGNV86ZbjiJPB5rNP2rtoa: '100000000000' + DdzFFzCqrht2e8WbaAcCM3GKzZBD82rh3cxyRs6eUyhW2GgpNdK3keuk1QeVhADoQs7GG6w7jgiVycKsWQ42NyRqQogtCdBhgurTuoXf: '100000000000' + DdzFFzCqrhszNkS3hGcKJH8VQ7FuLU6Yeuxd3DZ7nF8xT91YioDf4kzxvEYUfCA3hxQqkD4GZY8rA4sY4BHW5GhtQn58tMsd82B78DdL: '100000000000' +# "tongue", "cabin", "enact", "square", "feature", "prevent", "journey", "pigeon", "valid", "unable", "drum", "opera" + DdzFFzCqrht1EW838ajWUqZjmvz3xo96xPF1WonDDrTGbq1RuHjYgAuEmYsJS6QUe5Kys76u6S6xwmgG8rerQKh8AW1gfoEHEKQA2YEQ: '100000000000' + DdzFFzCqrht3f5dsciyPRVyKy2woNhXdtp4MegSw8wYNw6cpQZQDt9a4Xn4RL6dBiovb6nSEGFMDLnAc4UoC48oBZEQyBJcHekLc7si5: '100000000000' + DdzFFzCqrhsoSkMuK7u2ToM2rGWgseVpGvpL9VGwPqHyAqSfg8LLy9tsLfZQHp2cJjPTSoyWJh4bMSCAq7dx9oEKXH1pZMi5YAAb3JgP: '100000000000' + DdzFFzCqrhsughEFvccCa7mRD9RQZoL88h3RTc4WZ7SoNfUbiEofBgJB8yRGoTKgP62BSpew9JZfLtSsfXSqKzfLkLGqVaqrHNQWpCMQ: '100000000000' + DdzFFzCqrhsxN3xy6B6b66zHZVsrJQDFdYo6Lw8WTAqS8bNJ2msLU5oqUmcviinqxoNGBfSX6rrq1ba9KANPZ62Jzd7jPnrxUASkbSEX: '100000000000' + DdzFFzCqrhsiXmakPg2y18FAbQFKHeHtZX8VZNd4XkEx5WUm4hy8pAhSgfb5ut8cDV1sE2Q9aVBFrRk3D7iojXkWucCR5qA4F5Xp9HtR: '100000000000' + DdzFFzCqrhsyzSxVuScVv2zdymnpAfKRuUEJ4aMvWfkPBBwFGUpUy8pGcEAPoZT6rCpUxcXJjpUFMZJxfGhTLVi7DxhBQn9WciHyUemc: '100000000000' + DdzFFzCqrhsx7ybPGKPrGo6HEvvJEwh8MaEbqmhKzq3kmWdN1eRRfsF5r6x2N1xVP5EucvLgMCULCWJ5UxsYNeEnVACu9U23J1uXi5rD: '100000000000' + DdzFFzCqrhsuCzSZjeuoACKcbeqFdCn8wnsLfWahoTsxEiQjvtnurMKHeA5Uovdovy2eyzL1dG41La2AYew3Sz7qGsydFbbYRidmHzKc: '100000000000' + DdzFFzCqrhshZhZXSqdg9LJ6L5ucgfosECYZswKNZTwFZi8xQWiCmrXnUrpkZxioyNUd3cy98B8tLXHWaSkJXWBb8PvAGhLUAkMPfLsR: '100000000000' +# "assist", "pact", "vessel", "spot", "fine", "fine", "crouch", "body", "gown", "allow", "hair", "universe" + DdzFFzCqrhsu65W1ihdfX2QRRZTnSzYSi2qCaZLv5nya6sVR4XNWeLHFr5XePhNKasPjorBzqW8qch4KNQNbPdJWLBDrshq6EwbXznJm: '100000000000' + DdzFFzCqrhstvbwMaERaLV1pnPuM6og8hgnPewkMVkrmhNkgnTB5rgbt9bEPYds14ZV6dgXVVhS57YLbaGrDjn1ZCiU9SF83Q7dXt4jA: '100000000000' + DdzFFzCqrht8mTWFtdmmwHhHC9TWBhMevmXpPjFSefWayVyBxH3eNAd5q9WDWQy8krtzKymrxCXBLL59CvM6LmYDrtPcHJy3DK8vwwUL: '100000000000' + DdzFFzCqrhsvoEZRtPAhpbMvZnx8ky7FqJdPJmKgpyBf27pXaK3WvrrLeBGjM1aR1qjQqaaviABTVP1wsJAfB4ZCZcXCU9RfrdZqWvt4: '100000000000' + DdzFFzCqrhswxeRiuBVPCJSnWG4oe6vkN4eEjHstqHUTuC1QeKzjCn3jN3qP9Gxu2hXAb7vgLk6nKBYfCKmpCe5q6muM4MPjQ19WUBMu: '100000000000' + DdzFFzCqrhsubCguPahemcTZtmNoZDcwP6nJMFoEj3hkk6yuYeK2EknkZqLjMnkSsLGrMcqdbsKiCU5SPHUyK8Gc38McSRBpBJrQ581y: '100000000000' + DdzFFzCqrht6HR6fCfV34AUyvR3YyriyhpAMLpdcPj9rYd8xkRLH7U6xtdPGLtaXHExV66C4Ets31i8Hnq5NrrkJ7urSj8MUtEBcZMKX: '100000000000' + DdzFFzCqrhsqkj4dLvYnxEktx6oWSS4du8MNyZfFrj7kajyQ7sXY5KqVeCqpVij1kQ1SBJbZH5FvWo7xRWYWwQUeGjFyCCZuRNgqE2xh: '100000000000' + DdzFFzCqrhsiuqpSe6YrZyioZi3BGCGVx531UBP9h3LbTppppb65fwG7R55TJG42M3z91LZgZzqaqyAGqD1kBjz4b5JtqR99QMNMmE73: '100000000000' + DdzFFzCqrhstgeTg3vnEmbERQFuSbrQ4B1HZvo29bCXo7xkBjs16GYKRNbWG7hG2sSdosjGk5eyMhfiBye8H3fp2pyVs3Mr69CSPkkxB: '100000000000' +# "tape", "glue", "rate", "squirrel", "jeans", "canoe", "bicycle", "sausage", "lunar", "pair", "fit", "ice" + DdzFFzCqrhskQMk1v4faf9q3RLouube1N6jaw6tEn3sE2YUmDDQUjnAQr2i5GdUuKsVfJTSKkB8dXvPS5zAdp5Vvu1nNBvzJUBZBHWfJ: '100000000000' + DdzFFzCqrht41wzTkjmzB88BcAhYFb6iVSMETpC5ZvTES5RQJvfG9eGMwPSLFQRXi6uotWKaReTsZyUXwS1LNdycV5CFPWzuLQtAGgLh: '100000000000' + DdzFFzCqrhseKzWFXhjHPhPM7E3tBfCzLQ5ncpwzqJuH33prMjBEwJStzkMDRAE2upsBXdcn5iPCQe6qy9Z9vBpv6U2PUY5ZxeNdP5PF: '100000000000' + DdzFFzCqrhsfBp2xYs2xqAvawVVjZGrExgsEeTqhje1C6yFQxQhgHNavZKL33XpRrG1J8SJAiMtsqQnCBcpSdgkYDEHvfU6hxESboxtp: '100000000000' + DdzFFzCqrhsr89fgkp69qpxL43ymQt2YNfwA45cTMHu2oviPQTwyJisize6qSiDrLV6CtAvkkERJN7B8gpaSSdKRs7FqDkcuqjn137wH: '100000000000' + DdzFFzCqrhtBYPNBfhVxkvWzaBdZBtNKPR1gLk6ph3sJVVC7djbQsfJRps1vWsdj7Ng9aCYTF7ZvdfVzF7YKKF8oXE2mF4HGHz6kNgft: '100000000000' + DdzFFzCqrhtAyzeg1JJPsj2RGJhh8CYzjApC5aGhxZ45fgPGK3rUPE1bdxzREeZXkEvbVBnaw2h2yzBJn7gkb6vWboeBaD1D491gDkM6: '100000000000' + DdzFFzCqrhskpfrsyafEcXqaos4Xh6Kj7yXTQfwN3FvofwQhbMq43UPzQLLmQBQ7LtkYuJvVybRcMLZgrhwVaJ3tVZqLnq3Mot6GMatW: '100000000000' + DdzFFzCqrhshCqg6rq8wZXZ5GnnSiZkSZCtUwaagL46wxp3M157jzMbF1q4XhDrfzZmc58WxXwa8AC9uSb1wD8befSZM5dQJYrmDCoic: '100000000000' + DdzFFzCqrhtCVAF3SiP645MiyAwRvbaq34FryjaK6sxjFPR6P94P91ZPR6wE9nSGeuyjMwJeZpz1jT3HLnuo9f6XszNdFTTnEv2gyy6K: '100000000000' +# "chronic", "soda", "history", "famous", "owner", "print", "student", "wool", "pulse", "sound", "melt", "gate" + DdzFFzCqrhsiaRM8xydosGBPRJuuzzX7yxeHAcHdGwWiqHzyqe738ytj5pNXtxfHPDYWD2g684hNaxJipt36Pa9WsGHiLJk884oCrwu4: '100000000000' + DdzFFzCqrhtApeShHWGcxv2Wr9qwbm42XL5Xe2rekV2fH5v9tRZXdV4Mb2KSDh2U83yuNSoJdGDwPKmfjWPoKWhd3TtWvpx1WABqR56p: '100000000000' + DdzFFzCqrhsveWJGTgC1ifyEvBBTQmuFRfL41tGxGKQCVnAGQtdU6rocaiPQvvw1ssQDtLhQD4pA8QVDqBTQ5MPaBBricDrBMFGkUnqe: '100000000000' + DdzFFzCqrhsy9HENZRDdEzGfhXj3rkR5CWtkW4TjUYVYAh4T3bZUg8trAUiaHtkdJbVAd3YDX2YEMqFDSvPUXisDC39NpU3c7ktL6YyL: '100000000000' + DdzFFzCqrhsv36gadfxGKDSx1MpWcmVAVTQpPANTbf2LujHux2Py2H9KoEY1YxHSauXxiwRiiCwpVr5A8eXoov9C4zZYDdw68A5MV3Cx: '100000000000' + DdzFFzCqrht4eq39dq3RU2uSppUdhBuF8HtSgK9d593XDL6rYZop3BPYUdZktSpYA8yif2cMHFDqYFmFKuPkAaQW1PNhuaeucqCroozh: '100000000000' + DdzFFzCqrhsm3qRzxcPFMQ8Lg62xPCEdMH1pgJrh6gQsPU6uDY95mxAn82Wp9Aktjs3igYRnoRy5XAbv8cbbQg1pdJpsBMqbuQVfFR8M: '100000000000' + DdzFFzCqrhtBvpeuo7sprBafj1ueThBVV8xCEL7GevccZv9RJBCShzi9PF3qTssk5PkDwKxLxrESFaFCTpz1ZLa6Kf2vD9cNsvycfbQ1: '100000000000' + DdzFFzCqrhsqy43jB34f8b1bpJUQyobkhmk9wbuFeZRjgpwRpM3qr9CCsgncDyUpedSEgzkY8UXVMLSH4GxcQ4SKrqLpDW4Ko69mqBMT: '100000000000' + DdzFFzCqrhsqzemHP17k8LZMtmaHcsBwgFLy3LP6pZ6wjPRs8omh5AcsjBczXEqsf413f1JDw8tFGHwhx8QuDut6Nh2kFQx81XhZtAmX: '100000000000' +# "exist", "arrest", "north", "tunnel", "height", "style", "announce", "real", "uncover", "sphere", "sorry", "sudden" + DdzFFzCqrhst9BUTdGX8sF54S9aw5jSBXSDAEUma77UrFjoDx2yKPEuVhWDMxpk6MWBMDhefBG65zQGCcfXjEf8AyAptQ5sWyee2Kwvo: '100000000000' + DdzFFzCqrht4bPKFXEERy8MT1BcDmC4npEfiSPQL227ptkLVdHqy3dTGrU5ADtKzSN3MFwzyAni62bp2ZV8n5ZDjzHdm1cxAihmYySXu: '100000000000' + DdzFFzCqrhsiYyLaNVE2uhcqLmbdYQnThLiC6euJdrpyWWguLEdkhmeWGdxDx5Xaicn2w2fJKz81KMq49euSesUhvwUx6F427db7jprr: '100000000000' + DdzFFzCqrhssdaJHLMpSjwmUFZGH58ShswVMeMDoQRucHiDYGvhMrczymfti5QwB6FzfYhXK4X5qbdKXUvzEzsZYdr1rdZqfJaWzXktp: '100000000000' + DdzFFzCqrhsmn8PvGHjxS1C9FhyFzwNBRhXpZF2C7q1pkLFf9yHFCVRHnVAF5qpH5pVpBNdiEvNWhsQzUbMksodhnAEXYt58o4tK916A: '100000000000' + DdzFFzCqrht9yCckWrvTSynq5ZVETP3tvvLCMHfEDH8DqQj6H2aQsPw9KBjeAoSGvp2SAen2graUiAvTj42o1HXbqyR1xbauTRqo5Xuk: '100000000000' + DdzFFzCqrhsgHhQcRMrm3RPbBUwrvnanGbcchXgMHeQ64bqEJwdi9g69nS1U9UFvmB5nBDqRUjjdCbZSeY8XPM8tY4tVLuyLsGX6CRir: '100000000000' + DdzFFzCqrhsjfhfdSnS8XYcn4tTw8u5Y6SEYygK6RvJHC1uamWGuDNLYgwQNWnC91LFtSxX2R1yY87A6tYNEhFKQKF1HmX14xAt1XRxe: '100000000000' + DdzFFzCqrhsrT81z6mn6MTdLNt28sBUmnosC2rYCjQejM6tRDV8AKHqEbxGc4LQhK2ggScFrQ5za15P6LEAyXf3p8P6h8cjAJvhHw5MF: '100000000000' + DdzFFzCqrhsjdEjd2YipWNbt6jKF8j3THaW3Hj7WMGuXXsaWfDjvk2f32dgb8Njtj2wa18AGMKuU4EswggKuZ4zBiZahq24S6hyzCwis: '100000000000' +# "celery", "slim", "stone", "hand", "inmate", "enrich", "stem", "ice", "glass", "fault", "pig", "island" + DdzFFzCqrht4nV96FhGCupGNWmaCxuEtAmFeBesEW68cjy3RpLggYCZFrLPy7ykuHu6vKN3LidtEwSdtv2wSUFAadwTEmksjf1Sbi3LW: '100000000000' + DdzFFzCqrhsho5PGAWinxtac4QJxPQrYzRdK2PXV8gBUrF6i39U3MJgaGCogwynj1e8xYoTWVmPhCHsHG257Qihhu8hQTABUxtGirzbM: '100000000000' + DdzFFzCqrhsqokHp8w9JSAiQ7zCujVoC7C9ozRYkS8ogkYuwnbCTwqZNxCg2upu3eiA3CZjrgwBCarEibjYTj6BNWHwC48RKTKb8Ysis: '100000000000' + DdzFFzCqrhstWZnLR1tsxXSrWfNjRxbetZDQkJ5SB3hXsd6zEnordufxSpqdAQ4d2d6fFUU9GMPgeYpsAwaEgwYpkbGYpe9zZcV483Wd: '100000000000' + DdzFFzCqrhsytaiYTPHCkxnR6Ppet5MoETkLW7LGv6VkUAspR5iExDbjrGmR6kQWF8BisMphv6QuMrGLNPjVpfw8sbzxcgA7UB46LQLo: '100000000000' + DdzFFzCqrht36H4ECYgqwMpkpoYZH2Vco4jqrvagZJ3t76p8wtuUizatFvExcfydawjX8QtvPNrLkCgxoaokw9J9RCxPYQzj5ESTZ1J7: '100000000000' + DdzFFzCqrhsu4MBuLV8qG3GAD3zTXFqSLpaXpyFwvvhhi8JPmxA5WPF16UqLvKBewkH8wawggbRUUihgiZta86wAnHGN6yvwET6CGxFN: '100000000000' + DdzFFzCqrhsp7uHHYqrH4PEqkY1FMkXyL4eRwQSWUTMAUbH3aR2SMvYV8LmVtgjhAyWJUHh2Fmr8PrtDmjcFtNp5A1mRp7PmWkmt4xVP: '100000000000' + DdzFFzCqrhssoQazfcZfswz9GQcEmJLzdBhkzf8c8d93DybhsjEJ8J8yZzHxsaDAi5nWEjFcJTv41Zjrsy4Rmy1cgJ92RvjHK4WfgNuU: '100000000000' + DdzFFzCqrht73JH3X3pHv8JpamtLcTtxpCr5hvcPU42fGFz8jG8XR1wNfEa9hp3ZMFCr5AJLih6168iuKGVGTbCsMiiAt7pTbbeyZ1HV: '100000000000' +# "ancient", "update", "number", "oil", "degree", "virtual", "stairs", "reunion", "question", "toilet", "disagree", "deliver" + DdzFFzCqrhsrebKm7sFGGe5F3bfLJd7gaUt1JRt54D5GLWRCq8bE458dMdf53gTTueVYHYe7sv1GAFCaDNohWuWftqbsXtKUJVfQGphS: '100000000000' + DdzFFzCqrhtByw2NWvLn2yu4uyaqwBCPYNU9goY2WwNvrFJg5GjAKFHQyMnnNuoX7m4ZtheRWxrae9oUTP3E6XeVgkBDatcC9aMfs3iT: '100000000000' + DdzFFzCqrhso1L6xw4jTsBudSBBReMS8t5aKMLwDLKmz3vUAnCb5EksNTPjQdQgzBDjR7btkEwCtaA4yZuGPpoAmwL9EP814gTus3Nze: '100000000000' + DdzFFzCqrhsqKSLoD8ZcA9VNkNTnaZRCVesUnajTp766soeaz44t3KTve9pD4JTdpEseVpHyQVFfJZZwBqCYzqDkKEGGPcWp9JBEh1vQ: '100000000000' + DdzFFzCqrhsf3GKBLMweuuwwinX4hutK5P4Vet7op58hVZu6HXc4dShBrrn3wTqRHxUhbXx12NvDs2L6JukkKXgK8iSpb2PJFaN4ABzG: '100000000000' + DdzFFzCqrhszAprdFXZxuGGMYq81F7y8A73qc3rkyD3aDi6xej6TVHfD6d3KUQpu485zCQQUpRVWzBrb2fCwbFrRomN7b5Xpzv4U3eg6: '100000000000' + DdzFFzCqrhsx5LWMerjwfnZzKA3gVfdYCScV5UadAzszwhrag57eo3hdxLXHoXXiGXvre3npCiVzqK2TNwk7o6LGfLyb1jrNLpw6gE3H: '100000000000' + DdzFFzCqrht3nAENaMizh84Ve7yEput2HNsMQNWd5x2noTXNPEw9uuxdUa8b5y63PtxX9gjhJyEKLtRRPSqVQCJPnXyAxyK5tfQP8fNh: '100000000000' + DdzFFzCqrhsu87pssBC19mrrhTMhRjrp36fEVqCp4HbTVXEjSwoZYetxG8bqjzMXHCnPPfX8z7k8Lv9VQyCpJFUXfHU4NeB9uEnQRhkB: '100000000000' + DdzFFzCqrhskRrWY38HPw8yfYEjp91wVNUzRQ76qcM4UkQjY1kBKhfRjip4ieiQYXLFyoxfEqPkbPZ5WbGkB3CZhScPvPjPppc3PZkWD: '100000000000' +# "surge", "inherit", "gown", "witness", "true", "fame", "couch", "artwork", "orchard", "tunnel", "toss", "mom" + DdzFFzCqrhtA6YZj6oSVtqoSXrkUiHsRv9kpdxbohtZzxfvGaMUoYP7VWWdsczheYVfLt9VW5r4XFMscjcZcb2UGw8ykB2vFyxbQckQg: '100000000000' + DdzFFzCqrht9z4VHBohf7kASug9YRebqhLuWkz5NLADUR1YckG6CznWEvjPs2itEY7kG26vuDchGMvkwcF7NWyFxdkkUqHWhYi6h3NTz: '100000000000' + DdzFFzCqrhstM1aY9uaj2Jo54ivAePvGWYZpefwh6tovQWeMUSkauQ4q6UF5NUwukjzfF8XBNMR2tJhD7bc4E45kBvmKfaR4FnRiZ6LL: '100000000000' + DdzFFzCqrht44eVXvmjvLtuBHvDNEfD4fNTE23HDu2cRZWN3NLfkzpBapjReXMwpJEvT15kx1r2RTjkAz7LnuqAbAKaoBwG6g9krLWw7: '100000000000' + DdzFFzCqrhsggd6EwdqkEUBdSjbiALquH6mC2AmwDNNLkAdNY29sGx7HE27H3C7BJ7H1UF1CBob64fJiF9Zkqb53fc6Sox1KEH3YBQJF: '100000000000' + DdzFFzCqrhszudUhGSJkkLCJ586obG6P9DeXeweYG1fMfujcpf9BvqKU8d1ur72ZSfWfkM3v5JxWMExAw6Zv5AA5qJxaLDDF4PytWQ3U: '100000000000' + DdzFFzCqrhsymccaaCAmMmG6JxkoYaCY15F9VSFv8zDxWrdEA8jP2SZXMUwUEdYWhEJubuy1unRdpvUeMXFSL4tqY75QXUW24yfGvy6r: '100000000000' + DdzFFzCqrhsrbJp9CJL4N4RbS9WkAmWtX2Zco4xQ3HPqARe7th5UDF2XEJEoLc7cgYEGzPDoK3EDjSQGiEBzChwwsEjPGhwvwzDPkqnP: '100000000000' + DdzFFzCqrhsfocoG1xmGoaHJXhga6dmQtZ5mgBg7P8xf4swuWMJW2FZJxSrvx8TpAyuKhub45Ys7az9BgqZNRsx8kzZQSsQe5hGjXREm: '100000000000' + DdzFFzCqrhseNSpmQJVXqRrjwCMhfzdGcLMLNvXZgAyuCfYHjwq5A2UUBqibD4M2me62GdfD7sL6qBQCkEos6VSgcYMJjg8uSXiqXGpT: '100000000000' +# "oblige", "room", "table", "auto", "build", "very", "street", "margin", "faculty", "purpose", "shoe", "prison" + DdzFFzCqrhtBFw7EgiMNyUnKrYjYd9B6urwCN3WTTRpvAufSbgDmmoS98K331mof79YKfkVR1sVnf1ATPAJHH61AMYJQhx3keV9cK27R: '100000000000' + DdzFFzCqrhsjfM4ZyRU75YACkZ3fkW5pCy5YJydpCFqRDJatDh3fVjuxR8X4vENkLCVjKndZdwBsgErbi5t7ZG5pQ9jaLxyQtSvHFwLL: '100000000000' + DdzFFzCqrhspVTt8n3DxK6LkLveXermCBWPj5eKphpccFszTFS4mD9G2bz7hk4GczgTVuwkTNDPim7EaXfTXxAvanuPS3PDmMoe1RJ91: '100000000000' + DdzFFzCqrhsfzeTD8yxSDVbaMUgEkbQuUrZEdpqwdQjHpuPfDvpntaiBcqEE8TkJpG9gpbH8ar84nusQrB7iAbqb4yXCKDU5PKWaev6x: '100000000000' + DdzFFzCqrht6J3dL5pfC9f3cewkJTdXsCofBLj2sWVutDGKCKYci3fA2ATqtgyzahakBLjVbPTHEMCBkHFvxw9z1eDVmc4Z87bL3A3Kf: '100000000000' + DdzFFzCqrht5i39FiCMKxSV5AFN5nBeJ2MbupM8bTSg9KNcHv2XHBRZnxwPGFtgH2QpKGbEuVc9CUweu3Zx6KrGfm2dRPGiVFm5CpNiL: '100000000000' + DdzFFzCqrht8BN1iUe87rbf4vXq3b91P3wEX6cH4UyuSCJBpmhomgJZvXFAMG6ENW4nhW2oThPccnHhbPWMieaBbChzEgZ9dERgahnFu: '100000000000' + DdzFFzCqrhssae3NuNKnVvzmpM1a9fZMn4AuK77N9i8SaV8XgcKYfxCmN4HWWXxDEFjcxMkpESN12TpSEteGKWtPKoKEuSkqh1K7bf9d: '100000000000' + DdzFFzCqrht7DQte1tjKsEV53eH86em44gNDwDtJTiPwcupUEZeWDfBCM58JArVLCuS89jBCdUjpZ5cV5MTg55n2c6Zn6UiTi6aXXScF: '100000000000' + DdzFFzCqrhsusvfZkGxf29gy6t1uyrG2ihyak3iwemGjiXujtyetE7NaLg5cUE2kaakyYWYfpX5QRCBzBjMAWoHnxn9bydngLzqxhcto: '100000000000' +# "theory", "afraid", "tell", "depth", "issue", "cover", "pass", "vacant", "poet", "fury", "fortune", "cruise" + DdzFFzCqrht6vJoBt2bhDjUCUaCLfiXSah4qGtvHJaMn1L9gqH2SaffNwkitTiyu3z89DeVuFD4CbD6FBE1pSMCVY5osmU72d1yWo9g8: '100000000000' + DdzFFzCqrhszjskyvy6H3oBE3CAmViTtkDphHzPtjbut9bMPxrZaAoAvjJpuvhN1zfQkZHSweTdsi4BuyXrPQ22rCf5Bhea7ZopzgTbU: '100000000000' + DdzFFzCqrhtAkMhss378ZA33eDMwzT55PQHCnfe7FYuRMqwbYqhqTXH9QfnxPLaCkJkKAKaHboLQ1Ufxu7awexHRKQHTAbQLFunmeJ2W: '100000000000' + DdzFFzCqrht92AZbrR8SWu694B7uDiaecYzVg5z8udHZgL2jYsVCRgigrhjrsz6zouhH8D7RX6KEKp15zdAKtCjwwy6j5JA3EFtXnA4Y: '100000000000' + DdzFFzCqrhsoyT3rnz36eiX9eYxAVgrymp9z48sjJxntBV34EZxrhvExRoiYVbk7fdnQ7BuviNvvqpNmCB3hBtjJmj8A42pHgHiyzFYg: '100000000000' + DdzFFzCqrhtBjTmB5m5qsm8K1srWJAG9Kdt9F5e2w2XR141pXivAiL15u2VHok77mVHwo8RiBX2Ya8Qkde9bziHZGv6CxMJ8n9CQQESP: '100000000000' + DdzFFzCqrhspjaMkcHj6hChprqoRzxRAT58u919ZS8sLrWP3EN5FLxYNVm7pJ9VL5SGyp6QGV1UfjxymH2snUAQztf2VGhRSb3gMM8fE: '100000000000' + DdzFFzCqrhsuPxVHBrCzjYZEZ5KyMoyDzY8kiamuus3jWBvSm4EbZ9xFo8Dsf5cfXzq7ssWWWvu97q7YQWSeR7rMtfYXy96KVwH4i4o8: '100000000000' + DdzFFzCqrhsebh2FZt7cP8aSgDMf2o8iMBFfEpAbkVDRg6fUrrAQDBK53qQ87LUBnD6CB3KotdxV45KyHDnwv25pzXychWsUCMKALGZk: '100000000000' + DdzFFzCqrhsmys32gydWhvhaVMxKm4jLY8T5GcYjcAKrvizenswfKvhcxGi8fTMvwqUVBAhTePxaj4tCV6qzhrmTUgk9Ge5d4G9aFiy2: '100000000000' +# "clay", "mix", "capable", "student", "scissors", "ugly", "prefer", "change", "adjust", "push", "cake", "harsh" + DdzFFzCqrht71ZWyLH6Nt8dRB1vK37nGfoihNhSzw24xCVJ9WsLmEphVR2aup36PY3ckFDApZH6vVagVZgDWEhdyg9AVX88idWCm9Sj5: '100000000000' + DdzFFzCqrhtAPzJgttZb3LFYfsAVJN91vWB5qh9YBWHiwjg9uMqHX4PPsKW2QRMHVGyiAvRMwLr2t8QtkAfJa4g4XMieGzUFgpCavtVw: '100000000000' + DdzFFzCqrhshw6x9EqMayfUij859txSoSYHQa2qqZUrwYMNiSj6wrm5iJUWBh1oAMmeUnsNQcvSBP1n6H6hiWTNWFLjnTobtnUErCxN3: '100000000000' + DdzFFzCqrht5uDzi746DnPGCQ3Aq42hwSZbYg1fXMke5DERTPGhDD1VnirqzUC5oRJrDRKZMBC78bAAvyUSjHtLpud3tytzjUzbjq3rh: '100000000000' + DdzFFzCqrhsime3ux2vxCULpsTCAQjpQKxQFaW8BG6x4Nzi3GowBMpyo4TNsKd7EiZwVMBU3PfMupk5UMttwZgVr8XcGRGVNKz9sJkhX: '100000000000' + DdzFFzCqrhsxJ5JKBLVyoVCYHcEPDzoui5i9bTi3pWYMQAbyr1XqwEKVyDddwTXAhv4htUk31fGtmo47crfA7t2LszWzAQkDVbemiyto: '100000000000' + DdzFFzCqrhsmKhjdNpqX2WaD23zAnhmwYsPEip1NMXzRTXo4LgoURoa1S1qxR6NmTq1QY4E2zDo3anWpGjgnQ1t4Yx6jfs6befm7optE: '100000000000' + DdzFFzCqrhsyHw9BWhX5PmxzAyFVfybZrGpFgLMKrJF6GRPv2KYQn7jgXriU88oMrV4ARYJP7DDLmZgotivuHdbVDXvcp5vU9hMDvHAv: '100000000000' + DdzFFzCqrhskyMbptmV625ae221NrzVHoZCYKV5qqsDgusXxY8sPvJDmnAPLqtwtHmsPs6T3zXkmyXSpD648mmSjTZSZxKimXrtw2Um8: '100000000000' + DdzFFzCqrhsivpXNEmP7ZqNXReNPR57doCHNeWyrKtT5tqPF6bNfZnD8Tsb571y5KgWjKbvQ4sXscQPPEoFToADRUCyCJh8ejACSyZDR: '100000000000' +# "shift", "sunny", "brick", "supreme", "tank", "duck", "garment", "feature", "cloud", "canyon", "harbor", "nut" + DdzFFzCqrhshgzsD4r5KPuGZP4LpTYjY2xWRZTJ7G1oQYSGmzA7EoV3W4kXSWSChryj4E64dG8YkXd4skazjWjkcpFk3DDLTLbUApWn4: '100000000000' + DdzFFzCqrhsg1H5j5z4fgWqWxEsjRYEtUipcQmycJqEcjhiQ1JuZ75bDnva9XJ3V2r3XGUsid72rkgHBD1HossFYRxDyjgYD8FNdAtbP: '100000000000' + DdzFFzCqrhsw2aLZysp2j3g8RgybjfgDqq69GZ7SuwS8QtAnKs5zBdUVTpnmztrW5jAQCpLRWKTK91n7uYEQiVxBoCnET7FSxBQLnPFt: '100000000000' + DdzFFzCqrhshheEVbxKXs4mrSQx61LbTv3NALLi2BkY1uKvMFn64feev1RifahxpZ56w9pbLaWuSTHqzrZEZTXAPbk1T3JYE66axAHcf: '100000000000' + DdzFFzCqrhsuFUh87hptKqiKLRR7Z494cJosQ9kSA3DSq8sLudxfTUyEZfUXvetkFDtvJKCJXi2EGLFWdQ1adNX3PjjGhgMfA7eLZLq4: '100000000000' + DdzFFzCqrhse1dJXxMGtvpEkAj7KcodwGN9dp3qsmYvgiDSJoigiUykaR6tkqeZsE2LWNNADFSkdpCFJQe8DrgDsy7LDXt6Rup9eZ9mp: '100000000000' + DdzFFzCqrhtC6PSbZaMaXSAgvo971uvLGEQQ2Mx5bkaryDYB63uutqvsZJfAqxaBEcjWibTNLoXaCKKEzvYiP1tmoEdgqr3ocTPP79gA: '100000000000' + DdzFFzCqrhsfoxYEgtp4nNJUW7NV5GW2QnYE5XNU7aVk1Wp7CjtxnMFaV3jiQHXwS1XF94jWn6n41tCBmuTj9fJiexAqNHukQhhoEuXv: '100000000000' + DdzFFzCqrht9SEZiFkHxAqyo6UwY3Mo4q13dBZrzUk74DLcDoJMJagy8EUsd92EMd72nYqqBDYtm5FC7ihJVvutmeDMwrMfEfyBB9qDX: '100000000000' + DdzFFzCqrht2UjaBXn8kSu3xHhrJLBTvvNjjStCGsubbPJHib1nMLVokcLGK53cEvisuwhAaNdPCHbinD9ELYS2ddZvoQLcLBZaHSjc6: '100000000000' +# "delay", "exhibit", "social", "wood", "plate", "donate", "differ", "knock", "dignity", "sport", "cost", "visual" + DdzFFzCqrhsgTJYFraVxVhV9QJJatNikDgjkNxMbSqkiRRn3bZQwAaQZhNiBkJrBv8p9Ms7y2jBLNxR1YbUHMrh7FHzkGzFDV3SRpA8q: '100000000000' + DdzFFzCqrht1U45cCUrm8bsM93gqkT6t8drPeS9Hp7psrhceEER8kngKk8ZfHcxw1F3V5ZTk1DB1ZswKH1Ty4xViqckFe5bCgnbvimtS: '100000000000' + DdzFFzCqrhsx4v3EEhCbHLbsv4oHBrM9BkJUwQqCkSd2C4VZV3qe5SAHmqrngkBqog4YB9JvcHaVZXX6jWnZKsGCfHJ11WGmKQB956Ec: '100000000000' + DdzFFzCqrht4PnuBRmCV55uZY8MgDQWtRNPpFFjMwnQgvm7Td9ZfWX5YA6TQCVUprcpCVHvggRuMALvz8WMLjy1dU5pdEewdKRxxf86f: '100000000000' + DdzFFzCqrhskJg9VnyFZzbdvHL1zPauGxEbqX82TZ6LtD1KvDUCDY496wnSAmCHBxQ4rKwBVWc72qTWFuozWiEV5xdUgqutuWcGGB6qs: '100000000000' + DdzFFzCqrhsm3ymTTjrkHFZnHdcLwbTGtkcmv9W4GmGjZydSDAUh5dwnLj6FFfXqinQg2MnpjvVDfNKEK28zaVHaTgG5EYbbFPDor971: '100000000000' + DdzFFzCqrht8XXFJSkg5FpjzTjvEgcanCjsWxPZeQFSdhwjtdXSmxN3oADnSSzHns4HyH6tkxrEcaMYpYpPa5DBXWrnVkaRoMiBAdZVs: '100000000000' + DdzFFzCqrhtAjxVGbcYvP6SK7r42C5iWNE9gz1yHLEhMDj8kmEaaVyL8yH6A4sqEkyqLqdGvD8HUFxQUcVGtzEr15QEHabY8TsErbQKP: '100000000000' + DdzFFzCqrhsdvjyeD8dopUpmCMPnif8VZXVLgW8KLUoVEZYrB3noXnibKwP3GZsBVZTZAxksb4WBrBBLUiv4XGRiYMZkNtBEBRKVHzQG: '100000000000' + DdzFFzCqrht14sAeB9ErJbz2aW2SwLekBPkm411UDaKHoDpNsZf7U7ddJmTxFqfeXFs4UhwcYzLzBc2L34dxtsHqKzQsVumtAUdPwdto: '100000000000' +# "banner", "expand", "fringe", "kiss", "laugh", "muffin", "maximum", "program", "hurdle", "gorilla", "spray", "prepare" + DdzFFzCqrhspgqqqhiEKCxcE4uKkhG68qMmRqWqERbrZrt8DSKsGeUdA1fiqEhxjA7nh563x3arSftiznjasoEChGHYwfMMJxT9kvDwM: '100000000000' + DdzFFzCqrhsuteMNG6kTVgRHpQTbc6qxicZB5to9mbDTVeE5rt4WyCgJ9AJ7D7oXFgGM3kNs94jUDx9iWHGocry77DtN44j84KJ7MuV7: '100000000000' + DdzFFzCqrht3tQFfScPr9a4p8KsxYdzrDY5upr4mEcrmWaDkxqYnVcRjC8AabojAbCm7xEZbQPtdzZUWZRrFve5LY4HfsDV6PHhkKYEb: '100000000000' + DdzFFzCqrht5NCk6JCi9C2yzUQ8EABwkP6NekyAcvq6Dy6iQQ1obiXTpu1omW5p3h436W6PqiqmKCXsaaLyCGa4zaeP3HgtQdRVGPyyW: '100000000000' + DdzFFzCqrhsegqFLh5p2m5f1E9DgV4zYkLD9Vua5M8sywqYjwtDXTqi9HMjbF1xhnPAWksngEv1jj8B2Db4trtnQNi6yepJPpu6p8xaa: '100000000000' + DdzFFzCqrhsqPtXsi9Zn8uata1pvR8j6C7cZ9SJCorWjUsL6XG8XFWPooyeCP3JAn3R5MekSETGGVLyyBDAJN2DsXXrPojGfE7vZ3CpE: '100000000000' + DdzFFzCqrhszN3ThU4DkZL5ZiQtBerpyPN2ajtcEctDGeV7x55rigdPAKr2hvs9DiMV8EntV7nABeHNMNEZYpPqTnYoAf4sJSoKw6ALr: '100000000000' + DdzFFzCqrhsogHAxvYdHo3kzMTFAzMqXWzUp4f2GTGahLkStP6Yfm7T5N1e3h1DNNhkzgtYBPifiRjA4n7DYa8YPrcn5GWCkBbscMYbx: '100000000000' + DdzFFzCqrhsz2cZ7NN2JuwVAxUgF6VGFNLBHDQRYymMb6bpUwRM5vcYkHqvf1dRf7kHhh7xwViGideH28ontY87NkWAYedQtPmDs4Qnn: '100000000000' + DdzFFzCqrhsnAn2UiEjPYR6EbhETRGAA7Pbtr3DRdgWgzURD4iy1ciUqCHXNAJKtU2vD6h3fW3JFTFYxwTZps5bTZG1NvkL5Q7XkfX1N: '100000000000' +# "together", "sorry", "amazing", "loyal", "civil", "rely", "success", "range", "adult", "truly", "trade", "tip" + DdzFFzCqrht1cDfX6cVfYuK5q7RTCwattixFjdR11vxJgBnk4b2Fo4nNRFWmVAsTkb2XPkcb7zafwAPmVc44Ff9yNSfKdt5LyxA3zeYt: '100000000000' + DdzFFzCqrhtAsM7ec1Q79KN5HJwxfD5ZpEDzDjsDrdgazr6nz5kvWvyqWWAuuFUwshhJqvKHPZbbWsqSFBy9Y3tkPRQk2czYa69JzQSJ: '100000000000' + DdzFFzCqrht3Mt6Q3iAy9eTy9qZfZVVKGE7jejkeV6BfJS1AD5hpjtHDZRH5XzFV35aD8YDaKraYwWVzTZ4H8FxgCwqWCpyVfAfSyXTV: '100000000000' + DdzFFzCqrhsgHACZ7YZ2KdXj1v55refKj4BbGGGytahQvytEogJ14byAzFrBYWo6GosDak3npUH41dkUaV8f8iNHMsQRT7snPhC17PSy: '100000000000' + DdzFFzCqrhsjxFrHP6ynjGdg1FwhtcJNPHRQ2hkqv7dL1ZEtYYAa16KgL3Mm1tFod46YUdmWvFaWib3yaGgnKStCGQhhMVnTKZupNMnw: '100000000000' + DdzFFzCqrhskQdm6LtmQDD9t7J1TBTDVnCuopEWDx2WhcaN1TNjZJSNa2uu3VN6jpaFejFTUkTDzHfeUihkbxbk5w4A6KPATbgUn9Scb: '100000000000' + DdzFFzCqrhsq8GeLkWw54ww6oRx6GDw6VXNBH5joZAt89FcsW7FLZTfauhBagkLxQ29fEC2KUibhQdnnNL6wiD921srAfyHK4Mn46YF3: '100000000000' + DdzFFzCqrht5CEUKcBErFxVKnV4tuuuGxfL3yH9oScHsZkHEp7ZkSSziDE6MxFwdNKrQ9TzVEPuAwwLU1EhEEw1bBjcyhPgDSMc4QaAA: '100000000000' + DdzFFzCqrhsvMES8UtB5f8JL8WLHGdPrFcTv6bmUkqK7iEAoE3NbcnnCwVX8BuLyeMLZtuWi1YiUkc9ERiTYDZZDXQxenY5XQG1wT29E: '100000000000' + DdzFFzCqrhstBSoA3mpa5RBZ6TseQ1bnkvBeug9arVZsviGgCY6cSTrRg78NJ7gAcs71AYNrc4yVTpSi12GXcs5CuvHPYz3ptxEBbean: '100000000000' +# "secret", "like", "type", "honey", "average", "sword", "rookie", "mass", "blade", "myth", "double", "salmon" + DdzFFzCqrhsq3UxakcFtKdFriXGwzRyBghBp6njmD5nAnpQ91ubcjxm2pGX7DW6ZnHupAHDaU5qQKN6esRRYG6k943qaK3X8iiMd6ru2: '100000000000' + DdzFFzCqrhskvjfPki1rtQUm2G5e9BEqCzPK6Le99XQ94CGxUBqf1yHJbLMuEnGjyK7rW4RNqvfv1zzrTnQQW8rXU23DHMWtei5oadFq: '100000000000' + DdzFFzCqrhsfmKR8aCiwWVTUE8aWApRaAFNsqBPiPepkbLPQ7e29nLoy2WPGN7zkP9fmmXgPUVkXYaJRQ1cQXa6PdwerzFym8V8iD5ys: '100000000000' + DdzFFzCqrhsxWD9Npxa1AJryBy14aaeYpq89qdNEFjwiuWm4U4C5WJgjsbUgQF6mHQvWirt5gW9f4osKp5VPJYzcjVKyeiCRWs8Qp7Lc: '100000000000' + DdzFFzCqrhspGf59ii12bMaVPUer3zViQ4mAD2T4arK7GwftjrG5HmTRVpmRADwpFe7zktWFBt1nkxqznnLMiJr8KVSXhcak6p38Sw2D: '100000000000' + DdzFFzCqrhssPTdEzqQ3FR45czq9AChvpstgdAAb3w2qVG1XNz1Ev4cGwCZERPyNRhKbPdq36puHDYLjFAhuQMTMJXcvpeeMMFd7tdN8: '100000000000' + DdzFFzCqrht2cH3go3Bz4YYXXND7ASQXAdSgq5h1Sx2hy5BJgFEH1NkSJCX9XnuCfb9MExnaiVRw1Bk6GYXq5GFo86J9akvxeatD5L4m: '100000000000' + DdzFFzCqrht5KFdAHE2Ly9haU65WpFQDckd5XgH2YLpSttX2tJgceGiUfeyTL1QfPAwUgiiTsaHxfAmaCUdW7sBnfA35MNsmpoBJqQ1S: '100000000000' + DdzFFzCqrhsjEH72Jf1d1H2mTpHBRzKzTy9rWkNhxtniNVCaoGSQxSLkJ9aM3UvkGLcseiuvHDeUe2wgWVFfNUjHMrPAN7efFDKu9HYA: '100000000000' + DdzFFzCqrhsdxnxLx1kz62Hv2T3PQWrGSzq9tPmqdu1J37pZbyatxYLu6iEomoi3b7RdZ3EYHAYG71ydt41gV3dMbrmYgnavK8qz1R56: '100000000000' +# "buddy", "assault", "armed", "whale", "bid", "unfair", "zone", "minimum", "fat", "employ", "front", "lizard" + DdzFFzCqrhsw26CfnwSSgjPJkCsMC8u6eRmBoem6d1L7nSKV2wtyAYV3hqfTXcnvLeeS6fdVn3bBcJegcHuaCQihenQvHBB7C1z5jVSF: '100000000000' + DdzFFzCqrht2kUc6LtTMRAfhS81S7GHMcg8uMWca8zeZM2KS4fZnbtSeGj8Y3Aqz8QGdhKiawTcEieTp1RQy8DUeB6myGCcGKeohcwFy: '100000000000' + DdzFFzCqrhsvFagd5L4yJMCC5b2NaDyQ6i7jc2wFWzQu5kkZ44oLqz9Egye2k694iBuuwT6rRUUdMWYv1KVzqG6SeSv7rKgWZNFx3Muz: '100000000000' + DdzFFzCqrhstQfMVyRgzLeXfethXexEXUbmCQdNLYPpGWvg1zQWfh7wDEGy4QaTeeMbQ44RZvnWZ1So7yzzyT5UBF6cseZiUvWo9SPV4: '100000000000' + DdzFFzCqrht5n8w9UUgxpA6BbnzGPzWob6xcCmJtsNCQoyhR5RrGQndz13qATgrn3pQ5zmyu8UijyuGqbAzEB9RfGe1V2KSCcjCwVgyE: '100000000000' + DdzFFzCqrhsqmM3a6jUkdTdWx77WGbveL2vXjXr1edMKgDpPVgN7piVBcTTFF3vorbhoJjktnp88SYDG6U6HiHTxVHy3XYDKcvQdS8rp: '100000000000' + DdzFFzCqrht3WDVGybgYuzdJzrJMseMJ8Kau5qk5phLPGPom7b6aQ3YgCF65o8RjhtffTmLAk2pvrsnwdNfrusRkqeFyQ7ZWfHmY7e1A: '100000000000' + DdzFFzCqrhseYnuqkz3GJTeBbk81yDiEaENtjmbpmjKpufte5KmMBXhpoeHGNKkZ5rRg5Gu1fkT3frwLhWy9wem62YyWfZ7tfzTVzPpv: '100000000000' + DdzFFzCqrht6bNvuYSfPN4jahmSB1Uq6G3UuvawUC5BPcdxoT9ASH92NV3VkxzQFpCx2swnqY2tyJ7siAgZM54V2S6EEah1Qsd1n5qmu: '100000000000' + DdzFFzCqrhsqsX2poXx1YgSd1s2ezQtmzstWJ1dXCEKCAz11LwG1wUKP8RNBPSPcqQ4mPwW899KZNWeLHJP5HuEonTL7USphJoaAozAi: '100000000000' +# "verb", "blossom", "kiwi", "butter", "express", "other", "shoulder", "hold", "enter", "beyond", "special", "devote" + DdzFFzCqrhstimY6SK92qRmHf841S59MZXiypJh2oe9J5pFgnGkkfT5b48y1M4GgsCkZ6qYtTqJZA5vNd4wtGhmnwc7B1sNiRh3U7Rwn: '100000000000' + DdzFFzCqrhtBZLXzf2ev6kWwkjHjdQAYuiou3Ew3YZaFYMayfPLo2gMRs23R6dCHMDbdXNes85CmeLbXy66xo2s94rnAiGHDTje9CrH9: '100000000000' + DdzFFzCqrhsx1uqRpmhnXXd5AVioyDFiCxG6E5oSP5wDqESc49sSgkvxLBPZWb2pgXd982yoKjJMg41UqMCrSUjz4mXEhbHRMuUkAiTn: '100000000000' + DdzFFzCqrhsx814uitj7SrP3cFiunmghewArXvuUFGdekaVKUNf2ibKCDC7MWWqSvviazZLFS36JKTYH4h9KV4cfwPJ1B6x8YzWprxrT: '100000000000' + DdzFFzCqrhtD3U1gBCqLH1oTm3woUnRc9QuGucApBQfrR9Wb2Vom7eEZREL7r7qcPjyA7gmYEP6qMByLQQJR6HdZeU3BXhdCpjh8BZkS: '100000000000' + DdzFFzCqrht5vQCL9uJLZbrcUNHjPveH69TAj8HMx6gAcnbfAA18yd8GbmTLqj16j7encGSexZgy1my9Jh9k7sjkUJGfCpWkaGy3RESa: '100000000000' + DdzFFzCqrhsfdjfkngqhpt4jWALub9s31U1iGFzKYAiwZd2iLpSVdywEdhU7YWkN4bBhQYGu3knBU4fUT6GwhWg75CKLb5WF8dtLyJXQ: '100000000000' + DdzFFzCqrhsyYfBwQ2CK2aFg5sS1S1CnqkYWiUvTf4bL6aKZTb7DTgvsus5jLaW8sQPbbLCZUFJqjKh3Exg9vGMfgEjFewkjcgSqxpce: '100000000000' + DdzFFzCqrhsirqaDrY3GEHudjBKKbin1YFxhxsFPpfaQkJoh4gKJmuWZTk8yVPSENhA6jdVW9AdXrudBWXr4zeiZtmbPqTGzzPXHrJ5T: '100000000000' + DdzFFzCqrht3FErm1LHLUtvQPzrE61TPoWg3dvCaPRiTQ5dEGJkiZxR9eKqx9knhFkYBj7fmGYaHVkX89xvtkprepfiCB7hc79oWfqao: '100000000000' +# "exhibit", "install", "act", "craft", "grain", "soap", "coral", "jaguar", "echo", "midnight", "ride", "raise" + DdzFFzCqrhtDCtieR9HLGjPc3mvo6njY8kBwzQD6kQhf55zP8c6kcFz2B1S49KkxVymxtyLpE74zfcMCuSUTpesYPnWMrN2otyToYxRM: '100000000000' + DdzFFzCqrhsxFsmvzPJCLvV3UYHtR8xKZC2JLJugTQ8rMjDj5jAzoRdG3Z5dHzEk69N7z6r8bYLn3TV9Lbh99UiqbLAA9SvVeEapmJ2e: '100000000000' + DdzFFzCqrhsfEhPt2rUx5u37jUchKeNcE9EFKVUxNxCbRUHQFtwVcVJKrbmckmdhdtMpRHbvBpt6wW1ug1JzccS4Kn53FLH7iPhASp8q: '100000000000' + DdzFFzCqrhsr8kEgE5ceq2riNbJEm9jEeXU77CfFQ4bhkNjVEbea4RDVsMEbrpBA5xftjWK8wKugdxpPbMbW5vh8bjNPVvstP6L2MKBT: '100000000000' + DdzFFzCqrhspYmmcQ9WUEmmr5hiFpdRspPbWp4MD95E6knR1TnmW9KasGAXSmA5QkF7GkPPCXrUCVHUvP2ayVWCiT9QFqyrEUJPCNYQj: '100000000000' + DdzFFzCqrht8vv4HdEPw7kdn5rDd5CLUXfU2M8nCv2oaeSVvyi1fuzScUZy7sKg8igjmphPedJwrUraatb991z8QYX7BU2aM3ApivGBx: '100000000000' + DdzFFzCqrhshJv2hh6tQu35TGhj8CQpNHKCvEJYrdthkwUkX1CfmT3ASAFrHS1eEKxgxeeJKNciziGzNNLHcTAvZFyxMS9TmdstvHEEv: '100000000000' + DdzFFzCqrhsjp3PvdWZpcpsjjPJQFWosszkn4dVxVom9ib35B8BUgSj7UHSeUeVk9hDTSY5zVRJvGCBWwRDDS6XyPXNBKhrVUBF7rUUy: '100000000000' + DdzFFzCqrhszS9FxeU1gK1veSwiAazL5i6PJqxL79bzxFtik6oUvXhCaMRWk6Liznjef5FyvfqMJtd531ZkARDcAsE9wEUCywC3um2Ka: '100000000000' + DdzFFzCqrht2Hmtw1WRzqgnRHLHc21erPB53aJwab67UAaHay89fMiJqQ89TB4e149dCRNDsqacvYm14yLVRSPEbPAkF4D6qTziYEf34: '100000000000' +# "credit", "raw", "dinosaur", "target", "sustain", "permit", "regret", "strong", "abandon", "guard", "expand", "science" + DdzFFzCqrhskmq1rWnPEH8AUWqJuBXtRMRrz12QkRjWFS1eb6zkq3EsjmXn8WyU6AZHWWk6SLzre72qqsFmfUyASHHWjCophUNQtZqEp: '100000000000' + DdzFFzCqrhsvzDsvN9Sv5ASJo9ALQaHCpTr359qMhybZHJja74anQDiRSkFWrcN5CvsreedBeewJNNnAjBTYsKWy4dMT1zrX1uCGp5GW: '100000000000' + DdzFFzCqrhse4U322kYnW4K9V3p5DoE6Z6oYNLsyfztQn6kbNxvpyrkixCoGB4VFZzFuHAMCjE5ueCPSHPbz3JZPG4iUTZUu1SVyo9qM: '100000000000' + DdzFFzCqrht4uV7aS42kcmGAW5SGNenww7QJCa97Lez9wwPGqT7mADBUFrCUjX82ftf4hCVDENqumXfVKPpgErRMaynt3nweu4bbeMbv: '100000000000' + DdzFFzCqrht6o6uoFEtsNDPFRFhR4DmgSGmCYaDHAzcuV6PtyrZkPJN6AMbiBE6BkBGR4aioUYdwFVBgxuTsPYGjypZ1kAtXnjXQQEL7: '100000000000' + DdzFFzCqrhsjFqjm7WR5ZxnCgX4rUcCtK6AKTtfxZ2nq6mG6mh9JiTjVdQw5UZtaW37b8RUZcaH3nzES2jme2bLiiWxLQ4rYmW5tMJgf: '100000000000' + DdzFFzCqrhskK2z1eVbDqzMpxcMCa6VbCwoX21Gq4SJYkgAYJuUGbV3YYfy4qDfAoxKcnGbZw3dFxG1hmX7ciYP9NSoci7gWjtzxZLQB: '100000000000' + DdzFFzCqrhsp1VCERc9JF2Z3zxCmuFqCb6unSA37mRhfDtoMwityiMu94y9bAjdrfw82eLCG2Gma8LurTmt7VS8hPh8viSmuhrhGQYrk: '100000000000' + DdzFFzCqrhskq2aGJFn1ktTs7QxEkGR6fUyEX4tnGkMqm6b6oRaU4ecjS9pmALGpGQE3roBPdJcitu7ek89WCvDmPc8BrUwandzXrjb7: '100000000000' + DdzFFzCqrhtACHAaVWPhDNEpQELtgxC1hKJhvmPMJxDmgW4GSNBPfTJfQTUZusdAcR9raHgFa7Rc4GjpYdEfY2adAAXu5UtzrQDhgmnu: '100000000000' +# "timber", "grid", "cement", "resemble", "engage", "sugar", "february", "regular", "print", "timber", "produce", "pizza" + DdzFFzCqrhsuFkk97VQXq6LZD1SxEHvu9QAZCghaEnqugvvJEVismR5unpPpoAphVXSSarBSB7CQNd4PdtgkuyrQsW8hWTZXBgudX5FN: '100000000000' + DdzFFzCqrhsmn928sFHooNxxqNhfN6YVxyhVT774MrJpCwVRFHaf6wG5SCbv9NwRyRdFoeWEcD7fX8XiGmSnCgosU3HEmi6iGizEDjvo: '100000000000' + DdzFFzCqrht9Rx81VgehV84mqJiyWkNkhP2n9Jr6LEvGtXCPeDsX5zM86JJELau1XqRRvGZLTA8Ybsu4bim2kCrSykXiw4yHPeQ6zhJW: '100000000000' + DdzFFzCqrhszsGjmn6TztgRLBLogNcLSQDnhaQXqHhCv6J1CBVSuaB43jKVp5NcyBPYdw5ScNaDdHUMsLEtbGWnhym42zUEkMg66r8UY: '100000000000' + DdzFFzCqrhsp1fdrEw9nkeR72wNPiRw75ayiUtGyiCvn5T1XZnhM9cd3A42uX4gGsfXHtXMsJ7WUMgphAT9aX1Cct8bbYbBnsGqtbpgM: '100000000000' + DdzFFzCqrhswseYvnMZtSrdXQd1B1oL35mC9eUKGZvvESmBDSx7EUAH2xoAHtKv3T8bUz9GcD5aDqMg25tHpBx8mhDyTbN7vxRSPUGQw: '100000000000' + DdzFFzCqrhsmGC46MxTWh11T95Z3MhMG5m5S51z6Eatq5VGA7b7wEgH7VJ99uVgyFsUx3T212neZbS7WZQxoeFMNLMoPHC4PvJDyKuLZ: '100000000000' + DdzFFzCqrhsuv7nZw6AKfE621zCeggTMT1nAckJbp931rgnHxj4cUG4KfxLg4MfJsvNm9ZNcRAjeU4yH6HrF6MoQpMFJQKCRG7ymXtEJ: '100000000000' + DdzFFzCqrhswyrxiuXDhMYvTpmUwowm7nBjSBaq2sVogFF5KMYLfniumZGV5GSKmTnE3HDUEcg17SFsB7FXSsCTB31JEEtwpCS2EhoW3: '100000000000' + DdzFFzCqrhsscwofDdwRdoug4Yj43xVMTRqSc87Af8vWvyPL8ctmY3YBZbHNf7pkKv7rYezPYak8gFqhCof37ZVR1JM5QpQMqsM1j1Gb: '100000000000' +# "solution", "dice", "symbol", "ignore", "gauge", "exist", "also", "mention", "west", "pet", "rule", "first" + DdzFFzCqrht35BG5VRCEb7jrS8Zm5eMfFNo6HwtGr2cx6FGDdZYZMAnmaSyh9yvMdKzpSEJsWcBrQPTXqkLLh7Kr2sxr8sY1PJCtMNq4: '100000000000' + DdzFFzCqrhsqcNVurMcLit9T2ZCtGaThHqDtjiQk8XbUwTWwpzELWb7kL5m8pxaunQFxeB6QQGgeo48gcmqxw7SZY8Eg9XYD5cZ5uKVW: '100000000000' + DdzFFzCqrhtCQeGBhZT34bctGEd3DY86M5nYAFomdnaBLHMizEbNNcbqTpywmHazqob734QzFU9FLVkEPWjxBoxeAFioQvHHSJsGpkbY: '100000000000' + DdzFFzCqrht3EWhQFghHH1TPiKPTj286dcAq2QhNSjPe34ZqZo4HYcnUJDQFapAbBvXqnS5rDBJXwZqSLVf6t4FtfeBDxaXtNvzdT7SW: '100000000000' + DdzFFzCqrhsdq1PHyUk3DcdR7kf54QpXLGpJT5hYcDLRcxaWhvNVrCsqu6GKZt5RPjbV1Q31cBDCsVVMqg2xiwk93kSXwnQAn8w3LK3K: '100000000000' + DdzFFzCqrht4bPYAu3rPj9dNH584Ms7pBfPPEQ8cSLouZ5vMyt9k4Z8f2iyATEq1kqp3n8Rgbw3iFiLxVWS1HiZSuZ3ogUHzrZjf73Uq: '100000000000' + DdzFFzCqrhsm8HcYs4oSAFqbNqE4dmvtwjZXgaBHJJPNeW8M35PC6tMwnzcvP8k93YvUNChnYPzSNvsivXbWfYEDFFPLWpf3EUxyAQRd: '100000000000' + DdzFFzCqrhspqVPRJJ82goLXmwUWgav3VKes4QR3wpJgBfF75UV5Z57gSrvb8Sikk98X2FK7j9rFVts2Nz78pL8sFEQDyKtywyJz3CUM: '100000000000' + DdzFFzCqrhsoedW1ZV9sRi6fiDP3fijjdwBScYQL9LHmjttTW3qeACHKHmAUqzmTjggcxt9gcz4mMxFNYGJkhia22aaUTyJQqHfRbJBY: '100000000000' + DdzFFzCqrht1mTMgt8AYo1RiZYPHE1KZ6mN2DvEPper57SgFWHyqozbXoDPwfqcqg7j1PKhU2Fz6Ts1kKvtTy3adQBM2qzLpN5NnMLPg: '100000000000' +# "tuition", "cost", "tattoo", "vicious", "vast", "doctor", "prevent", "asthma", "barely", "orphan", "close", "bus" + DdzFFzCqrhsko6ir4rSwzXDvTMGD4hsijQxvQYw3Xb6pftKLnY41j4Eie5T4qHeKSBFdxNDEyCpbY9Dzjy7FFstDsAUdTe63JEAYccvD: '100000000000' + DdzFFzCqrhtBWQZs4fZiv3ZH2awqci59MkYCoS5VXK2hSZuGLHnHvPLn1nNPgRf1eyZW1F3uKHBZcphbh1G4PRzDsxpxLF55h2Y6Ds3Y: '100000000000' + DdzFFzCqrhshm6GhHtsgLgYj8Ww76zZe4DV5teHjAfrtezrZnzLHeneZDU9iFujyJ5N4QT9yzBX8RKDHKQn2DWp2mY5CN7t96Ym2su7S: '100000000000' + DdzFFzCqrhsyt33EA24bfsxWeQeRmxqkKCPsq4SXmDfsV8mwEcMeveXsaJpXUXBn3Fjrt1vDtvaECjWspxKo4ZcW9juBLhzEYx9HenLY: '100000000000' + DdzFFzCqrhsqF7uoaT7xgeMp9sAf6nTYecmdsQWxZdFNyDCmczaUn4wCQLMJfxALrCvwZmJpkVn6ig1mM6LFX6jcQRsMi9MyRSjM9tur: '100000000000' + DdzFFzCqrhsftvhD4KEfsa5PXhtEXf1K3AwtJnT4jXDMMgEEAD7gVsK6YKb5M8Phk6cZsuFnoBoDBHdBtGJngSumT6DS1iZD9xSbbFSK: '100000000000' + DdzFFzCqrhsePcXjw3jMJtXX59Q7LTTeMqXjRNas1Hcg6xEqAbL13HoWTv3fLJoXQ537GiQrM17WLPyVEBSfJiWJ4qRTdLZhUnoTwZmQ: '100000000000' + DdzFFzCqrht598xTNcbgJnUvKz8L298hdPYdx3QuJiC9MvszQQs3WNSi4KDk6cWjzZTuZNJcMRKmKNHpeBeGoSBhyjnnQWNJoxxhqxt9: '100000000000' + DdzFFzCqrhsuci83wQjAuydNm37t9qrmPf2a15kCbnnwTo6j33ZfU8YmK9ekc1n5A5cGcCgAkXZeXMz4R9hMnm5qWvP3GFBjv5hbXs3W: '100000000000' + DdzFFzCqrhsvTaSoS3EK7hc6EVjVYFA2jyKLsb7Hwy96Q2dvJ3nnhdS5Fayxqmp6nrg1rCVr7RAojgNnTYHX2CBZ46zFxCmgs4wwkLqC: '100000000000' +# "puppy", "crew", "glide", "feature", "bottom", "stumble", "prefer", "hidden", "extra", "north", "bleak", "shoulder" + DdzFFzCqrht4y1H2dmZjKLicsPaGKiV3nbgPDy9quTkibDWyDxkHJdyQoCjEsNYwTa6MVT1jCpdzmULarPWWDAHgRXLiRDmB3ELhWrbt: '100000000000' + DdzFFzCqrhtBMJt9hwoGbvwPvfJBQCUMkkmh612kbdAsuW2b3P1y5Tmd6Dm1FYYhbVitQsxVeV7ErfPKPYCP5eZ2GKmeqawNWsVjG7qb: '100000000000' + DdzFFzCqrht4FThHVnPfHeNa9nHgk6hiH5oRyvKB7oPCF4JTcrkAGWucFiPvsu6ghq9egZNpLvFvcGgjd8a4CgNw3fv5PAsjc2eF1Mu5: '100000000000' + DdzFFzCqrhsuK1xmMjeNjp8iNhNmDRLmVSRJddNMCnarR2Q1S6QhZH1CrKAoQA3uTRcu2uUVB18jFuscFVan9wfVLv9nMiHzvzb6EGiU: '100000000000' + DdzFFzCqrht7xu1ThbvWAGihXyoAZSfdRZbZaEvoVoTQ218tzjLCVVAWdmKEnvEXnDtSvS5gKJ26LR94aXjwpkZefGhZPipiu6xoQVBS: '100000000000' + DdzFFzCqrht6h8wFKpA4QZjACXa5ULSNnSMP5JjeviGB3JiFvqHiScsA1EMMERBUF2z8FsEv1y8iFCqCLx2o8iG7vNRf4Ego78Eid68v: '100000000000' + DdzFFzCqrhsz55qcBZWT48xn18Stbms8KdULWBh147jwTStQ8K4ECj3BYB8uSnegDZ2EzZQKkcpstuqPS68zZiAUNJPqFN24mEMoLtAp: '100000000000' + DdzFFzCqrhso1S2dBxNyzg3UhRzPqW9jAwN1Uy8GVZPKMXXLsSaFw5hq4MRSunJQ45gDbsFAQFwF3ZcwFfozPpkaeHYVwFZEL8bA8bhe: '100000000000' + DdzFFzCqrhtAev96FEZw8pZVRUFEPJThZ27Gtm9mDWVCt43RXo57FMuF9ZFYztyQ9QJM5KqGd1BQyzdos4gdaYbyzoLXtGxJGYVYoJAv: '100000000000' + DdzFFzCqrhsecM4JhNsDQBu9iS64LGGFMrGJrZRA3WDDa51bAVtY9VDRSacwP3nNURxtCbFXpFPGaMJnCRknTYyupWt28uUN3hbakW1T: '100000000000' +# "innocent", "unfold", "combine", "gas", "custom", "luggage", "cricket", "thing", "speak", "bubble", "pitch", "festival" + DdzFFzCqrhsf3RjyaGJ3ctLEdfZMr8SpHnbGTUzEXxw1V8uENw4N8BGEXnpJhVMnYoKyiYvvHQaNNhpoo4ZpVt5gy8oXiu2ur96RUSF7: '100000000000' + DdzFFzCqrhszhC9dk1PDjBNeqCwrkkZroQrmoXhn3i3hhsBdmx7fi2uSYFs28VGjurXxeF4Ve1PAYVa8MpSZ4iDy3t3pjKf1y3YrNBoV: '100000000000' + DdzFFzCqrht5ukJkfXpPgoQHWxXJP3PUjXLg126hSLWyz7DDubuFAsVoWGvpXhcET3B8RVk6pT3ffH4TWP166Z7RhDbawDKWUVmcCaDd: '100000000000' + DdzFFzCqrhsqyxfVji35rFdco7BBvRa2zPVHwX7GYP6ruYsnS5ebhrqoZFPAg75rXVEE15UJgEyMxKcbaknM5kvfmvYMMs4ubQgEm2sJ: '100000000000' + DdzFFzCqrht8N7Svk2Vc9wuCkWTk2WvET1iRxwkakR31UWDp6y6Bz8sJtjSRGjBWbjiaMGu67iS16nSpMMXZ25b4aUZ2BYfdzYeSgsek: '100000000000' + DdzFFzCqrhsqSZrmAQtW27JsZXzCZKekUBEeNhtorW2TcKg29MG1xQkuzif6mJGycsWBiyv3YKw7G5tpM3UvhhopuwPx5tuuFPNXNWDz: '100000000000' + DdzFFzCqrht8cxT4gBj5g4FZ1Nih5PRfe12mv4J8m1PpDd4LofMihn96oCfbhyh2gZmBrERwptJUD3wgVYhjMuK6z8QsxnpELRgtJbmj: '100000000000' + DdzFFzCqrhsrhPc7AgutQv9g8TUF6UQNXMDFqq1Ak3pQvK2cwrdg5924TW449hhwxFC8HcgSiJFDwsHtW7hc44XpKr8VNMaVkMho8Qpc: '100000000000' + DdzFFzCqrhtAHYHESKJ8qwYy5QKyGMHBsN5hKKzLDpPZo4YDDHqnbE2KGMy4m98JEvGWRbQZ4K6Lmpnu4jiwKgeiv8Xb3Y1k21GkQNyT: '100000000000' + DdzFFzCqrhshWphRtzfuCWYLJjgUxdH25WE8wtM5tSC5oQvSEHmBhXEYvp7oPtsn7NPsVF3vpkFgNVkNzkAzz7dSnVpGcK6DDR5vjYLB: '100000000000' +# "gospel", "garlic", "midnight", "enemy", "legal", "speed", "sleep", "discover", "enlist", "camp", "metal", "chunk" + DdzFFzCqrht9gED4v9iCwctdj1GmJByGLZSESFXCmW2LBS6uMJAzMmmgph25zphKiTaMy2Sd9qBSVYMDy4FiMQgNHjgWnQSZSWynTF2W: '100000000000' + DdzFFzCqrhswGabYQ8k3qENLQu9zDw5wzeCaj4TqKgoUSdCaBGCdFWTQmvwn9zexmk13AVzus5GvQRZew49PxRAc15KAXzvkU5w3XjK6: '100000000000' + DdzFFzCqrhtBKUS6RG2zETFgi8Aw5KxgXpgaiiCs7hMeKmouHSaQi9Jpyn9N1N3rZUJUi7jsDCkuBDdtsaz6ZT2Smz1WxbriWodvp4oU: '100000000000' + DdzFFzCqrhsrFpZrnR8p5nDAp5w8PVk6CHWDfZNF2G83erd6y64TK8bmHHfSXXiXZAmN2xYbruEPFSoh9XFziSWTdpUNn38UShYNwidG: '100000000000' + DdzFFzCqrhsoFMCcVAtQ2xgPLqV53CpgcAZjxTLkrqzrkGpRVwU21gqeu9zUi4PyxBdfEL8gHdPsSF7DhLuU7cseB4hVbjv4eX6EWZLe: '100000000000' + DdzFFzCqrht3hR8rWXM6RTp2yTAMk981YZdenZQGWpyiPwXRRCaCWqJzk13kfaP9LnLrPY34cSjEe6mnKQDvRwyWyannc5MFB9wSE4wB: '100000000000' + DdzFFzCqrhsqQ3S4M4GrJ6xzSD3HhA6XpEjUzRE5dKmfmaWvdamGzZYq9h7ZSDM32zr4Mja38zso8qFhJiM1oCTckjnDEsUDxS2MGX4e: '100000000000' + DdzFFzCqrhspJvB8ZbSgbQk4kkr84N28BVieeGDHQ3mSxreLQaMdWSk8M5Nt2qXdQ75Cpj2VBgXmupkoRjGbdr5vYHnhD5mduhdZA2a7: '100000000000' + DdzFFzCqrhsm34xyD3JT9kebupvpZMGNvp9gsFfChjGPMZ6Jfqj6jVRFV7wWbvVDhLtcPQrzvkNDgy9mNkfzZGntfGgLdHmdkHC2VjPD: '100000000000' + DdzFFzCqrhsuXrMEpjhkHrWAhi1AwYEAzWjS8nkFSBTsFxoUSyX4rVExeZYJBrsXH5WtBBXBbQfSL5JKdgD9PezWqU97AbhZnLWiu2wc: '100000000000' +# "lyrics", "lend", "volume", "cruise", "engage", "relief", "memory", "wine", "board", "scorpion", "educate", "differ" + DdzFFzCqrhssp3cHWwX3dbpmbT6q7NM9NMHrLBXXBPpGcM7YiNxCNCWttAWspZuhMMvvtJhSHj7Sz5GopKGqBVNB4s4wcEaFNXoG9Wt6: '100000000000' + DdzFFzCqrhsuZGbagphdmToSyBfShaBenxrGqb6AyG6afNZgVianCQPF2xTdrqHGMQFSrXgUSA4G6745reAdUAiHapeXW95yGsR7ZdSJ: '100000000000' + DdzFFzCqrhtCyezYjfeok8vQc1nhaEXt9nES1LcmVM5f37cLERJtzP4Dyw9sNrBH5q8FgqKajVFX8cD2jqNHn34rpPDPRcV3NdJHzXrG: '100000000000' + DdzFFzCqrht12QSQENL6dgBqh11eNWHziyAgoYfjs34P75iAV8iFyLGiuLPKehqw4f1r9M2sayNxxJ6QpCeY27EFQtkwJ1xvyLqBsx8P: '100000000000' + DdzFFzCqrhsjmVaxFq3LqaebaWp6Q6vzf1Pf3JLe1sX2iUkAAkzbF6EP6A22gWfN6dDjU4eMWB5YfyGNQ5xX16WMG1MqFja9hv2gyAqv: '100000000000' + DdzFFzCqrht3s6trpmevq8wY32vjMe9feXVJR73VvfrbzVd5qM8iTLyDVKYfynoTsv3VjgwMLGEu9ZPeUFLHHzQPec6kYUYt2b1Tb28R: '100000000000' + DdzFFzCqrht73tSGrXM34JSxYSnYfaaXeYXPc6d6iNeExruHXVmZW8hjExmNqAy2WatVFyenpQBZhFf8YePrexqmN87Cc8gUeuH5b5Ds: '100000000000' + DdzFFzCqrhskgLs1wihXSPNNF3oVJPc3GvFhsgiThv2nohxqBjVWhxPqoNSsRdDyQACLqwuG2rA32gLVM2W9K6Fbn1k1APs7PpRmJuUQ: '100000000000' + DdzFFzCqrhsmnVwuUHTkYbUGDTHkdGXKxP4UZbfkDUVC5P5RTTXYPs6tEGBeFTmkvZ1JT4Qvr91WZt3ACnxYXKh7zDQkDqa1XAehEU9u: '100000000000' + DdzFFzCqrht75PZoF7J1LGF67Z7DzdPUuxx5hDohvcv5abfBySf9Tf11BQ768m8QVoNRzhs7GsAmHZgjME93YLjwhN5SJ1eUoKQNH91m: '100000000000' +# "law", "same", "wrist", "cotton", "outer", "debris", "put", "other", "wife", "father", "collect", "chef" + DdzFFzCqrhsithh7MYQH3AVcAEtm4BaQP81SZzrdYEXguf2otCZb6PMrLo2fYDfCEvozwX6bugzXF7BB5U5kQ5gueeMQXHjjWGV4hCSQ: '100000000000' + DdzFFzCqrhsuUAmP5L5UH5yP3UmxfSdUNRAAr7dRz7T4EzK1x9y2PyLBexj88AM2xnvX8hFCtGtcTdHvkzrzjScwYR3odJgXomks5tZ6: '100000000000' + DdzFFzCqrhtBcj6beVnGkn3X886MS3X4HsCvztkxzibwD3zqm4EFDfUbbESeVT5Q97GryFhrgMBFrnTT2CTsPChabvXbnYfi5DAfUrip: '100000000000' + DdzFFzCqrht2C8t9xzvyso8WdFc99MBaxQTa2KiFanCNhjMwuU7XhfSSdiM13KpP9r4ZLJLvCmZAngh9FpxYjgTdmzCK3roAxJNMD5qU: '100000000000' + DdzFFzCqrhseH7ZxVicLqNLFRS6tHi63aYDBygFHWX7kiPi4WJjZLozmTnyPnn36QvzwLn8J2D3ZpffUUiuPh5MHVU77kAM1gJRZTUwt: '100000000000' + DdzFFzCqrhsvs8BUJkUjkezzNbPkW1UbvvtHQv4pRsJFn9swkWe7VNuYbCGZpL7APXp5wUNfQoypDjvGFtTQ1GttA6yhDEYBKUMCMGpp: '100000000000' + DdzFFzCqrht1Sdu3bWsFMW6CATc3RA8etJnh1cW9yqt6PtymxnSMkywKn7pemzgwAixjPfQtsPde2D7K5tB6EhZiWx2TakFWnRPa6Ry6: '100000000000' + DdzFFzCqrhszNktP2h3X4SM3Fsgj7fsi5mg2wRpEABjvQbUBz4kr7zUBJR4UNRj8BNR3xBcrqRHPVMwqB2ZM3ypiXbVmQrTXWDxRr5C4: '100000000000' + DdzFFzCqrht4nAThDbLoesmynPijtqvF2E1qPWXTqUvxdBxnZDSYNWQKR15zmpMyqPppYXgJszUa2w7v8Pe4iJNuFE9vhL8BaWvv2h8X: '100000000000' + DdzFFzCqrhszqtLSk9Vn2GhHkJpzhKWgigLSEf2a29EuuaoFLT9naACVqRMbo2sUPQetxj7XyuQtDcNzkYvJm3cEazBk4YPnRhfudJU2: '100000000000' +# "february", "expand", "decline", "sort", "pull", "silk", "average", "update", "spatial", "betray", "remind", "hero" + DdzFFzCqrhsobennBPaegJ9DS7vmpLHsHaMRSzjpkHcGET3xgk46WPsBZPLj8muG5uE3RYHg3ta12ApWDuqb7M1pVqRQr9PDjvjfW4zD: '100000000000' + DdzFFzCqrhsi2LJqKjzjx2dPYoVeNkZSY6xU3ExFSCMAqjRxhsjRqChk83SgnRR9U9PNkUM1fUQGsHPWwE88RDoCEpXBKswnanCFRF4s: '100000000000' + DdzFFzCqrhsvNLeV88Sca18ngaoXZMj5AKrAuiArrZPBCjvMpmM46TjpHwwgLe7jkYF83MyimCyyBrg2DZ3tNwTUyPh4arAanUXPxoyj: '100000000000' + DdzFFzCqrhtDDEXJUVpwk3hY7Qoov9qZ8opjoVfJUDXiN34Z6GtaKTsKDJugfrNshAW89f95jvKtrUeKeXMedehNcukU4uBoZmmdvm79: '100000000000' + DdzFFzCqrht8okn63zWJeU3YXfAMvWhVR5xX3waQdayPRznMzJSoFZ6VexxywugCGKJk8rmrF7jCGPmpg1J1yPBYM2aaXMpqyAnSMhGa: '100000000000' + DdzFFzCqrhsh8HnjvhZHNGLRDLQyNPoWVBsWJNGEwrUzjaxjP4mz4ky8qQfU5zHpjsHRENK6UwRApkhYaE5Yix5R4z4YKvi1NejavrYB: '100000000000' + DdzFFzCqrhsg2t5zWdHhi4YC3CdDw5WrH641V263P43ic6Bjvvm1W251SdaHXEphYdmYo4Sufd1aBo2YexVMWqSG7pShg2NBdXCw3qez: '100000000000' + DdzFFzCqrhsmW4eK2tgHhwv3VUUHY9G64nSEVLohbwKEMBvRTr1Xv3KaBHNVSFD3NYXWh3Pu35cdRJgww3siyaPfQsnt3jpCiQPgcxzX: '100000000000' + DdzFFzCqrhskCNPjm9y7NuURa34Lu3yNNBb352nucX1CgN2AMMEjZVzcGmPqd8J11c9ZN5fAY655bsPRb7ZRR2MijKTJBpZpbyf9VauJ: '100000000000' + DdzFFzCqrhsn4wGL1xBJgNBjDx5f1ZDnZ5hdzLwKufQ7pTt37VCu5DCo3QKKXWair2SkgVsp5nRmSLnd89hYCHv4foJdD9mKR85JDMF9: '100000000000' +# "security", "hill", "flight", "improve", "rotate", "language", "home", "carbon", "boil", "enhance", "pulse", "pill" + DdzFFzCqrhszHW4NZjXiLozNvPfAShzZFPGoVxkqQRDynKcX8AN3vTsaMvioYGGNaQ3CB1jjGWdVUyQQ3psxPJo2hqPysgGC95ZG7KCV: '100000000000' + DdzFFzCqrhtAxyD6YE2oQeWUxhTT87a3cYrSQuyySHqMq3PcLB4zc8iBaVKJFvibvtNhUHZVrxXoRRvEzEFXoykeLBJQkkvDKCYsPB7e: '100000000000' + DdzFFzCqrht3p5bxND6yegJRgsq54ozEsPPMXUoJFesuDSiGSEs9gNuAQ7Mdj68YKayNqNbsBPD2iXubR1Gm3AWmP8ysoBgE8e28ZZ6K: '100000000000' + DdzFFzCqrht8Tt3RDcCQMeYnmv26JV3SpXSoHeuSoZGQYLz2PFqv4nc2MsUM4G4MLcavwbZK4Nt3KeGhwHZ6bceasgU3h5CoF15cLog4: '100000000000' + DdzFFzCqrhsi3hDdrT2qt7FyREyj9opL3qyxyZGhx7yqcsQMJk1KRsyVbm9fuuckcxJojmKi5Bf3hUARymuYmKKirYVDJWpYuZRycuYa: '100000000000' + DdzFFzCqrht4p2xyooBkGxduQ9Twyzk9poePc8tSaTRaV8pJ474tZJHRUsoVXFJd3NuNWDnn6nWtEcaD5kXSmn1A6urVQSHy2voSrPsj: '100000000000' + DdzFFzCqrhsuMmJM2URCSETY8GMe4kYiDdrjGv8R8LKynQWcqNf5KTJ51Bff873w14RuWitzwz9wGQZh2jEh4dDvEow97tK1Ds6tZU7q: '100000000000' + DdzFFzCqrht2eyyngsrqLW1zRVWZo1Ap2XQTJW23EQQVNnngjQx7BvCTEQHDdpnuRSTXnCkmqx8T1rQrNPAa9kugM5cfuNmvSUoBp5CL: '100000000000' + DdzFFzCqrht8sJAdGeKLFEragNooh1JoJFANmxJwXGXeBgAkxLApJVcRJbWkU5fh4aEdqwtJVFibvHZG6nRivKK57Ws6suw6H29bocam: '100000000000' + DdzFFzCqrhshNbqqjHqmwbuBMA6LNG7LFS1CiWdcotPWokBLjHxzCW6d2jW5WvCfVsie2oyx7HrnGWQacyvV2D7u4FS5LfiUr1gdfNXy: '100000000000' +# "inside", "fancy", "sea", "blouse", "estate", "chest", "early", "office", "woman", "license", "obey", "helmet" + DdzFFzCqrht5u2qAJnrPfjTw6GQLRbAyX4ToJrXd5f5iTtTRT8Qvuf7Mwnu9qvE6sRKBWqy1jc2mXKAzRwkx2CXtiAUTZzdD124X1EsS: '100000000000' + DdzFFzCqrht1e3sfnY8C5qm8BtTZ7JgeJewWXj6AseZwa8pBXc8s59gkcPfjMXdTncnXA2QhHoYcBdrbB4Wevt7AZJPEEf2ahGqTKmBR: '100000000000' + DdzFFzCqrhsduBmKoiyV5JMptPcsx92vEjEP1XB83vFZ9PuJHwL4LbT1YUahftueutWrd7sCxm95WoyvXVKz4mR2kw5XjXHMKvtz1wNY: '100000000000' + DdzFFzCqrht1dQaTmtvXDRftmxo9eAE5AKP3gH9rtsqNdCKkLWYWkswhBXSJKp2HoWmwJc2o7bEYk3xLUVMHfxia1eJKnEX5Li2aZVWB: '100000000000' + DdzFFzCqrht4KnDKouTA9vbkDTEG4BHbYQK3wEYKu4HdZaSLsY9Ahk6NQaAMvRBZH1k41ndaCdJMWFeFEXhRjmALEqkJQM9mPZH3mypV: '100000000000' + DdzFFzCqrht7ReDSccYqFgHS3n7SsxSXupaV6EbDANTHxzNXDQfeKR52Yybqu5SEbJeCgzEzTmPuSUf5MdJ845KDAszaEuvkX4paDSH3: '100000000000' + DdzFFzCqrht3ZBz7b9mXXDpWPornBjmdBFD9kUuGDPcH5iwteStxgykjV4F6vE15ZPcPrDKLVsdMuFXUrL1sjM9ZqCEewjGxdDphXqYX: '100000000000' + DdzFFzCqrhskCKLa5Jxu6EgcqGAg4bQ65GqT8dfirk4bQwbid7sU9bZBRqXPDQNZdCr3xN7d2EwKmB5Z46MRZQc4yHi86YS21Ve1JfBU: '100000000000' + DdzFFzCqrhsscBVBBosRRqdzV9bZLLhw2HRWwJPnPccbnWesthDRmYzgFvSYpmxxGfFwhb5ZoMhLenmWnurrUxrrsRQKEZw67m319eFa: '100000000000' + DdzFFzCqrhsugi59n2nGhmcffPZUP3fn2R3YBkiuUjYEipfRYsmg9LdZCh7kzLbahK8yxq4R2U75LV5MZXEdCsR5ZWiXWnoSNnreEPm9: '100000000000' +# "course", "toe", "sentence", "defense", "because", "trip", "hockey", "abandon", "essay", "give", "deputy", "insect" + DdzFFzCqrhspMZg6QHJ9Qi1HWxwsKKfsYwhv1QAFSFYopirBFTgA8C24h1XsSrAJ5vY4vm4nRSF7YCLdjcGYcCnocAPtpLdA39P3zqKk: '100000000000' + DdzFFzCqrhsu5AuJ2K94J1DZVpE12wK1g3QhFXekPqNHXTtoaWoe9CJjBwEakoJNL75TUPkVe5EroKEx9CFXU1nZBsBRZRAgvKZ3wZBs: '100000000000' + DdzFFzCqrhsy1cnk1fixDdwwwvVapurcTdFMMT1cd2rshSZ7Lm24eE4gqsC1CkBotNpzumaqgSk4azFZ54XhitsLYjiiffdi2KDoDxFz: '100000000000' + DdzFFzCqrht8JenNkJeSvk5Rf896wJKS114RsmvYm6YBkvLzg2cDgxue1myB5ExAf2yFQkp1tV76wFQTCTcxvXwzGAB9UnGVcvcVbALm: '100000000000' + DdzFFzCqrhsfoPMc4WkrD2WnPE9PcVEDgCkKk65dCqALi3rAodXB3Vqq2TkXW26cNXeSXvzobPB31WArwxB6fFArViPAkvAzz31ge3hP: '100000000000' + DdzFFzCqrhsr3ndNijDuvAvZLUWKRfpqoaUuVf2g22gtqqmmDQk3eAL7aRZ3bik2yZGGruZYw7yzwbbawEhcKmozaDf2pMt8iFzCQTQD: '100000000000' + DdzFFzCqrhsoDAv22hhbouwKscBNRRnh2mBcUwHBcfLH17uxN4tfsQWJDpwpna96SsUYUk9p4qJoX63ApmPq9hwrJohFiQMHAYzFoPU1: '100000000000' + DdzFFzCqrhsjD8ifeVpNo6Me5hyTsRPgB5K7JZ5GJqPeemqCgBQTcg5wew1GkZfojYGUu8KtWSVXCo5fYn6VjC3jsCYNvamTdHfVLp13: '100000000000' + DdzFFzCqrht3ncXQfqXbjMzuGtQhfsCdHuX1FbFDXn8seoFJpuEbTZKBUujyYmxiSgXafqkrkKwHeZtLbzp15BwrngZS9qzbMTnMsfjA: '100000000000' + DdzFFzCqrhskFgBrTWsyX3tVzybbwDJHXmLRo4ZKA1Xh2xyaqitGvHWzhoXrjcXbsd9yY1Yz7oXvCj3QwC2QWjbAikFu1H72nN6rPKFL: '100000000000' +# "sister", "slogan", "hour", "build", "squeeze", "favorite", "inject", "smart", "slim", "near", "tired", "blind" + DdzFFzCqrht8aFzSNnc8NHzADWNufedzf2EcJCAzK1pHiWXPPfN85EKx5Ze1sohdDwQXvcbu4Eu38QNdYTwgQ1SPscU2AMYqH3xN5SsN: '100000000000' + DdzFFzCqrhtBd7BmyTGMUQVbCuicqF4MoB8itzgFQyeKQxr1uu7C3KVJ9G5xdQ1cp3URRDMQKtoKWyyU18ALzaqwLnnRaXskACYbYHw8: '100000000000' + DdzFFzCqrhseDfLmPMXexSYHT5BcuqrCaLaj7Utv89HSHEXM6JJhnj5AJCEJLPaihW28LaY5x7bGfDzk3bTzYEnXZAeWvHbCrigaHpp5: '100000000000' + DdzFFzCqrhsqDaw44Zg3FDLkXJW7RiTSSwH3KhfSZKREuQ3DkRc2ybmTDSckMm8632uWHishffQU2cg7VnMJW4o7w4LYpWxfnTe4HDfn: '100000000000' + DdzFFzCqrht6RqwmevaghJLgy3jzL6WVhokmij3LesHpCLzCjKFNoqFwDqYapAY9yaxwWdPMPxyKPqtnuYxXLxAMnproe1vbgGAEYm9W: '100000000000' + DdzFFzCqrht5n2AygCgM6WUYdahf2pDj1FM63w4zkPuuHQyY2xyeZsZVugmTiuRhoRFQZtp2zc4HTyEUM6WycDwzM7PqD3WBbHUMepi5: '100000000000' + DdzFFzCqrhsrbaaoa39zNKrgikG3oU7VirBumeBNHaSFC8KYVpcPBLcK7MXoyvdA5TedJ5VMV7f4PL6KpPXn3uv3wzA7FxsRaiYbwnLA: '100000000000' + DdzFFzCqrht7xzE2W2G4fzDaW4LhjDhLtmwkebh5txAMtmASqijb4DQmngnNFAmsFg4tc1F9KwJsLHw7daqivU298o9MCUS1Nz3H37FK: '100000000000' + DdzFFzCqrht87hXb2121ZpurC6DTq2rX5FXf8MDzr6n2sgjAukmTQSir2VJZPfZRiqyKke18SsZbNUzfLTmB2DQ976YhbhpBmXvrnyVZ: '100000000000' + DdzFFzCqrhsnKFXnVRkWWdwiuvJMLhbzoGvh438MrFW3hVGKuwD9zrZBEK6KN9EoM7L9Z6x5q9eWUftDMb17vbdynURoMpyqMr6sj73L: '100000000000' +# "upper", "mouse", "spray", "wrong", "food", "affair", "before", "object", "mention", "then", "ask", "solution" + DdzFFzCqrhtCYz1ZSzuXUDxumhL9jVTbCLNeRXMhe6fcbdxH4K4X64c6dtbPhqeouDpxpjtMdhP8L3GawDwNQdfLfHhaSxehTzxw9g9d: '100000000000' + DdzFFzCqrhsiMd7DsqPa8Dtjv4y9hVUAKoZARSQL1Kv7k4KBWorMKZtEkEGXtBthhq3Bis1k3oNmyyVngGKxZvEwuCCjmeqbVZfUn965: '100000000000' + DdzFFzCqrhsjB9y6Jpsnrni4HA81ZnsjFwTP6261yCfa3FDdMUA3F52joWZihrZNVtJAtNzn7rFUEUXkThnJcYxGGygupndZFd2d2ZR5: '100000000000' + DdzFFzCqrhsg84vsepmwRoYqu6mwiafT2LgQcdD9GTHSWCZ93pEyUGboG9rjEghPdkLZU2GwERD4PU9TR9ZaEzuKQ3ghRWJ5kj9iqK3h: '100000000000' + DdzFFzCqrhshUzE8cruj5JWmYakNzg63P9FWD2B489A1GwBRM1e8fsqk7fCVR6nb5mTYJrrjAdqMw8JcjafbhdYAGsG5CFf9P5Ust8hX: '100000000000' + DdzFFzCqrhseTr3SeFrLf2trTfAen97FhGp1w5ruErzF9Zhkt28CeUHbMnppvCubLAxpBRi46MJJDt6BHttogo22ccNzhCUCykJmKaq3: '100000000000' + DdzFFzCqrhsiHAUy6W5aJe6PJEk5S6ZnSjSDocM4kK6Yr9H4NgqPProyvZu33K2FnrTYWF3hqVwWcpioeGzCYHXaEVGn72xkaMmJKUA1: '100000000000' + DdzFFzCqrht2JtTkwghp9gtdyFjQQSS6CcsiZ5KjDqMr8WXuim5K12h3A4CExaSqqLG75qxsGKF6vUVJwVqwmuZJxmBDRd4rSccj3vZp: '100000000000' + DdzFFzCqrhsn81Bif4S4TvArGbSuFiUDjmMudN4jcWecbLV1ELMz1VRjPVDTjipRz1MxcgKcdYMLo4ZS9QgKz1YWFJqKqVzpj7or24ga: '100000000000' + DdzFFzCqrht7K7s4BhN8Q79CGFXi6f3bZ6z9dEMiTpNSc2zSC27hLUqf6ZK6KtNHbsxBfSW9iVcWK2R2Wn1NdEZW7GLk9xLVPYX5UXSc: '100000000000' +# "video", "fall", "run", "engine", "wheat", "baby", "december", "issue", "vehicle", "between", "reopen", "wink" + DdzFFzCqrht6Q65AVXCpoG3F1jzktnwc9xDkXeHw6pQt5wMMUik4Wj1NdRfRVmhyCubT88vCjYbVZDaZ1LuTocf1VkJeSoEvBhCV577h: '100000000000' + DdzFFzCqrhsygQoj4xwJv5LfeWaefUSm5a25iZL6iLotro4KCvW25uKpuspxY19oVZrQQrWLTwG9krC2zBu2eBAQ3Vj1QJi78kzRxhps: '100000000000' + DdzFFzCqrhsr2ceCax8aJ48gHNYughZx9YT3Vh3KdmM5T1zv25BoZ2M5NNHXrMfX4w2HBnF7yQLzdXCe86XnABoonahWMtuedDLGrgmQ: '100000000000' + DdzFFzCqrhstjXnHbw5ivuEjLxxM5orLACAtQMR6JW5YT1aeAAS4nbFUX3VnXcyhT2Tv26ofxCCRzx1HV65K8Ttz757C3bh766hQi6js: '100000000000' + DdzFFzCqrhskyhURJWsNsjWYNUxnYb2cZGZcAfLRB2QvHuuaQcC8KdtikSwJwow8fZMLgmAqvYv2JeV9XZTrR2oWyYUswuQn3AbypaR1: '100000000000' + DdzFFzCqrhsrxDiKst3RAgLE8L5b2RCHXfe2rshMDCgcY1qhXgp8cSfrmBt82ueuRbmpeZpqyS6uZoFF8Ga2qu3DcD63q3eYh5ZP6RXB: '100000000000' + DdzFFzCqrht7L4XNRPyf6UbCU7THasU41YZJ4mJuDrTobBBg8g9PCzBcJ2DavVDz3DVP8LmsaSWCG5BkkMomRunQJDRYK7YHJh8X3LKu: '100000000000' + DdzFFzCqrhsxQGZSRbGbTP5EgMEoCg5FxKDwAeUZek5QpVKMvEhgYodz2ucvzRzBjZh7vQiT3uDFR2uzp5YiQatKRdkeudRE7U26Pi1G: '100000000000' + DdzFFzCqrhsmk7Fzyfm89Yb35PA3osmkLie7BFdwqyGsko7wQSCJd8qyk2ZNDZT5EiJJ6scgNRok86jizRGQiKsLcbUdji8mNb9eCq6S: '100000000000' + DdzFFzCqrhseXFuFSSPZRK749ZLP7Bq1aD6hqz2wpQgUg5c8f315VBVuYL6fLuk14T6E5b2tATCPhNoy2b8gzyxUaC5fhBXFDxMuMTBh: '100000000000' +# "nuclear", "glide", "invest", "speed", "essence", "friend", "clog", "hamster", "service", "crisp", "weasel", "pigeon" + DdzFFzCqrhsreXyoKhFgZDdiu537ovwixw3D1zkqsG9wzUJPjhb4KvppugKZRCyeaEEVNKNom6DRzRXD5iLfrxENUFkH6hP8dcZddcaL: '100000000000' + DdzFFzCqrhsq7gpp8qXHzQUuWQYZr4ETQ2L1T8SPUiwSftsPgoFdS8TRLWBpgYzU2HaB2rcRVmta4uWd3XT4bmSKSYBCbRgEb5sAvSg2: '100000000000' + DdzFFzCqrht67GhRFmxLNzFRRr1vyanuTbmeh66ioHxhbiZWEmJDs9V2WJsdyfvRf6NhETLzcF43bUnd98cgfeUyv44PxCdqnXJnTsGj: '100000000000' + DdzFFzCqrhstx7L6UY5wZtuDVZQkndMWAmokSKcgZMudqDX3MMnGyZhy1J6RnWrYdGPU9YeJhUc33gCRuu5EE5dgERCiu2ebUXdRipGW: '100000000000' + DdzFFzCqrhszuv7rHKgyuUAYhnGrtH5y7XdWhV64fgfeJSFny7Ytj5dPKLbF75TDGtvd5NXbEdPDrAtbadY4oHw5CB3B63Fbt8CvXhNg: '100000000000' + DdzFFzCqrhso9cmx6G4y3cxKjYHKktTNHVQ1AW91RntyVAA1Co64puNeoAKN5udYyDrRc5Sf7oD8aSpsapnwFD7K5ptRGnALNGaTBnvF: '100000000000' + DdzFFzCqrhsxTWZMDFRbUNJw752A8qFMLZXSDVbtxm4mwDJFZo8dMeCYAN64BMYmq5ZvwiKSNFAEM3M8gjYyvtjRwxqh28GJqiZ7SuXr: '100000000000' + DdzFFzCqrhsgcV7HvRC2ccD5fDwr5BodgSouKZzfso5kqyGPU38f8Pe2wm8JnQCGkD3JpUPCQTtG7ExJZKmT5DCuUkv8Rvutm4KPVTp5: '100000000000' + DdzFFzCqrhsgTD2ozBXhkfdS9KL2xJPGhi4wSnBFPWYFpVoo8jCBZMkbxbhPN6EnxFvhrJzfwBXqnqR5891wwfSy3qkKHsJJX4B78TEZ: '100000000000' + DdzFFzCqrhspWNxXjAWCBbiQkeBiBMiGJpz1vUthRcoFhmKrBidcBR9gqQBzU13iS2DwWFsCtYJkTh5XGyEVr8SRxZ5B779njrX8o8Aj: '100000000000' +# "stumble", "either", "orbit", "bundle", "pepper", "total", "radio", "spatial", "umbrella", "explain", "exercise", "science" + DdzFFzCqrhstLwTVCQhuyL4h8b4FP7KApykt4QAjwD4wpoXhUqJ5Uu9DGG3cT2bgjih3c8QjvFnmtSUg53vZtZvmxVcWa9GPxWeTUmBu: '100000000000' + DdzFFzCqrhtCeDtgG6wDBEACTRJRWXrWidgpnJJj1JeY2aZd3ssevtZXuwVSbRLSRhUCHAoE22CH9TSRxgevqyY37X7FnMQJvZrzaaFM: '100000000000' + DdzFFzCqrht8BGBTenpg6FNtYb4iJd82b1d8eNpoCFe2gNewFRZy37BmhLr8fMz8AXVveuavmbpja3cC9rZidJ2rzGG9Fu1GGKg2ivVM: '100000000000' + DdzFFzCqrhshWdbKro6b24uC7vYuVPLZ6btQbE84xoW4ZafZbyuAsZLnadHShGhuaJ1geeiH318gAns3So9hbz83Fn3HcD1877Hg3qPP: '100000000000' + DdzFFzCqrhsdqAnHuL33afabJ99YKS9xFkMGcHLBBFkmTWM8YJswTApxUFZCU1f81xs9RMU1hJk1b1X9UqbzF7de7UnnMoJCGQaQNFit: '100000000000' + DdzFFzCqrht3ouyQW1UL7uqaL1mc5GsCQdivs8m8PDmghKphNL2mPjB6TYRUVZkmiZC34ttS8aq35aAUkeVxikpEBNpBjUxPCvWdYEaG: '100000000000' + DdzFFzCqrhswpxXZm1yVcTk4xiVSkjw2HeBbGtPqK8PE9ETbXKBkBo6uobqRA6fENt8XiZ5TPoyWnkHsTvpCQ3C2jvg8FnAsgo3pHzcf: '100000000000' + DdzFFzCqrhtAABG8CSJHtdqBbRkyeRfpS96g3zLc5fhLQcDAcbRYFt3G8Y6uhrwoHMUTyWooUa6VeEM4bCLpD6y3nvWjc2tSDzAZAuo3: '100000000000' + DdzFFzCqrhssTWme7rjdx54rTfz9KEeef59ghJHksxcPL1c9dsDeNuqhF1cXBSYJVNQR82wDFx6jtUhYDKprC7Ru7vJeZhPzroJvJ6Ug: '100000000000' + DdzFFzCqrhsuNKHnBS7rFUf7sNDBzDFQhxSX7zudomuQVoSUXb8u4ooTVKSEtd3Ue8qTba3EJLUcAMVJMqLp49pEfwkHYms959gcMx92: '100000000000' +# "slam", "entry", "nation", "frog", "advice", "process", "cycle", "lawsuit", "scrub", "strategy", "shrimp", "push" + DdzFFzCqrht6SMHNTsHsBJXbsA9AU19TTJCy8VJoBVE9FcK25zhq7opUvPs1roHtiNhdL99DasqT8yBMd3eqaFn33LNYJYQDYu4wq666: '100000000000' + DdzFFzCqrht9MJ1VfVugY1tYdaZuSn1stggZTAZVruQ2P5NW5osCWLGbkX6XVr2bmmJrNFqN8eMtm6onopdANk5K8C8y7AG3RStfpAie: '100000000000' + DdzFFzCqrht8hncXkj6aJ5k9aQnL79b3SuTbmSVXLjC5W8Zk5RznV2WQpvKy4BZKrdSQd7DAWGSSWY2UHkLMTv231ZFzLVL2b6YZJuaE: '100000000000' + DdzFFzCqrhsg1g7uBuUWDDLxVrevbFkw8C7neo9jsU6dh1d1oRZ8Xw6dFmL7zzEG8PnndWAZbbEqMr4ipaweW71skFJpskmqPc67nQtZ: '100000000000' + DdzFFzCqrhssqqTmU3zzS1KxQbRPb5URNf8XUbsdXDujQjhNXb2K8LbeeJPD5f9vhCiRe2r4BYNriFRjbsavFTVSe5i86zH2Rs6twWzr: '100000000000' + DdzFFzCqrhsz2Yz2xcn4mG3ZTY9XPGjfSPDRKGycps24ZJcjd4fkf4CbGZstbLEpiNbpuwNsT6vBK8mVXvrk2wC4AnM6m3NKzQx4mGiq: '100000000000' + DdzFFzCqrhtARWeGotFeY1BrUA9g9pDzLfJmN7VEB6Bd4i8r8KQC5ijgihYVPiqsw5ZMj98C9wbuEchxf6pBYiD6WDgZCo6MSksV6uK7: '100000000000' + DdzFFzCqrhshhonGcBv2dbEKsCPWnv2dcpFY1GfZwnGEY3c5aFCu231ZWd4PSy1da5WrWhgGFzLSc4Sa88WLmx7AwGKyzmbMMhVhbzwt: '100000000000' + DdzFFzCqrhstZUb3muPTBBMMtvdCtaGaffpBphWfPSRpfiuWtU57QxaSwEcsXwUygN5PCNnsum4EEat7zGH83fSCiyz1JzZZVg2gunHm: '100000000000' + DdzFFzCqrhshEDcRtbXHoD7yddStcC4R5upihoWXMY1Lt3cYRfk8zn7WHrrEgms4GwR3B1hP8Hdt1BmRfWtq7NG1VN8X5m5nzp2hYwMz: '100000000000' +# "ecology", "female", "item", "crime", "remember", "denial", "swallow", "forward", "call", "vehicle", "glue", "hello" + DdzFFzCqrhsoxAj134nTLUQQML8Yjdyye6HAGpsQjtM4V1KpCu7eNH89XMqGJkTTQPXMdjTkeF47BXedjf4MfQhDDdyZ6KvRCREXBfcs: '100000000000' + DdzFFzCqrhtA8gCxis2ok7VmUAcUf6Lg1itbvvau9NTzicFot1gN6SGVmGLksB8EZDtgZfv2aX8XUrpK8u5AyK65eJrH3MaKui1XB4NV: '100000000000' + DdzFFzCqrht3AbCSwur2UZDNzXfcRYJvGjFwVWpmW7WWhrAUUDoJrt9R1WjzdmPq1GyGALMnnFQa8kxQCSQPjtA5uJ7GaCTT9W9BPwir: '100000000000' + DdzFFzCqrhsuopMfCzNikpQKnDgbe6e15Eb6CKGdm5nFmNwT3GarAjRVcE1KER4grMDq3A1i6HDF4kTJxJRpQdogzMj5TRKuukVDshWr: '100000000000' + DdzFFzCqrhsjFQTt9miGQCMFjNcqb82egFSVTXL1x3EvmMENZ9PH6y4gK3uvgM34nZsgvHDa9ZAbVoYya8C6HEVoSMJiyGeocpuT1Mcb: '100000000000' + DdzFFzCqrhtAKBD25eMMUS2Vow4eghk58nYwfif5JP5pdQkAD7yuzmzMJaN3gJSYWNJqFJikoMepdwWFtauAUayHuYhEemHKCY7fDcSH: '100000000000' + DdzFFzCqrhsqxHdeT6WQxjLgwKvMpiUsTePQopSdodAVjbotG8Y21FKaxTBjd1uzKTMhRzHuVG3yHJbbxFoZpT9eK3QQ6hGFzeZbimWY: '100000000000' + DdzFFzCqrhso71omgseidDjnQibyiZH2maGbPzKfoRuH7B4mXuCqT5FENHiyDL8qvuuviScbtjcfie9ejM8kywsBwLs2ShZkST47HWyA: '100000000000' + DdzFFzCqrhse2wXHgsdG2Qd3aJgUAXza6j2DBtwTfmjBnSBh1VxK3u6S1E6qQDZrX7bfLuNissUmeAFQSgVMWKCupXb2KKPDFUPEcZqW: '100000000000' + DdzFFzCqrhstGqU3NQnutrPccuL4nwYfShPmayGJuEa7sGokS6UCovzbA3sm4EAxBPaBF3iPSqvF1FQH5rrVbSQ6siRStX4CgbZSXPCF: '100000000000' +# "spin", "dinosaur", "honey", "abuse", "exit", "coffee", "ethics", "denial", "proof", "hour", "number", "annual" + DdzFFzCqrht88Zc1gLdusPtk6WNABbaaBiTz8681cJ8VXwy4dLdaHSJcBY6px7NSjJ3fevJLSaE1q3eZGNhjR4o7rc8RH4oEpFL7B4Qs: '100000000000' + DdzFFzCqrht9rVFmiPYEVZTAsgF8cuqsD5vsSTTT7NZyfYQdMdPWnXXyxpZepdoQf4AxmjhtGRAu1r9Uf7SprNJTwUPtLGRXrsegr2py: '100000000000' + DdzFFzCqrhtBY2YrGRC2DFHhLRegn1Gi7aDuJbR3wVS97YpaV3Rc1SxvKRGNjwVQkzBXo6AQv5UpskGFtmFABRN2LjfDUTpmYHcAU6ck: '100000000000' + DdzFFzCqrhsuKN4keaM7FaGh3GvD62BzV7f3NRJ3NjkVpPMxcuEDZeDRsPxiKm12vKY8hcoAAgKBvF79M6Gne7AJG1sJ4kP47VqPQyFp: '100000000000' + DdzFFzCqrhsfZXJQ6wuXPxobyaykc9WKeDWM4mVzkzmaCj2ZWgUnMHQDjEsCGM49fskEuSxsSQ1Ft1gzqpxFK2PacHSkzQvCCbWVZGZV: '100000000000' + DdzFFzCqrht3Yho2v1aAZvNFA7n3C9dRpvPj6jd7MWWXNvg4K1FkhPXLRkeyp9EBQbfHucBKda2tWy87DUrMZHj2MMrjbHc7bqYZKSwA: '100000000000' + DdzFFzCqrhsfek215p9sn1KaZ5eeYnE8M1JN4ijCXs4Y8QFt7mVZf5bZxpMW2ne8ESCU8twRwmyfJGD4YvUo7pmMBEDTkxWZt9Hsm5Cv: '100000000000' + DdzFFzCqrhtApZdLq7QavRUv3yhstvAUBBnqKogfCsSSQv2Xmuffp43shQt4EXcrVEXbBxLnqwUeA7qXwBGvQLu2t8jYZ1syq9qzg3ub: '100000000000' + DdzFFzCqrht8cSRbfuJ2CjKdzGjWn7337xoiLW7b15r84A7dirUxsqpLNesyJwtBjQduNQxF8hK8VnFaup3AVogtedukS6NhNHd3cn8e: '100000000000' + DdzFFzCqrhsijhdyfNuk6YWkW6P9xtT6qKnM7yNj587d4rPhmLwtn2geu1w2CN9GaScuqwmVyc9WYSYEnQG9mpVC4jwzL4Ttkf1DbYdp: '100000000000' +# "power", "age", "slush", "tube", "island", "void", "old", "option", "lobster", "vendor", "typical", "cushion" + DdzFFzCqrhtCtC8CA3ubpopY5Jn1KW4Wj8EmQfxo7mbiTi6Tb93zCE1L8V1AGrF6U7mY3MqPGAshauE4yPtsydAVhrrSSnVQvoRqeDnC: '100000000000' + DdzFFzCqrhsruE4E1Jno9WVQ77i598VZ2SemdfbiiDX2qHKmszQdegMHfqVFoKXEpaXXk9CN68wVa2NYhVZkpMMZihkiCzBzNcjfV4Ai: '100000000000' + DdzFFzCqrhss7WeV2Ax9RSwjF2UbiL3YrZrxk4gnLqvBpj28xJDyotVUKiGNph4CgGXF5KeoJgrfmkWpArt6bEEZZCBgQnyo8tLuAQYj: '100000000000' + DdzFFzCqrht8k86spcvSjiPBntvLNka99aHhZeckFobRGbpciXkJzLeBcnorPVUMxiJ2Lun96essWGkD8C4XkgoJiFdBZKkiAAqdsXHo: '100000000000' + DdzFFzCqrhsvDcQuSCVE8icer8zxdtQrTR2kgGV2NwVrT4iSyhXBDgmEXofpgByrQTxx73BttjsM77TzVxpfZTUUhsGjjkHd4oxGEQ2j: '100000000000' + DdzFFzCqrhspLBxBUc7N7RCVs1n1mVHhUGjd4sUkR7czgxWVmfxizFkCN4H32MTMSLSah9AGEDzrFvV1hz5a9NiVDc7iVEAJDdaA4RHn: '100000000000' + DdzFFzCqrhtD2aZNiRmwwWMD5KtSfV4K72djBmVr9ckD1RAQw7PPm9HYDRb5yZiZkhb3zrAVfXyHfG4SzEaN7MkY12Z19FEBe4rNHpzn: '100000000000' + DdzFFzCqrhstFTfQ4whUJSMFHSHGnQ9XywzKXNoXo9awSpWZKu4ujUn6SCyKFAz1wdJcX77bXABsgEespXqKo7dbdGof6Tu2THeUimAE: '100000000000' + DdzFFzCqrhtBUTPtDvD8Akuhp5T7J9NmpYeDhJeDWE6myJUwB1vLg1ftyHoddCo5EgpmAcBEwvC9Jkb3JEL3M9eJA1zmjM1Rc7jqwCGV: '100000000000' + DdzFFzCqrhsfcGeyPDw5tn1cvkTrcAWZEB8FnzLjxPHnseLzqp6iKjYt8ZfYjeD5AyGRKuLiF3VuGpJi9MMk2K9jMZPHxuEQNKAKqiTS: '100000000000' +# "drill", "orphan", "hero", "throw", "stand", "ecology", "hat", "gauge", "antique", "hotel", "pistol", "rice" + DdzFFzCqrhsgZ2XfLjWdqs1DBP6iD5EftmwwnqYenXjtLWm3NiUTnCX5tivVSJfPabEB2v5UWRJ7w6xYpvPZFu3anCa8kDBwZhSEmQm7: '100000000000' + DdzFFzCqrht9HMM8Ju3sKNFJ9SDFaE8fY4P2mvW2oNCkYDmxuAFJfpZ7ZQawfH13B6F35q96e323KcyRTXDMYNWeSVKyQQB4txFW9529: '100000000000' + DdzFFzCqrhsyRyBo52ruuxBUeogukmBWFHxvpc9EJmtidXhYZZcA2xHb3QiztLPB5U6RhbjdJNHuWdUEQcXRRdtasgS6SrddyM73aodu: '100000000000' + DdzFFzCqrhsyQMi4f2CzPMdvMWj3xfrPyG1vQsKDrZ2RxuXffji4Mw9ntg9t7T6uoNqzENzKK3t36Rv8jGbdjZDnfHdNsBZa25SgR6Dy: '100000000000' + DdzFFzCqrhshsbfGrn7h7AhzHRubspv8faJJNFmGw1GZaSdUsMYN1aQM69FjReT6fnaaMDhHbRa45j22Cji5u9YZrxcsrn3hWB3K7fuX: '100000000000' + DdzFFzCqrht67ZkDD3fv91tGUPtUNQ5ALjCDJudgqGXTX7TRMTvz2SqT156vPrPZJbQ3SRetVBk3R9KWs6QGPhvRZjpuQ64e8warHoix: '100000000000' + DdzFFzCqrht9oQ6Sefw3BsYG4fWnftowNz1JriCn7zV1zx8dqqd3sTShno9EfhZAPSX1W8tBRMySEtmonKtTm3K2Pk883p5wTQJxv3Ky: '100000000000' + DdzFFzCqrhsjNT5kanxnF22UG6fRojRB5sGXjuMEyy9GDz13aXpbT7wdUgx8ChdHThVwwBLvmXweQQVyR79KTvmY3fPEhXmQ9JdNgSRK: '100000000000' + DdzFFzCqrhsg2meWxvZAoqXtDn8i67BLhFfz6MjZJd1CXfyBV1XwY8JopEr7LBEruqqFqBD9UogzEvN3Nz5RqAdL8LUoiMjgSAMLokZi: '100000000000' + DdzFFzCqrht34u8WkcZWsY1sZ5oqGLEPani1AKeHZDfrXUAPf6ZpTWfMjCWAgWq3zdECWZ6JQxbwaUdrLPKwSMDC9dmPF3j6EEsAZhr2: '100000000000' +# "present", "trophy", "digital", "salad", "kick", "apart", "airport", "stuff", "prosper", "peace", "drive", "adjust" + DdzFFzCqrhsxtMtsJU3DkzrCUJ5rUnqRj5zET7DSTyfFptYRps4v6EEpvkqvYje4WrWdZmuR6BAKYvZSDu5r15xixoBQinVGMCRyRSP1: '100000000000' + DdzFFzCqrht2NDSR5FjTGUguVM8bsHxbAAjWL9hK8cPv6x76MqwvFzFduFxsPvhk1Wihss5nPWg7jX3Jtw7a9pQar5DQJdEPLbubW7AK: '100000000000' + DdzFFzCqrhsn5YM1sUjML62hvuAqtFbmZfXyrWBHTx3ibYQQL2sx7XL3LPVfi4Htb9i5QTLBDdVRf2p4yUYVuLu4Sb1Vq5ekVNDCdRUV: '100000000000' + DdzFFzCqrhstjRCW8CMTRsQtm2js3eNY8g6Himv9wRq2nGqHGcxrjjnJWg8sfv6n9XmgH2HUtdn74ECXAo46Pquba6ARDL3FWnhpNtZq: '100000000000' + DdzFFzCqrhshgLViiP5Ri669Pi7DWr4dJaWP3JWR63uKxUJPBkhSczY5hsmDBF5psF6Qztbm5ZEvuqwtzu6xD19KuHW2v47ao8cz7HQ8: '100000000000' + DdzFFzCqrhswp48YcybJsKQjSoHU1d633kAvp1e2b8mTe1zWNfqkTR13uivbBEKwoUW9wZXzvJsu2AQRN7QCnxf86PboJYSfKCTziEFm: '100000000000' + DdzFFzCqrhszfK9mSNKmkz59BQqrrw7QaCjh3RePKQLMfptzaWMhH93PvDZpUVrL6k3Rpju13HpPvtTQ6PGj38aMFTQW6dgZ9FnnV2KA: '100000000000' + DdzFFzCqrht41ppXhcQH9LiWms8TacShaaa9aKF9PDGNcLmYcRaZWTKQWLtaEH93A56YbMBTYExiRs1dcNWQJ4gBwvV9Rnz3HtZu7zDr: '100000000000' + DdzFFzCqrhsh9Q4etAbbGNGsDQ8PWDDywgaZcULNeuYDeozumxWS2iT8WTCWHeoNedBZrgevcVxjjRiyqndxHpQEZJ33tsbiLciPND1W: '100000000000' + DdzFFzCqrhspRdmyRj9vHsSiERi3mxuJt3fNbdLuXwofUR69cqSk86EZqrkVyQgsxXXsouwgvHSLrbeS4wivsTnPF2ZcrinspBjVqLQC: '100000000000' +# "fluid", "brave", "disease", "rough", "surge", "city", "ignore", "speed", "borrow", "print", "pause", "smile" + DdzFFzCqrhsricu1G19ztma1NfZre4cMtj8teA7qxVXyJZRtJCqQqEAUgsCdAj6NoHFCMJtSquenLg8HrT1q4XrVngKobLeN8TNizEqG: '100000000000' + DdzFFzCqrhstwetBwgiVZsTGFeJWHn1PG5vPGZEU52a2ECkGd8x7yxyBKwMjbnjRSd7M2KsDYj4JDPDzeZFXqRGzpjBc7APj5nKCsFW1: '100000000000' + DdzFFzCqrhsrweSHCw4eG5M9HLeabUjomKhVpMyPQu751b27Q6G2sYwkb8YjeCtE6mTPHxdemBpyi1Rg9XwQvfje1YbHDvZPLE5Pj13W: '100000000000' + DdzFFzCqrht774BLMpeBxqUmUPVw8hc5FvwTabDYq5zGYrMCzQLVnsevFFg4FrArwmMEQ6jTuTnPjYzSS2R4KcdWqhCugH2MJ7HtwAx8: '100000000000' + DdzFFzCqrht335VM94gwfV5V6wbPyV3DziLGmDBcDdChsvEqtn7pXaSR5q5DEEGpsK3fgizpoHNFNUFLFKimteAfiZzR8hH4rPveHeHT: '100000000000' + DdzFFzCqrhsu6yUWUgdrrX33z8PsAizZhSS83CMxT7BRJNk7GrCQhUvJGyxojQsUftZxwtac6uujAaGerMdxacQZcVto95YUvduw4ZxE: '100000000000' + DdzFFzCqrht1cYp4zCqsUxFTMGiiuseKicKMYYQjcMyo3Lnn7rWFqEReyuWhR36mC7dErgUP9umgmj2hS3Dd1wXcFGSeUZ8ssYvDxX9x: '100000000000' + DdzFFzCqrht6Sxt4d1p4joo64HqTmNhXRrpbi2A1nVMyZDwAGhY59XXNKghG33wuDVxbGYJYRXD3FzJUi45qm4aALNXSDLRfDe2go6nA: '100000000000' + DdzFFzCqrht8gsu8hjZyo6ig1znmnxihU8fwK4LRbpMfSf4HkwuXdEwGgkVgbsWk7jiyNRcYmfvqCUw6cEcap58Vai9wsgyZDS8ttg3A: '100000000000' + DdzFFzCqrhsfJpvLcHBZfGzUL8fyGNB3rSMDHWVsKbbSdRhLt4NbqoY3nufQBMRzpCtNTZcGFiWHpoRqKY7fLXGJ9D3aS5RmdW1Aw6ee: '100000000000' +# "begin", "decorate", "smart", "mesh", "cannon", "gas", "toe", "model", "vacant", "survey", "victory", "cat" + DdzFFzCqrhsfQ1Ksa5Pqifh2mLqZhwxxDf6pknCgSwSLdGVWMeBcLwNPBzpT3yS24vF3EbiQwnxpqKmjcyfmmYJtap72XR8YsRaZL9TQ: '100000000000' + DdzFFzCqrhswAFhUif2wtB5ZieXzKVV77xkkejzM27g9QWnX942Lwqgp2hY9uUdcffZhS2TU5gYnAmYQAF4wC1ccz3hv4dSHktfMDuSj: '100000000000' + DdzFFzCqrht4gzeTABzgcMEHf4Kfw74FcUGLJhrbbaSAaw5zC5euhuTxtFPx5Y6XLDAjFPWtaZmKjsvCz6C6UyLQTTEWUu3W9xTmGw8X: '100000000000' + DdzFFzCqrht6W2ZaCijsjKAf1cLLkVKWiusmEjirYLAJ74X4a6eGSBa9y5tGDxYHYNs2t6BZ47LZ8k4LzjT1qHh3g6WVREp4Uz7v61bt: '100000000000' + DdzFFzCqrhssH8NAvZAGxj4gME9Cjp86DpNoH3KtpLDYdMMJTJMvcS1YgQFXURBbzKf7yQaGb46JKJWRfAgwSqExHwehWAG1cj1WbYHx: '100000000000' + DdzFFzCqrhtA9CPR9ybbU4Ya3yDhxwhonvWU96AqypXzq47LC4ke1omoo8uoqGSd6XL43do7njy8empxtvazToGUSSQsUjrSCBpKTj1v: '100000000000' + DdzFFzCqrhsneb6wahYrepbDMGEop9Xrp6LUiiD2o2GHfCSVtCNxYxJJXqw5iW3Hta6poasNr2CJX8mUinRurbdRnF2PCBDAAqiTiCoR: '100000000000' + DdzFFzCqrhsq7QfyHaRfHte89XAtYGog36uvbUbSP7AwZCXcqdg5EoUYtHEUyBSwemH4VT3v22xui9pJnYvE1dFVEqXyjMoQb19Cb7Y4: '100000000000' + DdzFFzCqrhsh4puDVySVKZsLDgUpqtf14yBsQbuEbr6VZ4j8xET7PzKYHtKQMnp6jzSGM3gshAivQhotU9KTSVPBhYHGhbfHZrw2teCa: '100000000000' + DdzFFzCqrht3D8ajpqRwofh4jEABV7rQQdRKQDKboZ88sZqfmYHVYCiq67jR4BkpZ7GkGnwkTdVikgHzU3hNAzfJDPd5LdWNfLPJLyXV: '100000000000' +# "liberty", "sunny", "impact", "source", "foil", "arrive", "inch", "find", "obtain", "wet", "uncover", "huge" + DdzFFzCqrhsofubXZFZoD9jXoQTQAf15ZHXtKSYkg5ASPCBtJ6fowQV8Zn145PwnqjsHb96y1USEEYvfzqHwX9jpsRJYhEM9f4T5NeUS: '100000000000' + DdzFFzCqrhsmBK5csecqbvVW7F9m2CB8PFWaqEckNwTf4cw8LYp9ywz5VWVebCPhLLzsKUvXvUPCBD3T42yDr4H7fujLsB8GBMvQ48f2: '100000000000' + DdzFFzCqrhseJ8oNov4FDoHsMube8TPRguHXnzJkqwvCXFEhY1rwHf9TbCxrXLni9RpMXSJsYrdg9eqvWw8GxkvGsHy6kZS96dArYUpP: '100000000000' + DdzFFzCqrht786QiJDAbM57AXmuY8mxFUY3hiwKfSzd6DPhx7HbWwSJU5AfHrYCdKfktDVkNRCE6LH2ABR9t1sfuAyk2Gfw3QVyuEpAF: '100000000000' + DdzFFzCqrhskdyo7sWSbC4u1baaSDvs3i8jgSFPEz5b8LSWSZgYR4s4g3hcCt4hfhVMHQec7VjP1kT6WcDPgmEDy72mm7RatDYKswqXo: '100000000000' + DdzFFzCqrht2CbY7YRP8TzfupL1hDGnhTpfzt8eqKzutzkUn6YFVNAzMg6xiaQHGT3TDuEkbsH44j2GykynhP7SAcLrmRX7hZiHvEtP3: '100000000000' + DdzFFzCqrhsqhXkMqahoV8KxH3MGZ9ttFt3BQ51egE3fZSBPpjuzAqcd67uYFFPgyLww1E1T76rnFDVPWk5SoK3pk6hMGcwkAxwzVaxx: '100000000000' + DdzFFzCqrhszV7peSPWBiz3VJQc5sss6CjaLK14ErvotFeKyYUrUjQhBsjsjYZwPCnzurcMqbedXdo7ouv7PExwfC1qqVDuYEuNiCggu: '100000000000' + DdzFFzCqrhsujF7a7XyirMJuYh3VFXRitBRHpbSgfSiNpck7cTNmeft3oAiNpeRcSBaUfM1ndSptMBNFrxcrEYcPbHhwV2TV7BJ3wLWV: '100000000000' + DdzFFzCqrht9DGXbSN7fHYxqK2SPm8CBL7s5mzKR4aRFNFJZVND8fHLymBnkvv61tFibtkLKQmaFtMM2A5NZFXi7zbDpieEqqcFMdFFu: '100000000000' +# "own", "pilot", "advance", "stock", "pizza", "over", "february", "cheese", "invite", "hello", "tell", "distance" + DdzFFzCqrht3TgMjouHLWkAxFcuCxk8wx1XoG4p3gHCR1cdRZAtVmDqgSaLN1rPwiKzMBLR12GZhreFCdfBmdvr7tcagUMp2pUyEBo66: '100000000000' + DdzFFzCqrht9zNDXrxDkztkQoKPNqAnW2SsMXLUbGyvEnamF9ytYkAP9RcJSjpCk8imtx37dWiMNfrXKZAStpmNKDXswvd7TskbmJ5iH: '100000000000' + DdzFFzCqrhswUHvMPNgFVSpd1U5xpt4J74msDF51DhFCTNud7bhUt3d7ZfzupkgU2axa53igLU129Pk87DjFK3VJBWyFY1HzwGzGCk6p: '100000000000' + DdzFFzCqrhtA3WXZPaUNZBoAchGS6sbTkkmAZeUt8YaMKPxBTCh4Y3HhfsAeNV7aEHRbKdrbUSPVmtk2aQiAiPDvCJW3Hx44NpVKS3fC: '100000000000' + DdzFFzCqrhssNLTLnp45TsHmjgpxhEE497KCEqjXGTvP2YNuAZ4hR7SLDM3swmCiTo5ed92TkQyS5b3Vyy5ABq6JxeNp4222YdZTDSQG: '100000000000' + DdzFFzCqrht3N3YQ43u8jJTkSxQteg6DxqwX6ADWbLVeXtDHdc2TtQfXSvWqEK33JKp6Mz5dnJBYu7i22PoYupoKsspav1QDksMn9WJ8: '100000000000' + DdzFFzCqrhsjctXVagGk3vDSkjrYRxYZNm2tJJwHzeMeSTAiQQdJ2RK6qEojGPemKwJVVWmnLXndzjYiWMuJvtGnz2pkqYSfa5UiiwMP: '100000000000' + DdzFFzCqrht7bhjZErXHxigm8TW3gjBQJNnQ3nr9tqYeBFqNkhsbE7rkm5DmqmXavNvkVGMYfcemhotpX6F634kkoXgJxBxmoqT3Dp9f: '100000000000' + DdzFFzCqrht4fZ7bWmAaQV7JkgSEMvEuym5taFqDXqYn6GAiQTrbSqs8XFiU6W2rGje7cqYMNd9hJMbKhj46LBKWwJQsXRNJhPhBYUr1: '100000000000' + DdzFFzCqrht1cZxgpaEKkGj6Hvijf5ZEvHkLNBjhTRsR3noM9y7Haj68pXag49J9Pj7SsQrSgY4aNXyQRK9w1vnPybGU9LEMobe2Wh9n: '100000000000' +# "alert", "satoshi", "two", "limit", "bag", "soldier", "hair", "scatter", "zebra", "rural", "dizzy", "cry" + DdzFFzCqrhstgcXvdfkUk6HxcAtTs1Ys4WwxKPHiQM118enibwVLH8aPNY8TCBoKTh1g6m6D4Vq5dx3d9Jk7JmUekrH1ofxFBqkB4eNa: '100000000000' + DdzFFzCqrhsoTcUtzM18LjEuNvHApod1apAyMkYeiaGgL6ArYL6Enx6z6LvDAiQrB8hUnjUYdoMBAguKbbPkUwb8UZnwGuD7aQ2ZyBL5: '100000000000' + DdzFFzCqrhsmDxRBj7avPbTGGABQphJPDyPZotcXteNYcooSKfxZ5jyT6iDBZYAu9a6W6fPPWW62bXzXRWenEhqVEkXccrzDE6PX8UCF: '100000000000' + DdzFFzCqrhskPhD7hk8Q91J2zNcmW9R4ybLpvrEU9URW9oANULhAh3StYxeHWRTuZh97RE3BioLLzUdAVMupFCeR3JTnnTg2btm33LVE: '100000000000' + DdzFFzCqrhse7FaWK8CNGENKpywSPfnbLVDtC4zK2MAKXYQ6UuGrF6rA96AjQ6SvQ9dEmUgkDwP3WffUE2NctGtrjo1rk2Yg832vjS3v: '100000000000' + DdzFFzCqrht67ksABwmf7pFKBR4KunDk1VCRvDj2XeLwKZvubmpjSd9xLxyBsJdjetGgvL4HRQkZXu7m3TAQG4cbkNeeoUHyxtkkXwep: '100000000000' + DdzFFzCqrhses5fkMvvzWuUtkBGhdWaX7HFbSZfWWvDg7whKjPGG8wrxYqNRe7cceZ4YVbFuQ9SVQAYDerAoAiVEuGB4jxYQ428ibfVx: '100000000000' + DdzFFzCqrhsnov55muSAXAEwocLzwMX9ArDTKTaHXztteiYfpPYBQDanGTUkGb5wMGQETtS2tEripCgrKToDZRNbAxY1iLNsJTtGXMqS: '100000000000' + DdzFFzCqrhsj1KHd92eaHYMWusaMDShyefqD9j84rgdbwct9j1AB5kiDn8nbj7sQUB2REgAgQhXSdPt7musZf8xJuqmYBMXgJPxArCd4: '100000000000' + DdzFFzCqrht1et62EbBABXtP9qHeV2pRaEU9cyqguBsxzbLJBsNUb5rmstfutHzvEYujaysyjiCFGvakczvCTLc8hLTGsm7vBrfSE5Gg: '100000000000' +# "phone", "food", "they", "nose", "cross", "music", "core", "leisure", "menu", "curve", "bike", "rate" + DdzFFzCqrht1cDmt7js3nsDrjobR8zFKiS5v1aYpNefvxCY8hsccq9YKkMZBp7yGxVQNLgxenRmXLa6eNVMU8EfmHBkCiDjPR2i3Cg77: '100000000000' + DdzFFzCqrhsetQSZMV8r8GcknBKvT3iMUD5szcYEkik7vkHYnDVMdjzZuPDqLFbCVEic3zLSEdum4kovmCfcLoBDETqN84YhJqKBxMES: '100000000000' + DdzFFzCqrhsh2jrDHdnhY9UZvnNrg9DNtuGUUrJNP1SDf29xm7w9fD2LVVcxYhAHbygZdcPrqLuUAdEnKDwCC14YARk8kRmDAuewPWo8: '100000000000' + DdzFFzCqrhsxSZz71Xe1ER1MTk8JZCohNTzRCDrx2gv1n7ZhPxenu8eFkk8nEdgkpmYWj4DPeH2icwHNipHLyDdtv11hEmx1HUZ8REqm: '100000000000' + DdzFFzCqrhsvdgurD6tgyCgTKzGnn542CRKEbJzKec6kc6cbmBH4E4wZngLyk1YLyxSrFdPbCUud3EncEQSQM7dLUSHPiDDxNikrDqoQ: '100000000000' + DdzFFzCqrhsshqdyoZ4rEBhLwCjwtLMnVcZW8qGwqkwE4zx1MWRp2cUPrp7q86gUAYyrZdJ2QUH4Yk5orfYgEoeeqRk2NSLvBo1MH5jq: '100000000000' + DdzFFzCqrht4jbeQLqNafwxfXoQXba8kRjz54BFGE7NFHNSoGioAFEZT1Dr1ikDyc9DyVXz6rNePZLaJUpTVHkLqwV12YswT6aQqxTSF: '100000000000' + DdzFFzCqrhshnp81eRN5fZXuViBAtJ4fFRsWBQEVnRp5U6NWbkNAHRMnbR3uEDCeJnhBoMfzzqyHbSG4a8QMPa3hEPoznv1ivjQHxYVm: '100000000000' + DdzFFzCqrhtCpt8VLw58giEDbveGi5AyYaADcU12HhZ4TzZX2AzqVYsXA7APHDR9Z7CNPUYb4x7CFrYiDmBUXRXpkHy1f7zqrTtaiWmY: '100000000000' + DdzFFzCqrhsxyz68spbiaPoHwXBKxoD5ZbUpscwgu3waU7nLBXNfkzLTy8JfEqMz3qhX2wHqPapfxCo26qdySs28MTp9pZPy3TTeTgwd: '100000000000' +# "truly", "wagon", "soup", "submit", "tail", "first", "push", "split", "concert", "work", "source", "cart" + DdzFFzCqrhsxLSS4VZTqcDDMawN12zMKyJzwLYq8Z4RjCM7Fm61JXHCiic1pfaf4hppMeZPiw2M3rQjiC2t4d74aXoDse8ta5Z3updzj: '100000000000' + DdzFFzCqrhsfbEcs76dGUaYEJCorLheaQcy4Wv5ATGYTff321GZZWd2nJ9SedhTV2eNnmNhcpSe34LVaVaN4sEu3AUYGzM7cpma2pQ5e: '100000000000' + DdzFFzCqrhso6PQiCqtH18UaK4CgAYKuvvTQ2R12o4jZ1miVtmBKTh5nLTM9ny6Fe679UZh6msXA64rEHSobVi8oieig3Qqag2ywRJmC: '100000000000' + DdzFFzCqrhsw7HNhZ78mFEec3zRgJfZuhzyTtwAMqqP8Mr73pEFLqTgAk8qGTM4EnGoc44vvkkJRgJCSwLqFxsjePCbPKPBAeGund9Fz: '100000000000' + DdzFFzCqrhstHsGLQsQhYRe2CB7BDNtfsqnuTdaD11zu7w2XugfMfXmJuMgMX7vBZr5pc9mwwpaAbQ77QM7LjJP6h2uhrYHBNxbv2zEt: '100000000000' + DdzFFzCqrhstP1y7D5nGi1TXkPkrAv5rypvHtZE8YkD3r9fseTeD7Lc3EBMyRG2Z1o66u3bTpfm7Lp49LnhyBBGECyp6L72RouxFfF8d: '100000000000' + DdzFFzCqrht8b23Vxk4XvUMDpqMiAr9eLuF1e9k1RzTCXNSNGEfZuqzJnuHeFwVnRy7vTxoNquj64ywoY8xaT4wEYPmt1QbvbQ2Prdam: '100000000000' + DdzFFzCqrhsz1oyrwS3HQ8nAeK9yhPvC5vYrEE8jqmkixv4aKq1NudSn6giyNQQKuM3FhBGwMiJHhm6kYtMr7JQho1oGiKw5YAsAPrDi: '100000000000' + DdzFFzCqrhsmWNTz3GNGH4okFgGcxRzBG94NiMnF5GzoaZk4LUMjT487DvRLvCJCAqrQe8X1RNeP7kX9NBieR5mqkmgbWxVd3uTQJkrx: '100000000000' + DdzFFzCqrht7SbejtNAHvDRzqqipzjqFGXucGWZw2bPE9QrmAMEba4hzh6t1n64RJMDDbbSN5wE3ybEk2mLwFUmBPHoDoyoFGverPenQ: '100000000000' +# "symbol", "stage", "umbrella", "high", "sand", "tilt", "slight", "open", "kitten", "oil", "fade", "minor" + DdzFFzCqrhshvYUKNEbqNUyKbPhFiUjrG2wHucpw7t1ZP8Yk6YSGgrKe8U5hYmPUCMutkAM5UG6Mxw8TDs9tYBzsutEEXgS8L2gaBQiL: '100000000000' + DdzFFzCqrht8hnLivYANprN4uhMqLAbVAvpkx547i4UHfiDAeMQ8623wbqc4teWU2zM6XBPhys66yChZPLqiLiL1Bx2LzcUBWirRmTra: '100000000000' + DdzFFzCqrht3ShwB3C6aeVBQStc8oRo8mpqdCr4TmrzADwrz3ko26aqscvEUuFWE3JhwtKERy5Q9ihUYAK6AaiDXcV5yYt3e59ovZStd: '100000000000' + DdzFFzCqrhsebz3EtfjTYr7ZEEnQcpHG2V6Gs7zjo3FLD2YyEk2KWFDQ42LNczHZJAD3GtjRx6hxNA4zTPbEDxGakJKP7TKnUfCfTwgh: '100000000000' + DdzFFzCqrhsnUAt4kNHFcnZ6DWiHT9pbfMsBsn4SxUsWK8Snf8aDbskmKG95gLgyJQGkP76yedHhgEDw5ssRWeTThpss4YH7AvjJxea6: '100000000000' + DdzFFzCqrhsjP4JFevxikr6zU8TpZSjnoBcG81iu2JoGrrwAgvNgdYeVYGKFzq93FCsqeBfmTR1ktyPQoF3V7kAcaxj8aD6Rtuwr9HoS: '100000000000' + DdzFFzCqrhsrkt8MJdarX1ryE5DpYF8qLKdw7Pnz6S44yseEaByVsJDq8nDbgoJyNFNZGXKbXiaYqaLHEymWWgJT2Derz6zCRWgJ5VVV: '100000000000' + DdzFFzCqrhsuaHCL3YetjZv4gbVtuiTydkk8bxYdS3QD38HdXv7QPu3i2Na4pegcUEhpvGvZrRJWd1EwZyaWwEtx2iT3D9yeboMWZ8fm: '100000000000' + DdzFFzCqrhsspuoR5bGh7TGk7qpmrFYbSF13bibwZRaZA6fC1343UNC96H3fF4EjWr4yYxs93hyiB4FP4oET3DkdkKkwFthFrzcSfyTB: '100000000000' + DdzFFzCqrht7ZSUtTzHASGtimVWkSEayKwAWdWS9ybTVyE9TjAixq5Rjw5NwE7BpaUqRmzNBmqQKeQahsEHJpU266tmJkx2cDWCrYpQZ: '100000000000' +# "tumble", "grit", "dumb", "game", "raccoon", "giggle", "valley", "audit", "army", "mandate", "around", "basket" + DdzFFzCqrhskbcDjS3TkPMLcfbqFN28uzoHXVbpAaEJRk3H5TKXWZkDqcQPsLA5EQKiTNDWqCEWFQMnPU99yeZgQxtn5bja48LtPwUn5: '100000000000' + DdzFFzCqrht8isJrdTLQbE1qVCmoe4DY9uZsGiC6V9cJvxdvZBTLbmnx2wA7u8LMCiMDRDQZ67PJc6qgATvdjDmdvyAroAvmcJoXcbJX: '100000000000' + DdzFFzCqrhsmSLni517VQDeKgi6NioEP3qdfh1q7EH3cxStiSsrQnnW2kYw1VzML2PBS7AuNwUaMZAAM3LfPSp1tX6UsaLAo2QTZG1uc: '100000000000' + DdzFFzCqrhsxiFDvynFQEdNbwEjoxUwoYc88GC1aQUWpqorusBy1dyST6rX54cF33afGANNScdoYBtBd9TgZbmREuih9VqGrVFDqcVKH: '100000000000' + DdzFFzCqrht61w95SBc4hCcYuZmd8mbmQ2X34xRjr7bvVGtfUXVBHy7HpAfzfYDxaaLNJHbr6tWby5xAqWnMospUxi2Hn5TFJ8k1u4hX: '100000000000' + DdzFFzCqrhsrUmUNUR7fpRgSwHVJk3S61sfBpdiacCBmfiYvwKMdZocyVhUxdMa4Q1Nub4cQuKrdhkhqQXFqHtcbpsjVfXaVn8is57S2: '100000000000' + DdzFFzCqrht1VoBf6Qh2cg2yWa72rJAmRSrKvJzvRT8fyN9vZzk9eFEF1S1tg3dMmKYj6hpjABP14gd6jqph8GsQzxNfkY4AmYVSnpXo: '100000000000' + DdzFFzCqrht8gn3ATia2Nm3frGzNm5wJPSL3k4r9S33hgXWhBX7Kei8Yhwd99LtsfddYLV49bHid2QuVWv24eMBrQW72CiHmLH9wx77s: '100000000000' + DdzFFzCqrhsh6qkNtSLLVybmaTFP8TxxxehP2P6mX4zLx2fp9yjBoDrLEP6UfgmpWNu4Xmx3XfpePoq8Z3xnybM9XcJsSR1CWsrXwxzU: '100000000000' + DdzFFzCqrhst8Uw7gByKmaC9iWiJcdX6JXPBvKeY6H5cLgNovWX2bHrJpJn1ZFoB57AS6HDDz26EyBd1EW5SJus9js89LEjJaTmj6tbH: '100000000000' +# "owner", "foil", "vivid", "cloth", "bright", "hurry", "nerve", "help", "sister", "jaguar", "teach", "loyal" + DdzFFzCqrht674UZJL5dJvsbRJPTERWPdcNKqhyw6WY2rQhg1bked72hyEhKtV5jQy69NwTj8512955M1oKkMv5pNzxd6UJrKsfXW7a1: '100000000000' + DdzFFzCqrht5bgPw6xdXnB92xuCvUyJku17s6qZNZrVG7vJZ9ytGR3fhvwNSnS5rTUpJtJBnywJPWNionHhwugusHHnkDH2pnDv3dZGY: '100000000000' + DdzFFzCqrht1WUNQWNky85reojZbvftJJE6BEwJoxHdh8A7hkJCz6YNEU1Tubvkdm6tKm9UoWZzjLsLybPHZd75mNmFBzsxv6hsjQ8TS: '100000000000' + DdzFFzCqrht1sa38YvhKjmC8X7PksuxUPLJoMa4J6iZLHTVcTUPmug37aiTvNSKz1wecw3H9eBJAyW4iQY99ChvH6xYa4yk5GbpQC4jU: '100000000000' + DdzFFzCqrhshKv1mrTmmVvMmv8RPVeF4F7BwuUMsQmMzh85mhUcG3LuGvKoNUeyScoX7B6AxQVwMJxmGyi4gcaiHdUgP1pzKubSKDJ35: '100000000000' + DdzFFzCqrhtB3isMxmMqEinxsNuZFDUjEc8YiYPauQ6Wk1i7dBZNaREeELYdTPma27DC74wPwNHgUEx3ddA1UqzfGPm7LJsQ3aXeKyCU: '100000000000' + DdzFFzCqrhsj5EJP8ixwzFQ2NAj2wz5DgBWqPqBRwXacK4D3v9QXomrVVupMvUnLWP7xMVJxTcQeXfGkxp2WCFwkgueHCnR8fzAP7wkS: '100000000000' + DdzFFzCqrhsqmAPKepyznWeoPeheeWUmWcv2TL4hpRRT8hFajT3d96BE7n4WhK1weN18YR18M9onrTVqHdQVLvaLFf64PFDh1Cd4ouBn: '100000000000' + DdzFFzCqrhtBe52zEhFjdGAsv7LkaYaX81Ho5yygUD8hLnhwxwoSiL2DyhU7YF4qyfcPfu6e8ZyViyhv279QbQMTVwqwt4Kd88Drmt1V: '100000000000' + DdzFFzCqrhtBMoPC1cJbMPYeLLHay9qazoAqHmi6fAtgVkedcoWvUrkuANyzRwmL4oCuo5SsUwbLCvUTLyPKJv8bN1kd31Gan5hihJUQ: '100000000000' +# "slender", "topple", "urban", "axis", "swamp", "guess", "dizzy", "correct", "visit", "valve", "ivory", "citizen" + DdzFFzCqrht439benSkBHLrLHaicWnug6otuF8bLngSDYKpQZk4yg9tDhRuawuB8hWACk11qAULoGu9vM8UPqoYCdzmjRU5SYBGNe3wj: '100000000000' + DdzFFzCqrhsvn3VAfc7C5ntUjZr7HDgmCREuiJdmy7YBDqWS6mYrmdRRZsc3FVcyA1xJLoNzjtkuhBqrFwpQLVTMe2AQBXZhT5RBMrED: '100000000000' + DdzFFzCqrht1AD6wnMCZQYRXN7yPmnPFyn4ckJXcvfiwkxqJY21C9uimHr5YGuEtsaV7LT6vWtYMubo2PsgSDzbjkhs2pVgcEgqPb1R4: '100000000000' + DdzFFzCqrhsyZKJcjPdnL4yFT5iaVAHTbNwuVGwR4s9FUZoRZRtnky3WaDuvxtPdw5WDJXxtnf1ZxHvvVaemvH4E8qvif5w4L3FMyq71: '100000000000' + DdzFFzCqrht26W3mvKYkUrYr4aRXumECNhKYJ6oni4VhrfEsFRT8ibVgoeMp5EGqjf1SLojTcejx5dPXbxienJLsjaaeBLAjGLFVQGXG: '100000000000' + DdzFFzCqrhskRMcqPxXszeaaa3e3GeGm8svQEKMXzGGaFrxkkGeUmQqLzga4yG3NU6ST2REG6dvA4puebdrRF7Pb2LGFiCsTTPSSCWX3: '100000000000' + DdzFFzCqrhsiRDd2Yg7sRQvzXzGV1KH7ud3Mayof939zqkmY7mBKPDVVczmVLhZAWs26BLg3D9jDqacJZLq285mWSKVFdjCVCT9bUs4i: '100000000000' + DdzFFzCqrht5fwqThtNT4fw6zXctvuHhq4M9wjPVHYqdHDae1h1NwiZ9D3xoeQALXLEdp4rQRAtMK2sYBWTxSN7tuHLNyZ5UUr23aMCW: '100000000000' + DdzFFzCqrht7ZPByhWy3JoK6VWHNH4XF6sjV5MVvtx1v9a2eVLiUSUce1HSX16dSbS3LYYeh8uQMPW27fuG1P7kv8HprM7ebX86m1Tdg: '100000000000' + DdzFFzCqrhsqCo1nbUfeKbuwBS8MRSAfagH5jN32GhF5tizgs3cTSoHhEDtXjWmRXw8Bu49CLQ3pZ6pvwk2oCDACX5fefMcU8vKMQzTw: '100000000000' +# "humble", "song", "wrap", "future", "cinnamon", "accuse", "bright", "speed", "inhale", "alien", "theory", "main" + DdzFFzCqrht8JyqFHBZGvCmizKmfH16WePzznmEFozMByVHVnmAbU69U4VmoxSeBxzyJG1rtcdKkSMjuzoJNe3VXnMkUVDzGvQcYTkGj: '100000000000' + DdzFFzCqrhswufamdszJtBM6RjHjdeKxMuRWFb2YmRaUKGvVY7e9rLdvzXAY79HEiJqDT5V4oLEX8w3JExkAT8XuF2ZjFHXNJY8rvUFq: '100000000000' + DdzFFzCqrhskfDsd7cWp7yv6LUwcb8C5DCDSdJ6W3VVMyJzZ3RdsfQBbcGhcMVqzz6ZbbwoZn5P4c76fzKjUMm7kWFNRRtYB9gSNtiom: '100000000000' + DdzFFzCqrhsgMJmbPNm8trUEtaSvF7MRorHnNL73PzuCL9uauuUUN7K5oHsop6eXjtDPywmBsokBiHz1zQyf6GGz1L7nDfmYn9gsUrNQ: '100000000000' + DdzFFzCqrhsoXKATuRMKD8rih8rwiRbs5aJuhpVLYCVYvafwgcpwjNnid7NRBeu4k68EVhvL1QEA18xbAWDW8kn9uJSsoTjwQMDNUeE9: '100000000000' + DdzFFzCqrhsot5S3cdu1tojRcN7cwidbvpdiWscrBGvvegZ28d88JvR6CyAceDCoZhw48X2R24XgVLkTbtZq6TkCUEDtXRhSt9WEmykx: '100000000000' + DdzFFzCqrhtCQkRpBXwvzLQHmJqPBzoVngbyFGRG7D1cQ74QhKCo5f9TSUF7gXXZ6E5aDQjm5BihSwvufNCZ1WZ6nabQ9Fhnt9M9CdZF: '100000000000' + DdzFFzCqrhsgP42mxaHtCFnubPXFeDwZuY2PPL2DcZxc5swphMBNrFq3i3FPAzq9CbRWKYFZrYQgxkSXNHo4zhpV5e3rTgyQ5SkWdKNS: '100000000000' + DdzFFzCqrht5aik8mrKuZVVuNtq79aC8mn42CMYtd8C1qTJTCthKqisf5N52mxDv7AbLekF3mCxYcPuHwDXYL8SH5fmQzPLsY2xJ5ynv: '100000000000' + DdzFFzCqrhsvmoPxZCuCx3ZCXmSpEeAoZtmXzwg2SLUiiXqNkNRmPjCXorfmUrhsiYTBKqo57AiRQMoVxrJdgXFxr6UDYmeGbn8oRmmr: '100000000000' +# "purity", "latin", "danger", "dutch", "avocado", "endless", "off", "scissors", "junk", "biology", "dial", "glue" + DdzFFzCqrhswZ4zGD7XBhJhhafGzTz4nCttX6kMtDdzugabPrcaac35qbKNau3LV4Qvk4zKU7NLXBYE9Yo9wbNkQwHMYjYkx3BpiyX7t: '100000000000' + DdzFFzCqrht6jLpBnpFJkUQy9fnmVzETWPfXt1dPwJxvzWWJBQDTTBsHN3HBWU81tZhmATnXR34GmYAjYr1AmaF7h2jt9htTmFJvNTMU: '100000000000' + DdzFFzCqrhtAxyonZvFvDfbDpXnzYV4Hva5S8g5sHDdA1d5PKeTjpkD2HY53S7YPL8og3h3xxK6Z4T9NqgbNx56PkjWTV673jnb8foGX: '100000000000' + DdzFFzCqrht1otrMqMYaaa2DR1mywJMLx2mLcBtv7Agcr25ez2yeW5Az8URR3a5GQqjqyAcMLcpkHsJLrcY9mHfLGkNZZXGzHJQeHMUV: '100000000000' + DdzFFzCqrhtBAjiiCzh4jvK6DjacJM2kq9ig5K7gm1EfGq8CxYkVJJGQSjFhsY41GjEr2Ed5e6MTJcCWhnaC7YWU87VQrwffBRqtJrSU: '100000000000' + DdzFFzCqrhsuQJwWwhu6Vxpic7WZHWq6sY3vcHh6DuftyLYmRSqfgMjgsEAfTewQx2qzASm84hXsQBtweAAHuceJSuq8J71pQ1Phe9Zy: '100000000000' + DdzFFzCqrhsye2oD2kUWBVMp1tf4BCGCs59fRrH95ujZzBktXhQsqKW4STScunHzpo8ynrK17NvhGMEL7SKz1Ahs1ACqUNdNeZgdpJuA: '100000000000' + DdzFFzCqrht2PHXFLM3Q4SiZx5fRAPFz3KjuMJZGxifbormZCwBwzyz3iChnntXRDosXTBuDcnkCbpNnLfVqZ7QBs1BSVxPexFKKkWhC: '100000000000' + DdzFFzCqrht8R7cPMGDB6Dc9j6iWJiPqddfNehZn4Hm7qVZd5ZsuP7fkDAc6QJhKj2UYmHW2CugNfszTdtXNXt1GfobUJAZicnFDektu: '100000000000' + DdzFFzCqrhstRWBbLghUCXd5Gnz6hYCQ3UBkzDdGwHRg7xduF91Y3uP7XvkNtN3HS8AXUvfB4zTN6p9a5i4AUWshgTGevpGvaUvGQauE: '100000000000' +# "lazy", "aunt", "obvious", "pave", "abuse", "loan", "coral", "orchard", "fat", "tone", "knock", "tired" + DdzFFzCqrhsnrMBKUQPpDT7FuEx7GE4wR6rfeeZTfZXZM2rbiG6gctLxBjbG6hf9w4KbSsSFWBrZUsS69jJhnBDwDTPAMXmonZTEaaJ9: '100000000000' + DdzFFzCqrht5AHhMMbfzKf2shQcgSqdoWq9g2aZfbvMERPGjMqUru1J2LwUzDmkeQoWJ7gMSyfVWeKy1DQ3SxfToGjsWCX2Rc7wh7wwQ: '100000000000' + DdzFFzCqrht4x4UcjeNeUKLETyexLqRaJZCibBDPCTrChEi17DeoX4DskREg9Yt5SpXwRKB2MRFaM6THKDwDMWsNZJcDhp7xjjDPXBJq: '100000000000' + DdzFFzCqrhsqLja7ksswD4V54MUPjWuVKbB2WmvhNvLpJjYLsoRLhHhmVYKp8B6TjPdm3jStFhpvFuHGqgfKYsiwersy7c5YawyU9XLp: '100000000000' + DdzFFzCqrhtC2RFhDpTrKMVhUyDkoqB6rbn5XWm23EFRNHxiMYpRVn6oHNUudLkDnVBhsE3VoTraucUK7gEEozNzu1aniXoRZPNr3TV6: '100000000000' + DdzFFzCqrhsztPvaC9obe4uPPeReoe8Yz7LGbEvgoUMURW2t26ZKvCKQHRYwa9q3qmea1Wq6Wez7N4wMxKstZvhUSMKGq2mu35YQSncp: '100000000000' + DdzFFzCqrhsmEdDDkWxW24xZv4miGsG89AP2TNgC2r7EEAxtaDi3ueEFveigv7V9ZL8Z3aDcuZ5jni6q3Ww9DZ3th7PA3bvpGz7JbNpu: '100000000000' + DdzFFzCqrhsky1fpTgvjfyfiH5oUWprVjckb398MjDj8bK13wcRhz7H9BbEsjCNj3Rc3xJnLkDNSkMcY5QQoAznRC8uPwfhXkk4HMhAi: '100000000000' + DdzFFzCqrhshFQU8vJQnDd5xgC7b2uEZX1RPibumRJSEdsBUQgWS4PGhokHc6XBM4h7tLiGirAhMVVwgJUpTxBtxoKbp3pXtCBnHKq3h: '100000000000' + DdzFFzCqrhsqvYYfAtrwybXyrZ2XfGpEDN3WTMyH2BsgehC6GWTvs5CvQW1eekvdPWDQU6HLbfETVDugNbeNRYbfKUJzyLjuVVDtmWRt: '100000000000' +# "fantasy", "kit", "luxury", "combine", "bus", "hospital", "hybrid", "stool", "cousin", "gauge", "grid", "audit" + DdzFFzCqrhseP24Yu7xxXQjuKzhQyCiKb8edL1qHVaV3K4fUgEAvHdeYAXgpGup6EeY15pGvVfFfkfBSRncse5pFijhLy6tGX97Muj4i: '100000000000' + DdzFFzCqrhsusXwj2sxaEXmzz7wAy7ngdF3pjnm1f8U58VcxXRPG6Zg3zsU5xTpUwsQzKTcXj14KCffdy9hUmo5dUisyZgGXWiyfoptt: '100000000000' + DdzFFzCqrht53feJEW3NDHkikGTpkGHoSqpwF24kWSEiFd7P6ceFeD2fptSJQ94yiCzh9FgqH8AdNk3gczsBVv6ADDvJSsqyiKxjd3vS: '100000000000' + DdzFFzCqrhst4iBUkfT3Pj5xA6vqb8e17LhFHyKkLiVyUxGc7vLkYSktaJbC6F36j9d1xN5vX2hkgRHzMaN2xkaGzw62WFnRFVauoNb4: '100000000000' + DdzFFzCqrht8P2ybUJw33prwqPWbkdcbhHNy5QhsfBosrV7toU3R56kFjhNyhdK7gZDHWojsKgZztJeGidTxh81wLHDKXxBwqj9QBcyv: '100000000000' + DdzFFzCqrht6NaQ9QkkRx6UrqFLquWd6gGicBcu2BxWS2bP9cXmhJ1Jsm822Ljtq1ir13R5nZETVGZNRtHjZGbddCywVmk615kJQuLcc: '100000000000' + DdzFFzCqrht7ncG7G1AuvaYpLn5E6zrwja12rW2WatbR5QMRaLJvoCKU4QLct2MFVe9VGYbRPDtJBfP7E7PapKuoKMyU1qz79fD6PR8G: '100000000000' + DdzFFzCqrht4N1sj7JjkVgdLnL8zRLG1RSF4RmoUoRS5g3JaMXcQfTMXz7fgxJQUULK3oUcgS6j5ZyszEqFZtRBoYCZ4Zcm5SfkFAyJe: '100000000000' + DdzFFzCqrhsxSdPSYTEWC28j8gi3qWDXxn5VgHa9XWWrYPja6V4xBmob8svGQho5AHFWCPNHcT7XHPBEeYcVtaMHybNGgzYbe2jaiTiw: '100000000000' + DdzFFzCqrhsjJfTgS7pG4CNtR6zCJhVHFaqCzhfY7jY3Cf8CxLqdvL2QRMcuAaRZG5ABLXAcB674a4LVWTbM1wXJ3ADz9Tg7PHoEbfuX: '100000000000' +# "dentist", "inmate", "sun", "town", "fame", "cable", "sport", "depth", "scissors", "rude", "yard", "harbor" + DdzFFzCqrht5QL2ZCjRu3vsp36PReVKRqjGr4UqNU3i454psdD9hiLMC6JbhSncwjyFBNjwZiBWCUyY7ty6iwpCUBT7oyk5Q3PkrrhQs: '100000000000' + DdzFFzCqrht9zucT19Ym69mPEorJo8XnbCafwr8r4DGGJpezxMDeWASyZhQNc5vmMvE7wm5VX39E9oeC9VknNYbt6cZSeHn5pkWT6oFu: '100000000000' + DdzFFzCqrhsxU6yHdTZSq7ybgPcRdqgLgiZ66Etya1G7oGRAonUGiPugqfYu69M5QzTMMvZZLPnybSvjWAy2BYwBk9WNdyNBrQNSQSMw: '100000000000' + DdzFFzCqrhskb8geC1uij7PH7g4f5DNkYxcfpPksiKFmhZPvivukH8UiqoqtCn8Bm4zjMM6tE4BZ9UVpFvWmJqNkZSeyoi6XnRAseYrv: '100000000000' + DdzFFzCqrhtDGHTDogrmCeUYB45ADfe7jsUD3sX9ZTep8TsVefuxjBA2nDSZ7wD3h6RyfZZXJJxJssN4x25zH28s7qiF1Hn8vKc6bbxX: '100000000000' + DdzFFzCqrht8AbMx3Y8KcapH2zc5eqKtaY38ifkS9cUjzZtyFT2bNTMWVuJQwLQmJ2Q5pL4DZQau6bqjH7N2EttF3bdmyWVYs311ue1a: '100000000000' + DdzFFzCqrhswKhHP8yVXgyS8Tv54T3aNHjvVgoYigggyoiMD6847ro7zanHEVsKHgjtBi12b4pAYH86uELcSKLeKFfqhsgDrCXJ3mUh5: '100000000000' + DdzFFzCqrht3mSSgh6tPYh6hTqnWwne8QTHmuDVwExYnVmeNESsfS9o1ps3YqZ8zDTmCBLm36kya8kAknxv65FHq1mzuXEeh1xru4uvy: '100000000000' + DdzFFzCqrhsyENFC6AjpwnanwvCVYFEHjDuP1pRaLSKHiAMs9u32W7vsUChmK22p5AXT2ExmgXPfAUVaDVBGuTPzM9nAPPjSzJ5cKcUC: '100000000000' + DdzFFzCqrht5LzM3ujWHNuo54Tw8psAzq6LAYmfGsbyUGwQePcKK1oEb9qF5MCAmoWtaNaQSnUiT2oEs48UkG8TRrj58hfC1MaAPNEyk: '100000000000' +# "bright", "item", "flame", "august", "consider", "rifle", "stereo", "end", "very", "bright", "matrix", "mom" + DdzFFzCqrhske3AMwb4scPsfK3Zy2TtD9Ero7R89482cKfvow1oCmC5eovgrykPrPbU6twceG4ChNS6jzxSYgUG8CUov9XzJwpzfJi3F: '100000000000' + DdzFFzCqrhsvq9iJqPVr1qMsPFT4DUzD2TuWK9F4WE9B9GWZWaad3Evw9VbdTsEkEebS4YaDiaB4tSiaZupk7mqPhaiSLJTPrY9Tevzm: '100000000000' + DdzFFzCqrhtBXs6wxxRnJBfr6PM3fQxx5gn8jVMzzS9DYhdiTsZ8wZwvBTazaYZuVoov2U5Ljr1Epaz41td7UDgD2iMxMAV3rqbZ7P8W: '100000000000' + DdzFFzCqrhtA1aAZb5ewZvR2LbkjcQjSAPGqGwkZwQ9XQKJRwTUVCeZYcNrNXi5T47SxRHQ27bJCa1fJkvi9rX2Dr1ozucSDMSYY9bxX: '100000000000' + DdzFFzCqrhsnCnZxEgwwXu4WKKSNADuPnrid5sUzZKiEx9b6KGPuksyM2gffmFN7Ar4EuB7sggome2ymbkNZYCfd6H4rw7e2hwNHQJcF: '100000000000' + DdzFFzCqrhstxaRYq8wHTYkjBhaZLJBDLGRZDM9RnrVvbvWT21SogEkoG1mAoQsEHwY19ypQ3EiQa7fynmHvYUUZkmHtD9RGYi1KhCCf: '100000000000' + DdzFFzCqrht2w1AnP5nUVdHNn6D3TUKP3dw6bAijbK1vzUzD7sXVPothRffWVSXAh7w9UjjLcMzCznNmv2JH5zsK4hmSpX9pGRx5jys5: '100000000000' + DdzFFzCqrhtABvmYEZptEVcw6gxyTd62k6fhPLtpP1Tr6CnJEc6dintCNuZes4KxH4Zhmm3TSZRVUWLwYKxZ1K4ijzuZvXCfkPigRy8t: '100000000000' + DdzFFzCqrht8qGErRZP9pdNtioCn9Y6cRDNXsu4UyrfzxnEzCnEVPjcDoKZKQEvaoNHv9PXm19geUXujR3zWMQ1QqQ7Jp6X8HfTYbGNC: '100000000000' + DdzFFzCqrhsovhRtApboKb3prBCub2m2fTDcJ3CMbc8UzFbifNQqrBSh4gbehxPjqLGYdAaWShfUYDKCHCpQSYPqHWSbmcQJKuh3D8sz: '100000000000' +# "today", "pattern", "bacon", "version", "differ", "pony", "universe", "snack", "weird", "toddler", "belt", "door" + DdzFFzCqrhsxoTxVUtpWvdxki4gQ17RUQWrXYHbL6YagHqVQnsVW2v5XTnhxFnYriPVS9Ar6LgNJ1iL3R5Aia1bpJypnR2nkA9WHbSGm: '100000000000' + DdzFFzCqrhsnhKt2MWvXBt2429LxvnkwJ79kmrG5WiM9Mkc5wDQNPrj8nMwFcZiRTPnGE47tKUg3TwA2Yq9vovpMSHRTysn1rt2SbJnH: '100000000000' + DdzFFzCqrhsjKkvakS7dVrShF4wz2orNBSMJMGpeyYNkN3kvN99gFJAhhVhFxVExHxXnmhTkJtcHWrRpY3xm3DAjC67t2CiCcmhyxyKy: '100000000000' + DdzFFzCqrht6Yy7op4YtaarvDjZtnQqF3kaidEdSaGqz5WrqhNx5x8jirBwjTFM9tcg6phXwkMdAoj3DoPWrQAC8hQ3rRUDQPZcxFh9K: '100000000000' + DdzFFzCqrhsunHKPAoacUVWLjX6SdGeHMymcN98WjRigakuNumCJeyCoDaYts13YS48tTkGYaP8ii7aTv3DvMaaHg2c6UBsTrzSB59Xn: '100000000000' + DdzFFzCqrhsmLc9QdkGQ9Dwtv6MwinCXpEpAeMz7Uc8giDk34Ud9Y5iTL31kajUbVTGNJ7g6vF57mwhoEx26U21DHyZe5kPWjVKw57Eg: '100000000000' + DdzFFzCqrht8F8ECWdQPVEZM4z6zkiMnfdVAjHwsSSGFyKfTe9NWDYfv9iLUcftptXYuj2jSKJ4YU3VpaGfKaxNsS3aaorervsgSLUy5: '100000000000' + DdzFFzCqrhsr821ubDTtA2N42NY2zBcNb78csH75ThSxhKVYGWjGu5kxJqBQkrpvtNXmSHawPDgnvtuWCpYCtmxKTJK5QArd5ztGXSd1: '100000000000' + DdzFFzCqrhssQMjAmz66DvcAfSMfPJxQSfNd8cA9vuknPoin5zS6QJ3ApW86EPhvJ4RzzkYooEWw2XWM2KRhqe5pqLF7ZZL5YUFzqupY: '100000000000' + DdzFFzCqrhsn5WhR7z3AGj5p7jZmr9YdAzojZYQL5s4ug5XFtZet5NodNbF2NuKpYki4GhYk7bM4ehhnCFrSzhveUosXbrF24XqJGFV1: '100000000000' +# "veteran", "omit", "knife", "wrist", "truth", "agree", "rhythm", "world", "dynamic", "duty", "saddle", "dove" + DdzFFzCqrhsvnmPSFn5k5NyjzQbbUuXsdvBrwrzirDNJz9T1m1fYc6dXaa6RkHxfbtpiHoiUiYM5VFDUfFRuBP9FD3UehuofKujo3EWF: '100000000000' + DdzFFzCqrhssFCusazWHXUZ7khgSfSNbXDUTrR9u1tc62Pmk6cy5PtYoPqXAY4wXnAZccHVvJQduPBQ7Xj3BmYUaQjAtACiyS9STsWRW: '100000000000' + DdzFFzCqrhsuX4Ju7VST1WP5jvWamxTkRb1ghrJwSedFhBXiZtdj6EYAGW5CdGwF9NeRV9g1GS4ttYso7soU1BvYp97BL1bJdrHZG7Pb: '100000000000' + DdzFFzCqrhswvTyXzhkrufxNkSMQY2sUqt7THjne3wqUmqNgRsUVXefxHGZ4mUq2FjpSKngah8Kgnoboxh2f3HsTXPi9xsvjnXxiJDLb: '100000000000' + DdzFFzCqrhseBfUQzpJanYhPqpBQdYYsoJuRrSxAi8fQbL4Sm2UtLjNRbm7T9Hc1vKj8BB7e3M7F3eLRQUFNRMqwjgJfJ4ANnFSoRVhU: '100000000000' + DdzFFzCqrhsxTE6PwWFgKnEbQo9NJvBPCSoTobkaJmQRXJdwhiJu6sXGn8oLQhfXsvUjskXetp4phZN6GPsiYW2CSNebvbkdiiWS7bm7: '100000000000' + DdzFFzCqrhsrQpCCp4LgSTqkw6PPKH1bkjQ6KAznmSK7izVDaRd9c4WsMQfKonRU1WSX3GeSzQw8YrSLcZckFiaKrdfGaKg5ps7CBzph: '100000000000' + DdzFFzCqrhssA5bm1sZwM5waYSF8gzKAqfKcPHmcDDztCSyVPLSRT97YcpC9wH3ieVmbcEft6huGCHNKT4JWGuVU5RdyVmN1Byj7JV3S: '100000000000' + DdzFFzCqrht4wQ9tURQwpDzMHFkxzthYn5GmgQujS4GFYLfXSCCmujY6rKkW65oKMDhDv3MxrwE564CdEpRCX9TthjxzRpH9K6GgjbMF: '100000000000' + DdzFFzCqrht4S2sfyY8nsiLJa1L1LeKVK7Smd53zYBhwwDz3XsnaZot7QNUrmG8TsfL1DAQccQ16fMJYDvLoQMQMv3i6q3CZL7KQzaCR: '100000000000' +# "hat", "city", "disease", "patrol", "answer", "select", "vibrant", "tag", "dose", "rebuild", "length", "sting" + DdzFFzCqrhsrHg2753KenwVkzJJKJCTLad3fydBmQaDyy9Z5AVwG4fTLHR7dAPm1Q4dw21vekUTb8RdFkgmviRZarBiUqxF3AqcFwuL9: '100000000000' + DdzFFzCqrhsnoygDdz5s3jHhZB4aUAGEQKHPJcbAAuEzcY4M1iSRh2tcH8r1Gm4QXEPrhtfq9bXjaEhxxrsQRDxwpNZfjiK1Qk7ahkMu: '100000000000' + DdzFFzCqrht2Q922m9WpwHYxStkPMHRH6T3yCW4TXPBMuTJhr5zGncVygCURWNgdrgKBqsNojqK5VWPpDkr7rsGF1jdWrreweamKqFT6: '100000000000' + DdzFFzCqrht8zHHSqsSqGVUYzS7XN1ZxAaKbFh3A58a3Mh2f1MDff4jHRmBe3kgqTHkr2fo4ootgite76yMqEoJqRd1EqoEf66FPDbFr: '100000000000' + DdzFFzCqrhsmajz6R4cJmAmsiNdS2DTz8xBiiHufwwBziWFJFD12B8EsvhJrjTo4o497CZozESxaSp1j9RsxFKUdhTXeBgBWUdBdT63D: '100000000000' + DdzFFzCqrhskspMSGoJsEBYtrthZpoKgnMALXkn1xvj6FLngpveHxH9Xz8cjNGdPLUVvYMXg1AMLAGYGBa4FqNn1Fg3J1spJsVbNwwkM: '100000000000' + DdzFFzCqrht7JdNAPQCq89zpLY8dJ4eKEBZmfRW4qR5QHnJgnd4sXHYmotehGRG3riec6dDQWVx9PTtNy7wmDCL1y86WpyPfjejwe6cg: '100000000000' + DdzFFzCqrhtCSH1pouAatoNeF4MtVHc6m9XNDQwXVTiBYsZTxJoSrCmBncAe51t4TZ1kmtZGoCLXkSUL2SvVdc82ne7bw8y15GDrVt2y: '100000000000' + DdzFFzCqrhtA2vGMiYJss5afhtUN63EdLJk1mxnvsXzhygZgajKzEVxURZpu3EikvVAppnAxgg4nfRJxypREE9iGjdM6qx5cHj5Jpejw: '100000000000' + DdzFFzCqrht3pM6bqHYcJRsYmiLD7NkTnty5AUVtiUmnUiGrpg5Rt5xwmsntBe2HDrsrKteSTSDbfoydXALXk89Kzdp9JobQbp9J1VvP: '100000000000' +# "liberty", "lens", "entry", "marriage", "bean", "camp", "phone", "charge", "alcohol", "boil", "plate", "banner" + DdzFFzCqrhsr27QaZfATYvsqjV98vMFEgvffD4tRsPefxJi8MHHoFQMEJ1ZV2msWyCgYb5Etgh4KV2Sh7YL3FgwJHuXLuVTYv1acdKnY: '100000000000' + DdzFFzCqrhtBb7mNhy3LowyiKRjci48zwuUqXGzZgvDSLt6mWWdgw82zmLprfhmLK3pS3JXYSJMPfndcUHBPWWNmyuS53nmhNF55CqLq: '100000000000' + DdzFFzCqrhsnB7u8SrdGTMgf3PVRUyz9gzsK3YCaDEP8G4rytti9REugshq2CCstwpTkg5iKguR39K61vTkxeHqZNaSqPB1ZATsuhoTj: '100000000000' + DdzFFzCqrht2Bhpc4Ba6nT8R3zAaiU14vhJRSSHgtbGYWziqUMiJ6FnDisdhVtfyUqyfzsPvUjYWGk37xHxqDCz26427wXCpAN5j2w9C: '100000000000' + DdzFFzCqrhtCV7RYuxXAwLnAu2rkmcVKasbuTzSbjwbQPxHzP3KSbVudmTKgBpRfnzM3CVs6p4nBeegnqD5KC7v1oXjfw4rEVNQg4gVC: '100000000000' + DdzFFzCqrhsuuY2n9bbyPKxT4ZqqDVyAvFqEnRnjabaDPDPNQrxPruZEGUVtprsQtTFs4h7kGisCeF97Wi1GSaaa15EFSneM9QM2k6qe: '100000000000' + DdzFFzCqrht6j1wgApngbzBXbnpFVQfPg4JQ2b5C8U8pG5M9cWo5v8rAVo1nDGMPphyfDVPjS5rc4sxb5y7MXNjb4xsDjEZ4UwqvbSYn: '100000000000' + DdzFFzCqrhssKmUtBsrjbWL1iT8oSeD13MXh7yrkVmecAYv7pUYfNSr6XRT7qQWcWHJxaYYuPwt2exac1PBTpZV65zapvbnMLzu8wmd6: '100000000000' + DdzFFzCqrhspPtL3MfMcHeSZ4wQUvac6SPGNCiEHrXbqfzQ748Ne1ZUMmBUzVkN8RTZXqGwTPdMXY7qnWRUmBGoS577wqvint733qRNK: '100000000000' + DdzFFzCqrhsr86UF6Y9WhdAY1dFyv3dkwhGBGwNwNx19wvPugGAyDEDwmyQgVTNfCHGZM4FdLSWQzwfXo5DxDRNLyizsX3DHqhCzucAM: '100000000000' +# "talk", "glory", "minute", "include", "flag", "stuff", "laugh", "auction", "benefit", "escape", "confirm", "task" + DdzFFzCqrhtCEPtsXCc19jpjRZX1yL3Bfp6FfP333DZ4w5R6dCS1CkCAM3eQrF2dsrNs9YaanbhBoYoZXabrKccYDqxiqwDCeXjCAy6z: '100000000000' + DdzFFzCqrhsuJ4KGXPeq3D77Fh4qgz8XKkJwmfG84fEhcftKyDVGzfrpPsp883F39aS2DFAjACLUVDKuxARh3TjnRk8hbah9YLbJ1VFA: '100000000000' + DdzFFzCqrhsfPshhTyx3fsWoDA4JpYgAeUZYaAgwumDqF3E5is8hpD3qQJspe5SrktkZpkp4ACSJvz6AEHEGqA933H6SBCBAdhS2qHTs: '100000000000' + DdzFFzCqrhsid645qK4Emgvho21JkCkMXNNsjeYDnGxSFtuy3VVm6BSvGuWSqWptkz7iu9E929FaWVtnX7Gv58Re1TESYNkhTcrFBnBY: '100000000000' + DdzFFzCqrhtAny6YTDBw9BqR6B8EjhYXk4f1FYLGBBqHktdetgAT3MPKtgBVHw8uw4DK6Das5Ya4TkbmNqwgqr7R8L4H352YsSfL3X7B: '100000000000' + DdzFFzCqrht8qqQVBVJ2mcZgqahX1BQ1393XV7ZUzZw2gzqWy17nRdrCvPLhrxULWFuxXmtdYYp939BSUuAvSWsFvL7ymkeZbvdMEcnE: '100000000000' + DdzFFzCqrht2q2XaYTfDdAzG69xZjdFtYj14EJTkUdJPTkFPtDNzKuQGjrbNwgYi63GrYCLcKq5syU5iUcFBHDSYUVJtu1bLaDVg2i1P: '100000000000' + DdzFFzCqrhsfHLcUKMopeMSVjbUU1waXdYzdvsoBEnoQGQ7481AMZ2SjbMhfqaELD3baKuR9UgtpEHPtdP4PYBNcAH5qL8fsvEMzrYzz: '100000000000' + DdzFFzCqrhsoBY58ytmcdEPBpcNsNZSZWxmc4tUajwtn1f7BLYWjuRsZCj7aYq1ijesCTVJKQ3hNSSzRzYV8YehCZQmbNN3VREzDQYuU: '100000000000' + DdzFFzCqrht92ihcWZLduFG3k4KiGgmQoGhSBEPExHDCh2NbSqvra7GNix2RjYfWX2otBy1iv8CYQQb4g1MrtSW3CT9Fj7fg4pmuf7Pb: '100000000000' +# "joy", "convince", "reunion", "increase", "core", "venue", "palm", "scan", "wish", "vault", "until", "rice" + DdzFFzCqrhsehNKvbiX1iEthbn4sT1nucdcrAEeJLnMs9B8SnGCaQNvq2Dafs4SikXnRPc1hdH9CuEKRNN999jd6Uo6umqeZd7pcLGYH: '100000000000' + DdzFFzCqrhtBVnrSLcUGj7wH7iyf1bHrtnrHcoaUWg9YQf88NC5xoDpwuxEm4huiLhNN8ti8ptX2GzxC2GxNnWT8oXx8snLCcbvZgdMX: '100000000000' + DdzFFzCqrhsqmv1XXKrBZAR6fQdjA9DdHW1pfgkPmrak7qSmbvZTA2XwXfPZnc8XimHLLiA3Car9K59StccqNXBqyBcsjUxtQRSHyrER: '100000000000' + DdzFFzCqrhsqzdSBWXQkUJ1mJWxUbPgXo3vFnTfA7A6G1FbFTeaCgp41PD4cSbr7YGdy3Xe5imXGRnds6mTeecC1WTVyqBiE4A71FJAP: '100000000000' + DdzFFzCqrhstAu5KnBxgNCTT5XJdYQ3XYwGmsp6nuGoPXtj2wPGY9vLEzvsAYw2hmkei7EBpPEaEE4jw6fnJGFgQeyZj7A9EFUxRF9aA: '100000000000' + DdzFFzCqrhsqiQdYJSpcLAPXpS3ENoiQKbXRemTrZL9fUvFxWGzqtViSihqhNEBJFqQpTU9AWw81M2vCrLyDNV7Q3wu6MgnZkSk78u2f: '100000000000' + DdzFFzCqrht1BE19pzkzzPFojKNvgUHLrEQZUqDYi5GSnyoAu5n6pgUbhAbEtdY455QEMbLQU7sPKgL46hRf3Aydr2uw3v2NycVsnc9c: '100000000000' + DdzFFzCqrht9YiSBaGY3xNtoKxzRjwxGAqVVaX2LcdUxvPvwsbmC8mKaVDaCWpbsaMCxL5zZgcgd6XcykbV6Rp5DEH2UZ3t9kVkL8pvr: '100000000000' + DdzFFzCqrht7icQSvUaNXxLMbS11ouxKytJf6ZetARe8Df1fzoSA2jYAUtmmcBUs7b6Dnbg1Q5RhYWsbk8GksMvpfVA2MCxc3C7fAe2y: '100000000000' + DdzFFzCqrhsdwyL5Xdjz18heotupQcqGcaYwiEq4m5CPVN1Fu7x7kbx7FRdgvVbh8rsAJcoDc5cGj73ZNiyQxmBL7tXBMWu3f2y71QKY: '100000000000' +# "walk", "hybrid", "game", "vanish", "mushroom", "win", "observe", "crush", "core", "lamp", "mirror", "twenty" + DdzFFzCqrht8ZUn39jnjtfCFQsShGLvnvogzrHV4mhBSwUabMduz6p9mKLtkVWrSJWGFJsgFWp9QwscFNHf3mcUQxot13HV4tbr6cAv1: '100000000000' + DdzFFzCqrhsmD9xRHRAPvmsBmTMq4MxF2Ezj85zrbxYLsktrXeYmeMbdtdje9TKFcrrq63bX8mAG6cX6PYdPVhzSXamrkRkefGGp4ao5: '100000000000' + DdzFFzCqrhsrXidYNscXZFyKmEcfsoFzpgn7ktHcUHfqVX3xMFLTx6hbYAF4q4sb76E7LDUpHxB5kuAkqx9jyCe1WaURB9eSVdU1uSuJ: '100000000000' + DdzFFzCqrhsm14cAPAMCk77kG7Gwu6YsRqhaJsPsybZnq7yru9YX7fT1VgSgrbTzkP3zBQdq4otjBMc8ecPbNh6MWt8k8ZXiTgh8gmFi: '100000000000' + DdzFFzCqrhsqqgKJTCJqRHH4EvDMBt8N2JGTqD98qZWS8vKoYzKYNVsgc2YvenK2thiwoyJHGPKWBRZ216mpgJXq43zQxt7bZ3QEqKhv: '100000000000' + DdzFFzCqrhsidJNqfDQLNiRVprzRhpxvt9B6dtn1hzqyCKhqchnKLhjLEu3ESVzEKGrc5EAiHHY7rrP2zFaSVmkce1DNUkEhFVBy5KuX: '100000000000' + DdzFFzCqrht1QZdEH3vdXTYrboyKzhh6Cn5r3pxkN3TYoN7oiTasyiR5q4XX7qF67o4zCMYnafDgDczehqw2KipxR7boRku5Nw2y794P: '100000000000' + DdzFFzCqrhsiMhkHeXDNRHZzkBNzzGssqgFqFae9VrZ9fV7USUN4ogD4G4DQAyYiAg3tdZ4D2vR3tWPWwTsQWrjSJiCyjBkSzbirDvo1: '100000000000' + DdzFFzCqrhspRmwRiwjJF9ZHvmNi4FGYCMEATFiytAm8uweRJFUY8pm89NSdGAQWG3XarirFoK9XXaHPGuDrzuUREdkNkz5DkyTFtBaH: '100000000000' + DdzFFzCqrhsejoW2qcdB81U6LNuhVae3hWX221V1yx22EjyjGMrW4FcWJwPnBx6iUwZQCrCGkQmh1K3Vivjj7MMgD4QY8C9KMBe4QVYF: '100000000000' +# "hold", "joy", "grit", "great", "quote", "retreat", "famous", "wreck", "busy", "faint", "wish", "fetch" + DdzFFzCqrhsqie1ffztHbz3DbGSTeqYQDqZMQk7Cy65oMqm6zXWAHRSeJnboMr1txHtcLyRF9wFuzzk6SiT2C8DJVupN3ip5VrhHKij1: '100000000000' + DdzFFzCqrhsiVXMXwGUwvKkgwrJg5Bm9GR58hE4Soxpy9SgtkWBPrG3WT4bocxExNTHYVy2KLz4CGMf2DMBDL1v4SXiouKCio4LMNoqv: '100000000000' + DdzFFzCqrht7hxr41HJ4zu7TFL6ZN2Rr5Sz9zPshdKboXgoeb5UdMMFqPsqrxtkCmnT2mSVUuPi3RxdqWpvrZnyq2mRodcDxMHvsjnTa: '100000000000' + DdzFFzCqrhstfrqD9djhFjphQwE1wy4vSzfNJAXppHSPGxbw9cfPGHD37qmVxS3icC6BuAg9z8pqSVnhVjRbxv3gnE1tjLfGSh9ZmqNn: '100000000000' + DdzFFzCqrhtCBca8t28wWgHPLXrqVbRjpMGo6ntAQbBVmesnUkU9VnXpfpiHmv3xgu7QT3MxoDzgvM22hAYWb5dWBjNy4ZPe4tnqVPfH: '100000000000' + DdzFFzCqrht3P8aqQNHnGFvJVsjYBTMWyYHeCt5KnsB1yNBika7kPsjBQpAbeA9TZZRuRc7fcB1vY4ZkPNiRRL76wL6CDvVLTwgitikt: '100000000000' + DdzFFzCqrhsyL9J4HTGVY9nojxhrdf8rSTrWod38VoXYRHtUXMhFK92Y4bmHsYgpvVqKk4wUjJpzHAEBmHbAN8bxKZHKCcz759hou868: '100000000000' + DdzFFzCqrhsnnzeUWi4xQu88SM5Bn2dZWFPQCEzdexgoWWRkck3k8s5orNA9WLQr1dGnWmekMeLKDkspBnEZetuZBCa6tXCvGQGng62L: '100000000000' + DdzFFzCqrhtBoz6w9wwEnxoMzUp7Vr6S9XwpHQJWrib4vJU7SEwPbhyKf7JJr8ZnDfqUe8rbySddMGgHNUHFWZNAW1sFoapmF4ncN8Zx: '100000000000' + DdzFFzCqrhtCw9zL7n6dtmgeTvqcrUnYySoWwwKgacRevPY5sxT4MbjBzVXe8LLZd2exFWZdLdmtJ9bVNZq5bqdeXKay8SeY5311J4qx: '100000000000' +# "future", "obscure", "glow", "valid", "wear", "boy", "exercise", "member", "shoe", "add", "country", "spatial" + DdzFFzCqrht96nPuZyMinb3AUuoh9XLtWaQXX5vBogv3CxRCu1jAGLAH8Ls2Jk3Q6LfXZvJ2jYzkDxB4VsRbqhFrvLJpb5ZPUX8N1qBY: '100000000000' + DdzFFzCqrhspDHCaRX8fhK2tPg8V3Ttdfqqv6LCfnL1rKx8XiMPvHTCxghSAZwMr316jRrtuy15evxdtNd4wCsy3wLHGiK8ALLCuga9L: '100000000000' + DdzFFzCqrht6SqeTkLsu4BCz1p1iPiANnCP8spSZA9vQWunUqKHzXQwqCBkYHvJ8T5cvRC5zAhyFp1HbTBsvYZtHTdBCk1DSPnMFpgeF: '100000000000' + DdzFFzCqrhspimnLiNraenn7vZTB2qJQySoJa9jdLzjiiHECUTqdfv12X5JDc2N1jP8cHHMBsgBR9uMameBuWgGkQEmvgERCctUHuLaK: '100000000000' + DdzFFzCqrhsviVcEcCKBXwfTVFV3J5gSzA8nJzgNgxLeoHRGEua187Gkyt6ZkypavHgRjd66kdx7KUbNKU3PfC9C33e7NEHU1Dx48ht2: '100000000000' + DdzFFzCqrhsgoVMKe6GN7HN4feWzFwoasfQqsGytg9mg6Ex2zjvVendKrLKHTgzVu2d6AF2K1zShYUHVCz37kXVcJvnLgqmTvrUKrUWb: '100000000000' + DdzFFzCqrht4RpH7D7toLDRT2QKrx6m91TGWh5Dw26KrCXqxvY5PVRFvbh9nqhPm6BN1bGohWDj1yheWUsucETLqSdet7bfivwetpzR6: '100000000000' + DdzFFzCqrhsywbCUoqj5sXi9xK5Enut1xZmDHEFYNnJt2gh7Tsydi2zLDEEgpkL9oorNJ85BQ82M2kGTtBv8qwZPFDmoNKMmMPF7W5iH: '100000000000' + DdzFFzCqrht8VvHj7E8pKYfcY4gAf1vzFZcTr1YnYVPJgHanv83pc4CzPb2E9y7AmzrJCJa6BN7eDXXEjAasUiprmUTVURkKHjSJuZ2S: '100000000000' + DdzFFzCqrhsxZY2sW89zcsKNFvaTuG5tb3nsCnzdfWDuc5vCbqh8986GRyK17Yd6DpQ7P4FufmUBGQH6phKHk5vh2QD8qREErqtNRVer: '100000000000' +# "tooth", "option", "satisfy", "patrol", "amateur", "height", "above", "air", "struggle", "reform", "speed", "mom" + DdzFFzCqrhseTob4UBFTJ14S7tfetxzZGmf2DsS57LXuDib7mX8JCUqpmyDfYqoyyKRDTvLByZkxS9GQp61YYz5zPmTtkLwjyaYpidEH: '100000000000' + DdzFFzCqrhsrQ6HrGAhhvqsvDTLbriJqnqHTAR9p9bcWr9C8m6Z8zRAzAVxVcDMCzp6dBkwf4yu7fEJXVLNv2KVAMZXbUb9MNz8ZA6AU: '100000000000' + DdzFFzCqrht9upMHEsV7LkJp9dFFiQ6R4ciArrR8rGbjbThvNSuTeTPWTCsj6j8BT5Bkts7yuUjE9gLpDpoLDVhSFTxw4Ge7y2DhpmHd: '100000000000' + DdzFFzCqrhsxZSWpmJTfXPjUFzq9YFz1NakSHam6fayRXF7gEZYv6JfWvHCRk7UbFjD3fjVdG7ukvg1eT56XfJNySZzu1Njt2ZiLitmw: '100000000000' + DdzFFzCqrht3Gv5U1Ekwt2gcmCdyZG7XYrD4TQi3fEPYZGBneUKMiT7WFWCieKA152VRj74hf7QqLwjDjcfM75vHTfqSnT5fJRkVhdhz: '100000000000' + DdzFFzCqrhtAkkHcqmn53L15oPmvuh6ycm75QGAmhNNDaR273UjDCAw27b8KSydHX7bGoypUyoiR66ug7PQk8eimg58G5jfU9JHFoW6J: '100000000000' + DdzFFzCqrhsrHfuXELg6C3Q3jYsWavU2QXCXQ9VLGFkPnYX1CopJ42i17epaT7KmKYvTPfRrFmM12wcwqRoM3VipUj254sqcTai6tWQo: '100000000000' + DdzFFzCqrht8Au8vc1g5UWEem4Nwvc7PWXnvcmXcqhLWhGixABtU6SYjq3Yk5MjYrms243cZwiNbqBgTjjo4jCbKak5byyqaMXmBViiq: '100000000000' + DdzFFzCqrhsnUNZ5DWVetCaseiviJ7KmX3dpLmJdRyBAWDmPSAxkepSVTW9zuxHpQvvDMvp16TKtMzoDVoqjiDSFLFggx5S149dZKcZm: '100000000000' + DdzFFzCqrhsexrE141shQ9GSabDFGuhgW5H8TR2U7kmSP7A9F8e5hWYtUDbaHew2eKr3iBbfxRJBGXMmykYwULo3AHrGCb7HZjWmjN7i: '100000000000' +# "word", "cruel", "plate", "hedgehog", "flavor", "judge", "device", "tuna", "amateur", "walk", "open", "reduce" + DdzFFzCqrhstpwMupeBgNya9wmGkh9bYsyrZb6bz9v8a4orynopWp3mNhh4XZoFRxPHgJ3cTjCEHu88CZkdUiopxBdeptZ3SvkhSEGx2: '100000000000' + DdzFFzCqrhtCfoX5ssz6TcuiYPXpxSZRkcZzBe4tm13m1r2J8xXMUDpt6eCZRZyeus4DSWkxZxsp3za1MbWukuDKMk7DbNEBNATHgZrD: '100000000000' + DdzFFzCqrhsuj3A5C3vQD2JFmCCpQybhYNpnWf8XgAidkoiepPhLqEDE3n133STaeA4Gi52GGVbM8N3WLWDv9eg3YbWMTuCbMuLrFKpK: '100000000000' + DdzFFzCqrht66Pd5cbKxe2B6tSssiWuiEYukctVVXib6VzpJtFbPJ6H59b44zPcdFjqj8nWzXGcQG3j7w7kVxzRfWGPjaeuhN3oSswdv: '100000000000' + DdzFFzCqrhstemddBkQ4FdLJ1zw2RheCnfVzuhdA5mZxMpjkehpVAZcerhxShuYfEghytuxvb2xBXx2CyUBKuirN4HAL9VpLN2sTe1CL: '100000000000' + DdzFFzCqrht7ECrWLALfcNFpY15t9uFKRXBg9XnTeL1CZKaeVaYcozYPLPCUJPFCafshs6Ut4KsoDkcFz1szWK5ETmpbmP2nKuRbz33D: '100000000000' + DdzFFzCqrhtA81Nd4nvEy3Yed2AMazNJZAdxWeYZ9Y5GV2ixiQnEA2ZTByMNQQEdGwEtqUjEmHjsS712TFBUt7rwkx3mz7pVwBqaXXDi: '100000000000' + DdzFFzCqrhtAhTNyzGV9vCXAvyaWd47XMcUEmWnUhFQaWfmRwM1xa6d34YdBvZdbCXgnMhy43tVRp3kb1ojsBFvhYYBS8JJfQcGZLfRa: '100000000000' + DdzFFzCqrhsjau1oTu4CtgwQVe68CCELCrYX48v92kQbSQvX9mV2sMtX1pfruYUivfmMmuhDV2URXs9Zii8rBvjQJvizEVQZhkebcVPz: '100000000000' + DdzFFzCqrhsr3hg61iDP2sR67k77WpjJ93Q6Jg1jW7rwuG8SoJSRfkyciBdPD46FtUTC3LMk53LgYNogYLDRvAMzoiu2FgVkE3ssFALg: '100000000000' +# "right", "energy", "oxygen", "eager", "more", "direct", "yard", "easy", "luxury", "auto", "knife", "loop" + DdzFFzCqrhsmGKjNiAn4rUfE2w6eU7PB331snS4mVNoJtN1F5Yp1EFuVJC1yCbqK9V133C3DEVWfQKLo5crfDv8w1XwXRevMrJve5AQs: '100000000000' + DdzFFzCqrhshyFfBWD6xzdLaFE7nP7cVmXJBxqZfC1ACTPDzKwbFZQFPr6v7JKUxBSN2XVQSaEXNLhWPYvovL9idPcY7njZPYVn4sc9N: '100000000000' + DdzFFzCqrhtAZHCrJBX2Wg4ivSes4rSo6App4SaEXLMdqNgFFb6zeD8APtx6TSPddgoZHMNpcVttpfAmL8AYu8xvycpoKyJX8Z5WJ9iB: '100000000000' + DdzFFzCqrht2nE3pu7fiuu7CYxDtfCy1pnPyRSvEqiRpQjgw3AuRHuUqwMnt69HfFD13WNQVB92EPFvCxBRthP93SmuJw6Y1CmiYffBF: '100000000000' + DdzFFzCqrht2FP8YFs5YkNf2Aqo3wYXRQRZT6C5ydQ1gHeGUiQDojMSwj5fZXiHNgjZLwSoPU4d3ryD3NRVHwVTUV6E2Ajf1PonncbJK: '100000000000' + DdzFFzCqrht1mSKrFd7zbreqbyA7CbECQMSUMwd53usRCL7cmjkweprK4m45boob2hpjKLnRjq9BWd2JkfAfXcbox6iWgTQzLDWy4sai: '100000000000' + DdzFFzCqrhsieTqw5jZwYoG5ibkuJXbPhdQHsoGzTxMC8fEacK65rgTkZrsMdjNrxbJCg51XNe2Z1DTfgbRhdY7bGv39Sgva5dn7R6Js: '100000000000' + DdzFFzCqrhsfysRg51kA4FxFWm279ZY7646jhxvFjF8EeFSb2RBZaTHD4qEUoVLA89gEska3fr6K934P1SUh5jRbfTmemAX8oXZe79h2: '100000000000' + DdzFFzCqrhsewZh2mPZTTgxEJa65UuMZFTfMVYZdgkNu9z3zgL8psq2Sx3iGVtWbvHPpW5rDFgtqkjA7FJeEz6QT2JJ1mANMffvfsNwp: '100000000000' + DdzFFzCqrhsnDWzJ6eLMBiC3yNAjFTnUwuWTswT71SLMJew1YdVCmdcsQNE46fYC1AT4zj1zMPMH5mBNH8hyQRDB31mD4erEzsRQmZg9: '100000000000' +# "huge", "race", "host", "involve", "win", "interest", "salad", "box", "fatal", "cherry", "cage", "pioneer" + DdzFFzCqrhszjaKta1B5LawWmwHzep2gUFLPcY2nTMmrKnBva2gM7sVPdAZ5K9quRmPMAv25SjXR72QZYsM2d6npyvD2tYbKkedQrB5J: '100000000000' + DdzFFzCqrhsidhXsAkgn75ZW5hBm7GU3rVx9vpHUERVozN2imdF7YD5KrRjAxyqMvSpanC1qk4MTRABBnQUp6wUTA7Cxq1kfpb1H59Ec: '100000000000' + DdzFFzCqrhsqKffUrbcrUQd3TYKQHNDYmGUG52yHJC6Bpj2xGiS1SmibXbkRPAfLCB7t7WkkChJ9UNYjR671KShb6yg2UmqcJDVYuMRa: '100000000000' + DdzFFzCqrhsz6oPnwmPFD9Q71EXCp6UjqPHT7DhsDa9BQiCdDQQrnMF6kvX9ZkN3xDcv2fkZa4FsWepL3KJK7KgCjDu5HgC69LbptprW: '100000000000' + DdzFFzCqrht5v5msg4HLVFPLtT7ndyAS51uCxgvSVvTSyGrLUFPiHPJE8CCLgr7eHp3BYN7FPQyz5z26jKeXA385K4Mu7MfeoQTHxafH: '100000000000' + DdzFFzCqrht2qEERrHHQEteoBBrohrGhUDsqoC2XJmVGiueaYYgKozTN2bR5VtzDUUzBepmMYdn7NWJFBoQ6rGumqDpsX24gxJ5b3MJ5: '100000000000' + DdzFFzCqrhsrWSBJW2xC7B3DLfTB82sa1gc5pyfyLewSDc7edF1w1LUv6xMyWFeLV223ZEttxF3M3EcPYbP9qYKxxBAjHYr7xoZ7Swhz: '100000000000' + DdzFFzCqrhsuVim8EiNU3tsX415aJZ2UVvYTxqVEi29WSY3QknwwiLptKB9pUC3gnJSxbjCcsJoxcxT367aoCe26BWQ3PrvxXnCNCeaC: '100000000000' + DdzFFzCqrhswFzx7cwCX3c5jDPye8aWJ1h9h15rMvV4CXstDCyJFvLWhgvyBWjktKbvyk2u1MHVWt3F159jT4c9foHAYR2pzCJq2yJG9: '100000000000' + DdzFFzCqrht13bfVTveGynbJjCdfvbFWYbALziEvVzdCeuMWboEvyQg9KQ4xfBick9arDwaHSCSmsPvRaqVsMAkiYhJoxUTSRQa3fut3: '100000000000' +# "phrase", "rapid", "fine", "neglect", "already", "nut", "note", "chair", "mushroom", "rack", "ivory", "riot" + DdzFFzCqrhtBsYvva6meVRXmcJiqdoDeXuwMF95bFcF6Xm1Bis1b53fbHxYu6XW1HrrpLNZuR4Awcpkd9pWjcmEarJCyUmBgr3hzqg2C: '100000000000' + DdzFFzCqrhsgiYV6v7koQ6Na8pyoQ5cJPr5Qpf4rSaBbPTnprk8c1pbJBmX8L2XDp1QgS5zV4dwLkezAzXKRPjqJNCvkdzWB2pto6fTX: '100000000000' + DdzFFzCqrht6bncAcUv2Xkc8H3C1Ac4HbUZwFz5BvX4p66zdPNtyVug8A1eisRwVYpmYRuZi1fBYmG91NqGModmdTCGuJKjsTKyN5Cbr: '100000000000' + DdzFFzCqrhseipkRqSWnEFo8okC2kJqBrNSyLHrooSry2ig9JsWCNp9XGWS9j4ifMD6pJEeiHfYqqpipJoQF5exiKhmLCXaR1HfbpwHK: '100000000000' + DdzFFzCqrhtBWSfB52qb4R426ammhF7nQtLPaFGFHjVH2ZLtrcx9CEZq4AdHwwa9XtkLrrKF43BsUTyeqVaxBRi3WJbvdfsgBytFtMSR: '100000000000' + DdzFFzCqrhsftBgnzPrVcKLsVyjrPq8QLJPgSUUqK3diVQ7tcufY8v59kDb3WJtVs1ouQUtSDo3Cn4GspMx7mxtFaVDH41x2TvjZoBL5: '100000000000' + DdzFFzCqrhsmAN5s6AB2iPnA1Gs7SF78ZSKYCjxtNjx8NxgaJXG3fqK293UbVybEUb2bTPFN2BzPuUydU6ygNDp3XcHEPZGnXy6SjDRX: '100000000000' + DdzFFzCqrhsnCT29uT5DV4cCqBpyWDNQqeAQ5BcqG61hB7ttdkLyjYQ2gMwV28zd4sxvGpnLKHH161EuSZi1D95YnJ7FsEhwSYrCMxLK: '100000000000' + DdzFFzCqrht9BkyJ6xmEzVgy2A3MYkWyC5CcHdRFg6P9d6DPedLTJfAuaMBzTuhUdY3uTHmynzrNYeZcPNWMr685mS6aMEp9WzQxctbX: '100000000000' + DdzFFzCqrhsjH8ZrptUx3Lqn6a4KHT1CEs7Kc8qYJPnR8JM52VDe2By569R8gYd82VGTmmkNPMSGjwp4CS7VfKkcjSvR14sfgbGPyquN: '100000000000' +# "ivory", "citizen", "rule", "scare", "angle", "method", "bounce", "caution", "noble", "pottery", "plunge", "resource" + DdzFFzCqrhtD11vYVXP6x3DBujPSbd8bjiwUwuPPRyPbJqdTbYTFvRq2az9WBUXPp9YxWa4To2tGdqmUWrm9xjRMRiPfydDbYWnUjcGA: '100000000000' + DdzFFzCqrht3eWRupXFoukzrNo4tXApqbMH56KsxYBC6HDMSJ3XKxLugg626agrbiu5TBqXfjr8fdryhrkBsHwXyckkMxqMwEAU5iv8u: '100000000000' + DdzFFzCqrhsjEQgHeZLBcKVVHoN8tkZVXXyQSK8xchmSGUegSDQmq69mdRL7hPcfqfNGh7FrUibX9UHAaCXjpQxRg2L6CQqN8Q1WjMCG: '100000000000' + DdzFFzCqrhsmnWXeLsNdoNZcphmnUhTD94XcjfCDoV27DfYmVA6umVGfarH25fG5CYW5dDUB4hmzm5ZySrNgYstZ94umfJrjXxDVUr6V: '100000000000' + DdzFFzCqrhsqWrNWvtTwi16EY2xxjwmELa8gB94fwkzk2g6vDiTB6T6exyvhcxsKKRnFWeTPJquuJqeqMmmF5oTcMpcqyb7W4L3HgaYE: '100000000000' + DdzFFzCqrhsmazcxguukyfBwAstmuDZvtZvRSQtYexveR2BrC1ZB5TCscAr74EGcthbbGSaTrui3VjpmRXzHw9GU3j78p3AaQUkTcnPN: '100000000000' + DdzFFzCqrhtAA64GN6rvcr2wMQPstST774T3iePwyRD93Av9GxJBBcA6mKmKwdt51xpjjWf1NFo3LyYwhh6AnLDE2yt4ubZkNatTtm3t: '100000000000' + DdzFFzCqrhskiMixCwBP5xXjJd2LV41gKwFe2qMWWbznenBxgJ6hRwGGP2yToXwznwc6anGrVixm2SchpHzwG6NDDc3UN2CJq6YBSfaS: '100000000000' + DdzFFzCqrhstXqSybDkiKY3QHdFAV6sWdkK6PV3Qh46s37SxSjtLJdTk1g9oSGH4ZLYUye1anZLRpbeVdtTY5SiEZFatxZgZeuUjHtPJ: '100000000000' + DdzFFzCqrhskR6kYqddQP6m1nxm6HtMnFkFkMRVKoCyNSQCkAbM3nmtekHZxHE1YdWWbV28dH6sdJHtGtXS8akcBFtqrbMQTdjeixEhq: '100000000000' +# "behave", "attitude", "glide", "else", "have", "moon", "settle", "minute", "provide", "trade", "negative", "nothing" + DdzFFzCqrhsePBoa7AM18nPP67xoBRtYeox6PxhQLhzBCxBNBSvxSbSbiKGe9cCEVcpHya9igKFktyGnxRAnpczHbdt5qQvEMNXj9eML: '100000000000' + DdzFFzCqrhtCSo68dDjR7AhgiUVUs2AFhpsL3PDppYZgJjKV9d4ST656e1HAjYixdvasGu4eKP4cbLTUe1X2YSoHs5pPJMTg9isJAa6T: '100000000000' + DdzFFzCqrhssveYPKz2V8eBJT7DSx3cP1eDzMJzyo1WARiD79y8B7L42Rp7XjmzcdgL1hsda4JVHghm1jQj2xHZrSN3Mjw9RiPBuWori: '100000000000' + DdzFFzCqrht6mgbjQnSiz42d23v1esngXkuqWSTGbChgmRkGCQcP96VmhddYbzXVTZtZoXyZuvvQMCMkmpfo7RC53iR2pHqMg7tVs51i: '100000000000' + DdzFFzCqrhskHLdDjF3jvVD41NAdGqGL6bZa8pgNuKmTYbRtGWTV2YdWkGE5ATuqXSjTYYFDvbok73d2zDnnuUmoZosJSFSUChpbi7Zz: '100000000000' + DdzFFzCqrhtCgDcuE4AHFYesG1XSDS5hELrctspWMjZZ6zc6f16wDj8aEMKZBtXT5d6VoT3VqmguMV1rqDZ3Hwo4ZzmsQHiE7VVDuHw7: '100000000000' + DdzFFzCqrhsoazkWATWjoRtbLHJcciH3G39PWnXTRvwksCxo2Y5AK5rvcs1dfQXu3yejWrBEmotHowNmPtLTfx3DaRCfjv2xjdXwwk7b: '100000000000' + DdzFFzCqrhsrC22jQo6rfgVGZKUutJPW5e2vKTHC2c5nn3jGTw1DBEK78MWwHXHq5KVDWTQ69wf9yqWV64da8QnM6ke6iY1uAM4aX6yT: '100000000000' + DdzFFzCqrht9RtDuLeCZW77XGxTYVByen9JBxaj96uKKccCqEPmvzfvHCYS6ucFDYYBhAEqFqg3ejWtkgsZBwTUA4rSthRbgqkg2c5Vm: '100000000000' + DdzFFzCqrhstpgnjboHWpndAvU96xaDFfzabrG7ZxEHx5J9h7RsckBSiAGFryeyRV6VfPWxMJC8fbsvoZjrpw6fRD49bYnUJiJxiu4WW: '100000000000' +# "diary", "chunk", "total", "cruise", "they", "curious", "foil", "actress", "wish", "universe", "grape", "kind" + DdzFFzCqrhsrNfLGtBDszf4zgw1LLfXEfeG7p1xq3ubgyysppojYWSD1S3ks1y871PTGQPUJhr9e3ynWBJqY38Qno15PjRLzPAP1mjsv: '100000000000' + DdzFFzCqrht7YUutvA8M2dJDRpTkrS954ufZx6bAYZGfx1zd7vB6hH5viuyRRMbrKjAzuKLPPNj2ztsPDzdFFKSaV2m1bk3DrKXaxpEm: '100000000000' + DdzFFzCqrhsiSV5SKmQVBgNMG1SJBn4hEU38MLHPDu2c1kfDMg56UJXG6EV8pUmTyKdQXLJYd4ce3T4Cm5R35JXF28HQP1NmFcfGWGk9: '100000000000' + DdzFFzCqrht6vqywvNZ3XYGEPg5pxBVDGrwd9KCL3SgXETnJYYgctjzEJGg2owhDMyvcje3CPydJRux87DGhceJ6RpsCpYR9V4U7vN7i: '100000000000' + DdzFFzCqrhsiz8vGAPQGQPhoXxcou8AWR8Yavr6zXBtHj5faW91tCSthdRkrnzDj4nR5x8r5ZNhbU2y9kLqCXgwGF8W9EAm5dB2p2nj5: '100000000000' + DdzFFzCqrhsnmJ3aUSkKX2YB1B1uhtdAkqEnhMgNSkaDYcmjmxCt7Yk6gJCRZS1m8AZrPSQFTVkCTvEXw9JfXLzgLdbW96odBWhfrifW: '100000000000' + DdzFFzCqrhsuPALKSafpg9uN2qLUvWTykAg9UXxqkfStE6hky3ER8dDrs4tasek5aoPKhjzwmrU91CcAo3LRZGQZCnD12v8jVQJjCRA9: '100000000000' + DdzFFzCqrhsezMDDoc4EFs6FSp1qQE4cxH9yfHZJHTNgEJyUFYEY49EkBJp7z6LEdufKZncG7waj3jSqizW6duQsksvyLmcn6F8o5sHE: '100000000000' + DdzFFzCqrhshBC2drNiVTAPUc3zc6sH72WVquMjbsCButxbU5hoqLm4MDDY2E5GuvCYqyDV5FCeo2yb9mUC7xmWTRXoC3EM9ypCR2tMV: '100000000000' + DdzFFzCqrht1gsp4NTMiMsCromT23af8CvheNnPppMNQjwXHXDNMG8Tm2CbZw8VtLpjTTjgWw5zwSuPYXF3g4fXDtpzsSuogPHKBXmd3: '100000000000' +# "mushroom", "print", "dish", "slim", "agent", "tube", "expand", "actor", "layer", "idea", "example", "quarter" + DdzFFzCqrhsiipcZJdaUjteUWzYaC3is3rawtS96o7mi2c8CKLCsmCGUen168uVxpjtL4TrrShdErMqyFzKdSmWCBcDYEgVH5Uym18hQ: '100000000000' + DdzFFzCqrhsfQcxQTStfPAvrDbXzBb9UY8DRiPjkxmhXEhaQvt5QBayaweSmbrgmtaqPNJucwA3sqDtGq1JZmJpR74EdhZsv2VRnY2f9: '100000000000' + DdzFFzCqrhtAiqawiEAobxWuo4yRKzYL6CF3EpSYX7ip1kHh5iRj74bAn6ngXsXTQMtdsinVhr7hKqsXkqEGfKrKnX1iazWnVvpiseFV: '100000000000' + DdzFFzCqrht6g5GdQotde1CSpSCQ3nQX3PtnBqPWHoxTTufi9pwPQa1QhEpDGXo4mqsv8cgEn1rmj2hxxJ593HNEAmdyi5KiGJzWPWc8: '100000000000' + DdzFFzCqrht2Bk7Wm38FXUoi8tMYmn7eytAKynW2sSGxoEKjC12tEkrgP8VTqwEPxS5Gxazv6UQtBUAYqLM8gCG5D61HPX8sHoH7BYXB: '100000000000' + DdzFFzCqrhsizfHhnqMrFdGSm3BDZtoHHPzCPbNGixV1nzWDYy9xfCdg1miwYsBDwFiM6frVcENrQx9KZtQqYfwgxEc34dkTx8tva3RH: '100000000000' + DdzFFzCqrhsmikVEKgvrgvDcJ2b2wS5ygpCCB5nX6Bih4DBT5G4UeeYs4T1NSsDGQ4k8zejxnV5zCGksBvMZ5zztcLoyNWvZAzr7Ymg2: '100000000000' + DdzFFzCqrhtCYjdYEeZtDEHq5zCZo4hbDxgtP8t4CUyPSDLFQYXbMgJKrwXHL96hrjE8fHLfLQE6EnmBNAz3zjERywxQnxkFmDeUrEra: '100000000000' + DdzFFzCqrht9PPqthaDdnnYtqNL1wNDQDwucsmGCnfKTNgz62bQEUwDCE2D6tXrn9mT1tdesPQfVoTPxtKGqvWhmNWVCRc6Aq5LudDAr: '100000000000' + DdzFFzCqrhsxUttsj4AwiQKbLdFEswoPGBPji8XaLUHzwW3w7kD1SLonudsTPxeDUWRnJtSgKwfYMD7ihXFTvZC68VC5pSXGojzU7fpi: '100000000000' +# "riot", "sport", "access", "grid", "destroy", "chronic", "evil", "doll", "sibling", "blanket", "seed", "goose" + DdzFFzCqrhsz5Aiu9F3ngXYzX4w2Kg1ZmrxH4FP4RtEQNj8sSoBp8zG5Hs9k2QwsrVeiu52fwRBhu5SvyPKRZWxRi4sqkwqC1yA1zbgg: '100000000000' + DdzFFzCqrht2ydUJho3y4Ae1HqhSLFwq9moKxLDQW4dHixA6v2XGrrT4KqcGNNjk3cN1N1Ectc2qs9JViabnQ5vQ8cuosCCBa9eKmznZ: '100000000000' + DdzFFzCqrhtBGsakVjnfBeMAAP2w1R4PVRXdfaVNwz5f96MhxTBoMsF3qk3hghpSp3CAXpwRkjUdf5cVAEm34AuEDMopVPeJTWz6YAAY: '100000000000' + DdzFFzCqrht7vHs8w41ehNKoLjQ81YaBeR4rqdQNFpL5dW4cspLzMPgnfLJ7FpoBB94io62wNz7XcyxEjjQrUiYGrc5bQeVNm3E4NCGc: '100000000000' + DdzFFzCqrhsmboHF6ECHkopHPfZnNe1CTMzo2anHdry2F19aojkAiUrSqxqLijE9ADxRRFBc8eJXveCVQNQ69UKUFvvWqh3irvo9Uj7E: '100000000000' + DdzFFzCqrhtC4sak5k7Ur17e7Stfs3WXHfD4Wun6YYHyNuKZ73YUpfbWPy42vz6V767m9uh3YwsV72CxMMd73sHZGBudBukygar5a65H: '100000000000' + DdzFFzCqrhtBvNo9S5pMDYfEmWBknyHgQfbgnmvC7Cfvn1D5JFvh72FoK4MJ4L5ZJnVpbfsnEYXjiJSdvbb3ZWWUbrVoyzRGdUA2i6o9: '100000000000' + DdzFFzCqrhstE8D9dQTxod5Atxz5cRnUVnURp2yWSgUHDtPTDh25kBq9w3PDF1MicztsM7ywdQExi5TsMcFaqSvgwvUFPMY8sQNcy6ua: '100000000000' + DdzFFzCqrhsg5zSxwqDMn2dyYoRTzF9bPgyJjLXwR6MdecedFLoQ3JBqPGB1C89gd5pDR9n68UDzG7jPKawcz6mX21hA5iWiDT4UpfCC: '100000000000' + DdzFFzCqrht8NtBkvoWbWenp6rghioPNPX55NvjsyXtRAocDnPTaLN1WyREEga7KQBqUWBzCEBkYamnFbiXb2qYF5ZRHKg3FvtFt9xBV: '100000000000' +# "pyramid", "song", "photo", "filter", "subway", "rich", "broken", "anchor", "blur", "lecture", "liar", "hope" + DdzFFzCqrhtAYNzJvKZueNn4kegSUbBCVSSMkH7DiAucbJeN86mRs3MWa4hzzn2fiPHhNXook4YT6ZxnQ99EvmuL4DkMRU1dPF6bRJ9s: '100000000000' + DdzFFzCqrhsdso2Acs3ZWRZsvSiacqTb9RJCTd2tqKtN5jJUwJHAo9mCih1SVpMoZvPvQTLvryjfK7S4k4nopra3CdXYerEAS8sXTiQs: '100000000000' + DdzFFzCqrhsk2LUttfUUtw9K3sbFgexo61H1UaRakYKarUT9BqC4NdCK51wxdeTAf2nWrpvk5aeD454HkwJzWZS4f1SDJnUqjwJdAwU1: '100000000000' + DdzFFzCqrhstL5nEaax7t1kpHKPzXS2jcMEPf3PYB11fJmyjRNvzj9d5a38BdD78VSCUFJrPUxoVyCmgVxqogi7FdBcjDkYP1QBZcQTr: '100000000000' + DdzFFzCqrht4WPKUCjXhWAfibm5Wo2bGsc1QwsDcZBbuNU1Rc61t5cx5Y1df7YrSteNdJNAMLimMfnHT1idmfGKA3vSrC54NjWZENFqr: '100000000000' + DdzFFzCqrhsjuiPr5P2WFmJzdQn8LiqixgNhfBqWSzQgpkjWZem5iYC6m9roZUUuoNTfRWEbhP5X3RqmsC3u7zgw9kUHnd42cZjyVPmx: '100000000000' + DdzFFzCqrhsh7q154dg5ieHsvdjW8pbAQ7mJLJo464mSPn1kccyNXT4yhwfN9YBSitVUiRGs4cw8wiy4PUunn7ssmtRxwU7nfwxBhyKU: '100000000000' + DdzFFzCqrhtC6WPsuyhqtVPmWEz3MdT2uDk6JW8gVEb2J4Nsi928Zmox9uKmEVXpzw42NhprGXRLiAgQTALRU8x3btiUdmnAYWXY4k4r: '100000000000' + DdzFFzCqrhsstkWYNBD3fpeP8xSXyQHzKySdNfSZVsPqQ1jjL8Du7YVBwB8bPqd8RJP9M5c6S3pav3Ys6fueage6Vf5MWGGmgvTZGKbA: '100000000000' + DdzFFzCqrhtDEKPFcpmBG8EXTgXKdUHFALzy9yBzasahChmSxyXFnUMch2LBFDgB6k2u4TtRbE4zPCc7vokG3vMZkJoxNaMVHaoZwV6Q: '100000000000' +# "sort", "crouch", "seven", "exile", "extend", "evoke", "summer", "oppose", "fork", "result", "plate", "goat" + DdzFFzCqrht1QvSXSVcFCPE7dm9eaVB56eMRUeKadtnREkHC6jN3WR19gWFscoAvd4tT9HB1GGhYUrdVj7yBYvh5Vg3G38Qd5jwAqFY4: '100000000000' + DdzFFzCqrhsu37FVmDNLAngSqp2fZoX474mzrXYHGM3bDeqsG3nyuu2rLW1bhndHG1XL9NoPikGXb57vdsiFGD5rvfXCTXyPNAUnM86B: '100000000000' + DdzFFzCqrhszt8RBxLWN8raBaqDR8hTW91qeohZ7KfcR4bWXe7t7CYZYmQGR4qzZ8qc5WzoqxVRzPEcTSi9Naz1SZNavMEXVGm92wmV7: '100000000000' + DdzFFzCqrhsxYoxRtXRHu1G8QjF42oLdYtUvjTUar19DTr1c15rWhfMhVaumw5G1T7suC7UGbjPSHzwNbEwrDzpVBRzkM2xUioKEr8WJ: '100000000000' + DdzFFzCqrhsfbYrsF3zrvznBw8aN2Rb1nQiaotFDhaJzXTTcW6EnMN8KuNqV6NRMPkZ31eps3PQ93FxdWXm4wdC6PDXQVaQ4N6R7nHmp: '100000000000' + DdzFFzCqrhspPG75WPd8Ff7SfSHHUj1ThjyX4TTrNdSRfR3Rf5tYc3KCHCsPTGz4bmZcQh2yYVFvZ3a97K8pm2xaYgcD97o7C4xjHh5m: '100000000000' + DdzFFzCqrht1M1m7hBpVHLTx5J1UPk8G6JEmjBpoHiQNpZDf9vFjTtJYHhvw7WvUHFEogWefTzPdeNgyMAfG99axy3bpAer5hdkMwywJ: '100000000000' + DdzFFzCqrht5yEbfJY72VZHKbizsKmAfWErHKmQ7X2SCwBAbWJys2SqZqwsLwek8xYZqFDyCP2j22NaxzwPojehgqdCqPrBLvAMa7A8U: '100000000000' + DdzFFzCqrhsxQBAhsAKjiohg5X29WKhDgByq1iRfBEY4zS6RtBxskJqfEdHr3b6xEQrYS4FZ2V42z453V4cPoPUnk9t5Wnz779RKyVPq: '100000000000' + DdzFFzCqrhstorkTmRLeMuVgDGYCMdS5cCjNVqkockyTNe8VDU2fHLFFoy5vZDkZCgYSXhj1xQD5Dsjy6m28EELmaA75WfcnWJqURKN4: '100000000000' +# "safe", "wrap", "order", "affair", "fiber", "walnut", "skill", "timber", "rookie", "ghost", "spot", "napkin" + DdzFFzCqrhsm8CuhbBL8Gbaey66LTHPUnZAFxzwPmLGfisT7d65Xj4NMYKMRtdVHeF95gicTCbkj953KGxTnsrfMnJHKjv6eFnSPeNVg: '100000000000' + DdzFFzCqrhswSDgiie3Grt8pfU89fDmnK9M21Y4fH6YD62vv4nMV7X36BFdjqz26sYuZoTYbKCZXWGsBCroZdbj93Ggsa7JmfoyBSnf7: '100000000000' + DdzFFzCqrhsr2e1v3shpmm6akAoXe3moXZ8gqVgft8f8nKhHGvbw61nJ58bTP8meMzfK6CRLydqBFmgiyhm9nRLytto8idY4NWVYwY4R: '100000000000' + DdzFFzCqrhsq9ksjqtNkiTMCQRefFRpFZymKYR5KY9K3dx1iuMDLfnxbcCjttmApQS3VqBw44kRcVYZqcKkmDLX6BQSSdJpJsjrd1F4i: '100000000000' + DdzFFzCqrhspPos2BJmUkkG9kWTb1N5mrqkWxt3xtiKJLAZfkgYB8pe8JWmDwfZEmAcAfHYdBFfQX5f7eH85vmNGwVXNFYYMi8et5RWK: '100000000000' + DdzFFzCqrht4zmwguWjWYscg1J2Amgdi51qFbj3jZxZuVFtWbZj7KhkwSVmaj16CuaCaQ8mUvn9BH295Tj59hMksNSvUPLrtPE2J3Q8A: '100000000000' + DdzFFzCqrhsjrzU9wpS4MKuGPwtdGvBMqLwAArAQhDoZdhF1TyTPzVPiVfnZsXEhK3Rg2HByeMYbLs7CxhNZQEbeWiTMZgQ6S5nKvvge: '100000000000' + DdzFFzCqrht5Ks8m1aUaucNsgjnH4W35JWue68wtiYfmRtsuhLZ9F29qTFKJf8PXU2RpczMmf4C4sMVFtSMSpgz1bfgxk8HtEYDeHbKh: '100000000000' + DdzFFzCqrhsgyL5jMQK7VQkkm434yEi7XDiZriD8YhWtX1bWXD1qr5w7Kr4Abeo6QrzDPzNDgYgxzhvCYNFjtKV321gevYvSWCxF1bcg: '100000000000' + DdzFFzCqrht5NXVz2Pt3kcdsW3Q5qtRZCK1wfKZoV7am7P9yD4wnj9rHgzm7nMpeLtuZYrUdpioQh3Bi9tLGAuvHrK2uCztxff8k6Bi8: '100000000000' +# "jaguar", "bitter", "merry", "destroy", "frozen", "dune", "embody", "pull", "cradle", "peasant", "sail", "whisper" + DdzFFzCqrhsj1TXEZ9wx3gfT3UvNJjijfQPe9Qmcbt6PxEmmbeCU7i7rR2QkbPei8CyGvipmax8NfxesAXmzSCMV76ozUDdzjw3Qdimo: '100000000000' + DdzFFzCqrhsdpJZHrVp8pv13Lvz4TxNrhTPqyt1Hnpad2GzhRikEHaon3XRfLZpr6973nJn668ebtPUgL9FpSZEH8UiYzXnKmz44iaNA: '100000000000' + DdzFFzCqrhsen5WXkaCV1EPz8U8Gkhn9nP3K5iJbLJKFAzGgnfDydXuASTJzpm4CeHujWMKqh48P2Fg5CasgQuM9LezhPeQhpsr6y9GQ: '100000000000' + DdzFFzCqrhsqyT7BNaHpE58gLaBwjPgQe8TT7gyx2mj8f6YzD5ZEnu4LFTK91aiLUDzfUQzpU9t1AxV1MvVpftNvt6YWoFu9rLeMvQYF: '100000000000' + DdzFFzCqrht5w7Dv7kVW1ivoCvRKh3A4Ju8cccPGpNNX43FcSybrVXWyrNXYFSut7q7ogQaJXeJ7ycEm71oZ9T1Tv1zv78VXdPNCf6A2: '100000000000' + DdzFFzCqrht76Tkn6QzYeFSPRx55Qmoqz9yeCKV8RjLGueNdDaiQBPyAHhsZdaJLXiovZzyYx7MjMHaDF3iGnv2aA3He4debEgAGrK9C: '100000000000' + DdzFFzCqrht77LAUt13bNaQD3xrkUDWZTkdwHEyUzd1WJyoZpdJV7bME78s7xcVF9j7PNjBis2SbRDDSASrcKo4ZS1yix7shKKPmnVcZ: '100000000000' + DdzFFzCqrhsdu9QdfAi2BmXcmdV1DA4zHKsEtWdeti32jpKzQC9dUpGqy4A5WPWgoNSvwhmFceVj8BTVna1Fq3jmjS3NbyAqseACNhqm: '100000000000' + DdzFFzCqrht53PjyZUcneCYf9CGnHxnpc8fbsqjhVRNu8zx9onVDX5rS623SfAJ4enUZseRsFehCYXoTiMFnZrrXk9daNs87EMVPupzs: '100000000000' + DdzFFzCqrhsdwALkqZUNTYvqq1cM1HDP9iXzWfEwJktgnutkDDzhEKRYa5u6DLf2Qbgo8bSEhNjrjVAFRK5CrHH9tvxhSDoV3u3xG1P7: '100000000000' From ce022fe4d41ef53fcbb7633976096ab0673e6eed Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 14:35:25 +0200 Subject: [PATCH 45/86] Fixup: Add NO_POOLS option, and remove dev functions --- .../src/Cardano/Wallet/Shelley/Launch.hs | 55 +------------------ lib/shelley/test/integration/Main.hs | 9 ++- 2 files changed, 10 insertions(+), 54 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 10131ae94fa..7f930f598ef 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -23,8 +23,6 @@ module Cardano.Wallet.Shelley.Launch ( -- * Integration Launcher withCluster - , dev - , dev2 , sendFaucetFundsTo , withBFTNode , withStakePool @@ -69,7 +67,7 @@ import Cardano.Launcher.Node , withCardanoNode ) import Cardano.Wallet.Logging - ( BracketLog, bracketTracer, stdoutTextTracer ) + ( BracketLog, bracketTracer ) import Cardano.Wallet.Network.Ports ( randomUnusedTCPPorts ) import Cardano.Wallet.Primitive.AddressDerivation @@ -149,12 +147,7 @@ import Ouroboros.Network.Magic import Ouroboros.Network.NodeToClient ( NodeToClientVersionData (..), nodeToClientCodecCBORTerm ) import System.Directory - ( copyFile - , createDirectory - , createDirectoryIfMissing - , doesDirectoryExist - , removeDirectoryRecursive - ) + ( copyFile, createDirectory, createDirectoryIfMissing ) import System.Environment ( lookupEnv, setEnv ) import System.Exit @@ -189,50 +182,6 @@ import qualified Data.Yaml as Yaml import qualified Shelley.Spec.Ledger.Address as SL import qualified Shelley.Spec.Ledger.Coin as SL -dev :: IO () -dev = do - let dir = "/tmp/fork" - exists <- doesDirectoryExist dir - when exists $ - removeDirectoryRecursive dir - createDirectory dir - systemStart <- addUTCTime 1 <$> getCurrentTime - [port1] <- randomUnusedTCPPorts 1 - let mode = RunByronShelley HardForkOnTrigger - let bftCfg1 = NodeParams Notice systemStart mode (port1, []) - withBFTNode stdoutTextTracer dir 0 bftCfg1 $ \_ _ _ -> do - putStrLn "BFT Node is up" - putStrLn "Submitting update proposal..." - updateVersion stdoutTextTracer dir - putStrLn "Has submitted update proposal" - threadDelay (300*1000*1000) - where - _action _fp _b0 (_np, _vData) _triggerHardFork = do - putStrLn "hi" - -dev2 :: IO () -dev2 = do - exists <- doesDirectoryExist dir - when exists $ - removeDirectoryRecursive dir - createDirectory dir - - let pools = replicate 3 $ PoolConfig Nothing - withCluster stdoutTextTracer Notice pools dir onByron afterFork onClusterStart - where - dir = "/tmp/fork" - onByron _ = do - putStrLn "### Byron has started!" - afterFork _ = do - putStrLn "### Fork has occured!" - sendFaucetFundsTo stdoutTextTracer dir - [ ("addr1vx0d0kyppx3qls8laq5jvpq0qa52d0gahm8tsyj2jpg0lpg4ue9lt" - , Coin $ fromIntegral oneMillionAda - ) - ] - onClusterStart _ = do - putStrLn "### Cluster has started" - -- | Shelley hard fork network configuration has two genesis datas. -- As a special case for mainnet, we hardcode the byron genesis data. data NetworkConfiguration where diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 76455cfe311..74d7e610f55 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -232,11 +232,12 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown withServer action = bracketTracer' tr "withServer" $ do minSev <- nodeMinSeverityFromEnv + testPoolConfigs' <- poolConfigsFromEnv withSystemTempDir tr' "test" $ \dir -> withCluster tr' minSev - testPoolConfigs + testPoolConfigs' dir onByron (afterFork dir) @@ -367,3 +368,9 @@ minSeverityFromEnv def var = lookupEnv var >>= \case Nothing -> pure def Just "" -> pure def Just arg -> either die pure (parseLoggingSeverity arg) + +poolConfigsFromEnv :: IO [PoolConfig] +poolConfigsFromEnv = lookupEnv "NO_POOLS" >>= \case + Nothing -> pure testPoolConfigs + Just "" -> pure testPoolConfigs + Just _ -> pure [] From 0c0571de9f8381df0f5bb1a6c184103268442f37 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 15:23:59 +0200 Subject: [PATCH 46/86] fixup Crypto.HD --- lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index 58658dc64b8..b6474b363a0 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -547,7 +547,7 @@ mkShelleyWitness body key = where unencrypt (xprv, pwd) = Cardano.WitnessPaymentExtendedKey $ Cardano.PaymentExtendedSigningKey - $ CC.xPrvChangePass pwd BS.empty xprv + $ Crypto.HD.xPrvChangePass pwd BS.empty xprv mkByronWitness :: Cardano.TxBody Cardano.Shelley @@ -562,7 +562,7 @@ mkByronWitness (Cardano.ShelleyTxBody body _) nw addr encryptedKey = txHash = Crypto.hashWith serialize' body unencrypt (xprv, pwd) = CC.SigningKey - $ CC.xPrvChangePass pwd BS.empty xprv + $ Crypto.HD.xPrvChangePass pwd BS.empty xprv addrAttr = Byron.mkAttributes $ Byron.AddrAttributes (toHDPayloadAddress addr) From 2abee4f1b79f8d9112538124d5d4659d2d214081 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 15:37:38 +0200 Subject: [PATCH 47/86] remove multi-mode support (default to byron;shelley) and rename setup files for consistency --- .../src/Cardano/Wallet/Shelley/Launch.hs | 130 +++++------------- ...on-cert.000.json => bft-leader.byron.cert} | 0 ...ate-keys.000.key => bft-leader.byron.skey} | Bin .../cardano-node-shelley/byron-genesis0.addr | 0 .../cardano-node-shelley/byron-payment.addr | 1 - .../cardano-node-shelley/byron-payment.key | 1 - .../byron-payment.shelleykey | 5 - lib/shelley/test/integration/Main.hs | 1 + 8 files changed, 37 insertions(+), 101 deletions(-) rename lib/shelley/test/data/cardano-node-shelley/{delegation-cert.000.json => bft-leader.byron.cert} (100%) rename lib/shelley/test/data/cardano-node-shelley/{delegate-keys.000.key => bft-leader.byron.skey} (100%) delete mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-genesis0.addr delete mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-payment.addr delete mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-payment.key delete mode 100644 lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 7f930f598ef..fb8b52e38e5 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -27,11 +27,9 @@ module Cardano.Wallet.Shelley.Launch , withBFTNode , withStakePool , NodeParams (..) - , PoolConfig (..) , singleNodeParams - , HardFork (..) + , PoolConfig (..) , RunningNode (..) - , CardanoMode (..) -- * Utils , NetworkConfiguration (..) @@ -411,11 +409,10 @@ withCluster withCluster tr severity poolConfigs dir onByron onFork onClusterStart = bracketTracer' tr "withCluster" $ do let poolCount = length poolConfigs - let mode = RunByronShelley HardForkOnTrigger systemStart <- addUTCTime 1 <$> getCurrentTime (port0:ports) <- randomUnusedTCPPorts (poolCount + 2) - let bftCfg = NodeParams severity systemStart mode (head $ rotate ports) - withBFTNode tr dir 0 bftCfg $ \bftSocket block0 params -> do + let bftCfg = NodeParams severity systemStart (head $ rotate ports) + withBFTNode tr dir bftCfg $ \bftSocket block0 params -> do let runningBftNode = RunningNode bftSocket block0 params waitForSocket tr bftSocket *> onByron runningBftNode @@ -447,7 +444,7 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = \(idx, poolConfig, (port, peers)) -> do link =<< async (handle onException $ do let spCfg = - NodeParams severity systemStart mode (port, peers) + NodeParams severity systemStart (port, peers) withStakePool tr dir idx spCfg (pledgeOf idx) poolConfig $ do writeChan waitGroup $ Right port @@ -462,7 +459,7 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = ("cluster didn't start correctly: " <> errors) (ExitFailure 1) else do - let cfg = NodeParams severity systemStart mode (port0, ports) + let cfg = NodeParams severity systemStart (port0, ports) withRelayNode tr dir cfg $ \socket -> do let runningRelay = RunningNode socket block0 params onClusterStart runningRelay `finally` cancelAll @@ -488,69 +485,52 @@ waitForHardFork _socket epoch = do data NodeParams = NodeParams { minSeverity :: Severity -- ^ Minimum logging severity , systemStart :: UTCTime -- ^ Genesis block start time - , nodeMode :: CardanoMode -- ^ When/how to hard fork , nodePeers :: (Int, [Int]) -- ^ A list of ports used by peers and this node } deriving (Show) +singleNodeParams :: Severity -> IO NodeParams +singleNodeParams severity = do + systemStart <- getCurrentTime + pure $ NodeParams severity systemStart (0, []) + withBFTNode :: Tracer IO ClusterLog -- ^ Trace for subprocess control logging -> FilePath -- ^ Parent state directory. Node data will be created in a subdirectory of -- this. - -> Int - -- ^ Which node (assumes key files are indexed by this number) -> NodeParams -- ^ Parameters used to generate config files. -> (FilePath -> Block -> (NetworkParameters, NodeVersionData) -> IO a) -- ^ Callback function with genesis parameters -> IO a -withBFTNode tr baseDir i params action = +withBFTNode tr baseDir params action = bracketTracer' tr "withBFTNode" $ do createDirectoryIfMissing False dir - [bftKey, bftDelegCert] <- forM - ["delegate-keys.00" <> show i <> ".key", "delegation-cert.00" <> show i <> ".json"] - (\f -> copyFile (source f) (dir f) $> (dir f)) - - -- TODO: Doesn't support indexing by i - [vrfPrv, kesPrv, opCert] <- forM - [ "bft-leader" <> ".vrf.skey" + [bftCert, bftPrv, vrfPrv, kesPrv, opCert] <- forM + [ "bft-leader" <> ".byron.cert" + , "bft-leader" <> ".byron.skey" + , "bft-leader" <> ".vrf.skey" , "bft-leader" <> ".kes.skey" , "bft-leader" <> ".opcert" ] (\f -> copyFile (source f) (dir f) $> (dir f)) (config, block0, networkParams, versionData) - <- genConfig dir severity systemStart mode + <- genConfig dir severity systemStart topology <- genTopology dir peers - - let byronKeys x = - x { nodeDlgCertFile = Just bftDelegCert - , nodeSignKeyFile = Just bftKey - } - let shelleyKeys x = - x { nodeOpCertFile = Just opCert - , nodeKesKeyFile = Just kesPrv - , nodeVrfKeyFile = Just vrfPrv - } - - let makeModeSpecific x = case mode of - RunByronShelley _ -> byronKeys . shelleyKeys $ x - RunByron -> byronKeys x - RunShelley -> shelleyKeys x - - let cfg = makeModeSpecific $ CardanoNodeConfig + let cfg = CardanoNodeConfig { nodeDir = dir , nodeConfigFile = config , nodeTopologyFile = topology , nodeDatabaseDir = "db" - , nodeDlgCertFile = Nothing - , nodeSignKeyFile = Nothing - , nodeOpCertFile = Nothing - , nodeKesKeyFile = Nothing - , nodeVrfKeyFile = Nothing + , nodeDlgCertFile = Just bftCert + , nodeSignKeyFile = Just bftPrv + , nodeOpCertFile = Just opCert + , nodeKesKeyFile = Just kesPrv + , nodeVrfKeyFile = Just vrfPrv , nodePort = Just (NodePort port) , nodeLoggingHostname = Just name } @@ -562,8 +542,8 @@ withBFTNode tr baseDir i params action = source = $(getTestData) "cardano-node-shelley" name = "bft" - dir = baseDir (name <> show i) - NodeParams severity systemStart mode (port, peers) = params + dir = baseDir name + NodeParams severity systemStart (port, peers) = params -- | Launches a @cardano-node@ with the given configuration which will not forge -- blocks, but has every other cluster node as its peer. Any transactions @@ -579,11 +559,11 @@ withRelayNode -> (FilePath -> IO a) -- ^ Callback function with socket path -> IO a -withRelayNode tr baseDir (NodeParams severity systemStart mode (port, peers)) act = +withRelayNode tr baseDir (NodeParams severity systemStart (port, peers)) act = bracketTracer' tr "withRelayNode" $ do createDirectory dir - (config, _, _, _) <- genConfig dir severity systemStart mode + (config, _, _, _) <- genConfig dir severity systemStart topology <- genTopology dir peers let cfg = CardanoNodeConfig @@ -606,11 +586,6 @@ withRelayNode tr baseDir (NodeParams severity systemStart mode (port, peers)) ac name = "node" dir = baseDir name -singleNodeParams :: Severity -> IO NodeParams -singleNodeParams severity = do - systemStart <- getCurrentTime - pure $ NodeParams severity systemStart RunShelley (0, []) - -- | Populates the configuration directory of a stake pool @cardano-node@. -- -- Returns a tuple with: @@ -634,7 +609,7 @@ setupStakePoolData -- ^ Optional retirement epoch. -> IO (CardanoNodeConfig, FilePath, FilePath) setupStakePoolData tr dir name params url pledgeAmt mRetirementEpoch = do - let NodeParams severity systemStart mode (port, peers) = params + let NodeParams severity systemStart (port, peers) = params (opPrv, opPub, opCount, metadata) <- genOperatorKeyPair tr dir (vrfPrv, vrfPub) <- genVrfKeyPair tr dir @@ -649,7 +624,7 @@ setupStakePoolData tr dir name params url pledgeAmt mRetirementEpoch = do dlgCert <- issueDlgCert tr dir stakePub opPub opCert <- issueOpCert tr dir kesPub opPrv opCount - (config, _, _, _) <- genConfig dir severity systemStart mode + (config, _, _, _) <- genConfig dir severity systemStart topology <- genTopology dir peers -- In order to get a working stake pool we need to. @@ -733,7 +708,7 @@ updateVersion tr tmpDir = do [ "byron", "create-update-proposal" , "--filepath", updatePath , network - , "--signing-key", source "delegate-keys.000.key" + , "--signing-key", source "bft-leader.byron.skey" , "--protocol-version-major", "1" , "--protocol-version-minor", "0" , "--protocol-version-alt", "0" @@ -746,7 +721,7 @@ updateVersion tr tmpDir = do [ "byron", "create-proposal-vote" , "--proposal-filepath", updatePath , network - , "--signing-key", source "delegate-keys.000.key" + , "--signing-key", source "bft-leader.byron.skey" , "--vote-yes" , "--output-filepath", votePath ] @@ -776,17 +751,6 @@ withCardanoNodeProcess tr name cfg = withCardanoNode tr' cfg >=> throwErrs tr' = contramap (MsgLauncher name) tr throwErrs = either throwIO pure -data CardanoMode - = RunByron - | RunByronShelley HardFork - | RunShelley - deriving Show - -data HardFork - = HardForkAtEpoch Int - | HardForkOnTrigger - deriving (Show, Eq) - genConfig :: FilePath -- ^ A top-level directory where to put the configuration. @@ -794,40 +758,18 @@ genConfig -- ^ Minimum severity level for logging -> UTCTime -- ^ Genesis block start time - -> CardanoMode - -- ^ When/how to hard fork -> IO (FilePath, Block, NetworkParameters, NodeVersionData) -genConfig dir severity systemStart mode = do +genConfig dir severity systemStart = do -- we need to specify genesis file location every run in tmp let withAddedKey k v = withObject (pure . HM.insert k (toJSON v)) - let withHardFork = case mode of - RunByronShelley (HardForkAtEpoch n) -> - withAddedKey "TestShelleyHardForkAtEpoch" n - RunByronShelley HardForkOnTrigger -> - withAddedKey "TestShelleyHardForkAtVersion" (1::Int) - _ -> pure - - let addGenesis = case mode of - RunByron -> - withAddedKey "ByronGenesisFile" byronGenesisFile - RunShelley -> - withAddedKey "ShelleyGenesisFile" shelleyGenesisFile - RunByronShelley _ -> - (withAddedKey "ShelleyGenesisFile" shelleyGenesisFile) - >=> (withAddedKey "ByronGenesisFile" byronGenesisFile) - - let (protocol :: String) = case mode of - RunByron -> "RealPBFT" - RunShelley -> "TPraos" - RunByronShelley _ -> "Cardano" - Yaml.decodeFileThrow (source "node.config") - >>= addGenesis - >>= withAddedKey "Protocol" protocol - >>= withHardFork - >>= withObject (addMinSeverityStdout severity) + >>= withAddedKey "ShelleyGenesisFile" shelleyGenesisFile + >>= withAddedKey "ByronGenesisFile" byronGenesisFile + >>= withAddedKey "Protocol" ("Cardano"::String) + >>= withAddedKey "TestShelleyHardForkAtVersion" (1::Int) >>= withAddedKey "minSeverity" Debug + >>= withObject (addMinSeverityStdout severity) >>= Yaml.encodeFile (dir "node.config") let startTime = round @_ @Int . utcTimeToPOSIXSeconds $ systemStart diff --git a/lib/shelley/test/data/cardano-node-shelley/delegation-cert.000.json b/lib/shelley/test/data/cardano-node-shelley/bft-leader.byron.cert similarity index 100% rename from lib/shelley/test/data/cardano-node-shelley/delegation-cert.000.json rename to lib/shelley/test/data/cardano-node-shelley/bft-leader.byron.cert diff --git a/lib/shelley/test/data/cardano-node-shelley/delegate-keys.000.key b/lib/shelley/test/data/cardano-node-shelley/bft-leader.byron.skey similarity index 100% rename from lib/shelley/test/data/cardano-node-shelley/delegate-keys.000.key rename to lib/shelley/test/data/cardano-node-shelley/bft-leader.byron.skey diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis0.addr b/lib/shelley/test/data/cardano-node-shelley/byron-genesis0.addr deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-payment.addr b/lib/shelley/test/data/cardano-node-shelley/byron-payment.addr deleted file mode 100644 index 3103c61961b..00000000000 --- a/lib/shelley/test/data/cardano-node-shelley/byron-payment.addr +++ /dev/null @@ -1 +0,0 @@ -Ae2tdPwUPEZBYMg8DAAQmTWoWxrPLYzDFmTDnqy6qpJfs2J8adQy8TLo4V6 diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-payment.key b/lib/shelley/test/data/cardano-node-shelley/byron-payment.key deleted file mode 100644 index 58183eeebf2..00000000000 --- a/lib/shelley/test/data/cardano-node-shelley/byron-payment.key +++ /dev/null @@ -1 +0,0 @@ -XF<;ޤ=Pbe\8S,fraڼgTd$e<0p@˺{v!q{z ("NmkD4Tyo@ \ No newline at end of file diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey b/lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey deleted file mode 100644 index a5ae1ac7229..00000000000 --- a/lib/shelley/test/data/cardano-node-shelley/byron-payment.shelleykey +++ /dev/null @@ -1,5 +0,0 @@ -{ - "type": "PaymentSigningKeyByron_ed25519_bip32", - "description": "", - "cborHex": "5880084698d81fe21cf0c7e2c618a6e58ffd3c3bdea4d03d50126265b25c387fb353992c9b66a972611cbad9c8dabc675464f6adf6e324c96514c3d13c30a196a770a58ae5401acbba7be6cddc0e08ef76f79ed621f38471b37b7af60de8e0062822c7c6efefeb4e6d6bf6f38ddd44081234541f168679866ff9a3f0ebfa9d1d40dc" -} \ No newline at end of file diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 74d7e610f55..8ea232b3aab 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -280,6 +280,7 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown (Link.listWallets @'Shelley) Empty forM_ wallets $ \w -> void $ request @Aeson.Value ctx (Link.deleteWallet @'Shelley w) Default Empty + mkFeeEstimator :: FeePolicy -> TxDescription -> (Natural, Natural) mkFeeEstimator policy = \case PaymentDescription i o c -> From 468669d865b9d55192cc85fc8465699922ecff1e Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 15:27:53 +0200 Subject: [PATCH 48/86] Fixup: remove submitTxNoRetry --- lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index fb8b52e38e5..769691ed6c8 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -1029,7 +1029,7 @@ sendFaucetFundsTo tr dir allTargets = do ] ++ outputs tx <- signTx tr dir file [faucetPrv] - submitTxNoRetry tr tx + submitTx tr "facuet tx" tx -- TODO: Use split package? -- https://stackoverflow.com/questions/12876384/grouping-a-list-into-lists-of-n-elements-in-haskell @@ -1106,15 +1106,6 @@ submitTx tr name signedTx = do , "--mainnet", "--cardano-mode" ] --- | Submit a transaction through a running node. -submitTxNoRetry :: Tracer IO ClusterLog -> FilePath -> IO () -submitTxNoRetry tr signedTx = do - void $ cli tr - [ "shelley", "transaction", "submit" - , "--tx-file", signedTx - , "--mainnet", "--cardano-mode" - ] - -- | Wait for a command which depends on connecting to the given socket path to -- succeed. -- From 067353f8220bee51f5fdf658d5e1f275ef0659aa Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 17:49:02 +0200 Subject: [PATCH 49/86] Automate generation of shelley faucet funds --- .../src/Test/Integration/Faucet.hs | 62 +- .../cardano-node-shelley/shelley-genesis.yaml | 2478 +---------------- lib/shelley/test/integration/Main.hs | 11 +- 3 files changed, 62 insertions(+), 2489 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Faucet.hs b/lib/core-integration/src/Test/Integration/Faucet.hs index cdb3763192d..f30cf98d5d8 100644 --- a/lib/core-integration/src/Test/Integration/Faucet.hs +++ b/lib/core-integration/src/Test/Integration/Faucet.hs @@ -3,6 +3,7 @@ {-# LANGUAGE LambdaCase #-} {-# LANGUAGE NumericUnderscores #-} {-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} @@ -16,6 +17,9 @@ module Test.Integration.Faucet , icaMnemonics , rndMnemonics + -- * Integration test funds + , shelleyIntegrationTestFunds + -- * Internals , genByronFaucets , genIcarusFaucets @@ -49,9 +53,9 @@ import Cardano.Wallet.Primitive.AddressDerivation , liftIndex ) import Cardano.Wallet.Primitive.Types - ( Address (..), Coin ) + ( Address (..), Coin (..) ) import Cardano.Wallet.Unsafe - ( unsafeMkMnemonic ) + ( unsafeFromHex, unsafeMkMnemonic ) import Control.Concurrent.MVar ( MVar, putMVar, takeMVar ) import Control.Monad @@ -1414,10 +1418,7 @@ genShelleyAddresses mw = -- | Abstract function for generating a faucet. genFaucet :: forall mw ent csz. - ( ValidMnemonicSentence mw - , ValidEntropySize ent - , ValidChecksumSize ent csz - , ent ~ EntropySize mw + ( ent ~ EntropySize mw , mw ~ MnemonicWords ent ) => (Address -> Text) @@ -1452,6 +1453,55 @@ genMnemonics genMnemonics n = replicateM n (entropyToMnemonic @mw <$> genEntropy) +-- +-- Integration test funds +-- + +-- | A special wallet with only dust +onlyDustWallet :: Mnemonic 15 +onlyDustWallet = unsafeMkMnemonic + [ "either" , "flip" , "maple" , "shift" , "dismiss" + , "bridge" , "sweet" , "reveal" , "green" , "tornado" + , "need" , "patient" , "wall" , "stamp" , "pass" + ] + +-- | A special Shelley Wallet with 200 UTxOs where 100 of them are dust +bigDustWallet :: Mnemonic 15 +bigDustWallet = unsafeMkMnemonic + [ "radar", "scare", "sense", "winner", "little" + , "jeans", "blue", "spell", "mystery", "sketch" + , "omit", "time", "tiger", "leave", "load" + ] + +shelleyIntegrationTestFunds :: [(Address, Coin)] +shelleyIntegrationTestFunds = mconcat + [ seqMnemonics >>= (take 10 . map (, defaultAmt) . addresses) + + , zip (addresses onlyDustWallet) (map Coin [1,1,5,12,1,5,3,10,2,3]) + + , take 100 (map (, defaultAmt) $ addresses bigDustWallet) + , take 100 . drop 100 $ map (,Coin 1) $ addresses bigDustWallet + + , preregKeyWalletFunds + ] + where + defaultAmt = Coin 100000000000 + addresses = genShelleyAddresses + + -- Funds for wallet with a pre-registered stake key. + -- + -- _preregKeyWallet :: Mnemonic 15 + -- _preregKeyWallet = unsafeMkMnemonic + -- ["over", "decorate", "flock", "badge", "beauty" + -- , "stamp", "chest", "owner", "excess", "omit" + -- , "bid", "raccoon", "spin", "reduce", "rival" + -- ] + -- + preregKeyWalletFunds = map ((,defaultAmt) . Address . unsafeFromHex) + [ "6199a7c32aaa55a628d936b539f01d5415318dec8bcb5e59ec71af695b" + , "60386c7a86d8844f4085a50241556043c9842d72c315c897a42a8a0510" + ] + -- -- Helpers -- diff --git a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml index e36e718286f..1ad91d5e351 100644 --- a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml @@ -60,2480 +60,4 @@ slotLength: 0.2 maxKESEvolutions: 90 securityParam: 10 systemStart: "2020-06-19T16:07:37.740128433Z" -initialFunds: - # Cluster Faucets, used for setting up stake pools - # - # Generated with cardano-cli - # ========================== - # $ cardano-cli shelley genesis key-gen-utxo --verification-key-file utxo.pub --signing-key-file utxo.prv - # $ cardano-cli shelley genesis initial-addr --mainnet --verification-key-file utxo.pub - # $ cardano-cli shelley genesis initial-txin --mainnet --verification-key-file utxo.pub - - # txin: ca19b0e82b51213761a4ce234e84b02bcb35b4e0cc6c09207e6f9a0f45f9533d#0 - # type: Genesis UTxO signing key - # title: Genesis Initial UTxO Signing Key - # cbor-hex: - # 58203ec965762b14406a605f0761222ce06e3632c3f3eea70a2762c8a43ea1403666 -- 61126ad4b7c56f6db2a6a83f40def1e071adc65734318fc68d05364f05: 10000000000000 - - # txin: d021a0b60be98fce5214488f1cd0590b542d6ac7d3aa2d8bdd3a33531fd18cec#0 - # type: GenesisUTxOSigningKey_ed25519 - # title: Genesis Initial UTxO Signing Key - # cbor-hex: - # 58202dc882a6ebf9c8beb9f30f595c597f4a9d4856b11eed576bd5ab2e1779f40cd5 -- 61e9de932d79f3ff9e041c793be1d4eb1205e10d97723fd8e737a21d96: 10000000000000 - - # txin: 28dd1a860627fe2577eb5f0a994ccd0292cc27add634bf8a7b4e7222bbce0af8#0 - # xprv: - # type: Genesis UTxO signing key - # title: Genesis initial UTxO key - # cbor-hex: - # 582003b5b3158de3a20886cbedbbbc566006d0d411d23c373a43fe817634e9390478 -- 61ca722c7639c12551e9e4b9352ee3fbc049c1b692d5a8ab8d9d1f74f5: 10000000000000 - - # txin: 306c27331900ae1c3d0dc31bba1c37365f594b9e1017048c6ccac054ec1b12b2#0 - # xprv: - # type: Genesis UTxO signing key - # title: Genesis initial UTxO key - # cbor-hex: - # 582022be977fea1ff0843059d7a202cc9d84678d8c7ea2f295844d6acc4312c29882 -- 61e5fbbb9b972b05ce0af48d9b410b850febdf36376c50aaa20ad3a026: 10000000000000 - - # txin: cfc08d97636877d94cd19a246e72d191bc3905712bbab8cdbb1aa240fc09be3c#0 - # xprv: - # type: Genesis UTxO signing key - # title: Genesis initial UTxO key - # cbor-hex: - # 5820e96f612fbff3df3d8eef4ea3a07e3dc98769020545ced0167998a85a4cc50aa7 -- 614f03403749d2825ccb14376a1ccf60e1cc0f9e930d3aa9220880f2b6: 10000000000000 - -# -# Byron wallets -# - -# "arctic", "decade", "pink", "easy", "jar", "index", "base", "bright", "vast", "ocean", "hard", "pizza" -- 82d818584283581cc43ee228266740f39b2161b74d65d585c0e2f76eda8f5e43267c476ca101581e581cbe7536c5694d72c4a1f890237b37187f33f4f250c3194d9c1a99210a001a5fd5dcf7: 100000000000 -- 82d818584283581c2841b2a6bd2ff5ca52d5f74958211998c6ba269ec0a499efeef46c87a101581e581cbe7536c5694d72c4a1f8912359d75207a6fd8667c2e500f8daf97061001a36eb942d: 100000000000 -- 82d818584283581cc303b73ae9b3b4c2c533de11312ef83c20d1d8a43b737674df7ee405a101581e581cbe7536c5694d72c4a1f8922337778d8f18071b7ec1b1b4539b5ac0b8001a3cd1777f: 100000000000 -- 82d818584283581cc3f37aecad14b01c87924fa1ddd700758a19ed2d8235d09648970031a101581e581cbe7536c5694d72c4a1f893231517c8178b10af94c07d68af5bbb0f10001ad3c4a924: 100000000000 -- 82d818584283581c24a59552c393d4e326feb4bc3918e53110f2d04b07cde22d1c35ce33a101581e581cbe7536c5694d72c4a1f89423f3b602a0fd1943abbf491c0b1c1c5f67001a7cf1c54f: 100000000000 -- 82d818584283581c1bf8b22ca68529c17814e14345d4d777eb420b1c8a331ce85d651720a101581e581cbe7536c5694d72c4a1f89523d1563d287023d7c1be15d066dc7caebe001a4d911353: 100000000000 -- 82d818584283581c1370e3835e1d9af7e4dde71b651ca3e653a6b89cbe7025ba01c320e0a101581e581cbe7536c5694d72c4a1f89623b4f677b0e22c6bd8bde183c29cddfd15001a4ef670df: 100000000000 -- 82d818584283581cb692e64734b0a4dc14177064c4e5688f5b5fc814e9aa20327ae73644a101581e581cbe7536c5694d72c4a1f897239296b2385536ffeebcad371e5d3e4d6d001a87e21004: 100000000000 -- 82d818584283581cf77278594f7d7498a7bff5b1c0597a336ccc1de4f3a67982741b27c0a101581e581cbe7536c5694d72c4a1f898237036edc0c73f9305bc79eb791d9f9cc4001a6495496d: 100000000000 -- 82d818584283581cb70fd591a701d8b1d51f154dbcf9fd063dbd0a5b804813b9f45db3e6a101581e581cbe7536c5694d72c4a1f899234ed627493a49271cbb459fd5ddffeb1b001aec71e4d7: 100000000000 -# "finish", "evoke", "alone", "town", "express", "wide", "pair", "story", "west", "safe", "news", "wrap" -- 82d818584283581c63a3a4fc0aeac2a03c73dec719fc01c60e243ebd7f8c2abebce95a25a101581e581c5489c5c16bcda79abe04de4bbb9d5fe379a126158f36691695c65e47001a972fc044: 100000000000 -- 82d818584283581c79a6f1b71a11b22ea16d9eb51469a83f40619a3567868598aee9b088a101581e581c5489c5c16bcda79abe04df4bb451a61adf01567b7d22ef1a0dcda138001aee6a8653: 100000000000 -- 82d818584283581cff38ef5056a20d8e98908852fa877a83da88d4957c40e31f8f54927da101581e581c5489c5c16bcda79abe04dc4bbf35d274afe0c748b25e5d0da5b9d864001a55908959: 100000000000 -- 82d818584283581c60ac1ab91d3b201467db0d28b7583f97fcdd6fbf7982c5175e8e3c4ea101581e581c5489c5c16bcda79abe04dd4bbde918ac1441f7aea04ae3111dc01b56001a546a0514: 100000000000 -- 82d818584283581c973c7410689fb5fba09acb5fcf9de4ce0c6bc1ea793d45a7e859b0f6a101581e581c5489c5c16bcda79abe04da4bc8cd4406e51f697cd5865104b5ac5282001a5adfcdbb: 100000000000 -- 82d818584283581c801ff32f07db4e57dc4aa44f592890dd65a20ce7107555d0cf8aaa14a101581e581c5489c5c16bcda79abe04db4bc1818b3d4a8098e2c372d7082db39573001a5f9af40b: 100000000000 -- 82d818584283581c146febcaa8039322676cc6f2a39f7ddd5b44bcf4d26f1c88fa81a8dca101581e581c5489c5c16bcda79abe04d84bcc65b7971a5f0ab0f8ae45fbc49fcc9f001a07badbba: 100000000000 -- 82d818584283581c75e0315285154d5a27129a006f366d32566cf9cf76af21ea58b90f99a101581e581c5489c5c16bcda79abe04d94bca19fece7fbf3916e79acbff3ca60f91001a4a879877: 100000000000 -- 82d818584283581c3dfb626f1623e1230407bd5ac6735fe9df91c0dd81450a023bd0204ba101581e581c5489c5c16bcda79abe04d64bd5fd2929509eabe31bd739f2d49246bd001a64bfcd12: 100000000000 -- 82d818584283581c1d777e341ea84f8ca60a98d715d6819e01ca41d4a184b3497dda522ba101581e581c5489c5c16bcda79abe04d74bd3b17060b5feda490ac3bff64c9989ae001a49394c88: 100000000000 -# "fox", "now", "hello", "inmate", "era", "jealous", "cruel", "wreck", "dash", "supply", "book", "attend" -- 82d818584283581c77f74a5ab262584441bb1f0eaa72000809e2247748176978ec92a50ca101581e581c5c28740f651acb53d2647e967b99d58b5458943e11094fb6fd312722001a5c00e9a5: 100000000000 -- 82d818584283581ca95ec14bbeb6a11ea792f0ffbf540d98448f98ce71e6a70ae694a0b2a101581e581c5c28740f651acb53d2647f96efcc2135d11c4928b1635c22cdf52bb3001a2d18db45: 100000000000 -- 82d818584283581cd0fc796653b990885e159efc86e5ec1fc7dd9d95ab0ec64f3b9b9028a101581e581c5c28740f651acb53d2647c9693323d395bcf2a6bd15334de5eaa1d00001abb7de02d: 100000000000 -- 82d818584283581c3e483e52d72a391d37acf68361c476721a40c807451fa1e03710d8ffa101581e581c5c28740f651acb53d2647d96076689e2d793df5471ae414a2e6e2291001aeeb57c95: 100000000000 -- 82d818584283581cab2b469a1a11cfec9e8307f83e10b41c702834540d6f57c7362e35d4a101581e581c5c28740f651acb53d2647a96abcba4e66146c197919e1906c02214de001a2464da08: 100000000000 -- 82d818584283581ca18f876a5b816bfbb5cfd75df7fd0124895f52fb77d990e8f2ce9d9fa101581e581c5c28740f651acb53d2647b961ffff08fde0a768131f926728fe6186f001ae6283155: 100000000000 -- 82d818584283581c8b543a9b533b26d2bb96b9a3689def8a4fe776aae5ef060a722bc806a101581e581c5c28740f651acb53d2647896be640c9468bd57c451e9fe2d219b0abc001a6132d0f1: 100000000000 -- 82d818584283581cefc9d2327c644c039cac4f5f35a643abfdb1fced3f9f510145d95a0ba101581e581c5c28740f651acb53d26479963298583de5810caef1430c9af05e0f4d001a52e6ce5c: 100000000000 -- 82d818584283581c4fe1d891f9aafc42eb1771c8e5ae66766a6632b7c8c804504ece17bba101581e581c5c28740f651acb53d2647696d6fd73416f34eef01134e4558213019a001ad9fa24bf: 100000000000 -- 82d818584283581cb474ab36084426c18e7d563ba62757961cfaf5df6ba25a6a36929a56a101581e581c5c28740f651acb53d26477964a31c0eaebf8a2dab18ef1c151d7052b001aad94f08a: 100000000000 -# "must", "lock", "cereal", "water", "silver", "cake", "circle", "express", "sock", "arm", "chapter", "avoid" -- 82d818584283581c7b6b15d5f3b1164af8f3006a8af957ca7a23853ffe90ab1eca751e90a101581e581ca0c0a575003d48df8d90a0aeb064143276b59ffb94d5c9f90c0b422d001a5d4d687e: 100000000000 -- 82d818584283581c1abc362bd85682dd2184dcaa4a2ecc8389dab583b4ef086d7ac27fdda101581e581ca0c0a575003d48df8d90a1aef5350d567164bb628694eaa26120a707001a161c6a65: 100000000000 -- 82d818584283581c028258347aa56d0184522e889afeceafc9d4ef9014f93e4e0b49c21aa101581e581ca0c0a575003d48df8d90a2ae3f07067a6c13d7c977530b4cb6350ce2001ab523659d: 100000000000 -- 82d818584283581ca75739daf6ef68069979898720cf68bfd73943b1d51f6d6a92506609a101581e581ca0c0a575003d48df8d90a3ae84d8fe9d67c2f23069122cf50a4b71bc001ab6f92182: 100000000000 -- 82d818584283581c42e9bbf3371322eef7db77bfe18b8c5c5ce358b4c1b644b4217ba898a101581e581ca0c0a575003d48df8d90a4aecea9f7c162710e985ad14c9e5f60d696001ae7f072e5: 100000000000 -- 82d818584283581cd6cb70131b1fd77fcb33f8be36d842609a0a5be645f14a0b88f135bca101581e581ca0c0a575003d48df8d90a5ae137bf0e55d202aff4b906d47b4753b71001a505f541b: 100000000000 -- 82d818584283581cade3b310603d496eaa4d98370d28cf4affe46522d0807c2ce4145868a101581e581ca0c0a575003d48df8d90a6ae5d4ce90959cf45663d4f8ef0088ba04b001aea01cc9b: 100000000000 -- 82d818584283581ce30729c7fc9b1442902cfefe347990f58c44d1bd8bae57e357848846a101581e581ca0c0a575003d48df8d90a7aea21de22d547e61cd2e0eaf995da00526001abfaaa198: 100000000000 -- 82d818584283581ce1bd37f26d2324d4354775ac1a6d392fd8839b801fe5de47fc994873a101581e581ca0c0a575003d48df8d90a8aeeceeda514f2d7d3420cdcf42b2b56a00001abce93fd0: 100000000000 -- 82d818584283581c553271a49579c312576af04a0ad26573f61421ba9b9b682b7e33c8dda101581e581ca0c0a575003d48df8d90a9ae31c0d3754adc989b118cf0eb06cbcfda001a57167562: 100000000000 -# "give", "verb", "balcony", "hurdle", "pistol", "flee", "manage", "barely", "pulse", "episode", "speak", "school" -- 82d818584283581cf1ca74f96894ad7810ac5bed15a994cdd27acea361e4384426ef1b59a101581e581c26290f6bb829beb7416532a95137ffb472d71d5317d62975c6dabcb2001a2aef89de: 100000000000 -- 82d818584283581cb550d4d414352a0f8471b399f5690f69550e852ed1a355d16c66df1aa101581e581c26290f6bb829beb7416533a978175efd76dddee1b9fd720ee34e4fdf001acd70e144: 100000000000 -- 82d818584283581c4a712dd9ca97387e0711beeb0833e6ba28e2ad301509a3ec29f19555a101581e581c26290f6bb829beb7416530a9037741246acb9b35d28697428df29759001ab3ce542d: 100000000000 -- 82d818584283581cac76c233aed9f94cea1554371e092e0e65d92d725ec7f6d66408cd8da101581e581c26290f6bb829beb7416531a92a57a06c6ed15cc474aee0dba9662a86001a8ca4a06f: 100000000000 -- 82d818584283581c3b2f645069310d4afe96d481a54ff493ce70f4aa362d79613ab99c4da101581e581c26290f6bb829beb7416536a9f2b77ad683ef218ea1744eda38ab0665001ae0c025ab: 100000000000 -- 82d818584283581c687bd9d781912de18c37016fcf98c8ad30cc68d6bc510c06ebf612ada101581e581c26290f6bb829beb7416537a91e98d91e88f5e21c449c9773551f9991001a21d13a53: 100000000000 -- 82d818584283581c232734afddf842e198c640f1c96214b7dc3de91a79c0be6ac9c7fecca101581e581c26290f6bb829beb7416534a9a4f7bc457be39f705c25bca7ffc2e10b001a3188e032: 100000000000 -- 82d818584283581c3baf6f3e08fafffda39fa291bff8207919465ea1b0378c1b36ce3f9ea101581e581c26290f6bb829beb7416535a9cbd71b8e7fe960fffe4c05411c377438001ae6b284c7: 100000000000 -- 82d818584283581ce8fd0ef68d95480dc56323648f14a10eb9b03337fd8dc6802eebad4fa101581e581c26290f6bb829beb741653aa99338f6f7940726c92b13733fab7b5017001a81f5ee5f: 100000000000 -- 82d818584283581cef736044c98f8ca677ac4f6fa5d1543137e2e7405b6a25fea5daa51fa101581e581c26290f6bb829beb741653ba9bf185540990de757ce3abcd8c7efe243001a678615d7: 100000000000 -# "divert", "entire", "urge", "banner", "repair", "mechanic", "muffin", "illness", "genre", "intact", "coin", "boss" -- 82d818584283581cbc446315d8c63abe7e01ec7ffcf792f79381858355ab1aec5019e28da101581e581ca4a97c0c4b382b068fd0ddf07189b8c5ec93b61b4ddf14f9abbebb0f001a2bc34c57: 100000000000 -- 82d818584283581cf402b3e7d5ae635eafab58c796dc63bfca6f16fd78d3527393871beca101581e581ca4a97c0c4b382b068fd0dcf07b56ec925edb10af10f09a379d39fbe8001a676fbe9a: 100000000000 -- 82d818584283581cb0460f4d566c4b75b819e8061fe55f0a35b378496fc549d771e43251a101581e581ca4a97c0c4b382b068fd0dff05def502b090502f5c5bd087cc9c83c5d001aa66648aa: 100000000000 -- 82d818584283581c2ac8da5b344dfcb80a13cf5dc1b82b1c07e77d381645306dfdb3dc5ba101581e581ca4a97c0c4b382b068fd0def067bc84f87a4c5c8889ce8ebaba437c36001a5d7c6510: 100000000000 -- 82d818584283581cd505e8c9bd9e88d3b1c32bed06f096a49b2ac4c50ec1f04b8227d8fba101581e581ca4a97c0c4b382b068fd0d9f09ebd87fab3b11f695b222df370aab974001a3da018e6: 100000000000 -- 82d818584283581cfebe3d1daf70ad1d7a7034d3cf49eabfe8d47e5252fd5b2869dfc12fa101581e581ca4a97c0c4b382b068fd0d8f0a88abbc725f979fc1e33b3316225f94d001a21571be8: 100000000000 -- 82d818584283581c10af4c424a0cd4e2567bf9afc6d6fbc43e937406379f5bfa12428b7ea101581e581ca4a97c0c4b382b068fd0dbf08a232060d0226b42d40021768eb43ac2001a63e771a8: 100000000000 -- 82d818584283581ceab107c7f66535d15bd2579f819ed8e68673b7d5d93b5c127aa24710a101581e581ca4a97c0c4b382b068fd0daf094f0532d426ac5d59711a7b47f2f7a9b001a0b177064: 100000000000 -- 82d818584283581c2669ed5a2bd47bd51624135bd7c8ea871209ba2a63e31a7eda2308a6a101581e581ca4a97c0c4b382b068fd0d5f0cbf1562f7bcf88b6696545ed3596b7d9001ad29765aa: 100000000000 -- 82d818584283581cd825327ae6939d52ce22c2fa57775674b6b74ece75a4db956ae3c287a101581e581ca4a97c0c4b382b068fd0d4f0d5be8afcec16e3492d76cb2b2711f7b2001a37e2d81e: 100000000000 -# "pink", "radio", "various", "frame", "argue", "draft", "sun", "speak", "club", "salute", "thank", "price" -- 82d818584283581cc1a64ea03899695190950ed14d81f65ccd397f8a98b95ee95cdae08ca101581e581cebf99ef7aedc219209fdcd71f9ecb42e09d715fd650cd1857dd736bc001a7f7b1f31: 100000000000 -- 82d818584283581cbb99741f0ccf1fd38b1c0dc986bb0c3532e817dc49405b3ebef8fc28a101581e581cebf99ef7aedc219209fdcc71fd6364bdbf75047ea9a8f183efa3ab62001afd19d4f9: 100000000000 -- 82d818584283581c35f641671083cbb95525d5d57e977cdceee154a4583f1a3d54480c8ba101581e581cebf99ef7aedc219209fdcf71fbfe55119c9938fbded38f89993e4d6f001a5d5cd865: 100000000000 -- 82d818584283581cd2a62eb7ee7114a1b0b28cec83ad7dff94aaed1986b84517debf77c5a101581e581cebf99ef7aedc219209fdce71fa7505a05238277c2270b0870b0bc215001a14bbda2e: 100000000000 -- 82d818584283581cb22b826e2bc73c787e3fa8dfdffb144ca4f63eaf78c6298eea73650da101581e581cebf99ef7aedc219209fdc971fac87269e351d000747d537e45090a56001a175633f7: 100000000000 -- 82d818584283581c534bcbb1dc331a861ba327b7cb7701158d5930a52fb56cfbd8a4ec81a101581e581cebf99ef7aedc219209fdc871f93f22f899f0be81b719747cb7d57efc001a4961b2fb: 100000000000 -- 82d818584283581c6749b071b50d6ee195e8d5e6ff47d3feee19072012d645e602198827a101581e581cebf99ef7aedc219209fdcb71fcda134c7614f3feec44128261702009001a2dea7d83: 100000000000 -- 82d818584283581cd4bad3c60f281a48d0f245f723a7027f689a29fb86999a596679daa8a101581e581cebf99ef7aedc219209fdca71fb51c3da2cb3e17f30e13280d33c95af001a9f2b0d14: 100000000000 -- 82d818584283581c34a6261711ff5aa0b2ee62d31d2dbe0a1859ac76beda4035b41cc856a101581e581cebf99ef7aedc219209fdc571fba430a4bdcc8a0482eed5760d3bddef001a8e7f89e3: 100000000000 -- 82d818584283581c020b6acf95f0225d298ed8333a922dd091a547b5830496a70bcc6920a101581e581cebf99ef7aedc219209fdc471fa1be032746b7985c58af6747f075296001ac055d33f: 100000000000 -# "all", "beef", "link", "funny", "swing", "duck", "sweet", "swallow", "slow", "shield", "weekend", "open" -- 82d818584283581c68b679d2eb64934eef9cc2bba756f213cc0d5f5d34e295a03e6b3936a101581e581c7d6cf7b57259341a771434a310a48a74bd18e3c8daf20d8c196dbcb7001a284d5349: 100000000000 -- 82d818584283581c5f5168362704e9ce1bf2127bd43ce4dbc2856ee9f5a9c04bd8bc9065a101581e581c7d6cf7b57259341a771435a37ed23d1e7797e4c830ad225990ad1d6d001aa92ad067: 100000000000 -- 82d818584283581c62acf015290d3b9316d9b4f2115a1199514adc969c6557d37a24f4e5a101581e581c7d6cf7b57259341a771436a3ec00f1c73016e6c88667372607ee7e22001a8f4f7e82: 100000000000 -- 82d818584283581c124035af9f509d6b1c291ffdbc4e237a0bd89e4c0113be4bb8366119a101581e581c7d6cf7b57259341a771437a35a2fa471ea94e7c8dc214cf37d2ee0d7001a6ecaf2af: 100000000000 -- 82d818584283581cf20e93d542427e9f0de562b796ad03e10bec149d9fd35d9d14a8379ba101581e581c7d6cf7b57259341a771430a353eabdcdd61dddc88209bb573e6b37e2001a73f89333: 100000000000 -- 82d818584283581c4195d77d33fb0e1d74778495479397e32e0980da7b72000de23e2d55a101581e581c7d6cf7b57259341a771431a3c1187177909cdec8d8c3cf24b5ab9897001a05781006: 100000000000 -- 82d818584283581c7bbd576ea749b1740c486a419cdd25201b0068ec0f760ce0ff4515cba101581e581c7d6cf7b57259341a771432a32f4724214a1be0c82e7ee4f12becf94c001a12892359: 100000000000 -- 82d818584283581cac1ce203cdc07680e73d3acb6c96925aef5ac4d42c9cf5721206d931a101581e581c7d6cf7b57259341a771433a3a275d7ca039ae1c88438f9bea22c5b02001a7aa0c306: 100000000000 -- 82d818584283581c38d9135a0a65dd7988b8f4b311b14d62047d3d85ae78cdc26089273da101581e581c7d6cf7b57259341a77143ca3851724c28a0eefc88ac5b3f4cf70c662001aea655727: 100000000000 -- 82d818584283581c65f42bfb559b039239600d166f2caac1f0603ea3249d9b3420c0b521a101581e581c7d6cf7b57259341a77143da3f345d76b448df0c8e07fc8c146b12718001ad1714b8a: 100000000000 -# "green", "friend", "captain", "entry", "utility", "lake", "blur", "matrix", "will", "prefer", "breeze", "shed" -- 82d818584283581c94c4082a4c250a68ce24473c6a25c38d3594d9387ef488e1eb1ab295a101581e581cfdccecfb14c2b8a5092692f9c8d47103b27a845ca1ebf357fc7b967b001af0fd7a0a: 100000000000 -- 82d818584283581c98560970886524b2eac8698b995b97b9cf86718c428b65859b587f64a101581e581cfdccecfb14c2b8a5092693f99d5fbad8d78dc637a7b8c815c406e527001ad3c9fb39: 100000000000 -- 82d818584283581c282f1c72e7eaf33422f56d4f0982df29a404fecefb1cc8ba21ddd6c6a101581e581cfdccecfb14c2b8a5092690f923bfe058665400a695514adc6c66f922001a2ea18f44: 100000000000 -- 82d818584283581c891558873e42c83ea5038f07e43c30469f8d551613048bc99d1e68aca101581e581cfdccecfb14c2b8a5092691f9f849292e8c6742819b1e1f9a34f147cf001abdb3d258: 100000000000 -- 82d818584283581cc1b7b5bbbdc65fa0fd42b4ee6c3d83ff5a52ab02116c4b178a3ba23fa101581e581cfdccecfb14c2b8a5092696f91c00945849c78cc9b81f474f1ba7d02c001a3607f41b: 100000000000 -- 82d818584283581c5fc7a9627771513abc7549fe922872b970a465e8118114ce751a96a6a101581e581cfdccecfb14c2b8a5092697f9f18adc2d6fdacea4beec1b0de3311fd9001a213b4689: 100000000000 -- 82d818584283581c298eb4ed1790eeada106afb9f23c6e06d612b36cf0fd736e9b3dd234a101581e581cfdccecfb14c2b8a5092694f972ea02aefda00813ad859dd38b9133d4001af7c87d47: 100000000000 -- 82d818584283581cbfb2a7e37b784bda81d70ca6002347bd90007ea2465b4c67f7c26929a101581e581cfdccecfb14c2b8a5092695f947754b8323b44aeeb2527291531c8280001a45c1126b: 100000000000 -- 82d818584283581c977295ca7c1f73660e24df147effba03611a9a7a1550e5a377c16b22a101581e581cfdccecfb14c2b8a509269af9702bb6ade0139536d0539a463ad20ade001a7d8923c5: 100000000000 -- 82d818584283581c2e265c29637e5291f69dbb07b3448b7bc22bb3690d40b9b4250e766ba101581e581cfdccecfb14c2b8a509269bf945b6fe820627d711d6206f04025d598a001af16e104e: 100000000000 -# "reveal", "jazz", "equal", "salmon", "first", "decline", "liquid", "wolf", "powder", "account", "elbow", "figure" -- 82d818584283581c98604764aff7fb43e874126a90d608a0f227235ac4e4f12b0ce43bbba101581e581c6e03e62012aa500f4479745977c71563578ee90021c858d69021ec11001a27d9a6aa: 100000000000 -- 82d818584283581cecf29cd55d2beec0610b2b289f28b9b675674129503ffdcaafacf4cea101581e581c6e03e62012aa500f44797559c6caaf61e0f612ea9f6465b565730e8b001a544702ec: 100000000000 -- 82d818584283581c2179d4d67990be35d8343c30ccd75cd1076e5a747a00982b9a543712a101581e581c6e03e62012aa500f4479765915ce4960695f3cd31e0172943ac53004001a000b3175: 100000000000 -- 82d818584283581cf64cb36edb3bbf096f914fe22ff04a2af2b56a1b37eaab2bce3bcb42a101581e581c6e03e62012aa500f4479775964d1e35ef2c765bc9d9d7e730f17537d001a271f1514: 100000000000 -- 82d818584283581cec16cca17838413b642143373253efd4ec5529dbe38031d192051a9aa101581e581c6e03e62012aa500f4479705940baad6833ec435c2556265a3dda622d001a23b04b30: 100000000000 -- 82d818584283581cb9ac1f3364479728d7c9f243c6afe6f7d1ccbe1ec3d51b9e5398c624a101581e581c6e03e62012aa500f447971598fbd4767bc546d45a4f23239122c85a6001a8d70877b: 100000000000 -- 82d818584283581c1bac63b633775e032d016acad0ac3cf51531b85742f73b17da2a925ca101581e581c6e03e62012aa500f44797259dec0e16545bd962e238f3f18e77da71f001a553df5b6: 100000000000 -- 82d818584283581c52b1bdeefc06f64f8b048b850b8fca640f076a640e895ea7bf0939e9a101581e581c6e03e62012aa500f447973592dc47b64ce25c017a22b4cf7bbcfc998001a0bd38432: 100000000000 -- 82d818584283581cd3154f3b0711dae361296c44accbdfcb3846618985431af61702ebd1a101581e581c6e03e62012aa500f44797c59eae1e5579fd2344a18acbdce37b0feda001acf0baabd: 100000000000 -- 82d818584283581c3c2adc79eccbc046d7b7c9d672231ac75e8bc179ee695bc25ee8ce48a101581e581c6e03e62012aa500f44797d5939e57f56283b5e339748caad0c022154001a44812da2: 100000000000 -# "olympic", "uncover", "stone", "tiger", "oppose", "icon", "property", "heart", "mean", "interest", "account", "head" -- 82d818584283581c80cb48d28f000f41097efbc1de3c859513212c80647514ec0e4dd264a101581e581c562a26508f25ccfede33b5b677316173ea2fc66fcc92526651fd6fad001aa191c9b5: 100000000000 -- 82d818584283581cab8ac5c673f7e4140e2b852ba0ee2045674c9d55e72bc3dadb0678d8a101581e581c562a26508f25ccfede33b4b6a72e31180f29c9407f74cda0ddb4bc7c001a2288398d: 100000000000 -- 82d818584283581c7c44fba8732a1434daa1225a39df0c70d15a0b17b2924f3e8b724b2ba101581e581c562a26508f25ccfede33b7b60d37c129a13dc0cd66cf5cf1388ed60e001a983fb64f: 100000000000 -- 82d818584283581c5a41c47b908787a1e0775b0a88f9bcb1329ea29f624bd2489060cec8a101581e581c562a26508f25ccfede33b6b6423491cec536c39e19b1d72bc54523de001a0fa08ea2: 100000000000 -- 82d818584283581cd3f0b265a2de543964daadf0e68230d541f1da99da544ee976b2199ba101581e581c562a26508f25ccfede33b1b64626a1067d14d2b397193e5082dba2ea001af4a4e7e0: 100000000000 -- 82d818584283581c0a06871a3d68d2b322459cd1592c2419181c78ce40d019ce0984503ba101581e581c562a26508f25ccfede33b0b6762371aba10dd5844afbb88a0e93efb9001a4fe8bc48: 100000000000 -- 82d818584283581cd9ed6f64957392a37bf0228ab84c01ef0f55e4a93d3c7a2b0a9a0c0ba101581e581c562a26508f25ccfede33b3b6dc2b01bd3322cc11325648db696c094c001aa73bbf53: 100000000000 -- 82d818584283581c6ccd8cb6ac65f45d4e51ab07d32a89c0e040a574b52494372d159534a101581e581c562a26508f25ccfede33b2b61129d161581bcfe2e437c315f623561b001a2fbccdc0: 100000000000 -- 82d818584283581c62da68224b0ec8960e0e19a1fe23cb00641ddd6c91fa454c3ed8e009a101581e581c562a26508f25ccfede33bdb6d947e14cc566aee735857b92ef400a33001a3d3e8055: 100000000000 -- 82d818584283581c93b5f20eac1ae1454c716b60012075d9dcf380503af3e1d3db958829a101581e581c562a26508f25ccfede33bcb60e45b1f1e95fb1b8e866f6cc7bf85602001aa2db6530: 100000000000 -# "poverty", "hungry", "depart", "shift", "proud", "wrap", "voice", "throw", "spoon", "this", "system", "flee" -- 82d818584283581c492ee74d7ae7435b825e15e347b955d932558b6fc96ead59e94c0525a101581e581cf84c6ca1755e0e0fa94652911b4527e69193456e1435b4ef2e61e243001ad6dc9491: 100000000000 -- 82d818584283581c3ae4aed7d9c9e251529c35ba0d244823729c70ee2feb820835660b0ba101581e581cf84c6ca1755e0e0fa946539125289aa15dcc69eba29ce723d4a3ea0a001a0daa8118: 100000000000 -- 82d818584283581cc61b3d5fa2163cce1805be18e2e414fa4281534beff1fd088c94c1a9a101581e581cf84c6ca1755e0e0fa9465091027f416ffa21fd73f7654d87e4dbd1b5001a958a91cd: 100000000000 -- 82d818584283581cdd9328996a13b357a66872df4b87f1ae3fc99746a78007f6bac044a7a101581e581cf84c6ca1755e0e0fa94651910c62b42ac65a21f185cd80bb891eda7c001a0422cc83: 100000000000 -- 82d818584283581ca236821e768ed4aacc6d24c0fccc4b38062125e06c3bfe82663fca00a101581e581cf84c6ca1755e0e0fa94656914dd1f2d3c076d6624ed381c0c36b0360001ab8b37a98: 100000000000 -- 82d818584283581c893fda3ac8e2f3d53bf388bc6f5c1b8d2d458fc904390639eedea3a8a101581e581cf84c6ca1755e0e0fa946579157b4658f8caffadfdc3ab5f468ae0b27001a504b5574: 100000000000 -- 82d818584283581c04ede66473f849dbad73ba852a4a6fde6d20e4739aedd67fbfd09a99a101581e581cf84c6ca1755e0e0fa9465491340b0d5d29058e6831041b5879e6f2d1001a424ce9aa: 100000000000 -- 82d818584283581c8e79a85662c464768b325bdc31dbc4a741906aabc058e5e3cb7ea884a101581e581cf84c6ca1755e0e0fa94655913eee7f18f53db2e5bf6b4e8c1e29fb98001a62a343d6: 100000000000 -- 82d818584283581c7f6345109b2844918a617ea6d1e756e6dd151537463173563d4bcc96a101581e581cf84c6ca1755e0e0fa9465a917a5dbec1ef59675788714f915876247c001a95899f7b: 100000000000 -- 82d818584283581c143a601d6017f74cd79c3285c694fc1244a804ecd043f5ffbf04948ca101581e581cf84c6ca1755e0e0fa9465b918940317dbb928bd416d982c5fdb82c43001ab24bac9b: 100000000000 -# "tattoo", "crop", "genuine", "impact", "govern", "banana", "hope", "bamboo", "junior", "pride", "best", "skirt" -- 82d818584283581c5fbb13068c32e669a57e934fe9c1708a9dfbec7bb8f4ff39d5258615a101581e581c9ce9c96607e1c3c0403135f5bb27c7a6a1956e587af1fc3fbcc7d05a001a6363fe67: 100000000000 -- 82d818584283581cecc9b07216ea69f27c0aae2429b69ee97bbd9f4d61bffde7706172f2a101581e581c9ce9c96607e1c3c0403134f5f45e1e68a4a3603c9e14a01925ca26d0001ae2c06406: 100000000000 -- 82d818584283581cc5187ff8cca8bbaf5d03eed3af5bae28941a3b60e07b8e418c6ec74ea101581e581c9ce9c96607e1c3c0403137f549b918249c798a9032abb68ceac22470001a20139705: 100000000000 -- 82d818584283581c251075dd2ea97828cd8cd3b6cb14daec481c8cea204a26b6c819a1cba101581e581c9ce9c96607e1c3c0403136f582f06fe59e877c7456ce596653c57ae5001a12356af6: 100000000000 -- 82d818584283581cea8918b3e258fb234581b515541a67e1174fae68b24edf77d6fedd73a101581e581c9ce9c96607e1c3c0403131f59a0424acaccd36e8097e89a65fd12830001afeac48a4: 100000000000 -- 82d818584283581c3068845b1f0e8c87bee8c1e7021d194dd86e04fde43de2f88c5b1f51a101581e581c9ce9c96607e1c3c0403130f5d33b7b6dafdb28cc2da12c80c8d37ea5001a2e726694: 100000000000 -- 82d818584283581c21cc5a72d6369bbac31ea71c53711e8c6b08633c5550d9adba4d6fd5a101581e581c9ce9c96607e1c3c0403133f52d967529a7b15220c23743f38dcc7c45001a913c09fe: 100000000000 -- 82d818584283581c15c46425e449e0e78c9b67b35e20ac50a81a31335fc5978991b78fe4a101581e581c9ce9c96607e1c3c0403132f566cdcceaa9bf4404e65ae6ccf6ced2ba001ab048cec1: 100000000000 -- 82d818584283581c8fb1bb49c6e8a3506de769136dbca1744479c52599db551841fba35aa101581e581c9ce9c96607e1c3c040313df5f86d0d9c8b25de385bd8e37275b420b0001a87821e04: 100000000000 -- 82d818584283581c854a01f48c10780943ac3f3f192a58a47f3ca4ee08644ad6855c744da101581e581c9ce9c96607e1c3c040313cf531a5645d8e33d01c7ffb864cdeb67625001a08ebecca: 100000000000 -# "model", "hundred", "exact", "control", "random", "cross", "burst", "fame", "ladder", "bleak", "car", "virus" -- 82d818584283581c4c817f808ede5db75c3a99cb84f395cb8120a65bc8bb3da18d0ca659a101581e581c1492603b043e26ff2a9b1db8ba954b6cba14543174665683f6ef12c8001af27aae2c: 100000000000 -- 82d818584283581c2b691a158fa2ed58f2cca3f9e07289211a3758e2946859cb1626f661a101581e581c1492603b043e26ff2a9b1cb81e683cbc2cfb763b4dac6af2ead77639001a67039714: 100000000000 -- 82d818584283581c7a4c1eeba0cdf54958f1072610c8090f422f7c4c7c16f8ae3ebaa0fea101581e581c1492603b043e26ff2a9b1fb8f2f069ccd5470e1dc2da2da50d204be5001adf6e5f57: 100000000000 -- 82d818584283581c0f8072b4d0d894f55a5eb1c09a75e288dab6740e74bd1e20af4803a5a101581e581c1492603b043e26ff2a9b1eb856c35a1c482e31279b2042140208af56001a04d26923: 100000000000 -- 82d818584283581cdf67c16d44756139bc8787641c6307092e59fded69aa719bfa6439b3a101581e581c1492603b043e26ff2a9b19b84adf0eac83aedf59d87da73fc88fa28d001a7df8de71: 100000000000 -- 82d818584283581c3a9ff51fc171751748f35f076ff867fc0aa27662c7a55ec96d0a2fa8a101581e581c1492603b043e26ff2a9b18b8a9b1fffbf5940264b1c3bbaebc7706ff001a6f07dfa9: 100000000000 -- 82d818584283581cb0b4259ec6ba6313cd70741ca45cb30ecaa7adf6d6f89cb5d2730430a101581e581c1492603b043e26ff2a9b1bb8823a2d0c9fe1994526f27e61dfbfdaaa001a8405ad11: 100000000000 -- 82d818584283581c1491caf366ba279c744d063ac96e7b57e77713356f5a0176a0f86d98a101581e581c1492603b043e26ff2a9b1ab8e60c1e5c11c8bc4fff3793d0d3a73e1c001abb1fb86d: 100000000000 -- 82d818584283581c9f85c5598bde969d2ba57423775465c0f0392dc66b2aafde803ad899a101581e581c1492603b043e26ff2a9b15b8d528d2eb4c486b823c95f8fb992f3253001aa1f33d0b: 100000000000 -- 82d818584283581ccdc6a5c393060a86c2802ea2ce89dab087f19310256c1cafa70161ffa101581e581c1492603b043e26ff2a9b14b839fbc23bbf2e8e8c15db0c6b8e1796c4001a7d678a16: 100000000000 -# "ripple", "lazy", "void", "zoo", "social", "plunge", "badge", "jungle", "similar", "draft", "lawn", "execute" -- 82d818584283581cca6eb45bf40fceaeff626f3d218958a3203a73d6698f17686ced1c09a101581e581cbba920bdd7b044a80e665088ee459636540b04724cc88c16780f4380001a3162712b: 100000000000 -- 82d818584283581c0c365d26bf6846dfe31db38604710f78e31e50c4ce70bc3f54b2084aa101581e581cbba920bdd7b044a80e665188410dd5229f27b1ffd0f9b91a54b52f0e001a26ec440c: 100000000000 -- 82d818584283581cf1d990a10c6d0daae063d01b4eee15a84e45d82d2d94ad166dba33baa101581e581cbba920bdd7b044a80e66528894d4130fea435e8d552be71e305b1c9c001a5fd1e6be: 100000000000 -- 82d818584283581c56febd458999e5b8023d4acf5e9f907fd9765ced791db0c3a3c34752a101581e581cbba920bdd7b044a80e665388e79b52fb34600b1bda5c14230c01092a001acc44cb4f: 100000000000 -- 82d818584283581cf160881490cc2f42fa15f263d1e525c6cfe0d43b17dd519ab25d5b36a101581e581cbba920bdd7b044a80e6654883a6391e77f7cb8a85e8e4127e8a6f5b7001abf8946dd: 100000000000 -- 82d818584283581cb507fab4ad3dbab7f50936be9ddffb3f0554b6b1bae10b50674a86eca101581e581cbba920bdd7b044a80e6655888d2ad0d3ca986536e3bf6e2bc44ce245001ac6cdbf93: 100000000000 -- 82d818584283581c86444397a1104ca673dffe38774b9b7494cdeb76450c50880d80b048a101581e581cbba920bdd7b044a80e665688dbf10ec015b512c467f19b2fa0f2ced3001a3d2cb1ce: 100000000000 -- 82d818584283581c5aa2850babf1fe67508ecc162826783752ec732e193964264d97b32ea101581e581cbba920bdd7b044a80e6657882eb94dac60d1bf51ec22c9337c98bb61001a4b1b0e6c: 100000000000 -- 82d818584283581c7670c6cca0ed1c8bce22c77bb2cb09ebf130501d92ba4f8df2800fb7a101581e581cbba920bdd7b044a80e66588881808c98abed6cdf7054f637583ea8ef001a15786e7c: 100000000000 -- 82d818584283581cdc50fc8c2a2b6aa6a0f7112fade8eaf4fcd5256f70a55aa2301cc17fa101581e581cbba920bdd7b044a80e665988d447cb84f6091a6df585233c34e4947d001ac29d3896: 100000000000 -# "guide", "penalty", "erupt", "plate", "benefit", "moon", "motion", "sing", "envelope", "range", "midnight", "spell" -- 82d818584283581c7d1588c4b99ef5cbac66b735b5294fb9f2c40db274c22fe7a32a27c9a101581e581cae9abecefef01563f0334fa30ff0fa61544cdc37bc3d75e833900f07001ad33ddddc: 100000000000 -- 82d818584283581c1325a624c6dcf5e2e4ae6a88ddc014de8878867f444fbf2d3c8c4191a101581e581cae9abecefef01563f0334ea343dd89ccadf80c783309b039c1ec7d3a001a1f188c48: 100000000000 -- 82d818584283581c35c4f7e909a673823374a48572592220d107d3f7583ac1e296f56c69a101581e581cae9abecefef01563f0334da377ca183707a53db8aad4ea8a4e49ec6d001acccd21ba: 100000000000 -- 82d818584283581c38521fc8e60bce82a399c838acfb011fd6b3711d6676099161e58494a101581e581cae9abecefef01563f0334ca3abb7a7a160516ef821a025dcdba55aa1001aca694e26: 100000000000 -- 82d818584283581c17d2f55f5301285f0331662d2303d788e8136d8ad313419f06af0b26a101581e581cae9abecefef01563f0334ba3dfa4360cbafd9e38996b602d6902c9d4001a3e81d5be: 100000000000 -- 82d818584283581c2022e95129375c8df560f5f30c1d30060c68c6811a10cf2e3775b790a101581e581cae9abecefef01563f0334aa31392c57613aacf7810379b7ef65e3708001ad42530a7: 100000000000 -- 82d818584283581cafda7dd92ea127e31ad26bfcebbb05c2ea8476c152874047374c1006a101581e581cae9abecefef01563f03349a3477f54e16c5600b98702d6cf83bba53b001a719a77ad: 100000000000 -- 82d818584283581c2e90b9b26a15d834d2c5cc868b647e0f6217787c88dab5e1490c9f5ea101581e581cae9abecefef01563f03348a37b6ce34bc60231f9fecd10211118146f001a5caf3d04: 100000000000 -- 82d818584283581c4a609ef0242f4ab2357450e2b3bb27edc76e5d72b32dc7d41970c620a101581e581cae9abecefef01563f03347a3af5972b61faf613976994b729e7482a2001a14f08d88: 100000000000 -- 82d818584283581ce13f816606659380882caaacb4f5a259b7a53a3f46a975c78b84c46ea101581e581cae9abecefef01563f03346a3e3460121795b9279ed6486c32bd1f0d5001afd79c1ef: 100000000000 -# "bulb", "normal", "curious", "leg", "essence", "chronic", "envelope", "cannon", "comfort", "spare", "private", "uniform" -- 82d818584283581ccc857ee1d7d9764727dd8f7ecabdc1c57c7d2f9a8916a9a6a6362b1aa101581e581c927ebb7f1e29518c061b235d571fe2e99b028e6484c4deb9ef5b935f001a4077e032: 100000000000 -- 82d818584283581c4144cc206299efcddeff87869200771db9314ecea3396924a255e764a101581e581c927ebb7f1e29518c061b225d21736e5d10dd71650a99fc65561dc143001a5a96fc0c: 100000000000 -- 82d818584283581c2ae317500e9a940d0a5e1b6c9d2a6207b994e1113e343a5995026707a101581e581c927ebb7f1e29518c061b215de6c6fad084b75566906d1a12bddeee27001ab17649fd: 100000000000 -- 82d818584283581c37cb78674e16cc5aec896c1edbf93f85e759449b782255d98f99ef6ca101581e581c927ebb7f1e29518c061b205db01a8744f9913967164238be23a01c0c001ab19c2ce1: 100000000000 -- 82d818584283581c40260507eadf40666c3ba744da40661302c45e9c02655a8ca8101878a101581e581c927ebb7f1e29518c061b275d34d0b01bca98fe606c7267095556dcce001a7fccf862: 100000000000 -- 82d818584283581c9aec0ff49ee4bfc694893ef221cc870fbb99f323456d6c5e19db9530a101581e581c927ebb7f1e29518c061b265dfe233d8f3e73e261f24685b5bb170ab3001a094c1abd: 100000000000 -- 82d818584283581c1deadcf1e289a752a0412232cf35bc8ca79802f3e2c7a86b3a20bc2da101581e581c927ebb7f1e29518c061b255dc377c902b34dc662781ba36122d93797001a9d227b49: 100000000000 -- 82d818584283581c3b92e64dc2828b5c15b7b557ca3caaa31bcf24df161e679f288d16dfa101581e581c927ebb7f1e29518c061b245d8dcb55762728aa63feefc00d899a657b001af93bf0f1: 100000000000 -- 82d818584283581caebc674c12afa2686b9f20662056b5d635d6a235d37677a91f24a772a101581e581c927ebb7f1e29518c061b2b5d11817f4df82e6f5d5420f058ba50253e001a442a0d4a: 100000000000 -- 82d818584283581c9d6bfb223c4669ee979302ed697a68a5375340184ded1a53efcb19fea101581e581c927ebb7f1e29518c061b2a5ddbd40bc16c09535edaf40d0521125322001a9a7e6363: 100000000000 -# "tongue", "cabin", "enact", "square", "feature", "prevent", "journey", "pigeon", "valid", "unable", "drum", "opera" -- 82d818584283581ca3fa84fd7ede605e94c31c1226789ccae588458a1e0c136894f45241a101581e581c2928cacb667620a8e40bd2545c9c8a69d379c10e6c19b48c4092a4ea001a1325ae7d: 100000000000 -- 82d818584283581cb6813ab4333d22009f9a19e0baabe142bd0281376c5ac54084fafbc2a101581e581c2928cacb667620a8e40bd3542c5dafda24e04534fbac6f0efb439298001a87ae7e96: 100000000000 -- 82d818584283581c49de85901e59716517d60e630fcbac14d5e33d46ff45e5ab16bc6036a101581e581c2928cacb667620a8e40bd054c11a418730adb8c34df23c89cb2ec98e001ac0fd8720: 100000000000 -- 82d818584283581c799195d0b1408365a7c216184578e653afbe6aff4ad8d913ce3e3f19a101581e581c2928cacb667620a8e40bd1548cdb65f881133de9dc85f80a86e0b63c001acb868ef3: 100000000000 -- 82d818584283581c8e0aebcedd259ca6d641049d25bed88871b905970cdb052fa3bb12fca101581e581c2928cacb667620a8e40bd654979f1d2e1913d3a4a867a2932a595ba2001a23033bf4: 100000000000 -- 82d818584283581c24501d8e4f05c3441e3c9ff7bae57ac62681b04d5eba80e566abab8fa101581e581c2928cacb667620a8e40bd7546260429f6a7957ca37fb5d15e50a4950001a395556d6: 100000000000 -- 82d818584283581c9a7b98bf308472a8a8257331401687070d1bb1c15741c8879ae6d7afa101581e581c2928cacb667620a8e40bd454f71dd44b7646ca598a402b90b5f57f46001a214cd0c7: 100000000000 -- 82d818584283581c8c300e7295c9e602a1b3d67782e8c91cc05b9909d7c465115f931a62a101581e581c2928cacb667620a8e40bd554c7def8bcc7ac4e7f19d4e61170a76df4001a9de076fe: 100000000000 -- 82d818584283581c75eaf43f870bcc6b027b6ed523793cc3a1978a7ec37c1bff4e57f7cca101581e581c2928cacb667620a8e40bda54cda2b0f25eace43ae5b5909a1420125a001a0ae0e43b: 100000000000 -- 82d818584283581c1cec7d891119385095a041cf542d53dd4e34f51922da445b220816dba101581e581c2928cacb667620a8e40bdb549d63d563b012696074494c1ccfd1ff07001a84875328: 100000000000 -# "assist", "pact", "vessel", "spot", "fine", "fine", "crouch", "body", "gown", "allow", "hair", "universe" -- 82d818584283581c7501bc7dcc83727d845822eff268948e4fe3a9db4a26bb57acd34fd3a101581e581c9057be1ea9f5de8c662d8c42db442c3d0162dd0747e0cbc2062c3297001a28302c62: 100000000000 -- 82d818584283581c73c21177ca71e3795de5b22c4f9f0745f6f080600df716a7b6db165ca101581e581c9057be1ea9f5de8c662d8d42252be352807d9cb1c2b6597af509d938001a8a96a851: 100000000000 -- 82d818584283581cdd902d2731f45ffa89225a9069ccc8b3c202a0566a9091835f72b196a101581e581c9057be1ea9f5de8c662d8e426f119a68ff985b5b3e8de731e4e77fda001aedab1069: 100000000000 -- 82d818584283581c8212fe5bc13b04ccf12069ddc3c52be78c2fedf6b9c55f27be30bd87a101581e581c9057be1ea9f5de8c662d8f42b4f7507e7eb41a05ba6375e9d2c5267c001a505c230d: 100000000000 -- 82d818584283581c8af545bd1a0dd5f84460963f261a00123f70ea6dd061cee9c13a0206a101581e581c9057be1ea9f5de8c662d8842bdab50e604f4e060588694e44bb49610001aee1df1ac: 100000000000 -- 82d818584283581c78d84c2ce58447bce090e6e0a117172a7860691726d108bf428558f4a101581e581c9057be1ea9f5de8c662d8942029207fc830fa00ad45c229c3a923db2001ab2bc5324: 100000000000 -- 82d818584283581cca949cb2008b11b37ae78fd3bed27abd2fb7bb486e96b0ccdd1b2753a101581e581c9057be1ea9f5de8c662d8a424c78be11032b5fb44f33b0532970e453001a1f37b932: 100000000000 -- 82d818584283581c5b868efd5f0797784574c0622d24954871365ee8d17610c239b6cc07a101581e581c9057be1ea9f5de8c662d8b42965e752782461e5ecb093e0b184e8bf5001a6cc5836a: 100000000000 -- 82d818584283581c2738cc8da8ab2c84db9d494a13876d3a49e62bd002d28c60a5a79bb6a101581e581c9057be1ea9f5de8c662d84429a12758f0886e4b9692c5d06913cfb89001a17156cf2: 100000000000 -- 82d818584283581c71eb36d0cc21a37db23ffb9222a85f2231ebd4433145a1e6263c4ca4a101581e581c9057be1ea9f5de8c662d8542e4f82ba587a1a363e502ebbd7f1aa22b001a2b9b1a04: 100000000000 -# "tape", "glue", "rate", "squirrel", "jeans", "canoe", "bicycle", "sausage", "lunar", "pair", "fit", "ice" -- 82d818584283581c329f9bcde7ba13dff200632dd615ea171d12d9d26c3efeb76688eee3a101581e581c2dbed4bae37523e93f82f60ce6d0276b40d6640fa36da7c73b9a6175001a3b9ae7e1: 100000000000 -- 82d818584283581cb94143c1557e14b2c832bcd38d6311fff2119cd1b117531a44b3310ba101581e581c2dbed4bae37523e93f82f70c82c6e3af522594fec9d6d89287d41d23001aa03c2afa: 100000000000 -- 82d818584283581c042fbe208c895a6c2c1edeeed86d60e8f0acef2c39c1b8a3a53fac4da101581e581c2dbed4bae37523e93f82f40cb3e5afe11b380631559b4431a425e919001a626afa2a: 100000000000 -- 82d818584283581c0ac083c98f0dc848e9d9d499bf5ad19dbf19719ab9ca245cc8a3eea5a101581e581c2dbed4bae37523e93f82f50c4fdb6b262e8735207c0476fcef5fa5c7001a6a39f329: 100000000000 -- 82d818584283581c5e595a49b54dd33d8c4090d3337e0736c1f00e48f12e5aab019d01b6a101581e581c2dbed4bae37523e93f82f20c85fa3758f799a75207c9e19a0cb170be001a5e710914: 100000000000 -- 82d818584283581cf2c5775d1be5afc71128b54046c245cb289cfb10e95ec74765bcb14da101581e581c2dbed4bae37523e93f82f30c1cf0f39c09e9d6412e32136658eb2c6c001a60d5a3a3: 100000000000 -- 82d818584283581cee80a93760b486afaae4c298828d1968cc26405f8a88b80b272b19e3a101581e581c2dbed4bae37523e93f82f00c520fc0ced2fb4874b9f67e04753cf862001a86812669: 100000000000 -- 82d818584283581c35d3d7777e03ca4da9a3806ce934e4f6bac3a527aa89d4599c4f4a09a101581e581c2dbed4bae37523e93f82f10ce9047c13e54a7863e05fb0cfc076b410001a7a433a3f: 100000000000 -- 82d818584283581c1a2cba3a0c74ec72d71ad9c21c936d5a09a659be906102479495ceefa101581e581c2dbed4bae37523e93f82fe0cb27d0791d24edf88dab632219a6c43e3001a4ea7489d: 100000000000 -- 82d818584283581cf9fd61b6d460536682e9a0492fd32386d9ddae2b9390b006ff2198b9a101581e581c2dbed4bae37523e93f82ff0c4973c3d5e49d0e78012064ece5a6ff90001a4900e9a4: 100000000000 -# "chronic", "soda", "history", "famous", "owner", "print", "student", "wool", "pulse", "sound", "melt", "gate" -- 82d818584283581c24a98ea2d08bcbab2f8905ee1a3a48530c1c95f9bde8a6392610f629a101581e581c13c94b3124882cdf3d96fa81882b4bf43ba244213906eede8c7d5793001aa366f2bb: 100000000000 -- 82d818584283581ced4545a69b0d56ffcd0c6b74c167f61f49cef2d5e6d6752b996bc91ea101581e581c13c94b3124882cdf3d96fb819d4566797b9bd80ecc9d8cc5f85ee792001a425ea7a1: 100000000000 -- 82d818584283581c80ec83598d05bdb9e4eb1ad5f0953886a686aba22d745b20bd40187aa101581e581c13c94b3124882cdf3d96f88168f714eabcaf1c4613d7b011b5ba3794001aacc4d821: 100000000000 -- 82d818584283581c9400d051e83275b0f5452467233cb8f9ed50dbf9628619f3fb936c92a101581e581c13c94b3124882cdf3d96f9817811306ffca8b033a66e4ff8209cc793001abf1664b7: 100000000000 -- 82d818584283581c7c41f909c3afd5425cc211da70c5888f3a541295f95c6368c219b387a101581e581c13c94b3124882cdf3d96fe81cd93b7083a8794d7846468793c039791001ad64f57dd: 100000000000 -- 82d818584283581cbe1d7f8a5cd0785872eb05cc1e7473365a4f2d80af23fb9c1c02b944a101581e581c13c94b3124882cdf3d96ff81e2add28d798028c517fc0660a8e42691001afcee002a: 100000000000 -- 82d818584283581c378ffe41f48ac3e4922adb221ca2deafb12119902926168829067954a101581e581c13c94b3124882cdf3d96fc81ad5f81feba946cfc5e352bac64407792001a51bfecda: 100000000000 -- 82d818584283581cf5ba653da52f9a6d2f6dde4bad0946aad7eed0c8d830a9d8a6bb2edca101581e581c13c94b3124882cdf3d96fd81bd799c83fa8d00eaf1ccc992d0210792001a18a9d55e: 100000000000 -- 82d818584283581c5d2672cb3e1660e0452c6bce6d7b3ce5f8ffdb6216a889d80f3444c3a101581e581c13c94b3124882cdf3d96f281fe5a72cb3fd8a4b4a149f9a92d72d896001a1469c18a: 100000000000 -- 82d818584283581c5d5c61224acd27c88002f10697c7ea7d5e3ae893bf622fa95c7db2c4a101581e581c13c94b3124882cdf3d96f38113758d507fd138a234e1979099536896001a0dfa2dd2: 100000000000 -# "exist", "arrest", "north", "tunnel", "height", "style", "announce", "real", "uncover", "sphere", "sorry", "sudden" -- 82d818584283581c6dc5a973c9d0b421d54d67cf757c6345e62006def4b2a1ce647fd465a101581e581cf530b16e66cee593163eb1488c65084b422b418c75c6b4ac8cac907b001a540bb208: 100000000000 -- 82d818584283581cbda953078dcd53d9f8159b4a4e49a822bad1ac7fb22309ab202103d1a101581e581cf530b16e66cee593163eb04866875ed5fbda9c42ea4d208e38947098001a744e8834: 100000000000 -- 82d818584283581c2478b0d0f2794e2f486b1e9f2fe9c3bc1b4e3d92eb32d6eebb7bc352a101581e581cf530b16e66cee593163eb348d3215c36cfcb891f8cb7dde934ddd041001a30792c17: 100000000000 -- 82d818584283581c69ded22417b7d794afce4f1276bbbb6b1274949951b4c543da5809c5a101581e581cf530b16e66cee593163eb248ad43b2c0887be5d5003f49cbe0c4b05e001a271ba3e9: 100000000000 -- 82d818584283581c3d22d34df56834cf2a4c934d7ab3c0be75e1323bcd75911af0058ac3a101581e581cf530b16e66cee593163eb5481adeaf215c6cd2b2a2a80627dd0d1108001a873e552b: 100000000000 -- 82d818584283581ce6c11fbd59a687bc35c0aaa1c907e0fe6fffde32277297eca568518fa101581e581cf530b16e66cee593163eb448f4ff05ac151c2e691730720889f5f024001a79885aab: 100000000000 -- 82d818584283581c132bd82636faac6cd7aa1ba60923f81c43e4d9639913473a21ec4cf8a101581e581cf530b16e66cee593163eb748619a030de90c1b46b9992f64853e51ce001a63f70463: 100000000000 -- 82d818584283581c2d007f0e688ecfbd3a0fb3a982ac1d414ff766fa060fbf72fd871684a101581e581cf530b16e66cee593163eb6483bbc5997a2bc76fc2d219b45312631eb001af08abc4b: 100000000000 -- 82d818584283581c60d966940f909f28b5965c14727fb1a0b06668866e6a57e162d996e5a101581e581cf530b16e66cee593163eb948a85657f875ad63d9cf8a58a12d6f9194001a54f33e56: 100000000000 -- 82d818584283581c2cad5b48e0e14072e0831985b8ca69cf6bee079dc27b1afb2f970903a101581e581cf530b16e66cee593163eb8488278ad822f5dbf8f4412c482d95671b1001a97600bdc: 100000000000 -# "celery", "slim", "stone", "hand", "inmate", "enrich", "stem", "ice", "glass", "fault", "pig", "island" -- 82d818584283581cbf1fd28087398ad6552132b544d68bb043c760e3a17b2a608cab9bc3a101581e581ce05e68545e706f0ffd61a28e77cd06b7b89f0a63edc8f13227468657001aa4d0f0db: 100000000000 -- 82d818584283581c1eafc4c342afe8a79886d87545de8ed40501f6996bc029fb9d2cf34ba101581e581ce05e68545e706f0ffd61a38eb1cf7a9c7c315d6d7853628364a5301a001a25aeb5a4: 100000000000 -- 82d818584283581c5bec7bf660919d595f80b52e94742bd0184f9764ee95f642a34769dda101581e581ce05e68545e706f0ffd61a08e0dc91eec307c654ed7b31092ac8731d2001a0631678c: 100000000000 -- 82d818584283581c70971ed0e14bbd9a4775df0e665d836da7d06e35562480eb5d305a42a101581e581ce05e68545e706f0ffd61a18e42cb92d1f40db858623e81e2e9e6db94001a44d66c86: 100000000000 -- 82d818584283581c99b5afc56f7753fa798d39edd61ff42155114f0351fbe16eea7d4deba101581e581ce05e68545e706f0ffd61a68e55d6d64cc8e6548c19f3b3741cc32f62001a5a1053e0: 100000000000 -- 82d818584283581cb22e8aee32de0d576f49b3513147b997741acbcd9a4144d811681d75a101581e581ce05e68545e706f0ffd61a78e8fd84a328c78a796a47d24c55922da24001a9d7a5c60: 100000000000 -- 82d818584283581c74c76312174c0aba4f553aabaccbfb584450508f0ff14122abe25b15a101581e581ce05e68545e706f0ffd61a48ee6d1ee8140c3af7703ded2d3a104dbdc001a0df09525: 100000000000 -- 82d818584283581c4f07769dc9530305afb2f0224c692f8258f42ffd5ba801fc127837d5a101581e581ce05e68545e706f0ffd61a58e20d46267045502828e684324df63859f001a81f90e92: 100000000000 -- 82d818584283581c6b2a8b52419fc3d4132d6860357eeba2f9e4b041b9d48e090b633033a101581e581ce05e68545e706f0ffd61aa8e33dfa6e2d72d9fb5451d76b61140d96c001a2f00072f: 100000000000 -- 82d818584283581cd05d1565cfb55ec5246f1d4f1d40b4fa489402ca8bc7dbe551f66349a101581e581ce05e68545e706f0ffd61ab8e68e11ac89bbff1bfd0a7e6064f9f832f001a0ba59ddc: 100000000000 -# "ancient", "update", "number", "oil", "degree", "virtual", "stairs", "reunion", "question", "toilet", "disagree", "deliver" -- 82d818584283581c625c64de363637f1eedf89c1024c1779e7939aa51114aa470107d4c7a101581e581c7b86282b9047c244b7a6c79f629701c1a1437895375eb05f03471b51001a1dc7e9cd: 100000000000 -- 82d818584283581cf6235001045fe5f36f34cb0320f5e10757bce65371e121cbd380aa8aa101581e581c7b86282b9047c244b7a6c69f53a86bd1eacc029e4e37acfb4d42b585001addafcf9c: 100000000000 -- 82d818584283581c4684fafa65cc45d7e3bd5b7387793304755933957d6765e849276c28a101581e581c7b86282b9047c244b7a6c59f49b9d5e133568da66510a897983d4fba001afb3501f3: 100000000000 -- 82d818584283581c583166a2b280516ad91264a5d2d9da85c511fc0b6a41a3b700542e90a101581e581c7b86282b9047c244b7a6c49f3aca3ff27cdf17af7ce9a333e338e9ee001afdc3afa9: 100000000000 -- 82d818584283581c09a02a719d8911948594c5e11ef64d08aa9fdf8f22fa863cd78d4584a101581e581c7b86282b9047c244b7a6c39f2bdba902c668a2b793c29fcf2d348323001a88717b59: 100000000000 -- 82d818584283581c9bd9b509334c443572f3d09daa6d68f924550d4c2869f033ba0b20c7a101581e581c7b86282b9047c244b7a6c29f21ec13130ff22cc0aa9b9b6b782f1d58001adf7be1af: 100000000000 -- 82d818584283581c8bd7026c8f3f8df18e2fb9444ca29f2b5d4cee69a4c5f31657982bf3a101581e581c7b86282b9047c244b7a6c19f12fd7d23587bb7c8c1749707c32ab78c001a563c7cc0: 100000000000 -- 82d818584283581cb7701011df0580469fbf0b210277e05ec4bfb4204360b37e932831e2a101581e581c7b86282b9047c244b7a6c09f030ee833a10442d1d84d93a30d2651c1001a0652451a: 100000000000 -- 82d818584283581c7546903740747139136c25c26637e5425636b4a76e2773c40ca61003a101581e581c7b86282b9047c244b7a6cf9fd00fb13d59f923517f95d17fae6c4bac001a983aeff8: 100000000000 -- 82d818584283581c32d2144c7d32c5683a61a57e593053c9bdbc3fd5f275fb18af392f27a101581e581c7b86282b9047c244b7a6ce9fc1201b4ea282ae59966ecd1bf967e5e0001a6035068a: 100000000000 -# "surge", "inherit", "gown", "witness", "true", "fame", "couch", "artwork", "orchard", "tunnel", "toss", "mom" -- 82d818584283581ce7b8e350b0775c9fb868443cf2f2b59f6ad05b38fcae3da699155800a101581e581c4ee15cc46f9911091a70dbfe08e5f7220ae0d8c2dafb59d640b112fa001a11365151: 100000000000 -- 82d818584283581ce6de22054715adbb04f06c0ed9fef88c6c0ebdf99d4bdb971af8c6dda101581e581c4ee15cc46f9911091a70dafe01c9b9b50bc425344f59db1fa24e1a1e001af28df4c1: 100000000000 -- 82d818584283581c6f54c0cd6d218f16abbc949dedf91dcdc6072bc4f3e5bd1337be9beea101581e581c4ee15cc46f9911091a70d9feffac7b480da872a5c3b65c6903ec2142001a61ff9ce5: 100000000000 -- 82d818584283581cb99c4c3ccd6c0ccb0d8febf15dbff59a18beaaa034a5f5b8e6e0aff9a101581e581c4ee15cc46f9911091a70d8fefd903ddb0e8cbf163814deb264892966001afdd65abe: 100000000000 -- 82d818584283581c16314a49952f6b7d4730ee34bc98ad195f023504cc8a515198c1c3f0a101581e581c4ee15cc46f9911091a70dffe1055f0d70350a5fd088654b0bb3bf469001afc2a9264: 100000000000 -- 82d818584283581ca17dca65dc4b463f0a6d50edb49f5e71adc2f9ddd1293f93dc3f1822a101581e581c4ee15cc46f9911091a70defe0e39b26a0534f26e7de3d5f91cd9fb8d001a0cd7e183: 100000000000 -- 82d818584283581c98caa11fa911dfceb3701fe0619f5e8cdcb2484d6b5ce5093bc223d1a101581e581c4ee15cc46f9911091a70ddfe0c1d74fd06183fe0f14057437e7603b2001a534a81ab: 100000000000 -- 82d818584283581c61ed9410d64826266e0de3556666c8835cb7e9d4d416cbe0973ceeb1a101581e581c4ee15cc46f9911091a70dcfe0a01369008fc8b51669ed88cdf130bd6001adf084ce0: 100000000000 -- 82d818584283581c0f788520e942bfba1d1c03f36a1a349d886e1e7c0deafeb3b91473bfa101581e581c4ee15cc46f9911091a70d3feee0407b91600404d7ee764224b9c4f1a001a38e4172e: 100000000000 -- 82d818584283581c048286c6b0d42aa1321208c995a5ef20e73b280a9d688fbd20107060a101581e581c4ee15cc46f9911091a70d2feece8c84b18e48cbef244e66bac39573e001a9558b22c: 100000000000 -# "oblige", "room", "table", "auto", "build", "very", "street", "margin", "faculty", "purpose", "shoe", "prison" -- 82d818584283581cf09a658fe24e9422d7a8976053b01e14d684c8447da72bd48812d778a101581e581c328d0c0fb117489583f00524c6857d81829cb82a3bff8396ed08a2aa001af1cf1a18: 100000000000 -- 82d818584283581c2cf482dbcbe6027c19eea2f14b6dd03af59991092964d678c9785e8da101581e581c328d0c0fb117489583f00424132e4324db4d7f557ab8a516e8d077ae001af2244209: 100000000000 -- 82d818584283581c51dee8a631ab1cc6201a3fc2fbb012180838df85b823b474b4f60d8ca101581e581c328d0c0fb117489583f007243135f23bd1392bd5bc8c4096f878f6a2001a39dbe294: 100000000000 -- 82d818584283581c10ec9792aa872001763d0890d5aacbf9fc19b35c3c3e08fcd9c23ac7a101581e581c328d0c0fb117489583f006247eddb7de29ebf1fffb456216f340cca6001a12836d45: 100000000000 -- 82d818584283581ccaa9dc2be57469ee674c3d2c52ac73a04fa6e36cbac50e750682375fa101581e581c328d0c0fb117489583f00124f026940ce561d3d537e40a97d728f9b9001a76af1d6a: 100000000000 -- 82d818584283581cc62e830cddefaeef50d8af469c82920a7f3f75903c7a348fffd2efdba101581e581c328d0c0fb117489583f000243dcf59af3d139a00779d2c17d2f0cebd001a3716a8d9: 100000000000 -- 82d818584283581cd911ea49e66f82b43c8369d0b162b7be690d4cd19dd8a374470c4a5aa101581e581c328d0c0fb117489583f003245bd608c733ff4580b971c796e2984db2001a78a71de4: 100000000000 -- 82d818584283581c697bc94dd5d67cc5193dbe3337884445c5404fb553f9d10025cff510a101581e581c328d0c0fb117489583f00224a87ece698cb00cabf82ae916dd6023b6001aac17083c: 100000000000 -- 82d818584283581cd1b24d9aa6381720811db9aa117953a5bb4e15ebecc524d47d143bf0a101581e581c328d0c0fb117489583f00d247243506bbd1183d44135769519c9f38b001a3a446870: 100000000000 -- 82d818584283581c7b0c82b5eea7309ef9da3d51525f0fd517cb035c00f907658a369874a101581e581c328d0c0fb117489583f00c24bfeb150e16c349ff80ee97151491c98f001a1747ff18: 100000000000 -# "theory", "afraid", "tell", "depth", "issue", "cover", "pass", "vacant", "poet", "fury", "fortune", "cruise" -- 82d818584283581ccf7139a26d64813a90400619a6bfa898d019f9fdbb9370111df12837a101581e581cf2df7a89f00010839af30f1d2221f4c42e160ca06ebb3d41c48ec856001a6297bdfd: 100000000000 -- 82d818584283581ca034b9942103818b2b510ec3b518db48509c7364c48fc1e9b0157b3ba101581e581cf2df7a89f00010839af30e1d24736a6ea8ea1c13ef842575aed92c7d001a7b249dff: 100000000000 -- 82d818584283581cecb4963a153b4db34451b1faa69e41900ee79b02c5d53c5853c516f2a101581e581cf2df7a89f00010839af30d1d26c5e01722bf2d866f4e0da9982491a3001a6275c463: 100000000000 -- 82d818584283581cdf80615434644978f016f6e533dd57593146d453be5d182898cec785a101581e581cf2df7a89f00010839af30c1d281757c19b933ef9ef17f5dc826ff5c9001a2d3cf6d9: 100000000000 -- 82d818584283581c4dea4e9ca82b0885a79488a70a58cc7f3bc73fac32813741c9ba36b2a101581e581cf2df7a89f00010839af30b1d2a69cd6a15684f6c70e1dc106dba59f0001aa9be43ad: 100000000000 -- 82d818584283581cf43b22205783dca75c6068d4574a4308435f4e7038e559a2cc2492f8a101581e581cf2df7a89f00010839af30a1d27bb43148f3c60dff0aac4445705be16001ab52aa7fc: 100000000000 -- 82d818584283581c53baff5246eede32786f00202f741019c0954fc8b9561d39065c004fa101581e581cf2df7a89f00010839af3091d290dbabd081171527174ac784150223d001a661712e5: 100000000000 -- 82d818584283581c775ced802a642815609890065e52cd23adcd7352cb956d6a8ac64c9ba101581e581cf2df7a89f00010839af3081d2b5f306782e581c5f13d94ac2b9b8663001af53b2ef7: 100000000000 -- 82d818584283581c06415e916caa09184a10d02ca65c04531c4c4ab537ee8af00cae8883a101581e581cf2df7a89f00010839af3071d2db1a610fcb9923872077ce015e6ea89001a3a0d5bcf: 100000000000 -- 82d818584283581c3eaebcdf6228833ab1e222863b02a61023240ede61adc9003132bae0a101581e581cf2df7a89f00010839af3061d2a031dba758ea3abf2d0631400314fb0001a457046f5: 100000000000 -# "clay", "mix", "capable", "student", "scissors", "ugly", "prefer", "change", "adjust", "push", "cake", "harsh" -- 82d818584283581cd0227952622190b98c89a2b1eb5f81144354c91f679b3f08e1e03fdca101581e581c80acbe9ab817afab378e2093719f75f3ddc5bb07ac9977158723e069001a594faa2c: 100000000000 -- 82d818584283581cea0564de04abec0c7a11447041478df1f074c3e57d5f974bb12bbb5fa101581e581c80acbe9ab817afab378e219322f9a9497463236e0bcaf3228e590a67001a1ad28332: 100000000000 -- 82d818584283581c1fbe93fb44aa382b1e8de08d5186ddad91cc22a563ea3957fe14bacba101581e581c80acbe9ab817afab378e2293d352de9f0a018bd46afa6f30958f3464001a717110a8: 100000000000 -- 82d818584283581cc7a7ef370e38812b1076006ef1904819d0ceb716d2889469d8a1dcc2a101581e581c80acbe9ab817afab378e239384ac12f6a09ef23aca2aec3d9cc55e61001a6bb480aa: 100000000000 -- 82d818584283581c26240e55e7a78cbf918ad19fa6ee8d27f16856abe9f0976a4308f49fa101581e581c80acbe9ab817afab378e24933a06474c373c5aa1295b684ba3fb885e001afe968f42: 100000000000 -- 82d818584283581c8d84bf70f58d60294549dd4c414cc23bf26983d0db148c288e931f71a101581e581c80acbe9ab817afab378e2593eb5f7ba2cdd9c107898be458aa31b35b001ab4e15364: 100000000000 -- 82d818584283581c39a7500674d52d764f976dc16bd65d68328e0c8a00a71e9f5b2adba9a101581e581c80acbe9ab817afab378e26939cb9aff86377296ee8bb6066b167dd58001aa353bc47: 100000000000 -- 82d818584283581c9524c36ff2f13445f9a6168290b027fb51805430dc956a28c8a5ceeaa101581e581c80acbe9ab817afab378e27934d13e44efa1491d447ecdc73b89d0756001abb682f07: 100000000000 -- 82d818584283581c36f8db14c53e1dd75251212915e85a9c702c6254eda979f8e363a4fba101581e581c80acbe9ab817afab378e2893036d18a590b2f83aa71c5981bfd33153001a28d3da73: 100000000000 -- 82d818584283581c2759c88a3740d07794c04c0d0af6f80a9af3b8b0849e36f9ca221e22a101581e581c80acbe9ab817afab378e2993b4c64cfb265060a1064dd58ec6095c50001aed40b8c0: 100000000000 -# "shift", "sunny", "brick", "supreme", "tank", "duck", "garment", "feature", "cloud", "canyon", "harbor", "nut" -- 82d818584283581c1de2b78c35a3c8efa1d035bf03aaeb98385a5a04ffcecf4ef2ccf6c1a101581e581c480e1228a9ee96cd9941b6058fdb583e080010ecad64ecc5dcd1e280001aed4ce611: 100000000000 -- 82d818584283581c1101e60ed9e8f1a5eb5bc914b2e9c5a149bced946c991012686e4741a101581e581c480e1228a9ee96cd9941b70543c412d15b8cbbc3828441c5b7afb141001a4c728cbe: 100000000000 -- 82d818584283581c83d515198c230cd0e8e87d4c812fed1bd9af061815399ce9568dce56a101581e581c480e1228a9ee96cd9941b4052c0ae51861e7b83c042542c7261645ff001a0bb4e40f: 100000000000 -- 82d818584283581c1df873d65bf0b179eb079a39bdfc4a9801a3cebc240e025c2714257ba101581e581c480e1228a9ee96cd9941b505dbf29eabb4736414d94497c601f413c0001a49f7588c: 100000000000 -- 82d818584283581c763edc8e9acd8f61737bdd12a4d55f7b2742548374aec71b6a776684a101581e581c480e1228a9ee96cd9941b205c43871f3b9ce618d5ae597c8705aa77d001a984a1fdf: 100000000000 -- 82d818584283581c01c423b1c80166fab8400cbaa11085400f00fd72433ba8bab35ddfe8a101581e581c480e1228a9ee96cd9941b30578212b860d5b0d652f05edc74b38763e001a52730657: 100000000000 -- 82d818584283581cf6fd1a422a8a17da21b069193e59070890a8f7816abde856645f4192a101581e581c480e1228a9ee96cd9941b0056167fdcd12b60adeb0a5edc9ba9e09fc001aa752f20f: 100000000000 -- 82d818584283581c0f8400be64940983eade0f50f2c012ee25abcb370fc72ba89b71e6aba101581e581c480e1228a9ee96cd9941b1051050b7606642b6b585c542c9957cd8bc001aad6d66b9: 100000000000 -- 82d818584283581ce2ac66ecc6f6cae4cd40e917f6240f22d586e646830cb57af6e7b0c5a101581e581c480e1228a9ee96cd9941be05202128d4a4626ca9546395c0b4c05987001a8b1df3b6: 100000000000 -- 82d818584283581cad7f6cf623884e95c9fbae8c1342d364effff643cb575a92ab29aa2ba101581e581c480e1228a9ee96cd9941bf05d409e266f8ee17812983eabf8f9e2848001a479c2e63: 100000000000 -# "delay", "exhibit", "social", "wood", "plate", "donate", "differ", "knock", "dignity", "sport", "cost", "visual" -- 82d818584283581c146fea3af0ef0bd1b910805813f69f02f83467ad4404d5d9702cf588a101581e581c3892873b3a17dc3a76301b3c325904eaa039ac629d19b12eadd7e535001ab0423202: 100000000000 -- 82d818584283581ca5c3b16c09870c3ff6d33ce96932334d33aea584e5039cdc8ad7e94fa101581e581c3892873b3a17dc3a76301a3c0f47c2a1abe88cfccc19eedc2871c7a6001ad3c4fb8f: 100000000000 -- 82d818584283581c8bc8c6f435a7b0115b57213ac76e1f32dad652927f54f86282995c39a101581e581c3892873b3a17dc3a7630193cec348059b6976d96fc192b8ba40aa917001af67b20e9: 100000000000 -- 82d818584283581cbc223237008397931e611e9e589fc94d7c1ef1c13292dc6e36aab591a101581e581c3892873b3a17dc3a7630183cc9223e11c1464e302c1a683920a48a88001afa020204: 100000000000 -- 82d818584283581c31dfe409417e1bd1f895fee9d287fc03b6b93ec3335f3bc46f236386a101581e581c3892873b3a17dc3a76301f3cb9a10c0b767d29fbde18bd75be715f72001ad13287e6: 100000000000 -- 82d818584283581c3794d77c424ab0fe84d2e73ea39d846201f438fa62e28ddc0a4d245ea101581e581c3892873b3a17dc3a76301e3c968fcac2802c0a950e19fa233a0b41e3001a3ef65f04: 100000000000 -- 82d818584283581cdbba0814d51049a0986b881ced087f45703e734254e8de1ebac0a92ea101581e581c3892873b3a17dc3a76301d3c737d887a8bdbea2e3e1937d2b5a42254001ad9a452ba: 100000000000 -- 82d818584283581ceca714f1bb909eb5cd399e4071c8add9d4f924933440355092b065d1a101581e581c3892873b3a17dc3a76301c3c556b4632968acbc86d197480313e04c5001ad5dd0b66: 100000000000 -- 82d818584283581c011f55df8039010607e8f8a811e3cb180b72be2d6ddc918378464875a101581e581c3892873b3a17dc3a7630133c1fc8f3a7f6b1b1311a1b99a08aa3f2bc001a69ab9bc9: 100000000000 -- 82d818584283581ca2b56367dac1e03584d2ce4a92e91846c77b2bf943a80d4c4e889bd4a101581e581c3892873b3a17dc3a7630123cfcb5b15f016192cb491bd64e063dd42d001af7c5955c: 100000000000 -# "banner", "expand", "fringe", "kiss", "laugh", "muffin", "maximum", "program", "hurdle", "gorilla", "spray", "prepare" -- 82d818584283581c535ecadd0698cd85a3d45cd7f2bc399cfc6359325945daf05fec20cba101581e581cb4704ba590f7e77797215fad9950ee9993ec34e45cd4efcab773a6d2001a057feff8: 100000000000 -- 82d818584283581c7b24c22d71f6bfb2bfb931a1afe66887fc039763d178b07f394eeabfa101581e581cb4704ba590f7e77797215ead854cf0c1a2d7bb642c714f7fa9414a59001a33fb89ce: 100000000000 -- 82d818584283581cb842a4883e91007cc18d622dbab61ef65ec54fb080e07aa85a98a40ba101581e581cb4704ba590f7e77797215dad7648f2e9b1c242e5fb0daf339b0feedf001a0e1f4bf0: 100000000000 -- 82d818584283581cc39159f238d4c9885c0d435228bec1f69ed8344fa0343a53f45e9a62a101581e581cb4704ba590f7e77797215cad6244f411c1adc965cbaa0ee88cdd9166001a6427de8d: 100000000000 -- 82d818584283581c06eed720a4965b07e07a0d40e2f46b0028eb3f563f6f2cb5b7dee330a101581e581cb4704ba590f7e77797215bad5340f639d09850e69a476e9c7eab35ed001a9e89c9ff: 100000000000 -- 82d818584283581c58c795a99eae0168cb0dfe05cac982e0b9f3ec4a635e961a747c473ca101581e581cb4704ba590f7e77797215aad443cf861df83d7666ae4cd507079d973001a07007daf: 100000000000 -- 82d818584283581c9d54261809e20f836cba45e74906fee7a4e740da00a4b91b803d177ea101581e581cb4704ba590f7e777972159ad3038fa89ee6e5ee739812d0562477dfa001a956f1b2b: 100000000000 -- 82d818584283581c4ba7073e0e4ce0f4a6ca1128e27a98b11c7ac7cbfa52bb41c39c5c39a101581e581cb4704ba590f7e777972158ad2134fcb1fd59e567091e8db953152181001a7396df57: 100000000000 -- 82d818584283581c9ac4a743b74fee0ffda5e97578bd8facf6e4273988c2629721c7e80da101581e581cb4704ba590f7e777972157ad1230fed90c456ce8d8baec6d45e3c407001aa8f3e2b3: 100000000000 -- 82d818584283581c401eef031a41e0cd9d21c24e6f470fe7e2b5f0b47883f8b1027b0b9ea101581e581cb4704ba590f7e777972156adfe2b00021c30f368a8574c2237b1688e001a3de3b3ad: 100000000000 -# "together", "sorry", "amazing", "loyal", "civil", "rely", "success", "range", "adult", "truly", "trade", "tip" -- 82d818584283581ca6d72a901db6e74d7b73311394047125a6ef7cf58806ddbcff6d95eea101581e581ced00712eb20460a8050a96245fae7d19010cb515fc9ee46469358350001a480227d5: 100000000000 -- 82d818584283581ceda06780f377bdf393c6d05a4383f67ca0e40756fe3b09c9cbe6907da101581e581ced00712eb20460a8050a9724f88ed9e51fe041de951d8147bd87d9ec001a8e5718af: 100000000000 -- 82d818584283581cb43cfb5f45d60516722b24f988cc0f66a838a6bcc860bef19931d4cda101581e581ced00712eb20460a8050a942423edc580c3639b84c8a1ab9fc190d617001a80b2bc88: 100000000000 -- 82d818584283581c1319b101e07fccffee3eb713c15b9fd01a09d684b7ed1979c09b6b0ba101581e581ced00712eb20460a8050a9524c1cd214de237284d6220488215e32cb4001a04885bca: 100000000000 -- 82d818584283581c2f2f034a0eddc4dd628af1bebe1e5e7d013f651e3cfa50b2b51096c1a101581e581ced00712eb20460a8050a9224ec2b0ee885bb81f394a472da19ec29df001af9a7a1f0: 100000000000 -- 82d818584283581c32a8ed1da028bd9c15f8024dc963c71b4f0e611efe7cdf918a38ff0ea101581e581ced00712eb20460a8050a93248a0c6ab4a48f0ebc2e230fbd6d3e807b001a9237ea44: 100000000000 -- 82d818584283581c56b8a67bd58c4f882381c4eaffb0679016b60cebea831403913f128fa101581e581ced00712eb20460a8050a9024b56a564f4813686261a7391572477da6001af52f6022: 100000000000 -- 82d818584283581cc240fbe91d881a026e964f14011c4ef4813dbd0688396828790803dba101581e581ced00712eb20460a8050a91244e4bb21b67e7f42afb25d6f7c599d342001aff5686df: 100000000000 -- 82d818584283581c7ea5c077b52196ec9366a95732ca49726cdda47300bd6b52635c0202a101581e581ced00712eb20460a8050a9e2440b35c7cf7ac1b5aca93c87908c83533001aab52a1b1: 100000000000 -- 82d818584283581c6e120c91095331cf73d532c571d3d535fa11a3b5992431824da2f04ba101581e581ced00712eb20460a8050a9f24de93b8481681a8226412655c5c1a8ccf001abdbf512b: 100000000000 -# "secret", "like", "type", "honey", "average", "sword", "rookie", "mass", "blade", "myth", "double", "salmon" -- 82d818584283581c5617208b99963f82e8682118c381005b3da1caa9da64d751e67450e3a101581e581c6d24d218dfbdf0bfce838ee84a6e4747c2c30ec62f573fe1d3304840001af41342f5: 100000000000 -- 82d818584283581c36a07a0830b96a1004ece9c4c1cf17de1fb530ecfd3e7870bed2f3e9a101581e581c6d24d218dfbdf0bfce838fe837ed34eac7cfdfc1698429f86c3808be001ae215c4b4: 100000000000 -- 82d818584283581c0f2aef62d1a6870931faccc0afed198d505ad3166cb9e1050fa9e7f6a101581e581c6d24d218dfbdf0bfce838ce86b706c01b7ab6ccebbfc6ab3a121c844001a6975eec2: 100000000000 -- 82d818584283581c8f1e289ba200986c830a24cad6cdea88fcd3c8811d4e2bbf4ef47cc8a101581e581c6d24d218dfbdf0bfce838de858ef59a4bcb73dcaf52955ca3a2988c2001a925d2f71: 100000000000 -- 82d818584283581c502ed55c1bad07ff70b3d05c88a8f4601283db070d837f3aa703e10aa101581e581c6d24d218dfbdf0bfce838ae8917291bbab93cad647a296856f124849001aba20a5b6: 100000000000 -- 82d818584283581c68029e24859030d3dce0671a5209460e0eb8621670d374e65171acdda101581e581c6d24d218dfbdf0bfce838be87ef17e5eb19f9bd281cf809c081a08c7001a70932831: 100000000000 -- 82d818584283581cae7de4eb3486ca7b10f0510f1dee3e154f466e4f4bb2577e50e29715a101581e581c6d24d218dfbdf0bfce8388e8b774b675a07b28dfd347c2573d03c84d001a0205ae86: 100000000000 -- 82d818584283581cc32dd0ab42f4a7c4d2b6d31626f1174f813df3ce3112a2cf2631837ea101581e581c6d24d218dfbdf0bfce8389e8a4f3a318a687f9da0d75ac6ed60a88cb001a0a9cad25: 100000000000 -- 82d818584283581c29a6c71c2204cfadabed02702ea419e8f9927a7735403f34a55c8edaa101581e581c6d24d218dfbdf0bfce8386e8dd76db2f956386e75feded290bf44752001adc35ed0f: 100000000000 -- 82d818584283581c01648abe08249575abb8acbb4825607abeb6224c574a362ab129d663a101581e581c6d24d218dfbdf0bfce8387e8caf5c8d29a6f57e3991ad840a4fb07d0001a9a24869d: 100000000000 -# "buddy", "assault", "armed", "whale", "bid", "unfair", "zone", "minimum", "fat", "employ", "front", "lizard" -- 82d818584283581c83c4b75bdd0d2d49c70d73f062c8dbb0a8a0156056b8263934963b68a101581e581c1f9f7aa9e8547c48a5051f5633ef89deef5febb098d7e7e48aa92000001a4f825a98: 100000000000 -- 82d818584283581caf928402f9a8b0337563e94b37118ac0ca7eff74647d89d317d0d013a101581e581c1f9f7aa9e8547c48a5051e566f0889ee1f5b32fd2a5b8660387ed934001a20deeef4: 100000000000 -- 82d818584283581c7de71b716b20a386b7b00c382c1a18dd22a06c30ec135a86e25417e0a101581e581c1f9f7aa9e8547c48a5051d56b02188fe4f567949bdde24dce5529269001ad566da91: 100000000000 -- 82d818584283581c6fcff017345ab862e199dca9ee48168554bc6ddb9feacecf5e33640da101581e581c1f9f7aa9e8547c48a5051c56ec3a870e8051c0954f62c35793274b9e001a50564f5b: 100000000000 -- 82d818584283581cc6b8d45de7c72076725becf042f5b695ce3896c02b4826e9b3d301e6a101581e581c1f9f7aa9e8547c48a5051b562854861eb04c07e2e1e561d340fc03d3001a11d8d3d9: 100000000000 -- 82d818584283581c5b9b7d02fe4bdcbef28d1525c1803ff77fa58ad8ecd80ab4c13d36c7a101581e581c1f9f7aa9e8547c48a5051a56646d852ee0474e2e7469004feed0bc07001a9748ed8d: 100000000000 -- 82d818584283581cb5562946e8c80a0f086e4a2165e298471efa6a93dcb3c5d26c13ee99a101581e581c1f9f7aa9e8547c48a5051956a086843e1043957a06ed9eca9ba5753c001a2e200f9d: 100000000000 -- 82d818584283581c05df955b164ff3999c071001b86d0680827ca7cca2d71263a6706550a101581e581c1f9f7aa9e8547c48a5051856dc9f834e403edcc698703d46497a2e71001ab4bb811b: 100000000000 -- 82d818584283581cccf29f18252a3a244b95afd867fb167454b9137bed4aa64949836f12a101581e581c1f9f7aa9e8547c48a505175618b9825e703923132bf4dbc1f64ee7a5001a25c5725c: 100000000000 -- 82d818584283581c5c6bb89b466728c122950d91ca8f2ded860e8eb11a023ef6c887212ba101581e581c1f9f7aa9e8547c48a505165654d2816ea0346a5fbd777a3da423a0da001a39221d97: 100000000000 -# "verb", "blossom", "kiwi", "butter", "express", "other", "shoulder", "hold", "enter", "beyond", "special", "devote" -- 82d818584283581c7232ce009c94c097b60192d51816f2c4c47453a969394535e78ca4dfa101581e581ca4d320d96ae9f64f00715a61f78590b5ea1b3af1cc7a2c914a85c958001a9eccb9a9: 100000000000 -- 82d818584283581cf2e58e8f1bc106fd9fc6948f113011cc04fb4b20d61718c51004ec55a101581e581ca4d320d96ae9f64f00715b61b1da838ad1944895dc412885777c2933001a0260a764: 100000000000 -- 82d818584283581c8b637272d858fa939cc8bf1a229d6c45e8f461bbfe0237b6d6905d0fa101581e581ca4d320d96ae9f64f0071586183dca90b1d2a1da9adec34a9f09609a4001a4a768ccd: 100000000000 -- 82d818584283581c8c30ea066111ea25695b52ad84dddded8833cd22bbb289bda82caa64a101581e581ca4d320d96ae9f64f007159613d319de003a32b4dbdb3309d1d8e697e001ad5e34368: 100000000000 -- 82d818584283581cfe3f4f549bac149ba7610819f28e4a6c5ae2fe6c28a02388d7958f78a101581e581ca4d320d96ae9f64f00715e61dad85d0986ff73810b971b61fe6149c2001ae927a757: 100000000000 -- 82d818584283581cc7cf9ae19538073fd71aeed77f06be483179e68faa6c62b7221b62b4a101581e581ca4d320d96ae9f64f00715f61942d51de6c7882251b5e17552b59a99c001a3551a2bf: 100000000000 -- 82d818584283581c0e2b24dce3260f644b1d20e845fea0c4f157789aa5aff69ad13deadaa101581e581ca4d320d96ae9f64f00715c616b2f775fb80d5739ec082479a473890d001a28a4e097: 100000000000 -- 82d818584283581c97158b03915f1c01b5abe61bf8c35eb441479495e3553fde3f571afca101581e581ca4d320d96ae9f64f00715d6125846a349f8665ddfbcf1f6dd16ae9e7001a13822b27: 100000000000 -- 82d818584283581c26d371d5970eeab0a6b542bbbb008a845450a15da775b85ad0a4e592a101581e581ca4d320d96ae9f64f0071526127e0f50db454c6d04f424ef1e2cbc985001ac87962ce: 100000000000 -- 82d818584283581cb35ce64b90726e3cb0da8baa455dc4b476e4091d30ea486a336356d2a101581e581ca4d320d96ae9f64f00715361e134e9e29acdd4745f094ae50fc32960001a6c5ad9e8: 100000000000 -# "exhibit", "install", "act", "craft", "grain", "soap", "coral", "jaguar", "echo", "midnight", "ride", "raise" -- 82d818584283581cff7d50f764c1dc7563ae74842ce42b526c7900d47f9f014a917e0cada101581e581cfc8fe1612763a1dd1c43ef8d0fcbdce0e017fa901392c9b2c25a1108001af58c27b8: 100000000000 -- 82d818584283581c8d3a91f659da6c635224036470ea0bd9dc91623bcf915f47a74a3f65a101581e581cfc8fe1612763a1dd1c43ee8d47ccd9dd05770f4242a288b78d5ac762001a2eed35f3: 100000000000 -- 82d818584283581c0b21dd58f542c129b091bbbbbb58d7adb2a1beae3944ad093602d962a101581e581cfc8fe1612763a1dd1c43ed8d84cdd6da2ad624f370b247bc585a7dbd001a3eb289da: 100000000000 -- 82d818584283581c5e6d75e7373449c26c04eccaa54dd579a002756f1ee29105987dd792a101581e581cfc8fe1612763a1dd1c43ec8dbcced3d74f353aa49fc206c1235a3318001ab0fac336: 100000000000 -- 82d818584283581c524e8679df0f6c007f82371b93446870616388b3f63a66ac9f64a40fa101581e581cfc8fe1612763a1dd1c43eb8df9cfd0d474944f55ced2c5c5ee59e972001ab6fbda34: 100000000000 -- 82d818584283581cdecf41a7d1eda876c64e9fa64a7f5f694804e6a297735548390a503da101581e581cfc8fe1612763a1dd1c43ea8d36d1cdd199f36406fde284cab9599fcd001a7705590f: 100000000000 -- 82d818584283581c1af9af2c2b3a31230ae2c8b17ee28a6eda0c234a248d1d472366fdfca101581e581cfc8fe1612763a1dd1c43e98d6ed2cacebe527ab72bf343cf84595528001aacbcfe2b: 100000000000 -- 82d818584283581c2e19ded0bfcd4ae5da07fe46f5d11e983544ad767912465ae2500b52a101581e581cfc8fe1612763a1dd1c43e88dabd3c7cbe3b18f685a0303d44f590b83001af3ee67ea: 100000000000 -- 82d818584283581c9dde785bc3439966f82bfdfc4ad2e0eb457f5a4c8b6578eb1ccecad6a101581e581cfc8fe1612763a1dd1c43e78de3d4c4c80811a5198913c2d81a59c1dd001aa74ba879: 100000000000 -- 82d818584283581cac0daad103c5e0dd9f75dd436d9ff726e59446bf24eddf3c5b10c841a101581e581cfc8fe1612763a1dd1c43e68d20d6c1c52d70bacab72381dde5587738001a5d56c2a7: 100000000000 -# "credit", "raw", "dinosaur", "target", "sustain", "permit", "regret", "strong", "abandon", "guard", "expand", "science" -- 82d818584283581c3573f47b8232af988a1e079be50118cb125f8ffedc79e8f92b8927d5a101581e581c942048269e8fea1d0514600803bb41710ec89660552130ae032e0aff001a6259a731: 100000000000 -- 82d818584283581c8385b50639ba92cf2c0a8899ba4146b9982cbf13acd7363831946824a101581e581c942048269e8fea1d05146108157b0f5b727c850a30ca54c698fb94b5001a5a71b83b: 100000000000 -- 82d818584283581c0223f5e291f42bffedc93782865833da9134026cf8ae34d79f5822caa101581e581c942048269e8fea1d051462082c3bdd44d63074b40a7379de2dc91f6c001a9c568e84: 100000000000 -- 82d818584283581cc00bf7c51d88299cfe72147c3411ca06e988427bc61c9cf49f96750da101581e581c942048269e8fea1d051463083efbaa2e3ae5625ee51b9ef6c296aa22001a9c975ba1: 100000000000 -- 82d818584283581cce7e2689b9e786a8e7479c0b5034ad0bb37fd494837d46442094a5aaa101581e581c942048269e8fea1d0514640855bb78189e995108c0c4c20e586435d9001a882ea4f0: 100000000000 -- 82d818584283581c29db7f43825cf056fe93742306ccc3408783292109c9edf7b5d78b11a101581e581c942048269e8fea1d05146508677b4602024e40b29a6de726ed31c08f001afd9e1470: 100000000000 -- 82d818584283581c31ec02c7239d9bfc74d9415e29f2f869563cf6654ffb7a5fc1fac446a101581e581c942048269e8fea1d051466087e3b14ec65022f5c75160c3f82ff4a46001abd2abdbc: 100000000000 -- 82d818584283581c4e2f07666f8a88f70a5492f6d87cba4c55a2facba2f114f47d065789a101581e581c942048269e8fea1d0514670890fbe1d5c9b61d0650bf305717cdd5fc001a64375f69: 100000000000 -- 82d818584283581c35dfe3e73e005fd02d079bda6396d9fe1764988cb42d1d0c790223ada101581e581c942048269e8fea1d05146808a2bbafbf2d6b0cb02a68556fac9a60b3001aeb1fd44a: 100000000000 -- 82d818584283581ce87a5aaa001995ca14130dfaaec48dd50d3fa5e60f42c9988473e46aa101581e581c942048269e8fea1d05146908b97b7da9911ffb5905117a874168eb69001a948fdbee: 100000000000 -# "timber", "grid", "cement", "resemble", "engage", "sugar", "february", "regular", "print", "timber", "produce", "pizza" -- 82d818584283581c764832d9f20b5a2632b3dfbfc4d52d6504ea1c0f1298c500f41e5a3ba101581e581c642bb109a5a90b2602e376888a5a787598348df04ea7d682123c3971001a1364ae01: 100000000000 -- 82d818584283581c3d233049f04aa79a7c236101dcf8ac47fcffd6eb305780c71e2bc2c7a101581e581c642bb109a5a90b2602e377880fbaba2e9af9bc78d157a44c276399cd001af575e528: 100000000000 -- 82d818584283581ce2a2d6633ca816386ec33c03e13589c92e566e6263dc9abd3a63d07ba101581e581c642bb109a5a90b2602e374887b9bf30295aa2de049463befe8ed78b8001ab45b516f: 100000000000 -- 82d818584283581ca12e408a98bb961e45ebdb685732ea95ee77de8e26cf0668c0563b43a101581e581c642bb109a5a90b2602e3758800fb35bc966f5d68ccf608b9fd14d914001acc713811: 100000000000 -- 82d818584283581c4e351a4358b07f02228af4880d27d60a3b9747c801207968a1192750a101581e581c642bb109a5a90b2602e3728871dc6e909120cecf44e59f5bbf9fb8ff001ac8ea0fc6: 100000000000 -- 82d818584283581c8a4ca88dd6077cc90a7083cb56be5f86a4a7beeeefb44c069a85bce9a101581e581c642bb109a5a90b2602e37388f63bb14993e5fd57c7956d25d4c6185c001addba1540: 100000000000 -- 82d818584283581c3930d5f22d35f330d5ea23ac0faa0396e8c864cf4d78088a2dd596e0a101581e581c642bb109a5a90b2602e37088671dea1d8e966ebf3f8404c89551f846001aeb35ec4e: 100000000000 -- 82d818584283581c7b56742a5a90061845cd5abec81bc5f1fb4df0a0ad3677436ca72e12a101581e581c642bb109a5a90b2602e37188ec7c2cd78f5b9e47c234d291aa7858a3001ac6eb149f: 100000000000 -- 82d818584283581c8b1e4cf9d0eea4bee886f67d868bd7d256c885bd1edb76e8e24e29b3a101581e581c642bb109a5a90b2602e37e88b2568b3fa65c0b32632b44d1b8743a54001a7e90f77c: 100000000000 -- 82d818584283581c69c997ec0db492551067c3910bf753f4ca5c52d44fef36b17861fc15a101581e581c642bb109a5a90b2602e37f8837b6cdf8a7213bbae5db119bcd9b9ab0001aa5a2ed18: 100000000000 -# "solution", "dice", "symbol", "ignore", "gauge", "exist", "also", "mention", "west", "pet", "rule", "first" -- 82d818584283581cb2096f296a56d43fbbe5b73e862014fc7618b6665555aaeab4edd014a101581e581c0f66f880bb8d5b51f75c615bc1efa1da2174dbd8e2c38aa3a1ee4318001aacdbf947: 100000000000 -- 82d818584283581c5a6cb2eb5afbb43c487cca27739f6d9b8a9a556ce3bbb1cc5115965ea101581e581c0f66f880bb8d5b51f75c605b691d67d6998549eef6d47b29041b6142001a5893aa1d: 100000000000 -- 82d818584283581cf964fe6c71c671f1f8c15b5590111c4a201fc6d6c9ba851520384aaca101581e581c0f66f880bb8d5b51f75c635b719417e33151ffadbaa1a897dc9509c4001a60a1b427: 100000000000 -- 82d818584283581cb3446014da37e32f33f5ff6a78ec037ff257a13ce484d6d52e54f170a101581e581c0f66f880bb8d5b51f75c625b19c2dcdea9626dc3ceb2991d3fc226ee001af951464f: 100000000000 -- 82d818584283581c005ddfd095f8a5e78e06f9ccf6fe213e1be0de289b70c9965982c899a101581e581c0f66f880bb8d5b51f75c655b21398deb412e2383927fc68b173dcf6f001a4daa4f26: 100000000000 -- 82d818584283581cbda9743377ab23959165573636bf6e3fcc8bdf5e71df853af2e6edc7a101581e581c0f66f880bb8d5b51f75c645bc96652e7b93f9198a690b7117a69ec99001aa411e1a6: 100000000000 -- 82d818584283581c38262bee2a76e8d5d1704e18ae09589621bd8bcb36bb72e202ccd53da101581e581c0f66f880bb8d5b51f75c675bd1dd02f4510b47586a5de47f52e4941b001a14918358: 100000000000 -- 82d818584283581c548287795c8107af01bdf5c5096bbbd643b94df1dba38403762a2412a101581e581c0f66f880bb8d5b51f75c665b790bc8efc91cb56d7e6ed505b510b245001afd78263e: 100000000000 -- 82d818584283581c4b6f60da0ddd9c083a86126de2bfd0db1ae69daa23ebe5a50b26b300a101581e581c0f66f880bb8d5b51f75c695b818278fc61e86a2d423b02748d8b5ac7001a288d3757: 100000000000 -- 82d818584283581ca80ec4240529d372a25cca5d203f13fc5e7281db0391b4428834288fa101581e581c0f66f880bb8d5b51f75c685b29b03df8d9f9d842564cf3f9efb777f1001a79ae225f: 100000000000 -# "tuition", "cost", "tattoo", "vicious", "vast", "doctor", "prevent", "asthma", "barely", "orphan", "close", "bus" -- 82d818584283581c359ed419f0b76af5da498874e1b6d944e636d09104f82c65fc6048f7a101581e581c878648be51cc9fe85f2fedf14c0ef1f0a4b32cccdb2a01ba289d8e3b001ade50eec2: 100000000000 -- 82d818584283581cf282b0c908626c2c2334e255ad619470acb0d6c48cc8c9947d673127a101581e581c878648be51cc9fe85f2fecf12f2fd9bcafaac3d89cf33abda8e1f0b1001a5010e16b: 100000000000 -- 82d818584283581c1e6ccf56e89623c8914db323440348cf51c4f3bf84e5316354ea35f0a101581e581c878648be51cc9fe85f2feff181cc20598fc5feb259998db32814ca4e001aecffc965: 100000000000 -- 82d818584283581c99a342a554c41da0e9991566438a973debef91b548f2fd4ff54dfd6da101581e581c878648be51cc9fe85f2feef169ed08259abc95bf1a62c7b6a8582cc5001a5e0365c9: 100000000000 -- 82d818584283581c579fbb278423564bb5f2759fcee8fd0f442b3cfc0d5a73083c0146f6a101581e581c878648be51cc9fe85f2fe9f1d8919120d08f88fedf4de8c628af1715001a9078cd25: 100000000000 -- 82d818584283581c102b9da45e326b5cbd12e7cde20977834ecff226b0482a7796071a86a101581e581c878648be51cc9fe85f2fe8f1bbb279ecda861f0ba11622caa8f3798b001a5f051b84: 100000000000 -- 82d818584283581c04a9e8e4ec93eaef436de0938bfcb137451f081d9ffb6eec42fb5cc3a101581e581c878648be51cc9fe85f2febf11250c188baa15ae55dbc74c028265328001a7d1eb21f: 100000000000 -- 82d818584283581cc1d8907a0634d9d80d2059d050793a5d8fb1652d6476549635b85363a101581e581c878648be51cc9fe85f2feaf1f570a954c598f1f11e85aec3a86ab59e001a93dc7f72: 100000000000 -- 82d818584283581c790b27d7f21f5de5d0d6e1846d591dde5b5d4fe7badaac8b84732303a101581e581c878648be51cc9fe85f2fe5f169153250fb6be430e470cfd328c1a0ee001a738642e9: 100000000000 -- 82d818584283581c7f7bd0cbb1f57abac821f596c05dca8ac1b9f1d826cef34f89030b20a101581e581c878648be51cc9fe85f2fe4f14c361a1c06637b3da53909d7a8050365001a22b5fd2f: 100000000000 -# "puppy", "crew", "glide", "feature", "bottom", "stumble", "prefer", "hidden", "extra", "north", "bleak", "shoulder" -- 82d818584283581cc082b985fbe52ca18211e929af1ff158929a25695b79042dd128c1fca101581e581c5710e231663119c218d679b06d6e36440c776ca67cb4d67682158aa3001afa43cff3: 100000000000 -- 82d818584283581cf14fbfa6bf45a2d00973cad1379b7175ac7be4efdfb0fea9dd000f64a101581e581c5710e231663119c218d678b0ae9dedb66368aace2bfce47df73039be001a577a7252: 100000000000 -- 82d818584283581cbb092081d105d3b89cee85aca02919dee18d8442880809beb00dd26ca101581e581c5710e231663119c218d67bb0e10fc85e5d94f0551e25ba6898de2b6e001ae0a8115c: 100000000000 -- 82d818584283581c76b6431cdf7f4f4e166ed9295db07ac0373df286bf070cfe048d4b76a101581e581c5710e231663119c218d67ab0273f7fd1b4852e7ecd6cc86f0dfada88001a103140d9: 100000000000 -- 82d818584283581cd76d5c3f3e62813f69621f925026f6444fef6baa3b5f0e776cbf6b5fa101581e581c5710e231663119c218d67db05ab15979aeb17405c0959d5aaea7cd38001a6c008e65: 100000000000 -- 82d818584283581ccdb4e7a8cdcda78b8b4fd399beb7f3076d46d0317d9d3f7eb3e520fca101581e581c5710e231663119c218d67cb09be010ec05a3b22d6fddab6123c37c53001a54ab5c8f: 100000000000 -- 82d818584283581c9b17ffa41eb79d2cf7e23e786810f1b22fd020336d5f3734e6268444a101581e581c5710e231663119c218d67fb0ce52eb93ffcef8b46106814cc4706f03001a9b673afd: 100000000000 -- 82d818584283581c46886d4a41a85e53ca1a4ebe9823f5fcd9199d8be13ed5d53996057ca101581e581c5710e231663119c218d67eb01482a20657c036dd104e8f53398c1e1e001a766bfc25: 100000000000 -- 82d818584283581cebfd07a31ae00fbc6464740d82e7ffb7ff2cbfd955f83f7094e14381a101581e581c5710e231663119c218d671b093e8efd9c7015ce8f5f148af2af10279001ac1508183: 100000000000 -- 82d818584283581c06577e649344cd264f35e43aee76c43d0c8924ad02068cec05fef5e9a101581e581c5710e231663119c218d670b0d917a74c1ff39910a53957b69f0cb293001a81786a36: 100000000000 -# "innocent", "unfold", "combine", "gas", "custom", "luggage", "cricket", "thing", "speak", "bubble", "pitch", "festival" -- 82d818584283581c09a5a64a9feef08df6c6f0cf37bed1cb1a2cb4eb9fb06ed3eb5f9d39a101581e581c6a15e824a61c3d261ebe760b1071ea775a3e697a6fcbe432c7f7d30c001a373d0e0e: 100000000000 -- 82d818584283581c9fda35e46874df42167b105e1de0d7650c213007baa79078d0c49adea101581e581c6a15e824a61c3d261ebe770b89d99c476070b2a6ded586c37ce7614b001a67cc6e28: 100000000000 -- 82d818584283581cc7b990d1af97b1a2b3b32e6a6cfdc62735c0b016aab44d3a9e8c9135a101581e581c6a15e824a61c3d261ebe740b1ea085d84edad62191b6a0115c18b88f001a31efc068: 100000000000 -- 82d818584283581c5d450de8139e6df9f8d92ff5dd58be9e35060c9480289fea8da5bc04a101581e581c6a15e824a61c3d261ebe750b970838a8540c204e00c142a2110846ce001a0fa54b59: 100000000000 -- 82d818584283581cda7c8d7aac194ea5db2a4ed1487c01cc2d936a8077876a328549d004a101581e581c6a15e824a61c3d261ebe720b2ccf2039437644c9b2a15cf0f0389c12001a5969709d: 100000000000 -- 82d818584283581c5921ef164b244d73a62e4edc2c17006d4470bc789cdbb7388a8c9188a101581e581c6a15e824a61c3d261ebe730ba537d30849a88df521acfe80a6282a51001ab582c7cd: 100000000000 -- 82d818584283581cdc7160b1c2b296cf8a5af31d8af66a5fcc53806f1c3a4284eb5841aea101581e581c6a15e824a61c3d261ebe700b3afebb993712b270d48c18cf85598095001a79b007a2: 100000000000 -- 82d818584283581c62baca21e15983440e89dce392a4a353822b5b5dd4cecb655cd702f0a101581e581c6a15e824a61c3d261ebe710bb3666e693d44fb9c4397ba5f3b490ed4001aad3cf87d: 100000000000 -- 82d818584283581ce92bd511bc932ef0b2b1d8c46b34e731c47cda1d9e618a06fdb0b057a101581e581c6a15e824a61c3d261ebe7e0bd8b47df588ceb2dce81ef5b773754301001a3923d1e6: 100000000000 -- 82d818584283581c1c8b6dfbfa93c4baa7745ec68567df449bf7f3749dab02ad72cebedba101581e581c6a15e824a61c3d261ebe7f0b561d30c58e00fc08582997482965d13f001a48dfa314: 100000000000 -# "gospel", "garlic", "midnight", "enemy", "legal", "speed", "sleep", "discover", "enlist", "camp", "metal", "chunk" -- 82d818584283581ce484843c20a9f1436704fecc1a19c737f906bad50dd19c68c108f231a101581e581c1d78dbe0184f08b9cb7755a6a1f8de7dd44bbc0bfd166e696f52ba58001ab6eac0ef: 100000000000 -- 82d818584283581c85ad8dd9ff298fc36efd0cb5351dc358cb1187ee3d5e4b4e2ede55c2a101581e581c1d78dbe0184f08b9cb7754a6a973b0963d52f3427a343467b900f9a8001abf880c11: 100000000000 -- 82d818584283581cf111d45f789c063b349fbd1f120c7f8802fdad6b7bc62aa457af6802a101581e581c1d78dbe0184f08b9cb7757a68c023c4c023f4e9d02dce16ddbf53cb8001a92bc411b: 100000000000 -- 82d818584283581c5f5c23f18a4048cca29fe2dc11fc3aa246d5ff793ba5b7b557d024dea101581e581c1d78dbe0184f08b9cb7756a6997d0d656b4585d47ff9a76b25a47b08001a3982c99b: 100000000000 -- 82d818584283581c485df0b28c9a7dd28aa496b1248dff016028d81ef1e61d0a5eb5ec97a101581e581c1d78dbe0184f08b9cb7751a6c6e424e1786598e8f18c8660970bb599001a2936d26b: 100000000000 -- 82d818584283581cb6d00bdbb5e2c6b1de284c1d3bfad717937999f6d255f2758683eaa7a101581e581c1d78dbe0184f08b9cb7750a6ce5ff6f9e16bcf1f6faa4c5ee1b9f3e9001ac402870a: 100000000000 -- 82d818584283581c58ccc2e988ce7be4b641dfbc47a97bc1e9ae11bf7d05cf72de746dc8a101581e581c1d78dbe0184f08b9cb7753a6b6ee81afa6582a7af751fa6403af37f9001a6b77a603: 100000000000 -- 82d818584283581c507b17d31f16c6b5b2250b4d42df31212fff98ee1c87cc9278132b6ca101581e581c1d78dbe0184f08b9cb7752a6be6953c80f5f61b1746fc0624d5d7649001a02cad48c: 100000000000 -- 82d818584283581c377620da727776b485de331f4a94500b0b43a2f9bb820604297d634da101581e581c1d78dbe0184f08b9cb775da6522053b78b180452132b3d7b1fe0c4d6001a560f57c0: 100000000000 -- 82d818584283581c7867414b0c96e3d60c602eb436d2c66ac47d87c39dc7c4d0d024b411a101581e581c1d78dbe0184f08b9cb775ca65f9b24d0f41e3b8990480379698e0327001a6b590393: 100000000000 -# "lyrics", "lend", "volume", "cruise", "engage", "relief", "memory", "wine", "board", "scorpion", "educate", "differ" -- 82d818584283581c6b401446df8a1fb9deb4cbf6c973bea90404fd4170637712bc9b4fe3a101581e581c3081f4fa44b0cdd8b9b6716399b1d79756c426bf105d426102831bdb001a235e2c97: 100000000000 -- 82d818584283581c789718acad4e520d5b4fd315dd07c8933d02407eca547f87cd068d1da101581e581c3081f4fa44b0cdd8b9b67063a869071e7f5a4c983ad5e2273fddc268001afee7b72b: 100000000000 -- 82d818584283581cfdbebf7d542f37a1a310b5432df3e9e30e9d9456e8dc727af0f1d7e8a101581e581c3081f4fa44b0cdd8b9b673637641788b0598db0cbd6c01d488ceccbf001aabe2ac69: 100000000000 -- 82d818584283581ca2625dd8190a3f5e27b7624b5cc1341bc369dff92a7b95e476fbc1d7a101581e581c3081f4fa44b0cdd8b9b672638af9a7112e2e01e6e6e4a19ac528744d001a0e195698: 100000000000 -- 82d818584283581c2dc3e48f53389d0a6950074ccaa4688dae1096cfde698e409bcf2489a101581e581c3081f4fa44b0cdd8b9b6756358d1187fb46b905a697cc0460f1a7ea4001a74563669: 100000000000 -- 82d818584283581cb816ceed48ca0340122f50354259e9afbcd23d3d9f4eeb76dbdfaa4ca101581e581c3081f4fa44b0cdd8b9b6746367894805dd01b63393f4600d4c742532001aabb0a7c2: 100000000000 -- 82d818584283581cd070f402553ef2b8f90309c470e4ea4535940ab50c7a0802d15d6a83a101581e581c3081f4fa44b0cdd8b9b677633a61b972633f45a8158c7fb995652f89001a4bf51d8a: 100000000000 -- 82d818584283581c34bae4a6e07d0ff1a93a44830e022ad25fd23e1912dcf838550a4525a101581e581c3081f4fa44b0cdd8b9b676634919e9f88bd56a813f042080d2bfd616001ac9b03aad: 100000000000 -- 82d818584283581c3d2f5c853e966d994e4deb8ceaf16c49e84bf62a474d87509ad695aca101581e581c3081f4fa44b0cdd8b9b679631cf159661213faf5c19b3e2c1cb1e06d001a65f620b8: 100000000000 -- 82d818584283581cd0a3a26e4bf6392563364ac712d8c1302976caec7731e43db5272a60a101581e581c3081f4fa44b0cdd8b9b678632ba989ec3aa91fcfeb13dff2580b88fb001a845bf7fc: 100000000000 -# "law", "same", "wrist", "cotton", "outer", "debris", "put", "other", "wife", "father", "collect", "chef" -- 82d818584283581c271255b7a6d030384ddca167956aa40c08d1d1a2379bfe477d32fba9a101581e581c86b9db81b69276a152af3337fc2ded839b32107d13a6c1640e6f75fc001ac9a32d7d: 100000000000 -- 82d818584283581c77eb04b254c551af8a512f12e88713f009632af70dd3f2b75d59d635a101581e581c86b9db81b69276a152af323789a461b89a357d647ab7557d4b5b706b001a66982b11: 100000000000 -- 82d818584283581cf357e47a48da213f28e271d07093589007a1d3a7d8ce42a85b6b7f3fa101581e581c86b9db81b69276a152af31371b1bd6ec9938ea4be1c8e99588476bda001a7fb0e095: 100000000000 -- 82d818584283581cab4f737f7972caff18048c759a03e8d8bb24da3ce6b43b0326ab77cda101581e581c86b9db81b69276a152af3037ad914a21993b573348da7daec5336649001a75df998b: 100000000000 -- 82d818584283581c03cea3cc4aedcbd2e00bed4e27e6a5e57cd7f5a62260a0ededcbd736a101581e581c86b9db81b69276a152af3737b9531bb29e265cdf776071021abe8940001a2e20e80b: 100000000000 -- 82d818584283581c82963b79210106689585437b6c033ac01982794575eda5f5dcb8d8f5a101581e581c86b9db81b69276a152af36374bca8fe69d29c9c6de71051b57aa84af001a50dc8501: 100000000000 -- 82d818584283581ca593e3bf1105841e9c54da84b82498e7c64880f34be56c3d31316679a101581e581c86b9db81b69276a152af3537dd40041b9d2c36ae4583993394967f1e001a614cc12d: 100000000000 -- 82d818584283581c9d6c3ebdf525f60053e790f34e1cd8053a23087b0ef4c59dc75588e5a101581e581c86b9db81b69276a152af34376ab7784f9c2fa395ac942d4cd1827a8d001a6688f119: 100000000000 -- 82d818584283581cbf14f4fcbab19639684a7fc03cd0452ad1182c38f6c790254163fbaaa101581e581c86b9db81b69276a152af3b377b7949e0a11aa841dc1a21a0250d9e84001ad59de3ac: 100000000000 -- 82d818584283581ca0ff7be89e4a3f70d5bf811b5b2b5f040825560a6123d8d6eb251c16a101581e581c86b9db81b69276a152af3a370df0bd14a11d1529432cb5b862f998f3001ac69ff323: 100000000000 -# "february", "expand", "decline", "sort", "pull", "silk", "average", "update", "spatial", "betray", "remind", "hero" -- 82d818584283581c4b0aea9ae62364f7d18782e168198aea7d66475d52d0a97d2d36efbea101581e581cb5ecd5b61aae20fb6fb758a03e4140e40f41abc074205f049be78e2d001af0d92bca: 100000000000 -- 82d818584283581c206f089b4792bc9a07700b3a6ea57eb46fadfa98f10a23e96eca688ca101581e581cb5ecd5b61aae20fb6fb759a0ad2a27e70443313276199c459c09c977001a67032618: 100000000000 -- 82d818584283581c7ecb1a61d3a55b031811466b385f648defd5a0ab4dbb12c573cfa6aea101581e581cb5ecd5b61aae20fb6fb75aa01c140eeaf944b7a37712d9869d2b03c2001a386d984a: 100000000000 -- 82d818584283581cff88d606f7926cf63bf22355afd77d0e1159952fe4bbfe32ebad4d57a101581e581cb5ecd5b61aae20fb6fb75ba08bfdf4ecee463d15790b16c89e4d3d0c001abe70089c: 100000000000 -- 82d818584283581cddddb2b9e95689f3d3ad1b0be344caf8dbabc46402a99726547bdaaea101581e581cb5ecd5b61aae20fb6fb75ca0fae6dbefe348c3867a045309a06f7756001ab22d9a37: 100000000000 -- 82d818584283581c19933b3ae2293a315f51078622c56e0b2039d0e0ab7ce9801a13d879a101581e581cb5ecd5b61aae20fb6fb75da069d0c2f2d84a49f87bfd8f4aa191b1a0001a3ad7d24c: 100000000000 -- 82d818584283581c1137ff4d0ff37ac7d567ccc92f216be0a462c461e6a3aba2936ae68ba101581e581cb5ecd5b61aae20fb6fb75ea0d8b9a9f5cd4ccf697df6cc8ba2b3ebea001ab410a06b: 100000000000 -- 82d818584283581c3b04d8d5d5eaedfe33fc1617ade263676e9a2997c363ef288dffb9f0a101581e581cb5ecd5b61aae20fb6fb75fa047a390f8c24e55db7eef09cda3d52535001a2d00a3ac: 100000000000 -- 82d818584283581c310b23d00d9ddf8c9cfd9f2b8a5981f633fc824ffee6cd266161ddbba101581e581cb5ecd5b61aae20fb6fb750a0c1f508cd67317b34695877fa90d7bddb001aaeb5c61d: 100000000000 -- 82d818584283581c3f59e255d06c359c9eb9bd5e43f36b656aa282cba3a9d0c601cd2663a101581e581cb5ecd5b61aae20fb6fb751a030dfefcf5c3301a66a51b43b92f9f725001afa44ca34: 100000000000 -# "security", "hill", "flight", "improve", "rotate", "language", "home", "carbon", "boil", "enhance", "pulse", "pill" -- 82d818584283581c9cbaef13051fc4489ccf8a571ad4f6ebc109befe75bfa28eab6e999fa101581e581cfcc9382d86792f6693069c0d3a3b656bce08196e35dfc62693192304001a1141ae02: 100000000000 -- 82d818584283581cee5e15e775bc7b73884174cc283cdd3cded226d60f59b8bd09634940a101581e581cfcc9382d86792f6693069d0dee07d47670eca94ba5b0b103344398f2001a87531399: 100000000000 -- 82d818584283581cb7b0d8685f139c9bdf4e2b21c4646801179cca2318fc1d2c0bb1462ca101581e581cfcc9382d86792f6693069e0d9dd4428212d03a2915829ce0d46c0de1001a23904784: 100000000000 -- 82d818584283581cdb3f2db8800a4811793dfcd19228a269f87fc3c02a696317b41355d7a101581e581cfcc9382d86792f6693069f0d51a1b18db4b3cb06855387bd759682cf001aa0d184f9: 100000000000 -- 82d818584283581c209cef17b03ae1e899790c4c4ec620ff56756d74f07a72e7fb0fd604a101581e581cfcc9382d86792f669306980d6f08aa3d467ad5f775991bb30f734e4a001a614bd36f: 100000000000 -- 82d818584283581cbf5412600b2089de63a300ed465a7a89e6bee5889e3cf2da8c42ccf7a101581e581cfcc9382d86792f669306990d23d51849e85d66d5e56a0690b09cc338001a8e64814e: 100000000000 -- 82d818584283581c7712f1f455a0436bf86233f54a313c9283fdb165afd7c5bfb9bbeb0fa101581e581cfcc9382d86792f6693069a0dd7a187548a41f7b2553cf16c51c63827001a0a211628: 100000000000 -- 82d818584283581caed92da989fae17333e8c8f44175f427f25d6ca46e8519b53118d950a101581e581cfcc9382d86792f6693069b0d866ef65f2c258890c50ddc49f2efad15001a3bb55a19: 100000000000 -- 82d818584283581cde552afcb366279bef76938d5c00e449aa74eed215649cafb43904a1a101581e581cfcc9382d86792f669306940da4d5ee0fbeeb9181b653703f8ccc7990001a2cc70f22: 100000000000 -- 82d818584283581c1b760dddc98e4a13b522d3d33355c7ba32c860981195018c648afa66a101581e581cfcc9382d86792f669306950d58a25d1b60cf225f26255b1c2df6ee7e001a7a291608: 100000000000 -# "inside", "fancy", "sea", "blouse", "estate", "chest", "early", "office", "woman", "license", "obey", "helmet" -- 82d818584283581cc7a170b2fc9dd6c71f8a727e5fcb42757127ea9569a13c607e4da23ba101581e581cdcf4f367e543fe3c6877cca53ab31e027382f4586eb328e05b8b8d61001a8ae73d41: 100000000000 -- 82d818584283581ca714f223071971086097713c29df98b2529a80eb76030981824c268ba101581e581cdcf4f367e543fe3c6877cda5b4bb1588d11fcdcd89b646607e35ca0e001ae677c9bc: 100000000000 -- 82d818584283581c00eadc6ac88356413a55b1f06f0d8fa5930b72ce810117c0a38c0acca101581e581cdcf4f367e543fe3c6877cea529c40c0e30bda542a5b964e0a0df06bc001aa8b94629: 100000000000 -- 82d818584283581ca6ff40512d4decfc1d33a8760a90bec00bb6d2bbae5e5597efa867b8a101581e581cdcf4f367e543fe3c6877cfa5a3cc03948e5a7eb7c0bc8260c3894369001a6f2233fc: 100000000000 -- 82d818584283581cbb9ad8f1a406900d7539e9b0a93e39da1ce1a73069695d5b42174c39a101581e581cdcf4f367e543fe3c6877c8a5529142eaf80c928500a7b0dfd1e29aac001aef9e60a2: 100000000000 -- 82d818584283581cd34ee689bed7c69270d60337156f7a4132f367f909a211cfb2b5e061a101581e581cdcf4f367e543fe3c6877c9a5cc99397057aa6afa1baace5ff48cd759001ab485f036: 100000000000 -- 82d818584283581cb5ba7fb500ba1e5d5f3f9db89e6728abdc1faa965b7b9071a7d6b311a101581e581cdcf4f367e543fe3c6877caa546a230f6b547436f37adecdf16371407001a84d9bb74: 100000000000 -- 82d818584283581c31095cf43682132ac55a49ca002e126d1db496acd0926df53211a262a101581e581cdcf4f367e543fe3c6877cba5c0aa277c14e51be452b00a6039e150b4001add4fc07f: 100000000000 -- 82d818584283581c69afd0760771a01abece72520c62e778785e28f553a27a35a3926d35a101581e581cdcf4f367e543fe3c6877c4a56a6f66d27e972fb2929a38df473aa8f7001a7f31a101: 100000000000 -- 82d818584283581c799213587ff9c017d23e3900a78ce7487f1b47649391dd2bc6625c4fa101581e581cdcf4f367e543fe3c6877c5a5e4775d58dd340827ae9d565f6ae4e4a4001a33bb9cd0: 100000000000 -# "course", "toe", "sentence", "defense", "because", "trip", "hockey", "abandon", "essay", "give", "deputy", "insect" -- 82d818584283581c50d4614c83abb655de11e3859e3214b9e6f4df03a3e2b8a94e4d3576a101581e581cd5a0e25dd8977aa78b826b5127c145ca7489cb01ad587733336e3a24001a5564afc7: 100000000000 -- 82d818584283581c74e32412b5329def38019fd14c726b08434b0e41f6a296974a71321ea101581e581cd5a0e25dd8977aa78b826a5182bc18ec703c8bac10e7d0cf15a5c9c6001aa1f8e786: 100000000000 -- 82d818584283581c92fe4acf6dc0009200a5af30f6e3dda5f60b6fb7d1d1a33a11192106a101581e581cd5a0e25dd8977aa78b826951d8b7eb0d6def4a5774752a6cf8db5869001acce5f061: 100000000000 -- 82d818584283581cda07d4a6d7d060ed92a23b3dd029540f49458b9f4c1ae63a4daa49ffa101581e581cd5a0e25dd8977aa78b82685133b3be2f69a20a02d8038408db12e80b001ad4677f6e: 100000000000 -- 82d818584283581c0f70b37172340551cb7e08894b419dded0c3d93c990880454f0020efa101581e581cd5a0e25dd8977aa78b826f51cad3f94284bdcc561e1f11c2a892fd99001a048e4aa6: 100000000000 -- 82d818584283581c5dc62a5088095b6d045d471e690e5476c4086ec95a73bcdd89c3e824a101581e581cd5a0e25dd8977aa78b826e5120cfcc6480708c0182ad6a5e8bc98c3c001a0564c7d2: 100000000000 -- 82d818584283581c48147b87421b5f8ef593f3d4bf6bc9347de54229f7af367458a14565a101581e581cd5a0e25dd8977aa78b826d5176ca9f867c234cace53bc4fa6d001cdf001a2b36be26: 100000000000 -- 82d818584283581c298029b3c0dc183e36d75f5eeb69a768bfdd1d28040c6e5f8fb44a2ea101581e581cd5a0e25dd8977aa78b826c51d1c572a878d60b5749ca1d975037ab81001a9f556a16: 100000000000 -- 82d818584283581cb77f5b72e67691f5b0a43ce425eb610f695f9ff2d71bd2a9a6696d39a101581e581cd5a0e25dd8977aa78b826351eb9bddd85521c957cacb43164825b438001a49685b95: 100000000000 -- 82d818584283581c317ab3e05112bc3aca12057e61eb128401b0b3caebf5d5a7c9a73041a101581e581cd5a0e25dd8977aa78b8262514197b0fa51d488022e5a9db22a5c43db001ab824b427: 100000000000 -# "sister", "slogan", "hour", "build", "squeeze", "favorite", "inject", "smart", "slim", "near", "tired", "blind" -- 82d818584283581cdc165e7dfe676ef5dccd59884eecef09e3bf33b7d74d548bb08820eba101581e581c5e0018a69fbffc24bd68a5529585d6c29f2f92c431824922ef958b0e001a22afc6bd: 100000000000 -- 82d818584283581cf364bdc679ba37072cf32b2049172519f9b685dca072a41223f0e6a7a101581e581c5e0018a69fbffc24bd68a452da66f6fcee78e981bb1894a151ea9cfe001ab314e61b: 100000000000 -- 82d818584283581c035a2c1480b39aebdd94f0d0571a92f1934fdac05c429a7539f10453a101581e581c5e0018a69fbffc24bd68a7520bc3964e019de3491e55b4232aed682e001a84ca2af6: 100000000000 -- 82d818584283581c576bf97090dc8cf6f9d8c3eb595a2542fcc00522b8a32806740bd4eca101581e581c5e0018a69fbffc24bd68a65250a4b68850e63a07a8ebfea28c417a1e001a21508349: 100000000000 -- 82d818584283581ccbb0f67f591f0dbec967b37fe6d6707e41379f77bf3495ce5867b820a101581e581c5e0018a69fbffc24bd68a152a90a56abdc54efb958dc731f79e7d0ce001abb5e9ea5: 100000000000 -- 82d818584283581cc6b4e58310c04fac95ab8c201e0c54e44609a3716555bf32a8c55d56a101581e581c5e0018a69fbffc24bd68a052eeeb75e52b9e4677e272be9edb3be2be001adfa254d2: 100000000000 -- 82d818584283581c61f6c05e6be5be6aba0e953a642c361d2ebc9ce06228867cbd318843a101581e581c5e0018a69fbffc24bd68a3521f4816373ec2403f45afde20b43eaeee001a3c4f455b: 100000000000 -- 82d818584283581cd770650dd4d6514dadfe8042184183790b1aa6f09baa0e546d703c6da101581e581c5e0018a69fbffc24bd68a252642936718d0b98fcce4529a01693bfde001a66463166: 100000000000 -- 82d818584283581cd896514f7130dfaa9f60e12226a212549f09694869c1f0891e421f57a101581e581c5e0018a69fbffc24bd68ad52727bd7f125e5d7d9e3cdf427dbf2008e001ad760a310: 100000000000 -- 82d818584283581c413cd4b20299e954ce61d3367388e36fe4759789dee816d5a3d93691a101581e581c5e0018a69fbffc24bd68ac52b75cf72b752e2f976d643fa73d47127e001a413a136f: 100000000000 -# "upper", "mouse", "spray", "wrong", "food", "affair", "before", "object", "mention", "then", "ask", "solution" -- 82d818584283581cfa7e60f3c25362bde08c11183379494da4bcbd19d1082ff910d5795ca101581e581cd7e56f25f93067b38fd697063e092ac94940dd621096e6ffd69500be001a7d2cadb0: 100000000000 -- 82d818584283581c22f9d03f1af44aaf01ea61a1e24ba3f4d6177bbe547cdaded267f1baa101581e581cd7e56f25f93067b38fd696065c352c5bf34c4272f32b95ab76a899da001a0f651dbe: 100000000000 -- 82d818584283581c293d6a2c76772c18fe0f05e67a71e135d1ed2a27711bc266b49b7463a101581e581cd7e56f25f93067b38fd695067a612eed9c59a781d6c1435716bb32f7001aec0b77fc: 100000000000 -- 82d818584283581c11e6fd9331a0f41776efd00cda8cc4e8c2dd55b1a19f840f69ce1c99a101581e581cd7e56f25f93067b38fd69406988d307f46660c91b957f202b6cdcb13001a0e71f534: 100000000000 -- 82d818584283581c1c4d7f84e886cfff88c269795c02364f2e1732d0b832698b8bfbc601a101581e581cd7e56f25f93067b38fd69306b6b93211f07271a09ceda0ae55e06430001abbda6422: 100000000000 -- 82d818584283581c0538b7eac7ac8dbcc9da55d125495c39ac681d293bf12e00b8cd403aa101581e581cd7e56f25f93067b38fd69206d4e534a3997fd6af7f834f5af5f2fd4c001ac4df5f76: 100000000000 -- 82d818584283581c226360944f4b0bea3fc150c4b2aa3d42c8befff2fbb90b7a6daec382a101581e581cd7e56f25f93067b38fd69106f2113735438c3bbf6219fe0595059769001a4d112db6: 100000000000 -- 82d818584283581cac3339497f66f1a9d36f9d8652148ca622d82a07ab9e46e97a729cdea101581e581cd7e56f25f93067b38fd69006103e39c7ec98a0ce45afacb134183086001a7f60ddf3: 100000000000 -- 82d818584283581c3fc16058c8ffffa2eafb6273088f41dc6e500484e8360c4caa0eb507a101581e581cd7e56f25f93067b38fd69f064ea81839fddab4e7f7e671a2d90038d9001a00d254db: 100000000000 -- 82d818584283581cd272d28034b95533c788bb9b37b33440d0122bc0a76e9308110382f1a101581e581cd7e56f25f93067b38fd69e066cd41acba6e719f7da7c204e7913d1f5001a320eadfd: 100000000000 -# "video", "fall", "run", "engine", "wheat", "baby", "december", "issue", "vehicle", "between", "reopen", "wink" -- 82d818584283581ccb75b4bc99b8bb00dd6792e0f1569d32894c589959d8e18cb221b41ea101581e581c89ed2d8278f783bf2f59fb84cc4d756a089c7ad95de73a2c4384b431001a165aae9c: 100000000000 -- 82d818584283581c981b1325d3474fc96edeb930381b0da85643ce978bb1542256214e26a101581e581c89ed2d8278f783bf2f59fa84396404fa8321ceb0b8c8645571101385001aadf12370: 100000000000 -- 82d818584283581c5d9e9e9aba53f5c9690b92a9e45976a8b2c41ed3d667988601235a15a101581e581c89ed2d8278f783bf2f59f984a17a9389ffa6218813aa8e7e9f9c71d8001a1a023903: 100000000000 -- 82d818584283581c724c8a727f07e4e5d53f5a8effde9e5e1d44d92f4f20dcbff4efc714a101581e581c89ed2d8278f783bf2f59f8840e9122197b2c755f6e8bb8a7cd28d02b001ac73bbb02: 100000000000 -- 82d818584283581c37046a4004e132d05c4a873d589187f455042e89dc88fcfa1dcc8dcca101581e581c89ed2d8278f783bf2f59ff8418f4382c1a862c7cf26193878a533ae4001ab1d20f6c: 100000000000 -- 82d818584283581c64af180ddaccd01713abe291b61873bfa7a42476d70eab075b848229a101581e581c89ed2d8278f783bf2f59fe84850ac8bb950b80534d43bdb0b8df9837001a4faf9e5e: 100000000000 -- 82d818584283581cd2929df8007017b6424099991adeb1164cd6cd9270088b7b7eb10d32a101581e581c89ed2d8278f783bf2f59fd84f220574b1191d32aa824e7d9e66bf78a001ac1faec04: 100000000000 -- 82d818584283581c8e55b8b1927cda85a6e102d7bfff4f9c4220720c0b21d916f200a309a101581e581c89ed2d8278f783bf2f59fc845f37e6da8c1627020306110315f855de001ad60535f3: 100000000000 -- 82d818584283581c3cdeb0977cb4a9834ffa78df888431f368081b207d5d40bfbdb4cc68a101581e581c89ed2d8278f783bf2f59f3842a01eee6e4c7169434f28975b4e5a8cc001aaf1aef03: 100000000000 -- 82d818584283581c05abcee9d4cd87db09886f3d6918b06be4dfeb1d236162375951280aa101581e581c89ed2d8278f783bf2f59f28497177d76604d6a6b8fd3b39ee2710720001acc0f52b4: 100000000000 -# "nuclear", "glide", "invest", "speed", "essence", "friend", "clog", "hamster", "service", "crisp", "weasel", "pigeon" -- 82d818584283581c625a72e3ca5a5f708256dae19ec1bca93c9229776ade5b6c092310a8a101581e581c4fb2b4c217377fe74ddedd9314608532f1e6c7d6d850511805570490001af09e6b19: 100000000000 -- 82d818584283581c56a4fa749862815657ad2500ff4b3bc9d9c9f57a017f12ba4c48205fa101581e581c4fb2b4c217377fe74ddedc93fe5ba94ace6c2d9e9bda9f703fda118d001aa4ee8b73: 100000000000 -- 82d818584283581cc93e5a63910d9944174e2ab9b632c391310a45903f0e185218331235a101581e581c4fb2b4c217377fe74ddedf9340683d0237dbfc47533db4679050e995001aa6ede818: 100000000000 -- 82d818584283581c73f4e6f45d3205572e9d2a51c2d2ec1014ce0e3368ef6d863cf47841a101581e581c4fb2b4c217377fe74ddede932a64611a1461620f16c702c0cad3f692001a21fa7087: 100000000000 -- 82d818584283581ca1877856baa6b3863f18a5cc26a20a9b56d8b1d8f7bedf0250d2cd0fa101581e581c4fb2b4c217377fe74dded993b74f159365fe5df4e3778b79ee633a84001a3c1286a9: 100000000000 -- 82d818584283581c479c93826568515f9b33f8d6a8ce9f9717126b2eaf515bf76d3a212ca101581e581c4fb2b4c217377fe74dded893a14b39ab4284c3bba601dad128e74781001aff196174: 100000000000 -- 82d818584283581c8ec31366dee7a40c0e0502d115626219f296cd64123edf08f3361caca101581e581c4fb2b4c217377fe74ddedb93e357cd62abf292655e64eec8795d1f8a001a456bb5d5: 100000000000 -- 82d818584283581c15a5b2c44b2047b1751cea5d14cb1cff878676bee47a8151a95702bba101581e581c4fb2b4c217377fe74ddeda93cd53f17a8878f82c21ee3c21b4e02c87001a945a8112: 100000000000 -- 82d818584283581c146cb6159263ebc6f29617650cc60fdff53da8af0acf8fcca061db0aa101581e581c4fb2b4c217377fe74dded5935a3fa5f3d915f411ef9ec5dad7707078001ad5de1732: 100000000000 -- 82d818584283581c51fdc81ffc7fd4c437e4a4725f1e066be7ddfa1d5dfe021516bfa6f0a101581e581c4fb2b4c217377fe74dded493443bc90bb79b59d9b128143312f47d75001a248325d0: 100000000000 -# "stumble", "either", "orbit", "bundle", "pepper", "total", "radio", "spatial", "umbrella", "explain", "exercise", "science" -- 82d818584283581c6f525b1010b0b4bc817eb55cc6edf30e6ba5926a4d1196cb50725baca101581e581c9de81fcbade22dcb453a4b36937cbcc6d10e66a6c35e14e6434615b6001a9f586560: 100000000000 -- 82d818584283581cfb2f23b19ee8538aa33bb2f32ca0bd3f1d82c7da5a40315bcc55bbc0a101581e581c9de81fcbade22dcb453a4a36b89a7bbcacaacfdee05494a7bf02fdc2001aaa7d73bc: 100000000000 -- 82d818584283581cd90e85d9d79cd7aa0457bbb414f941b06130777a5b43eda1499bc75fa101581e581c9de81fcbade22dcb453a4936d8b83ab287463917fe4a14693bbfe4cf001a4dc864b8: 100000000000 -- 82d818584283581c1c84f84f95137a74cedba371925d4256985c3889fa6ab8bb558afd29a101581e581c9de81fcbade22dcb453a4836fdd6f9a762e2a24f1b41942ab77bccdc001a54181b12: 100000000000 -- 82d818584283581c0063570b8ae43e4139370965a47ef449244863ab73b0844f3e38da30a101581e581c9de81fcbade22dcb453a4f360904c0ef659fbfc44e8614e054547682001a4c8b770d: 100000000000 -- 82d818584283581cb7ab3e6331c3420608b08a34917b78e57e751a69d0389e4291d09218a101581e581c9de81fcbade22dcb453a4e362e227fe5403b29fd6b7c94a1d0105e8f001abe0ccd55: 100000000000 -- 82d818584283581c89f1e7368d66da33557c3ee0a846d0e5041984a32b10029e40adbb9da101581e581c9de81fcbade22dcb453a4d364e403edb1bd79235897214634ccd459c001a7e2171c8: 100000000000 -- 82d818584283581ce83371f9dfedd93e53c29cea3e38b5c94685d46214d04aed8f4df7e4a101581e581c9de81fcbade22dcb453a4c36735efdd0f672fc6da6689424c8892da9001ab0002b06: 100000000000 -- 82d818584283581c688b6561074d6ba61f101f06af0b36ae6baaaddcfa7d6d6f2b662172a101581e581c9de81fcbade22dcb453a4336a76db574a9edb269ad0f14f2212a531d001aeb56ef91: 100000000000 -- 82d818584283581c77258d98b4190f0734433c6a65b6875c3d2aff17412decaa3900cf16a101581e581c9de81fcbade22dcb453a4236cc8b746a84891ca2ca0594b39de63a2a001a1118543d: 100000000000 -# "slam", "entry", "nation", "frog", "advice", "process", "cycle", "lawsuit", "scrub", "strategy", "shrimp", "push" -- 82d818584283581ccbc2072fea24a1c834987eec75278e5de08afcffb36ace2cd7e132e1a101581e581cd4ae2183fa6dd08975133ab1732adcead1566fb0cd8bab71f457e7f5001af9178d1b: 100000000000 -- 82d818584283581ce205b82a53f55769095b5542d416d410b1a54d36ad7df153e759dba9a101581e581cd4ae2183fa6dd08975133bb1895491ee1befe31b7b9621ba8892e9b8001a79cec08b: 100000000000 -- 82d818584283581cdd145796ebe656fc3067a86b6dcdad453a710cbab3d72e287217c356a101581e581cd4ae2183fa6dd089751338b14cd671e33d2686d97276bfe0cbe2e26f001ab3e6bb1f: 100000000000 -- 82d818584283581c110f4c8d7fd1418e5ca1a7908b0f084c1123a98413b5051c1510346aa101581e581cd4ae2183fa6dd089751339b15d0027e787befa4420813529601de532001ad4434332: 100000000000 -- 82d818584283581c6b7c7cf82d424a797893e4ea2ad56a3e6f2f29132d20af99b768885da101581e581cd4ae2183fa6dd08975133eb1c6d2b0f9f9b7415e83b683934542f001001a45a0666f: 100000000000 -- 82d818584283581c9ac2939e0ae4d02058f5e7f816ec8ac83c04c5af72ad509d32b1d43ea101581e581cd4ae2183fa6dd08975133fb1d7fc65fd4350b6c930c1f9dbd97cf2c4001a2b59cc46: 100000000000 -- 82d818584283581cea38c729be1c0ba8f8117abe557a2534ec806300c327947f3dcd5bafa101581e581cd4ae2183fa6dd08975133cb19a7e46f26587588728a197021dcdeb7b001ae7251272: 100000000000 -- 82d818584283581c1dfe019a25fc9e03a86d39bdd0662e3fd6f7e004c1036b06283dfb32a101581e581cd4ae2183fa6dd08975133db1b0a8fbf5af1fcdf2d5ab0d4bb107ee3e001ade3fc6c3: 100000000000 -- 82d818584283581c70f94f804bc0a15342f391ab34d04fa6bc7838f1fda7fe5c25fb8506a101581e581cd4ae2183fa6dd089751332b1cdd932cd8194ca546236fb2d5283d5dd001a98efdc10: 100000000000 -- 82d818584283581c1a5b398a1dd7cfb9a560ff788b8c80d3f47e6ebe9f193b512f78cb56a101581e581cd4ae2183fa6dd089751333b1e303e8d0cb2c3fc00f417176e6bdd7a0001a3543d691: 100000000000 -# "ecology", "female", "item", "crime", "remember", "denial", "swallow", "forward", "call", "vehicle", "glue", "hello" -- 82d818584283581c4dbf12e9665c0599be25dba7ad03059565d559a49b82bac8c17ef2e2a101581e581c3386b69a11c80cf19e53132f01f0ef5642fb01bfce39815287f491d1001aeb2e5588: 100000000000 -- 82d818584283581ce800cebfed264872b783dfbda0af9f2cf58fea6fc8b31d27d4c93a99a101581e581c3386b69a11c80cf19e53122fe2bd31d1b15ad240662555f22c502569001a6e8887fa: 100000000000 -- 82d818584283581cb2c00b58ac4ba5013b8d52b8c6a84f154a1b2f5237d10a5e194aca2fa101581e581c3386b69a11c80cf19e53112fc38b734b21baa2c2fd102992d2abb800001aeea34963: 100000000000 -- 82d818584283581c7a81e456765b69b2bf39907523246a3bfe19309cf5d0f4af0e1f08f0a101581e581c3386b69a11c80cf19e53102fa459b5c59019734495fcfc3178074c98001ab7a1b133: 100000000000 -- 82d818584283581c29cccbc400da35a02e7e58c568ce8fb694335c0434da6ce3953a9c56a101581e581c3386b69a11c80cf19e53172f7db8e86d847dc0b7708b31d3f0854473001a7fd67840: 100000000000 -- 82d818584283581ce9630ca1a6029efb2977200cf292723a3f0b99fe74bf380b9f0955eda101581e581c3386b69a11c80cf19e53162f5e862ae8f3dc90390877057396e1d70a001a6968ece6: 100000000000 -- 82d818584283581c5d0c9cf5d21e47a8aa6d4088976848ee7835992aa3cedf20f5ff27cea101581e581c3386b69a11c80cf19e53152f3f546c62633c61bb9f62d9123c3d6ba2001abd873329: 100000000000 -- 82d818584283581c4744c2e30f4e3f1e063d90a497eb0847b36f12a5c0f2cd08781b251ba101581e581c3386b69a11c80cf19e53142f2022aedcd29b313d374eadb2e198fe39001a21d8478d: 100000000000 -- 82d818584283581c01f0798ac836dcc7fa51b9fdbbdf2221978ea490d9d8873dbeafb1f9a101581e581c3386b69a11c80cf19e531b2ffe80e184c6ff7eb012dde1535a17f714001acbe65445: 100000000000 -- 82d818584283581c6ec7ec15e063370bf2406ae9db33854decc4b1dd28c1b7b09bc37bd3a101581e581c3386b69a11c80cf19e531a2fdf4e23ff355f4f32aac8b5f3ff728aac001a0e7175e4: 100000000000 -# "spin", "dinosaur", "honey", "abuse", "exit", "coffee", "ethics", "denial", "proof", "hour", "number", "annual" -- 82d818584283581cd8b37222509457bdb5dccf4584d1d2c1a308731bb3d2ef9be005cf5ba101581e581c37ab2fd734f393c60f3d083898f057b608e1d4bf50905a9489b84830001afca605a4: 100000000000 -- 82d818584283581ce5dea42ddd697482821318c1bee4cbc9782d610b15becf66981210b9a101581e581c37ab2fd734f393c60f3d0938b9f5f98d69f48eb68aa14ad53c943420001ae8abc43a: 100000000000 -- 82d818584283581cf2b95ba6ed5b34b1953f1978d28d20f58897886dcbffb0bc9c681744a101581e581c37ab2fd734f393c60f3d0a38dffa9b65ca0749adc4b23a16f06f2010001a2de391f5: 100000000000 -- 82d818584283581c76c1f4abb7a68927d069756ae63f7ba63a4aa5d0e0deba114516ca57a101581e581c37ab2fd734f393c60f3d0b3805003e3d2b1b03a4fec32a57a34b0c00001adbd6ab33: 100000000000 -- 82d818584283581c0d9d002cc347fbec515ad3a1e66e04dc74c60fdc200139545691a932a101581e581c37ab2fd734f393c60f3d0c382b05e0148c2ebd9a38d51a985627f8ef001a908f1b58: 100000000000 -- 82d818584283581cb5aa19ccb99004b2304f443999931a6ab6811508b82f72f986ffad71a101581e581c37ab2fd734f393c60f3d0d384c0a82ecec41779172e60ad90903e4df001a4fac20f9: 100000000000 -- 82d818584283581c0e4d15948356df50fe77f471a1a7d86b81f80d8b9b041192458064dea101581e581c37ab2fd734f393c60f3d0e38720f24c44d553188acf7fa19bddecfcf001adac6ccc3: 100000000000 -- 82d818584283581ced427870c53db9ecc1b8cbfcc5b513b46767a874e99147b80a01892ba101581e581c37ab2fd734f393c60f3d0f389814c69bae68eb7ee608eb5a70babbbf001a07697eda: 100000000000 -- 82d818584283581cdc5fe9a77310e771a8140f4fad01835375df031cb4d5eea80f34b734a101581e581c37ab2fd734f393c60f3d003872c747f90146040a8106da8cefdae9b0001a75babfa7: 100000000000 -- 82d818584283581c25e2ab0bdc3ab86d7f27ef18d5374ee94642797247a3d0c8f91e3e0fa101581e581c37ab2fd734f393c60f3d013893cce9d06259be00bb17cacda2b6d5a0001a8e85f1c3: 100000000000 -# "power", "age", "slush", "tube", "island", "void", "old", "option", "lobster", "vendor", "typical", "cushion" -- 82d818584283581cfd066ee2b9f13dba441342d4a4c8c8689a6cee5798ffdaafbf7173cea101581e581cb1c0546ecc0343ab79ea8a9252f4eb2c13e5fe74c8ed4081aad0ee96001affa370b5: 100000000000 -- 82d818584283581c644a14eec992c983db8eb3ced7ba93d825655b3323a3e18d36805d2aa101581e581cb1c0546ecc0343ab79ea8b92009149a00081914878e4082059c0efdf001a770202df: 100000000000 -- 82d818584283581c65e894465aefdcfc62259b2e6d89d97b10762ff6085029eadf279e14a101581e581cb1c0546ecc0343ab79ea8892f6ba304638add9cd6800b1434df1ec04001a577ce534: 100000000000 -- 82d818584283581cdd63271d1ef066c8ffceb512a3c8ed530ef8341a956d004dab2ab6f3a101581e581cb1c0546ecc0343ab79ea8992a4578eb925496ca118f778e2fbe0ed4d001ae2b913d6: 100000000000 -- 82d818584283581c7da4a36f30b1e4986305494b7c46603cbf88f5bbbd3a19a4e7a60e78a101581e581cb1c0546ecc0343ab79ea8e92056762fac85449c387c860fc648ff2ba001a10e94af8: 100000000000 -- 82d818584283581c50a601dca8b90763207023218c778f42214c0fbb5837716b3011ab4fa101581e581cb1c0546ecc0343ab79ea8f92b303c06db6f0db9637bf289b137ff303001a440a4ad5: 100000000000 -- 82d818584283581cfe21616ef2d8936173e5e3c316bd3f84b4daa5eb87bf9b5ec5423360a101581e581cb1c0546ecc0343ab79ea8c92a92da713ee1c241c28dbd0be07b0f028001a7fc49a63: 100000000000 -- 82d818584283581c6e998080cd5ae3a3c48a19060c7793ee419490842c04995f3324e10ba101581e581cb1c0546ecc0343ab79ea8d9257ca0487dbb8b6efd7d1985db69ff171001aacbfc37f: 100000000000 -- 82d818584283581cf240dc6ad9cf8af7a623e00513e8fc12a2b4a9c095bb0d696c266cafa101581e581cb1c0546ecc0343ab79ea8292e70eff91a7056ad84938018b3553e74e001a055224be: 100000000000 -- 82d818584283581c0df9b191172763a1ea5cc3b7d19ae74ebfa4061b49d2495ecf7639a2a101581e581cb1c0546ecc0343ab79ea839295ab5c0595a1fcabf92ec929e442e897001a59291401: 100000000000 -# "drill", "orphan", "hero", "throw", "stand", "ecology", "hat", "gauge", "antique", "hotel", "pistol", "rice" -- 82d818584283581c15310692c61a36972d8b0eed436c3614a0f317fe99a8bf020118b9bba101581e581c84068da967f98d23b7f54787a05763aa88f84190b82e42623fd3090a001afd97f98a: 100000000000 -- 82d818584283581ce180b65991b4d6d2f0bf2cde0d35551062de6f2bfb8d220e787287ada101581e581c84068da967f98d23b7f546874b33fe7ac85960bd522ae65503aca7b3001aad9ef9e2: 100000000000 -- 82d818584283581c9633d9db3f57eb503b21455466fddef428d5f0e4d6b2c103a7ed44baa101581e581c84068da967f98d23b7f54587f10e994b08bb7eeaec258a49c784455d001adc8e50dc: 100000000000 -- 82d818584283581c95fd7a19524a7d0a160278488d547965c867655363de64d7bc934593a101581e581c84068da967f98d23b7f5448797ea331c481c9d1787212e3d8b5de306001aaf029ef4: 100000000000 -- 82d818584283581c1f48541865c98d8e81b9060b612671c1ac6d0b9ae56824c8ca90d409a101581e581c84068da967f98d23b7f5438742c6ceec877dbb44211dd2304f3681b0001a2056198e: 100000000000 -- 82d818584283581cc9484503de478c0fd2f6a4a6be6645820cf5bcaba241ebb1aeafcecaa101581e581c84068da967f98d23b7f54287e8a169bdc7ded971bb187624130f1f5a001aabd76c29: 100000000000 -- 82d818584283581ce5766d7914bd3c33cdce2d5d58d853c7aa59174bb702bc28bec398d6a101581e581c84068da967f98d23b7f54187937d048e0740f89e55141a18d7e7bc03001ad54341ac: 100000000000 -- 82d818584283581c2aba7ad4b734813b066f21e7db374212e818924867bcd529621a1a3ca101581e581c84068da967f98d23b7f5408739599f5e47a116ccef0fbe0b9bc05aad001ac71afc2e: 100000000000 -- 82d818584283581c11344070ee94f776a6576f4d5aa425ad7db880ca1a79d425c3001c6ea101581e581c84068da967f98d23b7f54f87617a8c258aee4e27e75122c51f0d1bbd001a9f04fa15: 100000000000 -- 82d818584283581cb2000d315c2a5cd0492b9d924b49655f923fc9993c4f2d2b025a1b86a101581e581c84068da967f98d23b7f54e87075627f6c94f6d54814dc6b8e3e5b866001a6bd0074b: 100000000000 -# "present", "trophy", "digital", "salad", "kick", "apart", "airport", "stuff", "prosper", "peace", "drive", "adjust" -- 82d818584283581c920977be44245fde74254804bfd45b97a635ca9c4222d1bd96f022a7a101581e581c4b12308bd5cc616599d7f509a55ac8dcb9a259cc0286944b632d4007001aac494d80: 100000000000 -- 82d818584283581caca379534ab5c3ee9791d5eee78c449e2fbcc5b7ff7d1dc77d0ed7d3a101581e581c4b12308bd5cc616599d7f40935f2d9171881d2b363cf5e4b70b800e4001af2eb741c: 100000000000 -- 82d818584283581c3f6e4a315562c99e93abd86f86ac7ebc49fbdb5e9545abb33d463572a101581e581c4b12308bd5cc616599d7f7097b2ba566fde567fd40f3ff4b4917bf4d001aa912a8aa: 100000000000 -- 82d818584283581c7248b64120cd5303fb04ca633d8e68b6b1051f218d45312d9a03df01a101581e581c4b12308bd5cc616599d7f60910c3b6a15bc4e0e4a13cca4b56a27f2a001ad0f20994: 100000000000 -- 82d818584283581c1dcc65d36335cf8d4e26b18c5408e62f38b324da207df9164bb7fd99a101581e581c4b12308bd5cc616599d7f109f4b80ec9321c3d6a86abbd4a9759427a001a5815419d: 100000000000 -- 82d818584283581c89d36cd4dc6ac996317940b02430e01b7a3affafac9ac014686c3b88a101581e581c4b12308bd5cc616599d7f0098450200491fab551e7f4874aa4e40257001aff3bcf24: 100000000000 -- 82d818584283581c9f9acf1fe9ef3dbecdfca934fec8065de5adbfdadbfb518a66fd8517a101581e581c4b12308bd5cc616599d7f309ca89eb52765f4b9bc418294b7d43c1c0001acae0f011: 100000000000 -- 82d818584283581cb93d17e421146a5e44ce158c3290b8ece298116da409329ddfccce3aa101581e581c4b12308bd5cc616599d7f2095f21fd8dd43dc4822562f34a8ace819d001af55b2edd: 100000000000 -- 82d818584283581c19b89e46f317adde6d09a76c48665ea6283f7d092022d5e1c225ea1ca101581e581c4b12308bd5cc616599d7fd09079e3b04c8af9290fb3a424dfbd43b21001a91a31855: 100000000000 -- 82d818584283581c515db6fa3b198041dbf939d0ee4136ced5576a557fc495c8a24ca616a101581e581c4b12308bd5cc616599d7fc099c354d3f268e0b785c840c4d0860fcfd001aa8dfac6d: 100000000000 -# "fluid", "brave", "disease", "rough", "surge", "city", "ignore", "speed", "borrow", "print", "pause", "smile" -- 82d818584283581c62e44212c7260180191bc6ba5857d7a7c47032c3f131c0f10024dee6a101581e581c2c348996f5f631514b3c2cd24003fcc1dd09a43b7f55051204063ac8001a064bc55b: 100000000000 -- 82d818584283581c73e584cdbdf999d4fcc6cf71667daecab1f7488b1ce3039b26ae81cda101581e581c2c348996f5f631514b3c2dd29a3cfeede94fd6d91414f910b28067b9001a33ed3c8a: 100000000000 -- 82d818584283581c649bbcda2a6cae1897b5ff6f1dcd05af442a069449efb6855763e917a101581e581c2c348996f5f631514b3c2ed2f975001af6950878aad2ec0f60fb94aa001a151843c1: 100000000000 -- 82d818584283581cd0dbd4f4882ece6daf028f05d415cbb02f202eb75f3f10e059b72728a101581e581c2c348996f5f631514b3c2fd253af024602dc3a164091e00e0e76c29b001a0be5d961: 100000000000 -- 82d818584283581cb1c29a4d5fa67d056eb5d548b95dd961142e2fc6c3032c704f27dc63a101581e581c2c348996f5f631514b3c28d2ce1df311adf1dac2285b36164c1b8403001a143470de: 100000000000 -- 82d818584283581c751ff7e91c405bb5941c7ebd023de57271d7e1f67772dad16b68c806a101581e581c2c348996f5f631514b3c29d22857f53db9370d61be192a15fa95b1f4001ad81483db: 100000000000 -- 82d818584283581ca6e24dca1d68ebe48345f780e4bbf50ce47fc47fd8d7e4c26fceaccea101581e581c2c348996f5f631514b3c2ad28790f769c57d3fff53d81d14a810dfe5001aa73da077: 100000000000 -- 82d818584283581ccbd6bc1483e3c50592bcf75c32537e65b4d8b7946b09612e644947b9a101581e581c2c348996f5f631514b3c2bd2e1c9f995d1c3719de9961113568b0cd7001a218bc96f: 100000000000 -- 82d818584283581cdcf5ae06547c71c84f5cad4c26e4b5401949af4cbde7e723b4c68cbba101581e581c2c348996f5f631514b3c24d25c38ea617cd9114ad260671a9430ce3e001a06e23ec1: 100000000000 -- 82d818584283581c0bad30db4aead68882067794baa666bb8842172d6dd12d8bf77f832ca101581e581c2c348996f5f631514b3c25d2b671ec8d881f44e8671f5b1942abfb2f001ac8a8577b: 100000000000 -# "begin", "decorate", "smart", "mesh", "cannon", "gas", "toe", "model", "vacant", "survey", "victory", "cat" -- 82d818584283581c0c5bee0d6312383d38adf4ce0d48201809c7537e921f7f2594d6b2d6a101581e581c1e729eab745d4121db5d779eec02ed1e634d1ceecb075c2f0d8b77c5001ab00263b3: 100000000000 -- 82d818584283581c84d82365fcb636ece95ab3b03821d6450e8766ca165be3acc5c485f8a101581e581c1e729eab745d4121db5d769e0f3060170ba2c91e70d4b4218eac065c001aec99fa44: 100000000000 -- 82d818584283581cbe668fd4d71f83c3f1499e30b5913340de2ab7db501db347628b951da101581e581c1e729eab745d4121db5d759e325dd30fb3f6764f14a10d140fce95f2001aa1fa5564: 100000000000 -- 82d818584283581ccc3e167494a53f15539778a74a1680f717072130b98a6ef69a604398a101581e581c1e729eab745d4121db5d749e558a46085b4b2480b86d660690ef2489001a679f7d7f: 100000000000 -- 82d818584283581c672cfdc1b5c7c58313c9db258460038f2d6a08439724150c672582dda101581e581c1e729eab745d4121db5d739e7db7b90003a0d1b05c3abff81011b41f001afa509753: 100000000000 -- 82d818584283581ce8125cdf0c5ac29ec82b1623a36b91a68119b3f453f74576d9fd3bd7a101581e581c1e729eab745d4121db5d729ea0e42cf9aaf47ee1000718eb913243b6001a3764d8ad: 100000000000 -- 82d818584283581c43c9391746128a90a834bc280c08c1a122ff2f72f2a2b89c8215fa72a101581e581c1e729eab745d4121db5d719ec311a0f152492c12a5d370dd1254d24c001a79128138: 100000000000 -- 82d818584283581c569b9534b65499521928df9d980fb979ae1e0bc0a15d578469449c89a101581e581c1e729eab745d4121db5d709ee63e13eafa9dd94249a0c9cf937561e3001ab755d3e1: 100000000000 -- 82d818584283581c191e611885d136b5989266321988507bd9e56f1da21227922fcd03aba101581e581c1e729eab745d4121db5d7f9ecf99535b23a8b168aaa2959c057ffe10001ae76041db: 100000000000 -- 82d818584283581cb315c63c6bacf9ad9d0319177f6e80da77f9ede4ee8ffced03609ac6a101581e581c1e729eab745d4121db5d7e9ef2c6c653cbfc5e994e6fee8e86a08da7001a2f930650: 100000000000 -# "liberty", "sunny", "impact", "source", "foil", "arrive", "inch", "find", "obtain", "wet", "uncover", "huge" -- 82d818584283581c4b9a7a4d113296ec71cf47e414942d7e2546c14c6497334810a40163a101581e581cbdd9f80358164657dd667a2cda46458c0ba5b6ce19d36563a2ca4018001ab8bf0df3: 100000000000 -- 82d818584283581c388c3c8bde830844b082a7fbde22568eb1f455006f49d7bddeb98dafa101581e581cbdd9f80358164657dd667b2cf8d2e86f730316fdf1379c2f0eefa047001af0160ca1: 100000000000 -- 82d818584283581c03f117e56edee81ecee05e8315818f644bbf34516eea490f6b1d71baa101581e581cbdd9f80358164657dd66782ca32efec43be8f7716909f9caca8180b9001a1991ea90: 100000000000 -- 82d818584283581cd0fedddb83eba10b3def168f5a0df441a23202c109edf6c611a5c310a101581e581cbdd9f80358164657dd66792cc1baa1a8a34657a0416e2f9736a6e0e8001a99b9a07c: 100000000000 -- 82d818584283581c346b2a13d2644dc9a25e7a2f62e1e70ab6cc058d790a9250435b5acba101581e581cbdd9f80358164657dd667e2c4877d31aab1e34887a663f94515cc1d5001a1c5d114a: 100000000000 -- 82d818584283581cab5ef497a6610c5553e0d083818c2892c509dedc7dc79d3a4bd3d157a101581e581cbdd9f80358164657dd667f2c660377fe127d93b652cb7560bd802105001af53691c2: 100000000000 -- 82d818584283581c5b1ac3e102735636f00af869002a48e99301fb16e3646aa0d7753f3aa101581e581cbdd9f80358164657dd667c2c115f8c53db61752bca9cd2fb79130177001a69aeb441: 100000000000 -- 82d818584283581c9e42d8aae9b23c3909d6d0023480033fa37122fca703614465a49669a101581e581cbdd9f80358164657dd667d2c2feb2f3743c0d459a20109c8e53761a6001a2a7b2b6e: 100000000000 -- 82d818584283581c79e79b37ac08b8e41d0b4a26561f3776e3b7d1d0ad38cff8940ea070a101581e581cbdd9f80358164657dd66722cfee5286fccb1bb5b58acb20144a73f9d001ab968900a: 100000000000 -- 82d818584283581ce0f6f5bb8a1a70f043e54d4761d5d4ef5d4a176ddb2678d50d4df13ba101581e581cbdd9f80358164657dd66732c1772cc5234101b8a3011e9cdafcb9fcc001a69a07db8: 100000000000 -# "own", "pilot", "advance", "stock", "pizza", "over", "february", "cheese", "invite", "hello", "tell", "distance" -- 82d818584283581cb50094440e6af963e8eba72a2879352cff6cbaa22c7c9bd92e164b90a101581e581cb2748cc7e2bc0be2b352d2d9a1704033b24ee4b028795b7b0ba25fef001aca285d3f: 100000000000 -- 82d818584283581ce6e871f552923d9b90953c85e74aed3ecde1dfd4e48f05f3266597fba101581e581cb2748cc7e2bc0be2b352d3d9a3ec2f36107d404369c48a1b9ff371dc001a0de92052: 100000000000 -- 82d818584283581c8738b3867478a86888141f65f08f4f534d757cf65a73e1bec2d14f78a101581e581cb2748cc7e2bc0be2b352d0d99878612df6f12b8ca7e2fc3ae4fe3a15001a83d0b065: 100000000000 -- 82d818584283581ce7527db8fbbf6ebb9fce5a8238ad4ba6ce65623d153637afa59b2217a101581e581cb2748cc7e2bc0be2b352d1d99af450305420881ee82d2cdb77504d02001af09fa8b7: 100000000000 -- 82d818584283581c67dcb59fb407453b8de6f5d10584bdb078cf7aae4f95c45262b1434ba101581e581cb2748cc7e2bc0be2b352d6d9b360fe3e2a0855fa2aa618fc59e8a8a3001a33d95cc9: 100000000000 -- 82d818584283581cb4427a4edee467181a488db03690ddafa592b258d0154ec3b0602c08a101581e581cb2748cc7e2bc0be2b352d7d9b5dced418836b18c6bf1479ced39bb90001aa63ec485: 100000000000 -- 82d818584283581c2ca199f6161590b7d43db3325a473c667b5ec3d04c94bb7a24520a1aa101581e581cb2748cc7e2bc0be2b352d4d9aa681f396eab9cd5a90fbabb324584c9001a1901c98e: 100000000000 -- 82d818584283581cd4a251f22812db7cd32356dd58edad03637e2dc004460511730ca9eca101581e581cb2748cc7e2bc0be2b352d5d9ace40e3cccd9f867ea5ae95bc69696b6001a507b92d2: 100000000000 -- 82d818584283581cbe35f924e2705c3685b9ed58207cfe0c84aff916073cc6fe89c13342a101581e581cb2748cc7e2bc0be2b352dad9c550bc4aa2c1c5432dd3d57ca82ef257001a93d84cde: 100000000000 -- 82d818584283581ca6e2f8d2fd399e2d0df3301e894c3ad1dac2086b908e6dc5664b9048a101581e581cb2748cc7e2bc0be2b352dbd9c7ccab4d00f021d66d1e051d3c800445001a21744cd5: 100000000000 -# "alert", "satoshi", "two", "limit", "bag", "soldier", "hair", "scatter", "zebra", "rural", "dizzy", "cry" -- 82d818584283581c71ea17e9851a79dfe03c2a32ce3f8d78afaee1fbcdf6851c7186601ca101581e581cc4f6ebd088ed342394693b9fd34257ef6af7a4cd06a77d5ca79f8ff1001a7d52bf0f: 100000000000 -- 82d818584283581c49fbacfba109a7963cd0f837a46785498880f77aa4d9bfddeb4e8482a101581e581cc4f6ebd088ed342394693a9f27ab4f08992e1326a01c0e94ea85118b001a1866a85a: 100000000000 -- 82d818584283581c38e56de57cadefd8214f70785aae2859a79b5a972c59fe6c377293b3a101581e581cc4f6ebd088ed34239469399f80134821c765817e39929ecb2d6c9324001ab19d49d0: 100000000000 -- 82d818584283581c328931eb6a6caa876032f1c3e80ef267d445c05d80d8a2126c9b8cf3a101581e581cc4f6ebd088ed34239469389fd47b403af59cefd6d2072f03715215be001a063d00c1: 100000000000 -- 82d818584283581c0281ed1d97ee0788264299a4e656f72e5c8deeaad141f63b217dd4f1a101581e581cc4f6ebd088ed342394693f9f79a1758bb21aec6ba1d03b7e9a06888b001ae24c8cad: 100000000000 -- 82d818584283581cc94ebcdae2f80ad756ca7f72c98fb8918a41359cb45697a030449738a101581e581cc4f6ebd088ed342394693e9fd2096ea4e0515ac43a46ccb5ddec0925001a1e23f6a9: 100000000000 -- 82d818584283581c084899e3204d1d77f693aebb74b0e691ddb139e869d75914b665de8ba101581e581cc4f6ebd088ed342394693d9f267266bd0e89c81cd4bb5ced20d38bbe001a05d3c0e7: 100000000000 -- 82d818584283581c4503e4390e7be122405e867430f6b308e04f36ec84cbdfd0fc2afa40a101581e581cc4f6ebd088ed342394693c9f7fda5ed63cc036756d31ed2464b90d58001ab7701249: 100000000000 -- 82d818584283581c27f17691f02f146abe9feb664dd3a40d8891dbb377f683957eca9009a101581e581cc4f6ebd088ed34239469339f82851ab7dbb01691d1530119c1d19ebd001a65a4544f: 100000000000 -- 82d818584283581ca730fd7eac560921a22ff7e8927759cc835fb61112f52031b516ae7ca101581e581cc4f6ebd088ed34239469329fdbed12d009e884e96ac9915004b82057001a4abde4b5: 100000000000 -# "phone", "food", "they", "nose", "cross", "music", "core", "leisure", "menu", "curve", "bike", "rate" -- 82d818584283581ca6d73ae5d5e2a5db5abff87a37d02a71609c2210704f681434580854a101581e581ce5ed408ac1f2cef787736092cafb2712ce7e7ae5073f7edf2bda8958001a9846d696: 100000000000 -- 82d818584283581c087542093529b9157198c0d89226f5a8f68cb82734e32b38071a2913a101581e581ce5ed408ac1f2cef7877361925a79bb960b9921fd4a3c6a520b3a7f68001a30c210d3: 100000000000 -- 82d818584283581c18d7f75d6de4bfab9b8a3307f654a124d36d03337693912ebde07b33a101581e581ce5ed408ac1f2cef787736292eff64e1b49b3c8148e3956c5ea997478001a015077f7: 100000000000 -- 82d818584283581c8ea354f31011c5b63be916a6beb6bdd2e6bf040e8ef3f04af62abdf1a101581e581ce5ed408ac1f2cef7877363927f74e29f86cd6f2cd1364238caf96988001a2aa1b7d0: 100000000000 -- 82d818584283581c80d0f30f0ab98b8ee5a7475d94c84740ce4aab8ec8d8902bcfdc4308a101581e581ce5ed408ac1f2cef7877364920ff27524c4e7164414342eaba9595f98001a9f2300d3: 100000000000 -- 82d818584283581c6a6eb14c332d0ab0b9d161af93c44194250a54e83cecba1d511eefd7a101581e581ce5ed408ac1f2cef787736592a46f09a90102be5b57311a1e89b954a8001a463e8d84: 100000000000 -- 82d818584283581cbebe6500e173e9c250b3c79e2617c33ff569222e6a006a0f06ef9064a101581e581ce5ed408ac1f2cef78773669234ed9c2d3f1c65739a2e069168194ab8001ae4bea718: 100000000000 -- 82d818584283581c1ea6e3f8652fcce48216a6b16090bcf299be3627c72c924b87f66211a101581e581ce5ed408ac1f2cef787736792c46a30b27c360c8bdd2bf20348793fc8001a6a75a6d8: 100000000000 -- 82d818584283581cfc96c1120df9eef5d4f5309f6140fac1c9e09336bfaec44415dc5bb9a101581e581ce5ed408ac1f2cef78773689254e8c336ba50b3a22029de7627d934d8001a4fbebc83: 100000000000 -- 82d818584283581c92c73516e8205e6cb472bc10a3edf4da304fac66c15b366d8ca31ceca101581e581ce5ed408ac1f2cef787736992e96557bbf76a5aba6326cae906392ae8001aa66a0dfc: 100000000000 -# "truly", "wagon", "soup", "submit", "tail", "first", "push", "split", "concert", "work", "source", "cart" -- 82d818584283581c8dd483e5c85a3d23869496eab1c2ee9a2a897d1f4b0e1cd1c6a6289ca101581e581c45d1c31c66576802ee209c253eda8b6d785a0dec031a04fef5fd4ced001ab41e4afc: 100000000000 -- 82d818584283581c0dd6c5995cfb47361c2203946b7b088c432360513a754d211478f5c1a101581e581c45d1c31c66576802ee209d252b8705c58bc8dc59aaba234c63d63dd1001a4c72bad1: 100000000000 -- 82d818584283581c472f96f315f57ada567da08dc56b75bf7f53b66412db6b60305bba4da101581e581c45d1c31c66576802ee209e2513347f1c9f36acc7505b439ad0ae2eb5001ac0583647: 100000000000 -- 82d818584283581c8473e6cb8426e48e99c55414d745b7e20007c58fd741975e9b1f3c10a101581e581c45d1c31c66576802ee209f25fbe0f873b2a47b35f7fb62e83d871f99001a38b281b5: 100000000000 -- 82d818584283581c6eeab49605435647ceaf24c10c34e3512bb8afee8741be3ed0247a16a101581e581c45d1c31c66576802ee2098259e26a50f2ba2cf346a9785c5409c895d001af3dec021: 100000000000 -- 82d818584283581c6f987438aecf8d6f9d2a5053c29c7f403d1cc062c409b2f4057e1811a101581e581c45d1c31c66576802ee20992586d31e673e109fa21038a513ae747a41001a5813d1e2: 100000000000 -- 82d818584283581cdc2ffe5c2d3169af3acaf91ca7d05c79d541083f20e4ee4772f5d65fa101581e581c45d1c31c66576802ee209a256e8098be517e6e10b7d8c4611b4d6b25001aa2a0e11e: 100000000000 -- 82d818584283581c9aa99013787251a2cd2784d9bc89355083af7fbc99cb781ae58fdcbea101581e581c45d1c31c66576802ee209b25562d121665ec3d7e5d79e4af88255c09001a210b72c5: 100000000000 -- 82d818584283581c3b0f36afe0a8c8bbc4229388b4913b94ce896ef0595dbb4a63a64519a101581e581c45d1c31c66576802ee209425f972beb1dde9917dd014078d8b3ac6cd001a4bdab5b5: 100000000000 -- 82d818584283581cd36f257f1167ffb39cc25a748cb88407d0258b04cc85a60782f7b966a101581e581c45d1c31c66576802ee209525e11f3809f15761eb76b526dbf812b7b1001aab1b82dd: 100000000000 -# "symbol", "stage", "umbrella", "high", "sand", "tilt", "slight", "open", "kitten", "oil", "fade", "minor" -- 82d818584283581c1fabaf7254bdaedfc4ffcc6ab3fb0eda05b846f960355c2f1a6503dba101581e581cf41397e2b8bbbae2ce1fec4e64d2e344bfe49fcf56127a05a8be2bfc001a7779f259: 100000000000 -- 82d818584283581cdd142f016a90739ee43ba5402ee876218c3063dcbcf0db7d9f9a549ea101581e581cf41397e2b8bbbae2ce1fed4ee80f356f0520d16d1aa9afcd0c438ade001a264259a3: 100000000000 -- 82d818584283581cb4dfc247954246f7cee543d16d451aa38ba6f437803227ad4c62fb88a101581e581cf41397e2b8bbbae2ce1fee4e6c4d86994b5b020cde3fe59571c7e8c0001afb642946: 100000000000 -- 82d818584283581c064b449012835232b96e18dfa1cd43e9d33b79c23dd37d8b3e854d23a101581e581cf41397e2b8bbbae2ce1fef4ef58ad7c3919633aaa1d61a5ed64b47a3001a474eb6e6: 100000000000 -- 82d818584283581c4269c2d8599da4ac54062aeb736a5602f89c7c85b46f10e8c73d31f5a101581e581cf41397e2b8bbbae2ce1fe84e4fdc9e9ba6f7da5648b7a3e414adb172001af3bfba5b: 100000000000 -- 82d818584283581c2acef6c0158e3401aa76b998744d2904670420fdbb6be092172b0600a101581e581cf41397e2b8bbbae2ce1fe94ed319f0c5ec320cf50b4ed9ac79311055001acd9f1c55: 100000000000 -- 82d818584283581c63309772d6ccd73291f54c47635b0d7b82562801eb00acda577e4534a101581e581cf41397e2b8bbbae2ce1fea4e5c5741f0326e3d93cfe40e75deb56e37001af9aa3ab4: 100000000000 -- 82d818584283581c78b92e9f3291057d2bd756cc2238b57af055e277d485eafd540893f0a101581e581cf41397e2b8bbbae2ce1feb4ee094921a79a96e31937b443d433acd19001a08e00e94: 100000000000 -- 82d818584283581c6b5d4650c5fb36b4cdbf7d714de66ddeea33899527f7d48913d60d89a101581e581cf41397e2b8bbbae2ce1fe44e3ae659f28d0a16de395ccdc3819b37e9001a40eb63ee: 100000000000 -- 82d818584283581cd455f92c9cdd958656e835df9002cee505c0ae7e117dffcb73120c77a101581e581cf41397e2b8bbbae2ce1fe54ebe23ab1cd445477cfdf2028ce61f96cb001a96bfbbfa: 100000000000 -# "tumble", "grit", "dumb", "game", "raccoon", "giggle", "valley", "audit", "army", "mandate", "around", "basket" -- 82d818584283581c341b23caef57a0b7d11ff2f06cecd72dceb0cb9a96e982b1470f1a6da101581e581c9f0e0a08998c90eff08caba4a419eac6a49aefc37a047f34745659bd001ad65cb4f2: 100000000000 -- 82d818584283581cdd38cf7e9ab80ef50362417db84d371d119d7d4a0a4bdce359e0b36da101581e581c9f0e0a08998c90eff08caaa4d73237857bab32866bfede555ebea010001a765fcc98: 100000000000 -- 82d818584283581c3a8749ff0c7daf9407ac75851483c9cbae707e656692042d713e542ba101581e581c9f0e0a08998c90eff08ca9a40a4c844352bc75485cf83e774826e863001a8344aec3: 100000000000 -- 82d818584283581c90b436f5026776b23544ccf103170e3976befc3f530a63907976654ca101581e581c9f0e0a08998c90eff08ca8a43d65d10129cdb80a4df29e98328e2fb7001afdfd328c: 100000000000 -- 82d818584283581cc88a4a65862b3e77bcf3eaa646c47ac8cee78ccaebd753b1bd780f11a101581e581c9f0e0a08998c90eff08cafa4d8b4b5cd4957e3bab71cffaecbb63b70001a62b28ada: 100000000000 -- 82d818584283581c6110ecb32a7a44a1a714cadfbcf802b95e41733c8c4d1fd60c9a12f9a101581e581c9f0e0a08998c90eff08caea40bce028c2068267da8165fd0b51e83c3001a49d92323: 100000000000 -- 82d818584283581ca5fe80c9ef56444fd56f0b3c316efc9dfe7bdae2b76ca4aa6cbfbf9ba101581e581c9f0e0a08998c90eff08cada43ee74f4af778693f9910bff19f86ca16001aba70886e: 100000000000 -- 82d818584283581cdcf2452faf49734cbc6a7552e764b1051863d8d59c00551b8e830ef6a101581e581c9f0e0a08998c90eff08caca471009d08ce89ac018a0a1f138aee116a001ab25520de: 100000000000 -- 82d818584283581c196258c9747bfccf702db7da2ae97816c7515268bb176df121422bbfa101581e581c9f0e0a08998c90eff08ca3a441e352b95a2108d600d47e3fc5959457001a2fe5abb1: 100000000000 -- 82d818584283581c6dae149c1c054bc698731768dcfda06661876f25d044fc73ad7cd166a101581e581c9f0e0a08998c90eff08ca2a474fc9f7731324b98f1cdde60affddbaa001a2a3e62d8: 100000000000 -# "owner", "foil", "vivid", "cloth", "bright", "hurry", "nerve", "help", "sister", "jaguar", "teach", "loyal" -- 82d818584283581cc9373e75323dcbc52c5910a70861111902f57b0f65dbc210af834940a101581e581c76ce71020a8d27c1474621a961b93b7ae3ef5dcc521dd6a9d43a964c001a2286befa: 100000000000 -- 82d818584283581cc5580539764b2b76216b0764ba8a3d5b11ba48aa428194eaa81cba23a101581e581c76ce71020a8d27c1474620a97f719ed69c2fc0b672769eab5f9ceaee001a2b930665: 100000000000 -- 82d818584283581ca6154bd863415b4e2684f3230a231ac20c80491c4ef13a8b4694521ba101581e581c76ce71020a8d27c1474623a9204976c1707099f7126b45a6be77ed07001abb2b62f1: 100000000000 -- 82d818584283581ca8dd1347ad14cc2886f9dbbaa565a079141ada49de43a4c4b7c09591a101581e581c76ce71020a8d27c1474622a93e01d91d2ab0fbe132c40da849d941aa001a57dc7193: 100000000000 -- 82d818584283581c1b1b69869c4b0fbffbde6d424bae964efedb976b8f3df1093f15682aa101581e581c76ce71020a8d27c1474625a9dfd8b008fef0d422d3b8b4a2a8b444c3001ab6f9cffc: 100000000000 -- 82d818584283581ceefe6e3116c313fa1553b640cf8050e420217d55d82e3eaaceeedbb6a101581e581c76ce71020a8d27c1474624a9fd901365b730370df3117da433169965001a39b10f99: 100000000000 -- 82d818584283581c287582eacdef78bc3707f1f3ff528f11fabba501f43ec31d70590118a101581e581c76ce71020a8d27c1474627a99e68eb4f8b71104e9306249f92f19b7e001aba0b449f: 100000000000 -- 82d818584283581c5b9549b7edf97b84086e18cca54cf6c5bf8153280dada4e87c449649a101581e581c76ce71020a8d27c1474626a9c1204eac44b17238b35feca01d53f020001a1b02ef61: 100000000000 -- 82d818584283581cf3853a212632a53414d4025247c4d2ac2467f6c4bb8a29f3ec46c55ba101581e581c76ce71020a8d27c1474629a95df8259718f24b795354939b7c2ef339001a0d0cf1f8: 100000000000 -- 82d818584283581cf16053aabf83c6839431680d1b796aec48d6c12f853b09738053a26fa101581e581c76ce71020a8d27c1474628a980b088f3d131ae6373ad5b9d079047dc001aef2f7ce9: 100000000000 -# "slender", "topple", "urban", "axis", "swamp", "guess", "dizzy", "correct", "visit", "valve", "ivory", "citizen" -- 82d818584283581cb969c0d737b0b03eff4676d71f738ae86d06f87c1e8eccb483d45fd1a101581e581caa19b69abc944d54f3192c0d34162f38dae844b79ee3f48fe9d1cd55001ae2afd626: 100000000000 -- 82d818584283581c81ead0ad46087b11d933cfcb7ae5ac5693ca089125bca3519612b4aaa101581e581caa19b69abc944d54f3192d0d9a672cb9274dcdd2a7233dd1905e6374001ad57cc5a2: 100000000000 -- 82d818584283581ca369abc86a2cb89bb61ca70315c19fc1c72f9204f0a863919d42ef3ca101581e581caa19b69abc944d54f3192e0d00b9293a75b155eeb063851238ebf892001a2fd35963: 100000000000 -- 82d818584283581c972bb6b60218c7379f61391ea9de0cfd258765f75909d061d9d0b9c3a101581e581caa19b69abc944d54f3192f0d660a27bbc215de09baa3cd53df778eb1001a7224e7dc: 100000000000 -- 82d818584283581caa9156df151a43f74a683c474f48517a1c662c004a6ca61809984deba101581e581caa19b69abc944d54f319280d97d03934a45723497ae3d38a4c9f77db001a2259964f: 100000000000 -- 82d818584283581c32c1461a75eea9fa37ce694734819d5515f9571bcbeb12ded8c0e251a101581e581caa19b69abc944d54f319290dfd2137b5f1bbab6483231cccf32b0dfa001a05dc234a: 100000000000 -- 82d818584283581c237319e413b490e1fe1218acf0607d714bcfe65c920ac7df485af708a101581e581caa19b69abc944d54f3192a0d637334363f2034808c63640d9bb8a218001ade4c9537: 100000000000 -- 82d818584283581cc5e7f35949bff99e7b0a2a208225958f9620b430cb5a5bf157d758dea101581e581caa19b69abc944d54f3192b0dcec431b78c84bc9b95a3ac4e42453837001a59897913: 100000000000 -- 82d818584283581cd4540f08489c4056914dfc7ea34509f2ef4f110e13a53a3dccba4b53a101581e581caa19b69abc944d54f319240dff8a44306ec601db55e3b285af6c2161001ad7d51b97: 100000000000 -- 82d818584283581c575143c43e21b8a1c4b14a1bceb764a034fadacb3b4b747e5f4e3c1da101581e581caa19b69abc944d54f319250d65dc41b1bb2a8af65e23fbc656f9b67f001a51b1c4f6: 100000000000 -# "humble", "song", "wrap", "future", "cinnamon", "accuse", "bright", "speed", "inhale", "alien", "theory", "main" -- 82d818584283581cda12e94c9312728947c5cf01dd1cdeb8771573d8f6f18fdd9b4acc9aa101581e581c0761af91c71a30cfa022bf14384e0f055664ce51519dac62cc5a7dab001a38005fbc: 100000000000 -- 82d818584283581c8a90bbaa8c791164c5e5fe51b28dc3e796e9c332f813a6fbef54f28ba101581e581c0761af91c71a30cfa022be149914c5a85539cd56210985af9d413afc001af4528d20: 100000000000 -- 82d818584283581c3495171b8391fcf877a480d8161c8aeb2ee32a350925bf9b54ae1fbca101581e581c0761af91c71a30cfa022bd14ffda7a4c550ecc5bf1745dfc6e28f74c001a634aae04: 100000000000 -- 82d818584283581c13a5a00d5698eb9d6761355ab8d60943e03c4fac9c6af302ec480e48a101581e581c0761af91c71a30cfa022bc1460a130f054e3ca60c1e03549400fb49d001a8e0d0cf5: 100000000000 -- 82d818584283581c4a788d25e3536b07af6b2e3666de090ca50e18a5391c46d5528932b6a101581e581c0761af91c71a30cfa022bb14c167e69354b8c965914c0e9611f670ee001a649f21b6: 100000000000 -- 82d818584283581c4d350be34bd637e32f6e71a256cf90a76925a60ec27fab79f63ae72ea101581e581c0761af91c71a30cfa022ba14272e9c37548dc86a61b8e6e2e2dc2d3f001aa0cb3825: 100000000000 -- 82d818584283581cf9689499c29fa126db654a63e67270729e7236532c6083c3e34fcda0a101581e581c0761af91c71a30cfa022b91488f451db5362c76f3124bf2fb4c3ea8f001a43e26796: 100000000000 -- 82d818584283581c13e086dd8626c457cb4731a82648b5593771f0e8d4b2ceca20ecd544a101581e581c0761af91c71a30cfa022b814e9ba077f5337c6740190977c85aaa7e0001a8fc5e4f3: 100000000000 -- 82d818584283581cc537a62bcd0d84d90236a8aa86f76cdd4b68513b6bf110784fd03cc1a101581e581c0761af91c71a30cfa022b7144f81bd22530cc579d1fb6fc956916431001a362d9217: 100000000000 -- 82d818584283581c81e29e9303ef197fc0217dae9bdf54c473f8658a257c92d8c61bd05da101581e581c0761af91c71a30cfa022b614b04773c652e1c37ea167481628782182001acd2f2799: 100000000000 -# "purity", "latin", "danger", "dutch", "avocado", "endless", "off", "scissors", "junk", "biology", "dial", "glue" -- 82d818584283581c87d9dd6d8615b2331c79350598cbb9e1a6ed53806a96ed68919c31c5a101581e581cc0bc43a4e0a0ad38831e27e4d875c299e3445825a30a13f2d5721c84001a956f98f7: 100000000000 -- 82d818584283581ccdff49ea4376e9670729b13347a6c9dcaca8ec3ec99bf1f75cf272eea101581e581cc0bc43a4e0a0ad38831e26e4ef44a97a15a508d5a7a0d4cd4d8530d2001a6811e103: 100000000000 -- 82d818584283581cee5e6ef7ba160e4fdf10b0f1e70b8890211057c6ad3c9185700cc219a101581e581cc0bc43a4e0a0ad38831e25e40614905b4705b984ac3696a9c5974420001a72d180dc: 100000000000 -- 82d818584283581ca86111f4d535f78ade25830cb43bf4568af2bfbb24dcb35d98b4c0b6a101581e581cc0bc43a4e0a0ad38831e24e41de3763c79656934b1cc57853daa586e001ae53b4d7a: 100000000000 -- 82d818584283581cefeb160bc325cd9adab19d99b2a12e052b6294a42d34bb325ac1f19ba101581e581cc0bc43a4e0a0ad38831e23e42fb25d1dabc519e4b5621961b5bc6cbc001ac76d1f81: 100000000000 -- 82d818584283581c7768d30c074f700e96a23d97791e42fea43f3ed886803d3722234e3fa101581e581cc0bc43a4e0a0ad38831e22e4468144fedc25ca93baf8da3c2dcf800a001a87108f20: 100000000000 -- 82d818584283581c97cacc5775b036f5e033195dda319144f510d293bae8b37e01207a14a101581e581cc0bc43a4e0a0ad38831e21e45d502bdf0e867a43bf8e9c18a5e19458001a06d0efad: 100000000000 -- 82d818584283581cacc7961ace17cc71558463bdab8e9542116809b7e9490018a2ffad9aa101581e581cc0bc43a4e0a0ad38831e20e4741f12c040e62af3c3245ef41cf4a8a6001ae0846147: 100000000000 -- 82d818584283581cdae1dbf91938e91b8f851d855e6c163539a07fea22559b3c501a33e3a101581e581cc0bc43a4e0a0ad38831e2fe42afd8b925443d5a77d5a061417df7b13001a1dee61d6: 100000000000 -- 82d818584283581c6fec57351999e2954c8f14f220a74c987a274b88ff34a9124041f76ca101581e581cc0bc43a4e0a0ad38831e2ee43ccc727386a3855782f0c7ef8ef18f61001ab8490761: 100000000000 -# "lazy", "aunt", "obvious", "pave", "abuse", "loan", "coral", "orchard", "fat", "tone", "knock", "tired" -- 82d818584283581c4555f870170c30044362a246c1f4abf1a7da266811a5c6f1830c29a7a101581e581ce3c32cc59142c2e27a9e9e7d322522a398d1f06ed672d6d0581fad7c001ac506ff3e: 100000000000 -- 82d818584283581cc1ff629e772d1469cc257ae499b94a4f7b6b7a861ebe416f234f59f8a101581e581ce3c32cc59142c2e27a9e9f7d4a34d5d3c9fe1da4215e21f5ef12710c001aae80d01b: 100000000000 -- 82d818584283581cc062d943fbf322d68e34495d6d74424b60c39910740b0f03a298a502a101581e581ce3c32cc59142c2e27a9e9c7d0707bc4136779604409c40882a38255d001a59b32982: 100000000000 -- 82d818584283581c585d2906c7a6596bb1fc34d75e80f946dffdb61457c79128403111baa101581e581ce3c32cc59142c2e27a9e9d7d1f166f7267a4c3398b878bacc12be9ec001a83b6aaa5: 100000000000 -- 82d818584283581cf6773523dfe2d9e6c3b118778ddbc5080e01e6f5135609d72297b99fa101581e581ce3c32cc59142c2e27a9e9a7dd7e855e0d31c3c9aa9c5aa3ffc509d3d001a00b88405: 100000000000 -- 82d818584283581ca1542b5f07754231371707b17661aaa1c5c9f54a5f28a366d2d54195a101581e581ce3c32cc59142c2e27a9e9b7deff70811054a69cff4b0f563934461cd001a06a43e29: 100000000000 -- 82d818584283581c38fbfea35196ef58def0b96ff9307024b1d31615ed4049213ac64853a101581e581ce3c32cc59142c2e27a9e987da7caef7e71c2e12f13ef14f7cd69151e001aba3052ae: 100000000000 -- 82d818584283581c36ed432587d83ef5ee1cdd68b04f60629cf28938d6a96ed8e482b535a101581e581ce3c32cc59142c2e27a9e997dbfd9a2afa2ef0e655eda5f1b655dd9ad001ab0bef313: 100000000000 -- 82d818584283581c1a8346fcc183e5ae7ceed37e380a3f42e431e651864539dc881b3eaaa101581e581ce3c32cc59142c2e27a9e967d77ac891d0f6887c57c187fae9f828dfe001ac91d994c: 100000000000 -- 82d818584283581c5cd1d052276c82733567b9ad1937d8e28e93c5d879bbb280fd225271a101581e581ce3c32cc59142c2e27a9e977d8fbb3c4e4095b4fac703cad23676518e001aa764e847: 100000000000 -# "fantasy", "kit", "luxury", "combine", "bus", "hospital", "hybrid", "stool", "cousin", "gauge", "grid", "audit" -- 82d818584283581c0495dc2be9685e90ef8d69364d65fd6883c9b5e2cfdd3c7d47f39a8aa101581e581c351caeb30d21787d0c62bc9300abcbe7577479dc36244e9bda62d24c001a8b89cddf: 100000000000 -- 82d818584283581c7aff4b49935caa5fe32942858709c5dc38c8a8026d335f1d125403c7a101581e581c351caeb30d21787d0c62bd9304c15d7e6e4bff4812dbbf4471b63134001a85e5c4ad: 100000000000 -- 82d818584283581cc11ffda06fa87a83337c446d00c4990d4754509ac483b40cf9b1b1cba101581e581c351caeb30d21787d0c62be9303d7ef14852285b5ed9131ee070a911b001afaaf7503: 100000000000 -- 82d818584283581c6d2ed65c5821f2bfd0fd0308a14a5d5febfc56b34402816a1383e43ca101581e581c351caeb30d21787d0c62bf9307ed81ab9bf90a22c948a3979e5df002001a612fdbbb: 100000000000 -- 82d818584283581cda9bb067e320ba2149866513c699d34417b3b7411bc10e7feb2b2915a101581e581c351caeb30d21787d0c62b893fa52838dfd17622ac94887f57f1455af001ab1f0dc51: 100000000000 -- 82d818584283581ccb42b57498fff4cf7519f338418ad120e7fcb7c917590b3d15a3cb85a101581e581c351caeb30d21787d0c62b993fe68152414efe796a4fff89e1668b496001ac86dd2ad: 100000000000 -- 82d818584283581cd6123f07f8982c74958a6d390ed427e6e72849c3507a01176140ac67a101581e581c351caeb30d21787d0c62ba93fd7ea7ba2ac66d0380b66a48adbb137e001a076b02c5: 100000000000 -- 82d818584283581cbbe644d469f178b77d0977b5feedcf41fe79e40b6e410514e68e3c58a101581e581c351caeb30d21787d0c62bb9301953951419df36f5b6ddcf1430f7365001a257cd407: 100000000000 -- 82d818584283581c8ea54f97927e9d3c0c82c36c281f1ecb4599026ea786f397fc1d2be3a101581e581c351caeb30d21787d0c62b493f4fa3a33a3bb4a785b6dc04f25c6d711001ab43ea9a0: 100000000000 -- 82d818584283581c2a3abb1859e1eeeba151151e5fc86a31a91eec343c94b31bc67f3effa101581e581c351caeb30d21787d0c62b593f810cdc9b992d0e4362432f9bb1937f9001a3d03441e: 100000000000 -# "dentist", "inmate", "sun", "town", "fame", "cable", "sport", "depth", "scissors", "rude", "yard", "harbor" -- 82d818584283581cc3d9100da529f84fa4a0e60e27385e3f5e7c4061a76d4dc17e25ba96a101581e581cf2b72e4563d26952fa21fbeda111d829dc918e5189f3f7547800682f001a704e8020: 100000000000 -- 82d818584283581ce6fab4faecfe3239064fe685558b6fa504e8abb388b062942657e947a101581e581cf2b72e4563d26952fa21faedae670a27c815f64db0db15e68d6e6574001a064971a0: 100000000000 -- 82d818584283581c8ed717c67e3abf27b247aa9bdcfe098adc8f76abba4fecb32dd915b3a101581e581cf2b72e4563d26952fa21f9edbbbd3c24b4995d4ad7c33377a3dc62b9001af64ce1ca: 100000000000 -- 82d818584283581c340b1f6be848951904743f08ceb41a9cd046f5262a918d27f476fffaa101581e581cf2b72e4563d26952fa21f8edc8136f21a01dc546feab5108b94a60fe001a91b09cb3: 100000000000 -- 82d818584283581cffefc07cf5efedf3df13bf8a891b50393299281bf859ef819494bea5a101581e581cf2b72e4563d26952fa21ffed6db90e352c82f05fed5280102248721b001a433b50dc: 100000000000 -- 82d818584283581cd8f7f1522dcdff02ee368b5a3a364a8b4de1cef3680cf9aedc9831b0a101581e581cf2b72e4563d26952fa21feed7a0f41321806585c143b9ea137b66f60001ab39a3af5: 100000000000 -- 82d818584283581c8616a7cd7550862ab9b582c38a493ee5c338c25ce063c3c0c35f1ca3a101581e581cf2b72e4563d26952fa21fded8765732f048abf583b23bc324d246da5001a521b7880: 100000000000 -- 82d818584283581cb757c17df78f1815d8d6d94731e81126efbf3e51d12c0cd2e2ffa079a101581e581cf2b72e4563d26952fa21fced94bba52cf00d2755620bdac362926aea001ab73df6a2: 100000000000 -- 82d818584283581c94ac6aa70e39431eebedb0db0ea39db4baf6559a7785dcd2be8b1045a101581e581cf2b72e4563d26952fa21f3ed0ec26a133cb1ca34c134e7dd24715357001ac95f5e55: 100000000000 -- 82d818584283581cc36867248e9f2639275bb3606b229e4f2232a594364a8ef5df48fdbfa101581e581cf2b72e4563d26952fa21f2ed1b189d1028353231e81c056f3adf509c001a3ec20537: 100000000000 -# "bright", "item", "flame", "august", "consider", "rifle", "stereo", "end", "very", "bright", "matrix", "mom" -- 82d818584283581c346d1f57ead9e48203c9b34a976f5cd63ae5cb7ca4df59253c287550a101581e581cc48028ad1001aaca69f93c54172c47dd0d2e566ae05ea32e2e243e4a001a231af8ae: 100000000000 -- 82d818584283581c8253a614608b755545f3862aeefd50fe09f87eef4ab36cf3e2a25632a101581e581cc48028ad1001aaca69f93d5443e42fa4ee07041d807e37203a46093b001a59def832: 100000000000 -- 82d818584283581cf2b3dcf7f9dbf2bebd7c74f8d346e2f0ffd4e28b9d5288f40364c7f8a101581e581cc48028ad1001aaca69f93e546a9c186bcfe1b1cf1f9ecb114668d42b001aadd5bd7b: 100000000000 -- 82d818584283581ce71121fae056ccbd55dcc5eab90c7acc248caae4dc3cb07b72cf86e1a101581e581cc48028ad1001aaca69f93f5491540132b0bb5f82bfbd5f03528a9f1c001ac459f02c: 100000000000 -- 82d818584283581c4062b94afcefb2c8a526f791d0b8bcd5c553acd4ecf6791dab13510da101581e581cc48028ad1001aaca69f93854764ba4c18ac69e9f61e05268fe9b1187001ab6024898: 100000000000 -- 82d818584283581c7404a982070768777bd30dd59417ff0e4c4e38d14b60ca711b1a08dea101581e581cc48028ad1001aaca69f93954a2038d886ba04c520100e7590abedc77001a4e812950: 100000000000 -- 82d818584283581cb0f5aa9543cfa2ee7ff74287f8f2fbbe6a9dc2102216ea7c575c7922a101581e581cc48028ad1001aaca69f93a54c9bb754f4c7afa04a11f7b4b16e0a768001afcb941e8: 100000000000 -- 82d818584283581ce86e7d5433dcf13afe138545e89d1736344c273c47b15f9d7c9f1010a101581e581cc48028ad1001aaca69f93b54f0735e162d54a8b7403f0f3d22027359001a65d89a79: 100000000000 -- 82d818584283581cde10928c29627ad20983324ab489ec0fa8ccafc24cb211cb22520218a101581e581cc48028ad1001aaca69f93454d56a01a6075fe7d4e26102a2ce13e5c3001ad17e8ee9: 100000000000 -- 82d818584283581c4d8d75acfd398967b2d37985a2c7650258713403c8e82300314fb863a101581e581cc48028ad1001aaca69f935540123ea6ce838958782819693da35b0b4001a273d9189: 100000000000 -# "today", "pattern", "bacon", "version", "differ", "pony", "universe", "snack", "weird", "toddler", "belt", "door" -- 82d818584283581c91644ed1ed8c960da6fca290a2c6f30079c6c2535a652ec153caaf05a101581e581c3addf6da00472fc6c963b5efab03bb1def528ac87cec5cc88a48c2ee001af45d2b06: 100000000000 -- 82d818584283581c4425947f25d65c27c25e050e85d11c06ddacd758b749bde52a449652a101581e581c3addf6da00472fc6c963b4ef6967f6cc425856b5ff5175111e815d4b001a0d9fda66: 100000000000 -- 82d818584283581c2a5fa572311139f3217ebac768ea6bd426ca003115231d26bd7942c0a101581e581c3addf6da00472fc6c963b7ef2f3c44bf4748f2ee76212c3664d78b35001a28cf1ac4: 100000000000 -- 82d818584283581ccca14bc97f0d3cbf19686f7ece2327cf2e242decd9573b2bf3517bfda101581e581c3addf6da00472fc6c963b6efed9f7f6e9b4dbedbf986447ff70f2792001accfafb02: 100000000000 -- 82d818584283581c7a4e1991de7c46113de860878cbcb50c5280b1c508ff78d190178891a101581e581c3addf6da00472fc6c963b1ef9e92a8da3d68ba7b8882beecd72a2f61001aba263cb9: 100000000000 -- 82d818584283581c39c5cc5c1951dc61814d0a42e545eb7c87b5292d09a0ff5e62ad8b58a101581e581c3addf6da00472fc6c963b0ef5cf6e389916d86680be8d6356b63cabd001adb35de31: 100000000000 -- 82d818584283581cd990d88e0bf7ee74bcd6ef4f6a9e9e1aac00ba43191b89fca56304d9a101581e581c3addf6da00472fc6c963b3ef22cb317c965d22a282b78d5ab1b9f8a7001a17de8e68: 100000000000 -- 82d818584283581c5e54e6ee190ce41ff8e3e1c0d6e54647f66566ebda1a7f0bd2334c84a101581e581c3addf6da00472fc6c963b2efe02e6d2bea62ee8e051da6a344f29304001a16b1bc6c: 100000000000 -- 82d818584283581c6820eca42498fd9d21b0f5a63818085d8a196b8cf5bdea6e221331dea101581e581c3addf6da00472fc6c963bdefc0e5dfa351282a6265c0997ff083e809001aa08bb525: 100000000000 -- 82d818584283581c3f6d54c05c0c06fcf7c0b0e1b9a3470db0f1571ec21ab2659c7b7b02a101581e581c3addf6da00472fc6c963bcef7e491b53a52df64ee825b2c883bc8366001a823f8eb8: 100000000000 -# "veteran", "omit", "knife", "wrist", "truth", "agree", "rhythm", "world", "dynamic", "duty", "saddle", "dove" -- 82d818584283581c82033026a7a1133e9038be3d0e7ba2f57ae599e34d19fcc413ce3336a101581e581c2fd3ddb3299d414401264bb343be558e0d2c6cb0472983cc88a96621001af7e75ee4: 100000000000 -- 82d818584283581c66ec294f6273762364ab4ab71f1393b3cc3238a3597e4b1a1925daa3a101581e581c2fd3ddb3299d414401264ab3ad572e9f2a975cf9c9a1eead43cbf94f001a625f0d31: 100000000000 -- 82d818584283581c784c7975d96acfcf840878629f3bfe2615add5feff910f33e7d68890a101581e581c2fd3ddb3299d4144012649b317f106b047024d424c1a5a8ffeec8c7e001a0435018e: 100000000000 -- 82d818584283581c8aabb7f0267ade583a1f01aaf5afba77b927577a3267dbfdb992421ea101581e581c2fd3ddb3299d4144012648b3818adfc0646d3d8bce92c570b90e20ad001a3b22dbb8: 100000000000 -- 82d818584283581c0316c63e6adc3e77ab5125d2683b25d801f87e50f6e74965147e7d8ea101581e581c2fd3ddb3299d414401264fb39b58f34a997faa8c3e47d5469d221a67001a061f255b: 100000000000 -- 82d818584283581c8eb97fa7a107fac469f0bfb78cdbc6ad0a27a0c95a90941e525b2fc9a101581e581c2fd3ddb3299d414401264eb305f2cb5bb6ea9ad5c0bf40285844ad95001ac0064026: 100000000000 -- 82d818584283581c608b8ef9c152b69a00d0d5c0a12a96fa9e5579f62b94a12beb99f766a101581e581c2fd3ddb3299d414401264db36f8ba46cd3558b1e4338ac09136640c4001aa8982ed2: 100000000000 -- 82d818584283581c663f38c243e16e2abfb8e904e472347c2220cab98a8e9b48b542a508a101581e581c2fd3ddb3299d414401264cb3d9247d7df0c07b67c5b017ebcd87d3f2001ad7f980c5: 100000000000 -- 82d818584283581cc04c8ea14d74ae96bf700676b383f4a8cd5c4fdfa40e45d6f8e8bdb6a101581e581c2fd3ddb3299d4144012643b393891a15f684eff759edded75fb7ff95001a4970fffe: 100000000000 -- 82d818584283581cbc6dcc8bd38e3e87d8fcff192a7f795250e9259514cc14cfe79283caa101581e581c2fd3ddb3299d4144012642b3fd22f32513f0df40dc654ab91ad992c4001a985f5bd2: 100000000000 -# "hat", "city", "disease", "patrol", "answer", "select", "vibrant", "tag", "dose", "rebuild", "length", "sting" -- 82d818584283581c5f9aa49e39435061ffa802bdba731d597401f37fe4d138334a525b8ca101581e581c9cf9567098b4c0ce72ffa9f37d2ed3bac9d0cc82a5c08477bfb32235001a9a116456: 100000000000 -- 82d818584283581c4505fd286166972135cf9d77166cf3370e64da7d82cff3d3f089d2d5a101581e581c9cf9567098b4c0ce72ffa8f3de8ecdd12a415c1a895a3cfd025cbad3001a07a62718: 100000000000 -- 82d818584283581cace4608e58e5f29a29e224de252e08f7e2b0ca5c31a0607fe6614986a101581e581c9cf9567098b4c0ce72ffabf3c56dde8c07f0ad53de8c156c3863f3f7001ade9b0ec1: 100000000000 -- 82d818584283581cdf40d0be551d251440c8054f6a543f2e59e4f097e8851944cc0909c7a101581e581c9cf9567098b4c0ce72ffaaf321ced8a368603debc126cdf17b0b8b96001a21ff3de5: 100000000000 -- 82d818584283581c3ba2ae080d362d6ee50f9b32efbc9a51189e21ccc6bf58b3daaeba49a101581e581c9cf9567098b4c0ce72ffadf30dade95e450f8f241759a660b112c4ba001a838a9244: 100000000000 -- 82d818584283581c363dfe445f012f91a55100c738b63cfcfa56864ce593120121045cdea101581e581c9cf9567098b4c0ce72ffacf3690de475a67f1ebcfaf25de6f4ba5b59001ab49d906a: 100000000000 -- 82d818584283581cd2623edc9944ce63a059802ba6353acb4b84190aa4adbe6470e73beea101581e581c9cf9567098b4c0ce72ffaff355ecf430832e70f54f2537552ac2947d001a4eea8971: 100000000000 -- 82d818584283581cf99c1bef198a62d3a5c70e6125e18e256de1a17dfc22d2306b045285a101581e581c9cf9567098b4c0ce72ffaef3b14cef47e49eff8c33bfeeda6d6a2c1c001ad607c24e: 100000000000 -- 82d818584283581ce73e8fc7c69f301927605497f9feb389c1d3741021e83a33f4e51610a101581e581c9cf9567098b4c0ce72ffa1f36731a672d253483fc28f41a5dbf5df29001ab4ff9756: 100000000000 -- 82d818584283581cb7b9db9797c936449a4ea9ad8b0b91509a9a69b96a270db416f2eb01a101581e581c9cf9567098b4c0ce72ffa0f3c391a08933c4d7d6a529f92a1f9e77c8001a87fe7cd8: 100000000000 -# "liberty", "lens", "entry", "marriage", "bean", "camp", "phone", "charge", "alcohol", "boil", "plate", "banner" -- 82d818584283581c5d8d9d43f1be0b6a3f23327dba313a9bf8a9bd0d8a62981a619e84b3a101581e581cc7f27485f1a82f407853a0e07d3b128b151bfa60075df9d081f0a58d001a18c5e6c9: 100000000000 -- 82d818584283581cf3219a906461ccfb1a7d68302dd16c166d29b2217f92edb9c381d951a101581e581cc7f27485f1a82f407853a1e0bcdf7624da55287a4457847fa2e24c0d001a42a2fdb6: 100000000000 -- 82d818584283581c402a7e5408b750ea63ebf6eafa70704a211c5ecc92eac652e2f8856da101581e581cc7f27485f1a82f407853a2e0f683dbbd9e90569381510f2ec3d4f38c001a621b5246: 100000000000 -- 82d818584283581cab40dfa6e6e571a66ac8e3fb19e054ddd0385acd4ff5389b7f15c990a101581e581cc7f27485f1a82f407853a3e03528405763cb84acbe4b9adce3c69a0c001a52dcd37b: 100000000000 -- 82d818584283581cf9fbbdf705adf2f8aa8e6ca062086abe94638d15b274d855f95d7ff6a101581e581cc7f27485f1a82f407853a4e06fcca4f02706b3c5fb45258b04b9418c001a1f9af067: 100000000000 -- 82d818584283581c7b42d1bc3c878ca7c1bd5ee1fe3a37be6700f4ffa4cd5262d82365bda101581e581cc7f27485f1a82f407853a5e0ae70098aec40e1de3840b03925abe80b001ae114e4c1: 100000000000 -- 82d818584283581ccdf44fde0d0110cd81681f36ebbaf237c9e7dffe8c7aced1a617cf9ca101581e581cc7f27485f1a82f407853a6e0ed146e23b17b0ff8753a3be8459d8f8b001aa110bf57: 100000000000 -- 82d818584283581c67860e1a55bd18d8e520b5186cf9cc6f1d3020f40813044c1b8a6996a101581e581cc7f27485f1a82f407853a7e027b9d2bc75b63d11b334c696668f360b001a078fc07d: 100000000000 -- 82d818584283581c5122b49095801e62f87ebaeec0749a4f2ec309b81cb966bdde7de178a101581e581cc7f27485f1a82f407853a8e0665d37563af16b2af02e51458781dd8a001a64c8b514: 100000000000 -- 82d818584283581c5e577e2ed37d0be69d553614b0f68838f2fc25c234d443cc7ce1c027a101581e581cc7f27485f1a82f407853a9e0a5019ceffe2b9a432d29dcf3a773840a001ac0d1269a: 100000000000 -# "talk", "glory", "minute", "include", "flag", "stuff", "laugh", "auction", "benefit", "escape", "confirm", "task" -- 82d818584283581cf80b439bf365bcb6d15a7e047a44dfd31fbe1b72df1e4b3303ad4a82a101581e581c0a023d541c9b0d9b41660abbbddb0c85cc9dd5c9f8848287ffaf4253001a90c5b393: 100000000000 -- 82d818584283581c7695e4d579b49f85473059695aa665ed470013ca2f0af83ae8986504a101581e581c0a023d541c9b0d9b41660bbba1cc6dc71aa64167799201c78326f0a6001ad24ab8b5: 100000000000 -- 82d818584283581c0c577ed055b8d9536d39fa53986f1f9332882f117997fadb06730c21a101581e581c0a023d541c9b0d9b416608bbfff94a00308dfd8ef7698408f7c2e7ab001a05ae5686: 100000000000 -- 82d818584283581c25038bc90555fda03d7a8eadf69a9abeef97be8ae73f37b58c628564a101581e581c0a023d541c9b0d9b416609bbdeeaab427e95692c787703487b3995ff001a58847f87: 100000000000 -- 82d818584283581ced0ca5b6eedeb156d23d7d8d26b8d886dadd537109c2772222b1926aa101581e581c0a023d541c9b0d9b41660ebb439f908e05bf853ffbba7e85108af8a1001ac562501e: 100000000000 -- 82d818584283581cde23dd49542af3e54e566d7e3646485a80070a97b5bde4977ee2fe0ca101581e581c0a023d541c9b0d9b41660fbb2290f1d053c7f1dc7bc8fdc49400a6f5001a349dd833: 100000000000 -- 82d818584283581cb02c0876fd92ce68a6e1968a0fabadf49101e4daf9080acbfe320c0ea101581e581c0a023d541c9b0d9b41660cbb80bdce0969aead04fa9f8006089d9dfa001a90e2ac72: 100000000000 -- 82d818584283581c0b7afcca049858e9868b04e022bb28606b3e9a68411c0cee19b1915ba101581e581c0a023d541c9b0d9b41660dbb5fae2f4cb7b619a27aadff458c134b4e001a40ad7ef7: 100000000000 -- 82d818584283581c47dd50905f39af465d06cce739540c4b8ea4734a59cd2165450d3fd6a101581e581c0a023d541c9b0d9b416602bbbb5405725a5b75def3188a8bddfbd6b5001aef74c377: 100000000000 -- 82d818584283581cdf9312fe446a34310fa21c6af0bfa8e9f5a50511df5c737de5e12a6ba101581e581c0a023d541c9b0d9b416603bb9a4566b4a863e17b742609cb61728409001a3c59c4e6: 100000000000 -# "joy", "convince", "reunion", "increase", "core", "venue", "palm", "scan", "wish", "vault", "until", "rice" -- 82d818584283581c0700eb15b4a378ef747158c4771d06bde5cbf3cf8865f9b66d200ba1a101581e581c0745829ac4959c73b47fedf0f79b55fb25debe3f6da2327d4045c4cc001a5333803a: 100000000000 -- 82d818584283581cf26dea9a8840d2a194e1cd6a86020e25e6029fb1c0be4d52363fdb66a101581e581c0745829ac4959c73b47fecf019c69416d920129b2c5dbd129271c57e001a774206ee: 100000000000 -- 82d818584283581c5baea9c4a27209ee5c4c1398a204bb117feabd3870d4213d7cc82d9ea101581e581c0745829ac4959c73b47feff0b347d7c4bf581889ee2c1d529decc168001ad8cad9ce: 100000000000 -- 82d818584283581c5d5b9b2f2a1241ff0927e99456aac98578fff0d706985fcf98d08e4aa101581e581c0745829ac4959c73b47feef0d57116e0729b6be4ade7a7e7ee18c31a001aa62ac834: 100000000000 -- 82d818584283581c6dff98facfd05a82c55a81942be485f8cce4439938c6845e3605540aa101581e581c0745829ac4959c73b47fe9f07f445268f2e80bad6a8d5dd386f6c894001a65e40a73: 100000000000 -- 82d818584283581c5b385cbdf5b6a884818fa5249ff5ec90d1d697d9730eb51f3e4ca9bea101581e581c0745829ac4959c73b47fe8f0a16e9183a52b5f082a48e868d822ca46001ad38ff0c8: 100000000000 -- 82d818584283581ca38bee8eb21048ad9bb4f0ab2af3dfc060d21ca76d18ee9722ca2877a101581e581c0745829ac4959c73b47febf03bf0d3318c6365f6eb1748a8e39dc630001ad9f98b47: 100000000000 -- 82d818584283581ce38709790fd66ddf1a2468ede3963800c0fa5369f6c74794756c17e0a101581e581c0745829ac4959c73b47feaf05d1a134d3fa6b851abd2d23d35cac7e2001a1f316777: 100000000000 -- 82d818584283581cd58b617eac806129150fbfb16a9b0638269d1d659c906e9cf751d3efa101581e581c0745829ac4959c73b47fe5f002ed4ed5bef3581a68788829cda7cd5c001ae960b2ee: 100000000000 -- 82d818584283581c0148d6e607b8a1d6e411693457a4c05530986e49d063b14528e4e9b0a101581e581c0745829ac4959c73b47fe4f024178ef07136ac75273313bf1ed4ce0e001a02f74f0f: 100000000000 -# "walk", "hybrid", "game", "vanish", "mushroom", "win", "observe", "crush", "core", "lamp", "mirror", "twenty" -- 82d818584283581cdbfc11bd3265ff21b9674132191a4b56ddf5303dd20138a89f4d5d6da101581e581cff7ecdc9071f37b6825cd09abe655038169fb67e9b26c2d9f84720eb001aed6711ae: 100000000000 -- 82d818584283581c38ca6759ea3103e7a9395e0aa774d2badf1d20a9c5b23709c5070111a101581e581cff7ecdc9071f37b6825cd19a3eb69505454bc1fb56abe6626b16c7aa001a0c7acc9c: 100000000000 -- 82d818584283581c61747bba0262abf6064f31e9c5eb0870cebb3c06f101547b11ba63eaa101581e581cff7ecdc9071f37b6825cd29abe06dbd273f7cb7812300becdde46d6a001a76f4fe5d: 100000000000 -- 82d818584283581c373271f5a67172410983bb11d84a416a9a6bebbd48e991fc3d78b5d9a101581e581cff7ecdc9071f37b6825cd39a435720a0a2a3d6f5cdb42f7550b3142a001afb059fcd: 100000000000 -- 82d818584283581c5c2da59e80aadd162517cda86a2040d8481764af4c9d583f776a884ca101581e581cff7ecdc9071f37b6825cd49ac3a7656dd14fe172893954fec281bbe9001aeb1aa6fd: 100000000000 -- 82d818584283581c250ab6d974052ce8ab2e00e9dd11e78cb6d7944d27bf7c3ff62815cca101581e581cff7ecdc9071f37b6825cd59a48f8aa3a00fcebef44be7887355062a9001ac3fec4ce: 100000000000 -- 82d818584283581ca54dee07e2c4f84d285cfcb96cba432895b67e94f6edf0d86b5bbb4aa101581e581cff7ecdc9071f37b6825cd69ac848f0072fa8f66c00439d10a81e0969001a67e79df4: 100000000000 -- 82d818584283581c22fc830b531cb1a9651912d82b40074a276922ee3cfea07e5c788bbfa101581e581cff7ecdc9071f37b6825cd79a4d9935d55d5401eabbc7c1991aedaf28001af5c28d70: 100000000000 -- 82d818584283581c51627685a9380d08cbe72a7bf22308b84536f50b700dd8893872c6baa101581e581cff7ecdc9071f37b6825cd89acde97aa28c000c67774ce6228dbb56e8001a22a8ab8a: 100000000000 -- 82d818584283581c0753093d3c8879dc71e8a25c161f02f35c6cd7deacac248509408048a101581e581cff7ecdc9071f37b6825cd99a523ac06fbbac16e432d10aacff89fda7001ad962de6c: 100000000000 -# "hold", "joy", "grit", "great", "quote", "retreat", "famous", "wreck", "busy", "faint", "wish", "fetch" -- 82d818584283581c5b40255f144a6f373ede32dafaa8759a1cb2741452afbe84948ac4d9a101581e581c2e63818b741cda1857e6982ba8b501159a746322479b9ed6beb76770001a34a41358: 100000000000 -- 82d818584283581c24045d6d068afe5e3f02953ea1adfafeaa42f34c869de56a72f4f3eca101581e581c2e63818b741cda1857e6992be11fcdbfeb794da3231a3fe7db89da97001a919db1b5: 100000000000 -- 82d818584283581cd57588ae6a8f84e2d8c9988d16415c81fe8692c527b73b432c4bb0bba101581e581c2e63818b741cda1857e69a2b1a8a986a3d7f37240099dff7f85b4dbf001a5dffb829: 100000000000 -- 82d818584283581c71d0ac4839dade38fba6dd7f0380264aaa9151b937c463d3cb8ecc3ea101581e581c2e63818b741cda1857e69b2b53f463158f8421a5dc178008162ec0e6001acd87a10f: 100000000000 -- 82d818584283581cf7ad6d1e8647073d3364cad9568de5ea7bac2b06a4abba9e20695f33a101581e581c2e63818b741cda1857e69c2b915e2fc0e0890b26b99620193300330e001a2994dd84: 100000000000 -- 82d818584283581cb46725d907303ca7cf732ac12715a2aee5109fb3e9728e91966fa63ba101581e581c2e63818b741cda1857e69d2bcac8fa6a328ff5a69515c12950d2a535001a8042ef1d: 100000000000 -- 82d818584283581c956f4e9b9f84cf94a74826e9540b9de3c5f28ed39e71e5ee26752e10a101581e581c2e63818b741cda1857e69e2b0333c6158494df277294613a6da4185d001aa970b725: 100000000000 -- 82d818584283581c44e4d0daa8576eb57b74e204e07be00c56e5b7293c12e99d55db59baa101581e581c2e63818b741cda1857e69f2b419d91c0d599c9a84e13024b8a768b84001a75bfce89: 100000000000 -- 82d818584283581cf4d3bb14cd035567b07aca3ebd97cb979d1d3282233ac3765aa5ceffa101581e581c2e63818b741cda1857e6902bd163a6be0c4a131b63a49a51d626d134001a2561cacb: 100000000000 -- 82d818584283581cfd6a6716fbf27e5e9fb286c73873a6d229874c78c84da8c4ffbd0055a101581e581c2e63818b741cda1857e6912b0fce71695e4ffd9b3f233b62f3f8435c001a693ba2ab: 100000000000 -# "future", "obscure", "glow", "valid", "wear", "boy", "exercise", "member", "shoe", "add", "country", "spatial" -- 82d818584283581ce01c2c1e399258d95a71ae3d5f3ebbe6d03d75d5dfdf82622af17bf1a101581e581cdd341c782059009119b7119d1d133de60c0a66ba4449f1c1d09126ec001a2a305fd3: 100000000000 -- 82d818584283581c4fbce636519123d1a65be80101e11386cb042e83f6d14e5c5cd63302a101581e581cdd341c782059009119b7109d96c6c23a04fb0d6dcd429d6aea01789e001a11bf61ff: 100000000000 -- 82d818584283581ccbd286cba4733854659b3fd2790ca83ff1531e4cd698a3fb05077032a101581e581cdd341c782059009119b7139d2bac313d1e281655335699709db18387001aa35816e4: 100000000000 -- 82d818584283581c539fe7b6c5b1c5cac8a383caa96c2d94b24cfdcb4aadabcd855816e8a101581e581cdd341c782059009119b7129da45fb7911519be07bc4f4519b721d539001ac4568f78: 100000000000 -- 82d818584283581c81730f84866cfbf6baf357b377411f8845c1edf4857593a630918444a101581e581cdd341c782059009119b7159d394526942f46c6ef2163411f6ad1e022001a98fe7ed7: 100000000000 -- 82d818584283581c1718f2e3449ce58d3c567900e4981255c733be9264830a4c76df2d20a101581e581cdd341c782059009119b7149db2f8abe826376ea2aa5cedc7834132d5001a281df6e8: 100000000000 -- 82d818584283581cbc6678e4a7154bc330dc1832dd6fa164040346b5637a0fb300fe6a86a101581e581cdd341c782059009119b7179d47de1aeb4064768a1070e9cd36f13dbe001a7f55e521: 100000000000 -- 82d818584283581c9a1b2db4da341dabec808617daf5f9762402674ff7ea865a258502e1a101581e581cdd341c782059009119b7169dc091a03f38551e3d9969957650618f70001a418d9112: 100000000000 -- 82d818584283581cdb83f5bf68aca78a66851f63b4d0b46410a7b73ec42a971d704f1e79a101581e581cdd341c782059009119b7199d55770f4252822625ff7c917c03119b59001a175f4623: 100000000000 -- 82d818584283581c8f8e5b6401ddd9d5eb1c5df141eca0738c7d8d10011d67ce8512bdc2a101581e581cdd341c782059009119b7189dce2a95964973ced787763d251d81ec0b001a978b0af3: 100000000000 -# "tooth", "option", "satisfy", "patrol", "amateur", "height", "above", "air", "struggle", "reform", "speed", "mom" -- 82d818584283581c05374a5d59ec0ccc34b63c56356190d11fb05946267579d523b15432a101581e581cb7e73eb14cb29a934345485708661ef5046f4426d38b41d297fcc892001ad001e50a: 100000000000 -- 82d818584283581c60732f4828eb9d1b5ee01de4d69018771949b3236b8273d30345774ea101581e581cb7e73eb14cb29a934345495725493941c66c39a26bf2d68eec4d925a001aa584ed61: 100000000000 -- 82d818584283581ce64ef5ceee22089be9dd4ca7352a3e0b96d41ef2fa6e4123b481bca8a101581e581cb7e73eb14cb29a9343454a57422c548d876a2e1e04596c4b419f5b22001ae6e5ef8c: 100000000000 -- 82d818584283581c8f8b25b37fa150f9fa68943c593813e7d0d491cf2f293ef15bf5e5ada101581e581cb7e73eb14cb29a9343454b575f0f6fd94868239a9cbf010896f024ea001a3b118512: 100000000000 -- 82d818584283581cb395731db364ea6cde70bade5b52d345dac1f495eab2f252e93bb12fa101581e581cb7e73eb14cb29a9343454c577cf289250a661816352697c4ea41eeb1001aea6e5eb9: 100000000000 -- 82d818584283581cecc1b8db685d4a68b1d35346419dc6c6ac7bfe61d890ebfc411db398a101581e581cb7e73eb14cb29a9343454d5799d5a471cb630d92cd8c2c813f93b779001a2fed8f97: 100000000000 -- 82d818584283581c5f9a93b739c386a8902a6914a2bd6ae6009b96eb657b923bb6b6b57fa101581e581cb7e73eb14cb29a9343454e57b6b8bfbd8c61020e66f3c13d94e48041001a8f9fd2a0: 100000000000 -- 82d818584283581cd902483f5f5adc6167128c1dd36045aa0fb13393ddc25931e2257863a101581e581cb7e73eb14cb29a9343454f57d39bda094e5ff789fe5957fae8354a09001ab36d693e: 100000000000 -- 82d818584283581c42708cff07c0c4c8e7a1fa654dbe02a6d7b8b699a4032df30090a883a101581e581cb7e73eb14cb29a9343454057204d4794fa809c460f5796edf1717e54001a3369aa28: 100000000000 -- 82d818584283581c090b34623d7e768e6a07c8dc06304f898b79efdf825f9f1b3a904815a101581e581cb7e73eb14cb29a93434541573d3062e0bb7e91c2a7bd2baa46c3471c001a2d260469: 100000000000 -# "word", "cruel", "plate", "hedgehog", "flavor", "judge", "device", "tuna", "amateur", "walk", "open", "reduce" -- 82d818584283581c7302f15eb170fa33afcfa5dd7e39321933db5b9cae02bd21d264665da101581e581cc283c3b4f8844356a57c6640226eb58be797a9107660daa0d61a1c8e001a7a1bbb6b: 100000000000 -- 82d818584283581cfb646fe84b2a761d69a72ec8c666b75db9fc75d1892179347822158fa101581e581cc283c3b4f8844356a57c674069649d1a30065c435cafa1a66a9fa6f5001ad778e3be: 100000000000 -- 82d818584283581c79e0a6ba79d0f8053b4bc3d3fc0d1b6b28cdcb386d0c3565d94f7e75a101581e581cc283c3b4f8844356a57c64409481e56d56bb44aba9c24b95ae1107bf001ae8363760: 100000000000 -- 82d818584283581cc920a4e0cfc6d4cd44617361e43a4bdb82abc8dee26eaba022620911a101581e581cc283c3b4f8844356a57c6540db77cdfc9e29f7dd8f11139b42969126001abe3be815: 100000000000 -- 82d818584283581c71abe9412c052fdf69934e71d47a0300899aba67f2064001137476b7a101581e581cc283c3b4f8844356a57c624006951550c5dedf45dd24bd898608f2ef001a7a4b32f9: 100000000000 -- 82d818584283581cd1cd09f460cf9b162b66e3be5cb05984bf72f7daef4898e7cfdd22dfa101581e581cc283c3b4f8844356a57c63404d8bfdde0d4d9278c373848f1a8d7c57001a9ff4d1d0: 100000000000 -- 82d818584283581ce7ea3817c717d1bd7f3f906adb973e14589346fa8c41042faf4efc04a101581e581cc283c3b4f8844356a57c60407da8453234027be010872e7e5effdc20001a596fb259: 100000000000 -- 82d818584283581cec52acf6a371ba5a8371ef2aea4a648603788ca336930cb89bcc5de6a101581e581cc283c3b4f8844356a57c6140c49e2dc17c702d13f7d5f583f2836788001ac304e881: 100000000000 -- 82d818584283581c2c5e692ac990c6c08c91b143772a93eb585a849f238237bdc88e1f88a101581e581cc283c3b4f8844356a57c6e405520f5022c0a3da6a7d714cf763f70ca001a93e2739d: 100000000000 -- 82d818584283581c5dc348bb214ca117049a48957ca44d36bdebb6d0817f468dcf3b67c9a101581e581cc283c3b4f8844356a57c6f409c16dd917478efd88d26dcd40ac4fa31001aeb2dc349: 100000000000 -# "right", "energy", "oxygen", "eager", "more", "direct", "yard", "easy", "luxury", "auto", "knife", "loop" -- 82d818584283581c39354d29be3099c5fef1964611d0faa12de63e5e3ecbb6304bd9a7f3a101581e581ce5bae785245d19ce198c7eb06caa395552cc1fad3015e35821c7d87a001afae8187c: 100000000000 -- 82d818584283581c20071e17991f6017981bee56bb8f553a1f0f3d824d34c49669c28983a101581e581ce5bae785245d19ce198c7fb0d07dd9e4178d0af02f79fbe186ede3da001ad2aa7871: 100000000000 -- 82d818584283581ceb3edbf6f0bd1770c12768a84b045a84c59198c167739db68a0b7072a101581e581ce5bae785245d19ce198c7cb0a403fa35c74a4a27324db246567ac2ba001a54ef99ec: 100000000000 -- 82d818584283581cafcd85ea2405ac550a77daa10e87e3809a3077a036eb6e623f223275a101581e581ce5bae785245d19ce198c7db008d799c58c0b356a31b1cacfbba0cd1a001ade8903aa: 100000000000 -- 82d818584283581cabbcf35e01e030e9fcdf905f197e3c13ff609a9a9575b36b46ac60c5a101581e581ce5bae785245d19ce198c7ab0e15cba163cc974a1338581348b2dacfa001a03c2319c: 100000000000 -- 82d818584283581ca80e2a82ee690634fbadcc48099bd8f73bae168b8959e82fb6336f08a101581e581ce5bae785245d19ce198c7bb040305aa6018a5fe432e999bdf053b75a001a86f9a743: 100000000000 -- 82d818584283581c2531f5543abd48773a19cf89527cad28fafbefa423b462ca0c1ab068a101581e581ce5bae785245d19ce198c78b019b67af7b0479f1b35bd5022c0e0953a001af257a700: 100000000000 -- 82d818584283581c10d266b6c9c481a97d15f08820df1686aad6d5c43cd849b3934b7a7ca101581e581ce5bae785245d19ce198c79b07d891a8776088a5e342169ab2507a19a001a7875cbf1: 100000000000 -- 82d818584283581c08dfd995efa8ad2171bfb8c1408895dc45da02426cfd9597eb2fc6d2a101581e581ce5bae785245d19ce198c76b0510f3bd825c6c99536f51f10f5937f7a001ab33f5d2f: 100000000000 -- 82d818584283581c407b65fa6b5e6e3f252a879ceb50a36e4e20b92d8e98f714aaf423b4a101581e581ce5bae785245d19ce198c77b0b5e2da67eb86b4d8355938995aba8ada001a8aeba1ae: 100000000000 -# "huge", "race", "host", "involve", "win", "interest", "salad", "box", "fatal", "cherry", "cage", "pioneer" -- 82d818584283581ca02a95b2f3f3cc485e11a8e0779cf586c872179c32f15cf21e334797a101581e581c3242100f66dd556a1c5d6e76b8a8fb5715951f8c406de7b9e09482b6001acd89d1b9: 100000000000 -- 82d818584283581c25182eef82a8963a73c1cf42d9b06306da53110c0c8292fb6a571e65a101581e581c3242100f66dd556a1c5d6f76b71e978fbef0845dbc0c6ac31f128d42001a3f25bbd5: 100000000000 -- 82d818584283581c5839266c87d9dbab137c8b15b1625fd4c8d59bf6904830c9ebc4d79da101581e581c3242100f66dd556a1c5d6c76b0bcc4e8c2dd54e9482ee2a6629a6d9e001a96330771: 100000000000 -- 82d818584283581c9b51e84a3faec56b17f7814c2aff72fe5fc03954efd7c6515d80cdb1a101581e581c3242100f66dd556a1c5d6d76b43260206c39babac4cd64b0a117782a001a15f5f9bb: 100000000000 -- 82d818584283581cc7c4e3b993e0f3496eb844bd6a4812c9467d39ee469aa9c2ded61835a101581e581c3242100f66dd556a1c5d6a76add08d7970268a4651efdc93e49f5886001ade606fe8: 100000000000 -- 82d818584283581cb032d7585f04b40d80fb41c7079e719493b1d18179667ea6bb1a6829a101581e581c3242100f66dd556a1c5d6b76b14629b11982ef17cd8e5f9d231d6312001af226c65e: 100000000000 -- 82d818584283581c61492d13507311522b761c0fabab3bf884d25fd6d3c01cd4b437b3aaa101581e581c3242100f66dd556a1c5d6876aae4560a1e6fbfa359b0d78066a5436e001ad1ac3c29: 100000000000 -- 82d818584283581c781f5ddf4c565a79828d061db69d63ad96ad1c2c8016969af2749983a101581e581c3242100f66dd556a1c5d6976ae5af241c7ca2475d54f5a8aa5224efa001adc8b4ee1: 100000000000 -- 82d818584283581c8599fbc16f99da01829f7b8b022ec97e6395a4c2a27f40dd7d666468a101581e581c3242100f66dd556a1c5d6676a7f81f9bcbb7f4006271d26de8aa2e56001a45106762: 100000000000 -- 82d818584283581ca28aa230b40bb8f86ec2d857f21400ba23e210ec07449a4aeadac41ba101581e581c3242100f66dd556a1c5d6776a66ebbd274135ad2dd105577272839e2001a67198950: 100000000000 -# "phrase", "rapid", "fine", "neglect", "already", "nut", "note", "chair", "mushroom", "rack", "ivory", "riot" -- 82d818584283581cf54c09989a1388c312f2468c4da4ea4516da82b5a048f11f2735b538a101581e581c64d98f3e3b6319927064abfab281105de354f795c4b87df40d6b4325001a082e93d1: 100000000000 -- 82d818584283581c167215e8b9dfdaa8eb7f5f50b3ed3aa744cce81f29f68c9bdc820b58a101581e581c64d98f3e3b6319927064aafa3cc45516076ab57ef9eab5d6b2bc0515001a1b4aa422: 100000000000 -- 82d818584283581ccd0064cd819f617fceee71a71bf2fa550eb14f9f639e538a93e0a32ca101581e581c64d98f3e3b6319927064a9fac1069bcf2a7f73672e1deeb8570ec804001a5daa75e1: 100000000000 -- 82d818584283581c0732065fa17e64fb364d91b6c9339a3d028fc645a244a26dd2acc3a1a101581e581c64d98f3e3b6319927064a8fa4b49e0884e943150634f269bfc5f8af4001a0fc87e82: 100000000000 -- 82d818584283581cf283e83ce390fc3aca1c949a176b651f31248642910fe109d7e4f937a101581e581c64d98f3e3b6319927064affa8a77fb775400fff2f0ef9c6b7a243a66001a6053b24a: 100000000000 -- 82d818584283581c1012997a9d234833b02c84737f0a305b11f9935f7bf73e1936b9565fa101581e581c64d98f3e3b6319927064aefa14ba40317815bddb2522d54d1f76fc55001a3a11746a: 100000000000 -- 82d818584283581c386c3f2ab9a169b9d3d7ef1489ff8bcb638e949c0c45e116bef9cebda101581e581c64d98f3e3b6319927064adfa9efc85ea9b2a7bc45a540d30c4c7be45001a9da1ec7e: 100000000000 -- 82d818584283581c40575a60797403dad093f83b654d58768addb9d963c99618e85ce1a5a101581e581c64d98f3e3b6319927064acfa283fcba3bf3f39ad8f86451269198135001a7ccee7cc: 100000000000 -- 82d818584283581ce0c407b425d4132125fc60662aaeaf1705c1dbeaad3ed34c143b2492a101581e581c64d98f3e3b6319927064a3fafd953a2701fee7db6b4a3f0635f855a3001a1bff0006: 100000000000 -- 82d818584283581c2a0706094d575eb722cfe7e916b93f4ec11778eb897020a6baaee58ca101581e581c64d98f3e3b6319927064a2fa87d87fe02413a6c4a07c77e8d9491893001a49ffd31d: 100000000000 -# "ivory", "citizen", "rule", "scare", "angle", "method", "bounce", "caution", "noble", "pottery", "plunge", "resource" -- 82d818584283581cfdeca90a36961729da83ad1b0cb6d9152aee4220ee0f7f13d28089a5a101581e581cc1b4dece6c5380e121a33ad4787b2452265054f63f445d46c3c399ee001ac08bcc7b: 100000000000 -- 82d818584283581cb66de9fcc5b1d0a4027bc17c0fe0cb1063a2a0038f1e6255704d0de1a101581e581cc1b4dece6c5380e121a33bd41b7c3cbfd073f48b7fe85013d45315d4001a67495d86: 100000000000 -- 82d818584283581c29ab2ee0c764eb117dd1ad02b79d376aef5dc08fda58807537a3cb4da101581e581cc1b4dece6c5380e121a338d43c7af477d10814cbc0fb75aca1a3a223001aa80440fd: 100000000000 -- 82d818584283581c3d2fb324791d495d08134cf081542f59753e11a0fe140fa32b222be7a101581e581cc1b4dece6c5380e121a339d4da7a0ce57b2cb46000a06979b2331e09001adbb2235a: 100000000000 -- 82d818584283581c59b27cf9165767f557e464726248c6db5b85f5cf63ab0d39d48126fca101581e581cc1b4dece6c5380e121a33ed4f57d8406d0ded44c3ed52b7a06048884001a1ba8284f: 100000000000 -- 82d818584283581c3bab3169aa172092b03be4b7b6be662965a45971a5378be278948525a101581e581cc1b4dece6c5380e121a33fd4987e9c737a0275e27d791f471794036a001a7ad9d29d: 100000000000 -- 82d818584283581ce8306afb861720ca3717328220424d617e974ca9a61e9b90932abe34a101581e581cc1b4dece6c5380e121a33cd4b97c542c7b979421bf8c44e0e4e390b9001abb92090f: 100000000000 -- 82d818584283581c34fede5454f8fd44d7b935c19ca979b5359349afac9d0f952cec7333a101581e581cc1b4dece6c5380e121a33dd4577d6c9925bb34b7fe3038adf5730c9f001aaa15ec13: 100000000000 -- 82d818584283581c70c1f865e4144dc67bb8e6d991814f1a7248c2367080c731beb0aac2a101581e581cc1b4dece6c5380e121a332d4837664e9d23253494322c0de3c43bdc2001ad8e6d9b9: 100000000000 -- 82d818584283581c32b8a04559f12760056a9481dab18c8208b62b58bc13bad7861d34aba101581e581cc1b4dece6c5380e121a333d421777c567d56f3de82c6b3ab4dd338a8001acd3a6adc: 100000000000 -# "behave", "attitude", "glide", "else", "have", "moon", "settle", "minute", "provide", "trade", "negative", "nothing" -- 82d818584283581c049b86ce74cc4b235277576b3c1099e5a647e10b721c0a811abd8296a101581e581c6ac7b0fd0af63128930a9a5f8f3b1de276666a3ac7a7950fed135c42001af286a9af: 100000000000 -- 82d818584283581cf9ad9a450b7ffe4f62b6f63ad51da5dc82a077c5f16cf54e7a47c960a101581e581c6ac7b0fd0af63128930a9b5f568d75cd470dda9cbba4b89db3ad3fe7001a2a6d0cd8: 100000000000 -- 82d818584283581c6c1ed281d2261826ecfd113701dca8e69b868dea247e394693e5281fa101581e581c6ac7b0fd0af63128930a985f06986c0bd5188b75dead4ff35fe094f8001a1b01e5c3: 100000000000 -- 82d818584283581cce4e4598b5c4205ba541183b3b60bb76a89e4062b14d93fe7bd47459a101581e581c6ac7b0fd0af63128930a995fcde9c4f6a5bffad7d2aa7281267a789d001a74d1e829: 100000000000 -- 82d818584283581c31b2cc4a7278506201ed910ea6a8a7d493d97bbd35715336f406052aa101581e581c6ac7b0fd0af63128930a9e5fa6827e8fba0129c4989b2148077bead5001ab5a91db9: 100000000000 -- 82d818584283581cfb7274a98aa89c854c11b874ee0d786381a5fe1262fd9a65c1407774a101581e581c6ac7b0fd0af63128930a9f5f68d4d67a8ba898268d9844d6cd14ce7a001a1a8645e2: 100000000000 -- 82d818584283581c4af4ca35b70131011d6b341e0344656dd53dbed6dbb5f6fdb846d5caa101581e581c6ac7b0fd0af63128930a9c5f18dfcdb818b449ffafa1db2b7a47238c001a8a2e741a: 100000000000 -- 82d818584283581c5edbdbfe27c23cc7b40ab5b730d9a917936c79f2cc762e57f6fa687ea101581e581c6ac7b0fd0af63128930a9d5fdf3026a4e95ab961a49efeb940e10631001a3a34329e: 100000000000 -- 82d818584283581ce2a091e1ef3734426f16c2ef6f31d1b3004b1f57c0a1eaf178c12eb0a101581e581c6ac7b0fd0af63128930a925f66ad5a87ef2fed2624c07d9eb8453f1b001a19f496bc: 100000000000 -- 82d818584283581c72fa7776b5f19bc8a58daccbe261f3adf1a5de913c750b712eb7a0a4a101581e581c6ac7b0fd0af63128930a935f2dffb272c0d65c8918bda02c7fdf22c0001a1ed42eeb: 100000000000 -# "diary", "chunk", "total", "cruise", "they", "curious", "foil", "actress", "wish", "universe", "grape", "kind" -- 82d818584283581c6042ee09ef269b0642a0be5c317bb2cde8539c62742722ef61864403a101581e581cb5dfa74d4b6ffc9d5765d7c6fc9c451c62c100ee2cadcf3d26b3d111001a2c788451: 100000000000 -- 82d818584283581cd435a67616667cf67c8122f87da8e4fe99996ad0f1b0343e6a672100a101581e581cb5dfa74d4b6ffc9d5765d6c606d7dd0df8cfe4ab6ebf83ca51a01dd6001a33133222: 100000000000 -- 82d818584283581c239dd412336c176c3706186dfba8944c34949d74ab2f8c185c002f83a101581e581cb5dfa74d4b6ffc9d5765d5c60b1176ff8ddec869b0d137577d8d699a001a274f9ada: 100000000000 -- 82d818584283581ccf835d71d81675ea014b96e98ea356aa39fced9f2f2ca824fd5238aaa101581e581cb5dfa74d4b6ffc9d5765d4c6154b0ef123edac27f2e3ebe3a87ab55e001abc400ac1: 100000000000 -- 82d818584283581c27c9b1e5aa8851184d9177b0bee09b345c5e786852ccf66bb29b70f8a101581e581cb5dfa74d4b6ffc9d5765d3c61a85a6e2b9fb90e533f69f70d4670123001aa5a46f14: 100000000000 -- 82d818584283581c44ab762709ef25bf160193677bf83dac4ee2c4b1341af74476f986f0a101581e581cb5dfa74d4b6ffc9d5765d2c624bf3ed44f0a75a3750854fdff544de7001a24b4a8c5: 100000000000 -- 82d818584283581c774214ab177fa7d116c331743e7f8c264f1f162af86624ed31d924baa101581e581cb5dfa74d4b6ffc9d5765d1c629f9d6c5e5185961b71a088a2b4299ab001aea0d232a: 100000000000 -- 82d818584283581c093dcd7c4b8fcc0629bb28688ac9b33155b207ddca28fc2f403fdec6a101581e581cb5dfa74d4b6ffc9d5765d0c633336fb77b273d1ff92cbc16572fe56f001a5cba3c95: 100000000000 -- 82d818584283581c19f517a89f60777677b1ccf72258ef25739ea5d488ab48a492ba710ca101581e581cb5dfa74d4b6ffc9d5765dfc6c5cc838fb24ce0fe1e1b2fd8c94972ef001af4079a18: 100000000000 -- 82d818584283581ca7744dfbe110206ba6c1ca8aa6fa54cc702df9234d58891c73ad798ca101581e581cb5dfa74d4b6ffc9d5765dec6ca061c81485bc4bc602de364f536beb3001a51c4d8ea: 100000000000 -# "mushroom", "print", "dish", "slim", "agent", "tube", "expand", "actor", "layer", "idea", "example", "quarter" -- 82d818584283581c25c4fd076ba811ca42308488f80aed363d3630ad56c4ee02decb3843a101581e581c53f3e0cca3f1c7aaa8c68c6be6e0627e02e8b31ee3ad1f7c085368ac001a99e42da3: 100000000000 -- 82d818584283581c0c70a7ab6d3a5fa98229535b30920e63617abbfbd2d185a94200b3b5a101581e581c53f3e0cca3f1c7aaa8c68d6bb855b06bfab18a4df2cb7b019b3cb3af001af575b5f0: 100000000000 -- 82d818584283581cec815469547c187e056780feef8d169ea8e3c582e57be2ea9ad7b98ca101581e581c53f3e0cca3f1c7aaa8c68e6b85cafd58f27b617c01ead7862d26feb2001a0d07417c: 100000000000 -- 82d818584283581ccd91090b4f526dc3478562c0884bc31278f505def543f0906100a6e6a101581e581c53f3e0cca3f1c7aaa8c68f6b573f4b46ea4538ab1008340cc00f49b6001aeb4eeca9: 100000000000 -- 82d818584283581cab4234e1c1ace5503da206a7fd661d2f75c994841b313d35a5900ea7a101581e581c53f3e0cca3f1c7aaa8c6886ba80d2dc922c05863a635af66beac3c9f001a83b203a2: 100000000000 -- 82d818584283581c27db5c3978aba912b1779e8a9bdd982d62942181b8aefe8e690f045ba101581e581c53f3e0cca3f1c7aaa8c6896b7a827ab61a8a2f92b5530bec509687a2001af13baf60: 100000000000 -- 82d818584283581c3cb0deba5bbd8b0bc0f89dd60a97ff33b8bb8f967925be79b69b07efa101581e581c53f3e0cca3f1c7aaa8c68a6b47f7c7a3125406c1c4716771e37fd2a5001aeac7289f: 100000000000 -- 82d818584283581cfa7603afa956d793f8584c18b60002d0ce2be2216c60c27d2cd8d4b7a101581e581c53f3e0cca3f1c7aaa8c68b6b196c15910a1eddefd38fc3f675691da9001a0b7d9187: 100000000000 -- 82d818584283581ce24c9670825f7474be08302ba7bec68de7a6f7ad97d93873cd04d51ca101581e581c53f3e0cca3f1c7aaa8c6846b6a3af7134398fda769bd3e5174061192001a9a1ea7ab: 100000000000 -- 82d818584283581c8ef1ce45ecd9138390aa483714d049a6633da8180b3c4c3027fd4709a101581e581c53f3e0cca3f1c7aaa8c6856b3caf44013b62d4d678db9ad606f05b95001aa9c8ace7: 100000000000 -# "riot", "sport", "access", "grid", "destroy", "chronic", "evil", "doll", "sibling", "blanket", "seed", "goose" -- 82d818584283581c9b1ad6f75e30a24799835319b33134019c5952d758e16bb4b0e28c7fa101581e581c85d35e3256c67b807c1322b34c45933e76fa60d2c56a7ba0e53ff922001a7260564d: 100000000000 -- 82d818584283581cb14e41c6eedbaab6c6944be2863c235c81621ab6f5aefd069a7657e1a101581e581c85d35e3256c67b807c1323b31cdcf8a11afbfde8a9b159269b54bbea001ae65c11f6: 100000000000 -- 82d818584283581cf0ba154d0aa6abec2a991846a7645ad2963323cdc04d250af1ffdd34a101581e581c85d35e3256c67b807c1320b3a717c8772df926a5fddcbe947a167593001a960c3675: 100000000000 -- 82d818584283581cd71571949206cbb3c40a2a466f8ba697ffd4c4fc40f4a1e0b82be808a101581e581c85d35e3256c67b807c1321b377ae2ddbd1f9c3bbe1239d1a302b375b001a41612d2d: 100000000000 -- 82d818584283581c3bc655868809f32770bd610d07e7404aae7f4a80235c6a847f48ac1aa101581e581c85d35e3256c67b807c1326b396a029cc07fdd42c5686f4b7bb920142001a53203189: 100000000000 -- 82d818584283581cf6c9ff292d02cc994a6284994ffd19abce924a859b875276a88ae578a101581e581c85d35e3256c67b807c1327b366378f2facfd71433acdd23d71a7c309001a63beb774: 100000000000 -- 82d818584283581cf5ab5abe4102db16ae48382f346fd236bd8190d4341950f548d79a33a101581e581c85d35e3256c67b807c1324b3f1725e05bffb9aff8df837ac50697db2001a3c73b200: 100000000000 -- 82d818584283581c6e6c73196a1f1b12baa6a5bb208725c1d29c5717a9aaa8739e37b610a101581e581c85d35e3256c67b807c1325b3c109c46863fc3716723f1632067e3f7a001a366e3f6d: 100000000000 -- 82d818584283581c11a0e8cfe57a0e447b44dde0e1b3981a5add66d13644df6b535aba40a101581e581c85d35e3256c67b807c132ab3dbfbbf5999ff4887e6a16dcf91e50961001a13fe3449: 100000000000 -- 82d818584283581cda96937331fb278e2f455d1200b9289e270aff6da23cd222171ac0fea101581e581c85d35e3256c67b807c132bb3b09225bd3d00e69dcae84b5547facb28001aa545888c: 100000000000 -# "pyramid", "song", "photo", "filter", "subway", "rich", "broken", "anchor", "blur", "lecture", "liar", "hope" -- 82d818584283581ceb207c7c63f17fe0418ed1019aec9e4b5770dd9a87ebdee685da6afba101581e581c8ed04d4aafa8de13f4c158ebe4d316f77f4788511b41e6b4deda508e001ae6656be6: 100000000000 -- 82d818584283581c00bbe4df4a789ab5ec23f617bfe08858702ca35c31fab2e1d98aae24a101581e581c8ed04d4aafa8de13f4c159ebf649af5b560f50098044432628d40a62001a53e1329c: 100000000000 -- 82d818584283581c2fb8a7ded9610f2ee1b84e5883af51889b294df88012f0e095920f9aa101581e581c8ed04d4aafa8de13f4c15aeb0dc047c02cd717c1e447a09771cdc435001a5516717e: 100000000000 -- 82d818584283581c6f3575bbdc25aff4731a0d5c1548bf28f505525c1903898b10236453a101581e581c8ed04d4aafa8de13f4c15beb1f36e024039fdf78494bfd08bbc67e09001aba5b99c9: 100000000000 -- 82d818584283581cbd00a3e88edb1c3d68b497549211ba1f5b602556a776c5db7e3d81afa101581e581c8ed04d4aafa8de13f4c15ceb31ac7889d966a730ae4e5a7a04c038dd001adeeeef61: 100000000000 -- 82d818584283581c2ed93dc1ca796cc36197940dd92ea1c35e8f82403d37babf52548a65a101581e581c8ed04d4aafa8de13f4c15deb432211eeaf2e6fe81252b7eb4db9f2b0001a9c280de7: 100000000000 -- 82d818584283581c1983a6560ffa7897194e75cfb6a1b6e81bf8b55fea69330b6a458f0da101581e581c8ed04d4aafa8de13f4c15eeb5598a95286f636a07755145d97b2ac84001ac7b2b7cf: 100000000000 -- 82d818584283581cf70125a5135cc03ae49a13d60cc9437f629b90518a34a941fa5003ffa101581e581c8ed04d4aafa8de13f4c15feb6c0e42b75cbefe57dc5871cee0ab6658001af97f57d3: 100000000000 -- 82d818584283581c6bded1c1419565e1d86d023c1a62ed5f307c8c749ebde12ba3895d52a101581e581c8ed04d4aafa8de13f4c150eb4f2353d2cc084a93f525fe29931081f0001ade95cb9d: 100000000000 -- 82d818584283581cffad66a4f0b3edec1bc2ce45a516a8b65a254da4e7a3ca5c3c773faaa101581e581c8ed04d4aafa8de13f4c151eb6199eb36a3d0114b5a295b9bdc093bc4001a56fb9099: 100000000000 -# "sort", "crouch", "seven", "exile", "extend", "evoke", "summer", "oppose", "fork", "result", "plate", "goat" -- 82d818584283581ca55a09a4b32f2055339eedf400edaf2e560c57743f05b45cce5f04cea101581e581c378eba18611a81a9b13e09de971952a10f6511a68c95b9cfee98487d001a5b745251: 100000000000 -- 82d818584283581c749d8ad4aecfb946056ff9b71518069ff178708aff1ad02c4d243385a101581e581c378eba18611a81a9b13e08de50f437b9aefd6f81156caddd272f197f001ae0e38eb8: 100000000000 -- 82d818584283581ca14b264b1fa2cfffebaf81990070eba0b2d4417f29e6274b5b01d93aa101581e581c378eba18611a81a9b13e0bde20648671d13354ef7ae8d1b37c6ca779001a98c8838e: 100000000000 -- 82d818584283581c8f75e1cc7b3738f00e3f67c591d45fdffae626acb248ce87fc99d10da101581e581c378eba18611a81a9b13e0aded93e6c8970ccb2ca03bfc5c1b502787b001a6f8c4657: 100000000000 -- 82d818584283581c0de161ea4e00bdebc2d2b6d1e1a16c67eabe28656f1de7225a521653a101581e581c378eba18611a81a9b13e0ddea9aeba4193029738693bea970a400676001a832c338f: 100000000000 -- 82d818584283581c510da28cff7e6e18ef30f100fac9d2f85111e45e57511ee6527c3845a101581e581c378eba18611a81a9b13e0cde6289a059329bf513f211dea543d6d677001a507b0b74: 100000000000 -- 82d818584283581ca4d62ef91f48d78e1b0070e2a8f836ec8ba686bc13722e60ee9cd55da101581e581c378eba18611a81a9b13e0fde32f9ee1155d1d981578e027c98136572001ad490e6bd: 100000000000 -- 82d818584283581cc82f3be55f8fdce2c09aa2cf1e0069995ea014a5a4969e24e2d2699ba101581e581c378eba18611a81a9b13e0edeebd3d429f469385de064f689d1a93574001a0cf2e435: 100000000000 -- 82d818584283581c8e5295c7da10550c99ef10e1adc2a810025f67f9fadcf4ba58efb682a101581e581c378eba18611a81a9b13e01de73ef8060082a0681d349583fb74acd8b001a01807cfc: 100000000000 -- 82d818584283581c72de85fbe8cb4755253bb25b11ddfc519f996b2fe4ac7ad992d428cca101581e581c378eba18611a81a9b13e00de2cca6678a7c2645c5c204c4df0e09d8d001a118c297d: 100000000000 -# "safe", "wrap", "order", "affair", "fiber", "walnut", "skill", "timber", "rookie", "ghost", "spot", "napkin" -- 82d818584283581c38236f6a89db46ce6e75b3ac52b53c6fa3782fb2f5ad7f66f2cd1aa5a101581e581ca543dd1b18f9687795c88c0b0b741163b7d042851d7f1d3219b40081001aee59757b: 100000000000 -- 82d818584283581c86f2c36a798dc6f6505a1115acca4d6a21c073209f7875081e5fb785a101581e581ca543dd1b18f9687795c88d0b42dd7d089f37c07b9085d1c5239c7bc8001a78b477fe: 100000000000 -- 82d818584283581c5d9f6b43b6d0686e2d3755b34612de7944573a187839e4fa403cdef1a101581e581ca543dd1b18f9687795c88e0b7946eaad869e3d72038c85592e84f60f001a836511c2: 100000000000 -- 82d818584283581c56eacf13decbf09abe7432f63d69e070a7873c71ed297960bae19c4ea101581e581ca543dd1b18f9687795c88f0babaf56536e05bb68769239ed386c7157001accdb712f: 100000000000 -- 82d818584283581c51201b8e484e5e92e49a95d9929ca452b86c9368b4c08a99e6fe1c6ba101581e581ca543dd1b18f9687795c8880b34cf5fcd18354dab51654de3ee131563001ac0c93534: 100000000000 -- 82d818584283581cc0be7185add1f4379cf76183e9783f668e7c203995bbc06ff3a23632a101581e581ca543dd1b18f9687795c8890b6638cc72009ccaa1c46b0177f9fb8faa001af4a2091b: 100000000000 -- 82d818584283581c2e7d6127f9b81f8dcfa9a13942ded1949711b473db1681b76185eaf0a101581e581ca543dd1b18f9687795c88a0b9da13818e80248983772b50a04e40af2001a649aba77: 100000000000 -- 82d818584283581cc342787c15b9785d3a5f0812532434c510b1523473a75b37de3d1078a101581e581ca543dd1b18f9687795c88b0bd40aa5bdcf69c58eaa78699e0ecc8539001a9dbb6d94: 100000000000 -- 82d818584283581c1864ee0a62bd9f25575ae3b2efe116361f3e647eb1427654316a97eaa101581e581ca543dd1b18f9687795c8840b582aae377a9957d1854b7d94c4732945001afae7075d: 100000000000 -- 82d818584283581cc39c43002ae7c2d229d417d39704088295ff4a56868ac0d6233b913fa101581e581ca543dd1b18f9687795c8850b8f931add6100d5c7f8513128cf5ba48c001a6e1af611: 100000000000 -# "jaguar", "bitter", "merry", "destroy", "frozen", "dune", "embody", "pull", "cradle", "peasant", "sail", "whisper" -- 82d818584283581c27f640c9b979d38f507a244b39fb018263a68db0abd5357c4b086aafa101581e581c44265b181e6934e94b4e9baed96c029ed25a5769090709602cce5696001a57c6cdba: 100000000000 -- 82d818584283581c0046203448778dcdff576f7acb49f3d3c8151b741ee3b4d7c5608f4fa101581e581c44265b181e6934e94b4e9aaec4bde0341b281d56b33edf90f9e87b37001ae84ef527: 100000000000 -- 82d818584283581c079fd28a3ea5d9ee4141f4ab2919b65720a26e943c0a1b77ed1e3360a101581e581c44265b181e6934e94b4e99aeaf0ebfcb63f5e2425d76b5c1c603a1d8001a9594b24d: 100000000000 -- 82d818584283581c5d33dc918dec559711e556b166dd8d624f3cbd7c718860a9c3b16619a101581e581c44265b181e6934e94b4e98ae9a5f9d62acc2a82f07ae8bf2931ec679001a4affa638: 100000000000 -- 82d818584283581cc7e7783b306d5915f8cc648726f3e6c74095c9ebc9ef1de8fe1c00e2a101581e581c44265b181e6934e94b4e9fae28298942b02540b66128b09cf762c211001a927590ff: 100000000000 -- 82d818584283581cd0c7cefead96f149b73c9cedd1bc0c97e49ac14afa2aadd188b0e1ada101581e581c44265b181e6934e94b4e9eae137a67d9f8f205a30b6086cdc47de7b2001a84a32edb: 100000000000 -- 82d818584283581cd0e521501dc98bacb5ddcbea199a599085a54b3f088d881a871a3e2ba101581e581c44265b181e6934e94b4e9daefeca457041c0cb8fb5975cfe91980c54001a3dcbf506: 100000000000 -- 82d818584283581c00e97d79344969488d74e831ae841ed631661819cb99c897df7a023ca101581e581c44265b181e6934e94b4e9caeee1b24078a8d917c5fcf322f5fb331f5001a57f43e84: 100000000000 -- 82d818584283581cc116bda813b2be8e246122f46149f48ba154d7b9ad97d1d13ee2dc1da101581e581c44265b181e6934e94b4e93ae36f4f45417c585cf58c4bae695a47f9f001ae0162538: 100000000000 -- 82d818584283581c012d81e763214336abc68d86533b3402cdb80fe7c43f1241e7fdd6aba101581e581c44265b181e6934e94b4e92ae2145d3eb5f924bbc02fc901763bfa440001a002e210a: 100000000000 - -# -# Icarus wallets -# - -# "public", "wild", "salad", "cereal", "when", "zone", "ship", "circle", "other", "second", "time", "priority", "select", "apart", "social" -- 82d818582183581c7c35ca0664143108b3117dfec5745fa5fa139470d8b663b5e2c066a9a0001ae7ef6781: 100000000000 -- 82d818582183581c9f95c73f441cddf49e4d548e8f8c7575dd6417b0a34d81096ca0a558a0001ac7a7c3e3: 100000000000 -- 82d818582183581c92c2a447754a72b3c6a970e39e69fa84ac8e075df496af204f1bcba0a0001a328ef355: 100000000000 -- 82d818582183581c5e9b476b7f62f8c849fba5b98673c3aae75e0bd5d660e8e5a66eb49fa0001ad20dee8c: 100000000000 -- 82d818582183581c2361dbd134a87271a68a9a06a4ba9ab2d3cce57fd25864a93210c17da0001aadcc03c2: 100000000000 -- 82d818582183581c3b095a320da53b628c480eb4ba0a06721c8d7f1cf7ca9c117d5beef8a0001aed58ffe8: 100000000000 -- 82d818582183581c70de59b4031bb6d72cc44a4af3e9e3ca411e3a4719e99b4a25157abaa0001aba2a3b50: 100000000000 -- 82d818582183581c8ab67dd1fcce5865762297d470b0aa10fd092e059c4f3932147bfa36a0001a2a1fcf74: 100000000000 -- 82d818582183581c0e7825fd959eb4e4eafca89b019c2cfb992e0fdb4992265281a2a7e9a0001a9af9c284: 100000000000 -- 82d818582183581cda65979442075907dd1334bae5e68d016b7e944dd5a37218fd0bf35ca0001af32f56e5: 100000000000 -# "report", "weird", "border", "gesture", "since", "earn", "motor", "elbow", "huge", "pilot", "cool", "civil", "duty", "outer", "exhaust" -- 82d818582183581c830b710fac4e4deb20e7855d8504331600a73987fa9611a8a8f89ebda0001a090bd402: 100000000000 -- 82d818582183581cf80aebc53f5e6d7d0de9f5c88f6d51977da5d42ad82b09dbaba04e03a0001a968757f5: 100000000000 -- 82d818582183581c475b9efae114322ffddc0fab27151be7e2728a94068835220d7b966ea0001a79a13318: 100000000000 -- 82d818582183581caff0f948db9bcdcff13c26e47bfee8b803bc9067b69f64f605ee3e1ba0001a98f21658: 100000000000 -- 82d818582183581c95bf9ee7691a4f5f0152a2f77d8f7dd3a1fd5e78a317d0be71f5638ca0001afee79af1: 100000000000 -- 82d818582183581ca1a30fb4c90f7be14403a42dafd38e3a8d95d4a05f097b59556d0172a0001a9495aac2: 100000000000 -- 82d818582183581cb191c42771ced2d2373ac9866c141aedeb96734888a08c1024fb36d3a0001a28cf6408: 100000000000 -- 82d818582183581ce0d5b8193ed525cf2171d0ccbf3f0027b34cd08a69f165d2c5859f39a0001a24c02ac3: 100000000000 -- 82d818582183581c9c1f328a1c45288ccfdcb8b64e565d7d9fed8da90da00f3769db95bda0001a817b8768: 100000000000 -- 82d818582183581c630567b45beae97634a16c9210e5af53263bdd7830497672fb98e935a0001aab34b637: 100000000000 -# "illegal", "uncover", "fruit", "april", "snap", "army", "brown", "sister", "situate", "lunch", "they", "fog", "isolate", "earn", "vocal" -- 82d818582183581cd52061eebda42563c1d4f6caa812209dbe6ce7bd3db62d151c8f790aa0001a65f0bd87: 100000000000 -- 82d818582183581c52989738610b5e2c423e2b5454f664579371ec77a92b33d19c2da24ca0001af25653ba: 100000000000 -- 82d818582183581c6a4ecc929f01e4cf0dd5dc9513bfe20e31b5f70fbf03414bdaeac5c8a0001ab80f0bdc: 100000000000 -- 82d818582183581cfefddfd142bb2528c4fa043a68d42189a40f7afc0755c1882c7bda5da0001a791fcc7e: 100000000000 -- 82d818582183581c632f025335ba289c7fad3ee9f1daeaa96a63668535cf9eb9e70f8140a0001ae9e15d08: 100000000000 -- 82d818582183581c9a159d60be26c34d55736718295d9f3d93830c6fd96b7a1593507448a0001a8b2d5c66: 100000000000 -- 82d818582183581c20545ff35cfbd317038787f679ae751487ffc5cc6015fb768f5f2986a0001a90856190: 100000000000 -- 82d818582183581cd05c2363b85c14a631ba2b788a741fc4967554471bed0634fbe32ea6a0001a07902bd9: 100000000000 -- 82d818582183581ce7a9cfa7e9e7df25fc4e0800c210506e63dc2fea24f9d6aaf6a22beca0001a0132ed25: 100000000000 -- 82d818582183581cf31bf54bc941db9a4ba958b8989acb0432424f64ab6f80c21630f87ba0001a333ad642: 100000000000 -# "knife", "satisfy", "measure", "around", "time", "thought", "cigar", "boss", "truck", "bar", "mushroom", "hold", "raccoon", "asset", "canvas" -- 82d818582183581c1ac0859674c088c1b1fde2aacbbdda553145d13ea7fe598ec7e8b43fa0001a278eb184: 100000000000 -- 82d818582183581cf0b4f0cb6f1808db1975d08c2cc8f59f233e85f3bc1ffdb2f6824ad4a0001a25c05046: 100000000000 -- 82d818582183581cbe5d6cc2404c9af92743ba11828febfeb9e77dc6ab1cd3d99b7e99b9a0001a0ef34f30: 100000000000 -- 82d818582183581c146cad968658f66aebc8b925e76a6f17aa6c6980c77b3303c0bb9b71a0001a41335192: 100000000000 -- 82d818582183581c667587960432d729bc811bd62ae3aefd4b842cfe916488de4dcb70e5a0001a4257f615: 100000000000 -- 82d818582183581cd1d1d969d735eaccc8f4ce1054f8e77f6a7453ed5449149031dc0762a0001a1bc23ea3: 100000000000 -- 82d818582183581c35fb99d4d121a802173e205806cabf66a729aaa924a40f8972fcc4e8a0001a717e34bd: 100000000000 -- 82d818582183581ca26a9df53281861f8e271f6875d4543e4dd0320b99a95fc4164694dda0001af1d7799e: 100000000000 -- 82d818582183581c44aa7422b06e661c19917624d367835179f7ad1e484b19d4bb7837b1a0001a71032b14: 100000000000 -- 82d818582183581cd8fe6468bbe1c8fbc8e1f6626e9462712c2a020f1add660a822632a6a0001adbc5b806: 100000000000 -# "amazing", "pole", "kiss", "expose", "whip", "unfair", "example", "slice", "great", "they", "element", "claw", "photo", "dwarf", "green" -- 82d818582183581ccc854d843adb55bdd1d53bfe8e5f3430712238c7114531a885aa667ba0001a55ff8b47: 100000000000 -- 82d818582183581cc196ff9541f243796dfa9d57f31881cbecdabe663a29cdb364a51f8ca0001aac949f28: 100000000000 -- 82d818582183581c93987d553c3f02673f46032ce00d5271a1dce4448a51f07f11ba7503a0001a12a7d5f4: 100000000000 -- 82d818582183581c82c4fc51dc86ae5fc31a2bd09acfd82dcf49ba54483be727c6f62f97a0001adebf6e86: 100000000000 -- 82d818582183581caadd68a5f645fea10874020b4d92e5c26bc830494d3b917e722db79ba0001a8a41f00f: 100000000000 -- 82d818582183581cbc2a05fadd5f43506286cb6453e46b2623e1d27f929ef9af738bfb94a0001a32989a3c: 100000000000 -- 82d818582183581cf06f4979367447ea31a703151c904351a5e651774d03e9508245d9b9a0001a8fc5fc76: 100000000000 -- 82d818582183581cdbb9a8f475306d0a8ce9aa78fb3aab1ea5e75e4d65e067b947f13ebea0001a2ad8986f: 100000000000 -- 82d818582183581cd19e6fa826b3f2b461b665de3544e88db8d864bcbd7a3752af8973dca0001ab8e00440: 100000000000 -- 82d818582183581c240f9a16ecd5c782a7bca0ef2fa4d83119792dde8fc2c4644c0fbdb6a0001ae92c240c: 100000000000 -# "round", "trend", "rescue", "flight", "awkward", "enemy", "luggage", "range", "eagle", "shaft", "giggle", "double", "pencil", "jazz", "home" -- 82d818582183581ce66e3a4199612d9e34e1e1a9a0bd3173036b05945ce82bd32d27163ea0001a19ec5c57: 100000000000 -- 82d818582183581c26cbefcde53f8459fefdd9b0be6faf8d4b0d66dc65019eda3858f82ba0001a015808ac: 100000000000 -- 82d818582183581c6d29eb11464a3fc1755cca54602104edf7b7155a8b17fb31e45a0ef9a0001a87973a3e: 100000000000 -- 82d818582183581cc95c95b45e4c07f4c35b2ae5520db80d8ebd7d638e124a5e064f3c69a0001a90900559: 100000000000 -- 82d818582183581cd70d24c7146fdddb69bf5fcdc693c7f8eef2238f6130b47b84873c61a0001a4f77a162: 100000000000 -- 82d818582183581c6fe9b81e4a81a1b4c86fe3446175fde8f02d4df081ed9364da353fa6a0001ac2931b44: 100000000000 -- 82d818582183581c24e3ce9cca87467d64812b91a27192439cf86c41e607b9f45540633da0001ac1ab6226: 100000000000 -- 82d818582183581c47e7f696425cdd02ec681d79f45f0ded5f55d6ef2e9ff3366b02762fa0001ab75e82e6: 100000000000 -- 82d818582183581c7fa17a63480c3463607b8098e9206ec57f0b54591ab327cc30f3c146a0001a3ff6fe2c: 100000000000 -- 82d818582183581cd3cea4ce3ff2b029560afba0e11b17ffcd2be139e4621b25c8686a91a0001a08351abd: 100000000000 -# "talent", "example", "renew", "true", "amused", "alcohol", "immune", "exclude", "cat", "ceiling", "squeeze", "cover", "slender", "pond", "turkey" -- 82d818582183581c2eca50c5ffe438a0a2f90ff24f8ae5142fd53521167bbcbde416409ba0001ac3d0709f: 100000000000 -- 82d818582183581cbb323e96e4c443d1c595a0374be114269f85af4bc8b72c4c214cf1aba0001a7db6ab57: 100000000000 -- 82d818582183581c2b62158567b537bfc54f3f95a82e63fe5bf3bdb2ad7a048d3c6609b3a0001a3e6cb273: 100000000000 -- 82d818582183581c2c3367578b335a76e0a56490c6361b303bb4112ea85e2331ebe9d6d1a0001ab5c33f0e: 100000000000 -- 82d818582183581cf0d2f96d70a1c651656cbf8512342a7811431a81cb5a27b10469075da0001af563fd38: 100000000000 -- 82d818582183581c6994d1cb1126edf89e9720d99b89527e0210ebfbe1f1fae4b9ce2ad5a0001add4414bf: 100000000000 -- 82d818582183581c108c173935c32d35a648d02509695656bf6806b3e5ca10b4748f1d01a0001a34026310: 100000000000 -- 82d818582183581c96587877ee8385fa9a0ea9927e9d9f9a15f33c05b247e0ce77baa89da0001ae2b99875: 100000000000 -- 82d818582183581cba2a64cfeea26a0361862a11415d74d50b1ced4459e0a533fbd569e5a0001a45e9e8d2: 100000000000 -- 82d818582183581c7b85af33d64a88422802fb9a7ef40cd3b6b364b9ba503ad501daed93a0001a99a594ce: 100000000000 -# "box", "elegant", "raccoon", "brick", "uphold", "behind", "blame", "marble", "tip", "move", "gift", "juice", "crystal", "circle", "sound" -- 82d818582183581cbc35be18272c405960c03617d0c4039aa5c8eb56b04335b0e0ac03f3a0001ad6a58a3b: 100000000000 -- 82d818582183581cdb5a7c4678202eebb97c07f2e65d61ca74ff0c2eca3974c8e7243b6da0001a6ac5b040: 100000000000 -- 82d818582183581cd72d695b7e69b72dd951d62d0d3b41dc2a73398eff34f12bc48d5adaa0001a0544721f: 100000000000 -- 82d818582183581ce29d5e7cc079a4ec79a4566b1b9d5f8c2385ad5b1581927c9640d7c0a0001a259c7073: 100000000000 -- 82d818582183581c9a8f711d2798d7306a184e5c972dd475febb6db7c1f92a89e9335915a0001a94071600: 100000000000 -- 82d818582183581c0ec60fb19192002478525d884a005dc295941b80b212cf147b3c270fa0001a0ef0bc09: 100000000000 -- 82d818582183581ce1bfd566196ea9e6559e5c27be26086ef52eca69917631bad6959d86a0001accad2efe: 100000000000 -- 82d818582183581c7b64fc6346cfc71dcdf74af5e6d4919e47c8eeb187f9e3d8d6fa56a6a0001aa0f1dfc4: 100000000000 -- 82d818582183581cdb72732bca3f429a30a08d318d29e7e601b2df6afeebb215a34d44ada0001a64afb432: 100000000000 -- 82d818582183581cd7549d186f1654ccd14a6fa78174cf4de0759dfaa583c75ad9723a06a0001ac5e9d517: 100000000000 -# "mango", "street", "flush", "universe", "clap", "system", "talk", "steel", "tray", "target", "forum", "dust", "brisk", "expose", "prevent" -- 82d818582183581ce836c05ee8d5f5069772ebd709880fb270811524a089ce3ec0263229a0001a2d34cc6f: 100000000000 -- 82d818582183581c27f52cfa262ab1a7d6e4f2e4064ae7a1e7ec45a7a6cada27980e1e53a0001a4058b153: 100000000000 -- 82d818582183581c7a87c2254d9e192e416032226c2574b890e75e29d080b05decfc343ca0001a948d369a: 100000000000 -- 82d818582183581cd3eeb93d8eb571a31493827ffe53ae4a31a5cc82c254dc14ae89b24fa0001a53ca0a87: 100000000000 -- 82d818582183581c5e94195678ad72dd3ee41bc863b159867c9d6205779e6156c4633385a0001ab55b87b6: 100000000000 -- 82d818582183581cb7e1f655d15fa72c64066a1324606c9ccc328cc75ae8f19bed513990a0001a4b6def19: 100000000000 -- 82d818582183581c61149205d425d52b1d3b3ba3baa9adafe8b417e0628f4a380362bfe2a0001a528ab5f3: 100000000000 -- 82d818582183581ca4577866663e7554881be8d45ee5e31e1d396eb88e5be834c0eeda14a0001a6580218f: 100000000000 -- 82d818582183581c45161849d4e6dfce13ab61d2445e4a5b0647335e244752646e609dbea0001aa4447b05: 100000000000 -- 82d818582183581c09c0eefbd75b614045be005896f26504337e92fe2afa24d881b73332a0001a43a7cc12: 100000000000 -# "behind", "rib", "say", "absorb", "enroll", "pyramid", "balance", "strategy", "response", "evolve", "pipe", "dolphin", "shift", "flag", "history" -- 82d818582183581c87d9366826b2993d98b0d573466c963ef1ccd1f397360530fc13b2e5a0001ae0641ce7: 100000000000 -- 82d818582183581c1381c8f6ba70b080d53403254bfc24300357e4936c0a0f721caea9f0a0001ac381e8bf: 100000000000 -- 82d818582183581c9ce606879f10948bc922c0b21423ff539f22a1688f98650abcbed9e4a0001adbdc4bd7: 100000000000 -- 82d818582183581c0ef74cc4e3ae7deeb8ebd98496b1ca70dd47d6a23e0819626c79dfb7a0001a09787ff3: 100000000000 -- 82d818582183581cc3c5fdfa223f62ed970ed349f954ae33a9028d0d26fcd27fa63573eea0001a2c5fd265: 100000000000 -- 82d818582183581cdf1922881ee2ca0e14e55e035bd711f2aa89bba386dc8b68af3f5294a0001a2d90c1a2: 100000000000 -- 82d818582183581c9158437c23dc0ceb406e7d89073a7157e3ee35f5617d9f699fc07072a0001a20c0c41f: 100000000000 -- 82d818582183581c5db254ceae0438b0638c2a78df7c0b982278cc51b4d80c8eec34f9e5a0001a1b2b4a12: 100000000000 -- 82d818582183581ce84f83bf552d97cadf57a5330df2aef48bfe3b1edb29b8f1a7d9b137a0001a7431ba1f: 100000000000 -- 82d818582183581c51139f82f0db16c9e94ddd477c91d22f914ea9fb3794d689ed6e11f0a0001a3d18d966: 100000000000 -# "pipe", "weekend", "master", "nice", "museum", "endless", "cancel", "animal", "end", "aware", "unaware", "submit", "mind", "alert", "oblige" -- 82d818582183581c48b9336ad92e2959cafd6fd1b7794260b47deca492df192034ba7cc0a0001ace520a14: 100000000000 -- 82d818582183581c8dc63233f0843b1e2bbf4fc0e0ff3672eee092d974c9936f6de0e527a0001aed98d49c: 100000000000 -- 82d818582183581c92576f16d60075d784c3952900053690ba357b696d3baff7dc2232b3a0001a4dfa2811: 100000000000 -- 82d818582183581c56fb4df0529633f969b858c304f4ff33dbef952c33ada725a22520fea0001a72ab6d04: 100000000000 -- 82d818582183581c3b6227e73d0ec7f721bc6d0de98e54df2cf900fd1f706deb673d0053a0001ab2bf9c29: 100000000000 -- 82d818582183581c89593b44d5336d9c52b093e17c3ca4ca417c36658e3621dd8237faf9a0001a389f2811: 100000000000 -- 82d818582183581cff87161c8548a58710629cb18802964432774b6abd81f417c1226275a0001afc8171bb: 100000000000 -- 82d818582183581c2048947627ace5fe98cba18ad2d7ac910293a1da5e4b7d81ef78ca66a0001a87ec7bc0: 100000000000 -- 82d818582183581c248da797cc4d97ed75d67405969d6827044f1311ce8846e8a070cabaa0001a39af8aaa: 100000000000 -- 82d818582183581c5451c364bcd7ef8e6df4fb558d6406475bc15b398b93234197ebdc89a0001a04a3b2e8: 100000000000 -# "surge", "fan", "diary", "forget", "lobster", "south", "auto", "slim", "display", "yellow", "caution", "victory", "wreck", "silver", "direct" -- 82d818582183581cb0bbdb393465dc3fb8808c6f720e5b40789eef70b331599251857925a0001a0ed8a410: 100000000000 -- 82d818582183581ce512b4d9e1d6c7179a7e2d3dc9440d930d6afe0fbbda0aab8d284288a0001ab5926bfd: 100000000000 -- 82d818582183581c8085b307dc806772f85d011fefa17018f57b0520329d3852609b084ca0001a33c1aebe: 100000000000 -- 82d818582183581c2b3d06218746a2d84abd2f40bafcb68f31d2e1624c28d5a46c1383c0a0001a634bc5c4: 100000000000 -- 82d818582183581caf937622631064a446a576ba7eaa3120f7d11550779b428292d18df6a0001a6ed68528: 100000000000 -- 82d818582183581c8d933bd7c910e27bb6b05204373953a6b064d1a774caedbd5f4a362ea0001ab7821104: 100000000000 -- 82d818582183581c4c8e16fb671fa8d45c4d6eabf6537a88284d3c5bd4260c21e510c873a0001a1f5cc8a0: 100000000000 -- 82d818582183581c21619418ab8e830086ef9977816504ccd01f9afa28065dde9cf78ef0a0001a443ea619: 100000000000 -- 82d818582183581c488e6461824af0b1374e619c994a3442b8ec3eb73e6c7a4566664206a0001a96cc173a: 100000000000 -- 82d818582183581ca725d87840247e2d42eb4d969330fdd73ba8de09be2aacacebfc15a5a0001a871eb90d: 100000000000 -# "mean", "slide", "heavy", "science", "south", "delay", "divorce", "design", "example", "swim", "dog", "neck", "disorder", "drip", "wet" -- 82d818582183581c3d1446ca0f6653d2e84189e14fd64fdae63b67e7329085a4fc32bda0a0001a9c568dd1: 100000000000 -- 82d818582183581c3fbcc367331ef6b8525ecafb8c2cc5ae782ea82e51482f54810a41e0a0001ac44a4198: 100000000000 -- 82d818582183581c28052a901dc73d45718928419f7802865a7da27f41baf62da141d3a3a0001ae06f77cb: 100000000000 -- 82d818582183581c164dbc82332b0a0b955983a26e84b2f2cd24d97d80ca3a74e39062c1a0001a5b5ca82a: 100000000000 -- 82d818582183581cc2a6cf5af5ce5989e6f1ddf60c84f4251e4a42f2f3f6e2f9bc3b1ea2a0001aa15039bb: 100000000000 -- 82d818582183581cd9f1510b9bb114922d12cc0e88059b8514269fd4810576f89a3a2cb6a0001ab0930532: 100000000000 -- 82d818582183581c25f113752cf4df246e55a93773e9f22722a936f9c042ecd60a4fd8a7a0001abc0036f8: 100000000000 -- 82d818582183581cb05d6aa25ffeded19f053d90d6efee8fd01209d4e2e4c1db57e07b20a0001ab47ff378: 100000000000 -- 82d818582183581c42c051cc09fe9960acdb5f39db6520fd2572c0403a50908a6e4a7d7fa0001a0d1603fd: 100000000000 -- 82d818582183581c7c2217c0ea9f83b6ec19a9479b6c728049c072f45bd5099db3d161d2a0001aa1c72e73: 100000000000 -# "crumble", "dog", "ordinary", "always", "mention", "lunch", "corn", "key", "color", "veteran", "item", "chapter", "winter", "flee", "shoe" -- 82d818582183581cf9d70267e91c6834183baa5adef58104d2a87f6777a8d04963dfd4bca0001ad6c9e015: 100000000000 -- 82d818582183581c337ce2adfbb3b3428e4ad63a301844045a344591932c1d865023ecd1a0001acafbb067: 100000000000 -- 82d818582183581c898bc527129c4e19353bc1d53b3c0ff9df8bff5da32bce74290d1bc0a0001ae0713f82: 100000000000 -- 82d818582183581c8f334bf18abb9e586a8fa1326e85ba99c123aca3685915e7c8c2729ba0001ac0520f7a: 100000000000 -- 82d818582183581caaa7823a6914f318dfe79c3ff97028fe09679a30a2080fdd2f16ddb3a0001aeac3e0dd: 100000000000 -- 82d818582183581ce1a5dd832c9eb6d41cf65d9df84ac3a599c40a6e24f6a0eecaca8f90a0001a2cc726a0: 100000000000 -- 82d818582183581c79595d0eb817250af7d4b317683b8c9dc67ef1ccc5953eec643fdff3a0001a569068ad: 100000000000 -- 82d818582183581c4cd4818adff3db5e16a539129f01c0735314b2475536a932778101d3a0001a7da64c76: 100000000000 -- 82d818582183581c5fd3767008691ffd669b2ebf115bb4686fbcb99865b689e6819fed68a0001ac0ff81cc: 100000000000 -- 82d818582183581cbea86bd41a68451c4d738fa677c60dcbad71f4c113524c777f10be41a0001a01624582: 100000000000 -# "toddler", "print", "pave", "venue", "mind", "program", "ocean", "purchase", "embody", "super", "exchange", "ignore", "artist", "party", "economy" -- 82d818582183581c0e4a405696f47f342e8f1f8010ebc6322666347203475fffbf272840a0001a1d519859: 100000000000 -- 82d818582183581c7445762e0c211561891a3d5703a174fde8c0da195f071ec8dd4953aba0001a784987f7: 100000000000 -- 82d818582183581c10bd97688f2bcd01a52937b720bbe4b0138231cd05eb649fa149dabba0001a0036657b: 100000000000 -- 82d818582183581c201aa2af7d714659a68c49e55f4ea5ae346f7dac6af433111ff0fb15a0001ab067b8b3: 100000000000 -- 82d818582183581c6bfb83b0c1822adaaafb022c07b9797d1897537e0f9bb60730b9359ba0001a1fc6c5c7: 100000000000 -- 82d818582183581c91a3e838f5cfef3a9e772d06b6d721ca387cbe9ac7beac070746950aa0001af69a354b: 100000000000 -- 82d818582183581c0bd81ee31e8ed85f862d0644ae37d288f49dfc24b9c5a68deafa3b1fa0001a38633aaf: 100000000000 -- 82d818582183581c6bc4567b206c9eeadbe53dfb76a9467ffa7af2ca56d96085f2034f84a0001ab26f2a53: 100000000000 -- 82d818582183581ccbf10863f084c590bcda55a6ffcb5880aa85d248b8cb7f6ec1d1be22a0001a9d4dd8c1: 100000000000 -- 82d818582183581c831ae07f3dcd97ce2f88044c4e7283feec1cf6c10a44201d726d3adda0001a58e3656a: 100000000000 -# "survey", "slim", "girl", "raccoon", "valley", "clever", "wide", "assault", "blood", "copy", "uncover", "bachelor", "face", "cart", "style" -- 82d818582183581c11239da9a7e8e15d42fc4c60de81e4209aa60269e8ad63d9952daac2a0001a15874bd7: 100000000000 -- 82d818582183581cfd63c2d1d36b6917c80ab903d256ab44f4886a73af35fcaf3db32f47a0001ad22e7c2d: 100000000000 -- 82d818582183581c7a2e6a6949ba910680880ac144f7b6f28925a1d09563574efd8de7d4a0001ad1f0a811: 100000000000 -- 82d818582183581c7f65e8f54a79c05993535bbe67393d14a8936a126071dd63bed74fc3a0001aac16ad7a: 100000000000 -- 82d818582183581c4c35ec0b75dbf5b6475d6545b1ff919e94b80000f8da359eb4ba266fa0001af6a4c334: 100000000000 -- 82d818582183581c06a00b65df43e1af90f2da7710a4214822384a24109efdef992dcfdaa0001a14fcf41e: 100000000000 -- 82d818582183581c019a9785ba718e2437ed6a4645ed46a31bfb3ce6dcb931a915fc1111a0001a78a282e7: 100000000000 -- 82d818582183581c57c6417cd08317921dbabdae2599657d79addca990d39ae95cad8173a0001acb781e5a: 100000000000 -- 82d818582183581cbb0dcd81809c1fa7cee8e6e7c73f92ed7e4d55b6e8e1dee0eaa70f8da0001ad57fa3e6: 100000000000 -- 82d818582183581c762e9870ce5f1c4d4f152951fc8f615d7fb77e8175035c3a9560fb06a0001afe22d34e: 100000000000 -# "vast", "toast", "supreme", "grid", "sniff", "ecology", "eternal", "agent", "cable", "mind", "step", "gravity", "gloom", "process", "couch" -- 82d818582183581cb6baa37ca64c61fac7c2dc8ef14ad06dcb358aac36148049600e4525a0001aa1e1f1d2: 100000000000 -- 82d818582183581ca0b3e38512ecc4afcd82e77017e371266d93ac124c6421a2ff1729a5a0001a0844e69c: 100000000000 -- 82d818582183581cdd29d48253680c85bb582df2c49a6d2ca0a1744fdd214eca12592ad6a0001a97dc29f0: 100000000000 -- 82d818582183581c1ff98d78eb4be650f5f9f7bf7fc7fe7b026a5ff5666455b9771e680fa0001a05214aec: 100000000000 -- 82d818582183581cd83ef94c9cc0a53b937a6f81b40355c9098786d6aa30c4e199399be6a0001a9491ecff: 100000000000 -- 82d818582183581c9faedcade362ee93aa9d31528816a8408d7fe5d8b523ce6971893fdfa0001a561f5fa9: 100000000000 -- 82d818582183581c53ff9d7b3538790a271bd07b0f9eb3c44932ae6a4fffa1bd34b14425a0001a9cc63a98: 100000000000 -- 82d818582183581cefca5d1fac687e56ca95a3c24f39fd725b86b2e3659e4b58fe242d0ea0001a0474868d: 100000000000 -- 82d818582183581c4bb7d2f18a402f865617ac54a8c9dba2f191317f1aab704f2c7af349a0001ae3c780ab: 100000000000 -- 82d818582183581cd1376b5c5714a8cabff1e84107ac76b797fb7a42df298794af10a669a0001adc8feb4c: 100000000000 -# "civil", "near", "wrist", "stuff", "draw", "nature", "second", "supreme", "minute", "kit", "document", "dolphin", "same", "extend", "rookie" -- 82d818582183581c402f21ef314125b7082bf22ca0d64eccd36d4d90b2f556dead4a020aa0001a240b4966: 100000000000 -- 82d818582183581c418c5b26b97d59b2057b8c25bef859be0d1cd2daebd70cce7b592246a0001a1d3a69b0: 100000000000 -- 82d818582183581cb10e2348d122730db15b3bb71f71c13875fd2aaa7215128225e879a2a0001a831a42f5: 100000000000 -- 82d818582183581cda6a9c6068d354dee405ee5ea7bfb6cc2902462a574e4ac4b9e1b49ba0001a717f2057: 100000000000 -- 82d818582183581cf310785eaf94a32ebc8944034d14de777a214f688a30d8859e361aa1a0001a2ef1efdb: 100000000000 -- 82d818582183581cd58c830a17e0ec1db9af4b95a6319b5eebbc63ef8eeb81e3f486ae96a0001a3f4e080a: 100000000000 -- 82d818582183581c9327559b7cfbb70a3618a2cb20b05a91670c7dbbebbb4095012613d8a0001a9c1ccc7b: 100000000000 -- 82d818582183581c61ce168833c29da08a0a6ae9884fd30b2f04ba712db6d6324d2f6915a0001a8a913f5c: 100000000000 -- 82d818582183581c78a0f9eb1f9c5c9294fc7ffc1ae6c799c913424b208bdb3907068a1fa0001a32e1e869: 100000000000 -- 82d818582183581cfa1bae399d2567eaf65fdbefcce303058897d808b2172123b2236a47a0001a54b5e22f: 100000000000 -# "account", "spend", "broom", "soon", "swim", "maid", "bring", "trust", "turtle", "hire", "room", "clutch", "copper", "mixture", "early" -- 82d818582183581ce97cf1de53dd9fa4ca8e0942adef37976c7eeab039eaba23654d73eea0001a29a0051b: 100000000000 -- 82d818582183581c0e26503102538638994be527719d3744508fac794dea3083f3fae858a0001a9b49a681: 100000000000 -- 82d818582183581c612da07bd27d1e60036df47fc898471eded59996d1fda7da36c2a5e1a0001a79413eb9: 100000000000 -- 82d818582183581c076bd234f7d5bebd36e12e7b436ea433c890555c69a5134b8ad1a293a0001ad19047fe: 100000000000 -- 82d818582183581cfe0eea11e5c52752780f8814afa52598a04154d55b8a4f154bfa2f84a0001a536a7916: 100000000000 -- 82d818582183581ccbeebb74eb84a6860812cb7e10ed89e71323baf35cbce0fb98f67be7a0001a0c2ec70c: 100000000000 -- 82d818582183581cd3af4bfb01da350b273753259a909611df9fa9fba8898975391458b3a0001a01019fcd: 100000000000 -- 82d818582183581cc2074c5df820627a39fc579ac1c83c442b853a80b6692edc30717485a0001a9e72dfde: 100000000000 -- 82d818582183581cd3136a06f9778a375495f17efbe114c7df82a1640a7716c81d9181fba0001af14f7966: 100000000000 -- 82d818582183581c392e2baeeefc28dd833d26d52bf7acaf3088fde78f1aa2a369c4d402a0001acfe50db9: 100000000000 -# "neck", "soup", "learn", "tag", "skull", "seek", "face", "vessel", "leopard", "rebel", "engine", "expand", "hat", "magic", "liquid" -- 82d818582183581cd288837df3fccc5fddc50d151e17c0abb0754cee835bbd1b22a9a2cda0001a1465fc20: 100000000000 -- 82d818582183581c7a5cda83e3d8aac21aa0442dab54764b881ba0989a6df72323d50bd0a0001a0f54228e: 100000000000 -- 82d818582183581c02f7e0e0c779955619b392a26396e8ceff10609687b20bbfc0e5df41a0001adfb38eb8: 100000000000 -- 82d818582183581cf62628821255c873f05b329ba4c6604845dc4970ff2054507137f834a0001a4e6af263: 100000000000 -- 82d818582183581c4b94d8e629568b42c0abc49cea10a4634eabca8ac4420e722eeb0b67a0001a40dd3c3d: 100000000000 -- 82d818582183581cc2740cf4112e44e2fee0d2bf776e920f422d86abfc454043160e82a2a0001ab790c934: 100000000000 -- 82d818582183581cc6ab90e9dbf8f2125e3702680ac11b4303e5ee584f9e0ae4af5855dca0001aaaed548d: 100000000000 -- 82d818582183581cd61858a7fcc6e726bb31f88c81eeaa40815f8700bd600daa0931fa74a0001a7ff0636f: 100000000000 -- 82d818582183581c48840be5de305635aeb58b1d86d2a55e44cdf9eb3decc1d2f9bb09baa0001a3b108da0: 100000000000 -- 82d818582183581c704fdc1820548bfa8c17a44fbea552ad522e84be33f5121715b61890a0001a188aec27: 100000000000 -# "media", "tackle", "govern", "play", "snap", "cheap", "fit", "uniform", "welcome", "record", "measure", "lottery", "spoil", "group", "host" -- 82d818582183581c9a1daefac4ca21d0500b1367235dbcf885e07ab3285eb3c881fd5f4fa0001adc74988a: 100000000000 -- 82d818582183581c7001d2b261297b75e5d2d47dd14bf57df99f2476254d99cf5f30a52da0001ad26908cf: 100000000000 -- 82d818582183581c49d4d860138f7821dc79c5c89bffe833dd85391bdd8931bd4a8ea296a0001aee7d9017: 100000000000 -- 82d818582183581cce3b12f2b398da0d5c4c9080a45d750d12c67d030f1a05ad6ea32f6da0001a71594624: 100000000000 -- 82d818582183581c756b8cfe61a06f5a7bd1d5f549a3b1859b93b66344ad5da5058d6757a0001a36f0def2: 100000000000 -- 82d818582183581ca1169af5f12643ed320dc4d18f44f4aa9d1dc6178aa0eb018a5773d3a0001a4e84ebd3: 100000000000 -- 82d818582183581ca22aaf72d2a144372a84f6c5119b9f8dd3662fbd6b87bfa31c7c91bda0001ae8667cc1: 100000000000 -- 82d818582183581c5b90f5fa746a6c8f37e62848604c388833e717622cf94b2af0c78538a0001a29bfdcfb: 100000000000 -- 82d818582183581c2e38305d0dcabb4a8b520b48e794a7b657a0e83c3ab6e27b279754c8a0001a860b017c: 100000000000 -- 82d818582183581ca836ab9e4104119543384a8e19c257b831cc93242cbcb0a4fc009abaa0001a9cb6542f: 100000000000 -# "enhance", "luxury", "left", "inch", "together", "strike", "hotel", "fossil", "exhibit", "above", "unusual", "mutual", "hint", "shield", "moral" -- 82d818582183581cd7f1f26de66a1808836982a026345bff5d803bb9c9e2aa4da5d019e1a0001a734ae6c2: 100000000000 -- 82d818582183581cae1b90a86b8d25681ba57a064582582531314b219a239fbdadad6e1ca0001ad67f00a8: 100000000000 -- 82d818582183581c1c439d509757579f1ea80b4f72fad982f2823d0f83fa0d0a6bf6bda8a0001a36d51f72: 100000000000 -- 82d818582183581c4d265e819e506322d2fcc3e2556aa3f98705fdd2d0fa08d1e31ffcf2a0001a2ed8a31e: 100000000000 -- 82d818582183581cb0ce8dcb97787bc93d2700225def39ef34cb2e96b4285958b5138d2aa0001ae80d165d: 100000000000 -- 82d818582183581c9f9842d2d4d55d998e69298e21a4e3e68d34f15a5b0e5351b8a44ceca0001a17a27f9e: 100000000000 -- 82d818582183581c42abcfb1c9a518f0076ff047320d82ada29dae6a9c90e4baac6d3a0aa0001a598d4ed0: 100000000000 -- 82d818582183581ce15ec01bf8becae7193a2d4e4fbf2bce3656b2ce6c717c0f6c8c11d2a0001a1c7ff046: 100000000000 -- 82d818582183581c505afba1537f2aed44f66b62ecf31a389cf374b643fdb70b45c29906a0001a35da4bf0: 100000000000 -- 82d818582183581ca1f50b9a86c55ba3bb5c62295c274ee717062a29d5fa5d065903f4f2a0001a9849b87c: 100000000000 -# "moral", "abandon", "depend", "tip", "soap", "mushroom", "grab", "worry", "royal", "strike", "scrub", "walnut", "summer", "that", "poet" -- 82d818582183581c5ac26388f35203c9e26893b4913a2510d7ea97473b18ab5c3d0ec27ca0001abb3189bb: 100000000000 -- 82d818582183581c777ccc06da1e41083680cb1a21d3318c54ec9cf80d418caf95ffce80a0001af6ca3c08: 100000000000 -- 82d818582183581c4e5c6f7d42a1f2e0b890f49d7829fb4dd0fdca41de4e8a8e134b18d6a0001adcba4b1c: 100000000000 -- 82d818582183581cf2d6ca6bcd625067d3caeee20ae88f1bc7b3cba19aab42a6378318b8a0001aa430ec70: 100000000000 -- 82d818582183581ca88269520cc93ffa5a4a1840d23b3685c6c7402ddddf5c902623df6ea0001a5453cbdf: 100000000000 -- 82d818582183581c719a3e5f4d3570594a80ceec61bf06e41b0d9dad89e0bb9f66d34e00a0001aadc26cf0: 100000000000 -- 82d818582183581cfd7a9ec04556a023234116ce491f0a138063ac9ccad99517f80f711fa0001a927b45fb: 100000000000 -- 82d818582183581c57f9df5969cf0f9485060b13d1ed84eecee2f7a808bf7dddb4385f72a0001a12ad712c: 100000000000 -- 82d818582183581cac887cbdd59005190e155d5a91a8a6e75beaf19add8eac60b6392759a0001a836e5aa9: 100000000000 -- 82d818582183581cc0f807276a01f4259acf6195054b5011448524d80d6f0f7abfe56350a0001a91b666cd: 100000000000 -# "fuel", "twice", "camera", "control", "custom", "oil", "puppy", "scissors", "will", "comic", "general", "cry", "assault", "debate", "whale" -- 82d818582183581c93d7488186875c878074ad0e7bd6df7f7a06d35c4617ebc8917e46bda0001a607b634b: 100000000000 -- 82d818582183581cba51e51c58287835b89a324044e33aa0fe09b9e26b359c865836de19a0001a10527ee6: 100000000000 -- 82d818582183581c215261903db1c285ab84f418d126f5d2115963060ff5a61a4f77c995a0001a8f6cb375: 100000000000 -- 82d818582183581c3975560c0b87cae87afc703f76f5f8d7dd0dc1891e3cb2abd35d3ea7a0001aa49519c1: 100000000000 -- 82d818582183581ca3bd1f0089f2fae8ad377983f12020742e72354081eebdc67d88cfbda0001ae5731b3a: 100000000000 -- 82d818582183581c678256ccdfdeb026e072baf48b287a81153b602be3fa7102ac9fcdb8a0001a50999de7: 100000000000 -- 82d818582183581c01bbc28c53758b7dfc21ddf20cc36840d93eb901172662bd4922362ea0001aa58c3aef: 100000000000 -- 82d818582183581ca6da039093e71a14c6cdf60d80845b7da0736f40596ac30b47a14249a0001a08acad71: 100000000000 -- 82d818582183581c3ce10748ceaf635e61a986c7d1741ddccddf5fce46741dac6403b6dea0001a42b5d4bf: 100000000000 -- 82d818582183581cc102b8c2d66cce775f05150f0a92b6b62f2c2cad05cb62fbc14b5066a0001af0c2e51b: 100000000000 -# "lizard", "burden", "tortoise", "ring", "monkey", "senior", "little", "endless", "increase", "quote", "flat", "repair", "snake", "asset", "brand" -- 82d818582183581c8116daff6c649e0ff599505df1c4e20e4f1c70d4682ff303c945af8ea0001aec774bdf: 100000000000 -- 82d818582183581c6b77643d45182996cf11ae42c7ad7e00b6b0da374d8f5e887abdc3f2a0001ae3e81617: 100000000000 -- 82d818582183581c1b6acc0e3bae9c6bcc5e2890bc9edab097d79e992ae41658868ba69da0001a405996c6: 100000000000 -- 82d818582183581ca43cb2e2a8010c9ea8ca3b2ddef72d99025462cd63e05026c6e37efba0001a748a66be: 100000000000 -- 82d818582183581cef6130b6bead5c936bb1f494e7cb33e5df6f59cf31311f05896e10aca0001ae3565f9a: 100000000000 -- 82d818582183581ced3e7c9ebae724a30b33eeec2bae89a558f525994e9f6291bd900f14a0001aef1d868b: 100000000000 -- 82d818582183581c8bef5e27e73d6445f07df8646127d4a356c970f319ac7e28bbbc7408a0001a4a9f0ce3: 100000000000 -- 82d818582183581cce5be128a7685771cf2e19e719c5c08bd68e426371c11ac6011c0657a0001ac8c8cef7: 100000000000 -- 82d818582183581c44cfde58b4201079d1d0cae4197e5695563195b77305f31cc5f08a13a0001a07757cc1: 100000000000 -- 82d818582183581c4444bdcd353eb5139edfe36fb5484e924c8f318e215365df060007d3a0001aa38191e0: 100000000000 -# "border", "receive", "task", "october", "weird", "palm", "gather", "claw", "either", "matter", "avocado", "pioneer", "borrow", "that", "cash" -- 82d818582183581c47b1a5949d0dec7a0aba42b01e7901350f207d25a29942bbc4cec059a0001a584f2c93: 100000000000 -- 82d818582183581cfea4e6e76fe5c9dc832e335a43ee5583727551f4e3876fe40fb464dba0001a263c9247: 100000000000 -- 82d818582183581c702ac880cd887a4d8e38ca818f3ad1d69dfcb6405af1a8ddde69e131a0001a364fff6c: 100000000000 -- 82d818582183581cfa6ea7eb8ce291f21b31acf39452787f5ab3cae0451a4b12ab898faaa0001a93f5062d: 100000000000 -- 82d818582183581c40a581c92dce4f2ca5650b366eb4fb83da963419302855e8b010ec0ba0001ae5832106: 100000000000 -- 82d818582183581c0e3ad36266e36cd17269845abf34d3b198f1fdd7b3d5ca51b91763eba0001a0c4b59ef: 100000000000 -- 82d818582183581ca0b1199fcdeee1b91b240bee1c7f65d567ed135781aedd7fd00dbc08a0001a9f8c5e4e: 100000000000 -- 82d818582183581cf52081fd393f0b594ed8031ab76cae0a301a49d77b8530bf5f29423aa0001a75b9f06a: 100000000000 -- 82d818582183581c0af6a07685a8c7343ebf92f0da6c8210801eb84bf181571400e9c886a0001ae2b304e6: 100000000000 -- 82d818582183581cc20cd576f5b3c1eb20ac5c95dd57ec1dab02da8f2ae3eeb7fdb45608a0001a7ae11ce2: 100000000000 -# "camp", "hawk", "gift", "swear", "steel", "evolve", "coconut", "sight", "sustain", "tube", "diagram", "treat", "reason", "tiny", "wear" -- 82d818582183581c2c7266d7d9b876d2ba1e25b9db11834028c5a9ad192375e182041bd9a0001a80ac8e62: 100000000000 -- 82d818582183581c079211873cee5bc00e89b6daf1477027c5d182ee5ff010f49db9adbca0001a16c14741: 100000000000 -- 82d818582183581cf6c1736f365e0bd4dc7b0359362562d511db817ac7fb2a62d47340e7a0001ab2800657: 100000000000 -- 82d818582183581c97d76ad55ca8a37101e6544f0271785886f5ff2a1c828fa136320695a0001a62cfc4dc: 100000000000 -- 82d818582183581c63deadff2dfa6826ee75f48fdd707095205900ee61230457d913a71ca0001ac47273f3: 100000000000 -- 82d818582183581c383409b142c2fc044921879d25b7d4333fd4a5314db3687ce96835c3a0001ad401568c: 100000000000 -- 82d818582183581c91bd84719d977a52a072687130b37f45abd209fb5004d41a72da9672a0001a656e9c4e: 100000000000 -- 82d818582183581cf11661efb4c631a4aae1d4ba12509ce99806a1cc4b4cf01c6d315cd8a0001a01a59ea8: 100000000000 -- 82d818582183581cc30d37e1b01a26063c92bd04b057066bc7239581deb9276b21ac5726a0001a161a67ac: 100000000000 -- 82d818582183581c96ae2767b596340e3ef0ac62b884dc86904dedd88cc75de082f63975a0001a06617d88: 100000000000 -# "water", "wood", "forest", "also", "exile", "settle", "city", "dance", "shine", "maze", "fish", "attract", "verb", "laptop", "hair" -- 82d818582183581ca6f1938f18cf3241c8b6a7431b4a239a74ae9b00e54050a8e7d28a21a0001a709a2d4b: 100000000000 -- 82d818582183581ce3339b1240237fd2711bac2714b6ee54f2e253265f6538e1b235c3bba0001a37451685: 100000000000 -- 82d818582183581c36220ff94ea8e39e0ecd90272b6ad4c48a5924ff63251776f0a77137a0001a05302ac0: 100000000000 -- 82d818582183581c2f3985288f76637352e2d771499141e0d496622a97a96ed5cdec12c4a0001aa5f128a8: 100000000000 -- 82d818582183581c02c51466c072831395e20e9095492cb6278347776aabb72c0bb62813a0001a9dfe3941: 100000000000 -- 82d818582183581c6ce1e912e3c963348bb5b30caef88082d267b119f9b8e9721ed8387ba0001a3abe5b15: 100000000000 -- 82d818582183581ce051a28d116e156b19f60fa5a9fa5b5632a3dafca197f89c4c90425aa0001ad6f57e88: 100000000000 -- 82d818582183581c1bb3420fc7cda31582d9ae3819c4bf3597191a2cb8d8956ec8e6c90fa0001a7e6dbf0d: 100000000000 -- 82d818582183581c0512da3fd8bb8306512410439d4ac30dff7cc20f74db93d4cfae28c0a0001af6599384: 100000000000 -- 82d818582183581c88608783ea8e7d7ad1a34a50dfb77580a549fb184478a6e0cd0d16eba0001afb3554a6: 100000000000 -# "body", "soldier", "pony", "flame", "cave", "brave", "earth", "team", "symptom", "library", "write", "warrior", "certain", "gentle", "cool" -- 82d818582183581caa76af136988c21f413a8decc4f94d4b68de0900b00999a996489b90a0001a564d13af: 100000000000 -- 82d818582183581cd75a6c04b472f382cb60cbf836c8fd796d942259e8299bc9a732104aa0001afd2e1b72: 100000000000 -- 82d818582183581c457e54faca0f37f2791fea9dea35bf2dbf505a01821fe61b1d9773dea0001a1a351982: 100000000000 -- 82d818582183581c1490bee884b5333a1e15d860cde0175259e1e8d628ea2ae9db756d67a0001ab1f36058: 100000000000 -- 82d818582183581cf61539312f2e2449667d6e680c650d7de7b90e1f746c3cff8279d43aa0001a3c545a9b: 100000000000 -- 82d818582183581c2a7b7c03334f9276fa80214909d5cbc3ac4fdd8931cc454850effc32a0001a3a84df04: 100000000000 -- 82d818582183581c34c7b5d69e7e2da40e3124e73ca44d6c8c826b560739c42308b63bcea0001a72b122f0: 100000000000 -- 82d818582183581c491efdd6920710091b052c97c7fa602f7fa30b55ce55e3379d65446ea0001a521678c1: 100000000000 -- 82d818582183581cc3542b0b7dc96f91971cc4cab208816f0160de785f1c0d94e944941ea0001ad75d57c2: 100000000000 -- 82d818582183581c1884de2db4148bea620cae8cdafedf13891083f488786482f2bb4c1da0001a287317bd: 100000000000 -# "project", "document", "thought", "dentist", "card", "main", "afraid", "cliff", "crucial", "debate", "raise", "anger", "hundred", "lunar", "final" -- 82d818582183581cc29d86021d6bdf66edf74fd7106004eceec15c8fbca2ce9978118ba8a0001a0f049854: 100000000000 -- 82d818582183581c4fb09990f8d2c05b2127d9338917591f78f077fd91ca5f4b4f46fd2ea0001a78ca9dcf: 100000000000 -- 82d818582183581cba448600cd7b0ff7ba49a358aeefbfb8ab7be48fd1154af16a628a7ea0001ae0c151cf: 100000000000 -- 82d818582183581c48ff14340088f35da2d2dcce8fe33f4928e5bbfef01a9d12032b8ac5a0001a2f6c3069: 100000000000 -- 82d818582183581c421a3e8fd8a5752b6a269668c24028796575eb549eedb78509d190aca0001ad9503792: 100000000000 -- 82d818582183581cb99b721a6a882f2434ccf79880ec106e6c9bcd152217fb830daf622fa0001a4fe76ebf: 100000000000 -- 82d818582183581c53213c9e98748f87399e8c48bc7469f108de0c5b8fae50e09ee26e85a0001a09f45c47: 100000000000 -- 82d818582183581ce08863c7b1866be32b61a3a3c9231c461414dd20d080a9a396d4e085a0001aa2ed87da: 100000000000 -- 82d818582183581c6f04fe9c3d26fd9529bed4d63c6d82815144f998bc24b13d80d1a13ba0001a291e4f78: 100000000000 -- 82d818582183581c143ddc33285b0f2e861da76637194e9b667e767bc91ea3ecdc18416da0001abda02df5: 100000000000 -# "sun", "someone", "emotion", "replace", "error", "surge", "mobile", "depth", "soft", "anger", "clog", "sing", "fabric", "decline", "output" -- 82d818582183581c15fe3404204d31184766c2851788daf815fd14155ac7dafa2958c735a0001a4ff01d81: 100000000000 -- 82d818582183581c90cf174ec4d01c5615605f43fa5ff52269f4680e9a6d41569ee58526a0001ad9e084eb: 100000000000 -- 82d818582183581c2c4640d7f5e2befaaf75a4fc69dd1a1b9e14c898b0e294ffccd34a6ca0001aed1b5e97: 100000000000 -- 82d818582183581c717a3d3cf2d52529a590206cb6b949aa6e0c39b9e0b5343eb9e2b700a0001a2e96fa3e: 100000000000 -- 82d818582183581cd3c7dc76cd6e01b5e9694cfc6d7b13cc4b9d28d3667cc6ef70d64694a0001aeb226500: 100000000000 -- 82d818582183581c4275a35da098b6aacb47f5db51b1620ba128f4cee35c76892268edb6a0001a3e28af09: 100000000000 -- 82d818582183581c5fdf830c27a3ff7a6dea7fe0d9b826fb295998aa607e42db59ebacb1a0001a83a05b30: 100000000000 -- 82d818582183581c4ffea60d96fca434b89da448bf4131ef2e2ce59680171b5c555b5485a0001ab2927572: 100000000000 -- 82d818582183581c449da10ecfcd6ecc7a0b4650566b72f44c31690752695b598e7071e8a0001ae2063534: 100000000000 -- 82d818582183581c95647819b0b7f5dbcb50899c7ade189e951baac53b513dd93a4aa8b5a0001a9c6c40a1: 100000000000 -# "behind", "jump", "convince", "spread", "lobster", "six", "tooth", "feel", "error", "jar", "reopen", "save", "rotate", "jealous", "dutch" -- 82d818582183581c4ff9c018f5b1641c63f8340ce3dc954de6a017987492342563768c6ba0001a0b5f8c75: 100000000000 -- 82d818582183581c71b1a041d90cb7fa19215abcaa0d7dedbf18f5b2b80bcbd994ddf922a0001abce847cf: 100000000000 -- 82d818582183581c01a9ea11ada5c165693972756a48d812654128fd268c4954d059ff81a0001a59999e8c: 100000000000 -- 82d818582183581cb8677d31a85cd99fd408fe215dd0ecce0bec6176f806872d52f422e1a0001a7715a39d: 100000000000 -- 82d818582183581c728ba259289cee24b7e01c9a032b8a5a9bc050b052ee0cc030766ddda0001ae8f00ded: 100000000000 -- 82d818582183581c9f45a0211d5339e89c8cc7b665a372a5e20c795117b01bf2e071a882a0001a259401dd: 100000000000 -- 82d818582183581cb713e1d862f401b698baa08d90ea5341bb66dfffbf8a3b724a6f504aa0001a63d4b471: 100000000000 -- 82d818582183581c3e214199fef9dda9e0593e2ff55e7ea113233d65d3eb3b012ef2e532a0001adbe8388d: 100000000000 -- 82d818582183581cb0853b3cf3164827621f34c0ad2340a27124799c5c75c5d110ce55a5a0001a3d053180: 100000000000 -- 82d818582183581cff9d5068ac17b647d2065b7680523dacd864c16bf02520ad977b3869a0001a2c87ae33: 100000000000 -# "title", "primary", "loan", "peasant", "reduce", "tooth", "warm", "way", "daring", "accident", "replace", "pact", "yellow", "mammal", "strategy" -- 82d818582183581ca3c666043855c264f407c0d88d95ea9573947d0dce5bc9069c15a435a0001a28c354f0: 100000000000 -- 82d818582183581cfe0087366fab07098951b3e173135aa3c363cb218ac074ac3953f9dba0001ac654e3f4: 100000000000 -- 82d818582183581c77abebf77d00f4029719cb7a36fe42c9d311b3f5158fb804619a7924a0001a571dc968: 100000000000 -- 82d818582183581c6c526adef11170c8f97d05a6afdadf4dbf6493f9e59a94e611db54e6a0001a39bcc0bc: 100000000000 -- 82d818582183581c6ae20ac6a484570af9e37fa7cb57481729bc776033d13147e1a50b3ba0001aae183058: 100000000000 -- 82d818582183581cd2ad16af21b8e2c097b6ba4c4f600f1d108ce61f198d71146587e8b0a0001a3cc98270: 100000000000 -- 82d818582183581cbbe0e6bd2b39ff8a9246133c46e465f495432bb71ff4db0c67db352ca0001ae1d7a16c: 100000000000 -- 82d818582183581c2c08b2bc7389fc47799d3ad246228724438e53d055443947018176d0a0001a62c7b6bd: 100000000000 -- 82d818582183581c5389433bc489408e119cafeebbe53068fcea61f65274dcccba4664c3a0001a8bf28d7d: 100000000000 -- 82d818582183581c750211cdbc80f0af1884d1f4daf126d5515cfd5677e2bb072196c299a0001a30e9d6eb: 100000000000 -# "focus", "fortune", "foster", "cattle", "split", "just", "sorry", "phone", "field", "proud", "patch", "expose", "toward", "garment", "now" -- 82d818582183581c6d8db3a060e68c5d72208da01f3b9d33b778a54d39e7c4b6abf22617a0001a6ec6286f: 100000000000 -- 82d818582183581c17be715f8d4cdf573f8e0c13baa23f5eeb6568a94b257635ae7388c6a0001a127bd905: 100000000000 -- 82d818582183581c608e081cdca1d0cb781b2260e747c8c2ed8852cc5b87642113df346aa0001a65b2f785: 100000000000 -- 82d818582183581ce918e9a36ed2a6e66b4e2afc2704e2152a7256ef658b3b30d9835255a0001a02f178e4: 100000000000 -- 82d818582183581c1efb48624f709d6f8341f2dd4096488186c1a73e8d816945507e4a74a0001a1e6e26cc: 100000000000 -- 82d818582183581c7a3735e1809a3c0fbb7739857795398658bfcc04945998738116311aa0001a3bf07a7b: 100000000000 -- 82d818582183581c52a21ce3a2d1e1f0ac536010fb68daf2c6e31d7412740412849219a7a0001aaf2864cf: 100000000000 -- 82d818582183581cb55db2931f0a4f7650d81b304c348d0b9b40daee4d7603d9ba76ecc8a0001ae2c6da23: 100000000000 -- 82d818582183581c018371733cac48805836bc33a7467183a1e61876869a30e9d25a67b0a0001abd7bf9d4: 100000000000 -- 82d818582183581c29086dd9d616ec79224cc77e511a95794ac91e7164eb911d9f114df2a0001a693b7504: 100000000000 -# "dust", "wheel", "blossom", "describe", "spray", "pipe", "broom", "corn", "vintage", "switch", "isolate", "disagree", "over", "ski", "truth" -- 82d818582183581cb3e31c7b5e1010e89a9852e71bf42849099e8e907aa21caa7aa9d3ada0001a324fe7f6: 100000000000 -- 82d818582183581c5ab8c52379bb325b7337e0287cacf38c56f6903d0aee7bd7bea22729a0001ab69cb1fe: 100000000000 -- 82d818582183581c877d1e6928b545948197ea52f76250ad967ea021c64462ac8a3d02ffa0001a94008bbc: 100000000000 -- 82d818582183581c5704fa5ed7f486b45bf3a06272ac63750997e1db70eafc4eb511efc2a0001a8470eb6e: 100000000000 -- 82d818582183581c02be5fcbab3b26e61791cb9b4ef36b8a55a35052b68df0a0e5f8f154a0001ae54c4b7b: 100000000000 -- 82d818582183581c5bf8725d59f039990eb5e63da9565d88a89ac448ab8fb270c5655bffa0001a3e011bde: 100000000000 -- 82d818582183581c489065d9897720ca273b2db685dc1b5cdafb45ea1e008a3c17b23bbda0001a22f23b77: 100000000000 -- 82d818582183581c98a31be2edd824f1feb9533a874a92772d99e42e7d0329230398d808a0001ac56fc267: 100000000000 -- 82d818582183581c14fa7f8ad6926a660f3ec5afa591f3f2b1910cc0b8ba4a93c48b00d3a0001a7882555e: 100000000000 -- 82d818582183581ca72e8d3ffbe1a2e976b79b7eece59b7849c6158538818f3f7cfba302a0001a915c8a50: 100000000000 -# "toast", "claim", "assault", "sword", "scorpion", "emotion", "weasel", "detect", "bounce", "mixture", "various", "warrior", "believe", "wing", "celery" -- 82d818582183581c21ab440521ae89f4cc1371e328c5292784c5a2b73d66887d79d69d06a0001af8828935: 100000000000 -- 82d818582183581cc17a8ca623a7f5396db9273e36aaee3f76d2d92a813c61deff52d490a0001aec311427: 100000000000 -- 82d818582183581c9c0c4f322803895e733ad089154e0146878ddcd47fd93ede9c4b2e67a0001a32a45774: 100000000000 -- 82d818582183581c87f6979b39c79b04914d830bebae26ee3f652961cc90bab350bb0b52a0001a533d481a: 100000000000 -- 82d818582183581cce1bc9cba54de6dd510d5ec93c20fa552d8698aeb45cb165d679226ea0001adc5aad66: 100000000000 -- 82d818582183581c019d0a7690493035187c7755638c93265473c4414475536e563c45ffa0001a94b8b55a: 100000000000 -- 82d818582183581cfbb032e7ef48957a6a54e6f9bcb2efd7896b4264066de9b59a8e7cb6a0001aaf886997: 100000000000 -- 82d818582183581cb1e120b808ebf3785952ede70d006a230e346f0ab468ed0c7394b294a0001a2d8357ae: 100000000000 -- 82d818582183581c3e089c9947efe6c236536cc0a3f868c0ce87145b3bf7622994897fe7a0001ab44138d4: 100000000000 -- 82d818582183581cb4dd915b467c8df597355c5854285e15c93434d417f2ac127982b537a0001a0f6cd2b6: 100000000000 -# "donor", "casual", "mention", "media", "erosion", "tail", "pass", "camp", "raven", "accident", "nothing", "option", "lobster", "accident", "magnet" -- 82d818582183581c76ae812682f56e93d7901aba200a98d6108bc43428f2176ee0551580a0001af20effba: 100000000000 -- 82d818582183581cad04812b249982b69e271b1d8dfa2e904e58e21c6c19dbf0c684075fa0001aefba0c23: 100000000000 -- 82d818582183581cd573840c86531497bfca8a60194743d0fd0c0691dcc9b0ccbabb30fda0001a47fbfab6: 100000000000 -- 82d818582183581c475b6defccc81cd2864d6174d034e3d1ab46f164ddd8e952e88fdb5ba0001a15366f1d: 100000000000 -- 82d818582183581c58b0babddf558a0c7cd01531bf4ffb9b70310d5c24c76d6a9706ccf2a0001a01acb357: 100000000000 -- 82d818582183581cf5688969094a7088ca9fa150bd6f6f3ff5e0ac8b277d683c21ce088da0001a1dd5d032: 100000000000 -- 82d818582183581cce8edbef334b73d108c0b9bf4a2f19cf37c547cbc9adce6a9a266409a0001a782cbc6c: 100000000000 -- 82d818582183581c718c5e84b2a444bb19b02464781366d89fd2c66e9fd85a672532cf46a0001a8fe21023: 100000000000 -- 82d818582183581ce1f43e66463926070eef464fb60dc0c22f6c03a215789540bcc5f5b3a0001a27afa883: 100000000000 -- 82d818582183581caea0ae81289fb861514d5ce52685e95e7fa870ca4ed82d4983cf2642a0001af3fc246d: 100000000000 -# "remove", "limit", "okay", "garment", "cat", "long", "steak", "since", "follow", "caution", "forward", "april", "nest", "grab", "height" -- 82d818582183581cfe3137be9cb21af737acf0e5d73b5d475f697d3a2f7754ac34f4693ea0001a5140f21b: 100000000000 -- 82d818582183581ca92a34cff09f9976404ee3ec2501092f6f63ac793f8dfc15c7e645cea0001a2b8aeb3e: 100000000000 -- 82d818582183581ce95f08372f738f3b95416fbba33965e0bc168a83f90249789b5fa20ea0001adb864ba9: 100000000000 -- 82d818582183581ca919e536b7955861d1c186b8d1117ff5b683c723b4755bec78b81c31a0001a31fd258b: 100000000000 -- 82d818582183581cb2daef37c54e5ae4c6db8636f83ea1784f707ad11979555a369e2ad1a0001a3a534580: 100000000000 -- 82d818582183581c1df137670ac6f29480329c6a25a8cad7f314d7c69758e80bf277b364a0001ad6d65167: 100000000000 -- 82d818582183581c357f2e8bac9d63dc87523c0a9ee8c5c8552524555dcd49ff8c238da7a0001ac1967015: 100000000000 -- 82d818582183581cdb65482e46aca5b27e49e53e5056faecbcd80b51c5dd70a25a0308b3a0001a73f97ddc: 100000000000 -- 82d818582183581c91134886292f6b0b993bd2f557180f26539444aa4bd2ec7c88ed0798a0001a0bc2496b: 100000000000 -- 82d818582183581cc0aefd6ac1e197023fbda4af99c4f002ef4132b9e4155b63a9055e1ea0001a06e83bc7: 100000000000 -# "nature", "weekend", "medal", "neither", "upgrade", "urban", "book", "swear", "ketchup", "enable", "enter", "oblige", "sport", "cat", "drink" -- 82d818582183581cbe571ee5f568b2096753fe95dd552c2cfc023830e790e393b6dcdb2ba0001af574e981: 100000000000 -- 82d818582183581c5ba17e52b3ee49bc4482484c34fa1bfd162b987caef0f67504829bffa0001a4dce6153: 100000000000 -- 82d818582183581cafc0e193372c0e7e8c04673889084df32254a47d0a05a457dd2d7f52a0001a8925d1d8: 100000000000 -- 82d818582183581c678e4315d9fb1ad17eee8336732beee260d4ad8cb54a646d2e04f553a0001a948cea5a: 100000000000 -- 82d818582183581c5b00169f7984b66439303c32d211bad7675d27de1980b48b9f3d052fa0001aae8aabba: 100000000000 -- 82d818582183581c25eebd4292dea4dd5bfb4e04c761252416457afc2ff7a3085d1dceeda0001a931a6dcb: 100000000000 -- 82d818582183581c1fbb2c48c233f86d84d8b6431c60225dfa99027485b0b100fde89958a0001a1a1bff16: 100000000000 -- 82d818582183581c5aaafba97bf74ef27922b26858a7b53b5d7df3f3331cb330944fef55a0001a5ec95098: 100000000000 -- 82d818582183581c0e753eabb6d3735b237dca2a6a3e0a4d40965a4cc46d02e546300fe4a0001a279981a9: 100000000000 -- 82d818582183581cd6eca269826b2da1f7b72ad77e635f88778e6516f3a4ee58ee69303fa0001ad63af037: 100000000000 -# "wheel", "pair", "used", "radar", "rate", "mail", "execute", "february", "decline", "weasel", "exchange", "visit", "slam", "trap", "globe" -- 82d818582183581c9ab9b87ee7c3349ecf72de28a1951d44bb271e1503e2caf7d8cf4bb8a0001a45436615: 100000000000 -- 82d818582183581c55fe84b29442f74921fd1103e013d0c6aebd260596e094a59a31a129a0001a338eb189: 100000000000 -- 82d818582183581c336e03a120e398750432279a9149e5375f7102407c674a18b2272baaa0001a580b404f: 100000000000 -- 82d818582183581ca2e878baa28ad35a5e6c6d603e51c1eb0085dcbc45318b16b8cb4138a0001afbde2874: 100000000000 -- 82d818582183581c964c0dc54dac30c8a7e4a0c92e4c30cea689362d96f82b68bfe3199fa0001ab1bd8877: 100000000000 -- 82d818582183581c4d2ec9a894a021d94fc02aa307a617d96afdc09c8ef5d523c5d5cc98a0001a83de9d16: 100000000000 -- 82d818582183581ce843113d8effe73b7f580cf50f370675ce180f8c26387f680694b75da0001af2f77b95: 100000000000 -- 82d818582183581c8e34ac4803f387447efd3c26f28a10d59db7a5cc9778cf11d38bfe54a0001af785bd8a: 100000000000 -- 82d818582183581c3aeda12130e2dfb4db1fa934047ffd9bfc28fbc72a66835f517f1b55a0001a3bb96d13: 100000000000 -- 82d818582183581cdcc6b2142b38f9a997852a515584e2d51fa17e63f8b4e6736395946fa0001a8a21580d: 100000000000 -# "session", "outside", "dash", "whisper", "prize", "frost", "used", "dune", "dust", "diamond", "expose", "hamster", "object", "home", "web" -- 82d818582183581c1ed10ecd18998b1c03166b2e43d20742a35eb57504d2bc3ee794cbdba0001afaed0232: 100000000000 -- 82d818582183581ce4006c2d0f1a164bd614cdc7d658d80018e10dc030e235a26ddf23f1a0001adfe8e228: 100000000000 -- 82d818582183581c4ea4dba0f8adef1dfe2bd778ca06b769aa89c338a7ec0e1a77f6a4b6a0001a2f0dfc88: 100000000000 -- 82d818582183581cdc9fe67bb6a8b7d6eeadfc866b87138ae22cf650538bf14c5c8fc6b8a0001ab5a4aebd: 100000000000 -- 82d818582183581cd665fe0171f90e04923f14e98c55de73d59df96bfffd1430b2be6378a0001a87c64342: 100000000000 -- 82d818582183581c48c112c007c09cd03b0781512be6f55fc2ced30d5caf406d3259e358a0001a6d1f6710: 100000000000 -- 82d818582183581c61e11eac37eca0a4c6911a8ab3fbb8b2cb5ec016bc50371b151f6926a0001ad764601d: 100000000000 -- 82d818582183581cbed5cc4f814ac866bfebc9e2ce04387b27f2ec1f433320ae2c760aada0001a25c34820: 100000000000 -- 82d818582183581cbb8e8c82eb246981598ac1eb171e75dc2af1ece48a63f2c441ee088ca0001a267befdc: 100000000000 -- 82d818582183581c74dfe97a9b042ff1ae3492ebec7e1625fbf35a67735e91ed2d2ca90ca0001a32ac4fae: 100000000000 -# "visa", "furnace", "shy", "fun", "quarter", "buffalo", "rough", "october", "cry", "push", "marriage", "around", "pony", "spike", "struggle" -- 82d818582183581c2e32987210f4d0393b5a1e9aa61cb604c52b1cd642f3080573307b76a0001a3b04a6e6: 100000000000 -- 82d818582183581cdc353a85768c95c4f32e5abfb1eb6c8ea6e922ce3f4122aae72f760ba0001ab665f335: 100000000000 -- 82d818582183581cc57b8743a67508714ec999e502d96de0eaa6b4c11283728f3149e64ea0001a971f3e6b: 100000000000 -- 82d818582183581cdebc70ae9b64f4acf43ebddab75cf56b75e671aca6772cdd2340db9ea0001a0b0b2790: 100000000000 -- 82d818582183581ccd8b806f7f9ff99cec2114c5985b36da60b954d128a87db9016f2369a0001acb395312: 100000000000 -- 82d818582183581c8ed071727f2ac97f813777b89c066b6c20f56f3bf7e75557569ce694a0001a869d5121: 100000000000 -- 82d818582183581c004407d9ba92672fac82cb27a2e10451f23446492a44b1af8d3057d9a0001acf5a6aa5: 100000000000 -- 82d818582183581cabb0e8b8905cbf1791c60b96045b2ed62a18b226709ebeec36000a1aa0001af7e24942: 100000000000 -- 82d818582183581c5842be4d157327b209ef5d04d68eb70e9a016a606c2ca40487dbbcc8a0001af6188d12: 100000000000 -- 82d818582183581c0006ba6733b35e767fd60057e679d6244f0838ad1bbda459a10960a1a0001a757d3369: 100000000000 -# "river", "verb", "deny", "tobacco", "release", "game", "culture", "trash", "essay", "excess", "citizen", "ignore", "home", "hawk", "purse" -- 82d818582183581c1daacd92590a4af51481dab64991629a65140943b57e33ee626703d2a0001a1fb2eb9d: 100000000000 -- 82d818582183581c99e998e43000d069b6f2a970f60d96fefb45a55257b6180cae6fbc64a0001ad16d9c9a: 100000000000 -- 82d818582183581c3cfa2d03c03fbb212a6d73a94b98d7fdc0f30de59dd627d431741868a0001aac6b08f7: 100000000000 -- 82d818582183581c84387f13de8848872c458cc693b37897c003dfd4fb92164263c3d695a0001a28a82253: 100000000000 -- 82d818582183581cb684f0c599bf279ffaccf68604dd18ed2f85d9b1dfe9590682a542eaa0001ac562aa36: 100000000000 -- 82d818582183581ca566b3044941ef087437da4712df29faa866c8e11304c336ce8f6512a0001aaaddf2ee: 100000000000 -- 82d818582183581ccc611e22fb98642719c468a8f841717b6d01713e13965582c9d75ca6a0001a5564031b: 100000000000 -- 82d818582183581c169185a1e79ae7c1beb89836eb9e756d78c39caa37a4eff2e29a756ca0001ad035c3bf: 100000000000 -- 82d818582183581c5360b7c0a9057117a622b52c8a73da40be70c0aae66982040418102ea0001afa00a880: 100000000000 -- 82d818582183581c6c68c9f9cc80580cc5439e5a0243f3636af079f7a6fecf845ecc8e54a0001ae0919fd8: 100000000000 -# "erode", "father", "violin", "afraid", "satisfy", "supreme", "tag", "flip", "tuition", "satoshi", "two", "wagon", "embody", "area", "good" -- 82d818582183581c2e59440b3c99fb9b2f8c823c32c3b47362c44e11ba7e3bc742e4d8d0a0001a9daad125: 100000000000 -- 82d818582183581c63fb77a6c759b20dee91aa9b13c15442d70a34767d2f5a8d4de5a3fea0001a16202c00: 100000000000 -- 82d818582183581cfc3b67e1f1fe59bee85ae1b6e8f02270e13e73cf91e92f1fd7ac3af6a0001a1bde1adf: 100000000000 -- 82d818582183581cbe3092d2d6c159f87333950d0c522ee27726326a95c1d8c58a9cc385a0001a9bddec76: 100000000000 -- 82d818582183581c8bbe4dbd47325de8975577a14ae3d3c38379f4995d8f8b26846a1352a0001a2972bc9f: 100000000000 -- 82d818582183581c70342865e24391838cd909e5e435e521abdb711c92016e5895e2d62ba0001a46c3410b: 100000000000 -- 82d818582183581c1a491fbb61f977a896956b7d98e74aad471886efaace428942bebbfda0001a71f6c8db: 100000000000 -- 82d818582183581c9ecea44a799c846e99c9caa057bc5fcb319329fcd87f9841daa941dda0001a10a23d0c: 100000000000 -- 82d818582183581c85c215ca6a51b1a78aab399a452c1ecb08c78cbfb6d708986a3ccf8fa0001a9c43d115: 100000000000 -- 82d818582183581c7c8853719de27fcab07f0e47d241b3fd8494d711fe293d13f1a99d56a0001a527e2eac: 100000000000 -# "repair", "resemble", "appear", "clown", "coconut", "truck", "trade", "ship", "fly", "hat", "layer", "gift", "camera", "else", "spawn" -- 82d818582183581c27ca5021b49629e6d9c31b92cbf477e004e3ff02e0c7153cc1106f1da0001a31c9a1ea: 100000000000 -- 82d818582183581c310f187623b94e67f3fd0dc01b245bd7bf5e03d4e33bb384ae2379d7a0001a62210773: 100000000000 -- 82d818582183581c56f9c8f80f9be6be9d4d8a6c099c9f260b83a859ee9f3c6edfa69407a0001aaec475e8: 100000000000 -- 82d818582183581c7262e02badccbf25ab2064af6a605b8415eb10ac57ee8d05cb536b13a0001a30695aa6: 100000000000 -- 82d818582183581c4b8559e2c52cff05131e5a25b85aab2a838ecffc52aa80a6f48bc0c1a0001a252715a5: 100000000000 -- 82d818582183581c8bc4cea9dceeebe2e0a5026447dea09f0b0be4bd1fd82e15b7c22954a0001a552c40eb: 100000000000 -- 82d818582183581c2b9e7a48f98a01aa8a265942a1c509071e6d2481e9c10f05495578a2a0001aa2ff2698: 100000000000 -- 82d818582183581cb570dd1cb3354ce8888b34a75da5dafd4fa3459b23ddd2c6add721caa0001a3ca947ad: 100000000000 -- 82d818582183581c78753b38ade20d25c56cfbd8e50a59ecd49060bcbe9acbf8e87d6b12a0001ace49f35b: 100000000000 -- 82d818582183581cdd1d56e25603f5c4268316a96ccf05640c00e5d1edc4e69c35ddfe05a0001ace4808b2: 100000000000 -# "vast", "garment", "debate", "industry", "tennis", "private", "else", "lazy", "thumb", "arm", "wrong", "mesh", "mushroom", "diet", "feature" -- 82d818582183581c63cd47ebd4df2e8835c15858db7a585bef9286f92b4a027975cb93a4a0001aa2a3132a: 100000000000 -- 82d818582183581caa2c13acd6a78a0d4a795cf6b8122ee6268174741d7a1888ae85a61da0001af60c108b: 100000000000 -- 82d818582183581c9d4bc74919d921b1335c45882398a5320147c238bf6a459ccc9ba731a0001a945800fe: 100000000000 -- 82d818582183581ca2f2fd81e3aa44870018072a7d7866468fc7ed64086e79393075c993a0001ac6f79907: 100000000000 -- 82d818582183581c7835c0707a6331883217058455a86b4054180cec698035070267106aa0001a7e050d15: 100000000000 -- 82d818582183581c97c466f2a989f2d8550dbc329750e70ef3435b5b9e8606d7f031a9f8a0001a72b76b82: 100000000000 -- 82d818582183581c378423f5e20f137e2e9034ffbcb738ee71c1896af802ac935882168da0001ae8316a09: 100000000000 -- 82d818582183581c7cd5a0b25cc25204411c09fab85dc6c157b92ec7f98d3ec53c79fb14a0001a06ae4662: 100000000000 -- 82d818582183581c2100340e9b81b6716c0f93bf94f8f179e7156f4ccb3ad2bc6800b687a0001ac8af51eb: 100000000000 -- 82d818582183581c44e20d1df749d191c435d6575d5fcc16e0a349d97aa8c374b7fc6905a0001a66541392: 100000000000 -# "enjoy", "brave", "away", "fold", "denial", "unique", "garage", "blouse", "shuffle", "across", "core", "rich", "cash", "day", "large" -- 82d818582183581ce5dbde868f948021315146a47d8295b0ec0b75366b199ca0a7f5715fa0001a32604211: 100000000000 -- 82d818582183581c299863e1bdbdc03fa7a29c1a12947ed566faaeb66738d9e5856dd878a0001aa96008ca: 100000000000 -- 82d818582183581cafa597a60406cee0878116992786c70eb448a4d9ee588fdba233c33aa0001a0127608f: 100000000000 -- 82d818582183581c8701ad95aa1a3a148df74745365d03c976067d47d6786832bc773636a0001a740cef97: 100000000000 -- 82d818582183581c0d3ae8d8b58ed3866065d83eb8c83cee52631f5221d870f49464c703a0001a8cafc35f: 100000000000 -- 82d818582183581c12d35382ba5e5f88e069212ce788cf99970c357bb6599597ef4cd919a0001a0b498e68: 100000000000 -- 82d818582183581cc8552eb603b936ed0a7bd3a58833df523154aff63524a8da4c89bc7ba0001a8862f1ae: 100000000000 -- 82d818582183581ce33061d920a7c9caca39e59d386fb4ce23792d2721aaa1da2a814b67a0001a43d847da: 100000000000 -- 82d818582183581c780ce1fcaadcd510c3fcf7bf1a639616b8325be458b107b2381f4684a0001a85629481: 100000000000 -- 82d818582183581c85981c9a600dcc4f9758b693f8aec76edc456a5f8ae4d60cab56b7b8a0001a08fc0abf: 100000000000 -# "clean", "riot", "orbit", "scheme", "supreme", "copy", "farm", "fetch", "filter", "saddle", "grain", "destroy", "pyramid", "false", "jewel" -- 82d818582183581cf95c6c035fa2ae412518120213052a1bff04c616d82967f51300cac0a0001a963115a4: 100000000000 -- 82d818582183581cc04e3f20c3376152137e9c6e9566c3dcb333e61639a99e86841d115ca0001ae46b0b28: 100000000000 -- 82d818582183581c43fc600b6c5a66ad6cbd927e3cc59de80ae0c7ef889c4d3e5b98288da0001a3fee14ca: 100000000000 -- 82d818582183581c133ebad7ce5ca3802ddd2796278c16a3e56aed56752ec2bb55d8bc9ca0001a5ae976f7: 100000000000 -- 82d818582183581c9fc637c8a9c933ce61f7f40960938571722f171a41bb3a1a1be1a7d5a0001a7738a0d0: 100000000000 -- 82d818582183581c4e6b7d295c7595ba462945fd073522fa63ef2a9c319c8a98e76f226da0001adf9dfd9e: 100000000000 -- 82d818582183581cfb77aa82bc6fd973746cdd5d2e7bf2f75a1af77035b3b38ed23b2d0ca0001a6120659a: 100000000000 -- 82d818582183581c7931d5d6b9e77a5e2ecc39e09dcda44d1acd7d6e4e687211bfb4da36a0001aea9b2b8b: 100000000000 -- 82d818582183581c19c0a81bf883c3bc12a45fd50f1300938f153800e1401d0e5c775148a0001a921f6863: 100000000000 -- 82d818582183581c4ed06fee4fb7b22fa889929c5640610b1cffc23ae1988f96b59adde4a0001a3608b23d: 100000000000 -# "flavor", "any", "wish", "cry", "lion", "asset", "easily", "tired", "brass", "language", "multiply", "obvious", "cradle", "disorder", "green" -- 82d818582183581c33441f116bb09297fdc66ffc2f0d177b6df4c30dec93f2e6f8ae6957a0001a6ca72eaa: 100000000000 -- 82d818582183581c592546c2f09a8a51a9bce0b85234787adc29d5b5454e1b72b555d5b4a0001ab3463093: 100000000000 -- 82d818582183581ccd2457fd71a4e98c3cc423581638c4eaea5db08e4d55cc04dee07b20a0001ac3e77116: 100000000000 -- 82d818582183581c6b0a36db813d382d10185a2879d7f0cef3d920b6d6e41150ede5014fa0001a3745d13f: 100000000000 -- 82d818582183581cc8e8187dd10f4d1968c537711f03ed40d6b8d948ecae9843615407f5a0001a857f4971: 100000000000 -- 82d818582183581c0743db088a656eae564d83a529f9d2fab3aaaf54fedb5f3ee929e5c3a0001a319bcce2: 100000000000 -- 82d818582183581ccb4e7500832c4464cfd8055f42b8af80ca385ae31266e444562ab989a0001addd2589a: 100000000000 -- 82d818582183581c233c1910d4b364f6af13a46b0437c792ee1f295886a03a795824988aa0001a74fa0f7f: 100000000000 -- 82d818582183581c8c6e04d51b3ecea4bd8d2d24dac64cbfe53c0ba67a0440fd8111b115a0001afb656794: 100000000000 -- 82d818582183581c5d83c296f6fac7d41fc8749893433c9d38c7cb59117190c649de702ba0001a3f8d8fb0: 100000000000 -# "mobile", "boost", "husband", "between", "open", "illegal", "kitten", "evil", "gallery", "sheriff", "excess", "october", "hope", "example", "artwork" -- 82d818582183581cab8590fb767c938fa09375a1c87cf8daefe0c3f351ed2f4d49e38ab8a0001a31a75aa3: 100000000000 -- 82d818582183581c33b9cb17e04dca9a90c1c1293589f602ec1c19454c5f80d52f18898fa0001a324756e9: 100000000000 -- 82d818582183581c658fc3951be2fa92f8e88a38f7902c0b653a6550ee75e7c1e96f5d0ca0001aa721365c: 100000000000 -- 82d818582183581cca041d617a3f3afee42816276c0d6201562e4b59599f3130e530704ea0001ad652f1ed: 100000000000 -- 82d818582183581cda60ddd2d9d28b8bca0446457d28bbbf273d61a44d36ed6e12cfcf77a0001a301939c7: 100000000000 -- 82d818582183581c18621a75941cec7bfb3a1527e9a5f318bf9e797fc8f09b68233040c0a0001a9e4a1383: 100000000000 -- 82d818582183581cc88e4fd6eec936f9c77292939935f6554cd581e5acc83b220270a7e1a0001afd3356c7: 100000000000 -- 82d818582183581c47e374d2bf8acb243e8004759de5ec363531e40ae8f0c5845f2778d9a0001ada09332f: 100000000000 -- 82d818582183581cd03a0bd030278d37b50c6ff1a219bc3d33788fb6a06a3e3d0b5a2899a0001a61c80da7: 100000000000 -- 82d818582183581cf135e55fe1b4c6a55b0a29d8d78d9a11900107787a90526d38992860a0001a57f8c952: 100000000000 -# "nothing", "garlic", "length", "vacant", "beyond", "eagle", "odor", "verify", "fire", "ignore", "woman", "march", "plastic", "smart", "exact" -- 82d818582183581c7a61f8e0268aa376df061bbe9460211949294aa994edb9879ac0449aa0001a431f4d7e: 100000000000 -- 82d818582183581c5f1ec15b3f929d73c791f6e5f6f3fc78cd60545856ee2e62e4fb6341a0001a36af07a9: 100000000000 -- 82d818582183581c0dafba8f13cd0cc10b02d786192c8d266479a80b75e0800155509bf1a0001a1794cc1f: 100000000000 -- 82d818582183581ce3749cc29b1a9f4d970bc3188023d330e4ab4982a283dd57daa90b22a0001aa3cfd9db: 100000000000 -- 82d818582183581cc4b3acfdf91b3916dbacec1cec1fe9ffd2cf6a8213c9dafa761c95fba0001ab8900772: 100000000000 -- 82d818582183581c9a22f012bb27b2b56b6c89449a96dc39c677a8cc33f1dc6c81546c7da0001a4c830cb2: 100000000000 -- 82d818582183581c815b8aed5cc1ee638ed7e1a37236189957f806996083f9326642a534a0001acbd49616: 100000000000 -- 82d818582183581cb7ef907206a5f472993365e590fc2eb4dd593d598ab02e45ff626f98a0001a82d10b1d: 100000000000 -- 82d818582183581cdbbef84dd91146930a087eeca5f136da55f9feeabd9d0c9935546360a0001ae54a24d4: 100000000000 -- 82d818582183581c337f8f0c5d965a9fff55946144b69cd2dda99857b6e5ba2ba0269d13a0001a5778199a: 100000000000 -# "dial", "athlete", "script", "fee", "reduce", "identify", "deer", "grab", "raw", "patrol", "cheese", "stock", "prepare", "wolf", "urban" -- 82d818582183581c931866ea307fba9e45a87b1fd746bacd4d3c841d29b1de3f615308f9a0001a25346a7b: 100000000000 -- 82d818582183581c202cc9b5f1a99de585d96ab85db2dea58f27e92e22945e8da30ba87da0001a48feeee5: 100000000000 -- 82d818582183581cd4d24ffdb76c41ae4b0db589ff9b10f5b32f6b78dcb430b66529eb81a0001adcbfb8d9: 100000000000 -- 82d818582183581cac88168b8de928d037d3b2361e1d543fac7f34a4f4b74da971281c3ba0001abd6567f8: 100000000000 -- 82d818582183581c2742b05c2df6d0e4ce3f7dce6df448733156ffd925a8ffc5f8181c24a0001a008284cb: 100000000000 -- 82d818582183581c59ce439badee227f2d716d9a9531d4c7c52531b0cfecba14990690aea0001a7c5087ef: 100000000000 -- 82d818582183581c65ec7d6cb637cea39afd92c8e4885f15c6702ee0150b852d66ef6b5ba0001a9a8b7884: 100000000000 -- 82d818582183581c4729244c8b9c2b346e7f5c79052fcf1503c4fe7f0d1bad6ad4f1666fa0001a3671fffc: 100000000000 -- 82d818582183581c5f4ae4b6b05ef0505e1aec8cf69dc1026288cf38d8c6e32e7094be6ca0001a934ddb0a: 100000000000 -- 82d818582183581cbebc97828e279bcb3556396d11094c35cd82498e941f488647ecd7d8a0001a707a05a8: 100000000000 -# "cross", "shed", "mountain", "okay", "copper", "long", "bus", "offer", "dawn", "decide", "maze", "swing", "basket", "wine", "change" -- 82d818582183581cb25784cea2155c04c6f1dd5a305734e78ab0ad64617491d1f55ce605a0001a84b0bac6: 100000000000 -- 82d818582183581cccc51a9c7ebca8f08fb7a0ac4f759a7d7b3a2e59e24b5a60df6242aaa0001a6c23077d: 100000000000 -- 82d818582183581c39283526e52695649822a773f63d047777b2662c70a404204e4ac287a0001abf6972c5: 100000000000 -- 82d818582183581c566baeda2d0f3ad97251e0a3c4e06e88277541915d32aef2e1291aaaa0001a5026895c: 100000000000 -- 82d818582183581c6bc4cec6c5a0ccc2183c6af14f7932fe94b9e822865448de1cb6b1c5a0001aa1ab701f: 100000000000 -- 82d818582183581c209f13331f4862899dfa66651eb24c59212f7ac10b6b6574ed74b582a0001ae35493e8: 100000000000 -- 82d818582183581c0662ef6656071a1eca6d320a2bbd81195c6ec694ab9143633d23b554a0001ab8fdad8c: 100000000000 -- 82d818582183581cef18c49533f7beaa2d76e6a96b7f4c895ee7465bee3e40108f0a6102a0001a70ee1141: 100000000000 -- 82d818582183581cc7ce4323bebf8e220adddb3b2de17858e4ce130ecce767dedf5f1fc6a0001a519b88f9: 100000000000 -- 82d818582183581c4003d3169e7e9c94b5ecd852de6aae625842603a67bbaff576bfbb4fa0001aea16d8b0: 100000000000 -# "bachelor", "sniff", "mixed", "chunk", "convince", "base", "agent", "pretty", "proud", "name", "mind", "magnet", "swap", "rookie", "moon" -- 82d818582183581c96729dbc6912e6e2e2876cec08ed6ffa8f6cf30112e58b9d6b410007a0001ab4ee56bc: 100000000000 -- 82d818582183581c4903c961082a0d12ec700c014a52ef36ea72ed0aecb186b43487654aa0001a39695ad5: 100000000000 -- 82d818582183581c526d70bdef35e8b493d80eae63fad4ee45e420a2a0f792c40e395c7ba0001a359c9d5e: 100000000000 -- 82d818582183581c3e4154f27f76deedca767fae0a888a260a7150db5c4424d954dfcb4fa0001ab681a47a: 100000000000 -- 82d818582183581c6bbf2d43c0a07ba05cc9bfdaa9ce475020f95c5d5f1db5bb5902abc4a0001a48bcf328: 100000000000 -- 82d818582183581c049504b24fb1701b6f0775a4ac51f861fd1de018aef5061ddd0eca17a0001a0a77ac2c: 100000000000 -- 82d818582183581cbd5ef120637d678e871d6a1474073cfa221f4f794db0aa949262aab6a0001a0f389f2c: 100000000000 -- 82d818582183581cbc4a8464a6fa516eaa68364ef24bf21d007da2d120a74157b354a9dfa0001a93dedfbd: 100000000000 -- 82d818582183581c737a2c84495b4e7f0db760b7f79b5c8395ffd81705621fc6ca524502a0001a740be717: 100000000000 -- 82d818582183581ce9def86bb1c257ad54ad9060d9241021058d6b808e113374c209263fa0001a58cc171e: 100000000000 -# "lazy", "gorilla", "famous", "lunch", "summer", "share", "sketch", "width", "section", "bundle", "problem", "expect", "pulp", "vintage", "tray" -- 82d818582183581ca7c3d6a376bace05c51566b53eee52549a2b38bc3c15d318171b3453a0001ae7eb7576: 100000000000 -- 82d818582183581c66fccdd7e962c7c89923ad759e23dbcb22103d928df500c910100643a0001a91e67014: 100000000000 -- 82d818582183581c2b3724c6146ccf2fdebadc5cdca3f4692278775f60ee8c3975160323a0001a994a4753: 100000000000 -- 82d818582183581cc8d9012b21eab00c94544249614d97c18a0fcb001e69722fe23c0f86a0001ae0f81158: 100000000000 -- 82d818582183581c22075228a67a389bb752b1624dbf72be81776463863db4252d1aa9a4a0001aa366d9c1: 100000000000 -- 82d818582183581c87fbc31b43faed128866fc4fca43c83fa582056dcbc0febe6daef797a0001a8f89e54b: 100000000000 -- 82d818582183581ca56a9bf1fd1428d7e480b6b1a1d04c8f82cfad9cd964d0a264bb634ea0001a6718a83c: 100000000000 -- 82d818582183581c3504fd387ce7e18d93881b4386c6b94d96e7a2e697a19b44fdbc2476a0001ac18e9c61: 100000000000 -- 82d818582183581c10795d52611640770f1ccea5fbc18a5613487d82fb22b5e7405edb04a0001a40bb1219: 100000000000 -- 82d818582183581c6a6b8eca274ee830351e05aac40da9f35d004e02d96fd01f590454fca0001a887968e8: 100000000000 -# "just", "symbol", "fragile", "saddle", "easy", "proud", "imitate", "system", "comic", "avocado", "trash", "ketchup", "hen", "idea", "solve" -- 82d818582183581c0cecf691585a44a76515b6399b25127bc1c03997f355ed4d43c7e53fa0001a306de10e: 100000000000 -- 82d818582183581caa71dd9017219e164a96c7879780b2b27e46ee9b5a76921cd29e853da0001a9048dc33: 100000000000 -- 82d818582183581cb9abd059feb204f526204d53065a3480e0aeeef362b28b004f12bdbba0001a63b2bc78: 100000000000 -- 82d818582183581cdf3a9450c2b68c7558b919e6a615907c3c667b5fd6900ef7c080ebdaa0001a4e2dc79b: 100000000000 -- 82d818582183581c24394ee9ab75c19f3836d65b97044d204561d1b97c9f504381410f83a0001a1d0c0ecd: 100000000000 -- 82d818582183581c9f794881dde1d62a195319b548cb11af1dac3bdecc39f4c44a2ee4d0a0001a2ddb4a21: 100000000000 -- 82d818582183581ce54c5e0fbcfae0569af7931fd3c1cc4764f4f4f4e68f86dffd90fc7ca0001add7ad050: 100000000000 -- 82d818582183581ceb329ad0150a78504d6406cf2f0f5950fb51bed416d7b61436169f70a0001ad1e44cff: 100000000000 -- 82d818582183581c635b8d83159957e63467eb51abaecc443cbcf8499b204ead80b56d5da0001aa8d42b4d: 100000000000 -- 82d818582183581cbe9cf04ee6c71e75bfb2f04cafb01c391e0e9255e79d3bb2a87c565ca0001ab4136e3d: 100000000000 -# "midnight", "light", "axis", "green", "frog", "catch", "dice", "small", "knife", "lunch", "tennis", "love", "path", "happy", "squirrel" -- 82d818582183581cdd9c178989d22e644b567635f5f670f0cee76991c40a9413e2bb5e81a0001adf615d0e: 100000000000 -- 82d818582183581c1055d079cbf691fa1042f083406dfa354ebddff262a6ab16a5e52298a0001ade496cba: 100000000000 -- 82d818582183581c37e41a89f20a1c4ccf1e84525db6ffe88fde571a937bd70733cd1d09a0001a72966ca2: 100000000000 -- 82d818582183581c4998ba1dda6d44f76b7104c99ce6aa1c1d30a02f1c53571f9bd115dea0001a02322aab: 100000000000 -- 82d818582183581cb67c6c8e7b353f4e70622d3093c4f81963ae1149ee7051d05c7b8308a0001ae7f51711: 100000000000 -- 82d818582183581c5231b720c830ad11e6364a4468d2c26120f6a5e2493d2d2338976844a0001a08650e5b: 100000000000 -- 82d818582183581c4e493755194d28a85637a37777f56333a2ad57777d8ddd6b12affb74a0001a3f63c126: 100000000000 -- 82d818582183581c9be39d36237939145be90e8bf952edb911e068c418ae030dae5fc8c0a0001a741e3824: 100000000000 -- 82d818582183581c92852ac6e95b1529ab7e739cd6451d86c5fb856c472ab6e2b26d43a1a0001ae36b0a52: 100000000000 -- 82d818582183581ce9020e35a9a774de805c034542a3bf1db24fe96fae45baea66ccdaaea0001ab7aba8bd: 100000000000 -# "roast", "hint", "fresh", "fork", "floor", "afford", "deputy", "negative", "armor", "evidence", "ice", "arena", "flock", "moral", "relief" -- 82d818582183581c0cd8658b5066f0d2f59cf1d08dc825dfb78a7ac4ca068ee42c2a568ea0001a4b555d2d: 100000000000 -- 82d818582183581c1d2dc5934410d13ec2be4ab85b4107afa8d8a0e56bc5256ce7c63751a0001a7c92cefb: 100000000000 -- 82d818582183581cd822a5a6a33fc2169e3852d62132f18ab516188de1eee0e9fb262a67a0001aeafcb296: 100000000000 -- 82d818582183581cb6dd81c9edd323d3af7ed432c6d5df5e6edc6d02767cf1a499c557f4a0001a203807c5: 100000000000 -- 82d818582183581c923be56f32656c05b0b5c4b0fbb8d328d1eb29693650b18a73daf32aa0001a0e7bc068: 100000000000 -- 82d818582183581cb8cb939fc111a60ebbd7e3f6723497f80a38e871a32dff140ea38b16a0001a2aee798f: 100000000000 -- 82d818582183581c156dd9dc8b26d10d6c93936bbf794e38cc4b61f4c23b5643cf3bf328a0001ae1e74661: 100000000000 -- 82d818582183581c6c835b61b148901c5b67411c756d08793dbf6d2c004cf8793e7c6f54a0001a5fb89c48: 100000000000 -- 82d818582183581c3040e2228a32c35776eb894dc7986e80ff4b0e7bc63f3e0ef649fefaa0001a3a36ae79: 100000000000 -- 82d818582183581ceee674b87e50474795db711c629bbf6b8c14b31f1177acc7146fa7e2a0001a5fe89fbd: 100000000000 -# "obey", "wage", "truly", "weird", "sense", "mimic", "expect", "ten", "random", "engine", "creek", "ivory", "example", "mixed", "pigeon" -- 82d818582183581c5555fcf38d8c663f6d1e7beec7da256c22dbb6e2112b8ea839cb30dea0001ab5df17d9: 100000000000 -- 82d818582183581ccc3b1eb7f434c1cf16a356e7401ff7fda9d669c5eacdcb435bd4112ba0001aff0b6be8: 100000000000 -- 82d818582183581c765a470f3534d6ccd240db4aac392ca18a2154182f07aa3fb3015beda0001aeb45f299: 100000000000 -- 82d818582183581cd6301262fd7b4d7fe13a5cba9732069743cbff1d916e819f1eb1b3cfa0001a3c32a272: 100000000000 -- 82d818582183581cae562015e504923fe9bd82c44325c1dc7df2c5a77719422ba85964bda0001a9dbb1632: 100000000000 -- 82d818582183581c8e536a33682d469d285ab1d5c407c0f47f1ca15e389f915d4b5b64aca0001ac0f53e3c: 100000000000 -- 82d818582183581c337846442e2849e1057ea780da0b8d0515f9dcf40449457bcdc05b6da0001a010a2d00: 100000000000 -- 82d818582183581c497ed684a335c0c6d917988c62d29398a82fd974fba9886ca3fa1b17a0001ac9561710: 100000000000 -- 82d818582183581c5497c04f4399c02f69fab22b53dfa367ac54c558bb4c628b12f7f262a0001abf22a8bb: 100000000000 -- 82d818582183581c0432fd006841df468c0c0a5cacb6532ad5280a0188a960b25c8fe9d4a0001ad675e3bf: 100000000000 -# "usual", "purity", "order", "make", "diamond", "jealous", "gap", "illness", "cliff", "wonder", "nature", "normal", "high", "hood", "balcony" -- 82d818582183581c96bb30a53af14ad0964e7e756769fe5716039f2b9f9e41e03dd2c59fa0001a8d0c9e4e: 100000000000 -- 82d818582183581cf6fcf5047c1890e736bbb9fdc9ca293113fa4b24284eefa989dc2497a0001a771fec74: 100000000000 -- 82d818582183581cd84e47e4d9c7865e69ea5116a92054a6eec1367a48a0808253e97012a0001abee06bce: 100000000000 -- 82d818582183581c6fb682decf6e52a468bd55dc03550c8748ef2d67595fc618f01f2825a0001a7410ba9b: 100000000000 -- 82d818582183581cd24224422bf2ddc4bb495dadcde30745e10510f7f7f0a837c8d1b900a0001a2d09a2db: 100000000000 -- 82d818582183581c91e22b4f584da223d2da9b5a4a93bdef9aba0deb7dfa255160d1de9ea0001ab8e9dac5: 100000000000 -- 82d818582183581c4b70be15e341d4bec261f3af754f028c540cdbcca1d37536d935d215a0001a6ac8db86: 100000000000 -- 82d818582183581ce29a3edfa59b9a6d8e0ba5bdf00fb31e6735568dd6ff37684d1c58ffa0001ae1e95934: 100000000000 -- 82d818582183581c88a8367155c1a17a45a2ffe8653bb31deb814afa14411e1c76df8baea0001a43b65d87: 100000000000 -- 82d818582183581c92753c5a97a2439ddf93795ea46f7bee345719ce2e5c16f91e44e89da0001a0ca1cf86: 100000000000 -# "brush", "busy", "steel", "pride", "vendor", "hurt", "lava", "salute", "season", "unknown", "announce", "area", "begin", "fashion", "section" -- 82d818582183581c688629c689cc3c5db76213041971f2b638b14a69a53080374e2849b0a0001a4d96cacc: 100000000000 -- 82d818582183581c4c65e58ed84e27ccca8ee77db8db0ac62eaaf52c257bd20ecc1e74f4a0001a32b6309a: 100000000000 -- 82d818582183581c7f55df0d0e82bad0dcbe4626dd903aa143d176c3e5da3374d3196506a0001a012a2630: 100000000000 -- 82d818582183581c4cf8427bad41f52f8f98a765e531a678a8309e3ab4412c9e9d52b358a0001a34c0ccbd: 100000000000 -- 82d818582183581c2ffeac0eafe5d7937c11ed1c4d5927f07df7809132d1069b592de157a0001a26fca511: 100000000000 -- 82d818582183581cce94107fe714aba72fe8eb4e99864edc3b922476eddeaa69065f0740a0001a534d539f: 100000000000 -- 82d818582183581caa260be2342f5b46f4c964f999e26900df4a0e244c817f1a241dcf8da0001a4fbe57af: 100000000000 -- 82d818582183581c65b1b8ddedb98ec2576f282db56e162249a33a76481add49aa17429fa0001a3d56f29d: 100000000000 -- 82d818582183581c4ae69438d614f7b7593aa74205fdfefe67f6bb3a59e9ea80834c9982a0001a1d17e352: 100000000000 -- 82d818582183581c3e838849e3dc9aceb7c8d8a953061f4cd509594bd6e9cc0e2365a2cca0001ab5160fa7: 100000000000 -# "shadow", "online", "parrot", "rough", "among", "decide", "spare", "cupboard", "actor", "pumpkin", "caught", "fit", "planet", "bleak", "trick" -- 82d818582183581c2b5c4863540dcf03f8496fa4f26f23914290ad6cf43bc80bad6a487aa0001a271bbf6a: 100000000000 -- 82d818582183581cc450d09caeb39918b5a1a34137096734a3908b2b606a3c970f93b22ba0001a22823b5e: 100000000000 -- 82d818582183581c51af8fcdc70f723ce82e06f26b276ad499ede8f6f47d285d8a21b097a0001a3411796d: 100000000000 -- 82d818582183581c2582efeb065fff642180d4eb75617619994c3dcab949c34baca12fa2a0001ae74b378a: 100000000000 -- 82d818582183581cd7b4d15163eb9b7dcc7e0a7deff7cf68481c4073a4de458ee617d1eaa0001a91f62ad7: 100000000000 -- 82d818582183581c620ade555f95e7ccc08de50e3664a863d103cb8b8ee21cbd7f687944a0001a359419c1: 100000000000 -- 82d818582183581c1b5e06d501edfb6167029b2fcff4eb1bfa9f7309cc8c6d5e7f85fbfca0001a5bcebca6: 100000000000 -- 82d818582183581cbcf93623f0f9404e99973d7040c6765a3bd65bccc1c8c58012881525a0001adc4bc15a: 100000000000 -- 82d818582183581cc7cd4fd3cc3378c22b88ce44f3e80872ab421fea9c1dff08085037a3a0001a4198c253: 100000000000 -- 82d818582183581c83d7c3b25843ee24e699f44591d75d36e1d6c72ba4dd4c35d9fa6e59a0001af13adb25: 100000000000 -# "gym", "ability", "silent", "pipe", "tragic", "slice", "poet", "stairs", "swarm", "party", "cruise", "waste", "prefer", "trash", "boy" -- 82d818582183581c77e1bca3af1324d34c90ac08778ae9bcab93b9d58eb9c0dc6cb90369a0001a526e6b2b: 100000000000 -- 82d818582183581cb707e8287aca303cbe658b738136bec06366287a53d6e6dfb5d08059a0001a61f1c9d1: 100000000000 -- 82d818582183581c78f7fed4c1036a332159e6da08faa18e138dbc665ec8b8c44aeae951a0001adc3e1d06: 100000000000 -- 82d818582183581cf68913a34631253211f75efa7abc68a89f0e15ba5441068a42e3067ba0001aba329b41: 100000000000 -- 82d818582183581cd282fa2f399b0429a44213a140e5c15340401461a2a735a0c451a4c9a0001a1a678f12: 100000000000 -- 82d818582183581c991ddd6f1ac4a69042949a937e2c4399b73e44b5003f1f9e3df52be7a0001aed0ed596: 100000000000 -- 82d818582183581c9bbf34d657f51055241432acbac1ab9a9745d533c9f607a54073b84ea0001a0bd12843: 100000000000 -- 82d818582183581ce30744b8c9c6026994b90659741af0f05e42b1ff864d61d20edc3ff2a0001ae7b4192e: 100000000000 -- 82d818582183581c4c94de38ef56fc15f302f0256a305a3762819c594be1451cc0b7d6eca0001ae215a6fd: 100000000000 -- 82d818582183581cdf1f7610f17d59351a5b92480596a7e2882a237e7a8eed537cda4f87a0001a2d2505af: 100000000000 -# "leader", "bitter", "era", "crawl", "tiger", "destroy", "sword", "enrich", "angry", "pull", "kitchen", "hold", "sea", "sock", "giraffe" -- 82d818582183581ca6ea042519b39247558798aab27a9466c91c8eb29b0053f463d577a0a0001a9d9c486f: 100000000000 -- 82d818582183581c94171c7ff344375c48b73dbb087945e8c9c1031857de637da9c03b20a0001a84574dd5: 100000000000 -- 82d818582183581ce2d145a52c4f67560467ede4e8a05b951d3cca89c040798834446ef0a0001a2b9b9149: 100000000000 -- 82d818582183581c584796336cd7482b6db9953c4969a3b234e8a19320b49fa8b85a6edea0001ac7b9d359: 100000000000 -- 82d818582183581c5ca5d99e95b364421941f92fcaa76fd55a459a29c0f5796b826b6c62a0001ae6984ec7: 100000000000 -- 82d818582183581c6b1f6cde7516972e689fbc43d5d1280bd38c7d0dc088580b86260177a0001a920006bc: 100000000000 -- 82d818582183581c0353594cd02a45142666c6bad163bbe03d14f550487b45efadcb04d8a0001ab2ec7994: 100000000000 -- 82d818582183581cee71e73efdf44f91fec60f0611c9c45d43cce15f46d81a407d11eadba0001a69f6abfb: 100000000000 -- 82d818582183581cf93d9d9d193f4ed4f13868e915ebde4a02cbdfb3fa833ad262d80869a0001ab2ca6685: 100000000000 -- 82d818582183581cd9e71db294173835cd87dda8024f1e240cca781b3f2bbfa605cb2a73a0001a8f7101d2: 100000000000 -# "defense", "brush", "fiscal", "cactus", "rotate", "trouble", "mean", "quantum", "shrug", "slight", "dignity", "corn", "immense", "first", "citizen" -- 82d818582183581c106a26669f1f365d7b050fed0c217dfeda15ffa40459522bdd26e023a0001aa5d5f602: 100000000000 -- 82d818582183581ced4ff82d69c68d3c08df0504feeb98dfda229a19dbd6c6971ac2e31ea0001a7917dbd7: 100000000000 -- 82d818582183581c3c575b9c860cc540b9b122230366de763090f75dcd73a1034ae6897da0001a020fc4dd: 100000000000 -- 82d818582183581cf451229e5e8ab95780e7cef664ea085acd148b958af7cd9e2f58ef65a0001a6e83cff1: 100000000000 -- 82d818582183581cb504c006ba2b6f55b16a8d6764f620f72fd9ac47437019a1924d32f3a0001a8ebf3b15: 100000000000 -- 82d818582183581c16d2ba39c6ea8cfe20148511965e8e81ccfd1e3972321f968116241aa0001a69028c79: 100000000000 -- 82d818582183581c4a29d7896a032b784803722eb15dc0e4f27f5434d4722d45ed60a6a4a0001aa1eeffc4: 100000000000 -- 82d818582183581c6e08a4ad9519a2999f479fae6306c76e31cbd817ddd7553ff3e053b3a0001afd651034: 100000000000 -- 82d818582183581c70a8c72d92f60aa38bf8ac6c9bcb7499f436ecd4d1bf721fe9f3c36ea0001ae865f5f2: 100000000000 -- 82d818582183581cfc43f3fc3f5f6aaa118fc05c5a560875122fb1ce983ed268f8c7340ea0001a1a6f6d01: 100000000000 -# "wedding", "size", "surprise", "split", "circle", "angry", "silver", "flame", "usage", "light", "stock", "innocent", "novel", "modify", "mushroom" -- 82d818582183581c671cffeac4c68f726f03c7d16e863d3c9df21a58dd050d086c2db0e4a0001a0f1f281c: 100000000000 -- 82d818582183581c93780856929f654b1e13392b932987193903e2c3e59da1dc0d640a56a0001ade4627d4: 100000000000 -- 82d818582183581c756dd1c578c4086dc7f3481850b3a0be8cf6aa9889dec93c48c5a3bda0001a04fc3978: 100000000000 -- 82d818582183581c7cee19c9ccae9d5816c6cb7c10e22cbda4f5a5ba8de60ef16321e3f4a0001ab295f572: 100000000000 -- 82d818582183581c164aef88c48546643a129811de5370e56a7f388543de5165a015d199a0001ac1b91852: 100000000000 -- 82d818582183581c84ddd6f0a6a4dfc624ec84ebe8b85f5cf40d0e58d3160df9c60755c1a0001a80321329: 100000000000 -- 82d818582183581c7a4271d2a34a878e571b73c952ed8d5b1a1c70facf9ddb4f372e0efba0001a6e33fff9: 100000000000 -- 82d818582183581ce5c9a779febb0aec11ba75bfa6951c5856edd2aed4dd36c1da57a624a0001ae7952c48: 100000000000 -- 82d818582183581c710bc72c3c2e515c859cdfb783a21a1de4d0bd7746a58e00adca5487a0001a21b666b5: 100000000000 -- 82d818582183581cbb04e7eeb513b421a8102f43ac9ee4ba62d400653d2abbf4f69fa6e4a0001acd4bf488: 100000000000 -# "multiply", "affair", "bargain", "response", "shop", "behave", "name", "box", "piano", "isolate", "play", "perfect", "shoe", "often", "depart" -- 82d818582183581cae127598024f1981640e9e824e3b6d66700eba04c00b42a07e65a120a0001ac1a89743: 100000000000 -- 82d818582183581c912167fb048b660dd62f3c12eaad35f4a3b228f4f5dc56324ebaa2bda0001aeb5d3390: 100000000000 -- 82d818582183581ce52d2ddb3728d16a9a9be3a7d9153021918119ee116448688c91be01a0001a1f372120: 100000000000 -- 82d818582183581c0fd906aa14fb64957bd6947399db4334260ecd18a58d6e0254504d27a0001aea39fb4f: 100000000000 -- 82d818582183581c9ce4abec6d27f89faa31f29913f8199c00653da8ae2f4eaad9d350e5a0001abf576982: 100000000000 -- 82d818582183581c2ab78a7fe9e186f749dd6d67d665d7c9e8ee865e03fdc10c41995e66a0001a0449cbaa: 100000000000 -- 82d818582183581c3047f83fc06e5dd141b660e302ace225ef87bb36967d4f35a099e780a0001a8f84a9aa: 100000000000 -- 82d818582183581cb12c15ba2c44bde11dc074f07e494313c323ac93102dc24157b42db4a0001ae45d36d4: 100000000000 -- 82d818582183581c22ea7028355637bfe93fd161e39ac469a49aab03d1b7bf04e3dd34b9a0001ad281001d: 100000000000 -- 82d818582183581c504d394c00396c2b65336f6d92d9f4cdf84806bd91733480f6a04c3ca0001a711aae1b: 100000000000 -# "like", "hedgehog", "theme", "letter", "first", "output", "special", "that", "boost", "pupil", "coil", "indicate", "arctic", "swing", "bonus" -- 82d818582183581c468da2f79961cbe46581dc42553c97b9a2bc3649b1c219557a7da453a0001a6b805777: 100000000000 -- 82d818582183581ce34112bfc8f87c19318889d3acaaaa8cdff920e5901ddacdf681a3e1a0001ab3429726: 100000000000 -- 82d818582183581c821895116b4d437d028efcb0601df97b82bc8ef565803ecbbb2fab0ea0001a7e988014: 100000000000 -- 82d818582183581cca4cf32957ac53ecadd6a3dc4ee5a3b8cc5328ad20b3edc9aa1c6474a0001a39729758: 100000000000 -- 82d818582183581cb26fe0f0908be9722252a786b3dec40aa74b4987084b5660e38026d8a0001a1bc3fd38: 100000000000 -- 82d818582183581c4921db5cb3c34576c37363a4c72c6e49a8e516307891a2e36d54960fa0001ad463779b: 100000000000 -- 82d818582183581c410f8fb53e34107eafdc5dd297bc4cd20d245dd153d5c8bed7e7c832a0001a56295cfb: 100000000000 -- 82d818582183581ca02e0d8a3c4bede18c1cf8229ddb02769c03ac0dd3776b8c34f17cc8a0001af6579671: 100000000000 -- 82d818582183581c963f621368a253a75fc950c25493216ef6543e7dbe5dbe652a8eb978a0001a8b5d87da: 100000000000 -- 82d818582183581c812f3071c5c9f9a7ea95d6e98f910173f912097a6a75351322c1c867a0001afd55c87f: 100000000000 -# "bus", "enlist", "leaf", "spider", "fun", "joke", "step", "main", "abstract", "frequent", "flash", "erosion", "forward", "infant", "whisper" -- 82d818582183581ca106fbc92fe92375fa5cc224aed7478459e35032951839110c53fe12a0001ab1aa910f: 100000000000 -- 82d818582183581ca847c2c1cb68859611670fe7ed53dd243c577736b395b6fcdef37acca0001ac799fd46: 100000000000 -- 82d818582183581c8f13e4da0f83dfc2203c9dfbe4b52f985d8bcbc442071e1cf5705cc6a0001abd9a4f4c: 100000000000 -- 82d818582183581c6c4deae8591cb683fcbc3889c7af6eb32ab2d6bbb7fdb214803e6c14a0001a7aa36bf6: 100000000000 -- 82d818582183581cf546b9b0c98a27397530c207a66849d8bc642185e1fef6f9c7b882cea0001a68dba1ae: 100000000000 -- 82d818582183581c12ab0a5d165eef04df776822316ed52107a2d3d8d1a5329da699b1c9a0001a49bd158a: 100000000000 -- 82d818582183581ca8c27df1de0b42cf93b349bcee6a71904713b667dccbeeb09b8e9ff0a0001ad4265e09: 100000000000 -- 82d818582183581c34725dd14396665368e5c161c121c731a7342416ccfda598842b6610a0001a2fee3db2: 100000000000 -- 82d818582183581c86116c46ca53ba11a7a64a1eba26733af0d10673302f7b4a3c6e7272a0001aed923bf8: 100000000000 -- 82d818582183581c16f4902124b556df90f861bee66dda1ac674eee1192a6e0a64f67dbaa0001ae44a96a1: 100000000000 -# "cheese", "volume", "image", "misery", "dragon", "border", "garage", "occur", "minute", "zero", "forget", "outer", "sport", "salt", "same" -- 82d818582183581ce326c47914ccc96a0b747ee497a43d16626c4f17d11f66ccf7786d9ba0001aac366a34: 100000000000 -- 82d818582183581c5034c7b51af8a4f10d22667844b055a81655cfb66a5edc666cc5c0bba0001aece4663f: 100000000000 -- 82d818582183581c6ec84c6614048c2220c3068bb74c29752fd460d5a6563e9badd56e66a0001a80cd6685: 100000000000 -- 82d818582183581c39a3ce7a5612d782a782bfaadb9df2fa736af854fba74227445ee5b8a0001a7c45daa9: 100000000000 -- 82d818582183581c258ec1005ffe6567e13a477c46c6cf226d7324553d218c4e115726ada0001acea46a82: 100000000000 -- 82d818582183581cde293ffc3c3a7acc4afa4d83da94edd4506a23ff8579ecca5ba066b2a0001a7c576f74: 100000000000 -- 82d818582183581c18abaa2d1ba723cabd0297353223e78c8b9544151fcd687053e75c81a0001a07967c58: 100000000000 -- 82d818582183581c2678606811dc16278a38a334bba8ce8f07263a21dbcdf6cb2a68dca1a0001a8271729e: 100000000000 -- 82d818582183581c1ee1a7c9f6486497d23bcd5b5682ed75a4d58d9da9e6d92c78a842e2a0001a9079a483: 100000000000 -- 82d818582183581cd8394408d1a3e1739b917b8ed8593066bafd1fd03d5f6ceaa3f3ac2aa0001a9c02b67b: 100000000000 -# "access", "prison", "immense", "olympic", "fall", "manual", "soccer", "nasty", "object", "attract", "tail", "decade", "index", "play", "risk" -- 82d818582183581c6bacf1a3602bdcd7b4876e95c6ecd9ef2e90d4e737724a111d00c69fa0001a6c98cc5e: 100000000000 -- 82d818582183581ce8016eddc97a2d679a557c19a83ea3c49a3d26d4489f131a94f62796a0001abead55d7: 100000000000 -- 82d818582183581c80b7155086bea02a72d37ceb2aa09e197ada99a1e3d43452d271ccdfa0001a1f3038dc: 100000000000 -- 82d818582183581c66cd1b18920e6d0fcae0cbd9a9f52ab0f8dd2fb037c4f0c8b98f9b0da0001aee3603c5: 100000000000 -- 82d818582183581ca9c8ef27ad9039dc051f26aafa73a0f69145319ad29ecc13219bde3da0001a0ae627f9: 100000000000 -- 82d818582183581cee8653dd7ba239b07105232acd1e794617fe205aea7d2c65222c8ae1a0001a865dcdb2: 100000000000 -- 82d818582183581cc4c0f8e0bdf29a4919d93a697594188e9118dae832ee513b35f1aad7a0001adab2b492: 100000000000 -- 82d818582183581cfab4cfd3e13f432ea5d99b3ba4e0513177b1bc13e530eb2c656efad5a0001aff99b2cf: 100000000000 -- 82d818582183581c74bb12924feb8e21ee98e7315defa968dfb43c9a0b03be2b51ae570fa0001adefa2340: 100000000000 -- 82d818582183581c632f5030244459eb687ed1994d4c37bcc84841decf13425db0f8bddea0001af1d55e13: 100000000000 -# "top", "fashion", "salt", "gown", "dilemma", "price", "permit", "isolate", "hedgehog", "december", "attack", "identify", "august", "naive", "effort" -- 82d818582183581c5f8ecea020fcbaaa5e444711b60f3082c8bba0d19231c86358e92797a0001a450c0a80: 100000000000 -- 82d818582183581c53956eba2de2625e5993bb11cd1b5c7389402298f6f0188ba544b14da0001a51e7aa1a: 100000000000 -- 82d818582183581c0bca83d9491748b0066341ce7806dfbbd06174789d69f3a9c87492bfa0001a46ee0aa4: 100000000000 -- 82d818582183581cbb6ec5f4121606599eac3b63e7e509955a1ad7ccb2544ae7d1ffe92ca0001a55e2b8fe: 100000000000 -- 82d818582183581cb7904ac983c42a41e0c581037e40d5edaf21344cb0d7e74fb2c0001ba0001adb693f42: 100000000000 -- 82d818582183581ca9e3202cfa33fd34f700f47adf25b7d9c77b3f0c7b95c4940e47e79ca0001a7af3ee83: 100000000000 -- 82d818582183581c785661cd32b26e0e95f2da4eeb3ddbf0e6c47e969e062c4a2a3ccd90a0001ae248359c: 100000000000 -- 82d818582183581c07da3c4f6ed2a78fa3c48067259e8951525f7aac66b43c0b020dc3d6a0001a95eac259: 100000000000 -- 82d818582183581c69150687ba978149d98993b1c03222e445361ec0c0fd99ae2781899fa0001ad141bdab: 100000000000 -- 82d818582183581c4d1c0aba61f6138e4132d9c5e41dfb14d290e1836d69e0617506163fa0001a5b7401dd: 100000000000 -# "ticket", "pudding", "crane", "kangaroo", "nice", "security", "patient", "arrest", "pass", "motion", "bring", "cabin", "visual", "hospital", "half" -- 82d818582183581cc6ea3e48b5d9c8f7df4216298fa07638bf1a474201da36047a61e504a0001a95de8157: 100000000000 -- 82d818582183581c4d52d2c1a5c3bc091e227ed4eeb4cc26f70078a33d2f7da5aefb5081a0001a81e9c43e: 100000000000 -- 82d818582183581c733d8350bc823d80f893d096b1261ea31c34c594a6416e88d3170c69a0001a156ecf2c: 100000000000 -- 82d818582183581cdff06bd4e06527075d6d5380e8832603023fe9b2758b4dab38e5db54a0001ab9c3d124: 100000000000 -- 82d818582183581caa562b3f0d98f3c64a39d114d661088c186851ce585cbfc4cd6a51d8a0001a846710c7: 100000000000 -- 82d818582183581c5edc19a5715682413dc8b419c8685b15b1830f542ec98fc2585eb11ba0001a58d93e67: 100000000000 -- 82d818582183581c81130567c3bf225c6f5e3e55c312ccd5c2d5777a9ee8e6c8bf220813a0001a05137c1f: 100000000000 -- 82d818582183581c56c825a5803d3161baa78f7ac2fb98a9640c46d737155b0d8fe1c825a0001ae2246245: 100000000000 -- 82d818582183581c9b1a1f91f41284cf1bea9ac15131171a47ddcb730e0e387e6fae9e5da0001a9b290ad0: 100000000000 -- 82d818582183581c83b2cb4df92f9c5c38d1e3691751b834369b57e3df94254d55d19a6fa0001a1599d40d: 100000000000 -# "isolate", "base", "oak", "bronze", "wish", "alarm", "height", "olive", "clog", "balcony", "rhythm", "spell", "refuse", "various", "fire" -- 82d818582183581c7a4c12bccda3aae5fc21aa66b5a9b905298083adc43c6ad8ed1c128ca0001ad33d9d63: 100000000000 -- 82d818582183581c8980276a1b9b908a4deda95526ed3a3ef60751f1e741eaec80c7e126a0001a5a2b394e: 100000000000 -- 82d818582183581cd7e3d33fc24dd248834c0a5cbdd988e6ea14b19152d090d394717227a0001a1a8c5108: 100000000000 -- 82d818582183581c936d4aea6cea6f3278a2bfddef6e9e971ed4ea770ba25aaebc150073a0001aae008048: 100000000000 -- 82d818582183581ca5d352309c49716860bf6cc174c52c3ea378cea10dbd36a83c169840a0001a90028f40: 100000000000 -- 82d818582183581cbf9adcb929be45ebdbae93312a0020cf583e981d35d4b8cb9bc4473aa0001a36f20c7d: 100000000000 -- 82d818582183581c2a01c3fc78d9688ded9cb37d28f08010f195e890b5346bbfa080026ca0001a18a898ef: 100000000000 -- 82d818582183581c79619b4046e8192dd3ea86aa49e0d86386c4b11f004548885e618ba5a0001a7a757022: 100000000000 -- 82d818582183581c361acf70e0738121a128a842a7a0ac70c08cf21afce0f44b74ee174da0001a84e59d89: 100000000000 -- 82d818582183581c9e57d5689d67850330b11ec23eeddc60dcab42c95b3115373013c205a0001a433d2dc8: 100000000000 -# "flag", "super", "pet", "impact", "impose", "anger", "cook", "verb", "laundry", "embrace", "uncover", "mercy", "orbit", "fall", "cycle" -- 82d818582183581c05be4442721bdcfa3ac7a75a030031346ed92ee0ce4b5579f8dcac2ca0001a442f46df: 100000000000 -- 82d818582183581cc8fc8b9ff7f7b6af8c91130795ef3e84b03f34c490dca86d09c7e3b7a0001a41c58a2e: 100000000000 -- 82d818582183581c9b294453ea2971851f0f242485b2af5c9ea0cf432d85faacad67d1eaa0001a27edc21f: 100000000000 -- 82d818582183581cd3337caae36323e44a9a0cbca3e5d89b28d5127739d5a29edd44724da0001a0bfe8d38: 100000000000 -- 82d818582183581cce004d26591a2b6d0d2f07feac76051e182de6f68d2152c029737d67a0001ac040acdd: 100000000000 -- 82d818582183581cd1f63623f21b75a5a117e2dc4ad136ebb2fec4fb982d183b9e5ccef2a0001a856a2cfa: 100000000000 -- 82d818582183581cfb98e708318bc82c5dc57d18b933825c86dbfc92ca4dd2129dda7e92a0001aa51a6106: 100000000000 -- 82d818582183581c91ab61df6dfb585db09716213d4c5bf4f5ad67cd4e9d127db63b117fa0001a421fea7c: 100000000000 -- 82d818582183581c3341951bad3a7b726545767bd999f89ed7fc5568db5cfdd12cf850e5a0001ae9c4d17b: 100000000000 -- 82d818582183581c25bf1022beb6546726c338fd467a9300649b81c3c0890a3e28bf45a8a0001ae3e43c06: 100000000000 -# "occur", "surprise", "world", "boy", "mouse", "pilot", "sibling", "float", "clump", "matrix", "field", "sauce", "umbrella", "exchange", "sponsor" -- 82d818582183581ceea35c0084ef8faba7cba1ad0786c45ab57b1b47d5777f1baf4936aca0001a49c00643: 100000000000 -- 82d818582183581cd6276ec024b2d4c681d0561f927001cf8b675c6eaefad26b9c8f11e1a0001a043b0a66: 100000000000 -- 82d818582183581c08462e59cc60d1eea22668a494ed7e5483f0942be2b08e0e6957ecdfa0001ac0043d78: 100000000000 -- 82d818582183581c8d8e99770051d942203379052d22d46c94cd24d7da36b89133e2e51ca0001aad761921: 100000000000 -- 82d818582183581c87bb20920d29c43bee0bddebc82754952d2747d45cdc2b2448e172bfa0001a8a81d492: 100000000000 -- 82d818582183581c4078851220507fa085e374d604ec3d53c2885493f77449951b95ddb5a0001ae22af9ef: 100000000000 -- 82d818582183581c77e0422f55078ef34595093e6cbf437abc21f56f4ce971d79bfde6cda0001a62035b0d: 100000000000 -- 82d818582183581c69975d3825d41be7c5e9f3d6650a2cdf8e257dafd4ed0c33f6c6ed2ea0001a22f8b388: 100000000000 -- 82d818582183581c048d10efae7fec85a4fdf5aef1bd5e3a4d52035b5f2ac0dff39d76a1a0001a583473e3: 100000000000 -- 82d818582183581c71c0069ae0e9fc87431d543bf9515821fc472af36fd73473e1012cada0001aca6dbd6a: 100000000000 -# "announce", "employ", "holiday", "easy", "van", "risk", "cause", "exist", "absorb", "object", "bus", "rigid", "deny", "slot", "ginger" -- 82d818582183581ceeb2345ceb9de208d73db52da3127c2c4d2b046428ea52bce6dd9396a0001a81beb38c: 100000000000 -- 82d818582183581cfb95577a4ff84a0dcf6a7bfcc73af0dca62689c5cc1950ff7a3e9327a0001ab27692c2: 100000000000 -- 82d818582183581cf9fcfa6551d9221da56f26cbce93f3e2524915e7b3906c1c824280daa0001a69cc1519: 100000000000 -- 82d818582183581cc2ab65dd889c2209df2364957e449826d795ccedd93be13b8291ddd3a0001afd523ff0: 100000000000 -- 82d818582183581c64753f377481d9c4ee90773535188f21a5fd22f3bee1d1cbe4dfc171a0001a927b4f05: 100000000000 -- 82d818582183581cc40e2ce1f09c24dc7f25d60d1aa982ed6dd74fcfa17376cdaedfb45ea0001a2a21dfd7: 100000000000 -- 82d818582183581c4637ff2a9ec8ca087478f8cfa2f2211654f8ccc7994a50044e307689a0001a61c28efc: 100000000000 -- 82d818582183581cda7da6d924b26da67459fb5906ad4a0e88fae39c626c14adef32f723a0001ae126fc2a: 100000000000 -- 82d818582183581c212ecc581f96082fbbbafc35867c811d1d83aa67431167d6cae6a1b9a0001a02e69144: 100000000000 -- 82d818582183581cdd9aa481340aab5df9feea1413c86ec9fb712f31bda417f2ec6e6cf5a0001a7a7fb42e: 100000000000 -# "maximum", "annual", "target", "vague", "patch", "humble", "canvas", "bone", "robust", "try", "puzzle", "clerk", "lunar", "theory", "black" -- 82d818582183581c3fc8059341efd0e62fb2536462d26d82f2acf7f7a7f04532007fa58ba0001a596cf95c: 100000000000 -- 82d818582183581c2d8fec0ea74bb50bea70f1c8bad750de3ff5e51295338231735df215a0001aa5f8de53: 100000000000 -- 82d818582183581c6f130c73ec3362e0235c2e9dac1e9cc4c6c49acf8ea8a0e27813b357a0001a85e5f0d5: 100000000000 -- 82d818582183581cae7b5400522f98e56589262ce66b98e635fd51f16cdd9a872caa0a7da0001a3a6d4f3a: 100000000000 -- 82d818582183581c5a49c81c09eee05c0e64ff48213ff0631032fbd87cf45345cb263bc4a0001a9c25c11e: 100000000000 -- 82d818582183581ccb9cfcbf8df554d6f47aa83839b067ea44d1b95e246f071cfcd9c0eea0001a892c5719: 100000000000 -- 82d818582183581c8d203c0378ca0cede83fe582d7e232f975c0499123d972e9d540cd5ba0001a1c33debc: 100000000000 -- 82d818582183581c43fdbdf719e7800b0cdaa1fe2cba7d66cf16442653b71fe203ae85b5a0001a26e1cdb7: 100000000000 -- 82d818582183581c9c1cc261d8ac9c13e47762e5bb6be6b825e739b541c0fe25b8277218a0001ac22a2fa8: 100000000000 -- 82d818582183581c585db980abff636d9aa6360aa83fac89a27e72e2a99b672a375e4b73a0001a65fd0d11: 100000000000 -# "soldier", "seat", "waste", "symptom", "token", "fiber", "fury", "wear", "nut", "wood", "tackle", "clog", "will", "dynamic", "depend" -- 82d818582183581cbc5f9b10e36ea82a18cf48a617ea3ddcf6cf38ca8f1b839a8ef859ffa0001af9c2a3a5: 100000000000 -- 82d818582183581cc34a28b8ea98c5f173994a05c3d3a3e8cf42b12efdd490b8a0f5db87a0001a623b7dcb: 100000000000 -- 82d818582183581c8416967d3cc4cdf029240b13398dc7c13fb22aafcbb60d46ddf5f877a0001a8a5370d7: 100000000000 -- 82d818582183581c61f6c3d6b9f3691d69431523820ced1fc0f2edb231a9501bd49cac0fa0001a5dd4902a: 100000000000 -- 82d818582183581cbb374d2592de94d11e369f6a6b6b8b7592147c3bf039c8e5cc04cd81a0001aded74181: 100000000000 -- 82d818582183581c41c4524c6777a86c09ebff8478a1eaaf0732cb964653d2d9f9583203a0001a3c230710: 100000000000 -- 82d818582183581cf7f3f6dc2329c544e337b595df2bea9390e478ce4bc8ea7e53fa8b43a0001a2120c1a7: 100000000000 -- 82d818582183581c02125f8612030f9663ba9bbb1af39a2c217ed21a30bef0869ee8419aa0001a1357225f: 100000000000 -- 82d818582183581cef5444131b6f25d107756b50bd30f7d6444ae1d45dfae73ab4b7e7aea0001a16d5d4e6: 100000000000 -- 82d818582183581cc9485ee582d54042cf4fa1d8a2bc7c46ebf49e78868ec91d9401a2e7a0001a86e879f6: 100000000000 -# "large", "convince", "pear", "tube", "view", "rely", "prepare", "joy", "gadget", "mail", "chaos", "zebra", "reject", "example", "taste" -- 82d818582183581c51efe12ed8ae84757ffbf13fcc6a1a61f2abca2a7fbc3b1745278f92a0001a21c9a34a: 100000000000 -- 82d818582183581c6a5d99769d6792ef1ced623949ee5a23baa915af8e7e50dc1fb16558a0001a0cca10c3: 100000000000 -- 82d818582183581cc2ab25de2ac799406200d9b6b48ba1e182f68ca50cbec90d4c81bf88a0001a8dabaf61: 100000000000 -- 82d818582183581c4bc0011d581221cf2d3004bbdeb7531328f110f21b58797841aa892ba0001a5afb3346: 100000000000 -- 82d818582183581c1ad4aad95d1743f86eaef4032b06a715f3bdbe06626d7fc431cd8591a0001aa60b566a: 100000000000 -- 82d818582183581cb9eb7c487c220139314108061dc13acc3f7962fe41a8858ee6adadcda0001ac8c8d82d: 100000000000 -- 82d818582183581c4b3a39d89abdb3b1304b1d50c725a3c7ab94f7abbf0de4ecd5a5ec31a0001a6317de7e: 100000000000 -- 82d818582183581c92437101969a265cf3db0a90df983833c44b1117693485c565bd195ba0001a20f5a812: 100000000000 -- 82d818582183581cbbf1aab7ef2ea1100ec9b9ea93b0f8470bb60653bd16187f8f494864a0001a50fb77db: 100000000000 -- 82d818582183581c8fb951286182ea9a2657e1b1b980518da331b0b43ff617765f72444ca0001a2884e4ff: 100000000000 -# "detect", "glare", "pass", "virtual", "rigid", "someone", "transfer", "proud", "feel", "melt", "fever", "travel", "uniform", "lemon", "crop" -- 82d818582183581c566010dcd82c5470f71ce26fb89f14933da8946a6c53ea7ae1bc3801a0001a80184951: 100000000000 -- 82d818582183581cd46847fe4cafc34c70546a8902d8dcb07ba40af0bd1caaa317559715a0001aa61812ad: 100000000000 -- 82d818582183581ca97f5688eefa9b82d9f6c37f7a0a898f6760193140460ff3867fa217a0001a8b0b9455: 100000000000 -- 82d818582183581cc550b1cd2f8a912cbe0c82f2d9257a589160983c07e6837d1ac4418ea0001a0b09bac6: 100000000000 -- 82d818582183581ce0615cc4012d270a7aafa2132a2259591dd6f0f7bf0b1ceed1e1e5b1a0001a64317bff: 100000000000 -- 82d818582183581c10c8cf4d696c4c543d2ae4afc34cf22ecb4ce361d343ea5c86dcebf9a0001a4f507a54: 100000000000 -- 82d818582183581c69f79dffb8e618969453f695a67d1b8008b2b28c966c4eb9aa8a1c7fa0001ac2dff6dd: 100000000000 -- 82d818582183581cafb54edff265a0fa02b207606eb86cf38bb550f45847ebb70db5f9fca0001a34266051: 100000000000 -- 82d818582183581c39f17e400fa074b21ddc5b207b64b8a8eb0d7efb64ba9eaf7c4ad303a0001ac73586e0: 100000000000 -- 82d818582183581c0f183643b136de8d1af1cbc6630340a2e9aa5d4bcfbd04f2fd51746da0001aa459d951: 100000000000 -# "join", "fever", "gossip", "someone", "state", "wheel", "galaxy", "season", "action", "patient", "install", "client", "chapter", "ethics", "lunar" -- 82d818582183581ce5793475a7902b56820f097879868729b0b9875a930b80247c83c15aa0001a8ddbd101: 100000000000 -- 82d818582183581cf57deb99fa1d73096a40a950aa165cacc2cf9f6820925c8b7ba0a5a6a0001a7b3b6427: 100000000000 -- 82d818582183581c4bc36edd7c0b64e9c203cbf6c03a2a361705306ef1eaad8c640c143da0001a8b2efbda: 100000000000 -- 82d818582183581cf2b76d8e23a0b2223f53de433e1c2f6d5c8ede35f6455a7b917705b1a0001ab3b43ffd: 100000000000 -- 82d818582183581c575ab439a9f21ee7d1210f076502c7bf1ec6da09b617fcf3ff77d89aa0001a1e19ed0f: 100000000000 -- 82d818582183581c2105f7c3a69bf652cbdc8df9eee76af1954742a2bc4ee57c3ca31035a0001ac09deaff: 100000000000 -- 82d818582183581c7d578f7bdeb795099cc656805a44d8781d54d750e2a35bf6ca3e84d2a0001a4bcfcfc7: 100000000000 -- 82d818582183581c1a1895936cd92c0649f443eedaea1279c06ea4bd39b5b260aa8843dfa0001a1f027292: 100000000000 -- 82d818582183581c1eeb4f1ce6eb43a15ca4632b8b75e1092cde6c3c6cd8e4d232519845a0001a50237df8: 100000000000 -- 82d818582183581c87e23eece630dbf7a6d6f0ae108f2b27f542cd8dbf95358899a4e626a0001a09990c89: 100000000000 -# "deer", "mushroom", "law", "below", "mimic", "miracle", "tobacco", "frost", "response", "ivory", "captain", "moment", "digital", "car", "wide" -- 82d818582183581ccbabddd00d533aeacabc4fe8153167de23a39b2c92da1e2b7ba542a1a0001ae3e058ef: 100000000000 -- 82d818582183581c4f798798ddfba8a437c786f39fb7cf5a0d4f257025d2eb3557fb09caa0001af99a110a: 100000000000 -- 82d818582183581cf7a4ab860b701a2fdae2ebeeb610ce1ccc91668c12855100c8ea3deda0001a31e827d1: 100000000000 -- 82d818582183581c263842c3f7986bdb4ab25195962425ff2d910ea1ddef8e28174189a4a0001a68e0292b: 100000000000 -- 82d818582183581c467e7758da2026e419c98bfa4c175a6493b843e726d603856ba6fc68a0001a31331846: 100000000000 -- 82d818582183581c38a60fbfe984aa26b286b5c3e4662b78055fcd29dea40a9f2aa45bfca0001a203fda41: 100000000000 -- 82d818582183581c4146d1e469b1c12e2ec3f7aa08e275462481461e6195bcb3b9ff1799a0001a1c2d119e: 100000000000 -- 82d818582183581cdd9d71e992990f893175a86c1741f28757ced15b999637867ddd5187a0001ab461c644: 100000000000 -- 82d818582183581c94a2ffd46d0ddd1fa6cd17c37a70a45ff1d27e2d7a6a785670a67e3da0001a569bcfbd: 100000000000 -- 82d818582183581caa98c62df821105ab5379ebf15ff0c3a07ee554a562d1f0d16c951c4a0001a6b5f947c: 100000000000 -# "sugar", "maximum", "custom", "entire", "minor", "act", "real", "fire", "balance", "that", "slow", "shuffle", "angry", "gentle", "tattoo" -- 82d818582183581c18292601993aa08195d21335e285b5e404f6fb60102c58092fbbcdd6a0001a34299855: 100000000000 -- 82d818582183581c72a565d2157caef3f8305ac2379ad3d35f0c7bee32402cbf15bd38f7a0001a34780258: 100000000000 -- 82d818582183581c9c4b7722e846310a5125f99fd2898f08760ebe6e85b8e72b19409fcfa0001abdb2f45e: 100000000000 -- 82d818582183581c000b744db28cc622032436f4d4f888867bf64979e916cc26bdd5bd45a0001a8fc1c605: 100000000000 -- 82d818582183581c9c1120157e4c4c4b4296570d2687bbfec5602f2bfdc12dd3280eaf48a0001a2459faf4: 100000000000 -- 82d818582183581c2774afd19e84eba41937ce251725460d4d2461ab9d18fbda27c07de3a0001a12de75e8: 100000000000 -- 82d818582183581c3c5e135d9164a38266a1962df6be031e7f1634dccfa4906fd9e47c0fa0001aa6cb0399: 100000000000 -- 82d818582183581cd349a20e69b822bc708e3f06a5db4d890e1e382032f53b850fa4e102a0001ab0748c14: 100000000000 -- 82d818582183581c152ac3bd05f0544511525f2df84c4d3db1f684dd6d4d6661b0dfb8a4a0001a39107044: 100000000000 -- 82d818582183581cf4ff767e1168c38c94e60d74d65a17a2c45b762bcc5f126c49a2a617a0001a9f6d5216: 100000000000 -# "dad", "citizen", "merge", "bunker", "organ", "chicken", "stable", "tiger", "judge", "also", "marble", "corn", "tuna", "stay", "slush" -- 82d818582183581c1c05bd2aa5e210e3111112a303531086e6d909e5e271d0def064613fa0001ae64e3b91: 100000000000 -- 82d818582183581c3b7a0689a2db9f07900e385527f37fc4df4e6592c6a661b8a35d47e7a0001ab29618db: 100000000000 -- 82d818582183581c383e1474a6e29d308599bc2476a38da8c68e3b1fbba72e53a3b9060ba0001a7628ceca: 100000000000 -- 82d818582183581c71426bd0042ece267f8427a311f8885479bd674dac73259f220f54e0a0001ae5b6c43e: 100000000000 -- 82d818582183581cb3b170c166c9b37c3fbdba1ca8eaf8319f9b54cc25431e21474ec7b0a0001adaaf948a: 100000000000 -- 82d818582183581c37b080846ef08f243408a4576551d727b945d30cfff6eecab96289e9a0001ac367c5c8: 100000000000 -- 82d818582183581cf5d2fb162ff91e7cd6bb3f11283e5d0462b50f8e729b40ebd3b4981ba0001ab77491ce: 100000000000 -- 82d818582183581c16f38362816b0ac2938ac17fb19383ee221d0f9e3cbfa61d858b3840a0001a0d842930: 100000000000 -- 82d818582183581c5d95073b73f767a07add5d0393bcea0f10d338337fcf2e42e22441a2a0001a70b5e322: 100000000000 -- 82d818582183581c9c6b2bc076fe281608dbcd3685e03631ab06a448eabbf221b6684534a0001a43f6d35b: 100000000000 -# "globe", "air", "indicate", "dry", "latin", "gospel", "book", "grit", "wrap", "toward", "begin", "pretty", "fade", "adjust", "drill" -- 82d818582183581cf40c7342c041b0e0a3cd0516ad253e9150992606f19b8f90cda93b92a0001ae675d634: 100000000000 -- 82d818582183581c2c4502782185bf09ada72ab0a1450f613c1e765ad07affb9dbcc0829a0001a5052eba1: 100000000000 -- 82d818582183581c6885d85161416ae8bbee2c0d96a21a6d8b70564b7445ba2d44bff306a0001a2cd10b80: 100000000000 -- 82d818582183581c35da0c3a9bfc73878d8251104cf5f3270827ca7ab578cfeec2561adba0001ad5e60a63: 100000000000 -- 82d818582183581c84949c6b48dcec6aafbf6153a978be2a368a63881c6443779171ac9aa0001aa25f4691: 100000000000 -- 82d818582183581c2724443b55b1840a167fdb2c7199f31c28943077aac25f7199446df2a0001a220fa649: 100000000000 -- 82d818582183581c010cac2579a9bca1a9ca006fc65e9cba4a793c159ff33a7928f46217a0001a8e0e94fa: 100000000000 -- 82d818582183581cc9c821d5fcd5883f9c9bd651c4392a8d215895e2bee5ddab01d3ed2da0001a8a461646: 100000000000 -- 82d818582183581c7bf6ca9bd46bb7e9d3064822175e7c2ea5055f1879a9136a9c3861eda0001a1c7cc2d3: 100000000000 -- 82d818582183581c8796b5ec412400c5a55d809960c491d11b404dd4ac7fde62f4e7ddc5a0001a764b8f54: 100000000000 -# "among", "garbage", "survey", "unfair", "between", "advice", "dismiss", "tree", "buddy", "climb", "early", "venture", "later", "mule", "season" -- 82d818582183581c7a996f44599a99e2fe5fc087609ed5633cf31f76c7bf6624bd48f9c6a0001a5f0722c4: 100000000000 -- 82d818582183581c2636d734289a67cfb84bf16095d3a4c2149f1e2d6df504103fc44513a0001a59bb177d: 100000000000 -- 82d818582183581cdf4c4528e9b8761f0aac132b8ed929dbe08d91757bc12f3b35e7fd14a0001a1d2a3592: 100000000000 -- 82d818582183581c3ebb1792862a9e63ac68887fb7a06bad20544251f85d2dc2546f0c63a0001a068e9773: 100000000000 -- 82d818582183581cddcbdd15f67680b5032e6fce4d75f1bfbc6b9fb6c079fa654a3cf832a0001a4fb05634: 100000000000 -- 82d818582183581cd46d348fdfa1440c242c419c5a50bd86d82680a47d9cc4f6e70b7683a0001a4452ecdf: 100000000000 -- 82d818582183581c63168e85ce30cd10dfdee4212a974c46bce6473a339692c59594decca0001af94a0159: 100000000000 -- 82d818582183581c778a8c1a253b631163da808b32e93285ddbd551e2abee44573066439a0001a181ae627: 100000000000 -- 82d818582183581c03594943cb14c876aa2a22df6e991ae7324fd54a00c4680c1adb77c8a0001ac5deda07: 100000000000 -- 82d818582183581c23400456cfd261bda6d1aa531bc2b5b4ee0a27b63371ca0ba3458d71a0001aea4d60b2: 100000000000 -# "squeeze", "expire", "meat", "mixture", "whisper", "retreat", "siege", "beef", "absent", "double", "rotate", "citizen", "neither", "stereo", "accuse" -- 82d818582183581c17e7796639c996770e35846172e3ac54d3fb054c2f5491bfae4958c6a0001a25ee3bb8: 100000000000 -- 82d818582183581cc425b873766df1bd7e3d1f6953e5d3d2096eadf97603614af492342ca0001a423a5aba: 100000000000 -- 82d818582183581ca36869530577525a8bdf7ae7dbff38c59e3339ca6ad2457111ad8ce2a0001a667b8915: 100000000000 -- 82d818582183581ca3ad14b758939ba1030da590e3a8c9e038586268f0611395e2aadd3ba0001ad528587b: 100000000000 -- 82d818582183581c7a97cb0210b00259a9fba5d88b50d795b3ea3c486c779648ad8539b0a0001a593aa0fe: 100000000000 -- 82d818582183581cd6406ed988f7882ba668b4ade71f6dd74f66c1b12614671afc70668ca0001aa720c200: 100000000000 -- 82d818582183581cf1e814f54b7ba898083b9f972c3bf8e2145c2d079654503c9e6d1bbda0001a37abf573: 100000000000 -- 82d818582183581c598d6554b7b83d5c7c19cb68110de3a6d71ff0f2ec4b7f8f7cc9d350a0001a8a4ad07b: 100000000000 -- 82d818582183581ca26e3db4b90f7e65350ce026eb880ff52e77062fef74f8b93fbdcd7fa0001a1db5ed08: 100000000000 -- 82d818582183581cf06cf82634718c0bb54755054ae70a989ca00ce415eebea01e16dafba0001a0680c0c5: 100000000000 -# "improve", "make", "wrong", "tiger", "ten", "panther", "duty", "ring", "pull", "exotic", "milk", "chimney", "source", "present", "panther" -- 82d818582183581c5e2fa3e72c0436b11715b5e8fac7365439c2fdd49871084e71f82741a0001adf6c9f6c: 100000000000 -- 82d818582183581ce9a9fcd414485e89a2ba4a3728814bbed8f671b0fe609490d0c72ffaa0001aafa41404: 100000000000 -- 82d818582183581ce2062d8b393ab5e763abbaef6eb21854721d5e052650823d76924bd5a0001a782c15fb: 100000000000 -- 82d818582183581cf1a6766efa55726b36df4bdf2f552111fae19921d0214a327e0b509ba0001a981d908e: 100000000000 -- 82d818582183581c716215a277cbe91b367d80afb41e6b8c96da5c225cb9fdab84efe16ca0001ac9f2b527: 100000000000 -- 82d818582183581c6cdb95a2c6f62a2256d88ffe146dd02d3faece5cf794755afc3aea85a0001a959861d7: 100000000000 -- 82d818582183581c74baad443d61c30ffef83755d19ed6129c2b61994e89a5580e277daca0001a0bb6984e: 100000000000 -- 82d818582183581cf06cc880721d75524afd88e1d99623541fab8bb8cd7f1b1f630727b0a0001a48b076e6: 100000000000 -- 82d818582183581cbba8bddd62201d9899762fea5978e8178f1de03e5c3e6515625959a4a0001adb5240cc: 100000000000 -- 82d818582183581c972481ea3e25604f3f074c450bd35c6fad7d35888e91e281ae5bdbdaa0001a514636de: 100000000000 -# "busy", "devote", "dirt", "timber", "tumble", "away", "famous", "spatial", "economy", "hub", "near", "spike", "sock", "fee", "head" -- 82d818582183581c05cedf49b8d57ecf9e8f7f614257de38866de776cdf73498b7cdef09a0001a80816ad0: 100000000000 -- 82d818582183581c2a867d035e68ecb992f124c30034a56b9d93eea42f37a65d7bfb2450a0001a3297470f: 100000000000 -- 82d818582183581ccfa5bb3577a3022430d6ff56f3fee8576298a59c0e4430ec66caa8aea0001a10f9ff4b: 100000000000 -- 82d818582183581c750d2f70d98da8a5b8d69571d8470c17374a4f1e5d9a5fc92d6070a0a0001af7d7542b: 100000000000 -- 82d818582183581c47e3b7b93d3df3bc5be60b25f39e447fc59db2f9f936178d733f74f8a0001a225324b8: 100000000000 -- 82d818582183581cd3b68a135ee59143fde9767f76ffaec1c7ad9e8d053d4148862e2010a0001ac5778570: 100000000000 -- 82d818582183581c926aed8c8db345a9a5b88b14e1600608d4569753fec0d2cf5f16c81aa0001a470dbe29: 100000000000 -- 82d818582183581c9f3fc1be519032aa856251ee27567c0888ef5675b01c6305b817d1bfa0001a0341c0a9: 100000000000 -- 82d818582183581c3fb689a7b6ed38d585507f20a41f40b3f1dc9cf3721e5449cd6797e2a0001a0d4d587d: 100000000000 -- 82d818582183581c79ad7752e18d97b6c0874f4dde6a403091144e359f1c70b7c2acc002a0001a1e05700d: 100000000000 -# "cost", "giant", "matter", "divide", "yard", "pluck", "distance", "once", "life", "wool", "ritual", "stage", "banner", "notable", "deposit" -- 82d818582183581c7011fcc4f2198f83ab05d3e977198f32d580c2ff250bde1d893acfdfa0001aa422b09f: 100000000000 -- 82d818582183581c781133dbac5aa7b4cad121b0a623de071325a91e21519a23ea8dfa0fa0001a8a2fdbdd: 100000000000 -- 82d818582183581cfad4b7594a344ad724a83a81870be7711889be2b02bf42fd5fba9c10a0001a9e590283: 100000000000 -- 82d818582183581c72c26469e6ee24c1be0071a7f96f694b1602df33acd04e9bb7d7ea5aa0001a887307a4: 100000000000 -- 82d818582183581c8180350b78b06d090c52b6359ab6e07e318f3b4cadb2a50462671976a0001a42473bd9: 100000000000 -- 82d818582183581c5869f3838acd56f11164a6f062ce68990ac5afbf5bc13bfea83310bfa0001a6e48c8b3: 100000000000 -- 82d818582183581cd8dd0d33ce50e040e1ea8caf8ff375a9c02d90abf5d05a8346dbc522a0001aabbd37fe: 100000000000 -- 82d818582183581c49def9c32c21ac573dc6cdc704b65f4a5ce0c9000a05ca7f0902e51da0001a5ecaa9d8: 100000000000 -- 82d818582183581c4a2054fbae28a775b51dc1bd63fe04897b18809d20719047e8c16e43a0001a180821d8: 100000000000 -- 82d818582183581c657e56c288b803f98a20e449b4665d147cf9ba0779ac02c6e906db8fa0001ab0aea3d9: 100000000000 -# "notable", "drill", "dust", "jump", "task", "immense", "very", "tide", "humor", "north", "cream", "behind", "upgrade", "gaze", "about" -- 82d818582183581c05c72cbce4a691a548cf6842f37fb945077e8bd68b939bf6f98a2566a0001a717a818f: 100000000000 -- 82d818582183581c683a260243673414c8b94984820a1b4471f2d5d5334e79c2bdb65350a0001a265a418f: 100000000000 -- 82d818582183581c572bfc4ae1794703bd26c2177b8aa4d75015c55b94b82175f6a409e3a0001ac2f75f80: 100000000000 -- 82d818582183581c6b385a2c7cd0568ef0aad002e4cd60eed123d00b875aeeab57bb4659a0001aab97e588: 100000000000 -- 82d818582183581c830b13e9af22332ef1d287aead5e635643e62b93d87871140819136fa0001a72c67f93: 100000000000 -- 82d818582183581c4227eb8fa2ba8f61b0468875bf0b867f627668758cffe59f68143e33a0001a70aeebd9: 100000000000 -- 82d818582183581cff8dbfb09449a339c2774aded75d3b5fb113233bf3da680fbd6e6a00a0001a244b342c: 100000000000 -- 82d818582183581ce813b85985d6482b9cbe866012ba5c53676f45a2aa8c26cd498a52a2a0001a48e3bca5: 100000000000 -- 82d818582183581c2e0059c7bdd26029f93beee14bf34ca658a7d39c22ff6c90de9c78d6a0001acd62d61c: 100000000000 -- 82d818582183581cd2ee2c5291350065b1db39b800883ca85784910daf553b44595b46bea0001aaa02e8c5: 100000000000 -# "relax", "faculty", "bundle", "replace", "mercy", "find", "walk", "remove", "clinic", "glove", "session", "truly", "guess", "range", "skirt" -- 82d818582183581c5c306f6c2663cbee18801a949dc90752dcd66cae7f4c8f0c438d8fffa0001a25b92baa: 100000000000 -- 82d818582183581cda9af194bf8a1daf6e1e794b259ee6f69e93732d3af8c24ae80d7f5aa0001aa44d8e2b: 100000000000 -- 82d818582183581c4887c0b84df62b066e19176a88cc6cf94ad7cf3cc974e5ac21afacc9a0001a3ead3d96: 100000000000 -- 82d818582183581c6ab71e7501b0357410154dab4607073faeb480830153c9f1d7c71a78a0001aecc27f33: 100000000000 -- 82d818582183581c0cbc6266dc240d6ac6d48024386c4bf14ecbbe07f7bdc80e1b1a1db8a0001ae613b22e: 100000000000 -- 82d818582183581c6f16927e2a3d6c1f4d66366f1bc88d6d152394dd3ed837a6818c6c4ba0001a5b2a3a60: 100000000000 -- 82d818582183581c1bed2839edc333ce8540c1f0a6d90bc3869cfc418d84130d5d1cfec5a0001a9e8e24a0: 100000000000 -- 82d818582183581c18625b06a25ebc6ca5163a00df92d4e1093681ee3b505a31eb767702a0001aa5ea159a: 100000000000 -- 82d818582183581c448ead251cbb127800cbd725ba347130fcaff5e36d7b4fef0f8561dca0001ab71810c2: 100000000000 -- 82d818582183581c5db4806f91f1934c1db23e816796ec626a8e9840ceea431358d02996a0001a40925ab8: 100000000000 -# "wheel", "unlock", "spice", "monster", "swarm", "lion", "parrot", "pause", "figure", "rude", "jewel", "borrow", "law", "curve", "sport" -- 82d818582183581cd403ee0c21dfb33f7ab63b3ec5904353bf10182c732e36639c506172a0001a7008bcc8: 100000000000 -- 82d818582183581cda7b6d1739fb265883f4e38e0fa7784ff0cb440a9887a16594279297a0001ad1325649: 100000000000 -- 82d818582183581c7a29fa9b0454e66c797f2c981aa6689c3acca5de9791276faedecb56a0001ab4c01c69: 100000000000 -- 82d818582183581c9ae7a0e564344873bf4a1fab5168ed33a0c6105abdc12a5a9f15868ba0001a98f3b758: 100000000000 -- 82d818582183581cac99e0a74dbe41e3238136430468bd1120af465067c9bcb0737a62d6a0001a264cb7a4: 100000000000 -- 82d818582183581c4e1c71d60967e4d5386b8d9b4119a43ad18339776d44bf84dd07f769a0001a2aa339cc: 100000000000 -- 82d818582183581ce69234f0d239f3e83b64e5e1b7cce5692baec3cd5cc3801bb4c59441a0001a1cea8534: 100000000000 -- 82d818582183581c0875bbc745c35bdf66d27f3be7991b288d2f614c2d921a9877bc3ba4a0001a1271fabf: 100000000000 -- 82d818582183581c5c782cc4efde3a089ab82174bad19a63b69700b4ae691a618bb3beb0a0001abb4d0b4e: 100000000000 -- 82d818582183581c62248acba4a2065e562e069d2277967fa8006ef6977cffcde768ad45a0001aa4de328f: 100000000000 -# "merry", "battle", "blind", "analyst", "milk", "owner", "business", "decide", "glue", "wagon", "perfect", "expire", "razor", "list", "catalog" -- 82d818582183581c71f29d276fe8b58f874af8da1d8ddcacdb029ef979ad113742161fbea0001ad8e8a451: 100000000000 -- 82d818582183581cf8ca9aba8f68fcb986fb571b1bdd7c248213f1cc8dca80764d54cfada0001af8f201f2: 100000000000 -- 82d818582183581c9eacad724bd764b3b236f30e38c2fe3d4a59b9a966a3b36716267e35a0001ad179e7f2: 100000000000 -- 82d818582183581cbb038d4b30bfe6f91a4e9cc0089fbbe931ff780d5cd43cc2bdf60d6fa0001aa3f538de: 100000000000 -- 82d818582183581c7f2aea259a3e6ca2b5e98cc6155b7afc44b5ae3fd797bc28fd0eda70a0001a4a29f9b1: 100000000000 -- 82d818582183581c9e5be299cf81fae95cc04385c29f88e2191312c692422544f49592d6a0001a847a3476: 100000000000 -- 82d818582183581ce6384a290ec7b8fd751712b230f8ffc8361060dcfda9b3c631ab72f8a0001a744a88a3: 100000000000 -- 82d818582183581c549dbb7aa7652e0a16fc80063e6796a51061ac8984a22262f4734da2a0001ad0ff459d: 100000000000 -- 82d818582183581c52d264af9f75c11b15af6360a4f8f36671d1336542bc18027a2ba808a0001aa2b2ec3d: 100000000000 -- 82d818582183581ccf363c77ff0abf5b6f4a97e8b2a9c00bb517523891df34fed2415456a0001a89673877: 100000000000 -# "dust", "inner", "time", "daring", "donate", "script", "small", "race", "chase", "crawl", "asthma", "captain", "hawk", "subject", "culture" -- 82d818582183581cf7d33acac330dfdf8553f61e26e3bbcfaa3c74c04a8113f0233673e3a0001a748320d4: 100000000000 -- 82d818582183581c26edd0e6677812bd2a5d40eaa45d0d661123512fad205e904bb11325a0001a529e7dd3: 100000000000 -- 82d818582183581c21c624d187ac3c7abe93a4f26b473dadbed82015e603ec7131cb54eba0001af54c64be: 100000000000 -- 82d818582183581c1c2a059e8ef911c707d13acec501b541a0a1c4bdfd60aef1200ff90ea0001a1440ea31: 100000000000 -- 82d818582183581c1c2c921b92f408d4f384a818cb3b13944cee362a9c9500d87009761da0001ace71da7a: 100000000000 -- 82d818582183581c91c5721f82591473820c25cabae2dea6320d04a6828c131922b28173a0001a53714a15: 100000000000 -- 82d818582183581ca8053e0049ff77197013f90b1ece2c48dce66c0a4afe1cc1cb34e4e7a0001a4bcb0859: 100000000000 -- 82d818582183581c29a8f640549d5b5b9886b1d6f54a0a8cce46352f4fabcb2d25cfc400a0001a1c511082: 100000000000 -- 82d818582183581c430be3bae8454e37386087b6342c4b7f9c99e06a7307c009abfbbe6da0001a968de144: 100000000000 -- 82d818582183581cb697d698d07d4d67fb9d0b008fb522eb0523144c24b3bf75becd5c00a0001a70e2d5f8: 100000000000 -# "grass", "sail", "visit", "merry", "raven", "fault", "soda", "isolate", "echo", "tortoise", "pride", "game", "person", "project", "apple" -- 82d818582183581cbc0b26f05e6c4fea37978e8a89c7faf898a6a09654175e95cd632e99a0001a65cf1509: 100000000000 -- 82d818582183581cafde3441006c7ba150b7fda602eb7adf5db11f70ee5fb8538209b8cfa0001ad1f4e3f3: 100000000000 -- 82d818582183581cb980158db898893b3120035ed4c651609a81fbd489c5190432f9935ba0001aa51f35d9: 100000000000 -- 82d818582183581c9047a3a61edb7445bd841f13368ff22338d2d63cc748c87bfb5c4c41a0001afab0b5b0: 100000000000 -- 82d818582183581c88671b39ea496de600576ec690b11c901b088378ba125d78ecee2059a0001acd381956: 100000000000 -- 82d818582183581c3885ecb8f74023a369a7f6ea38262b1a2ab9a9baaeef307612e29daca0001a20e81670: 100000000000 -- 82d818582183581ccd85b9e02145bb728eaa076afffe371497a4a3055688015d7e64c1fea0001abd0c64d3: 100000000000 -- 82d818582183581cf324f5c8d56aa0729fb8089eae4b22ee62aa9b61bccf71fbe54b861aa0001a5144cce1: 100000000000 -- 82d818582183581c2d1cb6d7516ae5c84213df9df92423f0292aafc188b5612a0dc4333ca0001ac90e2527: 100000000000 -- 82d818582183581c2d4247a43e3dfebf4b3b4534b888923c43d958f2aeed29b9bc0460efa0001a8da8a87d: 100000000000 -# "idle", "absent", "exile", "youth", "magic", "reopen", "tilt", "panther", "human", "citizen", "bubble", "solution", "amused", "gauge", "piece" -- 82d818582183581c8d9cc6b8007534d8315d80da7a3ebd9a17151e68d3f7a320be2fa4c6a0001acbe9f732: 100000000000 -- 82d818582183581c34c5842489842d1080d47ab8ec9a8c7d9d5c21143705a537c01e598da0001ac480a8df: 100000000000 -- 82d818582183581c56d6144cf39028c7ad0e32da4b98cdb270ebe5c859e53cc75811352ca0001ab095a8ce: 100000000000 -- 82d818582183581c895702e3b025892f38efe45c74380ff891647ef19ff7645ff7c83857a0001af2d2dfd4: 100000000000 -- 82d818582183581c40c449c9144fa72c0bf2005347ec648554690e87c611b679dd1dfc00a0001aeb34293a: 100000000000 -- 82d818582183581cbffd3f9522a8a754ec4f5819f7e094d97033db0482d3d43bda4aa71da0001a69dbefa5: 100000000000 -- 82d818582183581c2b2279b8484120ef4d038c9e11725b938ef2ffb66322c1076ed8684da0001aefc987a3: 100000000000 -- 82d818582183581ce7821d389535c7ec2ee8295ec9e70bfd9d41d01aecaf7f2069158680a0001ab808d12e: 100000000000 -- 82d818582183581ce579241fc010db920f79b837878aa8c8d941d39b87ab8533db556c50a0001abe2b63dd: 100000000000 -- 82d818582183581cb72bab33054fcb9adab865ea7f9c81edb5c0df626e2cc076b1a2b916a0001aa1570a3c: 100000000000 -# "cost", "link", "fatal", "puppy", "direct", "under", "fitness", "wrestle", "egg", "token", "yard", "later", "net", "swap", "day" -- 82d818582183581c58e3e20daf68edd24022927605bf0daf6d5c3380b4dd575bef09bcd7a0001aa1b2746a: 100000000000 -- 82d818582183581c4852ddc8609f190e370abc963d27388d06435a3497b240b62c85bd73a0001a4983c043: 100000000000 -- 82d818582183581cfd4453cb0743483e78fae391e4bd8c6e059a76adde7db9cc0cf739b7a0001a65416893: 100000000000 -- 82d818582183581cc5d9391762c7c5f17a4e6d834249d2b5932b9ccc4cae2c849831f615a0001aaf2555ba: 100000000000 -- 82d818582183581c112ce61f904d5b8dcd92e06d2faead06e6c43cdc2715732faff438c1a0001a77653b69: 100000000000 -- 82d818582183581cac39a1beb28384e863bbec241506475879d49d28effa520cae1cf19aa0001ab556589c: 100000000000 -- 82d818582183581ca0def12a3773972d30c75e16f78193d3e3d11a1b9e31bb7346bc95c6a0001aef25a257: 100000000000 -- 82d818582183581c05aea54b1c472d3825f9661fdd31189332ab76ff0ef7d190aa157f2ea0001a9ed5246e: 100000000000 -- 82d818582183581cb67c7b25a84a027c54c59775d78a0e797f01726c3665053e4689978da0001a435a069b: 100000000000 -- 82d818582183581c78a14d493ff7fb69c5a5251699f6938549b79c3afead271b34587e54a0001ae04a9e3e: 100000000000 -# "grain", "left", "kitchen", "attend", "merry", "slim", "wait", "sudden", "gas", "close", "drink", "deputy", "family", "crash", "virus" -- 82d818582183581c76517d3c0a3a64329538873a5f21396e9d8a27f317feb754f112e92ba0001aac313c04: 100000000000 -- 82d818582183581c89fc2a59d6fe3ae16cf6ad01ac5fcd48fd9f79a449698d31ee94510da0001a625b56f0: 100000000000 -- 82d818582183581cf956f0aa7300d21df5ed882d3e388c17966fbcb927f6a99853da3a89a0001af82d08bc: 100000000000 -- 82d818582183581c51765b1d1468ef58a047e412e3eeef0b5bea1838000bfca5781e0da2a0001a60efb72f: 100000000000 -- 82d818582183581c91c726ddf52b8d8e30f47c0ffd5133fa1a8ae9be4980b2cb1b89fd0fa0001acaa50188: 100000000000 -- 82d818582183581c4f403b4ccbc33de14f4096f80d0186a5cf775ad4e5d5ea05a8c04f9aa0001a7240012d: 100000000000 -- 82d818582183581ca0a52e8a7988b9c241700678700141a166864e8696cf689f4f28cd4ba0001ad569e24e: 100000000000 -- 82d818582183581c25a82d6a7f64f448458cfa9088931467ac8d9146c0dffd92d6a1f705a0001a630b2701: 100000000000 -- 82d818582183581c97f024c7b122ec59b704f3c354862f043432c43427fb47028bb7fb8ba0001ab0ef4e12: 100000000000 -- 82d818582183581c3863224f26a12596fa470583636e01ec05d0f8e450a8cae7da3890dba0001a45e50d87: 100000000000 - -# A special Shelley Wallet with with only dust -# "either", "flip", "maple", "shift", "dismiss", "bridge", "sweet", "reveal", "green", "tornado", "need", "patient", "wall", "stamp", "pass" -- 619595a6e13285942450fabea5c286d0ed8f35cebd8cc24d133850a2e2: 1 -- 614781ac588faf62aadda0a584e41bf9776e35f83af080800d8e9505e0: 1 -- 6139b97320da46a2b44d77ea91307a80dc8ff3b9bb94d467c34adfb8d2: 5 -- 61bfd841b4dd04af53c205a456412404e41103be2ad38f903da7d6e5a3: 12 -- 61be24d2aaf2eaf1a0ef5f919339a48e87418d860ec348b4a2ff58bf30: 1 -- 61fa72396c1741bf023943044c76069cd65aa5106563a41a84d1722ab7: 5 -- 614dcdfb27d2c76ab76871b910f67f9dd24151abe6efeba0fea1bba555: 3 -- 6116011211ee09efa4c2eb0943c142c67d7adba419ab76a6ecee7be111: 10 -- 612f0b7487c2ff65f345d53cf973ff9d154bbfe966a9baa15ec4a0e805: 2 -- 612e4b7deb23f61105f6ce8b74b2a33eb5183aba3b015a292e7af3618e: 3 - -# A special Shelley Wallet with 200 UTxOs where 100 of them are dust -# "radar", "scare", "sense", "winner", "little", "jeans", "blue", "spell", "mystery", "sketch", "omit", "time", "tiger", "leave", "load" -- 61e705ec43f174c56eb7b4e0fde1fd13cbf4dcc156bb6eb1ed4dcaaada: 100000000000 -- 6154b9f1b5e20f1e39b29a3327c65f998de8a904991bc0a93d0de83e63: 100000000000 -- 61916263c8f54003a1ce9120618b80e0e8cbab925f88f3decf6b733409: 100000000000 -- 6114df6cbc6dae20481b395203c35bdbcb379de8c75cc011ced61b7ca2: 100000000000 -- 6117c8fe2b39f6a4da31690e100f5d10e3602125f4f4c5d71e5513c658: 100000000000 -- 611138a2176241c9d0c2705828fcddbff5e262008d3be47e20891098d0: 100000000000 -- 613007db76aca9923d0bcd54f0623e70269fbedb85c57a14acb8b42cb4: 100000000000 -- 6166f0df6e7b1a109ae0f10b4f08e648118459155f9d062da0cc39671c: 100000000000 -- 6103c5ef7f0f7e9b8b0ba8f28015ef12f600ecb60cbb2ae9ce435d3eae: 100000000000 -- 6124ff5ed27ca41d80a585b6d540f1be5062ac1a1677df0e8a3ac4f34c: 100000000000 -- 6127752eca68a92941adaa7351aa00e4394a9930fb7a181d56fc9c2dd7: 100000000000 -- 61d2e4c2de80cac65c24b2101b712bb6db880c7a7d770e683e48aca5f5: 100000000000 -- 613a5f2d70edfc7701822ba399fa88c952379da171897da86b5aadc749: 100000000000 -- 61cd41e57e7295e823147565127b88c49fba63142e953e847efaeab0c1: 100000000000 -- 61dc6468821800b3b4ba497b3fcfd73a98d4c3ef9f1078e4d6c0bab915: 100000000000 -- 6148e1badea74f242eae162fb27b40b89a55e447bf55e047115be60fa1: 100000000000 -- 61d0c7d1e55060d1fd91ea7391f418321b7282a4eb0c8f99eee5afc62d: 100000000000 -- 6123ed6e562cc1ee3aaa05ae4c0c78ecc85980c56a7813d0dc5fbed56f: 100000000000 -- 61facb56088a1eade820bf3f2a9371d2a69721818fb59fb0f3ae2dfee0: 100000000000 -- 61d442b90552a30413fc6ad8b1ee1c6c8129033e2673301dedfa60a17d: 100000000000 -- 61f2c3e1ddbc4a6efc8f4e49a4d1abd90627aeaa7fa6acbdb1fef33114: 100000000000 -- 6118a34ec5f3f22a86bbd2313bcb8c10f78b664e49cb9a8e81e4a22802: 100000000000 -- 6103ebd5f7ff5fd3b58f2026dd8c93971b05c7829ce070fa2919c831af: 100000000000 -- 61f4a00d78fb7d2960bd21d1c49a8fdec2f08770b57141b3f091a3d5cd: 100000000000 -- 61f3db48afecc981523c0546a321bc3005def6587c4376b4735b452078: 100000000000 -- 61dc9b5d3632ee710e727518435568861af69b757407bb255522dce6fb: 100000000000 -- 6149a60351118be14dbf8ef6d75f9284c837fe7cda9a486f6b1e8244f2: 100000000000 -- 612fd784e1bef83089957bf17537125a0b4c59e80a5f2b0634f76cf602: 100000000000 -- 610484b8965a11d5a1c2d49372506ef10011b96b8e759e99ec7913b0fa: 100000000000 -- 61e31695744179d26bf24d227b85c06f2b59ce0a0ad7318b95cf91520d: 100000000000 -- 61c9f81650f64f1a5d37641590d14d51635bb685688d514640bb2ddfd0: 100000000000 -- 615dd037cf5c80c8af1df3c7187f6265f2d986e3bb65040c4ebb3d7711: 100000000000 -- 61241ebf8d3e57288b227a24c4476a9a591f2b22c1485008bafe10df16: 100000000000 -- 618ab7cda60f3aebe4c6a1d31ad75a7db440ec3a3ad819b79de0303750: 100000000000 -- 61f0718746f46df4e8dcdc03c3f5faf1e9c793f7e359f307ce5c9e35a4: 100000000000 -- 61595d36f0c903b247b65c81366dceb9b6b5a04ab7d5c4761706da866a: 100000000000 -- 615ff4adb4802b68af036cb10c479f47beb1f8df5a2515a40bd194e1da: 100000000000 -- 615b73e09747462410779e40f49b9d01d0a7d000b8801742aad1b0009b: 100000000000 -- 615b128577aeef426161fd5fb1856972c765a16fb689af85e629a6bc99: 100000000000 -- 613b9718d1a322e4e8215825228a805b921b850635512f07fb130144d8: 100000000000 -- 61a254e32e8dd36a743545bd4697212a4073e1ef2d74fb1726469e8855: 100000000000 -- 61b0b906d301780a82488a3e142aa90988f7301366ed8bc6f2986bde7f: 100000000000 -- 6167cb6df555a346b8e27fdfdfddad5a84c5159038f050f3d23f542853: 100000000000 -- 61ab4c5d09d83b7162971426b97ad259f5f92da8021c2c500b7c3913b5: 100000000000 -- 610f5736da133c83c94476cf883233c1d4555bac338b883fa752ce97cf: 100000000000 -- 61843937815d30280c19e7d576f43ef63c223c66024881a189e63531ac: 100000000000 -- 61afb5e10d7969318c7f5f3ec7f871d8dbf5973074b0a3d086f99c1687: 100000000000 -- 614e0e64ee1958426b78e2dd672f53a3e4f9dae47b8e90b91a6067f44c: 100000000000 -- 61250151d8a579bbfbf5e52c750e84523dfcc8bbfa871ce6c5eb786d0f: 100000000000 -- 6155b040629f26bf7568c991c56bfa5f76e83d61a5e6233e8a134ab470: 100000000000 -- 612f3fb7f63982c66e80f486be9b12be8eaa28caa42f709682f8dc4291: 100000000000 -- 616f4bcb5749fb8f48438e3c5fecc7c1b4d49c2654d660cda5da3c8c3d: 100000000000 -- 6131353cf689a7940d3161a099cd99be7de35882d0a8afc4daf75f28db: 100000000000 -- 61523702db8993f213efade8c54ad71f6ee26b06a618f5f4747956ccb0: 100000000000 -- 618e1e00748739191c00d385517007e9c69775fb2d168b9e769c84fbe1: 100000000000 -- 6174c32a82a0e66beac7e35993755896f0bc8a001e15aa337110c04f02: 100000000000 -- 6167d74b932c5e00b504e1132a4977756c90a4c48b4e6f93e4439e9011: 100000000000 -- 612cbe5f1d7f105b8e470d3a8f813a0b2ababa4c320706f4d81add8b24: 100000000000 -- 616eac59a3d22d053c6dbdfe421d43ccde6ee24e47a3b81dc88d7ce62c: 100000000000 -- 61c3c4e53d75e7cca84e5393012620b98e452b2168c71faed75304e9ae: 100000000000 -- 612d1916c8cf9390f046371e52fd1e7102058072f6462928305f4946c2: 100000000000 -- 610bb74e68395ed6c0998e31ae1c1b310d5a45243291d4fa74a701ffa3: 100000000000 -- 613b64ffb170ab315318653b9dbe13e5bf978ba691f220b17fed5897d4: 100000000000 -- 6110d4c588fd1199684ea1a3521ffedf9b3b0ce5bfde803a23a11163e6: 100000000000 -- 6192c03a0e101f8c2597345f66a4cf50d37a1185048cf2b786d1b17a55: 100000000000 -- 613c046e4a1d9a8d4e5d6d7d700e2166466ad4e6a306ed08c3342c8148: 100000000000 -- 6191aacc178f647ae540b30b4f18c2605b8fd8f60520b7be21e0300639: 100000000000 -- 6167c61ab625c54e51b5d59b826e8cfb19f4460a693795002db280d7d1: 100000000000 -- 61de83caf853ceb17590044f4ea3e3557a851dca08b79635cfee9f343a: 100000000000 -- 617d8ad6cffdf6140010c4c3ee7ac3e8963e100f1c886f0487a958171b: 100000000000 -- 61e8d76adfacee3441b808f2aecb473edc522e57d3949435056eddda51: 100000000000 -- 61d9f0e2f5dd3e8a48180e00e54b10d3eb4eb8d0524c564ad77af560bf: 100000000000 -- 610dda27fcdabcbdd541581e2e4360068c0acb9012e30733e0f492f2da: 100000000000 -- 612db144fabec48c27d7ff236722e0e090c6a6df362de154e3dd7ace45: 100000000000 -- 614e21fb43cd96dd4fca8e476cd98ad865651ac15e5e9ad5bd8e92de6e: 100000000000 -- 6136f21516f040205664c511b4e1de96b64fd820b7f06bfabca6fd872b: 100000000000 -- 61f3cdd99095e0cca729349a4bfd601a3d1408f75d7bb234b71a113fa2: 100000000000 -- 61720cfe059b4fdfe9c2901bc36490f7da487e82fc83e931aa29d9752e: 100000000000 -- 6175836aac79117bd8704d378476c3032e40040b5c9812b13a409c0ca0: 100000000000 -- 61f75539435a352c71a8f661b76ba753345f0e6b9dc96d1be0f7f3351b: 100000000000 -- 6131604f1e7d26bb0c1c36b4c1096f67bbcd0c61da23a003a534dee017: 100000000000 -- 61eb7d2ea0336e9b6f5de1b82f2f2735c21e61aeb8ccf1b7c7d117fbdd: 100000000000 -- 61b309f3e824fd61503213006d48bba84afd9f7d93d977b0a4527d3406: 100000000000 -- 61170f12e35d0907df4ec3d8023ae401a7034d45c5949c136afca28ace: 100000000000 -- 61a7aa93c221f370b6a05d791f97e3e601ec53fe63d765ed144ff421b6: 100000000000 -- 6174f8392bc51fa1fb5689635975a46fce35b717107adb38ccb35c99cc: 100000000000 -- 615d850816f49ed7b326a60a12dd5062e8fca4b810d874719eb8340b34: 100000000000 -- 610ac1b12a326302f4b6c4288cb80f8bb1db70eda82a7ec405315f1594: 100000000000 -- 61c99ad07b09725f990b9ba72677e1d43b4fddb56f2d0e935f6b7c5f1c: 100000000000 -- 6197ceeb25da918ba1216d1635b0ebb189762d0c9957e6ab1b5cc30687: 100000000000 -- 6161efb82515bd8c73f8f72266ca439db4e9a15574a0a86088aeacba05: 100000000000 -- 61bd9bffc1f0623a8e3689aa3f7676a117f0e2456ca1eb3942edb3337e: 100000000000 -- 61b96b418fca0d6ea3644bd14e2e8d9af962a5743d96ce049ee127c0ce: 100000000000 -- 610fbda7dda12a42e62f90d3eacfdc5a57f4bffeff5a51556d93277c1c: 100000000000 -- 613934b5217754515ef40c5c4536f98cd78b050f92a5f3799619b6fe05: 100000000000 -- 619d1303733bd0edce509905dd002fa5c6c0674fb1a75ceb54a465fc45: 100000000000 -- 61c6038e9f82bbf441a7da7baedb84f17e0bc33cad694561545a4dc0bd: 100000000000 -- 618a96b5365d5b1d828b9dfc12fbbe37c1b97f09dabe9af3019d92257f: 100000000000 -- 6196d7e42814dcefe63fb359395bec7c837d2b245eca4f9f764156ffe9: 100000000000 -- 612abaa86d027c4c72fdf41b39447403b943a2ab82e01be76349ea52b1: 100000000000 -- 61516caf041cd0879f913fca27795bcd8791ef71a52b1185e79e6d40f4: 1 -- 61a2d797b031d901106fb9938351f8b6a36a7484134f9349d28f1d53cd: 1 -- 61c36a7fa9dc1b48650f810114c43ec45c22662083b94f7ee36de1f536: 1 -- 6157dc51f183b5b14830167bd375b9438bf1d42a85c65ccdfb78e1e1c4: 1 -- 6168c91731b5da8db58d5f9016575104b65896190d726b4659a6d3faa9: 1 -- 6198b99249be857a67fd0420c02048e2c88cc5b1b89ac86ccdf290ca73: 1 -- 6118092bf349a00f91aabc194d5c61095fe81330985f3b1072843835d9: 1 -- 6138c2a0a5ccf5d925a857ee4fa98f1eb528b7fe8cb36413a4ab9cd1c6: 1 -- 611d6915876844e491485efcdcba2301d3c4cc8b202be1b7517c684d05: 1 -- 61af02a660c739739f47871206361316efb9fb97cff7509c671848c88a: 1 -- 61cb86fd4892a30821313054f586b5fb4f93df6f184a6ef2ddc304a60b: 1 -- 61c54f680d06456594d4abc76deb41395e7116eaa021641ab8608d5b51: 1 -- 61323ede0aa3005aefd4e95a620cf46e809983a26dd7a598f077cf58ad: 1 -- 61f45c880e4afb89bf342aacea3186388237b343f8d1a48efeb88dc033: 1 -- 61ce2b4491386936fc554ad6c7bcde6e9034e7a328b4145761c6e96a82: 1 -- 613570177649ec8bc9e9817c667310aebf5947517d485d63f1b28174b3: 1 -- 6102c13358c924328fbd557c7b9582d20ccb4cf4085e7c349806d4860a: 1 -- 61cad04c54a8af98d3204865f85154642e48dccd79780c6948fad231de: 1 -- 61c30f3af7a899ff5dd7c0662027844261b29acc4bf4757edd2d442d55: 1 -- 61d114d35ea83c6669b8a0bf79ffba6dfca7c3b0019a7e6eb750c93127: 1 -- 6151ed37e6883206d4c1bef6b0184423bf22b9f24ba8a31d81732bbf65: 1 -- 6101436609376efdbb54079a2169d21a39ed308ad301210046bab9861b: 1 -- 617490eceadc63f7fc8bfa5540e4f7daa910929c845583d9d1f27033fa: 1 -- 61bbd4d2a59991eeda212765669365bb066f217cd9821eebda2e8042d6: 1 -- 61e9219624e2611cbc3a97a8cfa5ef797c1ecddd3bd1ea9b772bc40256: 1 -- 6119847c59bf5cbaee096410ed0365832013cf7ef7c25aa4d89e1b4208: 1 -- 611f5b98d7bb71e8d3f46f6819e314bc68dd9a6a4a095ff489b73882fe: 1 -- 6153c396ac7d300cd0221f41fa82228bdcc03d035c0b8fd0b5cb58b469: 1 -- 610e23285e56935c84ad41d329bd150e3339d017c7e80fe2bca04632fe: 1 -- 61a4a18fe625cb3c16ecc8dcfa7ae777cfc86c5744a7726290e446c72e: 1 -- 613285a8e75f7d599bae254dcbbc790c5614329194e3afbcd143317d9a: 1 -- 61b5a014cfa887d28332018d1b9a45d1eb7023b184c94cfdeaab53b4b3: 1 -- 617653dd8ff4108600ce2d0238bc1653ad874a938e826ce8eeda6949cc: 1 -- 610a57d6179d64aff8b0168494c83e8a4a6680a54e3f33062c41f2c0b4: 1 -- 6183296d13a77d431d81332ff291aab2bdf7b226aabd6ed3fb6af1e207: 1 -- 619f872851c69fd8784a7554cb3efa88c699178a5c580e4deb799205d8: 1 -- 618209ed4036a812f2a66e8b58fa9449c55c844254d64ce1820f8dd271: 1 -- 617602aa037e4b1558e961438ae0ca3d400d85d895df3994a919206ba5: 1 -- 61bb7e3c09da7951d95441edf44e57ac7aa2df7432a621e41a8108aedc: 1 -- 614a9c71c4034a204a3fbfdb4276907402de4c482eec546f7d2f8b2a73: 1 -- 617c2ceb147b796f8ed01beb5d31e39aa92eedb76dd1f9b847d18b3dec: 1 -- 61255a077596c2a724d73e21071e2910b4b19dcd8c1076ea30599296b1: 1 -- 61723576d4e542352fb9332f0bd120aa86bac4687edd118026b0d3430e: 1 -- 6142cb1853657a26950526354d771175bb8b4d97307b1b0f49a9f8f178: 1 -- 614089f05050c6b705b51e93c0686eba788ff9002c247ea488d95e2bae: 1 -- 61e214bda4c2edc119a91f6ec15160ceb7048c79160b603357c3e2a0f7: 1 -- 61cb4091a73eba164ff181a3a36d19fba2e89ed758f642069374f2b2b2: 1 -- 61e884b364af948c5655e00ea522ebb3eca18f20099798d3bae0cf0722: 1 -- 610fc85e67a4bff128e5f580fb95238c49be03f0f3508003fe207128eb: 1 -- 610f46283841fcb63af8ce564ca04c9f0bbed9c9f6e0668384910a46e9: 1 -- 61e7e1fb82471822ed2f98d846bc67ce394ca0985f5b91b62639e0ef01: 1 -- 617a115c48180d221b327d2b4fb0ceb29bf4d43d0f28e04203d1dc36f9: 1 -- 61103a44a673fb9fb55faaa0c8911800e0266a1649089a12b69990f4ea: 1 -- 61234af229f59af4bdf1ffc4e60b124033793dbb0c17c2a41956db51e6: 1 -- 61492f1632da379ef3a3a0901f9c163ce02734be5badfadbc252f0593e: 1 -- 61d731e01ccba7bd015b3163b2cd074a21b13cd608be51e977a2d6a88f: 1 -- 6103abbb99211cdee4c66f977611812589901cd9945c3eb2bfb8defc3f: 1 -- 6160eb6f03ff0edb7e4e3d62c49b2f2398132ee5631af3e317e46b8d22: 1 -- 616c2c26bdc544b6a0ed80094b67dd1988f47feca6d704ea70ab6b888a: 1 -- 61ea83b130e5a6ded1817a2d3ec002353a78a9b6c0f2323683d2eef548: 1 -- 618cb0393911ecf9152e0a83f37c1609e0049850bdb849e08f84cea75f: 1 -- 61703425c8a03a579610cd96be2a8ad40ef14759edee4af05c300db99e: 1 -- 613c4a853f2292ae6c66cf6fbade7293ad294ce7272227926a78f54d9f: 1 -- 61a926820e4a14e7112fed5b9b36db5c3852eaaf88eb2e36b4f15c796b: 1 -- 617bbea54b5af111300e16f4550f867620ce73d9864316f568673087c6: 1 -- 6183f6300b09eca5e22882cb57b083b6e540faefef54e32877aa974622: 1 -- 61457ab643bbc5d021e33b5e9c181b425e7fbf699fee6576424aa3a6c2: 1 -- 617cbd8c50bc00c38e3200675a0e76e93da4973f867f598616e17e6d91: 1 -- 612e06e12594ff3f55e386996926ed95b239f0ea186c4d0b132833c0e2: 1 -- 61264c4d2619b631e92f13fd391cc284db10afb62dae5ffcecebc563ab: 1 -- 61f0e125a8d6502dddb012bfc0fa441fb6dcaf53058d5f5d1646dc57b6: 1 -- 6147d3ad86cd73f575f527d65ea8b5f5bf743ed0d92f6e07eda5fba198: 1 -- 617a2f763e6382b5cbfaeaf2050a027261d9c793b2226547ab0457a8e1: 1 -- 61e021177788b3143678042b80d2a24c6a9f7da860364028bbac2d3887: 1 -- 61a3c4b631d4e2930af7d78698b07811886516d89986de2b4f021674bb: 1 -- 612e2d4097fa7040f88335fb9e0772ab41e0c287657b948773d57dd73d: 1 -- 6183f13a59e960fcf27e6520181c808037772da3719b229f4fa42d146c: 1 -- 61ea08a58bed2dec7ddaad30cfb8fac665cb233d7a5f24c773fa81cdc2: 1 -- 61f00b368855873f9f800230f3a8eb52c292e098300a681a86622a902d: 1 -- 618f121de380b5fc44b1d7ec6e7800bdc9277bb8c8f7500f58b157f9da: 1 -- 61aa303fd8c56947d56a6f79d017e3a5b3339ca7c73a4e3d20c5a425b2: 1 -- 612a75742ca4ea997573eca2bd61a11b4c398de52e3ea03666f81ccd96: 1 -- 612d368b8181f32ce7cadfb97a228378c2e09b006751014e89180a3376: 1 -- 614014ee6f0ae9568408f52364dbc739febe585241c6455e883f051ede: 1 -- 6142beca9a11c9307ce2ad91b520ae7900c3f2c29ed5af69e2b878bc13: 1 -- 6121269f5778f2d1e827b82c1dc4757434d806b47ffd852439321c617a: 1 -- 617bc26d4c6a899def3f97a6128043ea4b37a9ed142f6dbba987fd8abe: 1 -- 613082bd8735a09d03896b52c7a5958020f174b6a4577053cbc4bdf7a7: 1 -- 61fe2674ee3f3d06740fc51b557dc23125728fce0283025f08a067e1c5: 1 -- 61f33af3c424393c4ba1a1d0aca97b9ac89dd2b49d55e771d9957f58f0: 1 -- 61f8e5266c1c5925e8ef13048305cff88066eb2367519720577ad44ec9: 1 -- 610bc4ba130c6b2429f41e3d5aac19053bcb1a1ceba2132d5cee584220: 1 -- 61b655128484fe490434ee07f904e0de2e50fb9e4b178e6fb76f2bb973: 1 -- 61d2e68f43e8f9ee91cd56b4f1f8459263f5682895fdbf52f5934b3d87: 1 -- 614d5478a62386ffcfd46c9fb468f0448017d534c4db7bda5ecbf5d68f: 1 -- 613562097ad59131e9dc99de6a9c1c96ea25598da3206e9f98065fe327: 1 -- 61eea588a43b235e47e21117f78d0407e3b75e1c908ef2a39ce503c5b6: 1 -- 610cdec48bb2168dbaa18f5a7e67ede598449e3783891f926d99c7ace8: 1 -- 61d1e87828a2ff41f11e575e7827d0c38f48f2bf6778b359042c7a2e3e: 1 -- 610130f3030867e827cb09eb1bf50401b0d9f413b2ca872b57a8d2fae4: 1 - -# Special wallet ["over", "decorate", "flock", "badge", "beauty", "stamp", "chest", "owner", "excess", "omit", "bid", "raccoon", "spin", "reduce", "rival"] -# for STAKE_POOLS_JOIN_05. -- 6199a7c32aaa55a628d936b539f01d5415318dec8bcb5e59ec71af695b: 10000000000 -- 60386c7a86d8844f4085a50241556043c9842d72c315c897a42a8a0510: 10000000000 +initialFunds: [] diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 8ea232b3aab..d26fe1b28a1 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -70,7 +70,6 @@ import Cardano.Wallet.Shelley.Launch ( ClusterLog , PoolConfig (..) , RunningNode (..) - , oneMillionAda , sendFaucetFundsTo , withCluster , withSystemTempDir @@ -78,6 +77,8 @@ import Cardano.Wallet.Shelley.Launch ) import Cardano.Wallet.Shelley.Transaction ( _minimumFee ) +import Control.Arrow + ( first ) import Control.Concurrent.Async ( race ) import Control.Concurrent.MVar @@ -115,7 +116,7 @@ import Test.Hspec import Test.Hspec.Extra ( aroundAll ) import Test.Integration.Faucet - ( genShelleyAddresses, seqMnemonics ) + ( shelleyIntegrationTestFunds ) import Test.Integration.Framework.DSL ( Context (..) , Headers (..) @@ -247,10 +248,8 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown onByron _ = pure () afterFork dir _ = do let encodeAddr = T.unpack . encodeAddress @'Mainnet - let rawAddrs = (seqMnemonics >>= take 10 . genShelleyAddresses) - let addresses = encodeAddr <$> rawAddrs - sendFaucetFundsTo stdoutTextTracer dir $ - map (,Coin $ fromIntegral (oneMillionAda `div` 10)) addresses + let addresses = map (first encodeAddr) shelleyIntegrationTestFunds + sendFaucetFundsTo stdoutTextTracer dir addresses onClusterStart action dir (RunningNode socketPath block0 (gp, vData)) = do -- NOTE: We may want to keep a wallet running across the fork, but From cb7f8cc1435113cd2d66267a9458d2fdd27022be Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 18:17:58 +0200 Subject: [PATCH 50/86] Re-add call to prepareKeyRegistration, fix mistake in addr --- lib/core-integration/src/Test/Integration/Faucet.hs | 8 ++------ lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 6 +++++- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Faucet.hs b/lib/core-integration/src/Test/Integration/Faucet.hs index f30cf98d5d8..35ceee69e00 100644 --- a/lib/core-integration/src/Test/Integration/Faucet.hs +++ b/lib/core-integration/src/Test/Integration/Faucet.hs @@ -1417,11 +1417,7 @@ genShelleyAddresses mw = -- | Abstract function for generating a faucet. genFaucet - :: forall mw ent csz. - ( ent ~ EntropySize mw - , mw ~ MnemonicWords ent - ) - => (Address -> Text) + :: (Address -> Text) -> (Mnemonic mw -> [Address]) -> FilePath -> [Mnemonic mw] @@ -1499,7 +1495,7 @@ shelleyIntegrationTestFunds = mconcat -- preregKeyWalletFunds = map ((,defaultAmt) . Address . unsafeFromHex) [ "6199a7c32aaa55a628d936b539f01d5415318dec8bcb5e59ec71af695b" - , "60386c7a86d8844f4085a50241556043c9842d72c315c897a42a8a0510" + , "61386c7a86d8844f4085a50241556043c9842d72c315c897a42a8a0510" ] -- diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 769691ed6c8..e84b94e4294 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -416,11 +416,15 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = let runningBftNode = RunningNode bftSocket block0 params waitForSocket tr bftSocket *> onByron runningBftNode - -- TODO: Maybe poll and detect when the fork occurs traceWith tr MsgForkCartouche updateVersion tr dir waitForHardFork bftSocket 2 *> onFork runningBftNode + setEnv "CARDANO_NODE_SOCKET_PATH" bftSocket + (rawTx, faucetPrv) <- prepareKeyRegistration tr dir + tx <- signTx tr dir rawTx [faucetPrv] + submitTx tr "pre-registered stake key" tx + waitGroup <- newChan doneGroup <- newChan let waitAll = do From c6e59d9498b1093483ab0f01e89590b9011918ce Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Wed, 22 Jul 2020 20:48:24 +0200 Subject: [PATCH 51/86] Adjust documentation in shelley-genesis --- .../test/data/cardano-node-shelley/shelley-genesis.yaml | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml index 1ad91d5e351..a3372d15065 100644 --- a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml @@ -6,16 +6,9 @@ # b) the `systemStart` is hard-coded here to please the parser but is replaced dynamically # by the same code generating the final node configuration for integration. # -# c) initialFunds are defined as a list of singleton, and not as a key-value map like in the -# json equivalent. The reason is to allow preserving the order of declaration when parsing -# the file which is crucial for sequential discovery. Once again, when converting to JSON, -# this is transformed in a proper map. -# -# See also: lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs for details. --- activeSlotsCoeff: 0.5 -TestShelleyHardForkAtEpoch: 2 protocolParams: poolDeposit: 0 protocolVersion: @@ -61,3 +54,5 @@ maxKESEvolutions: 90 securityParam: 10 systemStart: "2020-06-19T16:07:37.740128433Z" initialFunds: [] +# For the Byron;Shelley test setup, funds have to be migrated from byron +# using manually submitted transactions. The initialFunds field is ignored. From 1f5531fbdcf4b0c0d95d8abb5e76a02c68f1c2d0 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 17:32:48 +0200 Subject: [PATCH 52/86] replace hard-coded occurences of 'Secure Passphrase' with a named constant And in particular, fix the inconsistency between fixture wallets and empty wallets that have different passphrases! --- .../src/Test/Integration/Framework/DSL.hs | 10 ++-- .../Test/Integration/Framework/TestData.hs | 6 +-- .../Scenario/API/Byron/Addresses.hs | 11 +++-- .../Integration/Scenario/API/Byron/Wallets.hs | 18 +++---- .../Scenario/API/Shelley/StakePools.hs | 18 ++++--- .../Scenario/API/Shelley/Wallets.hs | 47 ++++++++++--------- .../Scenario/CLI/Byron/Addresses.hs | 13 ++--- .../Integration/Scenario/CLI/Byron/Wallets.hs | 5 +- .../Scenario/CLI/Shelley/HWWallets.hs | 3 +- .../Scenario/CLI/Shelley/Transactions.hs | 16 +++++-- lib/jormungandr/test/bench/Latency.hs | 5 +- .../Jormungandr/Scenario/API/StakePools.hs | 14 +++--- .../Jormungandr/Scenario/API/Transactions.hs | 10 ++-- 13 files changed, 92 insertions(+), 84 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Framework/DSL.hs b/lib/core-integration/src/Test/Integration/Framework/DSL.hs index c9fd26af68c..c1b5f8f66e4 100644 --- a/lib/core-integration/src/Test/Integration/Framework/DSL.hs +++ b/lib/core-integration/src/Test/Integration/Framework/DSL.hs @@ -671,25 +671,25 @@ emptyRandomWallet :: Context t -> IO ApiByronWallet emptyRandomWallet ctx = do mnemonic <- mnemonicToText @12 . entropyToMnemonic <$> genEntropy emptyByronWalletWith ctx "random" - ("Random Wallet", mnemonic, "Secure Passphrase") + ("Random Wallet", mnemonic, fixturePassphrase) emptyRandomWalletMws :: Context t -> IO (ApiByronWallet, Mnemonic 12) emptyRandomWalletMws ctx = do mnemonic <- entropyToMnemonic <$> genEntropy (,mnemonic) <$> emptyByronWalletWith ctx "random" - ("Random Wallet", mnemonicToText @12 mnemonic, "Secure Passphrase") + ("Random Wallet", mnemonicToText @12 mnemonic, fixturePassphrase) emptyIcarusWallet :: Context t -> IO ApiByronWallet emptyIcarusWallet ctx = do mnemonic <- mnemonicToText @15 . entropyToMnemonic <$> genEntropy emptyByronWalletWith ctx "icarus" - ("Icarus Wallet", mnemonic, "Secure Passphrase") + ("Icarus Wallet", mnemonic, fixturePassphrase) emptyIcarusWalletMws :: Context t -> IO (ApiByronWallet, Mnemonic 15) emptyIcarusWalletMws ctx = do mnemonic <- entropyToMnemonic <$> genEntropy (,mnemonic) <$> emptyByronWalletWith ctx "icarus" - ("Icarus Wallet",mnemonicToText @15 mnemonic, "Secure Passphrase") + ("Icarus Wallet",mnemonicToText @15 mnemonic, fixturePassphrase) emptyRandomWalletWithPasswd :: Context t -> Text -> IO ApiByronWallet emptyRandomWalletWithPasswd ctx rawPwd = do @@ -756,7 +756,7 @@ emptyWallet ctx = do let payload = Json [aesonQQ| { "name": "Empty Wallet", "mnemonic_sentence": #{mnemonic}, - "passphrase": "Secure Passphrase" + "passphrase": #{fixturePassphrase} }|] r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default payload diff --git a/lib/core-integration/src/Test/Integration/Framework/TestData.hs b/lib/core-integration/src/Test/Integration/Framework/TestData.hs index 94ce6fa2ef6..6e257b28b1b 100644 --- a/lib/core-integration/src/Test/Integration/Framework/TestData.hs +++ b/lib/core-integration/src/Test/Integration/Framework/TestData.hs @@ -86,7 +86,7 @@ import Data.Text import Numeric.Natural ( Natural ) import Test.Integration.Framework.DSL - ( Payload (..), json ) + ( Payload (..), json, fixturePassphrase ) falseWalletIds :: [(String, String)] falseWalletIds = @@ -216,14 +216,14 @@ payloadWith :: Text -> [Text] -> Payload payloadWith name mnemonics = Json [json| { "name": #{name}, "mnemonic_sentence": #{mnemonics}, - "passphrase": "Secure passphrase" + "passphrase": #{fixturePassphrase} } |] simplePayload :: Payload simplePayload = Json [json| { "name": "Secure Wallet", "mnemonic_sentence": #{mnemonics21}, - "passphrase": "Secure passphrase" + "passphrase": #{fixturePassphrase} } |] updateNamePayload :: Text -> Payload diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Addresses.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Addresses.hs index 7865277d707..8f1ba199d22 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Addresses.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Addresses.hs @@ -59,6 +59,7 @@ import Test.Integration.Framework.DSL , expectListSize , expectResponseCode , fixtureIcarusWallet + , fixturePassphrase , fixtureRandomWallet , getFromResponse , icarusAddresses @@ -180,7 +181,7 @@ scenario_ADDRESS_CREATE_01 => SpecWith (Context t) scenario_ADDRESS_CREATE_01 = it title $ \ctx -> do w <- emptyRandomWallet ctx - let payload = Json [json| { "passphrase": "Secure Passphrase" }|] + let payload = Json [json| { "passphrase": #{fixturePassphrase} }|] r <- request @(ApiAddress n) ctx (Link.postRandomAddress w) Default payload verify r [ expectResponseCode @IO HTTP.status201 @@ -197,7 +198,7 @@ scenario_ADDRESS_CREATE_02 => SpecWith (Context t) scenario_ADDRESS_CREATE_02 = it title $ \ctx -> do w <- emptyIcarusWallet ctx - let payload = Json [json| { "passphrase": "Secure Passphrase" }|] + let payload = Json [json| { "passphrase": #{fixturePassphrase} }|] r <- request @(ApiAddress n) ctx (Link.postRandomAddress w) Default payload verify r [ expectResponseCode @IO HTTP.status403 @@ -232,7 +233,7 @@ scenario_ADDRESS_CREATE_04 scenario_ADDRESS_CREATE_04 = it title $ \ctx -> do w <- emptyRandomWallet ctx - let payload = Json [json| { "passphrase": "Secure Passphrase" }|] + let payload = Json [json| { "passphrase": #{fixturePassphrase} }|] rA <- request @(ApiAddress n) ctx (Link.postRandomAddress w) Default payload verify rA [ expectResponseCode @IO HTTP.status201 ] let addr = getFromResponse id rA @@ -254,7 +255,7 @@ scenario_ADDRESS_CREATE_05 scenario_ADDRESS_CREATE_05 = it title $ \ctx -> do w <- emptyRandomWallet ctx let payload = Json [json| - { "passphrase": "Secure Passphrase" + { "passphrase": #{fixturePassphrase} , "address_index": 2147483662 }|] r <- request @(ApiAddress n) ctx (Link.postRandomAddress w) Default payload @@ -274,7 +275,7 @@ scenario_ADDRESS_CREATE_06 scenario_ADDRESS_CREATE_06 = it title $ \ctx -> do w <- emptyRandomWallet ctx let payload = Json [json| - { "passphrase": "Secure Passphrase" + { "passphrase": #{fixturePassphrase} , "address_index": 2147483662 }|] r0 <- request @(ApiAddress n) ctx (Link.postRandomAddress w) Default payload diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Wallets.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Wallets.hs index 5612dfb4aec..9a35302de9a 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Wallets.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Wallets.hs @@ -120,9 +120,9 @@ spec = do m1 <- genMnemonics @12 m2 <- genMnemonics @12 m3 <- genMnemonics @12 - _ <- emptyByronWalletWith ctx "random" ("b1", m1, "Secure Passphrase") - _ <- emptyByronWalletWith ctx "random" ("b2", m2, "Secure Passphrase") - _ <- emptyByronWalletWith ctx "random" ("b3", m3, "Secure Passphrase") + _ <- emptyByronWalletWith ctx "random" ("b1", m1, fixturePassphrase) + _ <- emptyByronWalletWith ctx "random" ("b2", m2, fixturePassphrase) + _ <- emptyByronWalletWith ctx "random" ("b3", m3, fixturePassphrase) rl <- request @[ApiByronWallet] ctx (Link.listWallets @'Byron) Default Empty verify rl @@ -137,7 +137,7 @@ spec = do ] it "BYRON_LIST_01 - Interleave of Icarus and Random wallets" $ \ctx -> do - let pwd = "Secure Passphrase" + let pwd = fixturePassphrase genMnemonics @15 >>= \m -> void (emptyByronWalletWith ctx "icarus" ("ica1", m, pwd)) genMnemonics @12 >>= \m -> void (emptyByronWalletWith ctx "random" ("rnd2", m, pwd)) genMnemonics @15 >>= \m -> void (emptyByronWalletWith ctx "icarus" ("ica3", m, pwd)) @@ -159,7 +159,7 @@ spec = do let payload = Json [json| { "name": #{name}, "mnemonic_sentence": #{mnemonic}, - "passphrase": "Secure Passphrase", + "passphrase": #{fixturePassphrase}, "style": #{style} }|] let discovery = @@ -205,7 +205,7 @@ spec = do let payload = Json [json| { "name": "Empty Byron Wallet", "mnemonic_sentence": #{mnemonic}, - "passphrase": "Secure Passphrase", + "passphrase": #{fixturePassphrase}, "style": #{style} }|] r <- request @ApiByronWallet ctx @@ -255,7 +255,7 @@ spec = do \ctx -> do m <- genMnemonics @12 w <- emptyByronWalletWith ctx "random" - ("Byron Wallet", m, "Secure Passphrase") + ("Byron Wallet", m, fixturePassphrase) rd <- request @ApiByronWallet ctx (Link.deleteWallet @'Byron w) Default Empty expectResponseCode @IO HTTP.status204 rd @@ -268,7 +268,7 @@ spec = do let payload = Json [json| { "name": "Some Byron Wallet", "mnemonic_sentence": #{mnemonic}, - "passphrase": "Secure Passphrase", + "passphrase": #{fixturePassphrase}, "style": "random" } |] r1 <- request @ApiByronWallet ctx (Link.postWallet @'Byron) Default payload @@ -383,7 +383,7 @@ spec = do request @ApiByronWallet ctx (Link.getWallet @'Byron w) Default Empty >>= flip verify [ expectField #passphrase (`shouldSatisfy` isJust) ] - let payload = updatePassPayload "Secure Passphrase" "New Secure Passphrase" + let payload = updatePassPayload fixturePassphrase "New Secure Passphrase" r <- request @ApiByronWallet ctx (Link.putWalletPassphrase @'Byron w) Default payload verify r diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs index 6e7a9cf4032..e8492457ced 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs @@ -454,7 +454,7 @@ spec = do let payload = Json [json| { "name": "Wallet with pre-registered stake key", "mnemonic_sentence": #{walletWithPreRegKey}, - "passphrase": "Secure Passphrase" + "passphrase": #{fixturePassphrase} } |] (_, w) <- unsafeRequest @ApiWallet ctx @@ -463,7 +463,7 @@ spec = do ctx (Link.listStakePools arbitraryStake) Empty eventually "wallet join a pool" $ do - joinStakePool @n ctx pool (w, passwd) >>= flip verify + joinStakePool @n ctx pool (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status202 , expectField (#status . #getApiT) (`shouldBe` Pending) , expectField (#direction . #getApiT) (`shouldBe` Outgoing) @@ -478,7 +478,7 @@ spec = do w <- fixtureWalletWith @n ctx [fee + depositAmt ctx] pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] ctx (Link.listStakePools arbitraryStake) Empty - joinStakePool @n ctx pool (w, passwd)>>= flip verify + joinStakePool @n ctx pool (w, fixturePassphrase)>>= flip verify [ expectResponseCode HTTP.status202 , expectField (#status . #getApiT) (`shouldBe` Pending) , expectField (#direction . #getApiT) (`shouldBe` Outgoing) @@ -491,7 +491,7 @@ spec = do w <- fixtureWalletWith @n ctx [fee + depositAmt ctx - 1] pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] ctx (Link.listStakePools arbitraryStake) Empty - joinStakePool @n ctx pool (w, passwd) >>= flip verify + joinStakePool @n ctx pool (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status403 , expectErrorMessage (errMsg403DelegationFee 14101) ] @@ -509,7 +509,7 @@ spec = do pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] ctx (Link.listStakePools arbitraryStake) Empty - joinStakePool @n ctx pool (w, passwd) >>= flip verify + joinStakePool @n ctx pool (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status202 , expectField (#status . #getApiT) (`shouldBe` Pending) , expectField (#direction . #getApiT) (`shouldBe` Outgoing) @@ -521,7 +521,7 @@ spec = do [ expectField #delegation (`shouldBe` delegating pool []) ] - quitStakePool @n ctx (w, passwd) >>= flip verify + quitStakePool @n ctx (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status202 ] eventually "Wallet is not delegating and it got his deposit back" $ @@ -548,7 +548,7 @@ spec = do pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] ctx (Link.listStakePools arbitraryStake) Empty - joinStakePool @n ctx pool (w, passwd) >>= flip verify + joinStakePool @n ctx pool (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status202 , expectField (#status . #getApiT) (`shouldBe` Pending) , expectField (#direction . #getApiT) (`shouldBe` Outgoing) @@ -559,7 +559,7 @@ spec = do Default Empty >>= flip verify [ expectField #delegation (`shouldBe` delegating pool []) ] - quitStakePool @n ctx (w, passwd) >>= flip verify + quitStakePool @n ctx (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status403 , expectErrorMessage (errMsg403DelegationFee (feeQuit - 1)) ] @@ -752,8 +752,6 @@ spec = do setOf :: Ord b => [a] -> (a -> b) -> Set b setOf xs f = Set.fromList $ map f xs - passwd = "Secure Passphrase" - depositAmt :: Context t -> Natural depositAmt ctx = let diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Wallets.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Wallets.hs index 7ec07b39413..40afe5ceb37 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Wallets.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Wallets.hs @@ -89,6 +89,7 @@ import Test.Integration.Framework.DSL , expectListSize , expectResponseCode , expectWalletUTxO + , fixturePassphrase , fixtureWallet , getFromResponse , json @@ -142,7 +143,7 @@ spec = do "name": "1st Wallet", "mnemonic_sentence": #{mnemonics15}, "mnemonic_second_factor": #{mnemonics12}, - "passphrase": "Secure Passphrase", + "passphrase": #{fixturePassphrase}, "address_pool_gap": 30 } |] r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default payload @@ -276,7 +277,7 @@ spec = do let payload = Json [json| { "name": "Some Wallet", "mnemonic_sentence": #{mnemonics21}, - "passphrase": "Secure Passphrase" + "passphrase": #{fixturePassphrase} } |] r1 <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default payload expectResponseCode @IO HTTP.status201 r1 @@ -344,7 +345,7 @@ spec = do let payload = Json [json| { "name": #{walName}, "mnemonic_sentence": #{mnemonics24}, - "passphrase": "Secure Passphrase" + "passphrase": #{fixturePassphrase} } |] r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default payload verify r expectations @@ -381,7 +382,7 @@ spec = do let payload = Json [json| { "name": "Just a łallet", "mnemonic_sentence": #{mnemonics}, - "passphrase": "Secure Passphrase" + "passphrase": #{fixturePassphrase} } |] r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default payload verify r expectations @@ -406,7 +407,7 @@ spec = do "name": "Just a łallet", "mnemonic_sentence": #{mnemonics15}, "mnemonic_second_factor": #{mnemonics}, - "passphrase": "Secure Passphrase" + "passphrase": #{fixturePassphrase} } |] r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default payload verify r expectations @@ -561,7 +562,7 @@ spec = do "name": "Wallet to be listed", "mnemonic_sentence": #{mnemonics18}, "mnemonic_second_factor": #{mnemonics9}, - "passphrase": "Secure Passphrase", + "passphrase": #{fixturePassphrase}, "address_pool_gap": 20 } |] _ <- unsafeRequest @ApiWallet ctx (Link.postWallet @'Shelley) payload @@ -766,7 +767,7 @@ spec = do it "WALLETS_UPDATE_PASS_01 - passphaseLastUpdate gets updated" $ \ctx -> do r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default simplePayload - let payload = updatePassPayload "Secure passphrase" "New passphrase" + let payload = updatePassPayload fixturePassphrase "New passphrase" let endpoint = "v2/wallets" (getFromResponse walletId r) ("passphrase" :: Text) rup <- request @ApiWallet ctx ("PUT", endpoint) Default payload @@ -808,7 +809,7 @@ spec = do ] forM_ matrix $ \(title, passphrase, expectations) -> it title $ \ctx -> do r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default simplePayload - let payload = updatePassPayload "Secure passphrase" passphrase + let payload = updatePassPayload fixturePassphrase passphrase let endpoint = "v2/wallets" (getFromResponse walletId r) ("passphrase" :: Text) rup <- request @ApiWallet ctx ("PUT", endpoint) Default payload @@ -855,7 +856,7 @@ spec = do it "WALLETS_UPDATE_PASS_04 - Deleted wallet is not available" $ \ctx -> do r <- request @ApiWallet ctx (Link.postWallet @'Shelley) Default simplePayload - let payload = updatePassPayload "Secure passphrase" "Secure passphrase2" + let payload = updatePassPayload fixturePassphrase "Secure passphrase2" let walId = getFromResponse walletId r let delEndp = "v2/wallets" walId _ <- request @ApiWallet ctx ("DELETE", delEndp) Default Empty @@ -927,7 +928,7 @@ spec = do ] forM_ matrix $ \(title, headers, expectations) -> it title $ \ctx -> do (_, w) <- unsafeRequest @ApiWallet ctx (Link.postWallet @'Shelley) simplePayload - let payload = updatePassPayload "Secure passphrase" "Passphrase" + let payload = updatePassPayload fixturePassphrase "Passphrase" let endpoint = Link.putWalletPassphrase @'Shelley w rup <- request @ApiWallet ctx endpoint headers payload verify rup expectations @@ -1141,7 +1142,7 @@ spec = do it "BYRON_WALLETS_UPDATE_PASS -\ \ Cannot update Byron wal with shelley ep (404)" $ \ctx -> do w <- emptyRandomWallet ctx - let payload = updatePassPayload "Secure passphrase" "Secure passphrase2" + let payload = updatePassPayload fixturePassphrase "Secure passphrase2" let wid = w ^. walletId let endpoint = "v2/wallets" @@ -1181,13 +1182,13 @@ spec = do m1 <- genMnemonics @12 m2 <- genMnemonics @12 m3 <- genMnemonics @12 - _ <- emptyByronWalletWith ctx "random" ("byron1", m1, "Secure Passphrase") - _ <- emptyByronWalletWith ctx "random" ("byron2", m2, "Secure Passphrase") - _ <- emptyByronWalletWith ctx "random" ("byron3", m3, "Secure Passphrase") + _ <- emptyByronWalletWith ctx "random" ("byron1", m1, fixturePassphrase) + _ <- emptyByronWalletWith ctx "random" ("byron2", m2, fixturePassphrase) + _ <- emptyByronWalletWith ctx "random" ("byron3", m3, fixturePassphrase) - _ <- emptyWalletWith ctx ("shelley1", "Secure Passphrase", 20) - _ <- emptyWalletWith ctx ("shelley2", "Secure Passphrase", 20) - _ <- emptyWalletWith ctx ("shelley3", "Secure Passphrase", 20) + _ <- emptyWalletWith ctx ("shelley1", fixturePassphrase, 20) + _ <- emptyWalletWith ctx ("shelley2", fixturePassphrase, 20) + _ <- emptyWalletWith ctx ("shelley3", fixturePassphrase, 20) --list only byron rl <- request @[ApiByronWallet] ctx (Link.listWallets @'Byron) Default Empty @@ -1219,13 +1220,13 @@ spec = do m1 <- genMnemonics @12 m2 <- genMnemonics @12 m3 <- genMnemonics @12 - _ <- emptyByronWalletWith ctx "random" ("byron1", m1, "Secure Passphrase") - wb2 <- emptyByronWalletWith ctx "random" ("byron2", m2, "Secure Passphrase") - _ <- emptyByronWalletWith ctx "random" ("byron3", m3, "Secure Passphrase") + _ <- emptyByronWalletWith ctx "random" ("byron1", m1, fixturePassphrase) + wb2 <- emptyByronWalletWith ctx "random" ("byron2", m2, fixturePassphrase) + _ <- emptyByronWalletWith ctx "random" ("byron3", m3, fixturePassphrase) - _ <- emptyWalletWith ctx ("shelley1", "Secure Passphrase", 20) - _ <- emptyWalletWith ctx ("shelley2", "Secure Passphrase", 20) - ws3 <- emptyWalletWith ctx ("shelley3", "Secure Passphrase", 20) + _ <- emptyWalletWith ctx ("shelley1", fixturePassphrase, 20) + _ <- emptyWalletWith ctx ("shelley2", fixturePassphrase, 20) + ws3 <- emptyWalletWith ctx ("shelley3", fixturePassphrase, 20) -- delete _ <- request @ApiByronWallet ctx (Link.deleteWallet @'Byron wb2) Default Empty diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Addresses.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Addresses.hs index dd8b1f5347a..d39b370f831 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Addresses.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Addresses.hs @@ -53,6 +53,7 @@ import Test.Integration.Framework.DSL , expectCliListField , expectValidJSON , fixtureIcarusWallet + , fixturePassphrase , fixtureRandomWallet , icarusAddresses , importAddressViaCLI @@ -206,7 +207,7 @@ scenario_ADDRESS_CREATE_01 scenario_ADDRESS_CREATE_01 = it title $ \ctx -> do w <- emptyRandomWallet ctx let wid = T.unpack (w ^. walletId) - (c, out, err) <- createAddressViaCLI @t ctx [wid] "Secure Passphrase" + (c, out, err) <- createAddressViaCLI @t ctx [wid] (T.unpack fixturePassphrase) T.unpack err `shouldContain` cmdOk c `shouldBe` ExitSuccess j <- expectValidJSON (Proxy @(ApiAddress n)) (T.unpack out) @@ -224,7 +225,7 @@ scenario_ADDRESS_CREATE_02 scenario_ADDRESS_CREATE_02 = it title $ \ctx -> do w <- emptyIcarusWallet ctx let wid = T.unpack (w ^. walletId) - (c, out, err) <- createAddressViaCLI @t ctx [wid] "Secure Passphrase" + (c, out, err) <- createAddressViaCLI @t ctx [wid] (T.unpack fixturePassphrase) T.unpack err `shouldContain` errMsg403NotAByronWallet c `shouldBe` ExitFailure 1 out `shouldBe` mempty @@ -258,7 +259,7 @@ scenario_ADDRESS_CREATE_04 scenario_ADDRESS_CREATE_04 = it title $ \ctx -> do w <- emptyRandomWallet ctx let wid = T.unpack (w ^. walletId) - (c, out, err) <- createAddressViaCLI @t ctx [wid] "Secure Passphrase" + (c, out, err) <- createAddressViaCLI @t ctx [wid] (T.unpack fixturePassphrase) T.unpack err `shouldContain` cmdOk c `shouldBe` ExitSuccess addr <- expectValidJSON (Proxy @(ApiAddress n)) (T.unpack out) @@ -282,7 +283,7 @@ scenario_ADDRESS_CREATE_05 = it title $ \ctx -> do w <- emptyRandomWallet ctx let wid = T.unpack (w ^. walletId) let args = [ wid, "--address-index", "2147483662" ] - (c, out, err) <- createAddressViaCLI @t ctx args "Secure Passphrase" + (c, out, err) <- createAddressViaCLI @t ctx args (T.unpack fixturePassphrase) T.unpack err `shouldContain` cmdOk c `shouldBe` ExitSuccess j <- expectValidJSON (Proxy @(ApiAddress n)) (T.unpack out) @@ -301,7 +302,7 @@ scenario_ADDRESS_CREATE_06 = it title $ \ctx -> do w <- emptyRandomWallet ctx let wid = T.unpack (w ^. walletId) let args = [ wid, "--address-index", "2147483662" ] - let createTheSameAddr = createAddressViaCLI @t ctx args "Secure Passphrase" + let createTheSameAddr = createAddressViaCLI @t ctx args (T.unpack fixturePassphrase) (c, _, _) <- createTheSameAddr c `shouldBe` ExitSuccess @@ -325,7 +326,7 @@ scenario_ADDRESS_CREATE_07 index expectedMsg = it index $ \ctx -> do w <- emptyRandomWallet ctx let wid = T.unpack (w ^. walletId) let args = [ wid, "--address-index", index ] - (c, out, err) <- createAddressViaCLI @t ctx args "Secure Passphrase" + (c, out, err) <- createAddressViaCLI @t ctx args (T.unpack fixturePassphrase) T.unpack err `shouldContain` expectedMsg c `shouldBe` ExitFailure 1 out `shouldBe` mempty diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Wallets.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Wallets.hs index 5efc9047e82..f90f67cc02d 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Wallets.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Byron/Wallets.hs @@ -67,6 +67,7 @@ import Test.Integration.Framework.DSL , expectCliListField , expectValidJSON , expectWalletUTxO + , fixturePassphrase , getWalletUtxoStatisticsViaCLI , getWalletViaCLI , listWalletsViaCLI @@ -298,7 +299,7 @@ spec = do Stdout out <- getWalletViaCLI @t ctx wid expectValidJSON (Proxy @ApiByronWallet) out >>= flip verify [ expectCliField #passphrase (`shouldSatisfy` isJust) ] - let oldPass = "Secure Passphrase" + let oldPass = T.unpack fixturePassphrase let newPass = "cardano-wallet-new-pass" (c, o, e) <- updateWalletPassphraseViaCLI @t ctx wid oldPass newPass newPass @@ -327,7 +328,7 @@ spec = do let errMsgTooShort = "passphrase is too short: expected at least 10 characters" let passTooLong = replicate (maxLength + 1) 'o' let errMsgTooLong = "passphrase is too long: expected at most 255 characters" - let passOK = "Secure Passphrase" + let passOK = T.unpack fixturePassphrase let matrix = [ ("old pass too short", passTooShort, passOK, errMsgTooShort) , ("old pass too long", passTooLong, passOK, errMsgTooLong) diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs index 5f1623974fa..d1e2036dfe1 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs @@ -59,6 +59,7 @@ import Test.Integration.Framework.DSL , expectCliListField , expectValidJSON , expectWalletUTxO + , fixturePassphrase , fixtureWallet , fixtureWalletWithMnemonics , generateMnemonicsViaCLI @@ -177,7 +178,7 @@ spec = do , "--payment", "1@" <> addr ] - (c, out, err) <- postTransactionViaCLI @t ctx "Secure Passphrase" args + (c, out, err) <- postTransactionViaCLI @t ctx (T.unpack fixturePassphrase) args (T.unpack err) `shouldContain` errMsg403NoRootKey (wRestored ^. walletId) out `shouldBe` "" diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs index a1c2121af16..2c1815bb488 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs @@ -68,6 +68,7 @@ import Test.Integration.Framework.DSL , expectCliListField , expectValidJSON , faucetAmt + , fixturePassphrase , fixtureWallet , fixtureWalletWith , getTransactionViaCLI @@ -208,7 +209,8 @@ spec = do , "--payment", toText amt <> "@" <> addr ] - (c, out, err) <- postTransactionViaCLI @t ctx "Secure Passphrase" args + (c, out, err) <- postTransactionViaCLI @t ctx + (T.unpack fixturePassphrase) args err `shouldBe` "Please enter your passphrase: *****************\nOk.\n" txJson <- expectValidJSON (Proxy @(ApiTransaction n)) out verify txJson @@ -247,7 +249,8 @@ spec = do , "--payment", "1@" <> addr ] - (c, out, err) <- postTransactionViaCLI @t ctx "Secure Passphrase" args + (c, out, err) <- postTransactionViaCLI @t ctx + (T.unpack fixturePassphrase) args (T.unpack err) `shouldContain` errMsg403Fee out `shouldBe` "" c `shouldBe` ExitFailure 1 @@ -263,7 +266,8 @@ spec = do , "--payment", "1000000@" <> addr ] - (c, out, err) <- postTransactionViaCLI @t ctx "Secure Passphrase" args + (c, out, err) <- postTransactionViaCLI @t ctx + (T.unpack fixturePassphrase) args (T.unpack err) `shouldContain` errMsg403NotEnoughMoney (fromIntegral feeMin) 1_000_000 out `shouldBe` "" @@ -292,7 +296,8 @@ spec = do , "--payment", "12@" <> (T.pack addr) ] - (c, out, err) <- postTransactionViaCLI @t ctx "Secure Passphrase" args + (c, out, err) <- postTransactionViaCLI @t ctx + (T.unpack fixturePassphrase) args (T.unpack err) `shouldContain` errMsg out `shouldBe` "" c `shouldBe` ExitFailure 1 @@ -308,7 +313,8 @@ spec = do , "--payment", amt <> "@" <> addr ] - (c, out, err) <- postTransactionViaCLI @t ctx "cardano-wallet" args + (c, out, err) <- postTransactionViaCLI @t ctx + (T.unpack fixturePassphrase) args (T.unpack err) `shouldContain` errMsg out `shouldBe` "" c `shouldBe` ExitFailure 1 diff --git a/lib/jormungandr/test/bench/Latency.hs b/lib/jormungandr/test/bench/Latency.hs index d26379fe98a..ba22ae9c04b 100644 --- a/lib/jormungandr/test/bench/Latency.hs +++ b/lib/jormungandr/test/bench/Latency.hs @@ -107,6 +107,7 @@ import Test.Integration.Framework.DSL , expectSuccess , expectWalletUTxO , faucetAmt + , fixturePassphrase , fixtureWallet , fixtureWalletWith , json @@ -264,10 +265,10 @@ walletApiBench capture benchWithServer = do repeatPostMultiTx ctx wDest amtToSend batchSize (amtExp, utxoExp) = do wSrc <- fixtureWalletWith @n ctx (replicate batchSize 1000) - let pass = "Secure Passphrase" :: Text postMultiTx ctx - (wSrc, Link.createTransaction @'Shelley, pass) wDest amtToSend batchSize + (wSrc, Link.createTransaction @'Shelley, fixturePassphrase) + wDest amtToSend batchSize eventually "repeatPostMultiTx: wallet balance is as expected" $ do rWal1 <- request @ApiWallet ctx (Link.getWallet @'Shelley wDest) Default Empty diff --git a/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/StakePools.hs b/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/StakePools.hs index 680a123567c..93d9d143683 100644 --- a/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/StakePools.hs +++ b/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/StakePools.hs @@ -404,7 +404,7 @@ spec = do unsafeRequest @[ApiStakePool] ctx Link.listJormungandrStakePools Empty let (fee, _) = ctx ^. #_feeEstimator $ DelegDescription (Join dummyPool) w <- fixtureWalletWith @n ctx [fee+3] - joinStakePool @n ctx (p ^. #id) (w, "Secure Passphrase")>>= flip verify + joinStakePool @n ctx (p ^. #id) (w, fixturePassphrase)>>= flip verify [ expectResponseCode HTTP.status202 , expectField (#status . #getApiT) (`shouldBe` Pending) , expectField (#direction . #getApiT) (`shouldBe` Outgoing) @@ -416,7 +416,7 @@ spec = do unsafeRequest @[ApiStakePool] ctx Link.listJormungandrStakePools Empty let (fee, _) = ctx ^. #_feeEstimator $ DelegDescription (Join dummyPool) w <- fixtureWalletWith @n ctx [fee - 1] - r <- joinStakePool @n ctx (p ^. #id) (w, "Secure Passphrase") + r <- joinStakePool @n ctx (p ^. #id) (w, fixturePassphrase) expectResponseCode HTTP.status403 r expectErrorMessage (errMsg403DelegationFee 1) r @@ -425,7 +425,7 @@ spec = do unsafeRequest @[ApiStakePool] ctx Link.listJormungandrStakePools Empty w <- emptyWallet ctx let (fee, _) = ctx ^. #_feeEstimator $ DelegDescription (Join dummyPool) - r <- joinStakePool @n ctx (p ^. #id) (w, "Secure Passphrase") + r <- joinStakePool @n ctx (p ^. #id) (w, fixturePassphrase) expectResponseCode HTTP.status403 r expectErrorMessage (errMsg403DelegationFee fee) r @@ -436,7 +436,7 @@ spec = do let (feeQuit, _) = ctx ^. #_feeEstimator $ DelegDescription Quit let initBalance = [feeJoin + feeQuit + 3] (w, _) <- joinStakePoolWithWalletBalance @n ctx initBalance - rq <- quitStakePool @n ctx (w, "Secure Passphrase") + rq <- quitStakePool @n ctx (w, fixturePassphrase) expectResponseCode HTTP.status202 rq eventually "Wallet is not delegating and has balance = 0" $ do request @ApiWallet ctx (Link.getWallet @'Shelley w) Default Empty >>= flip verify @@ -454,7 +454,7 @@ spec = do let (feeQuit, _) = ctx ^. #_feeEstimator $ DelegDescription Quit let initBalance = [feeJoin+1] (w, _) <- joinStakePoolWithWalletBalance @n ctx initBalance - rq <- quitStakePool @n ctx (w, "Secure Passphrase") + rq <- quitStakePool @n ctx (w, fixturePassphrase) verify rq [ expectResponseCode HTTP.status403 , expectErrorMessage (errMsg403DelegationFee (feeQuit - 1)) @@ -473,7 +473,7 @@ spec = do it "STAKE_POOLS_JOIN_01 - Cannot join non-existent stakepool" $ \(_,_,ctx) -> do let poolIdAbsent = PoolId $ BS.pack $ replicate 32 0 w <- emptyWallet ctx - r <- joinStakePool @n ctx (ApiT poolIdAbsent) (w, "Secure Passphrase") + r <- joinStakePool @n ctx (ApiT poolIdAbsent) (w, fixturePassphrase) expectResponseCode HTTP.status404 r expectErrorMessage (errMsg404NoSuchPool (toText poolIdAbsent)) r @@ -847,7 +847,7 @@ joinStakePoolWithWalletBalance ctx balance = do w <- fixtureWalletWith @n ctx balance (_, p:_) <- eventually "Stake pools are listed in joinStakePoolWithWalletBalance" $ unsafeRequest @[ApiStakePool] ctx Link.listJormungandrStakePools Empty - r <- joinStakePool @n ctx (p ^. #id) (w, "Secure Passphrase") + r <- joinStakePool @n ctx (p ^. #id) (w, fixturePassphrase) expectResponseCode HTTP.status202 r -- Verify the certificate was discovered eventually "Tx in ledger in joinStakePoolWithWalletBalance" $ do diff --git a/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/Transactions.hs b/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/Transactions.hs index 99026697525..34c0c4b7572 100644 --- a/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/Transactions.hs +++ b/lib/jormungandr/test/integration/Test/Integration/Jormungandr/Scenario/API/Transactions.hs @@ -457,12 +457,11 @@ fixtureExternalTx -> IO ExternalTxFixture fixtureExternalTx ctx toSend = do -- we use faucet wallet as wSrc - let password = "cardano-wallet" :: Text mnemonicFaucet <- mnemonicToText <$> nextWallet @"shelley" (_faucet ctx) let restoreFaucetWallet = Json [json| { "name": "Faucet Wallet", "mnemonic_sentence": #{mnemonicFaucet}, - "passphrase": #{password} + "passphrase": #{fixturePassphrase} } |] r0 <- request @ApiWallet ctx ("POST", "v2/wallets") Default restoreFaucetWallet @@ -476,7 +475,7 @@ fixtureExternalTx ctx toSend = do txsSrc <- listAllTransactions @n ctx wSrc let (ApiTransaction (ApiT theTxId) _ _ _ _ _ _ outs _ _):_ = reverse txsSrc let (AddressAmount ((ApiT addrSrc),_) (Quantity amt)):_ = outs - let (rootXPrv, pwd, st) = getSeqState mnemonicFaucet password + let (rootXPrv, pwd, st) = getSeqState mnemonicFaucet fixturePassphrase -- we create change address let (addrChng, st') = genChange (delegationAddress @n) st -- we generate address private keys for all source wallet addresses @@ -484,11 +483,10 @@ fixtureExternalTx ctx toSend = do let (Just keysAddrChng) = isOwned st' (rootXPrv, pwd) addrChng -- we create destination empty wallet - let password1 = "Secure Passphrase" :: Text let createWallet = Json [json| { "name": "Destination Wallet", "mnemonic_sentence": #{mnemonics15}, - "passphrase": #{password1} + "passphrase": #{fixturePassphrase} } |] r1 <- request @ApiWallet ctx ("POST", "v2/wallets") Default createWallet expectField @@ -503,7 +501,7 @@ fixtureExternalTx ctx toSend = do let addrDest = (head addrsDest) ^. #id -- we choose one available address to which money will be transfered let addrDest' = getApiT $ fst addrDest - let (rootXPrv1, pwd1, st1) = getSeqState mnemonics15 password1 + let (rootXPrv1, pwd1, st1) = getSeqState mnemonics15 fixturePassphrase -- we generate address private key for destination address let (Just keysAddrDest) = isOwned st1 (rootXPrv1, pwd1) addrDest' From f232302505da54086f1a8a1ec64466034f730379 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 21:18:05 +0200 Subject: [PATCH 53/86] add little correction to size estimation for Byron change addresses indeed, for the size estimation, we generate dummy change outputs that necessary are shelley addresses. Yet, Byron addresses have different sizes, and in particular, Byron are longer than shelley addresses (Icarus are however shorter). So, we apply a correction after the whole size calculation for each change output because generating dummy Byron addresses would be a real pain in the a** --- .../src/Cardano/Wallet/Shelley/Transaction.hs | 59 +++++++++++++++---- 1 file changed, 49 insertions(+), 10 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs index b6474b363a0..4618fb1cbbe 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Transaction.hs @@ -140,19 +140,29 @@ emptyTxPayload :: TxPayload c emptyTxPayload = TxPayload mempty mempty data TxWitnessTag - = TxWitnessByronUTxO + = TxWitnessByronUTxO WalletStyle | TxWitnessShelleyUTxO deriving (Show, Eq) +data WalletStyle + = Icarus + | Byron + deriving (Show, Eq) + -- | Provide a transaction witness for a given private key. The type of witness -- is different between types of keys and, with backward-compatible support, we -- need to support many types for one backend target. class TxWitnessTagFor (k :: Depth -> * -> *) where txWitnessTagFor :: TxWitnessTag -instance TxWitnessTagFor ShelleyKey where txWitnessTagFor = TxWitnessShelleyUTxO -instance TxWitnessTagFor IcarusKey where txWitnessTagFor = TxWitnessByronUTxO -instance TxWitnessTagFor ByronKey where txWitnessTagFor = TxWitnessByronUTxO +instance TxWitnessTagFor ShelleyKey where + txWitnessTagFor = TxWitnessShelleyUTxO + +instance TxWitnessTagFor IcarusKey where + txWitnessTagFor = TxWitnessByronUTxO Icarus + +instance TxWitnessTagFor ByronKey where + txWitnessTagFor = TxWitnessByronUTxO Byron mkTx :: forall k. (TxWitnessTagFor k, WalletKey k) @@ -186,7 +196,7 @@ mkTx networkId (TxPayload certs mkExtraWits) timeToLive (rewardAcnt, pwdAcnt) ke pure $ mkExtraWits unsigned <> addrWits <> wdrlsWits - TxWitnessByronUTxO -> do + TxWitnessByronUTxO{} -> do bootstrapWits <- forM (CS.inputs cs) $ \(_, TxOut addr _) -> do (k, pwd) <- lookupPrivateKey keyFrom addr pure $ mkByronWitness unsigned networkId addr (getRawKey k, pwd) @@ -360,9 +370,8 @@ computeTxSize -> CoinSelection -> Integer computeTxSize networkId witTag action cs = - withUnderlyingShelleyTx SL.txsize signed + withUnderlyingShelleyTx SL.txsize signed + outputCorrection where - withUnderlyingShelleyTx :: (forall crypto. SL.Tx crypto -> a) -> Cardano.Tx Cardano.Shelley @@ -371,6 +380,35 @@ computeTxSize networkId witTag action cs = signed = Cardano.makeSignedTransaction wits unsigned + -- NOTE + -- When we generate dummy output, we generate them as new Shelley addresses + -- because their format is much easier to generate (can be a sequence of + -- bytes, and a straightforward header). Generating dummy Byron or Icarus + -- addresses would be nuts. So instead, we apply a small correction for each + -- output which can either slightly increase or decrease the overall size. + -- + -- When change are Shelley addresses, the correction is null. + outputCorrection = + toInteger (length $ change cs) * perChangeCorrection + where + perChangeCorrection = case witTag of + TxWitnessShelleyUTxO -> + 0 + TxWitnessByronUTxO Byron | networkId == Cardano.Mainnet -> + maxSizeOfByronMainAddr - maxSizeOfShelleyAddr + TxWitnessByronUTxO Byron -> + maxSizeOfByronTestAddr - maxSizeOfShelleyAddr + TxWitnessByronUTxO Icarus | networkId == Cardano.Mainnet -> + maxSizeOfIcarusMainAddr - maxSizeOfShelleyAddr + TxWitnessByronUTxO Icarus -> + maxSizeOfIcarusTestAddr - maxSizeOfShelleyAddr + where + maxSizeOfShelleyAddr = 56 + 1 + maxSizeOfByronMainAddr = 76 + maxSizeOfByronTestAddr = 83 + maxSizeOfIcarusMainAddr = 43 + maxSizeOfIcarusTestAddr = 50 + unsigned = mkUnsignedTx maxBound cs' wdrls certs where cs' :: CoinSelection @@ -380,7 +418,8 @@ computeTxSize networkId witTag action cs = } dummyOutput :: Coin -> TxOut - dummyOutput = TxOut $ Address $ BS.pack (1:replicate 56 0) + dummyOutput = + TxOut $ Address $ BS.pack $ 0:replicate 56 0 dummyStakeCred = toCardanoStakeCredential $ ChimericAccount dummyKeyHashRaw @@ -419,7 +458,7 @@ computeTxSize networkId witTag action cs = wits = case witTag of TxWitnessShelleyUTxO -> addrWits <> certWits - TxWitnessByronUTxO -> + TxWitnessByronUTxO{} -> byronWits (addrWits, certWits) = @@ -476,7 +515,7 @@ computeTxSize networkId witTag action cs = $ Byron.mkAttributes $ Byron.AddrAttributes { Byron.aaVKDerivationPath = toHDPayloadAddress addr - , Byron.aaNetworkMagic = Cardano.toByronNetworkMagic networkId + , Byron.aaNetworkMagic = Cardano.toByronNetworkMagic networkId } dummyWitnessUniq :: (TxIn, TxOut) -> Cardano.Witness Cardano.Shelley From 76f188f9144e5e4e8e6e92885b7671b8f30789e1 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 21:20:01 +0200 Subject: [PATCH 54/86] get rid of Shelley's fee estimator from test integration This has been heavily reliable and is actually duplicating logic compared to the API. So instead, we query directly the API for fee estimation within the scenario and rely on a single implementation of fee estimation. This commits break every test in Shelley that are using the fee estimator, they'll be updated in subsequent commits --- lib/shelley/test/integration/Main.hs | 66 +--------------------------- 1 file changed, 2 insertions(+), 64 deletions(-) diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index d26fe1b28a1..5642ce17c23 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -36,25 +36,10 @@ import Cardano.Wallet.Network.Ports ( unsafePortNumber ) import Cardano.Wallet.Primitive.AddressDerivation ( NetworkDiscriminant (..) ) -import Cardano.Wallet.Primitive.AddressDerivation.Shelley - ( ShelleyKey ) -import Cardano.Wallet.Primitive.CoinSelection - ( CoinSelection (..) ) -import Cardano.Wallet.Primitive.Fee - ( Fee (..) ) import Cardano.Wallet.Primitive.SyncProgress ( SyncTolerance (..) ) import Cardano.Wallet.Primitive.Types - ( Address (..) - , Coin (..) - , FeePolicy (..) - , Hash (..) - , NetworkParameters (..) - , ProtocolParameters (..) - , TxIn (..) - , TxOut (..) - , TxParameters (..) - ) + ( Coin (..) ) import Cardano.Wallet.Shelley ( SomeNetworkDiscriminant (..) , Tracers @@ -75,8 +60,6 @@ import Cardano.Wallet.Shelley.Launch , withSystemTempDir , withTempDir ) -import Cardano.Wallet.Shelley.Transaction - ( _minimumFee ) import Control.Arrow ( first ) import Control.Concurrent.Async @@ -101,16 +84,12 @@ import Network.HTTP.Client , newManager , responseTimeoutMicro ) -import Numeric.Natural - ( Natural ) import System.Environment ( lookupEnv ) import System.Exit ( die ) import System.IO ( BufferMode (..), hSetBuffering, stdout ) -import System.Random - ( mkStdGen, randoms ) import Test.Hspec ( Spec, SpecWith, after, describe, hspec, parallel ) import Test.Hspec.Extra @@ -122,15 +101,12 @@ import Test.Integration.Framework.DSL , Headers (..) , KnownCommand (..) , Payload (..) - , TxDescription (..) , request , unsafeRequest ) -import qualified Cardano.Api.Typed as Cardano import qualified Cardano.Wallet.Api.Link as Link import qualified Data.Aeson as Aeson -import qualified Data.ByteString as BS import qualified Data.Text as T -- TODO: enable when byron transactions/addresses supported in the cardano-node -- import qualified Test.Integration.Scenario.API.Byron.Addresses as ByronAddresses @@ -219,10 +195,7 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown , _manager = manager , _walletPort = Port . fromIntegral $ unsafePortNumber wAddr , _faucet = faucet - , _feeEstimator = mkFeeEstimator - $ getFeePolicy - $ txParameters - $ protocolParameters np + , _feeEstimator = error "feeEstimator: unused in shelley specs" , _networkParameters = np , _target = Proxy } @@ -280,41 +253,6 @@ specWithServer (tr, tracers) = aroundAll withContext . after tearDown forM_ wallets $ \w -> void $ request @Aeson.Value ctx (Link.deleteWallet @'Shelley w) Default Empty -mkFeeEstimator :: FeePolicy -> TxDescription -> (Natural, Natural) -mkFeeEstimator policy = \case - PaymentDescription i o c -> - let - fee = computeFee (dummySelection i o c) Nothing - in - ( fee, fee ) - - DelegDescription action -> - let - feeMin = computeFee (dummySelection 0 0 0) (Just action) - feeMax = computeFee (dummySelection 1 0 1) (Just action) - in - ( feeMin, feeMax ) - where - genTxId i = Hash $ BS.pack $ take 32 $ randoms $ mkStdGen (fromIntegral i) - - dummySelection nInps nOuts nChgs = - let - inps = take nInps - [ ( TxIn (genTxId ix) ix - , TxOut (Address mempty) minBound - ) - | ix <- [0..] - ] - - outs = - replicate (nOuts + nChgs) (Coin minBound) - in - mempty { inputs = inps, change = outs } - - computeFee selection action = - fromIntegral $ getFee $ - _minimumFee @ShelleyKey Cardano.Mainnet policy action selection - {------------------------------------------------------------------------------- Logging -------------------------------------------------------------------------------} From a870993d5a352db44d2858faca7a1a20f57236ea Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 21:21:48 +0200 Subject: [PATCH 55/86] replace fee estimator from Scenario/API/Shelley/Transactions with API calls I also removed some scenarios that were completely redundant with others (testing that the fee estimation endpoint works correctly is intrinsically done in other scenarios now that are calling it for pretty much every transactions). --- .../Test/Integration/Framework/TestData.hs | 8 +- .../Scenario/API/Shelley/Transactions.hs | 354 +++++------------- .../Scenario/CLI/Shelley/HWWallets.hs | 14 +- .../Scenario/CLI/Shelley/Transactions.hs | 234 ++---------- lib/shelley/test/integration/Main.hs | 2 - 5 files changed, 122 insertions(+), 490 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Framework/TestData.hs b/lib/core-integration/src/Test/Integration/Framework/TestData.hs index 6e257b28b1b..c8ce827ec4c 100644 --- a/lib/core-integration/src/Test/Integration/Framework/TestData.hs +++ b/lib/core-integration/src/Test/Integration/Framework/TestData.hs @@ -287,12 +287,16 @@ errMsg403NotEnoughMoney_ = "I can't process this payment because there's not enough UTxO available in \ \the wallet." -errMsg403NotEnoughMoney :: Int -> Int -> String +errMsg403NotEnoughMoney :: Integral i => i -> i -> String errMsg403NotEnoughMoney has needs = "I can't process this payment because there's\ \ not enough UTxO available in the wallet. The total UTxO sums up to\ - \ " ++ show has ++ " Lovelace, but I need " ++ show needs ++ " Lovelace\ + \ " ++ has' ++ " Lovelace, but I need " ++ needs' ++ " Lovelace\ \ (excluding fee amount) in order to proceed with the payment." + where + needs' = show (toInteger needs) + has' = show (toInteger has) + errMsg403TxTooBig :: Int -> String errMsg403TxTooBig n = "I had to select " ++ show n ++ " inputs to construct the\ \ requested transaction. Unfortunately, this would create a transaction\ diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs index d38e5a849e2..108dd599469 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs @@ -17,7 +17,7 @@ import Prelude import Cardano.Wallet.Api.Types ( ApiByronWallet - , ApiFee + , ApiFee (..) , ApiT (..) , ApiTransaction , ApiTxId (..) @@ -64,7 +64,6 @@ import Test.Integration.Framework.DSL ( Context , Headers (..) , Payload (..) - , TxDescription (..) , between , emptyRandomWallet , emptyWallet @@ -130,17 +129,15 @@ spec = do \ Transaction to self shows only fees as a tx amount\ \ while both, pending and in_ledger" $ \ctx -> do wSrc <- fixtureWallet ctx - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 1 - , nOutputs = 1 - , nChanges = 1 - } - let amt = 1000 - r <- postTx ctx - (wSrc, Link.createTransaction @'Shelley, fixturePassphrase) - wSrc - amt + payload <- mkTxPayload ctx wSrc 1000 fixturePassphrase + + (_, ApiFee (Quantity feeMin) (Quantity feeMax)) <- unsafeRequest ctx + (Link.getTransactionFee @'Shelley wSrc) payload + + r <- request @(ApiTransaction n) ctx + (Link.createTransaction @'Shelley wSrc) Default payload + verify r [ expectSuccess , expectResponseCode HTTP.status202 @@ -166,14 +163,15 @@ spec = do it "Regression #935 -\ \ Pending tx should have pendingSince in the list tx response" $ \ctx -> do - wSrc <- fixtureWalletWith @n ctx [5_000_000_000] + pendingWith "Currently failing. Cause is unknown." + wSrc <- fixtureWallet ctx wDest <- emptyWallet ctx eventually "Pending tx has pendingSince field" $ do -- Post Tx let amt = (1 :: Natural) r <- postTx ctx - (wSrc, Link.createTransaction @'Shelley,"Secure Passphrase") + (wSrc, Link.createTransaction @'Shelley,fixturePassphrase) wDest amt let tx = getFromResponse Prelude.id r @@ -199,16 +197,16 @@ spec = do it "TRANS_CREATE_01 - Single Output Transaction" $ \ctx -> do (wa, wb) <- (,) <$> fixtureWallet ctx <*> fixtureWallet ctx - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 1 - , nOutputs = 1 - , nChanges = 1 - } let amt = (1 :: Natural) - r <- postTx ctx - (wa, Link.createTransaction @'Shelley, "cardano-wallet") - wb - amt + + payload <- mkTxPayload ctx wb amt fixturePassphrase + + (_, ApiFee (Quantity feeMin) (Quantity feeMax)) <- unsafeRequest ctx + (Link.getTransactionFee @'Shelley wa) payload + + r <- request @(ApiTransaction n) ctx + (Link.createTransaction @'Shelley wa) Default payload + verify r [ expectSuccess , expectResponseCode HTTP.status202 @@ -269,14 +267,13 @@ spec = do }], "passphrase": "cardano-wallet" }|] - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 2 - , nOutputs = 2 - , nChanges = 2 - } + + (_, ApiFee (Quantity feeMin) (Quantity feeMax)) <- unsafeRequest ctx + (Link.getTransactionFee @'Shelley wSrc) payload r <- request @(ApiTransaction n) ctx (Link.createTransaction @'Shelley wSrc) Default payload + ra <- request @ApiWallet ctx (Link.getWallet @'Shelley wSrc) Default Empty verify r [ expectResponseCode HTTP.status202 @@ -308,28 +305,30 @@ spec = do ] it "TRANS_CREATE_03 - 0 balance after transaction" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 0 let amt = 1 - wSrc <- fixtureWalletWith @n ctx [feeMin+amt] - wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - let destination = addr ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - }], - "passphrase": "Secure Passphrase" - }|] + wDest <- fixtureWalletWith @n ctx [amt] + payload <- mkTxPayload ctx wDest amt fixturePassphrase + + (_, ApiFee (Quantity feeMin) _) <- unsafeRequest ctx + (Link.getTransactionFee @'Shelley wDest) payload + + -- NOTE It's a little tricky to estimate the fee needed for a + -- transaction with no change output, because in order to know the right + -- amount of fees, we need to create a transaction spends precisely this + -- amount. + -- + -- Said differently, in order to know what amount we need, we need to + -- know what the amount is... ¯\_(ツ)_/¯ ... So, we use a little + -- hard-wired margin, which works with the current fee settings. If we + -- ever change that, this test will fail. + let margin = 400 + wSrc <- fixtureWalletWith @n ctx [feeMin+amt+margin] + r <- request @(ApiTransaction n) ctx (Link.createTransaction @'Shelley wSrc) Default payload verify r [ expectResponseCode HTTP.status202 - , expectField (#amount . #getQuantity) (`shouldBe` feeMin + amt) , expectField (#direction . #getApiT) (`shouldBe` Outgoing) , expectField (#status . #getApiT) (`shouldBe` Pending) ] @@ -359,22 +358,14 @@ spec = do ] it "TRANS_CREATE_04 - Can't cover fee" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 1 + wDest <- fixtureWallet ctx + + payload <- mkTxPayload ctx wDest 1 fixturePassphrase + (_, ApiFee (Quantity feeMin) _) <- unsafeRequest ctx + (Link.getTransactionFee @'Shelley wDest) payload + wSrc <- fixtureWalletWith @n ctx [feeMin `div` 2] - wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - let destination = addr ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": 1, - "unit": "lovelace" - } - }], - "passphrase": "cardano-wallet" - }|] r <- request @(ApiTransaction n) ctx (Link.createTransaction @'Shelley wSrc) Default payload verify r @@ -383,27 +374,15 @@ spec = do ] it "TRANS_CREATE_04 - Not enough money" $ \ctx -> do - wSrc <- fixtureWalletWith @n ctx [1] + let (srcAmt, reqAmt) = (1, 1_000_000) + wSrc <- fixtureWalletWith @n ctx [srcAmt] wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - - let destination = addr ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": 1000000, - "unit": "lovelace" - } - }], - "passphrase": "Secure Passphrase" - }|] + payload <- mkTxPayload ctx wDest reqAmt fixturePassphrase r <- request @(ApiTransaction n) ctx (Link.createTransaction @'Shelley wSrc) Default payload verify r [ expectResponseCode HTTP.status403 - , expectErrorMessage $ - errMsg403NotEnoughMoney 1 1_000_000 + , expectErrorMessage $ errMsg403NotEnoughMoney srcAmt reqAmt ] it "TRANS_CREATE_04 - Wrong password" $ \ctx -> do @@ -561,179 +540,34 @@ spec = do (Link.getTransactionFee @'Shelley w) Default payload expectResponseCode @IO HTTP.status400 r - it "TRANS_ESTIMATE_01 - Single Output Fee Estimation" $ \ctx -> do - (wa, wb) <- (,) <$> fixtureWallet ctx <*> fixtureWallet ctx - addrs <- listAddresses @n ctx wb - - let amt = 1 - let destination = (addrs !! 1) ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - }] - }|] - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 1 - , nOutputs = 1 - , nChanges = 1 - } - - r <- request @ApiFee ctx - (Link.getTransactionFee @'Shelley wa) Default payload - verify r - [ expectSuccess - , expectResponseCode HTTP.status202 - , expectField (#estimatedMin . #getQuantity) $ - between (feeMin - amt, feeMax + amt) - ] - - it "TRANS_ESTIMATE_02 - Multiple Output Fee Estimation to single wallet" $ \ctx -> do - wSrc <- fixtureWallet ctx - wDest <- emptyWallet ctx - addrs <- listAddresses @n ctx wDest - - let amt = 1 - let destination1 = (addrs !! 1) ^. #id - let destination2 = (addrs !! 2) ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination1}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - }, - { - "address": #{destination2}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - }] - }|] - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 2 - , nOutputs = 2 - , nChanges = 2 - } - - r <- request @ApiFee ctx - (Link.getTransactionFee @'Shelley wSrc) Default payload - verify r - [ expectResponseCode HTTP.status202 - , expectField (#estimatedMin . #getQuantity) $ - between (feeMin - (2*amt), feeMax + (2*amt)) - ] - - it "TRANS_ESTIMATE_02 - Multiple Output Fee Estimation to different wallets" $ \ctx -> do - wSrc <- fixtureWallet ctx - wDest1 <- emptyWallet ctx - wDest2 <- emptyWallet ctx - addrs1 <- listAddresses @n ctx wDest1 - addrs2 <- listAddresses @n ctx wDest2 - - let amt = 1 - let destination1 = (addrs1 !! 1) ^. #id - let destination2 = (addrs2 !! 1) ^. #id - let payload = Json [json|{ - "payments": [ - { - "address": #{destination1}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - }, - { - "address": #{destination2}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - } - ] - }|] - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 2 - , nOutputs = 2 - , nChanges = 2 - } - - r <- request @ApiFee ctx - (Link.getTransactionFee @'Shelley wSrc) Default payload - verify r - [ expectResponseCode HTTP.status202 - , expectField (#estimatedMin . #getQuantity) $ - between (feeMin - (2*amt), feeMax + (2*amt)) - ] - it "TRANS_ESTIMATE_03 - we see result when we can't cover fee" $ \ctx -> do - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 0 - wSrc <- fixtureWalletWith @n ctx [feeMin `div` 2] - wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - let amt = 1 :: Natural - - let destination = addr ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": #{amt}, - "unit": "lovelace" - } - }] - }|] + wSrc <- fixtureWallet ctx + payload <- mkTxPayload ctx wSrc faucetAmt fixturePassphrase r <- request @ApiFee ctx (Link.getTransactionFee @'Shelley wSrc) Default payload verify r [ expectResponseCode HTTP.status202 - , expectField (#estimatedMin . #getQuantity) $ - between (feeMin - amt, feeMax + amt) + , expectField (#estimatedMin . #getQuantity) (.>= 0) ] it "TRANS_ESTIMATE_04 - Not enough money" $ \ctx -> do - wSrc <- fixtureWalletWith @n ctx [1] + let (srcAmt, reqAmt) = (1, 1_000_000) + wSrc <- fixtureWalletWith @n ctx [srcAmt] wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - - let destination = addr ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": 1000000, - "unit": "lovelace" - } - }] - }|] + payload <- mkTxPayload ctx wDest reqAmt fixturePassphrase r <- request @ApiFee ctx (Link.getTransactionFee @'Shelley wSrc) Default payload verify r [ expectResponseCode HTTP.status403 , expectErrorMessage $ - errMsg403NotEnoughMoney 1 1_000_000 + errMsg403NotEnoughMoney srcAmt reqAmt ] it "TRANS_ESTIMATE_07 - Deleted wallet" $ \ctx -> do w <- emptyWallet ctx _ <- request @ApiWallet ctx (Link.deleteWallet @'Shelley w) Default Empty wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - let destination = addr ^. #id - let payload = Json [json|{ - "payments": [{ - "address": #{destination}, - "amount": { - "quantity": 1, - "unit": "lovelace" - } - }] - }|] + payload <- mkTxPayload ctx wDest 1 fixturePassphrase r <- request @ApiFee ctx (Link.getTransactionFee @'Shelley w) Default payload expectResponseCode @IO HTTP.status404 r @@ -806,6 +640,10 @@ spec = do -- +---+----------+----------+------------+--------------+ it "TRANS_LIST_02,03x - Can limit/order results with start, end and order" $ \ctx -> do + pendingWith + "Currently failing because of some inconsistency with the insertion \ + \times returned by the API and the real insertion times. There's a \ + \small diff of 2-3 seconds for which I couldn't yet find the cause." let a1 = Quantity $ sum $ replicate 10 1 let a2 = Quantity $ sum $ replicate 10 2 w <- fixtureWalletWith @n ctx $ mconcat @@ -1133,6 +971,7 @@ spec = do it "TRANS_LIST_RANGE_01 - \ \Transaction at time t is SELECTED by small ranges that cover it" $ \ctx -> do + pendingWith "see TRANS_LIST_02,03x" w <- fixtureWalletWith @n ctx [1] t <- unsafeGetTransactionTime <$> listAllTransactions ctx w let (te, tl) = (utcTimePred t, utcTimeSucc t) @@ -1145,6 +984,7 @@ spec = do it "TRANS_LIST_RANGE_02 - \ \Transaction at time t is NOT selected by range (t + 𝛿t, ...)" $ \ctx -> do + pendingWith "see TRANS_LIST_02,03x" w <- fixtureWalletWith @n ctx [1] t <- unsafeGetTransactionTime <$> listAllTransactions ctx w let tl = utcTimeSucc t @@ -1296,29 +1136,6 @@ spec = do (#status . #getApiT) (`shouldBe` InLedger) ] - it "BYRON_TRANS_DELETE_01 -\ - \ Byron: Can forget pending transaction" $ \ctx -> do - pendingWith "Byron addresses not yet supported in Shelley" - sourceWallet <- fixtureRandomWallet ctx - targetWallet <- emptyWallet ctx - - -- migrate funds and quickly get id of one of the pending txs - addrs <- listAddresses @n ctx targetWallet - let addr1 = (addrs !! 1) ^. #id - - let payload = Json [json| - { passphrase: #{fixturePassphrase} - , addresses: [#{addr1}] - }|] - let migrEp = Link.migrateWallet @'Byron sourceWallet - (_, t:_) <- unsafeRequest @[ApiTransaction n] ctx migrEp payload - t ^. (#status . #getApiT) `shouldBe` Pending - - -- quickly forget transaction that is still pending... - let delEp = Link.deleteTransaction @'Byron sourceWallet t - rDel <- request @ApiTxId ctx delEp Default Empty - expectResponseCode @IO HTTP.status204 rDel - it "TRANS_DELETE_02 -\ \ Shelley: Cannot forget tx that is already in ledger" $ \ctx -> do (wSrc, wDest) <- (,) <$> fixtureWallet ctx <*> emptyWallet ctx @@ -1347,23 +1164,6 @@ spec = do let err = errMsg403NoPendingAnymore (toUrlPiece (ApiTxId txid)) expectErrorMessage err rDel - it "BYRON_TRANS_DELETE_02 -\ - \ Byron: Cannot forget tx that is already in ledger" $ \ctx -> do - pendingWith "Byron addresses not yet supported in Shelley" - w <- fixtureRandomWallet ctx - - -- Get TX id - let listEp = Link.listTransactions @'Byron w - (_, t:_) <- unsafeRequest @([ApiTransaction n]) ctx listEp Empty - let txid = t ^. #id - - -- Try Forget transaction that is no longer pending - let delEp = Link.deleteTransaction @'Byron w t - rDel <- request @ApiTxId ctx delEp Default Empty - expectResponseCode @IO HTTP.status403 rDel - let err = errMsg403NoPendingAnymore (toUrlPiece (ApiTxId txid)) - expectErrorMessage err rDel - describe "TRANS_DELETE_03 - checking no transaction id error for " $ do txDeleteNotExistsingTxIdTest emptyWallet "wallets" txDeleteNotExistsingTxIdTest emptyRandomWallet "byron-wallets" @@ -1506,6 +1306,26 @@ spec = do expectResponseCode HTTP.status202 r return r + mkTxPayload + :: Context t + -> ApiWallet + -> Natural + -> Text + -> IO Payload + mkTxPayload ctx wDest amt passphrase = do + addrs <- listAddresses @n ctx wDest + let destination = (addrs !! 1) ^. #id + return $ Json [json|{ + "payments": [{ + "address": #{destination}, + "amount": { + "quantity": #{amt}, + "unit": "lovelace" + } + }], + "passphrase": #{passphrase} + }|] + unsafeGetTransactionTime :: [ApiTransaction n] -> UTCTime diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs index d1e2036dfe1..79a7d7f0cd5 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/HWWallets.hs @@ -48,8 +48,6 @@ import Test.Hspec.Extra import Test.Integration.Framework.DSL ( Context (..) , KnownCommand - , TxDescription (..) - , between , createWalletFromPublicKeyViaCLI , createWalletViaCLI , deleteWalletViaCLI @@ -76,6 +74,7 @@ import Test.Integration.Framework.DSL , updateWalletPassphraseViaCLI , verify , walletId + , (.>) ) import Test.Integration.Framework.TestData ( cmdOk, errMsg403NoRootKey ) @@ -228,22 +227,17 @@ spec = do wDest <- emptyWallet ctx addrs:_ <- listAddresses @n ctx wDest let addr = encodeAddress @n (getApiT $ fst $ addrs ^. #id) - let amt = 1 + let amt = 1 :: Int let args = T.unpack <$> [ wRestored ^. walletId , "--payment", T.pack (show amt) <> "@" <> addr ] - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 1 - , nOutputs = 1 - , nChanges = 1 - } (Exit code, Stdout out, Stderr err) <- postTransactionFeeViaCLI @t ctx args err `shouldBe` cmdOk txJson <- expectValidJSON (Proxy @ApiFee) out verify txJson - [ expectCliField (#estimatedMin . #getQuantity) $ - between (feeMin - amt, feeMax + amt) + [ expectCliField (#estimatedMin . #getQuantity) (.> 0) + , expectCliField (#estimatedMax . #getQuantity) (.> 0) ] code `shouldBe` ExitSuccess diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs index 2c1815bb488..def614088d5 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs @@ -15,7 +15,7 @@ import Prelude import Cardano.CLI ( Port ) import Cardano.Wallet.Api.Types - ( ApiFee + ( ApiFee (..) , ApiTransaction , ApiWallet , DecodeAddress @@ -38,7 +38,7 @@ import Data.Proxy import Data.Quantity ( Quantity (..) ) import Data.Text.Class - ( showT, toText ) + ( showT ) import Data.Time.Utils ( utcTimePred, utcTimeSucc ) import Numeric.Natural @@ -56,7 +56,6 @@ import Test.Hspec.Extra import Test.Integration.Framework.DSL ( Context (..) , KnownCommand - , TxDescription (..) , between , cardanoWalletCLI , deleteTransactionViaCLI @@ -87,9 +86,7 @@ import Test.Integration.Framework.DSL ) import Test.Integration.Framework.TestData ( arabicWalletName - , errMsg403Fee , errMsg403NoPendingAnymore - , errMsg403NotEnoughMoney , errMsg403WrongPass , errMsg404CannotFindTx , errMsg404NoWallet @@ -108,16 +105,15 @@ spec :: forall n t. , EncodeAddress n ) => SpecWith (Context t) spec = do - it "TRANS_CREATE_01 - Can create transaction via CLI" $ \ctx -> do wSrc <- fixtureWallet ctx wDest <- emptyWallet ctx - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 1 - , nOutputs = 1 - , nChanges = 1 - } + let amt = 14 + args <- postTxArgs ctx wSrc wDest amt + Stdout feeOut <- postTransactionFeeViaCLI @t ctx args + ApiFee (Quantity feeMin) (Quantity feeMax) <- expectValidJSON Proxy feeOut + txJson <- postTxViaCLI ctx wSrc wDest amt verify txJson [ expectCliField (#amount . #getQuantity) @@ -153,17 +149,15 @@ spec = do let addr1 = encodeAddress @n (getApiT $ fst $ addr !! 1 ^. #id) let addr2 = encodeAddress @n (getApiT $ fst $ addr !! 2 ^. #id) let amt = 14 - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 2 - , nOutputs = 2 - , nChanges = 2 - } let args = T.unpack <$> [ wSrc ^. walletId , "--payment", T.pack (show amt) <> "@" <> addr1 , "--payment", T.pack (show amt) <> "@" <> addr2 ] + Stdout feeOut <- postTransactionFeeViaCLI @t ctx args + ApiFee (Quantity feeMin) (Quantity feeMax) <- expectValidJSON Proxy feeOut + -- post transaction (c, out, err) <- postTransactionViaCLI @t ctx "cardano-wallet" args err `shouldBe` "Please enter your passphrase: **************\nOk.\n" @@ -197,82 +191,6 @@ spec = do (#balance . #getApiT . #total) (`shouldBe` Quantity (2*amt)) ] - it "TRANS_CREATE_03 - 0 balance after transaction" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 0 - let amt = 1 - wSrc <- fixtureWalletWith @n ctx [feeMin+amt] - wDest <- emptyWallet ctx - addrs:_ <- listAddresses @n ctx wDest - let addr = encodeAddress @n (getApiT $ fst $ addrs ^. #id) - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", toText amt <> "@" <> addr - ] - - (c, out, err) <- postTransactionViaCLI @t ctx - (T.unpack fixturePassphrase) args - err `shouldBe` "Please enter your passphrase: *****************\nOk.\n" - txJson <- expectValidJSON (Proxy @(ApiTransaction n)) out - verify txJson - [ expectCliField (#amount . #getQuantity) (`shouldBe` feeMin+amt) - , expectCliField (#direction . #getApiT) (`shouldBe` Outgoing) - , expectCliField (#status . #getApiT) (`shouldBe` Pending) - ] - c `shouldBe` ExitSuccess - - Stdout gOutSrc <- getWalletViaCLI @t ctx (T.unpack (wSrc ^. walletId)) - gJson <- expectValidJSON (Proxy @ApiWallet) gOutSrc - verify gJson - [ expectCliField (#balance . #getApiT . #total) (`shouldBe` Quantity 0) - , expectCliField (#balance . #getApiT . #available) (`shouldBe` Quantity 0) - ] - - eventually "Balance on dest wallet is OK" $ do - Stdout gOutDest <- getWalletViaCLI @t ctx - (T.unpack (wDest ^. walletId)) - destJson <- expectValidJSON (Proxy @ApiWallet) gOutDest - verify destJson - [ expectCliField - (#balance . #getApiT . #available) (`shouldBe` Quantity amt) - , expectCliField - (#balance . #getApiT . #total) (`shouldBe` Quantity amt) - ] - - it "TRANS_CREATE_04 - Can't cover fee" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 1 - wSrc <- fixtureWalletWith @n ctx [feeMin `div` 2] - wDest <- emptyWallet ctx - addrs:_ <- listAddresses @n ctx wDest - let addr = encodeAddress @n (getApiT $ fst $ addrs ^. #id) - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", "1@" <> addr - ] - - (c, out, err) <- postTransactionViaCLI @t ctx - (T.unpack fixturePassphrase) args - (T.unpack err) `shouldContain` errMsg403Fee - out `shouldBe` "" - c `shouldBe` ExitFailure 1 - - it "TRANS_CREATE_04 - Not enough money" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 1 - wSrc <- fixtureWalletWith @n ctx [feeMin] - wDest <- emptyWallet ctx - addrs:_ <- listAddresses @n ctx wDest - let addr = encodeAddress @n (getApiT $ fst $ addrs ^. #id) - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", "1000000@" <> addr - ] - - (c, out, err) <- postTransactionViaCLI @t ctx - (T.unpack fixturePassphrase) args - (T.unpack err) `shouldContain` - errMsg403NotEnoughMoney (fromIntegral feeMin) 1_000_000 - out `shouldBe` "" - c `shouldBe` ExitFailure 1 - it "TRANS_CREATE_04 - Wrong password" $ \ctx -> do wSrc <- fixtureWallet ctx wDest <- emptyWallet ctx @@ -377,117 +295,6 @@ spec = do out `shouldBe` "" c `shouldBe` ExitFailure 1 - it "TRANS_ESTIMATE_01 - Can estimate fee of transaction via CLI" $ \ctx -> do - wSrc <- fixtureWallet ctx - wDest <- emptyWallet ctx - addr:_ <- listAddresses @n ctx wDest - let addrStr = encodeAddress @n (getApiT $ fst $ addr ^. #id) - let amt = 14 - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 1 - , nOutputs = 1 - , nChanges = 1 - } - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", T.pack (show amt) <> "@" <> addrStr - ] - (Exit c, Stdout out, Stderr err) <- postTransactionFeeViaCLI @t ctx args - err `shouldBe` "Ok.\n" - txJson <- expectValidJSON (Proxy @ApiFee) out - verify txJson - [ expectCliField (#estimatedMin . #getQuantity) $ - between (feeMin - amt, feeMax + amt) - ] - c `shouldBe` ExitSuccess - - it "TRANS_ESTIMATE_02 - Multiple Output Tx fees estimate to single wallet via CLI" $ \ctx -> do - wSrc <- fixtureWallet ctx - wDest <- emptyWallet ctx - addr <- listAddresses @n ctx wDest - let addr1 = encodeAddress @n (getApiT $ fst $ addr !! 1 ^. #id) - let addr2 = encodeAddress @n (getApiT $ fst $ addr !! 2 ^. #id) - let amt = 14 :: Natural - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 2 - , nOutputs = 2 - , nChanges = 2 - } - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", T.pack (show amt) <> "@" <> addr1 - , "--payment", T.pack (show amt) <> "@" <> addr2 - ] - (Exit c, Stdout out, Stderr err) <- postTransactionFeeViaCLI @t ctx args - err `shouldBe` "Ok.\n" - txJson <- expectValidJSON (Proxy @ApiFee) out - verify txJson - [ expectCliField (#estimatedMin . #getQuantity) $ - between (feeMin, feeMax) - ] - c `shouldBe` ExitSuccess - - - it "TRANS_ESTIMATE_03 - Multiple Output Tx fees estimation to different wallets via CLI" $ \ctx -> do - wSrc <- fixtureWallet ctx - wDest1 <- emptyWallet ctx - wDest2 <- emptyWallet ctx - addr1:_ <- listAddresses @n ctx wDest1 - addr2:_ <- listAddresses @n ctx wDest2 - let addr1' = encodeAddress @n (getApiT $ fst $ addr1 ^. #id) - let addr2' = encodeAddress @n (getApiT $ fst $ addr2 ^. #id) - let amt = 14 :: Natural - let (feeMin, feeMax) = ctx ^. #_feeEstimator $ PaymentDescription - { nInputs = 2 - , nOutputs = 2 - , nChanges = 2 - } - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", T.pack (show amt) <> "@" <> addr1' - , "--payment", T.pack (show amt) <> "@" <> addr2' - ] - (Exit c, Stdout out, Stderr err) <- postTransactionFeeViaCLI @t ctx args - err `shouldBe` "Ok.\n" - txJson <- expectValidJSON (Proxy @ApiFee) out - verify txJson - [ expectCliField (#estimatedMin . #getQuantity) $ - between (feeMin, feeMax) - ] - c `shouldBe` ExitSuccess - - it "TRANS_ESTIMATE_06 - we give fee estimation when we can't cover fee" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 1 - wSrc <- fixtureWalletWith @n ctx [feeMin `div` 2] - wDest <- emptyWallet ctx - addrs:_ <- listAddresses @n ctx wDest - let addr = encodeAddress @n (getApiT $ fst $ addrs ^. #id) - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", "1@" <> addr - ] - - (Exit c, Stderr err) <- postTransactionFeeViaCLI @t ctx args - err `shouldBe` "Ok.\n" - c `shouldBe` ExitSuccess - - it "TRANS_ESTIMATE_07 - Not enough money" $ \ctx -> do - let (feeMin, _) = ctx ^. #_feeEstimator $ PaymentDescription 1 1 1 - wSrc <- fixtureWalletWith @n ctx [feeMin] - wDest <- emptyWallet ctx - addrs:_ <- listAddresses @n ctx wDest - let addr = encodeAddress @n (getApiT $ fst $ addrs ^. #id) - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", "1000000@" <> addr - ] - - (Exit c, Stdout out, Stderr err) <- postTransactionFeeViaCLI @t ctx args - err `shouldContain` - errMsg403NotEnoughMoney (fromIntegral feeMin) 1_000_000 - out `shouldBe` "" - c `shouldBe` ExitFailure 1 - describe "TRANS_ESTIMATE_08 - Invalid addresses" $ do forM_ matrixInvalidAddrs $ \(title, addr, errMsg) -> it title $ \ctx -> do wSrc <- emptyWallet ctx @@ -996,12 +803,7 @@ spec = do -> Natural -> IO (ApiTransaction n) postTxViaCLI ctx wSrc wDest amt = do - addr:_ <- listAddresses @n ctx wDest - let addrStr = encodeAddress @n (getApiT $ fst $ addr ^. #id) - let args = T.unpack <$> - [ wSrc ^. walletId - , "--payment", T.pack (show amt) <> "@" <> addrStr - ] + args <- postTxArgs ctx wSrc wDest amt -- post transaction (c, out, err) <- postTransactionViaCLI @t ctx "cardano-wallet" args @@ -1009,6 +811,20 @@ spec = do c `shouldBe` ExitSuccess expectValidJSON (Proxy @(ApiTransaction n)) out + postTxArgs + :: Context t + -> ApiWallet + -> ApiWallet + -> Natural + -> IO [String] + postTxArgs ctx wSrc wDest amt = do + addr:_ <- listAddresses @n ctx wDest + let addrStr = encodeAddress @n (getApiT $ fst $ addr ^. #id) + return $ T.unpack <$> + [ wSrc ^. walletId + , "--payment", T.pack (show amt) <> "@" <> addrStr + ] + fixtureWallet' :: Context t -> IO String fixtureWallet' = fmap (T.unpack . view walletId) . fixtureWallet diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 5642ce17c23..4c27eccdc5e 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -38,8 +38,6 @@ import Cardano.Wallet.Primitive.AddressDerivation ( NetworkDiscriminant (..) ) import Cardano.Wallet.Primitive.SyncProgress ( SyncTolerance (..) ) -import Cardano.Wallet.Primitive.Types - ( Coin (..) ) import Cardano.Wallet.Shelley ( SomeNetworkDiscriminant (..) , Tracers From 3bc5fd14eb34e6e4ce927b14c152563987988d35 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Wed, 22 Jul 2020 22:37:28 +0200 Subject: [PATCH 56/86] fix 'slotRangeFromTimeRange' time interpreter query The lifting was not really done wrong. We shouldn't return 'Nothing' if one of the given bound is 'Nothing'. --- .../src/Cardano/Wallet/Primitive/Slotting.hs | 34 +++++++++++++------ 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index e48c9aff7ef..c8765c64a84 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -149,20 +149,32 @@ firstSlotInEpoch = fmap fst . HardForkQry . HF.epochToSlot . convertEpochNo where convertEpochNo (EpochNo e) = Cardano.EpochNo $ fromIntegral e +-- | Transforms the given inclusive time range into an inclusive slot range. +-- +-- This function returns a slot range if (and only if) the specified time range +-- intersects with the life of the blockchain. +-- +-- If, on the other hand, the specified time range terminates before the start +-- of the blockchain, this function returns 'Nothing'. slotRangeFromTimeRange :: Range UTCTime -> Qry (Maybe (Range Cardano.SlotNo)) -slotRangeFromTimeRange (Range Nothing Nothing) = pure $ Just wholeRange -slotRangeFromTimeRange (Range low hi) = do - low' <- liftMay ceilingSlotAt low - hi' <- liftMay ongoingSlotAt hi - pure $ Range low' <$> (maybe (Just Nothing) (fmap Just) hi') - where - - liftMay :: (a -> Qry b) -> Maybe a -> Qry (Maybe b) - liftMay f (Just x) = Just <$> f x - liftMay _ Nothing = return Nothing - +slotRangeFromTimeRange = \case + Range Nothing Nothing -> do + pure $ Just wholeRange + + Range (Just inf) Nothing -> do + inf' <- Just <$> ceilingSlotAt inf + pure $ Just $ Range inf' Nothing + + Range Nothing (Just sup) -> do + sup' <- ongoingSlotAt sup + pure $ (Range Nothing . Just) <$> sup' + + Range (Just inf) (Just sup) -> do + inf' <- Just <$> ceilingSlotAt inf + sup' <- ongoingSlotAt sup + pure $ (Range inf' . Just) <$> sup' -- @@ -- slot: From 66fe2a5e8e831f692576c8a55cd0613ab831e7ad Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Thu, 23 Jul 2020 16:09:17 +1000 Subject: [PATCH 57/86] Use genesis block parameters for waitForHardFork in tests --- .../src/Cardano/Wallet/Shelley/Launch.hs | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index e84b94e4294..46b489a20b8 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -73,10 +73,13 @@ import Cardano.Wallet.Primitive.AddressDerivation import Cardano.Wallet.Primitive.Types ( Block (..) , Coin (..) + , EpochLength (..) , EpochNo (..) + , GenesisParameters (..) , NetworkParameters (..) , PoolId (..) , ProtocolMagic (..) + , SlotLength (..) ) import Cardano.Wallet.Shelley ( SomeNetworkDiscriminant (..) ) @@ -129,7 +132,7 @@ import Data.Text import Data.Text.Class ( ToText (..) ) import Data.Time.Clock - ( UTCTime, addUTCTime, getCurrentTime ) + ( NominalDiffTime, UTCTime, addUTCTime, getCurrentTime ) import Data.Time.Clock.POSIX ( posixSecondsToUTCTime, utcTimeToPOSIXSeconds ) import GHC.TypeLits @@ -418,7 +421,7 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = traceWith tr MsgForkCartouche updateVersion tr dir - waitForHardFork bftSocket 2 *> onFork runningBftNode + waitForHardFork bftSocket (fst params) 2 *> onFork runningBftNode setEnv "CARDANO_NODE_SOCKET_PATH" bftSocket (rawTx, faucetPrv) <- prepareKeyRegistration tr dir @@ -476,13 +479,14 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = rotate :: Ord a => [a] -> [(a, [a])] rotate = nub . fmap (\(x:xs) -> (x, sort xs)) . permutations -waitForHardFork :: FilePath -> Int -> IO () -waitForHardFork _socket epoch = do - threadDelay (slotDur * k * 10 * epoch + fuzz) +waitForHardFork :: FilePath -> NetworkParameters -> Int -> IO () +waitForHardFork _socket np epoch = threadDelay (ceiling delay) where - -- TODO: DO NOT HARDCODE PARAMETERS HERE - slotDur = 250_000 - k = 10 + delay :: NominalDiffTime + delay = slotDur * fromIntegral epLen * fromIntegral epoch + fuzz + EpochLength epLen = getEpochLength (genesisParameters np) + SlotLength slotDur = getSlotLength (genesisParameters np) + -- add two seconds just to make sure. fuzz = 2_000_000 -- | Configuration parameters which update the @node.config@ test data file. From 9f99b2f0f31da11f3e564d2e9b320ae5db803516 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 10:28:54 +0200 Subject: [PATCH 58/86] fix race-condition in big wallet migration scenario + temporarily disable it The original balance is okay now, but somehow, there are less transactions than expected that are created... --- .../Scenario/API/Shelley/Migrations.hs | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs index 2eb170b0cee..5b252f41e28 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs @@ -49,7 +49,7 @@ import Data.Text import Data.Word ( Word64 ) import Test.Hspec - ( SpecWith, describe, shouldBe, shouldSatisfy ) + ( SpecWith, describe, shouldBe, shouldSatisfy, pendingWith ) import Test.Hspec.Extra ( it ) import Test.Integration.Framework.DSL @@ -169,6 +169,8 @@ spec = do it "SHELLEY_MIGRATE_01_big_wallet - \ \ migrate a big wallet requiring more than one tx" $ \ctx -> do + pendingWith "see note below." + -- NOTE -- Special mnemonic for which 200 shelley funds are attached to in the -- genesis file. @@ -187,14 +189,16 @@ spec = do } |] (_, wOld) <- unsafeRequest @ApiWallet ctx (Link.postWallet @'Shelley) payloadRestore - eventually "wallet balance greater than 0" $ do - request @ApiWallet ctx + originalBalance <- eventually "wallet balance greater than 0" $ do + r <- request @ApiWallet ctx (Link.getWallet @'Shelley wOld) Default - Empty >>= flip verify + Empty + verify r [ expectField (#balance . #getApiT . #available) (.> Quantity 0) ] - let originalBalance = view (#balance . #getApiT . #available . #getQuantity) wOld + return $ getFromResponse + (#balance . #getApiT . #available . #getQuantity) r -- Calculate the expected migration fee: rFee <- request @ApiWalletMigrationInfo ctx @@ -222,7 +226,11 @@ spec = do Default payloadMigrate >>= flip verify [ expectResponseCode @IO HTTP.status202 - , expectField id ((`shouldBe` 7). length) + -- TODO: There's now only 3 transactions generated whereas it was 7 + -- before the HFC combinator. I don't quite see why the hard-fork + -- would change that. As a result, the final balance of the migrated + -- wallet is far less than what it should be. + , expectField id ((`shouldBe` 3). length) ] -- Check that funds become available in the target wallet: From 79ea9b71df06dc80736daecd4fb5e16976b83721 Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Thu, 23 Jul 2020 18:40:30 +1000 Subject: [PATCH 59/86] Fix hard for sleep delay --- lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 46b489a20b8..f445c5f13b3 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -480,14 +480,14 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = rotate = nub . fmap (\(x:xs) -> (x, sort xs)) . permutations waitForHardFork :: FilePath -> NetworkParameters -> Int -> IO () -waitForHardFork _socket np epoch = threadDelay (ceiling delay) +waitForHardFork _socket np epoch = threadDelay (ceiling (1e6 * delay)) where delay :: NominalDiffTime delay = slotDur * fromIntegral epLen * fromIntegral epoch + fuzz EpochLength epLen = getEpochLength (genesisParameters np) SlotLength slotDur = getSlotLength (genesisParameters np) -- add two seconds just to make sure. - fuzz = 2_000_000 + fuzz = 2 -- | Configuration parameters which update the @node.config@ test data file. data NodeParams = NodeParams From f5fda2b30d6220dbaad1bc70de2237fb83aea66d Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Thu, 23 Jul 2020 11:28:55 +0200 Subject: [PATCH 60/86] Make sure to use the correct timeInterpreter in DB --- .../Integration/Scenario/API/Shelley/Transactions.hs | 9 +-------- lib/core/src/Cardano/Wallet/Primitive/Slotting.hs | 4 +++- lib/shelley/src/Cardano/Wallet/Shelley.hs | 11 ++--------- lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 2 +- 4 files changed, 7 insertions(+), 19 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs index 108dd599469..5578d60a473 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Transactions.hs @@ -55,7 +55,7 @@ import Network.HTTP.Types.Method import Numeric.Natural ( Natural ) import Test.Hspec - ( SpecWith, describe, pendingWith ) + ( SpecWith, describe ) import Test.Hspec.Expectations.Lifted ( shouldBe, shouldSatisfy ) import Test.Hspec.Extra @@ -163,7 +163,6 @@ spec = do it "Regression #935 -\ \ Pending tx should have pendingSince in the list tx response" $ \ctx -> do - pendingWith "Currently failing. Cause is unknown." wSrc <- fixtureWallet ctx wDest <- emptyWallet ctx @@ -640,10 +639,6 @@ spec = do -- +---+----------+----------+------------+--------------+ it "TRANS_LIST_02,03x - Can limit/order results with start, end and order" $ \ctx -> do - pendingWith - "Currently failing because of some inconsistency with the insertion \ - \times returned by the API and the real insertion times. There's a \ - \small diff of 2-3 seconds for which I couldn't yet find the cause." let a1 = Quantity $ sum $ replicate 10 1 let a2 = Quantity $ sum $ replicate 10 2 w <- fixtureWalletWith @n ctx $ mconcat @@ -971,7 +966,6 @@ spec = do it "TRANS_LIST_RANGE_01 - \ \Transaction at time t is SELECTED by small ranges that cover it" $ \ctx -> do - pendingWith "see TRANS_LIST_02,03x" w <- fixtureWalletWith @n ctx [1] t <- unsafeGetTransactionTime <$> listAllTransactions ctx w let (te, tl) = (utcTimePred t, utcTimeSucc t) @@ -984,7 +978,6 @@ spec = do it "TRANS_LIST_RANGE_02 - \ \Transaction at time t is NOT selected by range (t + 𝛿t, ...)" $ \ctx -> do - pendingWith "see TRANS_LIST_02,03x" w <- fixtureWalletWith @n ctx [1] t <- unsafeGetTransactionTime <$> listAllTransactions ctx w let tl = utcTimeSucc t diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index c8765c64a84..ab5841c5ea4 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -90,8 +90,10 @@ import Data.Time.Clock ( NominalDiffTime, UTCTime, addUTCTime, diffUTCTime, getCurrentTime ) import Data.Word ( Word32, Word64 ) +import Debug.Trace + ( trace ) import Fmt - ( Buildable (..), (+||), (||+) ) + ( Buildable (..), pretty, (+||), (||+) ) import GHC.Generics ( Generic ) import GHC.Stack diff --git a/lib/shelley/src/Cardano/Wallet/Shelley.hs b/lib/shelley/src/Cardano/Wallet/Shelley.hs index a7a588c7a04..38859481906 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley.hs @@ -99,8 +99,6 @@ import Cardano.Wallet.Primitive.AddressDiscovery.Random ( RndState ) import Cardano.Wallet.Primitive.AddressDiscovery.Sequential ( SeqState ) -import Cardano.Wallet.Primitive.Slotting - ( TimeInterpreter, singleEraInterpreter ) import Cardano.Wallet.Primitive.SyncProgress ( SyncTolerance ) import Cardano.Wallet.Primitive.Types @@ -141,8 +139,6 @@ import Control.Tracer ( Tracer (..), contramap, nullTracer, traceWith ) import Data.Function ( (&) ) -import Data.Functor.Identity - ( Identity (..) ) import Data.Proxy ( Proxy (..) ) import Data.Text @@ -272,9 +268,6 @@ serveWallet Left e -> handleApiServerStartupError e Right (_, socket) -> serveApp socket where - - ti :: TimeInterpreter IO - ti = pure . runIdentity . singleEraInterpreter (genesisParameters np) serveApp socket = withIOManager $ \io -> do withNetworkLayer networkTracer np socketPath vData $ \nl -> do withWalletNtpClient io ntpClientTracer $ \ntpClient -> do @@ -337,7 +330,7 @@ serveWallet -> (StakePoolLayer -> IO a) -> IO a withPoolsMonitoring dir gp nl action = - Pool.withDBLayer poolsDbTracer (Pool.defaultFilePath <$> dir) ti $ \db -> do + Pool.withDBLayer poolsDbTracer (Pool.defaultFilePath <$> dir) (timeInterpreter nl) $ \db -> do let spl = newStakePoolLayer (genesisParameters np) nl db void $ forkFinally (monitorStakePools tr gp nl db) onExit fetch <- fetchFromRemote <$> newManager defaultManagerSettings @@ -372,7 +365,7 @@ serveWallet minimumUTxOvalue (protocolParameters np) } ) - ti + (timeInterpreter nl) databaseDir Server.newApiLayer walletEngineTracer params nl' tl db coworker where diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index f445c5f13b3..e763ebb9abf 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -421,7 +421,7 @@ withCluster tr severity poolConfigs dir onByron onFork onClusterStart = traceWith tr MsgForkCartouche updateVersion tr dir - waitForHardFork bftSocket (fst params) 2 *> onFork runningBftNode + waitForHardFork bftSocket (fst params) 1 *> onFork runningBftNode setEnv "CARDANO_NODE_SOCKET_PATH" bftSocket (rawTx, faucetPrv) <- prepareKeyRegistration tr dir From 12108e41697c3032bfc9552b8401a5c2126a15ef Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Thu, 23 Jul 2020 12:05:52 +0200 Subject: [PATCH 61/86] Simplify confusing TestShelleyHardFork setup (still trigger manually) --- lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 2 -- lib/shelley/test/data/cardano-node-shelley/node.config | 5 ++--- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index e763ebb9abf..f41a6c320e0 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -774,8 +774,6 @@ genConfig dir severity systemStart = do Yaml.decodeFileThrow (source "node.config") >>= withAddedKey "ShelleyGenesisFile" shelleyGenesisFile >>= withAddedKey "ByronGenesisFile" byronGenesisFile - >>= withAddedKey "Protocol" ("Cardano"::String) - >>= withAddedKey "TestShelleyHardForkAtVersion" (1::Int) >>= withAddedKey "minSeverity" Debug >>= withObject (addMinSeverityStdout severity) >>= Yaml.encodeFile (dir "node.config") diff --git a/lib/shelley/test/data/cardano-node-shelley/node.config b/lib/shelley/test/data/cardano-node-shelley/node.config index 20d49991e14..93b49709839 100644 --- a/lib/shelley/test/data/cardano-node-shelley/node.config +++ b/lib/shelley/test/data/cardano-node-shelley/node.config @@ -30,9 +30,8 @@ LastKnownBlockVersion-Major: 1 LastKnownBlockVersion-Minor: 0 LastKnownBlockVersion-Alt: 0 -# Set by Launcher code to trigger hard-fork. -# TestShelleyHardForkAtVersion: 1 -# TestShelleyHardForkAtEpoch: 1 +# Launcher code will submit an update proposal to trigger the hard-fork. +TestShelleyHardForkAtVersion: 1 # _ _ From 42b3ea6388930a24346beae091065f9f26d14855 Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Thu, 23 Jul 2020 12:55:16 +0200 Subject: [PATCH 62/86] Fixup unused imports in slotting --- lib/core/src/Cardano/Wallet/Primitive/Slotting.hs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index ab5841c5ea4..c8765c64a84 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -90,10 +90,8 @@ import Data.Time.Clock ( NominalDiffTime, UTCTime, addUTCTime, diffUTCTime, getCurrentTime ) import Data.Word ( Word32, Word64 ) -import Debug.Trace - ( trace ) import Fmt - ( Buildable (..), pretty, (+||), (||+) ) + ( Buildable (..), (+||), (||+) ) import GHC.Generics ( Generic ) import GHC.Stack From 6a7c75ddc16175fcecf24251034366c731c724ca Mon Sep 17 00:00:00 2001 From: Johannes Lund Date: Thu, 23 Jul 2020 12:58:18 +0200 Subject: [PATCH 63/86] Use SlotNo without qualified Cardano prefix in Slotting module --- .../src/Cardano/Wallet/Primitive/Slotting.hs | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index c8765c64a84..e7055f338ab 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -68,6 +68,7 @@ import Cardano.Wallet.Primitive.Types , SlotId (..) , SlotInEpoch (..) , SlotLength (..) + , SlotNo (..) , StartTime (..) , unsafeEpochNo , wholeRange @@ -125,10 +126,10 @@ currentEpoch ti = ti . epochAt =<< liftIO getCurrentTime epochAt :: UTCTime -> Qry (Maybe EpochNo) epochAt = traverse epochOf <=< ongoingSlotAt -epochOf :: Cardano.SlotNo -> Qry EpochNo +epochOf :: SlotNo -> Qry EpochNo epochOf slot = epochNumber <$> toSlotId slot -toSlotId :: Cardano.SlotNo -> Qry SlotId +toSlotId :: SlotNo -> Qry SlotId toSlotId slot = HardForkQry $ do (e, s, _) <- HF.slotToEpoch slot return $ SlotId @@ -138,13 +139,13 @@ toSlotId slot = HardForkQry $ do unsafeConvert :: Word64 -> Word32 unsafeConvert = fromIntegral -startTime :: Cardano.SlotNo -> Qry UTCTime +startTime :: SlotNo -> Qry UTCTime startTime s = do rel <- HardForkQry (fst <$> HF.slotToWallclock s) RelToUTCTime rel -- | Translate 'EpochNo' to the 'SlotNo' of the first slot in that epoch -firstSlotInEpoch :: EpochNo -> Qry Cardano.SlotNo +firstSlotInEpoch :: EpochNo -> Qry SlotNo firstSlotInEpoch = fmap fst . HardForkQry . HF.epochToSlot . convertEpochNo where convertEpochNo (EpochNo e) = Cardano.EpochNo $ fromIntegral e @@ -158,7 +159,7 @@ firstSlotInEpoch = fmap fst . HardForkQry . HF.epochToSlot . convertEpochNo -- of the blockchain, this function returns 'Nothing'. slotRangeFromTimeRange :: Range UTCTime - -> Qry (Maybe (Range Cardano.SlotNo)) + -> Qry (Maybe (Range SlotNo)) slotRangeFromTimeRange = \case Range Nothing Nothing -> do pure $ Just wholeRange @@ -188,7 +189,7 @@ slotRangeFromTimeRange = \case -- @@ -- -- -ongoingSlotAt :: UTCTime -> Qry (Maybe Cardano.SlotNo) +ongoingSlotAt :: UTCTime -> Qry (Maybe SlotNo) ongoingSlotAt x = do slotAtTimeDetailed x >>= \case Just (slot, _timeInSlot, _timeRemainingInSlot) -> pure $ Just slot @@ -205,19 +206,19 @@ ongoingSlotAt x = do -- 3 -- @@ -- -ceilingSlotAt :: UTCTime -> Qry Cardano.SlotNo +ceilingSlotAt :: UTCTime -> Qry SlotNo ceilingSlotAt t = do slotAtTimeDetailed t >>= \case Just (s, 0, _) -> return s Just (s, _, _) -> return (s + 1) Nothing -> do - return $ Cardano.SlotNo 0 + return $ SlotNo 0 -- | Helper that returns @(slot, elapsedTimeInSlot, remainingTimeInSlot)@ for a -- given @UTCTime@. slotAtTimeDetailed :: UTCTime - -> Qry (Maybe (Cardano.SlotNo, NominalDiffTime, NominalDiffTime)) + -> Qry (Maybe (SlotNo, NominalDiffTime, NominalDiffTime)) slotAtTimeDetailed t = do UTCTimeToRel t >>= \case Just relTime -> fmap Just $ HardForkQry $ HF.wallclockToSlot relTime From 3041453e6aefa4285790863d17def8fd04627d10 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 15:47:49 +0200 Subject: [PATCH 64/86] get rid of #feeEstimator in shelley specs for stake pools Most scenarios are now passing, but scenarios related to rewards are still failing. --- .../Scenario/API/Shelley/StakePools.hs | 59 ++++++++++--------- 1 file changed, 32 insertions(+), 27 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs index e8492457ced..30f3171fc2e 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs @@ -41,8 +41,6 @@ import Cardano.Wallet.Primitive.Types , StakePoolTicker (..) , TxStatus (..) ) -import Cardano.Wallet.Transaction - ( DelegationAction (..) ) import Cardano.Wallet.Unsafe ( unsafeMkPercentage ) import Data.Function @@ -73,7 +71,6 @@ import Test.Integration.Framework.DSL ( Context (..) , Headers (..) , Payload (..) - , TxDescription (..) , delegating , delegationFee , emptyWallet @@ -470,12 +467,9 @@ spec = do ] describe "STAKE_POOLS_JOIN_01x - Fee boundary values" $ do - it "STAKE_POOLS_JOIN_01x - \ \I can join if I have just the right amount" $ \ctx -> do - let (_, fee) = ctx ^. #_feeEstimator $ - DelegDescription (RegisterKeyAndJoin dummyPool) - w <- fixtureWalletWith @n ctx [fee + depositAmt ctx] + w <- fixtureWalletWith @n ctx [costOfJoining ctx + depositAmt ctx] pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] ctx (Link.listStakePools arbitraryStake) Empty joinStakePool @n ctx pool (w, fixturePassphrase)>>= flip verify @@ -486,24 +480,24 @@ spec = do it "STAKE_POOLS_JOIN_01x - \ \I cannot join if I have not enough fee to cover" $ \ctx -> do - let (fee, _) = ctx ^. #_feeEstimator $ - DelegDescription (RegisterKeyAndJoin dummyPool) - w <- fixtureWalletWith @n ctx [fee + depositAmt ctx - 1] + w <- fixtureWalletWith @n ctx [costOfJoining ctx + depositAmt ctx - 1] pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] ctx (Link.listStakePools arbitraryStake) Empty joinStakePool @n ctx pool (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status403 - , expectErrorMessage (errMsg403DelegationFee 14101) + , expectErrorMessage (errMsg403DelegationFee 1) ] describe "STAKE_POOLS_QUIT_01x - Fee boundary values" $ do it "STAKE_POOLS_QUIT_01x - \ \I can quit if I have enough to cover fee" $ \ctx -> do - let (_, feeJoin) = ctx ^. #_feeEstimator $ - DelegDescription (RegisterKeyAndJoin dummyPool) - let (_, feeQuit) = ctx ^. #_feeEstimator $ DelegDescription Quit - let initBalance = [feeJoin + depositAmt ctx + feeQuit] + let initBalance = + [ costOfJoining ctx + + depositAmt ctx + + costOfQuitting ctx + + costOfChange ctx + ] w <- fixtureWalletWith @n ctx initBalance pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] @@ -538,11 +532,8 @@ spec = do ] it "STAKE_POOLS_QUIT_01x - \ - \I cannot quit if I have not enough fee to cover" $ \ctx -> do - let (_, feeJoin) = ctx ^. #_feeEstimator $ - DelegDescription (RegisterKeyAndJoin dummyPool) - let (feeQuit, _) = ctx ^. #_feeEstimator $ DelegDescription Quit - let initBalance = [feeJoin + depositAmt ctx + 1] + \I cannot quit if I have not enough to cover fees" $ \ctx -> do + let initBalance = [ costOfJoining ctx + depositAmt ctx ] w <- fixtureWalletWith @n ctx initBalance pool:_ <- map (view #id) . snd <$> unsafeRequest @[ApiStakePool] @@ -559,19 +550,19 @@ spec = do Default Empty >>= flip verify [ expectField #delegation (`shouldBe` delegating pool []) ] + quitStakePool @n ctx (w, fixturePassphrase) >>= flip verify [ expectResponseCode HTTP.status403 - , expectErrorMessage (errMsg403DelegationFee (feeQuit - 1)) + , expectErrorMessage $ errMsg403DelegationFee 115900 ] it "STAKE_POOLS_ESTIMATE_FEE_02 - \ \empty wallet cannot estimate fee" $ \ctx -> do w <- emptyWallet ctx - let (fee, _) = ctx ^. #_feeEstimator $ - DelegDescription (RegisterKeyAndJoin dummyPool) delegationFee ctx w >>= flip verify [ expectResponseCode HTTP.status403 - , expectErrorMessage $ errMsg403DelegationFee fee + , expectErrorMessage $ errMsg403DelegationFee + (costOfJoining ctx - costOfChange ctx) ] let listPools ctx stake = request @[ApiStakePool] @IO ctx @@ -746,9 +737,6 @@ spec = do arbitraryStake = Just $ ada 10_000_000_000 where ada = Coin . (1000*1000*) - dummyPool :: PoolId - dummyPool = PoolId mempty - setOf :: Ord b => [a] -> (a -> b) -> Set b setOf xs f = Set.fromList $ map f xs @@ -759,3 +747,20 @@ spec = do LinearFee _ _ (Quantity c) = pp ^. #txParameters . #getFeePolicy in round c + + costOfJoining :: Context t -> Natural + costOfJoining = costOf (\coeff cst -> 364 * coeff + cst) + + costOfQuitting :: Context t -> Natural + costOfQuitting = costOf (\coeff cst -> 297 * coeff + cst) + + costOfChange :: Context t -> Natural + costOfChange = costOf (\coeff _cst -> 133 * coeff) + + costOf :: (Natural -> Natural -> Natural) -> Context t -> Natural + costOf withCoefficients ctx = + withCoefficients coeff cst + where + pp = ctx ^. #_networkParameters . #protocolParameters + (cst, coeff) = (round $ getQuantity a, round $ getQuantity b) + LinearFee a b _ = pp ^. #txParameters . #getFeePolicy From 016063b786f6144016942973b444d90de9b3f05e Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 16:26:38 +0200 Subject: [PATCH 65/86] remove invalid function 'toCardanoStakeAddress' The ChimericAccount in cardano-wallet corresponds to a key hash. In order to turn it into a stake address, we require more work and in particular, need a network discriminant. This function was unused so it didn't cause any arm, yet. --- lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs | 7 ------- 1 file changed, 7 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index d36b74d013f..d34c9c24eb3 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -55,7 +55,6 @@ module Cardano.Wallet.Shelley.Compatibility , fromShelleyCoin , toHDPayloadAddress , toCardanoStakeCredential - , toCardanoStakeAddress , fromShelleyTx -- ** Stake pools @@ -841,12 +840,6 @@ toCardanoStakeCredential = Cardano.StakeCredentialByKey . SBS.toShort . W.unChimericAccount -toCardanoStakeAddress :: W.ChimericAccount -> Cardano.StakeAddress -toCardanoStakeAddress = - fromMaybe (error "toCardanStakeAddress: malformed address") - . deserialiseFromRawBytes AsStakeAddress - . W.unChimericAccount - toCardanoLovelace :: W.Coin -> Cardano.Lovelace toCardanoLovelace (W.Coin c) = Cardano.Lovelace $ safeCast c where From ce5ea16463327b0373f31606499042f32c8c01bb Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 18:16:17 +0200 Subject: [PATCH 66/86] increase maxLovelaceSupply in shelley to have a non-null reserve (& rewards) We did increase the amount of the launcher faucets that setup the various shelley faucets by 3 order of magnitude. This resulted in the circulation of ada being larger than the specified max supply! As a consequence, no more rewards were distributed at all. Solving this the easy way by increasing the supply. --- lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml index a3372d15065..5c07ebdb666 100644 --- a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml @@ -42,7 +42,7 @@ genDelegs: vrf: 4ebcf8b4c13c24d89144d72f544d1c425b4a3aa1ace30af4eb72752e75b40d3e updateQuorum: 5 maxMajorPV: 25446 -maxLovelaceSupply: 45000000000000000 +maxLovelaceSupply: 1000000000000000000 protocolMagicId: 764824073 networkMagic: 764824073 networkId: Mainnet From 7169334dfaccdf6444f4a08dd7dd8c88524acc22 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 18:04:05 +0200 Subject: [PATCH 67/86] bump to cardano-1.17.0 --- cardano-1.16.x.yaml => cardano-1.17.x.yaml | 8 ++++---- nix/.stack.nix/Win32-network.nix | 4 ++-- nix/.stack.nix/byron-spec-chain.nix | 4 ++-- nix/.stack.nix/byron-spec-ledger.nix | 4 ++-- nix/.stack.nix/cardano-api.nix | 6 +++--- nix/.stack.nix/cardano-cli.nix | 6 +++--- nix/.stack.nix/cardano-config.nix | 4 ++-- nix/.stack.nix/cardano-crypto-test.nix | 4 ++-- nix/.stack.nix/cardano-crypto-wrapper.nix | 4 ++-- nix/.stack.nix/cardano-ledger-test.nix | 4 ++-- nix/.stack.nix/cardano-ledger.nix | 4 ++-- nix/.stack.nix/cardano-node.nix | 7 ++++--- nix/.stack.nix/io-sim-classes.nix | 4 ++-- nix/.stack.nix/io-sim.nix | 4 ++-- nix/.stack.nix/network-mux.nix | 4 ++-- nix/.stack.nix/ntp-client.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus-byron.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus-byronspec.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus-cardano.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus-mock.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus-shelley.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus-test-infra.nix | 4 ++-- nix/.stack.nix/ouroboros-consensus.nix | 5 +++-- nix/.stack.nix/ouroboros-network-framework.nix | 4 ++-- nix/.stack.nix/ouroboros-network-testing.nix | 4 ++-- nix/.stack.nix/ouroboros-network.nix | 5 +++-- nix/.stack.nix/shelley-spec-ledger-test.nix | 5 +++-- nix/.stack.nix/shelley-spec-ledger.nix | 4 ++-- nix/.stack.nix/shelley-spec-non-integral.nix | 4 ++-- nix/.stack.nix/small-steps-test.nix | 4 ++-- nix/.stack.nix/small-steps.nix | 4 ++-- nix/.stack.nix/typed-protocols-examples.nix | 4 ++-- nix/.stack.nix/typed-protocols.nix | 4 ++-- nix/sources.json | 8 ++++---- stack.yaml | 2 +- 35 files changed, 80 insertions(+), 76 deletions(-) rename cardano-1.16.x.yaml => cardano-1.17.x.yaml (95%) diff --git a/cardano-1.16.x.yaml b/cardano-1.17.x.yaml similarity index 95% rename from cardano-1.16.x.yaml rename to cardano-1.17.x.yaml index 3c34e1b0c6f..7adcb24fc7c 100644 --- a/cardano-1.16.x.yaml +++ b/cardano-1.17.x.yaml @@ -1,4 +1,4 @@ -name: cardano-1.16.x +name: cardano-1.17.x resolver: lts-14.25 @@ -66,7 +66,7 @@ packages: commit: 2547ad1e80aeabca2899951601079408becbc92c - git: https://github.com/input-output-hk/cardano-ledger-specs - commit: 550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed + commit: a790fb38cced04d8d8a9aeacc2a761717f11f94e subdirs: - byron/ledger/impl - byron/crypto @@ -81,7 +81,7 @@ packages: - shelley/chain-and-ledger/executable-spec/test - git: https://github.com/input-output-hk/cardano-node - commit: b218bca02d31f22407e586ec949c7d3637e8c1d3 + commit: 0191ff56d194b6ac074af0d51e67493c14e08ffa subdirs: - cardano-api - cardano-cli @@ -113,7 +113,7 @@ packages: - plugins/backend-trace-forwarder - git: https://github.com/input-output-hk/ouroboros-network - commit: 1c8924b856baf809f193798ff686cdb2c0ed25d2 + commit: 34e380f54ed24772479763ba6d67f4893d82aac2 subdirs: - io-sim - io-sim-classes diff --git a/nix/.stack.nix/Win32-network.nix b/nix/.stack.nix/Win32-network.nix index 79e4843085f..c16425f0b48 100644 --- a/nix/.stack.nix/Win32-network.nix +++ b/nix/.stack.nix/Win32-network.nix @@ -74,8 +74,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/Win32-network; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/byron-spec-chain.nix b/nix/.stack.nix/byron-spec-chain.nix index 4b8a19b2faa..730002b204c 100644 --- a/nix/.stack.nix/byron-spec-chain.nix +++ b/nix/.stack.nix/byron-spec-chain.nix @@ -63,8 +63,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/byron/chain/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/byron-spec-ledger.nix b/nix/.stack.nix/byron-spec-ledger.nix index de98ef8a1e7..0bf8fbeb380 100644 --- a/nix/.stack.nix/byron-spec-ledger.nix +++ b/nix/.stack.nix/byron-spec-ledger.nix @@ -85,8 +85,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/byron/ledger/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-api.nix b/nix/.stack.nix/cardano-api.nix index fa80a297242..ccf4b6827c8 100644 --- a/nix/.stack.nix/cardano-api.nix +++ b/nix/.stack.nix/cardano-api.nix @@ -11,7 +11,7 @@ flags = {}; package = { specVersion = "1.10"; - identifier = { name = "cardano-api"; version = "1.16.0"; }; + identifier = { name = "cardano-api"; version = "1.17.0"; }; license = "Apache-2.0"; copyright = ""; maintainer = "operations@iohk.io"; @@ -109,8 +109,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; - sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; + rev = "0191ff56d194b6ac074af0d51e67493c14e08ffa"; + sha256 = "1mwx751w6f59bhf8r4n72s0gy0fz5w4ss5jcds0fs8nvjlk7y3c6"; }); postUnpack = "sourceRoot+=/cardano-api; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-cli.nix b/nix/.stack.nix/cardano-cli.nix index 3a0e00e2e27..cd2b8f99e03 100644 --- a/nix/.stack.nix/cardano-cli.nix +++ b/nix/.stack.nix/cardano-cli.nix @@ -11,7 +11,7 @@ flags = { unexpected_thunks = false; }; package = { specVersion = "1.10"; - identifier = { name = "cardano-cli"; version = "1.16.0"; }; + identifier = { name = "cardano-cli"; version = "1.17.0"; }; license = "Apache-2.0"; copyright = ""; maintainer = "operations@iohk.io"; @@ -138,8 +138,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; - sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; + rev = "0191ff56d194b6ac074af0d51e67493c14e08ffa"; + sha256 = "1mwx751w6f59bhf8r4n72s0gy0fz5w4ss5jcds0fs8nvjlk7y3c6"; }); postUnpack = "sourceRoot+=/cardano-cli; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-config.nix b/nix/.stack.nix/cardano-config.nix index 10beeebffd8..675f97aa6bc 100644 --- a/nix/.stack.nix/cardano-config.nix +++ b/nix/.stack.nix/cardano-config.nix @@ -81,8 +81,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; - sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; + rev = "0191ff56d194b6ac074af0d51e67493c14e08ffa"; + sha256 = "1mwx751w6f59bhf8r4n72s0gy0fz5w4ss5jcds0fs8nvjlk7y3c6"; }); postUnpack = "sourceRoot+=/cardano-config; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-crypto-test.nix b/nix/.stack.nix/cardano-crypto-test.nix index 6370539fdde..007a1dd1e91 100644 --- a/nix/.stack.nix/cardano-crypto-test.nix +++ b/nix/.stack.nix/cardano-crypto-test.nix @@ -44,8 +44,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/byron/crypto/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-crypto-wrapper.nix b/nix/.stack.nix/cardano-crypto-wrapper.nix index eaa1e8bf4e0..5fe5a50ecb9 100644 --- a/nix/.stack.nix/cardano-crypto-wrapper.nix +++ b/nix/.stack.nix/cardano-crypto-wrapper.nix @@ -69,8 +69,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/byron/crypto; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-ledger-test.nix b/nix/.stack.nix/cardano-ledger-test.nix index 82d48ffb5c2..1f143e672e4 100644 --- a/nix/.stack.nix/cardano-ledger-test.nix +++ b/nix/.stack.nix/cardano-ledger-test.nix @@ -66,8 +66,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/byron/ledger/impl/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-ledger.nix b/nix/.stack.nix/cardano-ledger.nix index 30013feb007..3b8c2e15fc1 100644 --- a/nix/.stack.nix/cardano-ledger.nix +++ b/nix/.stack.nix/cardano-ledger.nix @@ -134,8 +134,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/byron/ledger/impl; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/cardano-node.nix b/nix/.stack.nix/cardano-node.nix index 60f2777b473..d1390bf1e70 100644 --- a/nix/.stack.nix/cardano-node.nix +++ b/nix/.stack.nix/cardano-node.nix @@ -11,7 +11,7 @@ flags = { unexpected_thunks = false; systemd = true; }; package = { specVersion = "1.10"; - identifier = { name = "cardano-node"; version = "1.16.0"; }; + identifier = { name = "cardano-node"; version = "1.17.0"; }; license = "Apache-2.0"; copyright = ""; maintainer = "operations@iohk.io"; @@ -91,6 +91,7 @@ (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) (hsPkgs."base" or (errorHandler.buildDepError "base")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) + (hsPkgs."cardano-crypto-class" or (errorHandler.buildDepError "cardano-crypto-class")) (hsPkgs."cardano-crypto-wrapper" or (errorHandler.buildDepError "cardano-crypto-wrapper")) (hsPkgs."cardano-ledger" or (errorHandler.buildDepError "cardano-ledger")) (hsPkgs."cardano-config" or (errorHandler.buildDepError "cardano-config")) @@ -181,8 +182,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-node"; - rev = "b218bca02d31f22407e586ec949c7d3637e8c1d3"; - sha256 = "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx"; + rev = "0191ff56d194b6ac074af0d51e67493c14e08ffa"; + sha256 = "1mwx751w6f59bhf8r4n72s0gy0fz5w4ss5jcds0fs8nvjlk7y3c6"; }); postUnpack = "sourceRoot+=/cardano-node; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/io-sim-classes.nix b/nix/.stack.nix/io-sim-classes.nix index 16ec9b27041..bd4952bab15 100644 --- a/nix/.stack.nix/io-sim-classes.nix +++ b/nix/.stack.nix/io-sim-classes.nix @@ -51,8 +51,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/io-sim-classes; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/io-sim.nix b/nix/.stack.nix/io-sim.nix index 1842d273a3f..b17e68bf707 100644 --- a/nix/.stack.nix/io-sim.nix +++ b/nix/.stack.nix/io-sim.nix @@ -55,8 +55,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/io-sim; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/network-mux.nix b/nix/.stack.nix/network-mux.nix index 0d8e954614c..04ee6a28ea4 100644 --- a/nix/.stack.nix/network-mux.nix +++ b/nix/.stack.nix/network-mux.nix @@ -105,8 +105,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/network-mux; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ntp-client.nix b/nix/.stack.nix/ntp-client.nix index 979b7383f6a..468496db6ab 100644 --- a/nix/.stack.nix/ntp-client.nix +++ b/nix/.stack.nix/ntp-client.nix @@ -67,8 +67,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ntp-client; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-byron.nix b/nix/.stack.nix/ouroboros-consensus-byron.nix index f6e3c90c16e..0b9ade5d677 100644 --- a/nix/.stack.nix/ouroboros-consensus-byron.nix +++ b/nix/.stack.nix/ouroboros-consensus-byron.nix @@ -77,8 +77,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-byron; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-byronspec.nix b/nix/.stack.nix/ouroboros-consensus-byronspec.nix index efdb95bfc38..5f31bf50f25 100644 --- a/nix/.stack.nix/ouroboros-consensus-byronspec.nix +++ b/nix/.stack.nix/ouroboros-consensus-byronspec.nix @@ -52,8 +52,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-byronspec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-cardano.nix b/nix/.stack.nix/ouroboros-consensus-cardano.nix index 56603ad2e84..fb24082d2be 100644 --- a/nix/.stack.nix/ouroboros-consensus-cardano.nix +++ b/nix/.stack.nix/ouroboros-consensus-cardano.nix @@ -140,8 +140,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-cardano; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-mock.nix b/nix/.stack.nix/ouroboros-consensus-mock.nix index 0790a9b2037..0a5d289ae22 100644 --- a/nix/.stack.nix/ouroboros-consensus-mock.nix +++ b/nix/.stack.nix/ouroboros-consensus-mock.nix @@ -73,8 +73,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus/ouroboros-consensus-mock; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-shelley.nix b/nix/.stack.nix/ouroboros-consensus-shelley.nix index bc15b6cc7e8..2e8bad46cd6 100644 --- a/nix/.stack.nix/ouroboros-consensus-shelley.nix +++ b/nix/.stack.nix/ouroboros-consensus-shelley.nix @@ -56,8 +56,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus-shelley; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus-test-infra.nix b/nix/.stack.nix/ouroboros-consensus-test-infra.nix index a921c2af48c..6aa2d07e33d 100644 --- a/nix/.stack.nix/ouroboros-consensus-test-infra.nix +++ b/nix/.stack.nix/ouroboros-consensus-test-infra.nix @@ -88,8 +88,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus/ouroboros-consensus-test-infra; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-consensus.nix b/nix/.stack.nix/ouroboros-consensus.nix index 1ee708156b1..63534a03dbc 100644 --- a/nix/.stack.nix/ouroboros-consensus.nix +++ b/nix/.stack.nix/ouroboros-consensus.nix @@ -27,6 +27,7 @@ "library" = { depends = [ (hsPkgs."base" or (errorHandler.buildDepError "base")) + (hsPkgs."base16-bytestring" or (errorHandler.buildDepError "base16-bytestring")) (hsPkgs."bifunctors" or (errorHandler.buildDepError "bifunctors")) (hsPkgs."bimap" or (errorHandler.buildDepError "bimap")) (hsPkgs."binary" or (errorHandler.buildDepError "binary")) @@ -165,8 +166,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-consensus; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-network-framework.nix b/nix/.stack.nix/ouroboros-network-framework.nix index 94cdafe50ca..cdc1d0468cd 100644 --- a/nix/.stack.nix/ouroboros-network-framework.nix +++ b/nix/.stack.nix/ouroboros-network-framework.nix @@ -113,8 +113,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-network-framework; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-network-testing.nix b/nix/.stack.nix/ouroboros-network-testing.nix index 80591c0c8f9..f845e1cf33c 100644 --- a/nix/.stack.nix/ouroboros-network-testing.nix +++ b/nix/.stack.nix/ouroboros-network-testing.nix @@ -38,8 +38,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-network-testing; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/ouroboros-network.nix b/nix/.stack.nix/ouroboros-network.nix index ce35fff1407..dce004f215d 100644 --- a/nix/.stack.nix/ouroboros-network.nix +++ b/nix/.stack.nix/ouroboros-network.nix @@ -70,6 +70,7 @@ (hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."cardano-prelude" or (errorHandler.buildDepError "cardano-prelude")) + (hsPkgs."cardano-slotting" or (errorHandler.buildDepError "cardano-slotting")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) (hsPkgs."io-sim" or (errorHandler.buildDepError "io-sim")) (hsPkgs."io-sim-classes" or (errorHandler.buildDepError "io-sim-classes")) @@ -186,8 +187,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/ouroboros-network; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/shelley-spec-ledger-test.nix b/nix/.stack.nix/shelley-spec-ledger-test.nix index 5a29d367796..7b1216b7d5c 100644 --- a/nix/.stack.nix/shelley-spec-ledger-test.nix +++ b/nix/.stack.nix/shelley-spec-ledger-test.nix @@ -46,6 +46,7 @@ (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) + (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."generic-random" or (errorHandler.buildDepError "generic-random")) (hsPkgs."hedgehog" or (errorHandler.buildDepError "hedgehog")) (hsPkgs."hedgehog-quickcheck" or (errorHandler.buildDepError "hedgehog-quickcheck")) @@ -71,8 +72,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/shelley/chain-and-ledger/executable-spec/test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/shelley-spec-ledger.nix b/nix/.stack.nix/shelley-spec-ledger.nix index f0788c47fe7..6fc9b3ad984 100644 --- a/nix/.stack.nix/shelley-spec-ledger.nix +++ b/nix/.stack.nix/shelley-spec-ledger.nix @@ -145,8 +145,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/shelley/chain-and-ledger/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/shelley-spec-non-integral.nix b/nix/.stack.nix/shelley-spec-non-integral.nix index 313aa503184..b977f014c8c 100644 --- a/nix/.stack.nix/shelley-spec-non-integral.nix +++ b/nix/.stack.nix/shelley-spec-non-integral.nix @@ -42,8 +42,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/shelley/chain-and-ledger/dependencies/non-integer; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/small-steps-test.nix b/nix/.stack.nix/small-steps-test.nix index f7e77353c83..035b43f08fe 100644 --- a/nix/.stack.nix/small-steps-test.nix +++ b/nix/.stack.nix/small-steps-test.nix @@ -91,8 +91,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/semantics/small-steps-test; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/small-steps.nix b/nix/.stack.nix/small-steps.nix index cd5039fe16a..6f89737a6f5 100644 --- a/nix/.stack.nix/small-steps.nix +++ b/nix/.stack.nix/small-steps.nix @@ -67,8 +67,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/cardano-ledger-specs"; - rev = "550a70b9ff83c9e9ddbcb7f7b49ee93161bb29ed"; - sha256 = "0qxlgknnys2iv8yxfyxbd32i6fbj3fp12a6smpypwqn662n5ybx5"; + rev = "a790fb38cced04d8d8a9aeacc2a761717f11f94e"; + sha256 = "0j5sgx7wqf46f30r8dgmxk85y99pvn7dzrj99xi7779lllqn4ddg"; }); postUnpack = "sourceRoot+=/semantics/executable-spec; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/typed-protocols-examples.nix b/nix/.stack.nix/typed-protocols-examples.nix index a751af15ba2..1879dac4cbb 100644 --- a/nix/.stack.nix/typed-protocols-examples.nix +++ b/nix/.stack.nix/typed-protocols-examples.nix @@ -57,8 +57,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/typed-protocols-examples; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/.stack.nix/typed-protocols.nix b/nix/.stack.nix/typed-protocols.nix index 24ed39cf685..bee3f4fdec7 100644 --- a/nix/.stack.nix/typed-protocols.nix +++ b/nix/.stack.nix/typed-protocols.nix @@ -35,8 +35,8 @@ } // { src = (pkgs.lib).mkDefault (pkgs.fetchgit { url = "https://github.com/input-output-hk/ouroboros-network"; - rev = "1c8924b856baf809f193798ff686cdb2c0ed25d2"; - sha256 = "1ird981gi7wbj21g8d65jqv4q4iwch2akky4r8pf8r2w3b3767pv"; + rev = "34e380f54ed24772479763ba6d67f4893d82aac2"; + sha256 = "03gnxiq6rl6j1wnbw1nj5rix1iga406yyp1v9xxz4684qsxj5b24"; }); postUnpack = "sourceRoot+=/typed-protocols; echo source root reset to \$sourceRoot"; } \ No newline at end of file diff --git a/nix/sources.json b/nix/sources.json index f948a2051f7..d0896787bc3 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -1,14 +1,14 @@ { "cardano-node": { - "branch": "master", + "branch": "1.17.0", "description": null, "homepage": null, "owner": "input-output-hk", "repo": "cardano-node", - "rev": "b218bca02d31f22407e586ec949c7d3637e8c1d3", - "sha256": "09xl8n91pg6k972if46nqdsg6hl8zny9h7563dc9aj6j17xanpcx", + "rev": "0191ff56d194b6ac074af0d51e67493c14e08ffa", + "sha256": "1mwx751w6f59bhf8r4n72s0gy0fz5w4ss5jcds0fs8nvjlk7y3c6", "type": "tarball", - "url": "https://github.com/input-output-hk/cardano-node/archive/b218bca02d31f22407e586ec949c7d3637e8c1d3.tar.gz", + "url": "https://github.com/input-output-hk/cardano-node/archive/0191ff56d194b6ac074af0d51e67493c14e08ffa.tar.gz", "url_template": "https://github.com///archive/.tar.gz" }, "haskell.nix": { diff --git a/stack.yaml b/stack.yaml index 9a2c15a4229..57813eed9a3 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,4 +1,4 @@ -resolver: cardano-1.16.x.yaml +resolver: cardano-1.17.x.yaml packages: - lib/core From 35e1b129172ccb9670b39222f4daf93a5b1e9d06 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 19:40:24 +0200 Subject: [PATCH 68/86] reduce 'eventually' timeout upper bound to a more reasonable value --- .../src/Test/Integration/Framework/DSL.hs | 11 +++++++++-- .../Integration/Scenario/API/Shelley/StakePools.hs | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Framework/DSL.hs b/lib/core-integration/src/Test/Integration/Framework/DSL.hs index c1b5f8f66e4..4755cade385 100644 --- a/lib/core-integration/src/Test/Integration/Framework/DSL.hs +++ b/lib/core-integration/src/Test/Integration/Framework/DSL.hs @@ -615,12 +615,19 @@ eventuallyUsingDelay -> IO a eventuallyUsingDelay delay desc io = do lastErrorRef <- newIORef Nothing - winner <- race (threadDelay $ 300 * oneSecond) (trial lastErrorRef) + -- NOTE + -- This __90s__ is mostly justified by the parameters in the shelley + -- genesis. The longest action we have two wait for are about 2 epochs, + -- which corresponds to 80s with the current parameters. Using something + -- much longer than that isn't really useful (in particular, this doesn't + -- depend on the host machine running the test, because the protocol moves + -- forward at the same speed regardless...) + winner <- race (threadDelay $ 90 * oneSecond) (trial lastErrorRef) case winner of Left () -> do lastError <- readIORef lastErrorRef fail $ mconcat - [ "Waited longer than 5 minutes for action to resolve. " + [ "Waited longer than 2 minutes for an action to resolve. " , "Action: " , show desc , ". Error condition: " diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs index 30f3171fc2e..7cd1403510e 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs @@ -163,6 +163,7 @@ spec = do -- Earn rewards waitForNextEpoch ctx + waitForNextEpoch ctx (previousBalance, walletRewards) <- eventually "Wallet gets rewards" $ do r <- request @ApiWallet ctx (Link.getWallet @'Shelley w) @@ -426,6 +427,7 @@ spec = do ] waitForNextEpoch ctx + waitForNextEpoch ctx -- Wait for money to flow eventually "Wallet gets rewards" $ do From a7ecfe2891b08988f0f0eb27f174ece37efa9c6c Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 23:39:00 +0200 Subject: [PATCH 69/86] use time interpreter in the network information endpoint instead of the legacy API --- lib/core/src/Cardano/Wallet/Api/Server.hs | 18 ++++++------------ .../src/Cardano/Wallet/Primitive/Slotting.hs | 6 ++++-- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Api/Server.hs b/lib/core/src/Cardano/Wallet/Api/Server.hs index 5f0a81c36c3..283857d3c30 100644 --- a/lib/core/src/Cardano/Wallet/Api/Server.hs +++ b/lib/core/src/Cardano/Wallet/Api/Server.hs @@ -255,12 +255,9 @@ import Cardano.Wallet.Primitive.Model ( Wallet, availableBalance, currentTip, getState, totalBalance ) import Cardano.Wallet.Primitive.Slotting ( TimeInterpreter - , epochStartTime , epochSucc , firstSlotInEpoch - , slotAt' - , slotMinBound - , slotParams + , ongoingSlotAt , startTime , toSlotId ) @@ -1519,23 +1516,21 @@ getNetworkInformation => (Block, NetworkParameters, SyncTolerance) -> NetworkLayer IO t Block -> Handler ApiNetworkInformation -getNetworkInformation (_block0, np, st) nl = do +getNetworkInformation (_block0, _, st) nl = do now <- liftIO getCurrentTime nodeTip <- liftHandler (NW.currentNodeTip nl) apiNodeTip <- liftIO $ mkApiBlockReference ti nodeTip - let ntrkTip = fromMaybe slotMinBound (slotAt' sp now) - -- TODO(ADP-356): We need to retrieve the network tip using a different API, - -- AND it may not be availible. - -- - -- We should mark it optional. + ntrkTipSlot <- fromMaybe minBound <$> liftIO (ti $ ongoingSlotAt now) + ntrkTip <- liftIO $ ti $ toSlotId ntrkTipSlot let nextEpochNo = unsafeEpochSucc (ntrkTip ^. #epochNumber) + nextEpochStart <- liftIO $ ti (firstSlotInEpoch nextEpochNo >>= startTime) progress <- liftIO $ syncProgress st ti nodeTip now pure $ Api.ApiNetworkInformation { Api.syncProgress = ApiT progress , Api.nextEpoch = ApiEpochInfo (ApiT nextEpochNo) - (epochStartTime sp nextEpochNo) + nextEpochStart , Api.nodeTip = apiNodeTip , Api.networkTip = ApiNetworkTip @@ -1546,7 +1541,6 @@ getNetworkInformation (_block0, np, st) nl = do where ti :: TimeInterpreter IO ti = timeInterpreter nl - sp = slotParams (np ^. #genesisParameters) -- Unsafe constructor for the next epoch. Chances to reach the last epoch -- are quite unlikely in this context :) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs index e7055f338ab..f4bba38ee14 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Slotting.hs @@ -35,13 +35,15 @@ module Cardano.Wallet.Primitive.Slotting , MyInterpreter(..) , Qry - -- * Legacy api + -- ** Helpers , unsafeEpochNo - , epochStartTime , epochPred , epochSucc + + -- * Legacy api - Inaccurate with cardano-node, okay with Jörmungandr , SlotParameters (..) , slotParams + , epochStartTime , flatSlot , fromFlatSlot , slotStartTime From 1db9616eaaadf5df92ce2d2075a87d0ccaf50544 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 23 Jul 2020 23:40:29 +0200 Subject: [PATCH 70/86] compare epoch numbers in the shelley stake pools specifications instead of full timestamp The main reason is because, in the test scenario we do not have a full time interpreter so it becomes quite complex to estimate the precise time. The epoch however should be fairly easy to identify. --- .../Scenario/API/Shelley/StakePools.hs | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs index 7cd1403510e..030b881d080 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs @@ -20,6 +20,7 @@ import Cardano.Wallet.Api.Types , ApiT (..) , ApiTransaction , ApiWallet + , ApiWalletDelegationStatus (..) , ApiWithdrawRewards (..) , DecodeAddress , DecodeStakeAddress @@ -88,7 +89,6 @@ import Test.Integration.Framework.DSL , joinStakePool , json , listAddresses - , mkEpochInfo , notDelegating , quitStakePool , request @@ -347,7 +347,7 @@ spec = do w <- fixtureWallet ctx -- make sure we are at the beginning of new epoch - (currentEpoch, sp) <- getSlotParams ctx + (currentEpoch, _) <- getSlotParams ctx waitForNextEpoch ctx pool1:pool2:_ <- map (view #id) . snd @@ -372,10 +372,17 @@ spec = do request @ApiWallet ctx (Link.getWallet @'Shelley w) Default Empty >>= flip verify - [ expectField #delegation - (`shouldBe` notDelegating - [ (Just pool1, mkEpochInfo (currentEpoch + 3) sp) - ] + [ expectField (#delegation . #next) + (\case + [dlg] -> do + (dlg ^. #status) `shouldBe` + Delegating + (dlg ^. #target) `shouldBe` + Just pool1 + (view #epochNumber <$> dlg ^. #changesAt) `shouldBe` + Just (ApiT $ currentEpoch + 3) + _ -> + fail "next delegation should contain exactly one element" ) ] eventually "Wallet is delegating to p1" $ do From 32238d3435dcba2739936362dd4cb0dbad15c31c Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 09:01:41 +0200 Subject: [PATCH 71/86] fix stylish-haskell & hlint & weeder --- .../src/Test/Integration/Framework/TestData.hs | 2 +- .../Integration/Scenario/API/Shelley/Migrations.hs | 2 +- .../Integration/Scenario/CLI/Shelley/Transactions.hs | 1 - lib/core/src/Cardano/Wallet/Network.hs | 5 +++-- lib/shelley/cardano-wallet-shelley.cabal | 4 ---- .../src/Cardano/Wallet/Byron/Compatibility.hs | 1 - lib/shelley/src/Cardano/Wallet/Shelley.hs | 4 +--- .../src/Cardano/Wallet/Shelley/Compatibility.hs | 6 ++---- lib/shelley/src/Cardano/Wallet/Shelley/Network.hs | 12 +++--------- lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs | 1 - 10 files changed, 11 insertions(+), 27 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Framework/TestData.hs b/lib/core-integration/src/Test/Integration/Framework/TestData.hs index c8ce827ec4c..19b4514c537 100644 --- a/lib/core-integration/src/Test/Integration/Framework/TestData.hs +++ b/lib/core-integration/src/Test/Integration/Framework/TestData.hs @@ -86,7 +86,7 @@ import Data.Text import Numeric.Natural ( Natural ) import Test.Integration.Framework.DSL - ( Payload (..), json, fixturePassphrase ) + ( Payload (..), fixturePassphrase, json ) falseWalletIds :: [(String, String)] falseWalletIds = diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs index 5b252f41e28..bb6285d01c3 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs @@ -49,7 +49,7 @@ import Data.Text import Data.Word ( Word64 ) import Test.Hspec - ( SpecWith, describe, shouldBe, shouldSatisfy, pendingWith ) + ( SpecWith, describe, pendingWith, shouldBe, shouldSatisfy ) import Test.Hspec.Extra ( it ) import Test.Integration.Framework.DSL diff --git a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs index def614088d5..5c59f1dac39 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/CLI/Shelley/Transactions.hs @@ -1,6 +1,5 @@ {-# LANGUAGE AllowAmbiguousTypes #-} {-# LANGUAGE DataKinds #-} -{-# LANGUAGE NumericUnderscores #-} {-# LANGUAGE OverloadedLabels #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} diff --git a/lib/core/src/Cardano/Wallet/Network.hs b/lib/core/src/Cardano/Wallet/Network.hs index 4e904b9dec5..2f3a4ba25a9 100644 --- a/lib/core/src/Cardano/Wallet/Network.hs +++ b/lib/core/src/Cardano/Wallet/Network.hs @@ -2,6 +2,7 @@ {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE Rank2Types #-} @@ -87,10 +88,10 @@ import Fmt ( pretty ) import GHC.Generics ( Generic ) -import UnliftIO.Exception - ( throwIO ) import GHC.Stack ( HasCallStack ) +import UnliftIO.Exception + ( throwIO ) import qualified Data.List.NonEmpty as NE import qualified Data.Text as T diff --git a/lib/shelley/cardano-wallet-shelley.cabal b/lib/shelley/cardano-wallet-shelley.cabal index 3199aa8b09d..e94d99f83c5 100644 --- a/lib/shelley/cardano-wallet-shelley.cabal +++ b/lib/shelley/cardano-wallet-shelley.cabal @@ -36,7 +36,6 @@ library , bech32 , bech32-th , binary - , byron-spec-ledger , bytestring , cardano-addresses , cardano-api @@ -53,7 +52,6 @@ library , cborg , containers , contra-tracer - , cryptonite , directory , exceptions , extra @@ -186,7 +184,6 @@ test-suite integration base , aeson , async - , bytestring , cardano-api , cardano-wallet-cli , cardano-wallet-core @@ -198,7 +195,6 @@ test-suite integration , hspec , http-client , iohk-monitoring - , random , text , text-class build-tools: diff --git a/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs index 3928782b730..adfa84b111b 100644 --- a/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Byron/Compatibility.hs @@ -8,7 +8,6 @@ {-# LANGUAGE NumericUnderscores #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} -{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} -- Orphan instances for {Encode,Decode}Address until we get rid of the diff --git a/lib/shelley/src/Cardano/Wallet/Shelley.hs b/lib/shelley/src/Cardano/Wallet/Shelley.hs index 38859481906..e558fb4c94c 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley.hs @@ -45,9 +45,7 @@ module Cardano.Wallet.Shelley import Prelude import Cardano.Api.Typed - ( Shelley ) -import Cardano.Api.Typed - ( NetworkId ) + ( NetworkId, Shelley ) import Cardano.BM.Data.Severity ( Severity (..) ) import Cardano.BM.Data.Tracer diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs index d34c9c24eb3..1d0e691e50e 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Compatibility.hs @@ -98,9 +98,7 @@ import Cardano.Api.Shelley.Genesis import Cardano.Api.Typed ( AsType (..), Shelley, deserialiseFromRawBytes ) import Cardano.Binary - ( serialize' ) -import Cardano.Binary - ( fromCBOR ) + ( fromCBOR, serialize' ) import Cardano.Crypto.Hash.Class ( Hash (UnsafeHash), hashToBytes ) import Cardano.Slotting.Slot @@ -823,7 +821,7 @@ sealShelleyTx (Cardano.ShelleyTx tx) = (walletTx, _, _) = fromShelleyTx tx sealed = serialize' $ O.mkShelleyTx tx in - (walletTx, W.SealedTx $ sealed) + (walletTx, W.SealedTx sealed) toCardanoTxId :: W.Hash "Tx" -> Cardano.TxId toCardanoTxId (W.Hash h) = Cardano.TxId $ UnsafeHash $ toShort h diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs index 7cecf5fc0f6..a456f543f54 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Network.hs @@ -78,9 +78,7 @@ import Control.Concurrent.Async import Control.Concurrent.Chan ( dupChan, newChan, readChan, writeChan ) import Control.Exception - ( throwIO ) -import Control.Exception - ( IOException ) + ( IOException, throwIO ) import Control.Monad ( forever, unless, (>=>) ) import Control.Monad.Catch @@ -125,9 +123,7 @@ import Data.Function import Data.List ( isInfixOf ) import Data.Map - ( Map ) -import Data.Map - ( (!) ) + ( Map, (!) ) import Data.Maybe ( fromMaybe ) import Data.Proxy @@ -145,9 +141,7 @@ import Data.Word import Fmt ( Buildable (..), listF', mapF, pretty ) import GHC.Stack - ( prettyCallStack ) -import GHC.Stack - ( HasCallStack ) + ( HasCallStack, prettyCallStack ) import Network.Mux ( MuxError (..), MuxErrorType (..), WithMuxBearer (..) ) import Ouroboros.Consensus.Cardano diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs index b5f739c30f8..cd5b59a037a 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Pools.hs @@ -7,7 +7,6 @@ {-# LANGUAGE PolyKinds #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} -{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} -- | From 6355a748192556e0994aa921f87c043ac2045a05 Mon Sep 17 00:00:00 2001 From: IOHK Date: Fri, 24 Jul 2020 07:18:59 +0000 Subject: [PATCH 72/86] fixup! Regenerate nix --- nix/.stack.nix/cardano-wallet-shelley.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/nix/.stack.nix/cardano-wallet-shelley.nix b/nix/.stack.nix/cardano-wallet-shelley.nix index eca6fd5261d..edd20e3e6ef 100644 --- a/nix/.stack.nix/cardano-wallet-shelley.nix +++ b/nix/.stack.nix/cardano-wallet-shelley.nix @@ -33,7 +33,6 @@ (hsPkgs."bech32" or (errorHandler.buildDepError "bech32")) (hsPkgs."bech32-th" or (errorHandler.buildDepError "bech32-th")) (hsPkgs."binary" or (errorHandler.buildDepError "binary")) - (hsPkgs."byron-spec-ledger" or (errorHandler.buildDepError "byron-spec-ledger")) (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) (hsPkgs."cardano-addresses" or (errorHandler.buildDepError "cardano-addresses")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) @@ -50,7 +49,6 @@ (hsPkgs."cborg" or (errorHandler.buildDepError "cborg")) (hsPkgs."containers" or (errorHandler.buildDepError "containers")) (hsPkgs."contra-tracer" or (errorHandler.buildDepError "contra-tracer")) - (hsPkgs."cryptonite" or (errorHandler.buildDepError "cryptonite")) (hsPkgs."directory" or (errorHandler.buildDepError "directory")) (hsPkgs."exceptions" or (errorHandler.buildDepError "exceptions")) (hsPkgs."extra" or (errorHandler.buildDepError "extra")) @@ -139,7 +137,6 @@ (hsPkgs."base" or (errorHandler.buildDepError "base")) (hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) (hsPkgs."async" or (errorHandler.buildDepError "async")) - (hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) (hsPkgs."cardano-api" or (errorHandler.buildDepError "cardano-api")) (hsPkgs."cardano-wallet-cli" or (errorHandler.buildDepError "cardano-wallet-cli")) (hsPkgs."cardano-wallet-core" or (errorHandler.buildDepError "cardano-wallet-core")) @@ -151,7 +148,6 @@ (hsPkgs."hspec" or (errorHandler.buildDepError "hspec")) (hsPkgs."http-client" or (errorHandler.buildDepError "http-client")) (hsPkgs."iohk-monitoring" or (errorHandler.buildDepError "iohk-monitoring")) - (hsPkgs."random" or (errorHandler.buildDepError "random")) (hsPkgs."text" or (errorHandler.buildDepError "text")) (hsPkgs."text-class" or (errorHandler.buildDepError "text-class")) ]; From 37fa4446fb1f346346102599b86ec48b9be7d6e0 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 11:26:29 +0200 Subject: [PATCH 73/86] use BYRON genesis for initial cluster funds Indeed, there are no initial funds in the Shelley genesis. The current state of affairs was doing really weird/wrong things but we didn't quite noticed because so far, we haven't enabled a single test in the shelley scenarios that uses Byron funds. Yet, we still need to be careful about parsing the initial key->value map of initial funds for sequential wallets --- .../src/Cardano/Wallet/Shelley/Launch.hs | 99 +- .../cardano-node-shelley/byron-genesis.yaml | 6476 +++++++---------- .../cardano-node-shelley/shelley-genesis.yaml | 2 +- 3 files changed, 2751 insertions(+), 3826 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index f41a6c320e0..2a2c8d55536 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -80,13 +80,16 @@ import Cardano.Wallet.Primitive.Types , PoolId (..) , ProtocolMagic (..) , SlotLength (..) + , TxOut ) import Cardano.Wallet.Shelley ( SomeNetworkDiscriminant (..) ) import Cardano.Wallet.Shelley.Compatibility ( NodeVersionData ) import Cardano.Wallet.Unsafe - ( unsafeFromHex ) + ( unsafeFromHex, unsafeRunExceptT ) +import Control.Arrow + ( first, second ) import Control.Concurrent ( threadDelay ) import Control.Concurrent.Async @@ -119,6 +122,8 @@ import Data.ByteString.Base58 ( bitcoinAlphabet, decodeBase58 ) import Data.Either ( isLeft, isRight ) +import Data.Function + ( (&) ) import Data.Functor ( ($>), (<&>) ) import Data.List @@ -166,6 +171,8 @@ import Test.Utils.Paths import Test.Utils.StaticServer ( withStaticServer ) +import qualified Cardano.Chain.Common as Byron +import qualified Cardano.Chain.UTxO as Legacy import qualified Cardano.Wallet.Byron.Compatibility as Byron import qualified Cardano.Wallet.Shelley.Compatibility as Shelley import qualified Data.Aeson as Aeson @@ -180,8 +187,6 @@ import qualified Data.Text as T import qualified Data.Text.Encoding as T import qualified Data.Vector as V import qualified Data.Yaml as Yaml -import qualified Shelley.Spec.Ledger.Address as SL -import qualified Shelley.Spec.Ledger.Coin as SL -- | Shelley hard fork network configuration has two genesis datas. -- As a special case for mainnet, we hardcode the byron genesis data. @@ -306,25 +311,28 @@ parseGenesisData = \case -- ordering on the keys when parsing the map. Because this wallet uses sequential -- derivation, it relies on addresses being discovered in a certain order. newtype PreserveInitialFundsOrdering = - PreserveInitialFundsOrdering - ( ShelleyGenesis TPraosStandardCrypto - , [(SL.Addr TPraosStandardCrypto, SL.Coin)] - ) + PreserveInitialFundsOrdering [TxOut] deriving (Show) instance FromJSON PreserveInitialFundsOrdering where parseJSON source = do - json <- parseJSON source - base <- clearField "initialFunds" json >>= parseJSON - initialFunds <- flip (Aeson.withObject "ShelleyGenesis") source $ \obj -> - obj .: "initialFunds" - pure $ PreserveInitialFundsOrdering - ( base - , mconcat (Map.toList <$> initialFunds) - ) + initialFunds <- flip (Aeson.withObject "ByronGenesis") source $ \obj -> + obj .: "nonAvvmBalances" + let outs = mconcat (Map.toList <$> initialFunds) + & map (first unsafeMkAddress) + & map (second unsafeMkLovelace) + & map (Byron.fromTxOut . uncurry Legacy.TxOut) + pure $ PreserveInitialFundsOrdering outs where - clearField field = withObject - (pure . HM.update (const (Just $ Aeson.Object mempty)) field) + unsafeMkAddress = + either bomb id . Byron.decodeAddressBase58 + where + bomb = error "PreserveInitialFundsOrdering: address not valid base58" + + unsafeMkLovelace = + either bomb id . Byron.mkLovelace . read + where + bomb = error "PreserveInitialFundsOrdering: invalid lovelace value" -------------------------------------------------------------------------------- -- For Integration @@ -768,9 +776,11 @@ genConfig -- ^ Genesis block start time -> IO (FilePath, Block, NetworkParameters, NodeVersionData) genConfig dir severity systemStart = do - -- we need to specify genesis file location every run in tmp - let withAddedKey k v = withObject (pure . HM.insert k (toJSON v)) + let startTime = round @_ @Int . utcTimeToPOSIXSeconds $ systemStart + let systemStart' = posixSecondsToUTCTime . fromRational . toRational $ startTime + ---- + -- Configuration Yaml.decodeFileThrow (source "node.config") >>= withAddedKey "ShelleyGenesisFile" shelleyGenesisFile >>= withAddedKey "ByronGenesisFile" byronGenesisFile @@ -778,34 +788,47 @@ genConfig dir severity systemStart = do >>= withObject (addMinSeverityStdout severity) >>= Yaml.encodeFile (dir "node.config") - let startTime = round @_ @Int . utcTimeToPOSIXSeconds $ systemStart - let systemStart' = posixSecondsToUTCTime . fromRational . toRational $ startTime - Yaml.decodeFileThrow @_ @Aeson.Value (source "shelley-genesis.yaml") - >>= withObject (pure . updateSystemStart systemStart') - >>= withObject transformInitialFunds - >>= Aeson.encodeFile shelleyGenesisFile - + ---- + -- Byron Genesis Yaml.decodeFileThrow @_ @Aeson.Value (source "byron-genesis.yaml") >>= withAddedKey "startTime" startTime >>= withObject transformInitialFunds >>= Aeson.encodeFile byronGenesisFile - PreserveInitialFundsOrdering (genesis, initialFunds) <- - Yaml.decodeFileThrow (source "shelley-genesis.yaml") - >>= withObject (pure . updateSystemStart systemStart) - >>= either fail pure . Aeson.parseEither parseJSON + ---- + -- Shelley Genesis + Yaml.decodeFileThrow @_ @Aeson.Value (source "shelley-genesis.yaml") + >>= withObject (pure . updateSystemStart systemStart') + >>= Aeson.encodeFile shelleyGenesisFile - let nm = sgNetworkMagic genesis - let (networkParameters, block0) = Shelley.fromGenesisData genesis initialFunds + ---- + -- Initial Funds. + PreserveInitialFundsOrdering initialFunds <- + Yaml.decodeFileThrow @_ @Aeson.Value (source "byron-genesis.yaml") + >>= withAddedKey "startTime" startTime + >>= either fail pure . Aeson.parseEither parseJSON + (byronGenesisData, byronGenesisHash) <- unsafeRunExceptT + $ withExceptT show + $ readGenesisData byronGenesisFile + let (byronParams, _) = Byron.fromGenesisData (byronGenesisData, byronGenesisHash) + let gp = genesisParameters byronParams + let block0 = Byron.genesisBlockFromTxOuts gp initialFunds + + ---- + -- Parameters + shelleyGenesis <- Yaml.decodeFileThrow + @_ @(ShelleyGenesis TPraosStandardCrypto) shelleyGenesisFile + let networkMagic = sgNetworkMagic shelleyGenesis + let shelleyParams = fst $ Shelley.fromGenesisData shelleyGenesis [] let versionData = - ( NodeToClientVersionData $ NetworkMagic nm + ( NodeToClientVersionData $ NetworkMagic networkMagic , nodeToClientCodecCBORTerm ) pure ( dir "node.config" , block0 - , networkParameters + , byronParams { protocolParameters = protocolParameters shelleyParams } , versionData ) where @@ -818,6 +841,10 @@ genConfig dir severity systemStart = do byronGenesisFile :: FilePath byronGenesisFile = dir "byron-genesis.json" + -- we need to specify genesis file location every run in tmp + withAddedKey k v = withObject (pure . HM.insert k (toJSON v)) + + -- | Generate a topology file from a list of peers. genTopology :: FilePath -> [Int] -> IO FilePath genTopology dir peers = do @@ -1035,7 +1062,7 @@ sendFaucetFundsTo tr dir allTargets = do ] ++ outputs tx <- signTx tr dir file [faucetPrv] - submitTx tr "facuet tx" tx + submitTx tr "faucet tx" tx -- TODO: Use split package? -- https://stackoverflow.com/questions/12876384/grouping-a-list-into-lists-of-n-elements-in-haskell @@ -1356,7 +1383,7 @@ addMinSeverityStdout severity ob = case HM.lookup "setupScribes" ob of transformInitialFunds :: Aeson.Object -> IO Aeson.Object -transformInitialFunds = pure . HM.update toObject "initialFunds" +transformInitialFunds = pure . HM.update toObject "nonAvvmBalances" where toObject = \case Aeson.Array xs -> diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml index 0c9c3499dcd..009ece93ecd 100644 --- a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml @@ -34,3835 +34,2733 @@ heavyDelegation: cert: 1ef766c62e55f6b81afd3785b37ad96e2cfb3fcf2c117050cbba8eeb2285f4428821afbe43580cfa08e0479b13d165a1a03fd57bcd26ce7c4e3c0892d25f5207 nonAvvmBalances: - 2cWKMJemoBahz6iaYL1VSXeww8TuecvvSsz8gxbaby4hc6pLFnDmHhVMY82n3tGmP6ZXW: '100' +- 2cWKMJemoBahz6iaYL1VSXeww8TuecvvSsz8gxbaby4hc6pLFnDmHhVMY82n3tGmP6ZXW: '100' - # Facuet addresses for launcher - Ae2tdPwUPEZGc7WAmkmXxP3QJ8aiKSMGgfWV6w4A58ebjpr5ah147VvJfDH: '1000000000000000' - Ae2tdPwUPEZCREUZxa3F1fTyVPMU2MLMYAkRe7DEVoyZsWKahphgdifWuc3: '1000000000000000' - Ae2tdPwUPEYxL4wYjNxK8z5mCgMmnG1WkMFZaeZ6EGdV2LDZ5pgQzvzVpuo: '1000000000000000' - Ae2tdPwUPEZMcoAHgC7RvCL9ewjZdj9Yrej2bHJJpvubhkSaRn5Y7dPGKRy: '1000000000000000' - Ae2tdPwUPEZ7geEbqcaNfMFL8EMpeRYAQrHABau6xUmek87xeyyrmPm4ETc: '1000000000000000' - Ae2tdPwUPEZNHxjww4RhosX3LMVAzbJtCj3vzoQM3wgLwhEHUp13jX8Xte8: '1000000000000000' - Ae2tdPwUPEZ8cgFfwvjp9t42v3zQE8nCsjxMpDcdcJZzBocsUK2btirTHDN: '1000000000000000' - Ae2tdPwUPEZK4VrjHdDpeTfSvWMzNa6qZ5erD2aVmU5S3mCeCZsoT6SJ6NW: '1000000000000000' - Ae2tdPwUPEZ2pEgBhSNKiUXRfhb5p8jByYiJXAsokHdLGMVeqLjHFNaEr7b: '1000000000000000' - VhLXUZmS1gXFnDcCzVHi2BqhkA1cvDUZrMvGfYotD4eEjKnkdfid7YsY: '1000000000000000' + # Faucet addresses for launcher +- Ae2tdPwUPEZGc7WAmkmXxP3QJ8aiKSMGgfWV6w4A58ebjpr5ah147VvJfDH: '1000000000000000' +- Ae2tdPwUPEZCREUZxa3F1fTyVPMU2MLMYAkRe7DEVoyZsWKahphgdifWuc3: '1000000000000000' +- Ae2tdPwUPEYxL4wYjNxK8z5mCgMmnG1WkMFZaeZ6EGdV2LDZ5pgQzvzVpuo: '1000000000000000' +- Ae2tdPwUPEZMcoAHgC7RvCL9ewjZdj9Yrej2bHJJpvubhkSaRn5Y7dPGKRy: '1000000000000000' +- Ae2tdPwUPEZ7geEbqcaNfMFL8EMpeRYAQrHABau6xUmek87xeyyrmPm4ETc: '1000000000000000' +- Ae2tdPwUPEZNHxjww4RhosX3LMVAzbJtCj3vzoQM3wgLwhEHUp13jX8Xte8: '1000000000000000' +- Ae2tdPwUPEZ8cgFfwvjp9t42v3zQE8nCsjxMpDcdcJZzBocsUK2btirTHDN: '1000000000000000' +- Ae2tdPwUPEZK4VrjHdDpeTfSvWMzNa6qZ5erD2aVmU5S3mCeCZsoT6SJ6NW: '1000000000000000' +- Ae2tdPwUPEZ2pEgBhSNKiUXRfhb5p8jByYiJXAsokHdLGMVeqLjHFNaEr7b: '1000000000000000' +- VhLXUZmS1gXFnDcCzVHi2BqhkA1cvDUZrMvGfYotD4eEjKnkdfid7YsY: '1000000000000000' - Ae2tdPwUPEYxYSimKRCvz9iqtsCEAeN6KR7SC1dWFYgCVb18ttTrJaht4qz: '1000000000000000' - Ae2tdPwUPEZ16WMj3KGxQxTtm7cgY2oygWF8Pk1gWRCL9phsawFoJUQo8V4: '1000000000000000' - Ae2tdPwUPEZ3S2LzBCw3v9qm7ZfADBeHa8GjC4g71bKLeS1HJiNPz58efsG: '1000000000000000' - Ae2tdPwUPEZ5MEg5J9CJBuanYyoAeq8Usyeh3mTpAjFAfaMUHErZCC6VESB: '1000000000000000' - Ae2tdPwUPEZKTEGqULNJggS2feij8B5DEkTgvj4pf6BX9xaNWsrk83a94op: '1000000000000000' - Ae2tdPwUPEZ1x5d9EZgDis5f33LKFR4ZrGwh3uhYVYThiubgFSzSa5ZWWjn: '1000000000000000' - Ae2tdPwUPEZLEiDLGWsbGYvnKQbDxJaUJ6PPx7ynjAjnLsNjsBB9qfwD8FL: '1000000000000000' - Ae2tdPwUPEZEMR4QcU9rFCeTK8G6E5ABNAhiuEDzritQarbJ56GBMbPem8v: '1000000000000000' - Ae2tdPwUPEZMgjLUEpnfpbaGrrBc3mcfLMgzT8JL2rsWcE8YGuwerng4JTx: '1000000000000000' - Ae2tdPwUPEZCdpgB296udjjMqK4crPXjpMz9zzzk1QARbC844JqYGygKZck: '1000000000000000' - Ae2tdPwUPEZC7DMJnx7xpRjG9wQXsNtCKvkB5RhDqK9zzra96ugUfMgkw6F: '1000000000000000' - Ae2tdPwUPEZA2Hxg2X94qnx42UwLdnC2vfjSw1na2jcWnS2LjeoazWgcGqz: '1000000000000000' - Ae2tdPwUPEYzwDXTM8VDDNG48ZVJPZT5ev3BGpLsBZqkYeP9Ay6keHQiUHN: '1000000000000000' - Ae2tdPwUPEZK5jjAU6gc8o1Hxk9FGC2JXYR29eRj2zvYDVRy3oJKmzkkWXr: '1000000000000000' - Ae2tdPwUPEZHRYGpLbcxzKSBFmVghBdUbMLD7Z1RP3CaWmE2MfudSCdLERE: '1000000000000000' - Ae2tdPwUPEZ3YosvMkMYRuHAzGXmj9FDZiSWxZJxY2bfjtXQupV6cFufGxj: '1000000000000000' - Ae2tdPwUPEZAUVNwHSzyz3RRhe9hgFNvw6ZBWgusousZEu71AUxwkjTJQXd: '1000000000000000' - Ae2tdPwUPEZBWbsXKZ6Xj1hVqNrJevo1MguQErP7Ekws9Mwe3QyApRbfzuj: '1000000000000000' - Ae2tdPwUPEZBwEwpyZ86qJJ5UcBs7zENaB9JmB1ccKKrjF2m8WqYvRLQTUQ: '1000000000000000' - Ae2tdPwUPEZLVrvsAkoKffT5T2Ny9peTcw1pgDQZGUNuyhsShZYRGdJdg3P: '1000000000000000' - Ae2tdPwUPEZMMcjnYLD8hNzD8rBuQX4Rbwh4Hrri9wo9Vd3QhWgJp82Q3Zb: '1000000000000000' - Ae2tdPwUPEZNCXJnNKSoVwATYNRoehHnwhQLeg7Voeun7aKgw7pBELp9Xyx: '1000000000000000' - Ae2tdPwUPEZMZgPQpYm9VNwW6o1y9gtgmmuto8XxnVzJQnQWNyfbK1ehxhG: '1000000000000000' - Ae2tdPwUPEYx5Boej5GuTgWrL6yhioVeAN9KybWPCZgfbzTNfE4p134zvFr: '1000000000000000' - Ae2tdPwUPEZAGMrgFKgSjDymZ6bRhcuCgK53xX5n7xcDUHC8MnijrSVU69g: '1000000000000000' - Ae2tdPwUPEZL7g7DTRjBp63JMbSouTPJcjjZD6GQCiK3HseKbs2AYHLwcUk: '1000000000000000' - Ae2tdPwUPEYw3nfF8ceQBJZ3zFL4jP9SFoyJ6N1qYTj6fk1SLaxUhrYFqAp: '1000000000000000' - Ae2tdPwUPEZBWq2xEQD7NacM1cmTAvnRdwnLX5jGkBvvZpjBCCaTyVbQyCg: '1000000000000000' - Ae2tdPwUPEZ2BJqnSoUrhVQ4Nf5XmHP6beK1LvYrZFaJqG6PLbHtEKzQCFV: '1000000000000000' - Ae2tdPwUPEZLGkJsDc5t8WUgPafrvpQkTjXhc3zwZfT2RRSD2SCDwGJ2gko: '1000000000000000' - Ae2tdPwUPEZG48xoQbHyjEw4sAz4KFFPC6H3RjvZoqDd7ui1hnBoCZ7hjZK: '1000000000000000' - Ae2tdPwUPEZGjAkaWbCogSWVBjhUxnF2sMRq2QUu82itFU4PAcdo8NkLBGx: '1000000000000000' - Ae2tdPwUPEZGUUmRGEwhKYoGtuqjubky2tQDB4b59RVsEaMedoNjkgBhz3z: '1000000000000000' - Ae2tdPwUPEZD4CQHEa9YBp3FgK15dbM8wE4i6VcZczaUNix8U1rnrxrTBqe: '1000000000000000' - Ae2tdPwUPEZ8uESNVsKkobHzoEZeRpmim475QdWF6CmBdJHWFSJjo9BT5s2: '1000000000000000' - Ae2tdPwUPEZBhxiuQ3tnhdh5mW8PS5yAJ8jsxYbhs6PvYPx11o7eBs2Nja1: '1000000000000000' - Ae2tdPwUPEZGXi9taRWo4pYMMZ9WtvvJme3yhmi61PkZEPUaE5c4GhwPVim: '1000000000000000' - Ae2tdPwUPEZMCPdErTxmgUT4FbQty7tcCmHidJkTAxMpYGF6RYVNkrK1JAR: '1000000000000000' - Ae2tdPwUPEZ92FRSRqV4dz49btBPRJUEhzyCN4Yh3QZmxGjkD18VxtAvjrJ: '1000000000000000' - Ae2tdPwUPEZHto9s5ouv4SQha5WpwNrEERfWQDerXgxygM2exm9MSH972o2: '1000000000000000' - Ae2tdPwUPEYyg77BWtM7HDR9DgtntvnjD5sANzHsXhLSrfHw2QoYnhzVkBV: '1000000000000000' - Ae2tdPwUPEZ1SBb6wXc9WP5DY3PGRyh6puiaFCUG8mvwPsfijvDvE3FtYV3: '1000000000000000' - Ae2tdPwUPEYw7n23qBj9dxeTk6vNjGwzHfSXx1zzG1k98smReGMGZmCdwvD: '1000000000000000' - Ae2tdPwUPEZMsinkhpKJy3yYQ2f486UC1f3iLfeCntEe2AgyWkp3sMxXUZB: '1000000000000000' - Ae2tdPwUPEZ8V56xa8NY8yAz6pbpyzmbnwneqmHJxoHisXyiiDSubsSDqTY: '1000000000000000' - Ae2tdPwUPEZNCgK9K9CD9B6c1BcVMcJbSLhTBwNDWzhQ265zrYEjrV47eeW: '1000000000000000' - Ae2tdPwUPEZ5PXtvRfwrrGa9ZGcmApTwTqvh58QTQANDX2ddLUcpTZnaHLo: '1000000000000000' - Ae2tdPwUPEYzVh39uUKFBSubv4FGenCAEyV2BdKSwCADzVJYKEJVwPAUicj: '1000000000000000' - Ae2tdPwUPEZCT2LnNBam5QjU6LE5VQRS7Z2JW1md69zMvu9y9WMnLwN3bX6: '1000000000000000' - Ae2tdPwUPEZ8AFCshDagF6igZf2bHXixA1g5PdpRvn4KyTpG6zyMzky4ehh: '1000000000000000' - Ae2tdPwUPEZ6nWqtXbKtchU3mpyRtrRZDt4obySFrrR85M4XcN74KTktXKv: '1000000000000000' - Ae2tdPwUPEZMigfySnz9UFSmmMYvRUd2kPadT272pbbHotNVRp2scDyG2AK: '1000000000000000' - Ae2tdPwUPEYxiwE99mBo8SkNPkzPEgrJmZpyXd9RuHWhpGKrSYaxUcKAbYQ: '1000000000000000' - Ae2tdPwUPEZ9jpF2FAh8dxQ3BCWgG19ThVYPkEyMjhThvrhXx8ngBQeHhCQ: '1000000000000000' - Ae2tdPwUPEZ82cmCBfjYq8iRzRWGgjMs7UkPypwp8LiSUJyMFEJGxBr2YKq: '1000000000000000' - Ae2tdPwUPEZ1eMNrx76WA5JBwvxiHQWxM3tNYjpFDnJp9fgq86BHcxqSfN4: '1000000000000000' - Ae2tdPwUPEZKJUFkpxqYrE32biZKQuqgWUdNKhFWbrGxJCnUNXVaxtQkErR: '1000000000000000' - Ae2tdPwUPEYwAGnLtgusi3JKq4mvNqWvY9aztGtLwa22ko3HzUra3hjGXGx: '1000000000000000' - Ae2tdPwUPEZ81XjXQAzpCj6QkV99kgkK46aS4J8xfppMi3R2Dpq4hhk7VNE: '1000000000000000' - Ae2tdPwUPEZ7nPhRYqbcNaaif222Dp9rx998Q2YGYR2UNxw8qmNWwJ6daxo: '1000000000000000' - Ae2tdPwUPEZ43xHeJbzVkx15t8qAhham5nt72JeK6XpXYvm68bfUHk6uVju: '1000000000000000' - Ae2tdPwUPEZD45f87j3XvfwTWfTNgnz8QpnksffePU32ivaifqxcENuG6KK: '1000000000000000' - Ae2tdPwUPEZF42GYPd3j7iw2cCUEMvirSk4vLPkTRdqqJtr4R4PsHSj4w2d: '1000000000000000' - Ae2tdPwUPEYzyxBezBeDqDzfNQ3gzF27LVvAqETTsaw6kdJpTWHCgmPVEo2: '1000000000000000' - Ae2tdPwUPEZGXRwDFR5VCmKCesFgBqgtrADgFo9FfjwSPEAyJvtVfh1JSmX: '1000000000000000' - Ae2tdPwUPEZMYDvawa3S1DCA7eZdhrDFJMXHyh5hpxZJCQJD8c6ruBRanDJ: '1000000000000000' - Ae2tdPwUPEZ8ffskBQYLzjPyqyxKsiNzYbvcJSN9JintHx6V6K1K8aEtho5: '1000000000000000' - Ae2tdPwUPEZ8cmT88Unk2WD5YzUCcc8ifb3SzMQMpj5LS1QgRa7g6kez46h: '1000000000000000' - Ae2tdPwUPEZGqtA4AbujDXkMH6zFZvTjUnRajLtwTCRV39EVdYtQJKrsc8u: '1000000000000000' - Ae2tdPwUPEZ5oH337RvQhYkjaDjvZnK1PKD4tVsJsNKcBcGUWihgTsiVtde: '1000000000000000' - Ae2tdPwUPEZAKA1vGHeZVpa3zhakExJ5utM9vwJ6auahoiCNFf6SufibHpC: '1000000000000000' - Ae2tdPwUPEYxkHxX8KdWAPkfkTxa8kdNaZEo69baccQ7HpRfUUsELigZJf4: '1000000000000000' - Ae2tdPwUPEZHajXavDF4CN4ExxHJUof8A2N2ugdEhv3LuPb76YmgUhxPu8R: '1000000000000000' - Ae2tdPwUPEZGpXcqTCfq9KocPWYgVB234GRUdFVDhnxJ2H9stGrszkZJKTc: '1000000000000000' - Ae2tdPwUPEZDVJUU3NfXH8di6D5E16djtgaFjWm8f81CEmoHUnMwMGGqbVj: '1000000000000000' - Ae2tdPwUPEZAS8cHTvHVwgPoAC1dg9RdTx3nQVam8gNebLYwiy9YccQQuB1: '1000000000000000' - Ae2tdPwUPEZ5hLgiaE7dzZuhqo68xZ7sMiqMGp39auHPcsE1VNNRvq7PnYN: '1000000000000000' - Ae2tdPwUPEZAdY5hGCpQpxT2ReHdW8gd3A4h5CJsedt9SyQeUpHBzzcwjAt: '1000000000000000' - Ae2tdPwUPEZ4afabfMLDJbX7Gaazj71zPpPrLeNywrv8uusU95bm21CBnwE: '1000000000000000' - Ae2tdPwUPEZ7wwdAXP8z1hhMMWNrP9cc34eCFPbvEi5zFm6jDunvFq74WZe: '1000000000000000' - Ae2tdPwUPEZMNyJAuNPb76ejraE3j3vQTup1xRxBHa5fKgzfznWbJijt5q2: '1000000000000000' - Ae2tdPwUPEZHSzjcTUtJGNw5EcMtoYcEMpmdiPAMn1HVzy52WoTtRFpukws: '1000000000000000' - Ae2tdPwUPEZMZLrkwBYumeF8P8eDPzRUWmW2epZRGRiGcvkhQptDFbujuQq: '1000000000000000' - Ae2tdPwUPEZ56rfrz5TdFY1JHnCkTGMWRX4orh6Q1BMmTV5ATx7z4xbFfG7: '1000000000000000' - Ae2tdPwUPEYyV78NYSddi6atWJgjWTpBHC3J1H2ceXzbDd5znBchmyp7sV3: '1000000000000000' - Ae2tdPwUPEZ9jb4o5V26jQKbeDkppnJkgebXbWaabndYsRnXXYVb6weu2BP: '1000000000000000' - Ae2tdPwUPEZHVs5JvSXmYxYvZGHZ8DHoM2zfJaiL99LkRbnvpH3oAVKuoS5: '1000000000000000' - Ae2tdPwUPEZ967PQDmUALkQ7cEuuQVdCQp1iuUXnpbgE1kzamaBJ7qpqkwj: '1000000000000000' - Ae2tdPwUPEZA8i4pSXDVJHTufffv59optZ9CFbfdUgJbHqUYbdx93N7ppV9: '1000000000000000' - Ae2tdPwUPEYyDqAPnJ18XPaTE77vDAeuVa4Ytp7GBNe9PNvNLeLVBiM4jVL: '1000000000000000' - Ae2tdPwUPEYw1wgtGgnoe2NbgfoFyxERny8qJM1vkqCXzkiXipJkJ7qvoR9: '1000000000000000' - Ae2tdPwUPEZHKcKbatmsP23ACD6VVXiNa9czTngsBnHGT5dqqi233xVLcGs: '1000000000000000' - Ae2tdPwUPEZEapggvTWfEx5jK1kkGVYMKeex7DcJVcTgmKxdcUnQXrDho2b: '1000000000000000' - Ae2tdPwUPEZ1NPbZE91PQidZVBafLLco2YnpHdgwTxNPKgygXSwZVq4dgKB: '1000000000000000' - Ae2tdPwUPEZLVnbtDRzNT1WmVfHTrkPs4JG38xNfmGkNWV9WgxYriy1qd6o: '1000000000000000' - Ae2tdPwUPEZHUxRcryapNJoL8Fo6kMGFXsLQSLC3nmhbpz3M6RaT3CcfKrZ: '1000000000000000' - Ae2tdPwUPEZ19YqjHnDr1yckaWEjwtZoaC3HZpVHepyzvcrVFtFoBUx4y1P: '1000000000000000' - Ae2tdPwUPEYxdvmBHt6hD1ra9DwYMUed6VT3aB16DA8VZWGQvJyhd1MJSkE: '1000000000000000' - Ae2tdPwUPEZ5grUgBooGGbBK9yHqdgVTdECqwS2XaeqG8boGBGqCA3nSBDi: '1000000000000000' - Ae2tdPwUPEZLSj5xiNKzbZXQ2ZjKU4JLyfvf5E7dQLahcGZZg4QA7pNVZg2: '1000000000000000' +- Ae2tdPwUPEYxYSimKRCvz9iqtsCEAeN6KR7SC1dWFYgCVb18ttTrJaht4qz: '1000000000000000' +- Ae2tdPwUPEZ16WMj3KGxQxTtm7cgY2oygWF8Pk1gWRCL9phsawFoJUQo8V4: '1000000000000000' +- Ae2tdPwUPEZ3S2LzBCw3v9qm7ZfADBeHa8GjC4g71bKLeS1HJiNPz58efsG: '1000000000000000' +- Ae2tdPwUPEZ5MEg5J9CJBuanYyoAeq8Usyeh3mTpAjFAfaMUHErZCC6VESB: '1000000000000000' +- Ae2tdPwUPEZKTEGqULNJggS2feij8B5DEkTgvj4pf6BX9xaNWsrk83a94op: '1000000000000000' +- Ae2tdPwUPEZ1x5d9EZgDis5f33LKFR4ZrGwh3uhYVYThiubgFSzSa5ZWWjn: '1000000000000000' +- Ae2tdPwUPEZLEiDLGWsbGYvnKQbDxJaUJ6PPx7ynjAjnLsNjsBB9qfwD8FL: '1000000000000000' +- Ae2tdPwUPEZEMR4QcU9rFCeTK8G6E5ABNAhiuEDzritQarbJ56GBMbPem8v: '1000000000000000' +- Ae2tdPwUPEZMgjLUEpnfpbaGrrBc3mcfLMgzT8JL2rsWcE8YGuwerng4JTx: '1000000000000000' +- Ae2tdPwUPEZCdpgB296udjjMqK4crPXjpMz9zzzk1QARbC844JqYGygKZck: '1000000000000000' +- Ae2tdPwUPEZC7DMJnx7xpRjG9wQXsNtCKvkB5RhDqK9zzra96ugUfMgkw6F: '1000000000000000' +- Ae2tdPwUPEZA2Hxg2X94qnx42UwLdnC2vfjSw1na2jcWnS2LjeoazWgcGqz: '1000000000000000' +- Ae2tdPwUPEYzwDXTM8VDDNG48ZVJPZT5ev3BGpLsBZqkYeP9Ay6keHQiUHN: '1000000000000000' +- Ae2tdPwUPEZK5jjAU6gc8o1Hxk9FGC2JXYR29eRj2zvYDVRy3oJKmzkkWXr: '1000000000000000' +- Ae2tdPwUPEZHRYGpLbcxzKSBFmVghBdUbMLD7Z1RP3CaWmE2MfudSCdLERE: '1000000000000000' +- Ae2tdPwUPEZ3YosvMkMYRuHAzGXmj9FDZiSWxZJxY2bfjtXQupV6cFufGxj: '1000000000000000' +- Ae2tdPwUPEZAUVNwHSzyz3RRhe9hgFNvw6ZBWgusousZEu71AUxwkjTJQXd: '1000000000000000' +- Ae2tdPwUPEZBWbsXKZ6Xj1hVqNrJevo1MguQErP7Ekws9Mwe3QyApRbfzuj: '1000000000000000' +- Ae2tdPwUPEZBwEwpyZ86qJJ5UcBs7zENaB9JmB1ccKKrjF2m8WqYvRLQTUQ: '1000000000000000' +- Ae2tdPwUPEZLVrvsAkoKffT5T2Ny9peTcw1pgDQZGUNuyhsShZYRGdJdg3P: '1000000000000000' +- Ae2tdPwUPEZMMcjnYLD8hNzD8rBuQX4Rbwh4Hrri9wo9Vd3QhWgJp82Q3Zb: '1000000000000000' +- Ae2tdPwUPEZNCXJnNKSoVwATYNRoehHnwhQLeg7Voeun7aKgw7pBELp9Xyx: '1000000000000000' +- Ae2tdPwUPEZMZgPQpYm9VNwW6o1y9gtgmmuto8XxnVzJQnQWNyfbK1ehxhG: '1000000000000000' +- Ae2tdPwUPEYx5Boej5GuTgWrL6yhioVeAN9KybWPCZgfbzTNfE4p134zvFr: '1000000000000000' +- Ae2tdPwUPEZAGMrgFKgSjDymZ6bRhcuCgK53xX5n7xcDUHC8MnijrSVU69g: '1000000000000000' +- Ae2tdPwUPEZL7g7DTRjBp63JMbSouTPJcjjZD6GQCiK3HseKbs2AYHLwcUk: '1000000000000000' +- Ae2tdPwUPEYw3nfF8ceQBJZ3zFL4jP9SFoyJ6N1qYTj6fk1SLaxUhrYFqAp: '1000000000000000' +- Ae2tdPwUPEZBWq2xEQD7NacM1cmTAvnRdwnLX5jGkBvvZpjBCCaTyVbQyCg: '1000000000000000' +- Ae2tdPwUPEZ2BJqnSoUrhVQ4Nf5XmHP6beK1LvYrZFaJqG6PLbHtEKzQCFV: '1000000000000000' +- Ae2tdPwUPEZLGkJsDc5t8WUgPafrvpQkTjXhc3zwZfT2RRSD2SCDwGJ2gko: '1000000000000000' +- Ae2tdPwUPEZG48xoQbHyjEw4sAz4KFFPC6H3RjvZoqDd7ui1hnBoCZ7hjZK: '1000000000000000' +- Ae2tdPwUPEZGjAkaWbCogSWVBjhUxnF2sMRq2QUu82itFU4PAcdo8NkLBGx: '1000000000000000' +- Ae2tdPwUPEZGUUmRGEwhKYoGtuqjubky2tQDB4b59RVsEaMedoNjkgBhz3z: '1000000000000000' +- Ae2tdPwUPEZD4CQHEa9YBp3FgK15dbM8wE4i6VcZczaUNix8U1rnrxrTBqe: '1000000000000000' +- Ae2tdPwUPEZ8uESNVsKkobHzoEZeRpmim475QdWF6CmBdJHWFSJjo9BT5s2: '1000000000000000' +- Ae2tdPwUPEZBhxiuQ3tnhdh5mW8PS5yAJ8jsxYbhs6PvYPx11o7eBs2Nja1: '1000000000000000' +- Ae2tdPwUPEZGXi9taRWo4pYMMZ9WtvvJme3yhmi61PkZEPUaE5c4GhwPVim: '1000000000000000' +- Ae2tdPwUPEZMCPdErTxmgUT4FbQty7tcCmHidJkTAxMpYGF6RYVNkrK1JAR: '1000000000000000' +- Ae2tdPwUPEZ92FRSRqV4dz49btBPRJUEhzyCN4Yh3QZmxGjkD18VxtAvjrJ: '1000000000000000' +- Ae2tdPwUPEZHto9s5ouv4SQha5WpwNrEERfWQDerXgxygM2exm9MSH972o2: '1000000000000000' +- Ae2tdPwUPEYyg77BWtM7HDR9DgtntvnjD5sANzHsXhLSrfHw2QoYnhzVkBV: '1000000000000000' +- Ae2tdPwUPEZ1SBb6wXc9WP5DY3PGRyh6puiaFCUG8mvwPsfijvDvE3FtYV3: '1000000000000000' +- Ae2tdPwUPEYw7n23qBj9dxeTk6vNjGwzHfSXx1zzG1k98smReGMGZmCdwvD: '1000000000000000' +- Ae2tdPwUPEZMsinkhpKJy3yYQ2f486UC1f3iLfeCntEe2AgyWkp3sMxXUZB: '1000000000000000' +- Ae2tdPwUPEZ8V56xa8NY8yAz6pbpyzmbnwneqmHJxoHisXyiiDSubsSDqTY: '1000000000000000' +- Ae2tdPwUPEZNCgK9K9CD9B6c1BcVMcJbSLhTBwNDWzhQ265zrYEjrV47eeW: '1000000000000000' +- Ae2tdPwUPEZ5PXtvRfwrrGa9ZGcmApTwTqvh58QTQANDX2ddLUcpTZnaHLo: '1000000000000000' +- Ae2tdPwUPEYzVh39uUKFBSubv4FGenCAEyV2BdKSwCADzVJYKEJVwPAUicj: '1000000000000000' +- Ae2tdPwUPEZCT2LnNBam5QjU6LE5VQRS7Z2JW1md69zMvu9y9WMnLwN3bX6: '1000000000000000' +- Ae2tdPwUPEZ8AFCshDagF6igZf2bHXixA1g5PdpRvn4KyTpG6zyMzky4ehh: '1000000000000000' +- Ae2tdPwUPEZ6nWqtXbKtchU3mpyRtrRZDt4obySFrrR85M4XcN74KTktXKv: '1000000000000000' +- Ae2tdPwUPEZMigfySnz9UFSmmMYvRUd2kPadT272pbbHotNVRp2scDyG2AK: '1000000000000000' +- Ae2tdPwUPEYxiwE99mBo8SkNPkzPEgrJmZpyXd9RuHWhpGKrSYaxUcKAbYQ: '1000000000000000' +- Ae2tdPwUPEZ9jpF2FAh8dxQ3BCWgG19ThVYPkEyMjhThvrhXx8ngBQeHhCQ: '1000000000000000' +- Ae2tdPwUPEZ82cmCBfjYq8iRzRWGgjMs7UkPypwp8LiSUJyMFEJGxBr2YKq: '1000000000000000' +- Ae2tdPwUPEZ1eMNrx76WA5JBwvxiHQWxM3tNYjpFDnJp9fgq86BHcxqSfN4: '1000000000000000' +- Ae2tdPwUPEZKJUFkpxqYrE32biZKQuqgWUdNKhFWbrGxJCnUNXVaxtQkErR: '1000000000000000' +- Ae2tdPwUPEYwAGnLtgusi3JKq4mvNqWvY9aztGtLwa22ko3HzUra3hjGXGx: '1000000000000000' +- Ae2tdPwUPEZ81XjXQAzpCj6QkV99kgkK46aS4J8xfppMi3R2Dpq4hhk7VNE: '1000000000000000' +- Ae2tdPwUPEZ7nPhRYqbcNaaif222Dp9rx998Q2YGYR2UNxw8qmNWwJ6daxo: '1000000000000000' +- Ae2tdPwUPEZ43xHeJbzVkx15t8qAhham5nt72JeK6XpXYvm68bfUHk6uVju: '1000000000000000' +- Ae2tdPwUPEZD45f87j3XvfwTWfTNgnz8QpnksffePU32ivaifqxcENuG6KK: '1000000000000000' +- Ae2tdPwUPEZF42GYPd3j7iw2cCUEMvirSk4vLPkTRdqqJtr4R4PsHSj4w2d: '1000000000000000' +- Ae2tdPwUPEYzyxBezBeDqDzfNQ3gzF27LVvAqETTsaw6kdJpTWHCgmPVEo2: '1000000000000000' +- Ae2tdPwUPEZGXRwDFR5VCmKCesFgBqgtrADgFo9FfjwSPEAyJvtVfh1JSmX: '1000000000000000' +- Ae2tdPwUPEZMYDvawa3S1DCA7eZdhrDFJMXHyh5hpxZJCQJD8c6ruBRanDJ: '1000000000000000' +- Ae2tdPwUPEZ8ffskBQYLzjPyqyxKsiNzYbvcJSN9JintHx6V6K1K8aEtho5: '1000000000000000' +- Ae2tdPwUPEZ8cmT88Unk2WD5YzUCcc8ifb3SzMQMpj5LS1QgRa7g6kez46h: '1000000000000000' +- Ae2tdPwUPEZGqtA4AbujDXkMH6zFZvTjUnRajLtwTCRV39EVdYtQJKrsc8u: '1000000000000000' +- Ae2tdPwUPEZ5oH337RvQhYkjaDjvZnK1PKD4tVsJsNKcBcGUWihgTsiVtde: '1000000000000000' +- Ae2tdPwUPEZAKA1vGHeZVpa3zhakExJ5utM9vwJ6auahoiCNFf6SufibHpC: '1000000000000000' +- Ae2tdPwUPEYxkHxX8KdWAPkfkTxa8kdNaZEo69baccQ7HpRfUUsELigZJf4: '1000000000000000' +- Ae2tdPwUPEZHajXavDF4CN4ExxHJUof8A2N2ugdEhv3LuPb76YmgUhxPu8R: '1000000000000000' +- Ae2tdPwUPEZGpXcqTCfq9KocPWYgVB234GRUdFVDhnxJ2H9stGrszkZJKTc: '1000000000000000' +- Ae2tdPwUPEZDVJUU3NfXH8di6D5E16djtgaFjWm8f81CEmoHUnMwMGGqbVj: '1000000000000000' +- Ae2tdPwUPEZAS8cHTvHVwgPoAC1dg9RdTx3nQVam8gNebLYwiy9YccQQuB1: '1000000000000000' +- Ae2tdPwUPEZ5hLgiaE7dzZuhqo68xZ7sMiqMGp39auHPcsE1VNNRvq7PnYN: '1000000000000000' +- Ae2tdPwUPEZAdY5hGCpQpxT2ReHdW8gd3A4h5CJsedt9SyQeUpHBzzcwjAt: '1000000000000000' +- Ae2tdPwUPEZ4afabfMLDJbX7Gaazj71zPpPrLeNywrv8uusU95bm21CBnwE: '1000000000000000' +- Ae2tdPwUPEZ7wwdAXP8z1hhMMWNrP9cc34eCFPbvEi5zFm6jDunvFq74WZe: '1000000000000000' +- Ae2tdPwUPEZMNyJAuNPb76ejraE3j3vQTup1xRxBHa5fKgzfznWbJijt5q2: '1000000000000000' +- Ae2tdPwUPEZHSzjcTUtJGNw5EcMtoYcEMpmdiPAMn1HVzy52WoTtRFpukws: '1000000000000000' +- Ae2tdPwUPEZMZLrkwBYumeF8P8eDPzRUWmW2epZRGRiGcvkhQptDFbujuQq: '1000000000000000' +- Ae2tdPwUPEZ56rfrz5TdFY1JHnCkTGMWRX4orh6Q1BMmTV5ATx7z4xbFfG7: '1000000000000000' +- Ae2tdPwUPEYyV78NYSddi6atWJgjWTpBHC3J1H2ceXzbDd5znBchmyp7sV3: '1000000000000000' +- Ae2tdPwUPEZ9jb4o5V26jQKbeDkppnJkgebXbWaabndYsRnXXYVb6weu2BP: '1000000000000000' +- Ae2tdPwUPEZHVs5JvSXmYxYvZGHZ8DHoM2zfJaiL99LkRbnvpH3oAVKuoS5: '1000000000000000' +- Ae2tdPwUPEZ967PQDmUALkQ7cEuuQVdCQp1iuUXnpbgE1kzamaBJ7qpqkwj: '1000000000000000' +- Ae2tdPwUPEZA8i4pSXDVJHTufffv59optZ9CFbfdUgJbHqUYbdx93N7ppV9: '1000000000000000' +- Ae2tdPwUPEYyDqAPnJ18XPaTE77vDAeuVa4Ytp7GBNe9PNvNLeLVBiM4jVL: '1000000000000000' +- Ae2tdPwUPEYw1wgtGgnoe2NbgfoFyxERny8qJM1vkqCXzkiXipJkJ7qvoR9: '1000000000000000' +- Ae2tdPwUPEZHKcKbatmsP23ACD6VVXiNa9czTngsBnHGT5dqqi233xVLcGs: '1000000000000000' +- Ae2tdPwUPEZEapggvTWfEx5jK1kkGVYMKeex7DcJVcTgmKxdcUnQXrDho2b: '1000000000000000' +- Ae2tdPwUPEZ1NPbZE91PQidZVBafLLco2YnpHdgwTxNPKgygXSwZVq4dgKB: '1000000000000000' +- Ae2tdPwUPEZLVnbtDRzNT1WmVfHTrkPs4JG38xNfmGkNWV9WgxYriy1qd6o: '1000000000000000' +- Ae2tdPwUPEZHUxRcryapNJoL8Fo6kMGFXsLQSLC3nmhbpz3M6RaT3CcfKrZ: '1000000000000000' +- Ae2tdPwUPEZ19YqjHnDr1yckaWEjwtZoaC3HZpVHepyzvcrVFtFoBUx4y1P: '1000000000000000' +- Ae2tdPwUPEYxdvmBHt6hD1ra9DwYMUed6VT3aB16DA8VZWGQvJyhd1MJSkE: '1000000000000000' +- Ae2tdPwUPEZ5grUgBooGGbBK9yHqdgVTdECqwS2XaeqG8boGBGqCA3nSBDi: '1000000000000000' +- Ae2tdPwUPEZLSj5xiNKzbZXQ2ZjKU4JLyfvf5E7dQLahcGZZg4QA7pNVZg2: '1000000000000000' # Random wallets - DdzFFzCqrht5TM5GznWhJ3GTpKawtJuA295F8igwXQXyt2ih1TL1XKnZqRBQBoLpyYVKfNKgCXPBUYruUneC83KjGK6QNAoBSqRJovbG: '100000000000' - DdzFFzCqrhsj3hDxtjHA5Sbrf5Y5A2ExAgxeL1B7PEetoE8g7yBphmHYGDkKTBZtbVv7TjB8g7Q5rw1kvSjeJwxPXb82W8vw787uqMTz: '100000000000' - DdzFFzCqrht5J1FMoP4G4RPyVcKEn9C9jKNM9VqecQ9HQK391JqypjZm3uGuLupVzEXQcJTRfUoRn3UfuKpeNEjzFXtWA4uPMtZ5fxbY: '100000000000' - DdzFFzCqrht5R7SgpmD2TffGXEJ8CoP8HfvHFWt1DM7Rd9WQGyxungKWuCKy7PampAtbWiDvJoyR32V7jTev1KX4CfdEyHyfCbZj2mUF: '100000000000' - DdzFFzCqrhsiaJWtv3KgSyE1APe9v1jWcxaSyEPsGtBbrqiddWU8cfVrXamwLuyypo3Guv1xB9ZTzoqs2GzWJ6u5j679SkQzoUHnEdH8: '100000000000' - DdzFFzCqrhshSUSN6x57Gf4AeAWzkvA8Qpsz6xbXheGWhnsvsnQ6omxNwww6AtsMvF56NJ4KZ3DCeoYSU9G8pX2qbSMHWJGkTYy3K2oL: '100000000000' - DdzFFzCqrhsgKk79Wo42Dm6BszTkiQiJaADLvwB3Bc94wyrTb5EYm4WdBkNPversvLuRELokqW5VQkLBvVdDTofd1DHPaw6LGCoaQK8S: '100000000000' - DdzFFzCqrht3fc1oQvUoHXSLLGj3woXdUM8fgBBNAmSeQ7XxtxKwEcTAn1TdLY3S7Tu9gzLPEXVJChBRFDWvVUPWmijZnSbrddDdBB6j: '100000000000' - DdzFFzCqrhtC9sDX18jdj4zBUdLpmuTiszN2ZofWwVv4SXHA97frgMjPFKG6JzVYbyk1AVks1rVN4L3jg6yJCB1rLmFGakVRxsR9EuxY: '100000000000' - DdzFFzCqrht3jJoG2rsUSjNXyLSfSHPj72HgprsNWbjSEGx3Sn3R5qDkUZXEPwsfYTBpRgYCP7D4YuFqsG2F1cV4qDUb6PTwMtXUWd5g: '100000000000' - DdzFFzCqrhsrpHvUPAeXYF9Fhza9tp8V7BqsouT16oXd5ZyeZSr1xf2wBrVgK2RRLLfyPqViawhF51eHUSp4ZunW17tptMYjsYegRKtX: '100000000000' - DdzFFzCqrhsuhKwzvsPXrk4p2hVnwnpSsfx6Bz8YDdPkPNXRK3syiwnZ9nUi3yYuSyaVbxx3cnXcKZJePaAYDW7Gir6Bi4oXUbU3R8W6: '100000000000' - DdzFFzCqrhtDAsADG8aFJ7czQaJhT4nZeVQ52ugZg44AJWqsESeX8YewxeMrNM65GfmFDH7ByBeFETUQSejyq9RkfGHEL21CDubd5SfS: '100000000000' - DdzFFzCqrhsrRn9QpkXseeeBP7DphvLpwpfoY2o1dTPhsvnkfrPGo8P19BK2p8vB8R54ZkFtvTE2D7gJ3kQLo8vTbQhX8CbsdGeiidAb: '100000000000' - DdzFFzCqrhsyZp5ktXWS8KzE73q189Aj7YUZXuxfCPZybrmwFWQZw5sSPQgRcZq1xBodta8u9HnAYa5UMkiDw2RpAkATUNtSTqm9c6en: '100000000000' - DdzFFzCqrhsvYScvLTuKan1LGWeASqhR7tH3TJgniMQ8wHKtpCTBowAqSVJNwvKV7Fchd7g73iesAyQbNk3RRwmjStoF9RpTd7cvRkCJ: '100000000000' - DdzFFzCqrhsgTJYs8RaBJDzyd9zG5WPZxCu6kgkSL7juEU2nNd9CiRbDuKFQmzigMAFtDe2uEuTbgpnTe81vmesDLh4XbCbEowH1MRjw: '100000000000' - DdzFFzCqrhsuCfwXNUmgU5eyJSdvLCH6LvMomQ65JX7uAvkaZ9hNkJ6xc7t1u4qpwpkJkSHpcWPGYTb8hBLCu6YPvxRFycQjvdvJT5mp: '100000000000' - DdzFFzCqrhsmtYhQLZxPFiZv6Uzgxx2eZZzPm187osgyZWKKjXsLbGdTUpqkKiFxBHMyG2hrNZhY9ZxdqGJgEmHidSSyjoCZ3aSfNnAm: '100000000000' - DdzFFzCqrhshdpXiZtGiZsSYAvmxdGD1wZoc8HVYW8pfLd9sQHAobJZ9riRLU2yUh4Pi3jnnvVJfAgyDdyxWmN8WE7LCBBStKQfCfca3: '100000000000' - DdzFFzCqrhsuUXs45RkH7SyC2zXugtRW6f6FwAH6Nj8NpppsyR1NFSfGRMQFegpPdvEEXwHJXnVVmWC4J7CGBfc1EjzLZDd7fwcuiBrU: '100000000000' - DdzFFzCqrht1wQyixEJa24mnaSv4v5XSvK712p4Vav9ajdUSQuH1vdJefTJeLgRLmgS35HYtB6icd17Lyk3g7vrHEv6XHEQuaJZe4phJ: '100000000000' - DdzFFzCqrht782JAJPNgXEUf9u42goY2WFH4Abtu4KUKM3dJ4GSnHH5RWMQ6Ff27cq467VFwa6rPvEqMBw8zGNArCSKbKcFjukKVkDmE: '100000000000' - DdzFFzCqrhsmvpq9C2QDkKm8qGCPEKx5FapZ3b2j3z1LDCRJvGxyt7N5fs8asPZPFVwgSqBhfiYRZZ95qx8rnmCBQJWDRJgnoWQM63ja: '100000000000' - DdzFFzCqrht2B4h3cgpT1rJZcqnhB9DdyGXxzGG2YeqiJdnjC4ENwf4Vz2GtwLSvVum3ykhVm9HfcbwFdVJZibQaWLhfi9tacVwjgnMu: '100000000000' - DdzFFzCqrhszv9yR8BRkFfJ9x1V67S9g6fsDsvgg5Q9SHQjczBEmapSyxMF1WZxbAZGEHcDHkQPDxCnRD5GdTwkixMA58ENa6zHVT2xk: '100000000000' - DdzFFzCqrhsx1Tg16KGnNgYL74YjUJkbKXJfDsJmvwR7yWRohAeXWfZBiEuW1XAsGPBPJ3eeeQ5Us8PwoiHuxMK8xtf269JcaNY9fCNL: '100000000000' - DdzFFzCqrhtB9kXoB8hkqqDEVepjN7iLEbrZ4ev3Fzc2DtkwFDTx5yQUQ8HFWpa1SX6xa19zJoG638SwkXD2YRZ8BJmKzmPgezpPdG1Z: '100000000000' - DdzFFzCqrhspENibdKwdhJY29iCxe1FbkaRYTCpvGUKD7RDimWTSpge1TTr5vUEKAq2fUomK89rJ9Jm2zAxhPtwkT1qH3QBQwuMa6vXg: '100000000000' - DdzFFzCqrht3PXq2rbrSWPABrzcR2ii33duy2XrvNCHFnipHpUEFmA92dZQ19J2hyKmLPXx4zNwyfJbfxpeTek7HwPGNGbMqURLDXKAh: '100000000000' - DdzFFzCqrhsuvjFmqGSon18Cre43TkBapMjhXMiF55zYVXDSvBNmgFfuV5Sd3NK3zQ8ADJWwotoCC7R27xk7F3mV3Fqpx6YLenjPfmTT: '100000000000' - DdzFFzCqrhshH6MA2sFv95TwnruNgEc7EwMjJHaA6ey3mpXq3cNaF5gPVnwUfhyhHt8wDGN9BjJ1VnEYWSUnCKHwgkvDzzoRioB5eaVa: '100000000000' - DdzFFzCqrhse7GJDZdrDFr8rwkYwKqQ3AnDFDtKWWh4PKc9bjMZ41mumvpSPY5fTogmsqzV389Xt5SdwzALMHsEKsAQ9majAboxF4PKz: '100000000000' - DdzFFzCqrht1g1paWFHdY34u5AJvVy8ojNeRC9aSFRCDbMYZA57CH4UMQR9XxzmpH9bYJM65kuq3K7BPEkKAmLGG6szva2K3d4BVumo7: '100000000000' - DdzFFzCqrhsnXxtUvNRmvUstDgjcePy5wkwgA5X42qxY5iVNc9Fc9rZ372yB6TJ3ye4zCbrBhMsjo671HweGFMPHv1bKNJ5ecH4xxfPi: '100000000000' - DdzFFzCqrht7t6dt967aaCZU25KdhwQLWGnTXw9zbq7DCnEfsfhz8WjjTQFaZtiG45DUvDhn3wHVYXgFWcJMqycSoT9JvpdMUE2J84Pk: '100000000000' - DdzFFzCqrht2XhxfHjuSFL9fRKtc6iLYVwMMeyqMPvxTLtKcNhNyXGrU2hM3TPs7AqWaNtDtVPr6pjjrNfJPNAwcyAFfPCRN1igBSGne: '100000000000' - DdzFFzCqrht9UvbfWbC6jt5s4eNz1v38zADUSZnMQoccZFGevc44fAH3RcdrLtqbyaXNPLY9UoZWKu3oLnAPKYvPz7tV7ac9MPXHHdWw: '100000000000' - DdzFFzCqrht9K9NJskUq7LUC3xrAgdAqUFhXxY4dCZh2BFNXgDU7qPBqisum3UMYLSkBWEQUs8VsFiUmmFBoVrZ894PxAmuQgwnUMQWK: '100000000000' - DdzFFzCqrhspvhpBXZTCD3pKyXvSVntAQQTKYXDYb3KPb5bCKvfsXqsTKqVephRoPViAfPwdbDR1yq67BRvF3DabDGGSREkQ7QvqF2Ps: '100000000000' - DdzFFzCqrhtBQwqcDSEtyMUAzvZPyGo7iasXiCJrS8GDwPXbphxVZf6Wc2kdNp17YLeMMj3rioijxNKxK32T3iTFohfhWZzfuAxoFeNy: '100000000000' - DdzFFzCqrht3W4KpoP8CUEiiXrdDjVXMoSWmuDrErMcbQRTeYWkPPkzuBf7mGNy8sHS7QD4bhxGnY6DagY2rd7PoN44yyCfB8ELp6cP5: '100000000000' - DdzFFzCqrhsoX6VN5s61mmoX9UoQmpmmrLx2vpvF6oVby33urnyTipUpWUvq4kcKPE7YsPjWpxKUdwkSexqDCaHE4TFbXAMPPmysbZAt: '100000000000' - DdzFFzCqrht2LtZmni99CDoNL5NZd51DL4KzukJgzCkJv4uGSMqZsn98h8C8EFg8CN6P9esADw1HmYkcwhUQ8iQGLR6Yp8vK8u3PQpvS: '100000000000' - DdzFFzCqrhsmXKnXnNqMjXTvQ7ppteSc3Qg6YxhhZjx3QzXpmF3PcrLyfSzp8augogfNKaX6dzqApAcp3CFy1B4WkHTfetDg27KDs1NS: '100000000000' - DdzFFzCqrhssT43cdYzXE2A9qSo9GviGqS16LveBG7k49ph3f2mfUbpfoTP7PMy5EbuLiPbXHWmF98DBQEL6JqCoGEYjXcZpKnvJFs8N: '100000000000' - DdzFFzCqrhsiNy9NZEoFSYrttjT1acFxZQjSayt3rppQfNFzCrEE8NQYDa5ktMZTq3MDhTtjAXL7Ua1rWYJSFzChUmcUWAGHv2tUSW4y: '100000000000' - DdzFFzCqrhsmb7utbmSRfK5hL5i9Fq7mPmcpoSSEDqKZqSewSMYtqJvafpef1x4zxAjrSWU8zcv29g6tUPgH7BZAzpzcp8NAw1ip5v62: '100000000000' - DdzFFzCqrhtAG9sL7jX2QfKvgHsLwV7G5mWa2mLJsbmaC5QrHzkatn2SABHKNMfcoPERQqUwWHGmrhJTEDxLQVvTJFFTptTKeUoLVSZC: '100000000000' - DdzFFzCqrhtB7BvDH31vkTyMaAdiP1fUFA8KGAG6FkTQQETgxrVWgixRzsyHaJ1Wg5FFPULXRa1JQo7LbeafGwguWe6QkAqResgBPbf4: '100000000000' - DdzFFzCqrht4QogR1CAGxFTib5LunkacDu9yPncCXFg9YG56sv8dUtcpTFkn7PgDCGsdWSCyvXzwwLfa7zU1AWp6fNuPhHsRZGqyAqXc: '100000000000' - DdzFFzCqrhtBhnkPNQbCBnZzUMGQTZ4U5KiHmdf7vfYro2DEVvoHA39GLaCAtmEwhmS4BJ6L9FBiDY3WGB9u3qzMctBvwTrmgtXK9KWZ: '100000000000' - DdzFFzCqrht2qoGkJbAvSoWmftXfW4AKicxQJbz9gBBgBfaoUEW7aaFSHgk5MAEPiEfdantMNmB3YhggrdGSNQajVQixr8gZn2NFkYXB: '100000000000' - DdzFFzCqrhsjNsnvXCxjqED2NQoN67qHPKXuX1Q8uw1z421ph1kqbwFitByMU9MxpzuBHhU9EqCKJSa6ZTpxn9sxWcixcCEgJKiWtwcb: '100000000000' - DdzFFzCqrht7eewmhd5drGkiQPZ8RPTebW2diqNas8zNLZFw5xRamwFwftbSjFz8zCsPoZJzWckqDfC7giYu5Z8sik1DeT4Ld84LToM7: '100000000000' - DdzFFzCqrhtD7EDyMHr8BTSoJtrx9LbJA9aYX8CFhqoSMKY8PZjGZnMJVY2EaWgW36cvcvejWi9t7f6r8c6w2BjesHHYfXAWBd7PRHu1: '100000000000' - DdzFFzCqrhsfxq5TbeLihjwYQhAKHahtRdBKZNgEUeJ7xe68RTU2U7d2NmtCpeNG9UgMaR5zjsuAbpAgUSbb3VTJMTwkLxoq2v9fzrb9: '100000000000' - DdzFFzCqrhtAV5NrHQps6M5sRnfDXgQnPxqbxiXVaSrAjXg7rHLjC1JfTpFcMM67rvzjrfHHWjBuSMVnA5ZVx79zqJ4gcDyZirfe7V8X: '100000000000' - DdzFFzCqrhsioiAtUjCJs4aRcmAn31ghqmsLxqrrk4eu8ZxM9zqVG1wGTab7npn7zfhpgB3MzjF4Xdhr3iTRRxQGN18LhpkxvyZwA5NH: '100000000000' - DdzFFzCqrht84M49omXJT2wUystJu1Y7AVJvhgBYLRTZndNNvp8kxBkBSmszji78FzAcHfWmHayZpKPzH96QctEfjNQj6KmEgAWNCwWD: '100000000000' - DdzFFzCqrht57eZDhmXBWEQpZCxVEegTgmbDNGn2ETJEjwtQJD3HappzpBEDVJEWz7Np8CeGGm1MPaHBrN1f2ET4vBm3BmxytCATtow6: '100000000000' - DdzFFzCqrht4KjpLrJohdK2qqf3ABPLzF6AwWqPA5jfQAVSPfokxM9rzm6nr9tdd6WSacyaUBDDUpnUyYN5dvVJi8dLXUozZa1xC4vLp: '100000000000' - DdzFFzCqrhskqh2LiGzRYFBVPhBwqzqedC3KCMNZegxXB2EzWKhdfryCZeKjrMGx5a51YEjKgcHtuXw2hBT4SZUsKqoYykvdZN9xfr9J: '100000000000' - DdzFFzCqrht7LeAGngeyj9hpG5ZRjdDhU3NzCtEsEpQmmKmAMq1NH18uN5zfZaVccPyRBZqmsRi13eH5Pk1aKkhiwHwH6m1kq248Ddjj: '100000000000' - DdzFFzCqrht36BqnLDbxFKHXHpR8zree4a5qw7hR9oT3gzygGsrMxShQ41JevQiTgobv8YaNVCiQhXr9c2rycfYHnV6w3pARbXJ8JTci: '100000000000' - DdzFFzCqrhspgHBe9eUmcDt4o9WCsFM6GunqnWjMfNScEQasrmikoCe7N15KREgb8zfVc72S65oNHwgMgmibN9S4KVaNCakFWBLJpUDp: '100000000000' - DdzFFzCqrhssHyhhWC4XpRrbz4v834gYSvZbNsPMSFdZKRzgp8zYWue4jxPeX4eevMt48jSidw5Yr7hCfruZHFMKvLJcAiP34dvqnNgJ: '100000000000' - DdzFFzCqrht7cRsCug1zdvgQXNA8Xd3u8RtQTUQNpXWT5hZvBaT5eQeA5y33BT9oKifrFiDACmqjZY5EzMG2ru5XXRH9fmjLp7MFsFby: '100000000000' - DdzFFzCqrhskfjCZMpoK1pmHja9bPc4bpnhCPrxyQHAebwmunyy5heefMNFSQwXDRgFsxh19zJViYtSfWiWCRURbcLFF1MXWMQsPuUGr: '100000000000' - DdzFFzCqrhse3jqmUbLtaCGk6smPESyVz9DvTEs5aQjvPraHWbNaBRUXe2AMCwqHGb6dixbCgVeTGZsQWhfDz8sN34D4PrzXyTXofHDx: '100000000000' - DdzFFzCqrhssUnqD4WScMCzs6i2DFs9xoVDDtdkiswVR91MfFvzP4XE6HKGidaPvx5YFdXddQ2qfEko2gpL2enrXSJvrHx15f6ek4nQx: '100000000000' - DdzFFzCqrhsrFW7cw8d4iwUABgVdzCUjDfRa7d59bMJ8ySKoGnit3MZSmjobCdb3MDDmhwUBmLcrgc9DYHNd9A6Vugh74XZU275SXiyt: '100000000000' - DdzFFzCqrhsrgynva2wmP9ZMtR9VVCDVMC4nmUgz3YfdrM6csPKU5VLzW366NN971QAiSeMnKR1XjWPQ79BMzBh2mTKBRm4hP2vNcmhT: '100000000000' - DdzFFzCqrhsgAiK5F2axtBqRcsujv7vdr2R184ojg4UWe3W7FXYnWmqsCHwJWpY3P993CTVPwoh9p15215pQhXRP7xRtY39kcCvaCJrA: '100000000000' - DdzFFzCqrhtBSxx2SGmR4UoJ1RUKiEzcyetmU9KXn95eB7aE2BE1WY9YsfkjvQXx1wAbCWUrk7bMbcPH5Cxm7EnfRoTSHuDzqu4DcQSv: '100000000000' - DdzFFzCqrhsnMtZDbJ5e5Nk8QgU87Kny15LtDMxcbRA5gwksCVmS3G7jb81rk9sRhrpeHDpNmvBpPB2dwg8aqTwDZba5RkLZroLRXjY9: '100000000000' - DdzFFzCqrhsuyAfgk1e1KwCqC9WYPdoGXbHQRkZiHXgxwiESVShHQ5j6FhV4G3EmW2bRZFY3EmNdzye93aRkXVw7P2GzBxYkSt8Ninat: '100000000000' - DdzFFzCqrht2JE47Cpy7TWnnFDeGypCxJ8myjG4HCZRr88ZAsLL3sJuVa1yBpZBRkRuaEqhUB9T82qvgD5jGzWCqk1SjWVRHrpVcXra9: '100000000000' - DdzFFzCqrhsmDbBNsGTm83q69zu3RPYkuREcT2XXv8vEiyJgZhmNf777AJ5oxjCLKXf5kANFKEtiyboEdCiiNG2uDDU3WCkU6CNRKNVk: '100000000000' - DdzFFzCqrhss7raQK4JXu4abQnULTsoP7JiEVDZcnZ72bzhFYcoAY23j3fwt17mPMnFcn9PhoGVEnZZV3GnkTrDoZ1gJmnKRPuZVoAL9: '100000000000' - DdzFFzCqrhsyF4quuYiAXmp1vfiFhhbcxXniypiSiE7tnBraPczHxcfBP5B4yBCyeaYJKwG2N7U5ujjoTrvvJCfXJaHLbfWg1nnm5ajb: '100000000000' - DdzFFzCqrhsyiAAwKP1fAhs5wihZ6dSEPf1oE2YG91C5vDWS3zwnXA8GUVHeoa2Vr7Y1ibHneWA5TxR7bQvZT5MSM4RMYVbBNbkBduWx: '100000000000' - DdzFFzCqrhsj39Ged8WpW8WTTfXn9GPdQmS9CjL4ooCmB1dgBQABFjiX3tm7oZ6qT8UWyjenG1M3j9DFqPTgXkWTBsyfiqL83hMXJuDu: '100000000000' - DdzFFzCqrhswiRMQc9sB3uW4CFNgMKc2PovFhMJm7F1A3gmTfWJgf16deq97qsF6f2gGiGjyaWdGAwnVztma4m5XzeoMUJnj7sk7vbj5: '100000000000' - DdzFFzCqrht58AUUmjsBjCXk7XYkT2cAX4K6AyfZPZkD2rRAKaqFEFy9QaYhQ2CDYaHZ8DAtbKXGFFnqzS8khah7CWcWZHyrDo8eYiQS: '100000000000' - DdzFFzCqrhsrK1QzPNAeMgGrCE3zUFs4GmDHhHHRev8cackbf3mbuiGTpX6C1r2fpzWjtwaBDMhcUcYPiBF2w6A3dw7br4HuSxLho42L: '100000000000' - DdzFFzCqrhsjDZirn7o8PeZrrwkcMcB4hmTHCg9t48rwZLQMvwn5hsX19yqvnVzGbfMjZ1UN4tHGbLeoXSnioTv3CYbvnE3Sn61TGuQA: '100000000000' - DdzFFzCqrht4rqa7rBzrbXRmUDvEghRBC8XqxLtvsDaz4uVrQ3zs9gtgiw2Qg6qWk6ijanwM3pnPk46jEJJAktHDhQrgNk3iTh9BkzPL: '100000000000' - DdzFFzCqrhsybR9KyLbQjDymLz3iUZMHjyniAgiPLSJwmnRcA6JVyH34fAZZkvX6fNVQkxiZoU2i4FfN96NucWqL8bMCnQDHncSJd6oN: '100000000000' - DdzFFzCqrhsjpQsHgvWQTaVZx7EgQ1VgngEXcoPCm8AAyoitQR2GRuue2JUoSvbaoEPpsoUSQqA3NR9gVMKYjNivG9XimFPgeDMy71yo: '100000000000' - DdzFFzCqrhsyiTnBicudK3xgsfurYhZaGbUu44bPyY3pLqDJdqf6pBePqtVhkkYnATNq49VQP1v1RgcFTfXjC2XZV1X4YYFdNBfeeNDf: '100000000000' - DdzFFzCqrhtAnCLaX6TVTUKyBEhchKz7CsqApuZX2AXsWV5DuAm9MPcH9mmgFCBSJawVTXvQrLp1g2kLdmWLNHLt989LdZ47bfAfcDdV: '100000000000' - DdzFFzCqrhsiAEyhnR6iqQfYoT8mDFJZPrp8HGmSmExU2VrdYzrdSHumSgrEB6enotFApCKYwLNojgWFgPeSizLdKxQAwAbNicAdEpMi: '100000000000' - DdzFFzCqrhtC1ABHDxF8wjtP2tqEQXM6kNYEfteNMZ9hHpzejZtWGaFibGXjfJ2RkqQSqd92n2qCggNHkFAcgrCKD8yezPZ4VJYwxzVZ: '100000000000' - DdzFFzCqrhtAfgScY4gYasbf2XCqFygcDThwphvj8cp7UfYxuJv3BaGGk37i6yNkZEGTAHTWbyruQEBSNGKWrYCmxvY3LUEWprNhyrrK: '100000000000' - DdzFFzCqrht457hNzoa6trXPNq3GYP9v8nzdBedReoMxYZ2zxWjRTtfUbcviPsYtiQ7sNou8p7jvLzQZT3v7D9PSjd5ypa2c26cmC7CE: '100000000000' - DdzFFzCqrhshQDFiDeweJFq9L7hbtFMedMtjTcstJTpNUprfGfMyXorEaSdFgsAC16AmWGQ3ZkoMNrJtniGWSQMfBMrrejjzPg4B4Jxd: '100000000000' - DdzFFzCqrhspbiLg2qHfmJvJFjQTiXgbwdzYFHE9zWuXWkaBCK1ox8kG3oUSaRT7ZZXo2nmt9uA2Q7u6PtBUQzwNoZrswajApr7wMCMX: '100000000000' - DdzFFzCqrht7PwCwS3E688NQuud8oLNYLP9nYXqqipvXnm1xc5HtddL64fLtfuVeUiRUZDx3JftfvCQi44WC8h8L4uaEHfcTf74hM9WC: '100000000000' - DdzFFzCqrhsmen6yqDxHMrDwPppTdkwy2KY2VwxvXqFLXWaii9s57YTqFh7xeUN685e4DL2YxjmoSrQGramxgaA4EwKLYBhG4LErDCN5: '100000000000' - DdzFFzCqrhsvdXAz1SJakLthTSFRZUFtN8kLRMuf9jwRKgH91DLnmKnGWWar8xJhsSLS1fnV46WfQR51nJ8TUT9vAsWzhQJXRM7H1hwS: '100000000000' - DdzFFzCqrht2DtsCFb3XBfpMjbwVRsFgWpYw8G6PQ58yZ4P5FeczYCJJgXgnPgE1oovbngLXcq5kEK7EzzNvBf6fe1HhpmPyC1sdHQkL: '100000000000' - DdzFFzCqrhsv3BrjfGXmu6skF8PKRpWL9zjHqD6bhFPHbFF68vG8GzofiwNBnhwaYNX3eQch253KFPXm3xhuNNvU1U337HPdQjhbCC54: '100000000000' - DdzFFzCqrhsqb6h9YtTRB5p7dJNEhCHt6GnCjvdr51LoMc836NgPepYHu8vXAuLNrbxmMW3rz4LxzG57pB9CbiuFqbztt1ZMVH5p7KD3: '100000000000' - DdzFFzCqrht7WSNSBcjzaZKWnwpGLQZRWrHCPx9cAtR5FPrWesYRowz2UZSjpr7gC9BfT2A42JmnmNDVv9VrLvJZbThfVxrW4i4vbLzB: '100000000000' - DdzFFzCqrhsf6JHsDi2eaixZbvARSNms43kSYwP8segyCE7vPmxCF616aLx9zSB1rD75SpsKo1AsBnz7SoGnLU9viravqZMGwpTQHq3d: '100000000000' - DdzFFzCqrht8HsQRv3b79px7C68r2gewt7Ej2LeV1rB4nzhYwhDdrgxGvzXeoJiPkgYRCj4nCcKU3MheLfMvR7aL6oxc9VmViyJMMNpz: '100000000000' - DdzFFzCqrhst1pvkm5Fyvo926mcLxEhd8VRBaetNZCYyiEZnLmV8euYvEYQxvYgzoW4b2ceZqb9zWXYeDcMwaSuj69Pd6LGeuorFVT4B: '100000000000' - DdzFFzCqrhsriKxiH15F7CZTvwFDmBwTQMxdbZaomXhE75Zcg4TH14BqxUh8ztnEDEeLx5AAeZHNt1aDp5UeL9112PCXRp1RJGiiWY12: '100000000000' - DdzFFzCqrhsy74X8fHcNx9C5owuY1FFA2a4Rf9KCwZPiSiKgNWpK4Nm3sXoN8kQF9nKFoLQcom3YJoFeda6D8woAJKFrkDPcnYpSBrsy: '100000000000' - DdzFFzCqrhsoMYShvsYzCTW2DpA6vdQ4HZaDa32hp4ZA8wLLgdxzn3hjTFufb4XA9rGaq9XdmHTSHweL8mCUjgyVZgSu9MGS1xPgpyZi: '100000000000' - DdzFFzCqrhsmV7MBQZxxFUoDE3W76ni53TzC4tdhmGsZRMzK33JmBbZrxp5u54PEYk5ikPHhfEDMH4ragbdVCUufeiU2v8N57GQseWXq: '100000000000' - DdzFFzCqrht5hU1bKC1krwBPwRfbdCdKtHqorVjUtXenrnngZTabPLNMLsgixvMho1hcwJF3YNVj8Y2wuGKApmpXgbmdm7iSzoT8vgdr: '100000000000' - DdzFFzCqrht8mYdcrigMUgwZgCZzwisotuAK5CU4LgY9uaCawGFU3wKaqsXCLo3m17GZLgeCF5ypDMNHJAbPZKoZxH8kEo7rBUTeMTZk: '100000000000' - DdzFFzCqrht1173DMt1FrRyzFSzSetP6GpyH8Qf1dFPmzEf9uU8dWpmk8P2q1Fxfge3UCBpYQbuZbw4PV3q5kaPZMquuL3g1msPZnJby: '100000000000' - DdzFFzCqrhswjgRpUTisLAKNdGwebL1ghfRR4qD1RkWYE2n7AgHAQbjz3ARu3FoUBWaM7fcA6xn1g1PuZZwZgK4XysndxSnvuf5WYLzw: '100000000000' - DdzFFzCqrhseRdRAWJKDWHgSHya5oXpvzNgjChT7JvvFBUtTbqVkZ7NS3GRJMB1Tts57EErJNgv89jxy5iJX3xQcr5z5NcHo43arp1MT: '100000000000' - DdzFFzCqrhsxRLLh2j7DpWu2EycxeWsUKgC8UJNkB81caHN3FWn2Fh7eN7K7VVjCagEWcCqAzn7LGJPqXzHzbMk4Pa2VxYwy2KLYDQgM: '100000000000' - DdzFFzCqrhsvSrFJ3Ue2aVzfkSaMF7zy1VXYrNvF8PguZhzhFwbQoyL6nqurv3rMpvD3CxSS6wU9qhpnMqgysk9Cb5pTuhgL3r8C6yRL: '100000000000' - DdzFFzCqrhsgRiVjpHSfcD9q5qLvJssnwmJ6WVQQwHfRRrxiuwpUkGVDmAP6XXfgaYVGqAyANZmUJa6aTV7m6hBYApBCHhzEWqJhmeki: '100000000000' - DdzFFzCqrhsrJdmtGJacDT3FniJ1LXtnxgdKEXm65mDhub2DDWxDXZCZNZ38SHJEAvRLrMZ46ES6tXBwfCKswTYq9BnJxXAKiGPP8gGE: '100000000000' - DdzFFzCqrhtAkyz34omL7tXaWvrHPBqR34cS9hVujo62Uyj7eubAePLDRTsfrAmEVBxHq8GV6ADybhCC8idDRyhCvxuW7uZBSFapfAKo: '100000000000' - DdzFFzCqrht5ZoCC7ZLVEK1KDvfVkTvkRkGQaCBmBMsP7z3Mnm1w3an3hVAteXpNJPjujEn5ZfWh6Ei1G8v2Ak3X2LohiA1nyGxbRiKn: '100000000000' - DdzFFzCqrhsidUFoGAPCnjxK2cgn7UdWjGFRLbFjjdWnzPGKvskC23NF7VvWpuw9nB2U5XgMEtmDkZxsLmC475zSXcRAAFQQRjQWAH89: '100000000000' - DdzFFzCqrhtATtiyKvxKUdJDiCwN8M7Xx1AgLUV1eJcCGEJgaTQn6mxWfqz6FhDF3uA61KBK37Eg7Vi3xXrTNk399zD5GdJsmyEmYJVq: '100000000000' - DdzFFzCqrhsk7YpKzvC1M2PUdhSXFCezLXAZEP2THzjMQ9hmf3XxsFrv2dn56sAygQ1n7tKjKRzsSF74Lo6LfXzr1Lo1ahDUst2CtgJw: '100000000000' - DdzFFzCqrhsiCgr7CZiyWH6W6tyjtvtgioRozyXxbZiJRWeoFbDjnYoWJHewAzG5KzShpziKPB4HwkePga4vC3U9UfRmJnt7Qe6MwBcR: '100000000000' - DdzFFzCqrhsgdPsjZ5m4caLfiVYnkr8YWtkYMwRVhUZ4eP2Jf5AfxyMUKN9hfi9pYQN3T1kUKJ6DWYQWGn8a2GhtH7WjJrD3d1ZLwRDA: '100000000000' - DdzFFzCqrhsxaar8kBmcyRyFX52rEh62UCDT5K7ygP9Zd86E2DVj5oPzyt9sYwdWanRVJpo9z9JuebxBqBoLoSiB1fSPW7R4gvBxsdpF: '100000000000' - DdzFFzCqrhswDdTbDRGPoLV543U3f6uQ3HPSaCb2cEhJtTXxnTTz6Dkr8YmdmxB9zLem2gm3nLnP9dmhoiLzABBTr9JYd2xuQmzzm7Fw: '100000000000' - DdzFFzCqrhsonkkxuu5cjVich3NJ9paVDNssBxCgWgCSV8eK7ZQkaJE7fnbMkBvgsxFDVo6L64FAVpWKoaVT5cjMQm6de5wDD4Z8cNVy: '100000000000' - DdzFFzCqrhsjTdHd7rTBC43Fic5kYmcT78SrgQ6Cn51c6vpf8t1c5S7LcnLJnjRVeVVEz4ykMhKPcmGhKmzA6uZkUP4aTkJtCfTJ5LoD: '100000000000' - DdzFFzCqrhsunDv3V1z11dvdjGLb46Bkfbpqc9tqxJCxDraPeFNi6Kz3KckrQqfJ2TmWifdu67X6Ai9hzkALpEbn3v9q2BasmmRnaGri: '100000000000' - DdzFFzCqrhsforRn635ApD9XFg24kRkhgLakJn69cvZGeg3Hr36BHKD8pJB1hqpfa6uKQnnEJ3TiGnNm9bvAtXsYEHcwcty44dqm7Jen: '100000000000' - DdzFFzCqrht91SEEmwLJpadLebAKdnxJ2rwSWcJnDP3qSn5jEXHNd2xzfzNsfvoT6AK5CENUHV5Cusi5fsM7RBYqKmWLy6ShDXoifCAU: '100000000000' - DdzFFzCqrhsmT5CSkBW5WCjk1taagdZ1mxmqBhbugNymrQWEwVRCS3rsyH6i8wmEzAWSxGCGMDVEAQbgDB2NLf89EVrkoRRMc6m8xvDv: '100000000000' - DdzFFzCqrht2u4XjNkia2UodGYJrGfEGVcWPG3maWE18CtJ7ZoSYFdz8sJg8kb5tGzJKagr9DzWrq5MTru9MeRPxvVSuePU3XdFsc18c: '100000000000' - DdzFFzCqrhsgUJnGmaj7M43tYXhL6K69MrzwWdvJaPQeCjcM2GXgJgsZ7qqD9KERPPzzq1ifD2idguomjXaBmFRZbv7FBE1KyDuUc4s6: '100000000000' - DdzFFzCqrhszegz1idFqU1qhtnVoByyaynPMJ8LiBY2bfbt1t2prS9P6T8Dg9QBgAGDfyFDAtCcbjSEt7rjtUjkkFN9fFBsXQZM4mgC2: '100000000000' - DdzFFzCqrht6hfSPjqHQR5MT3EfUshXNPNXHrUvZtiWSDWT5ypCXweSxYrFqkuCpLqHAUEuyhe4FyJ7TRx1nPwUtMAZwb42Z8chjjoF3: '100000000000' - DdzFFzCqrht6GHvq82ALWW2Qtjgz4VJdVtQUEzkQvTh1eQ5JZdrkejuzjWPqCM9hkPHv4v9bhZfqfszHNX3XUkes9H1fypootkBSVCrN: '100000000000' - DdzFFzCqrhsfNtk6jYMKvxx5RQFtmuAygL1ZAKkhxBysZxD3RhrHJeupZNzo1KaWQoKjTf2Cd4ueHrmur6XHCAs9w9x7BH18ccDxtQxs: '100000000000' - DdzFFzCqrhtBRPp4B9CdceqEFeL4uoCxhyWTyyUqfZ2U51hvo4MHWe28Zk3VwintLh1tvXk6hP4jc98qcKDxJVk4AZn3fjN5uhELYn6Z: '100000000000' - DdzFFzCqrhsqAM93CqysJRayLqex8TvZVS1LtTwShCUEWN33raksC5n4Jz2xujaPz3MjHqDbpGfcCC3ATSVAfM6BWo8ak8r7WNbMauMG: '100000000000' - DdzFFzCqrhtBMojc5VESzeJ8tYVNktLXTxoxrS8yuGgY336o3QQGvEJbMcKsbJfggUSMdvz9ZbnbRGoEicn3QcrsjdfyTf2xa4rff1p8: '100000000000' - DdzFFzCqrht3Tu5czKRrWA6arGmTwk9ngNjBps8Gw3khHUkTPAtDpte4BYMxE4NrMndNPEAg1x7rMZCBQtKoLgBS13LtRqnozyA71MFQ: '100000000000' - DdzFFzCqrhswM3h6D6cuY4Smwir2SW6qPiGQP5hFS63qCSQLYkDqSFtkd9YXEZBAN6LhHU699XrX9KhDyhsSCZ1B7YaSseuUEkEoDd3j: '100000000000' - DdzFFzCqrhsqdy2UgVgpZcbEhdU6bkjY8pb8McWsgUq3MyXoXXfwzKrRC7Ha9UoVUyx1tpSfXLoWhsgdmhAt8rmQJcbR9L6xNUiQxbHV: '100000000000' - DdzFFzCqrhsuGxWEdM3r8aS5tx1pzF8TFW8krVxGVJtSvUKAc6JGWye8RwGQQ49jmhMLdLdazrzqxsXGSVUeCVLpw28DPTE8bcUqZNkj: '100000000000' - DdzFFzCqrht8bzmHHCZmA6yn1U6utfX6qPuZm4t9wuFWR4mpA8XtBjQw3LSgScWUwXasscTetedRF2CrguEnM15yfBT1FaFS16wZGok9: '100000000000' - DdzFFzCqrhsv9NPjstKN2ucUp9zpN9S1qCRfS8geWXVY6DNSruj95UpohYxV66MnHw2un3QgL5gBaUQPHrRpFUtWkXpuU5iy3PPCnMmV: '100000000000' - DdzFFzCqrhsgHWks4Zmu8YfjnUgTY92bL4KJKopf8CuPuHeqZG8R7hm1PLZT2eJdoSCVkdAJYGvMxjM2Nz1wDV581u7hh6RnhJdpCxmm: '100000000000' - DdzFFzCqrhskpEHqhFfYYcQv4An5bVBZmEEWHUM1s6SbocstXfSUqqhPmPmbQUUamvssKuLrWip76zoAohmRcxG5Y5yeixGPPULFa7Aq: '100000000000' - DdzFFzCqrhsm9bB8qYkfKTmLweiv7saHCtTgvmjk1wbapktgnUwCiEntRgaZpcEiBNHttMRURnTK8cURzjfnpwcJuKc2QteDHRtHrc45: '100000000000' - DdzFFzCqrhsgu18fzX1oKxEPutnGsSQAh6wf7A974T9mgsaLrCvKmqnUp3y73kw7pVuJfYJWtB8XQnTQKGJrNNuwjuJmtJ2UFqoAQpn9: '100000000000' - DdzFFzCqrhshz5SZ8FJWckBeUQywicwbUJMrmRSE8TwoCLscPTxzgSrrrmrgKdWXf2xdQeoAfAfNyJLQ9Sh7XSZfwww96eWhGzFmZrC6: '100000000000' - DdzFFzCqrht2ncLwKpXDRbRXr7wgvURkFmqCujbTozRzukDC69H8ue8ZxKKfftYawN82LUZ1dB68Sv7sLjouJUQyfSznToc69g47Fyac: '100000000000' - DdzFFzCqrhsjsZjAVx9u75DMW9h7daAWhL7V6e4YtaQEz7f7XMAge14rt2m4rbDA9DpMp5YmzAhy7bjsMRb8s9obEUwyTT2EWTni9k19: '100000000000' - DdzFFzCqrhsoWc2K4SiFsM3BgbfS8fru4t6NzXR2FGbeoU9MhdQWXdmKn5SCEGCfGLfGehoqsx9fDJSZia55hBopYoRoJ1SdUjN213cb: '100000000000' - DdzFFzCqrht9FRFEqbyENDVSvKhbzwxGEW9hGP9MfdYvx56PWKpWPPevNSL1asq7c6dJCMjzRrzgAipaLcUE5vixV718zuwKoH5BkJaz: '100000000000' - DdzFFzCqrht6Y9KnEi9jh35Fm7GjWqWrW5Cc2Wgt4rSJM2gBC5hmE8tPbCm5ywjfQ8aEHP25VDmCFcTHfMk1G9w8GCZMHQBSGGVUwWw3: '100000000000' - DdzFFzCqrhsnKVE9AAHaoQbPYjXCiEbyMz6uzHCAMx7hK1K2tzfroQGp5dS2C68Gy28vMLvcVu6F664Qw9iChsVoFWL7hqeMp83U5TCP: '100000000000' - DdzFFzCqrhsjPeuAtJF87FUXQBUKssugSf5rsYEUoXTNcJ93msNs9riEyAmzu7YVgQdxwmjmqfhbNTQZ469SfWc2V8Ert3KCcSYTjVD6: '100000000000' - DdzFFzCqrhsm5bgZv4SFZ5vC2JELPadbMWSdj6BP13LH4Z7R6uMHVv2Q3Wvxbf6kdJUCk5S5ecmM1A6xLwKvuDjTAUjX3VD4ViEnYan4: '100000000000' - DdzFFzCqrhsnAzD36uvr7rHLhU8GaRuNkNhX1MpKtFBmHYkTvUqGrjjab9s2EviesFvat7HL5tx36XovBkgFBrobRh2fGCMH1CZ9EWmF: '100000000000' - DdzFFzCqrhsz3nJePTVEyEt62Aopr4npWnwSTxruNwsFsVjAHHWeijiZkW2G5wACy3DTdsBGxb8WzahS3c164Qep2Cm5HfzGrZthamLx: '100000000000' - DdzFFzCqrhshhEsU9gYh8uUf9nxYDNSJYojJ9gaDHTtAYwr5nswEdpDDyZ2kkGvndVXxdENYNbUyyW9pzCrvrf9gSrbUWdnuE7XE4AcG: '100000000000' - DdzFFzCqrhsmaGrdAfo9qovx4Fv4fnF7JMFyT1kWavyPVsLTCjRcCXvCxoKYeTqP4rTsXyVNUD6UqZQEDNxGNV86ZbjiJPB5rNP2rtoa: '100000000000' - DdzFFzCqrht2e8WbaAcCM3GKzZBD82rh3cxyRs6eUyhW2GgpNdK3keuk1QeVhADoQs7GG6w7jgiVycKsWQ42NyRqQogtCdBhgurTuoXf: '100000000000' - DdzFFzCqrhszNkS3hGcKJH8VQ7FuLU6Yeuxd3DZ7nF8xT91YioDf4kzxvEYUfCA3hxQqkD4GZY8rA4sY4BHW5GhtQn58tMsd82B78DdL: '100000000000' - DdzFFzCqrht1EW838ajWUqZjmvz3xo96xPF1WonDDrTGbq1RuHjYgAuEmYsJS6QUe5Kys76u6S6xwmgG8rerQKh8AW1gfoEHEKQA2YEQ: '100000000000' - DdzFFzCqrht3f5dsciyPRVyKy2woNhXdtp4MegSw8wYNw6cpQZQDt9a4Xn4RL6dBiovb6nSEGFMDLnAc4UoC48oBZEQyBJcHekLc7si5: '100000000000' - DdzFFzCqrhsoSkMuK7u2ToM2rGWgseVpGvpL9VGwPqHyAqSfg8LLy9tsLfZQHp2cJjPTSoyWJh4bMSCAq7dx9oEKXH1pZMi5YAAb3JgP: '100000000000' - DdzFFzCqrhsughEFvccCa7mRD9RQZoL88h3RTc4WZ7SoNfUbiEofBgJB8yRGoTKgP62BSpew9JZfLtSsfXSqKzfLkLGqVaqrHNQWpCMQ: '100000000000' - DdzFFzCqrhsxN3xy6B6b66zHZVsrJQDFdYo6Lw8WTAqS8bNJ2msLU5oqUmcviinqxoNGBfSX6rrq1ba9KANPZ62Jzd7jPnrxUASkbSEX: '100000000000' - DdzFFzCqrhsiXmakPg2y18FAbQFKHeHtZX8VZNd4XkEx5WUm4hy8pAhSgfb5ut8cDV1sE2Q9aVBFrRk3D7iojXkWucCR5qA4F5Xp9HtR: '100000000000' - DdzFFzCqrhsyzSxVuScVv2zdymnpAfKRuUEJ4aMvWfkPBBwFGUpUy8pGcEAPoZT6rCpUxcXJjpUFMZJxfGhTLVi7DxhBQn9WciHyUemc: '100000000000' - DdzFFzCqrhsx7ybPGKPrGo6HEvvJEwh8MaEbqmhKzq3kmWdN1eRRfsF5r6x2N1xVP5EucvLgMCULCWJ5UxsYNeEnVACu9U23J1uXi5rD: '100000000000' - DdzFFzCqrhsuCzSZjeuoACKcbeqFdCn8wnsLfWahoTsxEiQjvtnurMKHeA5Uovdovy2eyzL1dG41La2AYew3Sz7qGsydFbbYRidmHzKc: '100000000000' - DdzFFzCqrhshZhZXSqdg9LJ6L5ucgfosECYZswKNZTwFZi8xQWiCmrXnUrpkZxioyNUd3cy98B8tLXHWaSkJXWBb8PvAGhLUAkMPfLsR: '100000000000' - DdzFFzCqrhsu65W1ihdfX2QRRZTnSzYSi2qCaZLv5nya6sVR4XNWeLHFr5XePhNKasPjorBzqW8qch4KNQNbPdJWLBDrshq6EwbXznJm: '100000000000' - DdzFFzCqrhstvbwMaERaLV1pnPuM6og8hgnPewkMVkrmhNkgnTB5rgbt9bEPYds14ZV6dgXVVhS57YLbaGrDjn1ZCiU9SF83Q7dXt4jA: '100000000000' - DdzFFzCqrht8mTWFtdmmwHhHC9TWBhMevmXpPjFSefWayVyBxH3eNAd5q9WDWQy8krtzKymrxCXBLL59CvM6LmYDrtPcHJy3DK8vwwUL: '100000000000' - DdzFFzCqrhsvoEZRtPAhpbMvZnx8ky7FqJdPJmKgpyBf27pXaK3WvrrLeBGjM1aR1qjQqaaviABTVP1wsJAfB4ZCZcXCU9RfrdZqWvt4: '100000000000' - DdzFFzCqrhswxeRiuBVPCJSnWG4oe6vkN4eEjHstqHUTuC1QeKzjCn3jN3qP9Gxu2hXAb7vgLk6nKBYfCKmpCe5q6muM4MPjQ19WUBMu: '100000000000' - DdzFFzCqrhsubCguPahemcTZtmNoZDcwP6nJMFoEj3hkk6yuYeK2EknkZqLjMnkSsLGrMcqdbsKiCU5SPHUyK8Gc38McSRBpBJrQ581y: '100000000000' - DdzFFzCqrht6HR6fCfV34AUyvR3YyriyhpAMLpdcPj9rYd8xkRLH7U6xtdPGLtaXHExV66C4Ets31i8Hnq5NrrkJ7urSj8MUtEBcZMKX: '100000000000' - DdzFFzCqrhsqkj4dLvYnxEktx6oWSS4du8MNyZfFrj7kajyQ7sXY5KqVeCqpVij1kQ1SBJbZH5FvWo7xRWYWwQUeGjFyCCZuRNgqE2xh: '100000000000' - DdzFFzCqrhsiuqpSe6YrZyioZi3BGCGVx531UBP9h3LbTppppb65fwG7R55TJG42M3z91LZgZzqaqyAGqD1kBjz4b5JtqR99QMNMmE73: '100000000000' - DdzFFzCqrhstgeTg3vnEmbERQFuSbrQ4B1HZvo29bCXo7xkBjs16GYKRNbWG7hG2sSdosjGk5eyMhfiBye8H3fp2pyVs3Mr69CSPkkxB: '100000000000' - DdzFFzCqrhskQMk1v4faf9q3RLouube1N6jaw6tEn3sE2YUmDDQUjnAQr2i5GdUuKsVfJTSKkB8dXvPS5zAdp5Vvu1nNBvzJUBZBHWfJ: '100000000000' - DdzFFzCqrht41wzTkjmzB88BcAhYFb6iVSMETpC5ZvTES5RQJvfG9eGMwPSLFQRXi6uotWKaReTsZyUXwS1LNdycV5CFPWzuLQtAGgLh: '100000000000' - DdzFFzCqrhseKzWFXhjHPhPM7E3tBfCzLQ5ncpwzqJuH33prMjBEwJStzkMDRAE2upsBXdcn5iPCQe6qy9Z9vBpv6U2PUY5ZxeNdP5PF: '100000000000' - DdzFFzCqrhsfBp2xYs2xqAvawVVjZGrExgsEeTqhje1C6yFQxQhgHNavZKL33XpRrG1J8SJAiMtsqQnCBcpSdgkYDEHvfU6hxESboxtp: '100000000000' - DdzFFzCqrhsr89fgkp69qpxL43ymQt2YNfwA45cTMHu2oviPQTwyJisize6qSiDrLV6CtAvkkERJN7B8gpaSSdKRs7FqDkcuqjn137wH: '100000000000' - DdzFFzCqrhtBYPNBfhVxkvWzaBdZBtNKPR1gLk6ph3sJVVC7djbQsfJRps1vWsdj7Ng9aCYTF7ZvdfVzF7YKKF8oXE2mF4HGHz6kNgft: '100000000000' - DdzFFzCqrhtAyzeg1JJPsj2RGJhh8CYzjApC5aGhxZ45fgPGK3rUPE1bdxzREeZXkEvbVBnaw2h2yzBJn7gkb6vWboeBaD1D491gDkM6: '100000000000' - DdzFFzCqrhskpfrsyafEcXqaos4Xh6Kj7yXTQfwN3FvofwQhbMq43UPzQLLmQBQ7LtkYuJvVybRcMLZgrhwVaJ3tVZqLnq3Mot6GMatW: '100000000000' - DdzFFzCqrhshCqg6rq8wZXZ5GnnSiZkSZCtUwaagL46wxp3M157jzMbF1q4XhDrfzZmc58WxXwa8AC9uSb1wD8befSZM5dQJYrmDCoic: '100000000000' - DdzFFzCqrhtCVAF3SiP645MiyAwRvbaq34FryjaK6sxjFPR6P94P91ZPR6wE9nSGeuyjMwJeZpz1jT3HLnuo9f6XszNdFTTnEv2gyy6K: '100000000000' - DdzFFzCqrhsiaRM8xydosGBPRJuuzzX7yxeHAcHdGwWiqHzyqe738ytj5pNXtxfHPDYWD2g684hNaxJipt36Pa9WsGHiLJk884oCrwu4: '100000000000' - DdzFFzCqrhtApeShHWGcxv2Wr9qwbm42XL5Xe2rekV2fH5v9tRZXdV4Mb2KSDh2U83yuNSoJdGDwPKmfjWPoKWhd3TtWvpx1WABqR56p: '100000000000' - DdzFFzCqrhsveWJGTgC1ifyEvBBTQmuFRfL41tGxGKQCVnAGQtdU6rocaiPQvvw1ssQDtLhQD4pA8QVDqBTQ5MPaBBricDrBMFGkUnqe: '100000000000' - DdzFFzCqrhsy9HENZRDdEzGfhXj3rkR5CWtkW4TjUYVYAh4T3bZUg8trAUiaHtkdJbVAd3YDX2YEMqFDSvPUXisDC39NpU3c7ktL6YyL: '100000000000' - DdzFFzCqrhsv36gadfxGKDSx1MpWcmVAVTQpPANTbf2LujHux2Py2H9KoEY1YxHSauXxiwRiiCwpVr5A8eXoov9C4zZYDdw68A5MV3Cx: '100000000000' - DdzFFzCqrht4eq39dq3RU2uSppUdhBuF8HtSgK9d593XDL6rYZop3BPYUdZktSpYA8yif2cMHFDqYFmFKuPkAaQW1PNhuaeucqCroozh: '100000000000' - DdzFFzCqrhsm3qRzxcPFMQ8Lg62xPCEdMH1pgJrh6gQsPU6uDY95mxAn82Wp9Aktjs3igYRnoRy5XAbv8cbbQg1pdJpsBMqbuQVfFR8M: '100000000000' - DdzFFzCqrhtBvpeuo7sprBafj1ueThBVV8xCEL7GevccZv9RJBCShzi9PF3qTssk5PkDwKxLxrESFaFCTpz1ZLa6Kf2vD9cNsvycfbQ1: '100000000000' - DdzFFzCqrhsqy43jB34f8b1bpJUQyobkhmk9wbuFeZRjgpwRpM3qr9CCsgncDyUpedSEgzkY8UXVMLSH4GxcQ4SKrqLpDW4Ko69mqBMT: '100000000000' - DdzFFzCqrhsqzemHP17k8LZMtmaHcsBwgFLy3LP6pZ6wjPRs8omh5AcsjBczXEqsf413f1JDw8tFGHwhx8QuDut6Nh2kFQx81XhZtAmX: '100000000000' - DdzFFzCqrhst9BUTdGX8sF54S9aw5jSBXSDAEUma77UrFjoDx2yKPEuVhWDMxpk6MWBMDhefBG65zQGCcfXjEf8AyAptQ5sWyee2Kwvo: '100000000000' - DdzFFzCqrht4bPKFXEERy8MT1BcDmC4npEfiSPQL227ptkLVdHqy3dTGrU5ADtKzSN3MFwzyAni62bp2ZV8n5ZDjzHdm1cxAihmYySXu: '100000000000' - DdzFFzCqrhsiYyLaNVE2uhcqLmbdYQnThLiC6euJdrpyWWguLEdkhmeWGdxDx5Xaicn2w2fJKz81KMq49euSesUhvwUx6F427db7jprr: '100000000000' - DdzFFzCqrhssdaJHLMpSjwmUFZGH58ShswVMeMDoQRucHiDYGvhMrczymfti5QwB6FzfYhXK4X5qbdKXUvzEzsZYdr1rdZqfJaWzXktp: '100000000000' - DdzFFzCqrhsmn8PvGHjxS1C9FhyFzwNBRhXpZF2C7q1pkLFf9yHFCVRHnVAF5qpH5pVpBNdiEvNWhsQzUbMksodhnAEXYt58o4tK916A: '100000000000' - DdzFFzCqrht9yCckWrvTSynq5ZVETP3tvvLCMHfEDH8DqQj6H2aQsPw9KBjeAoSGvp2SAen2graUiAvTj42o1HXbqyR1xbauTRqo5Xuk: '100000000000' - DdzFFzCqrhsgHhQcRMrm3RPbBUwrvnanGbcchXgMHeQ64bqEJwdi9g69nS1U9UFvmB5nBDqRUjjdCbZSeY8XPM8tY4tVLuyLsGX6CRir: '100000000000' - DdzFFzCqrhsjfhfdSnS8XYcn4tTw8u5Y6SEYygK6RvJHC1uamWGuDNLYgwQNWnC91LFtSxX2R1yY87A6tYNEhFKQKF1HmX14xAt1XRxe: '100000000000' - DdzFFzCqrhsrT81z6mn6MTdLNt28sBUmnosC2rYCjQejM6tRDV8AKHqEbxGc4LQhK2ggScFrQ5za15P6LEAyXf3p8P6h8cjAJvhHw5MF: '100000000000' - DdzFFzCqrhsjdEjd2YipWNbt6jKF8j3THaW3Hj7WMGuXXsaWfDjvk2f32dgb8Njtj2wa18AGMKuU4EswggKuZ4zBiZahq24S6hyzCwis: '100000000000' - DdzFFzCqrht4nV96FhGCupGNWmaCxuEtAmFeBesEW68cjy3RpLggYCZFrLPy7ykuHu6vKN3LidtEwSdtv2wSUFAadwTEmksjf1Sbi3LW: '100000000000' - DdzFFzCqrhsho5PGAWinxtac4QJxPQrYzRdK2PXV8gBUrF6i39U3MJgaGCogwynj1e8xYoTWVmPhCHsHG257Qihhu8hQTABUxtGirzbM: '100000000000' - DdzFFzCqrhsqokHp8w9JSAiQ7zCujVoC7C9ozRYkS8ogkYuwnbCTwqZNxCg2upu3eiA3CZjrgwBCarEibjYTj6BNWHwC48RKTKb8Ysis: '100000000000' - DdzFFzCqrhstWZnLR1tsxXSrWfNjRxbetZDQkJ5SB3hXsd6zEnordufxSpqdAQ4d2d6fFUU9GMPgeYpsAwaEgwYpkbGYpe9zZcV483Wd: '100000000000' - DdzFFzCqrhsytaiYTPHCkxnR6Ppet5MoETkLW7LGv6VkUAspR5iExDbjrGmR6kQWF8BisMphv6QuMrGLNPjVpfw8sbzxcgA7UB46LQLo: '100000000000' - DdzFFzCqrht36H4ECYgqwMpkpoYZH2Vco4jqrvagZJ3t76p8wtuUizatFvExcfydawjX8QtvPNrLkCgxoaokw9J9RCxPYQzj5ESTZ1J7: '100000000000' - DdzFFzCqrhsu4MBuLV8qG3GAD3zTXFqSLpaXpyFwvvhhi8JPmxA5WPF16UqLvKBewkH8wawggbRUUihgiZta86wAnHGN6yvwET6CGxFN: '100000000000' - DdzFFzCqrhsp7uHHYqrH4PEqkY1FMkXyL4eRwQSWUTMAUbH3aR2SMvYV8LmVtgjhAyWJUHh2Fmr8PrtDmjcFtNp5A1mRp7PmWkmt4xVP: '100000000000' - DdzFFzCqrhssoQazfcZfswz9GQcEmJLzdBhkzf8c8d93DybhsjEJ8J8yZzHxsaDAi5nWEjFcJTv41Zjrsy4Rmy1cgJ92RvjHK4WfgNuU: '100000000000' - DdzFFzCqrht73JH3X3pHv8JpamtLcTtxpCr5hvcPU42fGFz8jG8XR1wNfEa9hp3ZMFCr5AJLih6168iuKGVGTbCsMiiAt7pTbbeyZ1HV: '100000000000' - DdzFFzCqrhsrebKm7sFGGe5F3bfLJd7gaUt1JRt54D5GLWRCq8bE458dMdf53gTTueVYHYe7sv1GAFCaDNohWuWftqbsXtKUJVfQGphS: '100000000000' - DdzFFzCqrhtByw2NWvLn2yu4uyaqwBCPYNU9goY2WwNvrFJg5GjAKFHQyMnnNuoX7m4ZtheRWxrae9oUTP3E6XeVgkBDatcC9aMfs3iT: '100000000000' - DdzFFzCqrhso1L6xw4jTsBudSBBReMS8t5aKMLwDLKmz3vUAnCb5EksNTPjQdQgzBDjR7btkEwCtaA4yZuGPpoAmwL9EP814gTus3Nze: '100000000000' - DdzFFzCqrhsqKSLoD8ZcA9VNkNTnaZRCVesUnajTp766soeaz44t3KTve9pD4JTdpEseVpHyQVFfJZZwBqCYzqDkKEGGPcWp9JBEh1vQ: '100000000000' - DdzFFzCqrhsf3GKBLMweuuwwinX4hutK5P4Vet7op58hVZu6HXc4dShBrrn3wTqRHxUhbXx12NvDs2L6JukkKXgK8iSpb2PJFaN4ABzG: '100000000000' - DdzFFzCqrhszAprdFXZxuGGMYq81F7y8A73qc3rkyD3aDi6xej6TVHfD6d3KUQpu485zCQQUpRVWzBrb2fCwbFrRomN7b5Xpzv4U3eg6: '100000000000' - DdzFFzCqrhsx5LWMerjwfnZzKA3gVfdYCScV5UadAzszwhrag57eo3hdxLXHoXXiGXvre3npCiVzqK2TNwk7o6LGfLyb1jrNLpw6gE3H: '100000000000' - DdzFFzCqrht3nAENaMizh84Ve7yEput2HNsMQNWd5x2noTXNPEw9uuxdUa8b5y63PtxX9gjhJyEKLtRRPSqVQCJPnXyAxyK5tfQP8fNh: '100000000000' - DdzFFzCqrhsu87pssBC19mrrhTMhRjrp36fEVqCp4HbTVXEjSwoZYetxG8bqjzMXHCnPPfX8z7k8Lv9VQyCpJFUXfHU4NeB9uEnQRhkB: '100000000000' - DdzFFzCqrhskRrWY38HPw8yfYEjp91wVNUzRQ76qcM4UkQjY1kBKhfRjip4ieiQYXLFyoxfEqPkbPZ5WbGkB3CZhScPvPjPppc3PZkWD: '100000000000' - DdzFFzCqrhtA6YZj6oSVtqoSXrkUiHsRv9kpdxbohtZzxfvGaMUoYP7VWWdsczheYVfLt9VW5r4XFMscjcZcb2UGw8ykB2vFyxbQckQg: '100000000000' - DdzFFzCqrht9z4VHBohf7kASug9YRebqhLuWkz5NLADUR1YckG6CznWEvjPs2itEY7kG26vuDchGMvkwcF7NWyFxdkkUqHWhYi6h3NTz: '100000000000' - DdzFFzCqrhstM1aY9uaj2Jo54ivAePvGWYZpefwh6tovQWeMUSkauQ4q6UF5NUwukjzfF8XBNMR2tJhD7bc4E45kBvmKfaR4FnRiZ6LL: '100000000000' - DdzFFzCqrht44eVXvmjvLtuBHvDNEfD4fNTE23HDu2cRZWN3NLfkzpBapjReXMwpJEvT15kx1r2RTjkAz7LnuqAbAKaoBwG6g9krLWw7: '100000000000' - DdzFFzCqrhsggd6EwdqkEUBdSjbiALquH6mC2AmwDNNLkAdNY29sGx7HE27H3C7BJ7H1UF1CBob64fJiF9Zkqb53fc6Sox1KEH3YBQJF: '100000000000' - DdzFFzCqrhszudUhGSJkkLCJ586obG6P9DeXeweYG1fMfujcpf9BvqKU8d1ur72ZSfWfkM3v5JxWMExAw6Zv5AA5qJxaLDDF4PytWQ3U: '100000000000' - DdzFFzCqrhsymccaaCAmMmG6JxkoYaCY15F9VSFv8zDxWrdEA8jP2SZXMUwUEdYWhEJubuy1unRdpvUeMXFSL4tqY75QXUW24yfGvy6r: '100000000000' - DdzFFzCqrhsrbJp9CJL4N4RbS9WkAmWtX2Zco4xQ3HPqARe7th5UDF2XEJEoLc7cgYEGzPDoK3EDjSQGiEBzChwwsEjPGhwvwzDPkqnP: '100000000000' - DdzFFzCqrhsfocoG1xmGoaHJXhga6dmQtZ5mgBg7P8xf4swuWMJW2FZJxSrvx8TpAyuKhub45Ys7az9BgqZNRsx8kzZQSsQe5hGjXREm: '100000000000' - DdzFFzCqrhseNSpmQJVXqRrjwCMhfzdGcLMLNvXZgAyuCfYHjwq5A2UUBqibD4M2me62GdfD7sL6qBQCkEos6VSgcYMJjg8uSXiqXGpT: '100000000000' - DdzFFzCqrhtBFw7EgiMNyUnKrYjYd9B6urwCN3WTTRpvAufSbgDmmoS98K331mof79YKfkVR1sVnf1ATPAJHH61AMYJQhx3keV9cK27R: '100000000000' - DdzFFzCqrhsjfM4ZyRU75YACkZ3fkW5pCy5YJydpCFqRDJatDh3fVjuxR8X4vENkLCVjKndZdwBsgErbi5t7ZG5pQ9jaLxyQtSvHFwLL: '100000000000' - DdzFFzCqrhspVTt8n3DxK6LkLveXermCBWPj5eKphpccFszTFS4mD9G2bz7hk4GczgTVuwkTNDPim7EaXfTXxAvanuPS3PDmMoe1RJ91: '100000000000' - DdzFFzCqrhsfzeTD8yxSDVbaMUgEkbQuUrZEdpqwdQjHpuPfDvpntaiBcqEE8TkJpG9gpbH8ar84nusQrB7iAbqb4yXCKDU5PKWaev6x: '100000000000' - DdzFFzCqrht6J3dL5pfC9f3cewkJTdXsCofBLj2sWVutDGKCKYci3fA2ATqtgyzahakBLjVbPTHEMCBkHFvxw9z1eDVmc4Z87bL3A3Kf: '100000000000' - DdzFFzCqrht5i39FiCMKxSV5AFN5nBeJ2MbupM8bTSg9KNcHv2XHBRZnxwPGFtgH2QpKGbEuVc9CUweu3Zx6KrGfm2dRPGiVFm5CpNiL: '100000000000' - DdzFFzCqrht8BN1iUe87rbf4vXq3b91P3wEX6cH4UyuSCJBpmhomgJZvXFAMG6ENW4nhW2oThPccnHhbPWMieaBbChzEgZ9dERgahnFu: '100000000000' - DdzFFzCqrhssae3NuNKnVvzmpM1a9fZMn4AuK77N9i8SaV8XgcKYfxCmN4HWWXxDEFjcxMkpESN12TpSEteGKWtPKoKEuSkqh1K7bf9d: '100000000000' - DdzFFzCqrht7DQte1tjKsEV53eH86em44gNDwDtJTiPwcupUEZeWDfBCM58JArVLCuS89jBCdUjpZ5cV5MTg55n2c6Zn6UiTi6aXXScF: '100000000000' - DdzFFzCqrhsusvfZkGxf29gy6t1uyrG2ihyak3iwemGjiXujtyetE7NaLg5cUE2kaakyYWYfpX5QRCBzBjMAWoHnxn9bydngLzqxhcto: '100000000000' - DdzFFzCqrht6vJoBt2bhDjUCUaCLfiXSah4qGtvHJaMn1L9gqH2SaffNwkitTiyu3z89DeVuFD4CbD6FBE1pSMCVY5osmU72d1yWo9g8: '100000000000' - DdzFFzCqrhszjskyvy6H3oBE3CAmViTtkDphHzPtjbut9bMPxrZaAoAvjJpuvhN1zfQkZHSweTdsi4BuyXrPQ22rCf5Bhea7ZopzgTbU: '100000000000' - DdzFFzCqrhtAkMhss378ZA33eDMwzT55PQHCnfe7FYuRMqwbYqhqTXH9QfnxPLaCkJkKAKaHboLQ1Ufxu7awexHRKQHTAbQLFunmeJ2W: '100000000000' - DdzFFzCqrht92AZbrR8SWu694B7uDiaecYzVg5z8udHZgL2jYsVCRgigrhjrsz6zouhH8D7RX6KEKp15zdAKtCjwwy6j5JA3EFtXnA4Y: '100000000000' - DdzFFzCqrhsoyT3rnz36eiX9eYxAVgrymp9z48sjJxntBV34EZxrhvExRoiYVbk7fdnQ7BuviNvvqpNmCB3hBtjJmj8A42pHgHiyzFYg: '100000000000' - DdzFFzCqrhtBjTmB5m5qsm8K1srWJAG9Kdt9F5e2w2XR141pXivAiL15u2VHok77mVHwo8RiBX2Ya8Qkde9bziHZGv6CxMJ8n9CQQESP: '100000000000' - DdzFFzCqrhspjaMkcHj6hChprqoRzxRAT58u919ZS8sLrWP3EN5FLxYNVm7pJ9VL5SGyp6QGV1UfjxymH2snUAQztf2VGhRSb3gMM8fE: '100000000000' - DdzFFzCqrhsuPxVHBrCzjYZEZ5KyMoyDzY8kiamuus3jWBvSm4EbZ9xFo8Dsf5cfXzq7ssWWWvu97q7YQWSeR7rMtfYXy96KVwH4i4o8: '100000000000' - DdzFFzCqrhsebh2FZt7cP8aSgDMf2o8iMBFfEpAbkVDRg6fUrrAQDBK53qQ87LUBnD6CB3KotdxV45KyHDnwv25pzXychWsUCMKALGZk: '100000000000' - DdzFFzCqrhsmys32gydWhvhaVMxKm4jLY8T5GcYjcAKrvizenswfKvhcxGi8fTMvwqUVBAhTePxaj4tCV6qzhrmTUgk9Ge5d4G9aFiy2: '100000000000' - DdzFFzCqrht71ZWyLH6Nt8dRB1vK37nGfoihNhSzw24xCVJ9WsLmEphVR2aup36PY3ckFDApZH6vVagVZgDWEhdyg9AVX88idWCm9Sj5: '100000000000' - DdzFFzCqrhtAPzJgttZb3LFYfsAVJN91vWB5qh9YBWHiwjg9uMqHX4PPsKW2QRMHVGyiAvRMwLr2t8QtkAfJa4g4XMieGzUFgpCavtVw: '100000000000' - DdzFFzCqrhshw6x9EqMayfUij859txSoSYHQa2qqZUrwYMNiSj6wrm5iJUWBh1oAMmeUnsNQcvSBP1n6H6hiWTNWFLjnTobtnUErCxN3: '100000000000' - DdzFFzCqrht5uDzi746DnPGCQ3Aq42hwSZbYg1fXMke5DERTPGhDD1VnirqzUC5oRJrDRKZMBC78bAAvyUSjHtLpud3tytzjUzbjq3rh: '100000000000' - DdzFFzCqrhsime3ux2vxCULpsTCAQjpQKxQFaW8BG6x4Nzi3GowBMpyo4TNsKd7EiZwVMBU3PfMupk5UMttwZgVr8XcGRGVNKz9sJkhX: '100000000000' - DdzFFzCqrhsxJ5JKBLVyoVCYHcEPDzoui5i9bTi3pWYMQAbyr1XqwEKVyDddwTXAhv4htUk31fGtmo47crfA7t2LszWzAQkDVbemiyto: '100000000000' - DdzFFzCqrhsmKhjdNpqX2WaD23zAnhmwYsPEip1NMXzRTXo4LgoURoa1S1qxR6NmTq1QY4E2zDo3anWpGjgnQ1t4Yx6jfs6befm7optE: '100000000000' - DdzFFzCqrhsyHw9BWhX5PmxzAyFVfybZrGpFgLMKrJF6GRPv2KYQn7jgXriU88oMrV4ARYJP7DDLmZgotivuHdbVDXvcp5vU9hMDvHAv: '100000000000' - DdzFFzCqrhskyMbptmV625ae221NrzVHoZCYKV5qqsDgusXxY8sPvJDmnAPLqtwtHmsPs6T3zXkmyXSpD648mmSjTZSZxKimXrtw2Um8: '100000000000' - DdzFFzCqrhsivpXNEmP7ZqNXReNPR57doCHNeWyrKtT5tqPF6bNfZnD8Tsb571y5KgWjKbvQ4sXscQPPEoFToADRUCyCJh8ejACSyZDR: '100000000000' - DdzFFzCqrhshgzsD4r5KPuGZP4LpTYjY2xWRZTJ7G1oQYSGmzA7EoV3W4kXSWSChryj4E64dG8YkXd4skazjWjkcpFk3DDLTLbUApWn4: '100000000000' - DdzFFzCqrhsg1H5j5z4fgWqWxEsjRYEtUipcQmycJqEcjhiQ1JuZ75bDnva9XJ3V2r3XGUsid72rkgHBD1HossFYRxDyjgYD8FNdAtbP: '100000000000' - DdzFFzCqrhsw2aLZysp2j3g8RgybjfgDqq69GZ7SuwS8QtAnKs5zBdUVTpnmztrW5jAQCpLRWKTK91n7uYEQiVxBoCnET7FSxBQLnPFt: '100000000000' - DdzFFzCqrhshheEVbxKXs4mrSQx61LbTv3NALLi2BkY1uKvMFn64feev1RifahxpZ56w9pbLaWuSTHqzrZEZTXAPbk1T3JYE66axAHcf: '100000000000' - DdzFFzCqrhsuFUh87hptKqiKLRR7Z494cJosQ9kSA3DSq8sLudxfTUyEZfUXvetkFDtvJKCJXi2EGLFWdQ1adNX3PjjGhgMfA7eLZLq4: '100000000000' - DdzFFzCqrhse1dJXxMGtvpEkAj7KcodwGN9dp3qsmYvgiDSJoigiUykaR6tkqeZsE2LWNNADFSkdpCFJQe8DrgDsy7LDXt6Rup9eZ9mp: '100000000000' - DdzFFzCqrhtC6PSbZaMaXSAgvo971uvLGEQQ2Mx5bkaryDYB63uutqvsZJfAqxaBEcjWibTNLoXaCKKEzvYiP1tmoEdgqr3ocTPP79gA: '100000000000' - DdzFFzCqrhsfoxYEgtp4nNJUW7NV5GW2QnYE5XNU7aVk1Wp7CjtxnMFaV3jiQHXwS1XF94jWn6n41tCBmuTj9fJiexAqNHukQhhoEuXv: '100000000000' - DdzFFzCqrht9SEZiFkHxAqyo6UwY3Mo4q13dBZrzUk74DLcDoJMJagy8EUsd92EMd72nYqqBDYtm5FC7ihJVvutmeDMwrMfEfyBB9qDX: '100000000000' - DdzFFzCqrht2UjaBXn8kSu3xHhrJLBTvvNjjStCGsubbPJHib1nMLVokcLGK53cEvisuwhAaNdPCHbinD9ELYS2ddZvoQLcLBZaHSjc6: '100000000000' - DdzFFzCqrhsgTJYFraVxVhV9QJJatNikDgjkNxMbSqkiRRn3bZQwAaQZhNiBkJrBv8p9Ms7y2jBLNxR1YbUHMrh7FHzkGzFDV3SRpA8q: '100000000000' - DdzFFzCqrht1U45cCUrm8bsM93gqkT6t8drPeS9Hp7psrhceEER8kngKk8ZfHcxw1F3V5ZTk1DB1ZswKH1Ty4xViqckFe5bCgnbvimtS: '100000000000' - DdzFFzCqrhsx4v3EEhCbHLbsv4oHBrM9BkJUwQqCkSd2C4VZV3qe5SAHmqrngkBqog4YB9JvcHaVZXX6jWnZKsGCfHJ11WGmKQB956Ec: '100000000000' - DdzFFzCqrht4PnuBRmCV55uZY8MgDQWtRNPpFFjMwnQgvm7Td9ZfWX5YA6TQCVUprcpCVHvggRuMALvz8WMLjy1dU5pdEewdKRxxf86f: '100000000000' - DdzFFzCqrhskJg9VnyFZzbdvHL1zPauGxEbqX82TZ6LtD1KvDUCDY496wnSAmCHBxQ4rKwBVWc72qTWFuozWiEV5xdUgqutuWcGGB6qs: '100000000000' - DdzFFzCqrhsm3ymTTjrkHFZnHdcLwbTGtkcmv9W4GmGjZydSDAUh5dwnLj6FFfXqinQg2MnpjvVDfNKEK28zaVHaTgG5EYbbFPDor971: '100000000000' - DdzFFzCqrht8XXFJSkg5FpjzTjvEgcanCjsWxPZeQFSdhwjtdXSmxN3oADnSSzHns4HyH6tkxrEcaMYpYpPa5DBXWrnVkaRoMiBAdZVs: '100000000000' - DdzFFzCqrhtAjxVGbcYvP6SK7r42C5iWNE9gz1yHLEhMDj8kmEaaVyL8yH6A4sqEkyqLqdGvD8HUFxQUcVGtzEr15QEHabY8TsErbQKP: '100000000000' - DdzFFzCqrhsdvjyeD8dopUpmCMPnif8VZXVLgW8KLUoVEZYrB3noXnibKwP3GZsBVZTZAxksb4WBrBBLUiv4XGRiYMZkNtBEBRKVHzQG: '100000000000' - DdzFFzCqrht14sAeB9ErJbz2aW2SwLekBPkm411UDaKHoDpNsZf7U7ddJmTxFqfeXFs4UhwcYzLzBc2L34dxtsHqKzQsVumtAUdPwdto: '100000000000' - DdzFFzCqrhspgqqqhiEKCxcE4uKkhG68qMmRqWqERbrZrt8DSKsGeUdA1fiqEhxjA7nh563x3arSftiznjasoEChGHYwfMMJxT9kvDwM: '100000000000' - DdzFFzCqrhsuteMNG6kTVgRHpQTbc6qxicZB5to9mbDTVeE5rt4WyCgJ9AJ7D7oXFgGM3kNs94jUDx9iWHGocry77DtN44j84KJ7MuV7: '100000000000' - DdzFFzCqrht3tQFfScPr9a4p8KsxYdzrDY5upr4mEcrmWaDkxqYnVcRjC8AabojAbCm7xEZbQPtdzZUWZRrFve5LY4HfsDV6PHhkKYEb: '100000000000' - DdzFFzCqrht5NCk6JCi9C2yzUQ8EABwkP6NekyAcvq6Dy6iQQ1obiXTpu1omW5p3h436W6PqiqmKCXsaaLyCGa4zaeP3HgtQdRVGPyyW: '100000000000' - DdzFFzCqrhsegqFLh5p2m5f1E9DgV4zYkLD9Vua5M8sywqYjwtDXTqi9HMjbF1xhnPAWksngEv1jj8B2Db4trtnQNi6yepJPpu6p8xaa: '100000000000' - DdzFFzCqrhsqPtXsi9Zn8uata1pvR8j6C7cZ9SJCorWjUsL6XG8XFWPooyeCP3JAn3R5MekSETGGVLyyBDAJN2DsXXrPojGfE7vZ3CpE: '100000000000' - DdzFFzCqrhszN3ThU4DkZL5ZiQtBerpyPN2ajtcEctDGeV7x55rigdPAKr2hvs9DiMV8EntV7nABeHNMNEZYpPqTnYoAf4sJSoKw6ALr: '100000000000' - DdzFFzCqrhsogHAxvYdHo3kzMTFAzMqXWzUp4f2GTGahLkStP6Yfm7T5N1e3h1DNNhkzgtYBPifiRjA4n7DYa8YPrcn5GWCkBbscMYbx: '100000000000' - DdzFFzCqrhsz2cZ7NN2JuwVAxUgF6VGFNLBHDQRYymMb6bpUwRM5vcYkHqvf1dRf7kHhh7xwViGideH28ontY87NkWAYedQtPmDs4Qnn: '100000000000' - DdzFFzCqrhsnAn2UiEjPYR6EbhETRGAA7Pbtr3DRdgWgzURD4iy1ciUqCHXNAJKtU2vD6h3fW3JFTFYxwTZps5bTZG1NvkL5Q7XkfX1N: '100000000000' - DdzFFzCqrht1cDfX6cVfYuK5q7RTCwattixFjdR11vxJgBnk4b2Fo4nNRFWmVAsTkb2XPkcb7zafwAPmVc44Ff9yNSfKdt5LyxA3zeYt: '100000000000' - DdzFFzCqrhtAsM7ec1Q79KN5HJwxfD5ZpEDzDjsDrdgazr6nz5kvWvyqWWAuuFUwshhJqvKHPZbbWsqSFBy9Y3tkPRQk2czYa69JzQSJ: '100000000000' - DdzFFzCqrht3Mt6Q3iAy9eTy9qZfZVVKGE7jejkeV6BfJS1AD5hpjtHDZRH5XzFV35aD8YDaKraYwWVzTZ4H8FxgCwqWCpyVfAfSyXTV: '100000000000' - DdzFFzCqrhsgHACZ7YZ2KdXj1v55refKj4BbGGGytahQvytEogJ14byAzFrBYWo6GosDak3npUH41dkUaV8f8iNHMsQRT7snPhC17PSy: '100000000000' - DdzFFzCqrhsjxFrHP6ynjGdg1FwhtcJNPHRQ2hkqv7dL1ZEtYYAa16KgL3Mm1tFod46YUdmWvFaWib3yaGgnKStCGQhhMVnTKZupNMnw: '100000000000' - DdzFFzCqrhskQdm6LtmQDD9t7J1TBTDVnCuopEWDx2WhcaN1TNjZJSNa2uu3VN6jpaFejFTUkTDzHfeUihkbxbk5w4A6KPATbgUn9Scb: '100000000000' - DdzFFzCqrhsq8GeLkWw54ww6oRx6GDw6VXNBH5joZAt89FcsW7FLZTfauhBagkLxQ29fEC2KUibhQdnnNL6wiD921srAfyHK4Mn46YF3: '100000000000' - DdzFFzCqrht5CEUKcBErFxVKnV4tuuuGxfL3yH9oScHsZkHEp7ZkSSziDE6MxFwdNKrQ9TzVEPuAwwLU1EhEEw1bBjcyhPgDSMc4QaAA: '100000000000' - DdzFFzCqrhsvMES8UtB5f8JL8WLHGdPrFcTv6bmUkqK7iEAoE3NbcnnCwVX8BuLyeMLZtuWi1YiUkc9ERiTYDZZDXQxenY5XQG1wT29E: '100000000000' - DdzFFzCqrhstBSoA3mpa5RBZ6TseQ1bnkvBeug9arVZsviGgCY6cSTrRg78NJ7gAcs71AYNrc4yVTpSi12GXcs5CuvHPYz3ptxEBbean: '100000000000' - DdzFFzCqrhsq3UxakcFtKdFriXGwzRyBghBp6njmD5nAnpQ91ubcjxm2pGX7DW6ZnHupAHDaU5qQKN6esRRYG6k943qaK3X8iiMd6ru2: '100000000000' - DdzFFzCqrhskvjfPki1rtQUm2G5e9BEqCzPK6Le99XQ94CGxUBqf1yHJbLMuEnGjyK7rW4RNqvfv1zzrTnQQW8rXU23DHMWtei5oadFq: '100000000000' - DdzFFzCqrhsfmKR8aCiwWVTUE8aWApRaAFNsqBPiPepkbLPQ7e29nLoy2WPGN7zkP9fmmXgPUVkXYaJRQ1cQXa6PdwerzFym8V8iD5ys: '100000000000' - DdzFFzCqrhsxWD9Npxa1AJryBy14aaeYpq89qdNEFjwiuWm4U4C5WJgjsbUgQF6mHQvWirt5gW9f4osKp5VPJYzcjVKyeiCRWs8Qp7Lc: '100000000000' - DdzFFzCqrhspGf59ii12bMaVPUer3zViQ4mAD2T4arK7GwftjrG5HmTRVpmRADwpFe7zktWFBt1nkxqznnLMiJr8KVSXhcak6p38Sw2D: '100000000000' - DdzFFzCqrhssPTdEzqQ3FR45czq9AChvpstgdAAb3w2qVG1XNz1Ev4cGwCZERPyNRhKbPdq36puHDYLjFAhuQMTMJXcvpeeMMFd7tdN8: '100000000000' - DdzFFzCqrht2cH3go3Bz4YYXXND7ASQXAdSgq5h1Sx2hy5BJgFEH1NkSJCX9XnuCfb9MExnaiVRw1Bk6GYXq5GFo86J9akvxeatD5L4m: '100000000000' - DdzFFzCqrht5KFdAHE2Ly9haU65WpFQDckd5XgH2YLpSttX2tJgceGiUfeyTL1QfPAwUgiiTsaHxfAmaCUdW7sBnfA35MNsmpoBJqQ1S: '100000000000' - DdzFFzCqrhsjEH72Jf1d1H2mTpHBRzKzTy9rWkNhxtniNVCaoGSQxSLkJ9aM3UvkGLcseiuvHDeUe2wgWVFfNUjHMrPAN7efFDKu9HYA: '100000000000' - DdzFFzCqrhsdxnxLx1kz62Hv2T3PQWrGSzq9tPmqdu1J37pZbyatxYLu6iEomoi3b7RdZ3EYHAYG71ydt41gV3dMbrmYgnavK8qz1R56: '100000000000' - DdzFFzCqrhsw26CfnwSSgjPJkCsMC8u6eRmBoem6d1L7nSKV2wtyAYV3hqfTXcnvLeeS6fdVn3bBcJegcHuaCQihenQvHBB7C1z5jVSF: '100000000000' - DdzFFzCqrht2kUc6LtTMRAfhS81S7GHMcg8uMWca8zeZM2KS4fZnbtSeGj8Y3Aqz8QGdhKiawTcEieTp1RQy8DUeB6myGCcGKeohcwFy: '100000000000' - DdzFFzCqrhsvFagd5L4yJMCC5b2NaDyQ6i7jc2wFWzQu5kkZ44oLqz9Egye2k694iBuuwT6rRUUdMWYv1KVzqG6SeSv7rKgWZNFx3Muz: '100000000000' - DdzFFzCqrhstQfMVyRgzLeXfethXexEXUbmCQdNLYPpGWvg1zQWfh7wDEGy4QaTeeMbQ44RZvnWZ1So7yzzyT5UBF6cseZiUvWo9SPV4: '100000000000' - DdzFFzCqrht5n8w9UUgxpA6BbnzGPzWob6xcCmJtsNCQoyhR5RrGQndz13qATgrn3pQ5zmyu8UijyuGqbAzEB9RfGe1V2KSCcjCwVgyE: '100000000000' - DdzFFzCqrhsqmM3a6jUkdTdWx77WGbveL2vXjXr1edMKgDpPVgN7piVBcTTFF3vorbhoJjktnp88SYDG6U6HiHTxVHy3XYDKcvQdS8rp: '100000000000' - DdzFFzCqrht3WDVGybgYuzdJzrJMseMJ8Kau5qk5phLPGPom7b6aQ3YgCF65o8RjhtffTmLAk2pvrsnwdNfrusRkqeFyQ7ZWfHmY7e1A: '100000000000' - DdzFFzCqrhseYnuqkz3GJTeBbk81yDiEaENtjmbpmjKpufte5KmMBXhpoeHGNKkZ5rRg5Gu1fkT3frwLhWy9wem62YyWfZ7tfzTVzPpv: '100000000000' - DdzFFzCqrht6bNvuYSfPN4jahmSB1Uq6G3UuvawUC5BPcdxoT9ASH92NV3VkxzQFpCx2swnqY2tyJ7siAgZM54V2S6EEah1Qsd1n5qmu: '100000000000' - DdzFFzCqrhsqsX2poXx1YgSd1s2ezQtmzstWJ1dXCEKCAz11LwG1wUKP8RNBPSPcqQ4mPwW899KZNWeLHJP5HuEonTL7USphJoaAozAi: '100000000000' - DdzFFzCqrhstimY6SK92qRmHf841S59MZXiypJh2oe9J5pFgnGkkfT5b48y1M4GgsCkZ6qYtTqJZA5vNd4wtGhmnwc7B1sNiRh3U7Rwn: '100000000000' - DdzFFzCqrhtBZLXzf2ev6kWwkjHjdQAYuiou3Ew3YZaFYMayfPLo2gMRs23R6dCHMDbdXNes85CmeLbXy66xo2s94rnAiGHDTje9CrH9: '100000000000' - DdzFFzCqrhsx1uqRpmhnXXd5AVioyDFiCxG6E5oSP5wDqESc49sSgkvxLBPZWb2pgXd982yoKjJMg41UqMCrSUjz4mXEhbHRMuUkAiTn: '100000000000' - DdzFFzCqrhsx814uitj7SrP3cFiunmghewArXvuUFGdekaVKUNf2ibKCDC7MWWqSvviazZLFS36JKTYH4h9KV4cfwPJ1B6x8YzWprxrT: '100000000000' - DdzFFzCqrhtD3U1gBCqLH1oTm3woUnRc9QuGucApBQfrR9Wb2Vom7eEZREL7r7qcPjyA7gmYEP6qMByLQQJR6HdZeU3BXhdCpjh8BZkS: '100000000000' - DdzFFzCqrht5vQCL9uJLZbrcUNHjPveH69TAj8HMx6gAcnbfAA18yd8GbmTLqj16j7encGSexZgy1my9Jh9k7sjkUJGfCpWkaGy3RESa: '100000000000' - DdzFFzCqrhsfdjfkngqhpt4jWALub9s31U1iGFzKYAiwZd2iLpSVdywEdhU7YWkN4bBhQYGu3knBU4fUT6GwhWg75CKLb5WF8dtLyJXQ: '100000000000' - DdzFFzCqrhsyYfBwQ2CK2aFg5sS1S1CnqkYWiUvTf4bL6aKZTb7DTgvsus5jLaW8sQPbbLCZUFJqjKh3Exg9vGMfgEjFewkjcgSqxpce: '100000000000' - DdzFFzCqrhsirqaDrY3GEHudjBKKbin1YFxhxsFPpfaQkJoh4gKJmuWZTk8yVPSENhA6jdVW9AdXrudBWXr4zeiZtmbPqTGzzPXHrJ5T: '100000000000' - DdzFFzCqrht3FErm1LHLUtvQPzrE61TPoWg3dvCaPRiTQ5dEGJkiZxR9eKqx9knhFkYBj7fmGYaHVkX89xvtkprepfiCB7hc79oWfqao: '100000000000' - DdzFFzCqrhtDCtieR9HLGjPc3mvo6njY8kBwzQD6kQhf55zP8c6kcFz2B1S49KkxVymxtyLpE74zfcMCuSUTpesYPnWMrN2otyToYxRM: '100000000000' - DdzFFzCqrhsxFsmvzPJCLvV3UYHtR8xKZC2JLJugTQ8rMjDj5jAzoRdG3Z5dHzEk69N7z6r8bYLn3TV9Lbh99UiqbLAA9SvVeEapmJ2e: '100000000000' - DdzFFzCqrhsfEhPt2rUx5u37jUchKeNcE9EFKVUxNxCbRUHQFtwVcVJKrbmckmdhdtMpRHbvBpt6wW1ug1JzccS4Kn53FLH7iPhASp8q: '100000000000' - DdzFFzCqrhsr8kEgE5ceq2riNbJEm9jEeXU77CfFQ4bhkNjVEbea4RDVsMEbrpBA5xftjWK8wKugdxpPbMbW5vh8bjNPVvstP6L2MKBT: '100000000000' - DdzFFzCqrhspYmmcQ9WUEmmr5hiFpdRspPbWp4MD95E6knR1TnmW9KasGAXSmA5QkF7GkPPCXrUCVHUvP2ayVWCiT9QFqyrEUJPCNYQj: '100000000000' - DdzFFzCqrht8vv4HdEPw7kdn5rDd5CLUXfU2M8nCv2oaeSVvyi1fuzScUZy7sKg8igjmphPedJwrUraatb991z8QYX7BU2aM3ApivGBx: '100000000000' - DdzFFzCqrhshJv2hh6tQu35TGhj8CQpNHKCvEJYrdthkwUkX1CfmT3ASAFrHS1eEKxgxeeJKNciziGzNNLHcTAvZFyxMS9TmdstvHEEv: '100000000000' - DdzFFzCqrhsjp3PvdWZpcpsjjPJQFWosszkn4dVxVom9ib35B8BUgSj7UHSeUeVk9hDTSY5zVRJvGCBWwRDDS6XyPXNBKhrVUBF7rUUy: '100000000000' - DdzFFzCqrhszS9FxeU1gK1veSwiAazL5i6PJqxL79bzxFtik6oUvXhCaMRWk6Liznjef5FyvfqMJtd531ZkARDcAsE9wEUCywC3um2Ka: '100000000000' - DdzFFzCqrht2Hmtw1WRzqgnRHLHc21erPB53aJwab67UAaHay89fMiJqQ89TB4e149dCRNDsqacvYm14yLVRSPEbPAkF4D6qTziYEf34: '100000000000' - DdzFFzCqrhskmq1rWnPEH8AUWqJuBXtRMRrz12QkRjWFS1eb6zkq3EsjmXn8WyU6AZHWWk6SLzre72qqsFmfUyASHHWjCophUNQtZqEp: '100000000000' - DdzFFzCqrhsvzDsvN9Sv5ASJo9ALQaHCpTr359qMhybZHJja74anQDiRSkFWrcN5CvsreedBeewJNNnAjBTYsKWy4dMT1zrX1uCGp5GW: '100000000000' - DdzFFzCqrhse4U322kYnW4K9V3p5DoE6Z6oYNLsyfztQn6kbNxvpyrkixCoGB4VFZzFuHAMCjE5ueCPSHPbz3JZPG4iUTZUu1SVyo9qM: '100000000000' - DdzFFzCqrht4uV7aS42kcmGAW5SGNenww7QJCa97Lez9wwPGqT7mADBUFrCUjX82ftf4hCVDENqumXfVKPpgErRMaynt3nweu4bbeMbv: '100000000000' - DdzFFzCqrht6o6uoFEtsNDPFRFhR4DmgSGmCYaDHAzcuV6PtyrZkPJN6AMbiBE6BkBGR4aioUYdwFVBgxuTsPYGjypZ1kAtXnjXQQEL7: '100000000000' - DdzFFzCqrhsjFqjm7WR5ZxnCgX4rUcCtK6AKTtfxZ2nq6mG6mh9JiTjVdQw5UZtaW37b8RUZcaH3nzES2jme2bLiiWxLQ4rYmW5tMJgf: '100000000000' - DdzFFzCqrhskK2z1eVbDqzMpxcMCa6VbCwoX21Gq4SJYkgAYJuUGbV3YYfy4qDfAoxKcnGbZw3dFxG1hmX7ciYP9NSoci7gWjtzxZLQB: '100000000000' - DdzFFzCqrhsp1VCERc9JF2Z3zxCmuFqCb6unSA37mRhfDtoMwityiMu94y9bAjdrfw82eLCG2Gma8LurTmt7VS8hPh8viSmuhrhGQYrk: '100000000000' - DdzFFzCqrhskq2aGJFn1ktTs7QxEkGR6fUyEX4tnGkMqm6b6oRaU4ecjS9pmALGpGQE3roBPdJcitu7ek89WCvDmPc8BrUwandzXrjb7: '100000000000' - DdzFFzCqrhtACHAaVWPhDNEpQELtgxC1hKJhvmPMJxDmgW4GSNBPfTJfQTUZusdAcR9raHgFa7Rc4GjpYdEfY2adAAXu5UtzrQDhgmnu: '100000000000' - DdzFFzCqrhsuFkk97VQXq6LZD1SxEHvu9QAZCghaEnqugvvJEVismR5unpPpoAphVXSSarBSB7CQNd4PdtgkuyrQsW8hWTZXBgudX5FN: '100000000000' - DdzFFzCqrhsmn928sFHooNxxqNhfN6YVxyhVT774MrJpCwVRFHaf6wG5SCbv9NwRyRdFoeWEcD7fX8XiGmSnCgosU3HEmi6iGizEDjvo: '100000000000' - DdzFFzCqrht9Rx81VgehV84mqJiyWkNkhP2n9Jr6LEvGtXCPeDsX5zM86JJELau1XqRRvGZLTA8Ybsu4bim2kCrSykXiw4yHPeQ6zhJW: '100000000000' - DdzFFzCqrhszsGjmn6TztgRLBLogNcLSQDnhaQXqHhCv6J1CBVSuaB43jKVp5NcyBPYdw5ScNaDdHUMsLEtbGWnhym42zUEkMg66r8UY: '100000000000' - DdzFFzCqrhsp1fdrEw9nkeR72wNPiRw75ayiUtGyiCvn5T1XZnhM9cd3A42uX4gGsfXHtXMsJ7WUMgphAT9aX1Cct8bbYbBnsGqtbpgM: '100000000000' - DdzFFzCqrhswseYvnMZtSrdXQd1B1oL35mC9eUKGZvvESmBDSx7EUAH2xoAHtKv3T8bUz9GcD5aDqMg25tHpBx8mhDyTbN7vxRSPUGQw: '100000000000' - DdzFFzCqrhsmGC46MxTWh11T95Z3MhMG5m5S51z6Eatq5VGA7b7wEgH7VJ99uVgyFsUx3T212neZbS7WZQxoeFMNLMoPHC4PvJDyKuLZ: '100000000000' - DdzFFzCqrhsuv7nZw6AKfE621zCeggTMT1nAckJbp931rgnHxj4cUG4KfxLg4MfJsvNm9ZNcRAjeU4yH6HrF6MoQpMFJQKCRG7ymXtEJ: '100000000000' - DdzFFzCqrhswyrxiuXDhMYvTpmUwowm7nBjSBaq2sVogFF5KMYLfniumZGV5GSKmTnE3HDUEcg17SFsB7FXSsCTB31JEEtwpCS2EhoW3: '100000000000' - DdzFFzCqrhsscwofDdwRdoug4Yj43xVMTRqSc87Af8vWvyPL8ctmY3YBZbHNf7pkKv7rYezPYak8gFqhCof37ZVR1JM5QpQMqsM1j1Gb: '100000000000' - DdzFFzCqrht35BG5VRCEb7jrS8Zm5eMfFNo6HwtGr2cx6FGDdZYZMAnmaSyh9yvMdKzpSEJsWcBrQPTXqkLLh7Kr2sxr8sY1PJCtMNq4: '100000000000' - DdzFFzCqrhsqcNVurMcLit9T2ZCtGaThHqDtjiQk8XbUwTWwpzELWb7kL5m8pxaunQFxeB6QQGgeo48gcmqxw7SZY8Eg9XYD5cZ5uKVW: '100000000000' - DdzFFzCqrhtCQeGBhZT34bctGEd3DY86M5nYAFomdnaBLHMizEbNNcbqTpywmHazqob734QzFU9FLVkEPWjxBoxeAFioQvHHSJsGpkbY: '100000000000' - DdzFFzCqrht3EWhQFghHH1TPiKPTj286dcAq2QhNSjPe34ZqZo4HYcnUJDQFapAbBvXqnS5rDBJXwZqSLVf6t4FtfeBDxaXtNvzdT7SW: '100000000000' - DdzFFzCqrhsdq1PHyUk3DcdR7kf54QpXLGpJT5hYcDLRcxaWhvNVrCsqu6GKZt5RPjbV1Q31cBDCsVVMqg2xiwk93kSXwnQAn8w3LK3K: '100000000000' - DdzFFzCqrht4bPYAu3rPj9dNH584Ms7pBfPPEQ8cSLouZ5vMyt9k4Z8f2iyATEq1kqp3n8Rgbw3iFiLxVWS1HiZSuZ3ogUHzrZjf73Uq: '100000000000' - DdzFFzCqrhsm8HcYs4oSAFqbNqE4dmvtwjZXgaBHJJPNeW8M35PC6tMwnzcvP8k93YvUNChnYPzSNvsivXbWfYEDFFPLWpf3EUxyAQRd: '100000000000' - DdzFFzCqrhspqVPRJJ82goLXmwUWgav3VKes4QR3wpJgBfF75UV5Z57gSrvb8Sikk98X2FK7j9rFVts2Nz78pL8sFEQDyKtywyJz3CUM: '100000000000' - DdzFFzCqrhsoedW1ZV9sRi6fiDP3fijjdwBScYQL9LHmjttTW3qeACHKHmAUqzmTjggcxt9gcz4mMxFNYGJkhia22aaUTyJQqHfRbJBY: '100000000000' - DdzFFzCqrht1mTMgt8AYo1RiZYPHE1KZ6mN2DvEPper57SgFWHyqozbXoDPwfqcqg7j1PKhU2Fz6Ts1kKvtTy3adQBM2qzLpN5NnMLPg: '100000000000' - DdzFFzCqrhsko6ir4rSwzXDvTMGD4hsijQxvQYw3Xb6pftKLnY41j4Eie5T4qHeKSBFdxNDEyCpbY9Dzjy7FFstDsAUdTe63JEAYccvD: '100000000000' - DdzFFzCqrhtBWQZs4fZiv3ZH2awqci59MkYCoS5VXK2hSZuGLHnHvPLn1nNPgRf1eyZW1F3uKHBZcphbh1G4PRzDsxpxLF55h2Y6Ds3Y: '100000000000' - DdzFFzCqrhshm6GhHtsgLgYj8Ww76zZe4DV5teHjAfrtezrZnzLHeneZDU9iFujyJ5N4QT9yzBX8RKDHKQn2DWp2mY5CN7t96Ym2su7S: '100000000000' - DdzFFzCqrhsyt33EA24bfsxWeQeRmxqkKCPsq4SXmDfsV8mwEcMeveXsaJpXUXBn3Fjrt1vDtvaECjWspxKo4ZcW9juBLhzEYx9HenLY: '100000000000' - DdzFFzCqrhsqF7uoaT7xgeMp9sAf6nTYecmdsQWxZdFNyDCmczaUn4wCQLMJfxALrCvwZmJpkVn6ig1mM6LFX6jcQRsMi9MyRSjM9tur: '100000000000' - DdzFFzCqrhsftvhD4KEfsa5PXhtEXf1K3AwtJnT4jXDMMgEEAD7gVsK6YKb5M8Phk6cZsuFnoBoDBHdBtGJngSumT6DS1iZD9xSbbFSK: '100000000000' - DdzFFzCqrhsePcXjw3jMJtXX59Q7LTTeMqXjRNas1Hcg6xEqAbL13HoWTv3fLJoXQ537GiQrM17WLPyVEBSfJiWJ4qRTdLZhUnoTwZmQ: '100000000000' - DdzFFzCqrht598xTNcbgJnUvKz8L298hdPYdx3QuJiC9MvszQQs3WNSi4KDk6cWjzZTuZNJcMRKmKNHpeBeGoSBhyjnnQWNJoxxhqxt9: '100000000000' - DdzFFzCqrhsuci83wQjAuydNm37t9qrmPf2a15kCbnnwTo6j33ZfU8YmK9ekc1n5A5cGcCgAkXZeXMz4R9hMnm5qWvP3GFBjv5hbXs3W: '100000000000' - DdzFFzCqrhsvTaSoS3EK7hc6EVjVYFA2jyKLsb7Hwy96Q2dvJ3nnhdS5Fayxqmp6nrg1rCVr7RAojgNnTYHX2CBZ46zFxCmgs4wwkLqC: '100000000000' - DdzFFzCqrht4y1H2dmZjKLicsPaGKiV3nbgPDy9quTkibDWyDxkHJdyQoCjEsNYwTa6MVT1jCpdzmULarPWWDAHgRXLiRDmB3ELhWrbt: '100000000000' - DdzFFzCqrhtBMJt9hwoGbvwPvfJBQCUMkkmh612kbdAsuW2b3P1y5Tmd6Dm1FYYhbVitQsxVeV7ErfPKPYCP5eZ2GKmeqawNWsVjG7qb: '100000000000' - DdzFFzCqrht4FThHVnPfHeNa9nHgk6hiH5oRyvKB7oPCF4JTcrkAGWucFiPvsu6ghq9egZNpLvFvcGgjd8a4CgNw3fv5PAsjc2eF1Mu5: '100000000000' - DdzFFzCqrhsuK1xmMjeNjp8iNhNmDRLmVSRJddNMCnarR2Q1S6QhZH1CrKAoQA3uTRcu2uUVB18jFuscFVan9wfVLv9nMiHzvzb6EGiU: '100000000000' - DdzFFzCqrht7xu1ThbvWAGihXyoAZSfdRZbZaEvoVoTQ218tzjLCVVAWdmKEnvEXnDtSvS5gKJ26LR94aXjwpkZefGhZPipiu6xoQVBS: '100000000000' - DdzFFzCqrht6h8wFKpA4QZjACXa5ULSNnSMP5JjeviGB3JiFvqHiScsA1EMMERBUF2z8FsEv1y8iFCqCLx2o8iG7vNRf4Ego78Eid68v: '100000000000' - DdzFFzCqrhsz55qcBZWT48xn18Stbms8KdULWBh147jwTStQ8K4ECj3BYB8uSnegDZ2EzZQKkcpstuqPS68zZiAUNJPqFN24mEMoLtAp: '100000000000' - DdzFFzCqrhso1S2dBxNyzg3UhRzPqW9jAwN1Uy8GVZPKMXXLsSaFw5hq4MRSunJQ45gDbsFAQFwF3ZcwFfozPpkaeHYVwFZEL8bA8bhe: '100000000000' - DdzFFzCqrhtAev96FEZw8pZVRUFEPJThZ27Gtm9mDWVCt43RXo57FMuF9ZFYztyQ9QJM5KqGd1BQyzdos4gdaYbyzoLXtGxJGYVYoJAv: '100000000000' - DdzFFzCqrhsecM4JhNsDQBu9iS64LGGFMrGJrZRA3WDDa51bAVtY9VDRSacwP3nNURxtCbFXpFPGaMJnCRknTYyupWt28uUN3hbakW1T: '100000000000' - DdzFFzCqrhsf3RjyaGJ3ctLEdfZMr8SpHnbGTUzEXxw1V8uENw4N8BGEXnpJhVMnYoKyiYvvHQaNNhpoo4ZpVt5gy8oXiu2ur96RUSF7: '100000000000' - DdzFFzCqrhszhC9dk1PDjBNeqCwrkkZroQrmoXhn3i3hhsBdmx7fi2uSYFs28VGjurXxeF4Ve1PAYVa8MpSZ4iDy3t3pjKf1y3YrNBoV: '100000000000' - DdzFFzCqrht5ukJkfXpPgoQHWxXJP3PUjXLg126hSLWyz7DDubuFAsVoWGvpXhcET3B8RVk6pT3ffH4TWP166Z7RhDbawDKWUVmcCaDd: '100000000000' - DdzFFzCqrhsqyxfVji35rFdco7BBvRa2zPVHwX7GYP6ruYsnS5ebhrqoZFPAg75rXVEE15UJgEyMxKcbaknM5kvfmvYMMs4ubQgEm2sJ: '100000000000' - DdzFFzCqrht8N7Svk2Vc9wuCkWTk2WvET1iRxwkakR31UWDp6y6Bz8sJtjSRGjBWbjiaMGu67iS16nSpMMXZ25b4aUZ2BYfdzYeSgsek: '100000000000' - DdzFFzCqrhsqSZrmAQtW27JsZXzCZKekUBEeNhtorW2TcKg29MG1xQkuzif6mJGycsWBiyv3YKw7G5tpM3UvhhopuwPx5tuuFPNXNWDz: '100000000000' - DdzFFzCqrht8cxT4gBj5g4FZ1Nih5PRfe12mv4J8m1PpDd4LofMihn96oCfbhyh2gZmBrERwptJUD3wgVYhjMuK6z8QsxnpELRgtJbmj: '100000000000' - DdzFFzCqrhsrhPc7AgutQv9g8TUF6UQNXMDFqq1Ak3pQvK2cwrdg5924TW449hhwxFC8HcgSiJFDwsHtW7hc44XpKr8VNMaVkMho8Qpc: '100000000000' - DdzFFzCqrhtAHYHESKJ8qwYy5QKyGMHBsN5hKKzLDpPZo4YDDHqnbE2KGMy4m98JEvGWRbQZ4K6Lmpnu4jiwKgeiv8Xb3Y1k21GkQNyT: '100000000000' - DdzFFzCqrhshWphRtzfuCWYLJjgUxdH25WE8wtM5tSC5oQvSEHmBhXEYvp7oPtsn7NPsVF3vpkFgNVkNzkAzz7dSnVpGcK6DDR5vjYLB: '100000000000' - DdzFFzCqrht9gED4v9iCwctdj1GmJByGLZSESFXCmW2LBS6uMJAzMmmgph25zphKiTaMy2Sd9qBSVYMDy4FiMQgNHjgWnQSZSWynTF2W: '100000000000' - DdzFFzCqrhswGabYQ8k3qENLQu9zDw5wzeCaj4TqKgoUSdCaBGCdFWTQmvwn9zexmk13AVzus5GvQRZew49PxRAc15KAXzvkU5w3XjK6: '100000000000' - DdzFFzCqrhtBKUS6RG2zETFgi8Aw5KxgXpgaiiCs7hMeKmouHSaQi9Jpyn9N1N3rZUJUi7jsDCkuBDdtsaz6ZT2Smz1WxbriWodvp4oU: '100000000000' - DdzFFzCqrhsrFpZrnR8p5nDAp5w8PVk6CHWDfZNF2G83erd6y64TK8bmHHfSXXiXZAmN2xYbruEPFSoh9XFziSWTdpUNn38UShYNwidG: '100000000000' - DdzFFzCqrhsoFMCcVAtQ2xgPLqV53CpgcAZjxTLkrqzrkGpRVwU21gqeu9zUi4PyxBdfEL8gHdPsSF7DhLuU7cseB4hVbjv4eX6EWZLe: '100000000000' - DdzFFzCqrht3hR8rWXM6RTp2yTAMk981YZdenZQGWpyiPwXRRCaCWqJzk13kfaP9LnLrPY34cSjEe6mnKQDvRwyWyannc5MFB9wSE4wB: '100000000000' - DdzFFzCqrhsqQ3S4M4GrJ6xzSD3HhA6XpEjUzRE5dKmfmaWvdamGzZYq9h7ZSDM32zr4Mja38zso8qFhJiM1oCTckjnDEsUDxS2MGX4e: '100000000000' - DdzFFzCqrhspJvB8ZbSgbQk4kkr84N28BVieeGDHQ3mSxreLQaMdWSk8M5Nt2qXdQ75Cpj2VBgXmupkoRjGbdr5vYHnhD5mduhdZA2a7: '100000000000' - DdzFFzCqrhsm34xyD3JT9kebupvpZMGNvp9gsFfChjGPMZ6Jfqj6jVRFV7wWbvVDhLtcPQrzvkNDgy9mNkfzZGntfGgLdHmdkHC2VjPD: '100000000000' - DdzFFzCqrhsuXrMEpjhkHrWAhi1AwYEAzWjS8nkFSBTsFxoUSyX4rVExeZYJBrsXH5WtBBXBbQfSL5JKdgD9PezWqU97AbhZnLWiu2wc: '100000000000' - DdzFFzCqrhssp3cHWwX3dbpmbT6q7NM9NMHrLBXXBPpGcM7YiNxCNCWttAWspZuhMMvvtJhSHj7Sz5GopKGqBVNB4s4wcEaFNXoG9Wt6: '100000000000' - DdzFFzCqrhsuZGbagphdmToSyBfShaBenxrGqb6AyG6afNZgVianCQPF2xTdrqHGMQFSrXgUSA4G6745reAdUAiHapeXW95yGsR7ZdSJ: '100000000000' - DdzFFzCqrhtCyezYjfeok8vQc1nhaEXt9nES1LcmVM5f37cLERJtzP4Dyw9sNrBH5q8FgqKajVFX8cD2jqNHn34rpPDPRcV3NdJHzXrG: '100000000000' - DdzFFzCqrht12QSQENL6dgBqh11eNWHziyAgoYfjs34P75iAV8iFyLGiuLPKehqw4f1r9M2sayNxxJ6QpCeY27EFQtkwJ1xvyLqBsx8P: '100000000000' - DdzFFzCqrhsjmVaxFq3LqaebaWp6Q6vzf1Pf3JLe1sX2iUkAAkzbF6EP6A22gWfN6dDjU4eMWB5YfyGNQ5xX16WMG1MqFja9hv2gyAqv: '100000000000' - DdzFFzCqrht3s6trpmevq8wY32vjMe9feXVJR73VvfrbzVd5qM8iTLyDVKYfynoTsv3VjgwMLGEu9ZPeUFLHHzQPec6kYUYt2b1Tb28R: '100000000000' - DdzFFzCqrht73tSGrXM34JSxYSnYfaaXeYXPc6d6iNeExruHXVmZW8hjExmNqAy2WatVFyenpQBZhFf8YePrexqmN87Cc8gUeuH5b5Ds: '100000000000' - DdzFFzCqrhskgLs1wihXSPNNF3oVJPc3GvFhsgiThv2nohxqBjVWhxPqoNSsRdDyQACLqwuG2rA32gLVM2W9K6Fbn1k1APs7PpRmJuUQ: '100000000000' - DdzFFzCqrhsmnVwuUHTkYbUGDTHkdGXKxP4UZbfkDUVC5P5RTTXYPs6tEGBeFTmkvZ1JT4Qvr91WZt3ACnxYXKh7zDQkDqa1XAehEU9u: '100000000000' - DdzFFzCqrht75PZoF7J1LGF67Z7DzdPUuxx5hDohvcv5abfBySf9Tf11BQ768m8QVoNRzhs7GsAmHZgjME93YLjwhN5SJ1eUoKQNH91m: '100000000000' - DdzFFzCqrhsithh7MYQH3AVcAEtm4BaQP81SZzrdYEXguf2otCZb6PMrLo2fYDfCEvozwX6bugzXF7BB5U5kQ5gueeMQXHjjWGV4hCSQ: '100000000000' - DdzFFzCqrhsuUAmP5L5UH5yP3UmxfSdUNRAAr7dRz7T4EzK1x9y2PyLBexj88AM2xnvX8hFCtGtcTdHvkzrzjScwYR3odJgXomks5tZ6: '100000000000' - DdzFFzCqrhtBcj6beVnGkn3X886MS3X4HsCvztkxzibwD3zqm4EFDfUbbESeVT5Q97GryFhrgMBFrnTT2CTsPChabvXbnYfi5DAfUrip: '100000000000' - DdzFFzCqrht2C8t9xzvyso8WdFc99MBaxQTa2KiFanCNhjMwuU7XhfSSdiM13KpP9r4ZLJLvCmZAngh9FpxYjgTdmzCK3roAxJNMD5qU: '100000000000' - DdzFFzCqrhseH7ZxVicLqNLFRS6tHi63aYDBygFHWX7kiPi4WJjZLozmTnyPnn36QvzwLn8J2D3ZpffUUiuPh5MHVU77kAM1gJRZTUwt: '100000000000' - DdzFFzCqrhsvs8BUJkUjkezzNbPkW1UbvvtHQv4pRsJFn9swkWe7VNuYbCGZpL7APXp5wUNfQoypDjvGFtTQ1GttA6yhDEYBKUMCMGpp: '100000000000' - DdzFFzCqrht1Sdu3bWsFMW6CATc3RA8etJnh1cW9yqt6PtymxnSMkywKn7pemzgwAixjPfQtsPde2D7K5tB6EhZiWx2TakFWnRPa6Ry6: '100000000000' - DdzFFzCqrhszNktP2h3X4SM3Fsgj7fsi5mg2wRpEABjvQbUBz4kr7zUBJR4UNRj8BNR3xBcrqRHPVMwqB2ZM3ypiXbVmQrTXWDxRr5C4: '100000000000' - DdzFFzCqrht4nAThDbLoesmynPijtqvF2E1qPWXTqUvxdBxnZDSYNWQKR15zmpMyqPppYXgJszUa2w7v8Pe4iJNuFE9vhL8BaWvv2h8X: '100000000000' - DdzFFzCqrhszqtLSk9Vn2GhHkJpzhKWgigLSEf2a29EuuaoFLT9naACVqRMbo2sUPQetxj7XyuQtDcNzkYvJm3cEazBk4YPnRhfudJU2: '100000000000' - DdzFFzCqrhsobennBPaegJ9DS7vmpLHsHaMRSzjpkHcGET3xgk46WPsBZPLj8muG5uE3RYHg3ta12ApWDuqb7M1pVqRQr9PDjvjfW4zD: '100000000000' - DdzFFzCqrhsi2LJqKjzjx2dPYoVeNkZSY6xU3ExFSCMAqjRxhsjRqChk83SgnRR9U9PNkUM1fUQGsHPWwE88RDoCEpXBKswnanCFRF4s: '100000000000' - DdzFFzCqrhsvNLeV88Sca18ngaoXZMj5AKrAuiArrZPBCjvMpmM46TjpHwwgLe7jkYF83MyimCyyBrg2DZ3tNwTUyPh4arAanUXPxoyj: '100000000000' - DdzFFzCqrhtDDEXJUVpwk3hY7Qoov9qZ8opjoVfJUDXiN34Z6GtaKTsKDJugfrNshAW89f95jvKtrUeKeXMedehNcukU4uBoZmmdvm79: '100000000000' - DdzFFzCqrht8okn63zWJeU3YXfAMvWhVR5xX3waQdayPRznMzJSoFZ6VexxywugCGKJk8rmrF7jCGPmpg1J1yPBYM2aaXMpqyAnSMhGa: '100000000000' - DdzFFzCqrhsh8HnjvhZHNGLRDLQyNPoWVBsWJNGEwrUzjaxjP4mz4ky8qQfU5zHpjsHRENK6UwRApkhYaE5Yix5R4z4YKvi1NejavrYB: '100000000000' - DdzFFzCqrhsg2t5zWdHhi4YC3CdDw5WrH641V263P43ic6Bjvvm1W251SdaHXEphYdmYo4Sufd1aBo2YexVMWqSG7pShg2NBdXCw3qez: '100000000000' - DdzFFzCqrhsmW4eK2tgHhwv3VUUHY9G64nSEVLohbwKEMBvRTr1Xv3KaBHNVSFD3NYXWh3Pu35cdRJgww3siyaPfQsnt3jpCiQPgcxzX: '100000000000' - DdzFFzCqrhskCNPjm9y7NuURa34Lu3yNNBb352nucX1CgN2AMMEjZVzcGmPqd8J11c9ZN5fAY655bsPRb7ZRR2MijKTJBpZpbyf9VauJ: '100000000000' - DdzFFzCqrhsn4wGL1xBJgNBjDx5f1ZDnZ5hdzLwKufQ7pTt37VCu5DCo3QKKXWair2SkgVsp5nRmSLnd89hYCHv4foJdD9mKR85JDMF9: '100000000000' - DdzFFzCqrhszHW4NZjXiLozNvPfAShzZFPGoVxkqQRDynKcX8AN3vTsaMvioYGGNaQ3CB1jjGWdVUyQQ3psxPJo2hqPysgGC95ZG7KCV: '100000000000' - DdzFFzCqrhtAxyD6YE2oQeWUxhTT87a3cYrSQuyySHqMq3PcLB4zc8iBaVKJFvibvtNhUHZVrxXoRRvEzEFXoykeLBJQkkvDKCYsPB7e: '100000000000' - DdzFFzCqrht3p5bxND6yegJRgsq54ozEsPPMXUoJFesuDSiGSEs9gNuAQ7Mdj68YKayNqNbsBPD2iXubR1Gm3AWmP8ysoBgE8e28ZZ6K: '100000000000' - DdzFFzCqrht8Tt3RDcCQMeYnmv26JV3SpXSoHeuSoZGQYLz2PFqv4nc2MsUM4G4MLcavwbZK4Nt3KeGhwHZ6bceasgU3h5CoF15cLog4: '100000000000' - DdzFFzCqrhsi3hDdrT2qt7FyREyj9opL3qyxyZGhx7yqcsQMJk1KRsyVbm9fuuckcxJojmKi5Bf3hUARymuYmKKirYVDJWpYuZRycuYa: '100000000000' - DdzFFzCqrht4p2xyooBkGxduQ9Twyzk9poePc8tSaTRaV8pJ474tZJHRUsoVXFJd3NuNWDnn6nWtEcaD5kXSmn1A6urVQSHy2voSrPsj: '100000000000' - DdzFFzCqrhsuMmJM2URCSETY8GMe4kYiDdrjGv8R8LKynQWcqNf5KTJ51Bff873w14RuWitzwz9wGQZh2jEh4dDvEow97tK1Ds6tZU7q: '100000000000' - DdzFFzCqrht2eyyngsrqLW1zRVWZo1Ap2XQTJW23EQQVNnngjQx7BvCTEQHDdpnuRSTXnCkmqx8T1rQrNPAa9kugM5cfuNmvSUoBp5CL: '100000000000' - DdzFFzCqrht8sJAdGeKLFEragNooh1JoJFANmxJwXGXeBgAkxLApJVcRJbWkU5fh4aEdqwtJVFibvHZG6nRivKK57Ws6suw6H29bocam: '100000000000' - DdzFFzCqrhshNbqqjHqmwbuBMA6LNG7LFS1CiWdcotPWokBLjHxzCW6d2jW5WvCfVsie2oyx7HrnGWQacyvV2D7u4FS5LfiUr1gdfNXy: '100000000000' - DdzFFzCqrht5u2qAJnrPfjTw6GQLRbAyX4ToJrXd5f5iTtTRT8Qvuf7Mwnu9qvE6sRKBWqy1jc2mXKAzRwkx2CXtiAUTZzdD124X1EsS: '100000000000' - DdzFFzCqrht1e3sfnY8C5qm8BtTZ7JgeJewWXj6AseZwa8pBXc8s59gkcPfjMXdTncnXA2QhHoYcBdrbB4Wevt7AZJPEEf2ahGqTKmBR: '100000000000' - DdzFFzCqrhsduBmKoiyV5JMptPcsx92vEjEP1XB83vFZ9PuJHwL4LbT1YUahftueutWrd7sCxm95WoyvXVKz4mR2kw5XjXHMKvtz1wNY: '100000000000' - DdzFFzCqrht1dQaTmtvXDRftmxo9eAE5AKP3gH9rtsqNdCKkLWYWkswhBXSJKp2HoWmwJc2o7bEYk3xLUVMHfxia1eJKnEX5Li2aZVWB: '100000000000' - DdzFFzCqrht4KnDKouTA9vbkDTEG4BHbYQK3wEYKu4HdZaSLsY9Ahk6NQaAMvRBZH1k41ndaCdJMWFeFEXhRjmALEqkJQM9mPZH3mypV: '100000000000' - DdzFFzCqrht7ReDSccYqFgHS3n7SsxSXupaV6EbDANTHxzNXDQfeKR52Yybqu5SEbJeCgzEzTmPuSUf5MdJ845KDAszaEuvkX4paDSH3: '100000000000' - DdzFFzCqrht3ZBz7b9mXXDpWPornBjmdBFD9kUuGDPcH5iwteStxgykjV4F6vE15ZPcPrDKLVsdMuFXUrL1sjM9ZqCEewjGxdDphXqYX: '100000000000' - DdzFFzCqrhskCKLa5Jxu6EgcqGAg4bQ65GqT8dfirk4bQwbid7sU9bZBRqXPDQNZdCr3xN7d2EwKmB5Z46MRZQc4yHi86YS21Ve1JfBU: '100000000000' - DdzFFzCqrhsscBVBBosRRqdzV9bZLLhw2HRWwJPnPccbnWesthDRmYzgFvSYpmxxGfFwhb5ZoMhLenmWnurrUxrrsRQKEZw67m319eFa: '100000000000' - DdzFFzCqrhsugi59n2nGhmcffPZUP3fn2R3YBkiuUjYEipfRYsmg9LdZCh7kzLbahK8yxq4R2U75LV5MZXEdCsR5ZWiXWnoSNnreEPm9: '100000000000' - DdzFFzCqrhspMZg6QHJ9Qi1HWxwsKKfsYwhv1QAFSFYopirBFTgA8C24h1XsSrAJ5vY4vm4nRSF7YCLdjcGYcCnocAPtpLdA39P3zqKk: '100000000000' - DdzFFzCqrhsu5AuJ2K94J1DZVpE12wK1g3QhFXekPqNHXTtoaWoe9CJjBwEakoJNL75TUPkVe5EroKEx9CFXU1nZBsBRZRAgvKZ3wZBs: '100000000000' - DdzFFzCqrhsy1cnk1fixDdwwwvVapurcTdFMMT1cd2rshSZ7Lm24eE4gqsC1CkBotNpzumaqgSk4azFZ54XhitsLYjiiffdi2KDoDxFz: '100000000000' - DdzFFzCqrht8JenNkJeSvk5Rf896wJKS114RsmvYm6YBkvLzg2cDgxue1myB5ExAf2yFQkp1tV76wFQTCTcxvXwzGAB9UnGVcvcVbALm: '100000000000' - DdzFFzCqrhsfoPMc4WkrD2WnPE9PcVEDgCkKk65dCqALi3rAodXB3Vqq2TkXW26cNXeSXvzobPB31WArwxB6fFArViPAkvAzz31ge3hP: '100000000000' - DdzFFzCqrhsr3ndNijDuvAvZLUWKRfpqoaUuVf2g22gtqqmmDQk3eAL7aRZ3bik2yZGGruZYw7yzwbbawEhcKmozaDf2pMt8iFzCQTQD: '100000000000' - DdzFFzCqrhsoDAv22hhbouwKscBNRRnh2mBcUwHBcfLH17uxN4tfsQWJDpwpna96SsUYUk9p4qJoX63ApmPq9hwrJohFiQMHAYzFoPU1: '100000000000' - DdzFFzCqrhsjD8ifeVpNo6Me5hyTsRPgB5K7JZ5GJqPeemqCgBQTcg5wew1GkZfojYGUu8KtWSVXCo5fYn6VjC3jsCYNvamTdHfVLp13: '100000000000' - DdzFFzCqrht3ncXQfqXbjMzuGtQhfsCdHuX1FbFDXn8seoFJpuEbTZKBUujyYmxiSgXafqkrkKwHeZtLbzp15BwrngZS9qzbMTnMsfjA: '100000000000' - DdzFFzCqrhskFgBrTWsyX3tVzybbwDJHXmLRo4ZKA1Xh2xyaqitGvHWzhoXrjcXbsd9yY1Yz7oXvCj3QwC2QWjbAikFu1H72nN6rPKFL: '100000000000' - DdzFFzCqrht8aFzSNnc8NHzADWNufedzf2EcJCAzK1pHiWXPPfN85EKx5Ze1sohdDwQXvcbu4Eu38QNdYTwgQ1SPscU2AMYqH3xN5SsN: '100000000000' - DdzFFzCqrhtBd7BmyTGMUQVbCuicqF4MoB8itzgFQyeKQxr1uu7C3KVJ9G5xdQ1cp3URRDMQKtoKWyyU18ALzaqwLnnRaXskACYbYHw8: '100000000000' - DdzFFzCqrhseDfLmPMXexSYHT5BcuqrCaLaj7Utv89HSHEXM6JJhnj5AJCEJLPaihW28LaY5x7bGfDzk3bTzYEnXZAeWvHbCrigaHpp5: '100000000000' - DdzFFzCqrhsqDaw44Zg3FDLkXJW7RiTSSwH3KhfSZKREuQ3DkRc2ybmTDSckMm8632uWHishffQU2cg7VnMJW4o7w4LYpWxfnTe4HDfn: '100000000000' - DdzFFzCqrht6RqwmevaghJLgy3jzL6WVhokmij3LesHpCLzCjKFNoqFwDqYapAY9yaxwWdPMPxyKPqtnuYxXLxAMnproe1vbgGAEYm9W: '100000000000' - DdzFFzCqrht5n2AygCgM6WUYdahf2pDj1FM63w4zkPuuHQyY2xyeZsZVugmTiuRhoRFQZtp2zc4HTyEUM6WycDwzM7PqD3WBbHUMepi5: '100000000000' - DdzFFzCqrhsrbaaoa39zNKrgikG3oU7VirBumeBNHaSFC8KYVpcPBLcK7MXoyvdA5TedJ5VMV7f4PL6KpPXn3uv3wzA7FxsRaiYbwnLA: '100000000000' - DdzFFzCqrht7xzE2W2G4fzDaW4LhjDhLtmwkebh5txAMtmASqijb4DQmngnNFAmsFg4tc1F9KwJsLHw7daqivU298o9MCUS1Nz3H37FK: '100000000000' - DdzFFzCqrht87hXb2121ZpurC6DTq2rX5FXf8MDzr6n2sgjAukmTQSir2VJZPfZRiqyKke18SsZbNUzfLTmB2DQ976YhbhpBmXvrnyVZ: '100000000000' - DdzFFzCqrhsnKFXnVRkWWdwiuvJMLhbzoGvh438MrFW3hVGKuwD9zrZBEK6KN9EoM7L9Z6x5q9eWUftDMb17vbdynURoMpyqMr6sj73L: '100000000000' - DdzFFzCqrhtCYz1ZSzuXUDxumhL9jVTbCLNeRXMhe6fcbdxH4K4X64c6dtbPhqeouDpxpjtMdhP8L3GawDwNQdfLfHhaSxehTzxw9g9d: '100000000000' - DdzFFzCqrhsiMd7DsqPa8Dtjv4y9hVUAKoZARSQL1Kv7k4KBWorMKZtEkEGXtBthhq3Bis1k3oNmyyVngGKxZvEwuCCjmeqbVZfUn965: '100000000000' - DdzFFzCqrhsjB9y6Jpsnrni4HA81ZnsjFwTP6261yCfa3FDdMUA3F52joWZihrZNVtJAtNzn7rFUEUXkThnJcYxGGygupndZFd2d2ZR5: '100000000000' - DdzFFzCqrhsg84vsepmwRoYqu6mwiafT2LgQcdD9GTHSWCZ93pEyUGboG9rjEghPdkLZU2GwERD4PU9TR9ZaEzuKQ3ghRWJ5kj9iqK3h: '100000000000' - DdzFFzCqrhshUzE8cruj5JWmYakNzg63P9FWD2B489A1GwBRM1e8fsqk7fCVR6nb5mTYJrrjAdqMw8JcjafbhdYAGsG5CFf9P5Ust8hX: '100000000000' - DdzFFzCqrhseTr3SeFrLf2trTfAen97FhGp1w5ruErzF9Zhkt28CeUHbMnppvCubLAxpBRi46MJJDt6BHttogo22ccNzhCUCykJmKaq3: '100000000000' - DdzFFzCqrhsiHAUy6W5aJe6PJEk5S6ZnSjSDocM4kK6Yr9H4NgqPProyvZu33K2FnrTYWF3hqVwWcpioeGzCYHXaEVGn72xkaMmJKUA1: '100000000000' - DdzFFzCqrht2JtTkwghp9gtdyFjQQSS6CcsiZ5KjDqMr8WXuim5K12h3A4CExaSqqLG75qxsGKF6vUVJwVqwmuZJxmBDRd4rSccj3vZp: '100000000000' - DdzFFzCqrhsn81Bif4S4TvArGbSuFiUDjmMudN4jcWecbLV1ELMz1VRjPVDTjipRz1MxcgKcdYMLo4ZS9QgKz1YWFJqKqVzpj7or24ga: '100000000000' - DdzFFzCqrht7K7s4BhN8Q79CGFXi6f3bZ6z9dEMiTpNSc2zSC27hLUqf6ZK6KtNHbsxBfSW9iVcWK2R2Wn1NdEZW7GLk9xLVPYX5UXSc: '100000000000' - DdzFFzCqrht6Q65AVXCpoG3F1jzktnwc9xDkXeHw6pQt5wMMUik4Wj1NdRfRVmhyCubT88vCjYbVZDaZ1LuTocf1VkJeSoEvBhCV577h: '100000000000' - DdzFFzCqrhsygQoj4xwJv5LfeWaefUSm5a25iZL6iLotro4KCvW25uKpuspxY19oVZrQQrWLTwG9krC2zBu2eBAQ3Vj1QJi78kzRxhps: '100000000000' - DdzFFzCqrhsr2ceCax8aJ48gHNYughZx9YT3Vh3KdmM5T1zv25BoZ2M5NNHXrMfX4w2HBnF7yQLzdXCe86XnABoonahWMtuedDLGrgmQ: '100000000000' - DdzFFzCqrhstjXnHbw5ivuEjLxxM5orLACAtQMR6JW5YT1aeAAS4nbFUX3VnXcyhT2Tv26ofxCCRzx1HV65K8Ttz757C3bh766hQi6js: '100000000000' - DdzFFzCqrhskyhURJWsNsjWYNUxnYb2cZGZcAfLRB2QvHuuaQcC8KdtikSwJwow8fZMLgmAqvYv2JeV9XZTrR2oWyYUswuQn3AbypaR1: '100000000000' - DdzFFzCqrhsrxDiKst3RAgLE8L5b2RCHXfe2rshMDCgcY1qhXgp8cSfrmBt82ueuRbmpeZpqyS6uZoFF8Ga2qu3DcD63q3eYh5ZP6RXB: '100000000000' - DdzFFzCqrht7L4XNRPyf6UbCU7THasU41YZJ4mJuDrTobBBg8g9PCzBcJ2DavVDz3DVP8LmsaSWCG5BkkMomRunQJDRYK7YHJh8X3LKu: '100000000000' - DdzFFzCqrhsxQGZSRbGbTP5EgMEoCg5FxKDwAeUZek5QpVKMvEhgYodz2ucvzRzBjZh7vQiT3uDFR2uzp5YiQatKRdkeudRE7U26Pi1G: '100000000000' - DdzFFzCqrhsmk7Fzyfm89Yb35PA3osmkLie7BFdwqyGsko7wQSCJd8qyk2ZNDZT5EiJJ6scgNRok86jizRGQiKsLcbUdji8mNb9eCq6S: '100000000000' - DdzFFzCqrhseXFuFSSPZRK749ZLP7Bq1aD6hqz2wpQgUg5c8f315VBVuYL6fLuk14T6E5b2tATCPhNoy2b8gzyxUaC5fhBXFDxMuMTBh: '100000000000' - DdzFFzCqrhsreXyoKhFgZDdiu537ovwixw3D1zkqsG9wzUJPjhb4KvppugKZRCyeaEEVNKNom6DRzRXD5iLfrxENUFkH6hP8dcZddcaL: '100000000000' - DdzFFzCqrhsq7gpp8qXHzQUuWQYZr4ETQ2L1T8SPUiwSftsPgoFdS8TRLWBpgYzU2HaB2rcRVmta4uWd3XT4bmSKSYBCbRgEb5sAvSg2: '100000000000' - DdzFFzCqrht67GhRFmxLNzFRRr1vyanuTbmeh66ioHxhbiZWEmJDs9V2WJsdyfvRf6NhETLzcF43bUnd98cgfeUyv44PxCdqnXJnTsGj: '100000000000' - DdzFFzCqrhstx7L6UY5wZtuDVZQkndMWAmokSKcgZMudqDX3MMnGyZhy1J6RnWrYdGPU9YeJhUc33gCRuu5EE5dgERCiu2ebUXdRipGW: '100000000000' - DdzFFzCqrhszuv7rHKgyuUAYhnGrtH5y7XdWhV64fgfeJSFny7Ytj5dPKLbF75TDGtvd5NXbEdPDrAtbadY4oHw5CB3B63Fbt8CvXhNg: '100000000000' - DdzFFzCqrhso9cmx6G4y3cxKjYHKktTNHVQ1AW91RntyVAA1Co64puNeoAKN5udYyDrRc5Sf7oD8aSpsapnwFD7K5ptRGnALNGaTBnvF: '100000000000' - DdzFFzCqrhsxTWZMDFRbUNJw752A8qFMLZXSDVbtxm4mwDJFZo8dMeCYAN64BMYmq5ZvwiKSNFAEM3M8gjYyvtjRwxqh28GJqiZ7SuXr: '100000000000' - DdzFFzCqrhsgcV7HvRC2ccD5fDwr5BodgSouKZzfso5kqyGPU38f8Pe2wm8JnQCGkD3JpUPCQTtG7ExJZKmT5DCuUkv8Rvutm4KPVTp5: '100000000000' - DdzFFzCqrhsgTD2ozBXhkfdS9KL2xJPGhi4wSnBFPWYFpVoo8jCBZMkbxbhPN6EnxFvhrJzfwBXqnqR5891wwfSy3qkKHsJJX4B78TEZ: '100000000000' - DdzFFzCqrhspWNxXjAWCBbiQkeBiBMiGJpz1vUthRcoFhmKrBidcBR9gqQBzU13iS2DwWFsCtYJkTh5XGyEVr8SRxZ5B779njrX8o8Aj: '100000000000' - DdzFFzCqrhstLwTVCQhuyL4h8b4FP7KApykt4QAjwD4wpoXhUqJ5Uu9DGG3cT2bgjih3c8QjvFnmtSUg53vZtZvmxVcWa9GPxWeTUmBu: '100000000000' - DdzFFzCqrhtCeDtgG6wDBEACTRJRWXrWidgpnJJj1JeY2aZd3ssevtZXuwVSbRLSRhUCHAoE22CH9TSRxgevqyY37X7FnMQJvZrzaaFM: '100000000000' - DdzFFzCqrht8BGBTenpg6FNtYb4iJd82b1d8eNpoCFe2gNewFRZy37BmhLr8fMz8AXVveuavmbpja3cC9rZidJ2rzGG9Fu1GGKg2ivVM: '100000000000' - DdzFFzCqrhshWdbKro6b24uC7vYuVPLZ6btQbE84xoW4ZafZbyuAsZLnadHShGhuaJ1geeiH318gAns3So9hbz83Fn3HcD1877Hg3qPP: '100000000000' - DdzFFzCqrhsdqAnHuL33afabJ99YKS9xFkMGcHLBBFkmTWM8YJswTApxUFZCU1f81xs9RMU1hJk1b1X9UqbzF7de7UnnMoJCGQaQNFit: '100000000000' - DdzFFzCqrht3ouyQW1UL7uqaL1mc5GsCQdivs8m8PDmghKphNL2mPjB6TYRUVZkmiZC34ttS8aq35aAUkeVxikpEBNpBjUxPCvWdYEaG: '100000000000' - DdzFFzCqrhswpxXZm1yVcTk4xiVSkjw2HeBbGtPqK8PE9ETbXKBkBo6uobqRA6fENt8XiZ5TPoyWnkHsTvpCQ3C2jvg8FnAsgo3pHzcf: '100000000000' - DdzFFzCqrhtAABG8CSJHtdqBbRkyeRfpS96g3zLc5fhLQcDAcbRYFt3G8Y6uhrwoHMUTyWooUa6VeEM4bCLpD6y3nvWjc2tSDzAZAuo3: '100000000000' - DdzFFzCqrhssTWme7rjdx54rTfz9KEeef59ghJHksxcPL1c9dsDeNuqhF1cXBSYJVNQR82wDFx6jtUhYDKprC7Ru7vJeZhPzroJvJ6Ug: '100000000000' - DdzFFzCqrhsuNKHnBS7rFUf7sNDBzDFQhxSX7zudomuQVoSUXb8u4ooTVKSEtd3Ue8qTba3EJLUcAMVJMqLp49pEfwkHYms959gcMx92: '100000000000' - DdzFFzCqrht6SMHNTsHsBJXbsA9AU19TTJCy8VJoBVE9FcK25zhq7opUvPs1roHtiNhdL99DasqT8yBMd3eqaFn33LNYJYQDYu4wq666: '100000000000' - DdzFFzCqrht9MJ1VfVugY1tYdaZuSn1stggZTAZVruQ2P5NW5osCWLGbkX6XVr2bmmJrNFqN8eMtm6onopdANk5K8C8y7AG3RStfpAie: '100000000000' - DdzFFzCqrht8hncXkj6aJ5k9aQnL79b3SuTbmSVXLjC5W8Zk5RznV2WQpvKy4BZKrdSQd7DAWGSSWY2UHkLMTv231ZFzLVL2b6YZJuaE: '100000000000' - DdzFFzCqrhsg1g7uBuUWDDLxVrevbFkw8C7neo9jsU6dh1d1oRZ8Xw6dFmL7zzEG8PnndWAZbbEqMr4ipaweW71skFJpskmqPc67nQtZ: '100000000000' - DdzFFzCqrhssqqTmU3zzS1KxQbRPb5URNf8XUbsdXDujQjhNXb2K8LbeeJPD5f9vhCiRe2r4BYNriFRjbsavFTVSe5i86zH2Rs6twWzr: '100000000000' - DdzFFzCqrhsz2Yz2xcn4mG3ZTY9XPGjfSPDRKGycps24ZJcjd4fkf4CbGZstbLEpiNbpuwNsT6vBK8mVXvrk2wC4AnM6m3NKzQx4mGiq: '100000000000' - DdzFFzCqrhtARWeGotFeY1BrUA9g9pDzLfJmN7VEB6Bd4i8r8KQC5ijgihYVPiqsw5ZMj98C9wbuEchxf6pBYiD6WDgZCo6MSksV6uK7: '100000000000' - DdzFFzCqrhshhonGcBv2dbEKsCPWnv2dcpFY1GfZwnGEY3c5aFCu231ZWd4PSy1da5WrWhgGFzLSc4Sa88WLmx7AwGKyzmbMMhVhbzwt: '100000000000' - DdzFFzCqrhstZUb3muPTBBMMtvdCtaGaffpBphWfPSRpfiuWtU57QxaSwEcsXwUygN5PCNnsum4EEat7zGH83fSCiyz1JzZZVg2gunHm: '100000000000' - DdzFFzCqrhshEDcRtbXHoD7yddStcC4R5upihoWXMY1Lt3cYRfk8zn7WHrrEgms4GwR3B1hP8Hdt1BmRfWtq7NG1VN8X5m5nzp2hYwMz: '100000000000' - DdzFFzCqrhsoxAj134nTLUQQML8Yjdyye6HAGpsQjtM4V1KpCu7eNH89XMqGJkTTQPXMdjTkeF47BXedjf4MfQhDDdyZ6KvRCREXBfcs: '100000000000' - DdzFFzCqrhtA8gCxis2ok7VmUAcUf6Lg1itbvvau9NTzicFot1gN6SGVmGLksB8EZDtgZfv2aX8XUrpK8u5AyK65eJrH3MaKui1XB4NV: '100000000000' - DdzFFzCqrht3AbCSwur2UZDNzXfcRYJvGjFwVWpmW7WWhrAUUDoJrt9R1WjzdmPq1GyGALMnnFQa8kxQCSQPjtA5uJ7GaCTT9W9BPwir: '100000000000' - DdzFFzCqrhsuopMfCzNikpQKnDgbe6e15Eb6CKGdm5nFmNwT3GarAjRVcE1KER4grMDq3A1i6HDF4kTJxJRpQdogzMj5TRKuukVDshWr: '100000000000' - DdzFFzCqrhsjFQTt9miGQCMFjNcqb82egFSVTXL1x3EvmMENZ9PH6y4gK3uvgM34nZsgvHDa9ZAbVoYya8C6HEVoSMJiyGeocpuT1Mcb: '100000000000' - DdzFFzCqrhtAKBD25eMMUS2Vow4eghk58nYwfif5JP5pdQkAD7yuzmzMJaN3gJSYWNJqFJikoMepdwWFtauAUayHuYhEemHKCY7fDcSH: '100000000000' - DdzFFzCqrhsqxHdeT6WQxjLgwKvMpiUsTePQopSdodAVjbotG8Y21FKaxTBjd1uzKTMhRzHuVG3yHJbbxFoZpT9eK3QQ6hGFzeZbimWY: '100000000000' - DdzFFzCqrhso71omgseidDjnQibyiZH2maGbPzKfoRuH7B4mXuCqT5FENHiyDL8qvuuviScbtjcfie9ejM8kywsBwLs2ShZkST47HWyA: '100000000000' - DdzFFzCqrhse2wXHgsdG2Qd3aJgUAXza6j2DBtwTfmjBnSBh1VxK3u6S1E6qQDZrX7bfLuNissUmeAFQSgVMWKCupXb2KKPDFUPEcZqW: '100000000000' - DdzFFzCqrhstGqU3NQnutrPccuL4nwYfShPmayGJuEa7sGokS6UCovzbA3sm4EAxBPaBF3iPSqvF1FQH5rrVbSQ6siRStX4CgbZSXPCF: '100000000000' - DdzFFzCqrht88Zc1gLdusPtk6WNABbaaBiTz8681cJ8VXwy4dLdaHSJcBY6px7NSjJ3fevJLSaE1q3eZGNhjR4o7rc8RH4oEpFL7B4Qs: '100000000000' - DdzFFzCqrht9rVFmiPYEVZTAsgF8cuqsD5vsSTTT7NZyfYQdMdPWnXXyxpZepdoQf4AxmjhtGRAu1r9Uf7SprNJTwUPtLGRXrsegr2py: '100000000000' - DdzFFzCqrhtBY2YrGRC2DFHhLRegn1Gi7aDuJbR3wVS97YpaV3Rc1SxvKRGNjwVQkzBXo6AQv5UpskGFtmFABRN2LjfDUTpmYHcAU6ck: '100000000000' - DdzFFzCqrhsuKN4keaM7FaGh3GvD62BzV7f3NRJ3NjkVpPMxcuEDZeDRsPxiKm12vKY8hcoAAgKBvF79M6Gne7AJG1sJ4kP47VqPQyFp: '100000000000' - DdzFFzCqrhsfZXJQ6wuXPxobyaykc9WKeDWM4mVzkzmaCj2ZWgUnMHQDjEsCGM49fskEuSxsSQ1Ft1gzqpxFK2PacHSkzQvCCbWVZGZV: '100000000000' - DdzFFzCqrht3Yho2v1aAZvNFA7n3C9dRpvPj6jd7MWWXNvg4K1FkhPXLRkeyp9EBQbfHucBKda2tWy87DUrMZHj2MMrjbHc7bqYZKSwA: '100000000000' - DdzFFzCqrhsfek215p9sn1KaZ5eeYnE8M1JN4ijCXs4Y8QFt7mVZf5bZxpMW2ne8ESCU8twRwmyfJGD4YvUo7pmMBEDTkxWZt9Hsm5Cv: '100000000000' - DdzFFzCqrhtApZdLq7QavRUv3yhstvAUBBnqKogfCsSSQv2Xmuffp43shQt4EXcrVEXbBxLnqwUeA7qXwBGvQLu2t8jYZ1syq9qzg3ub: '100000000000' - DdzFFzCqrht8cSRbfuJ2CjKdzGjWn7337xoiLW7b15r84A7dirUxsqpLNesyJwtBjQduNQxF8hK8VnFaup3AVogtedukS6NhNHd3cn8e: '100000000000' - DdzFFzCqrhsijhdyfNuk6YWkW6P9xtT6qKnM7yNj587d4rPhmLwtn2geu1w2CN9GaScuqwmVyc9WYSYEnQG9mpVC4jwzL4Ttkf1DbYdp: '100000000000' - DdzFFzCqrhtCtC8CA3ubpopY5Jn1KW4Wj8EmQfxo7mbiTi6Tb93zCE1L8V1AGrF6U7mY3MqPGAshauE4yPtsydAVhrrSSnVQvoRqeDnC: '100000000000' - DdzFFzCqrhsruE4E1Jno9WVQ77i598VZ2SemdfbiiDX2qHKmszQdegMHfqVFoKXEpaXXk9CN68wVa2NYhVZkpMMZihkiCzBzNcjfV4Ai: '100000000000' - DdzFFzCqrhss7WeV2Ax9RSwjF2UbiL3YrZrxk4gnLqvBpj28xJDyotVUKiGNph4CgGXF5KeoJgrfmkWpArt6bEEZZCBgQnyo8tLuAQYj: '100000000000' - DdzFFzCqrht8k86spcvSjiPBntvLNka99aHhZeckFobRGbpciXkJzLeBcnorPVUMxiJ2Lun96essWGkD8C4XkgoJiFdBZKkiAAqdsXHo: '100000000000' - DdzFFzCqrhsvDcQuSCVE8icer8zxdtQrTR2kgGV2NwVrT4iSyhXBDgmEXofpgByrQTxx73BttjsM77TzVxpfZTUUhsGjjkHd4oxGEQ2j: '100000000000' - DdzFFzCqrhspLBxBUc7N7RCVs1n1mVHhUGjd4sUkR7czgxWVmfxizFkCN4H32MTMSLSah9AGEDzrFvV1hz5a9NiVDc7iVEAJDdaA4RHn: '100000000000' - DdzFFzCqrhtD2aZNiRmwwWMD5KtSfV4K72djBmVr9ckD1RAQw7PPm9HYDRb5yZiZkhb3zrAVfXyHfG4SzEaN7MkY12Z19FEBe4rNHpzn: '100000000000' - DdzFFzCqrhstFTfQ4whUJSMFHSHGnQ9XywzKXNoXo9awSpWZKu4ujUn6SCyKFAz1wdJcX77bXABsgEespXqKo7dbdGof6Tu2THeUimAE: '100000000000' - DdzFFzCqrhtBUTPtDvD8Akuhp5T7J9NmpYeDhJeDWE6myJUwB1vLg1ftyHoddCo5EgpmAcBEwvC9Jkb3JEL3M9eJA1zmjM1Rc7jqwCGV: '100000000000' - DdzFFzCqrhsfcGeyPDw5tn1cvkTrcAWZEB8FnzLjxPHnseLzqp6iKjYt8ZfYjeD5AyGRKuLiF3VuGpJi9MMk2K9jMZPHxuEQNKAKqiTS: '100000000000' - DdzFFzCqrhsgZ2XfLjWdqs1DBP6iD5EftmwwnqYenXjtLWm3NiUTnCX5tivVSJfPabEB2v5UWRJ7w6xYpvPZFu3anCa8kDBwZhSEmQm7: '100000000000' - DdzFFzCqrht9HMM8Ju3sKNFJ9SDFaE8fY4P2mvW2oNCkYDmxuAFJfpZ7ZQawfH13B6F35q96e323KcyRTXDMYNWeSVKyQQB4txFW9529: '100000000000' - DdzFFzCqrhsyRyBo52ruuxBUeogukmBWFHxvpc9EJmtidXhYZZcA2xHb3QiztLPB5U6RhbjdJNHuWdUEQcXRRdtasgS6SrddyM73aodu: '100000000000' - DdzFFzCqrhsyQMi4f2CzPMdvMWj3xfrPyG1vQsKDrZ2RxuXffji4Mw9ntg9t7T6uoNqzENzKK3t36Rv8jGbdjZDnfHdNsBZa25SgR6Dy: '100000000000' - DdzFFzCqrhshsbfGrn7h7AhzHRubspv8faJJNFmGw1GZaSdUsMYN1aQM69FjReT6fnaaMDhHbRa45j22Cji5u9YZrxcsrn3hWB3K7fuX: '100000000000' - DdzFFzCqrht67ZkDD3fv91tGUPtUNQ5ALjCDJudgqGXTX7TRMTvz2SqT156vPrPZJbQ3SRetVBk3R9KWs6QGPhvRZjpuQ64e8warHoix: '100000000000' - DdzFFzCqrht9oQ6Sefw3BsYG4fWnftowNz1JriCn7zV1zx8dqqd3sTShno9EfhZAPSX1W8tBRMySEtmonKtTm3K2Pk883p5wTQJxv3Ky: '100000000000' - DdzFFzCqrhsjNT5kanxnF22UG6fRojRB5sGXjuMEyy9GDz13aXpbT7wdUgx8ChdHThVwwBLvmXweQQVyR79KTvmY3fPEhXmQ9JdNgSRK: '100000000000' - DdzFFzCqrhsg2meWxvZAoqXtDn8i67BLhFfz6MjZJd1CXfyBV1XwY8JopEr7LBEruqqFqBD9UogzEvN3Nz5RqAdL8LUoiMjgSAMLokZi: '100000000000' - DdzFFzCqrht34u8WkcZWsY1sZ5oqGLEPani1AKeHZDfrXUAPf6ZpTWfMjCWAgWq3zdECWZ6JQxbwaUdrLPKwSMDC9dmPF3j6EEsAZhr2: '100000000000' - DdzFFzCqrhsxtMtsJU3DkzrCUJ5rUnqRj5zET7DSTyfFptYRps4v6EEpvkqvYje4WrWdZmuR6BAKYvZSDu5r15xixoBQinVGMCRyRSP1: '100000000000' - DdzFFzCqrht2NDSR5FjTGUguVM8bsHxbAAjWL9hK8cPv6x76MqwvFzFduFxsPvhk1Wihss5nPWg7jX3Jtw7a9pQar5DQJdEPLbubW7AK: '100000000000' - DdzFFzCqrhsn5YM1sUjML62hvuAqtFbmZfXyrWBHTx3ibYQQL2sx7XL3LPVfi4Htb9i5QTLBDdVRf2p4yUYVuLu4Sb1Vq5ekVNDCdRUV: '100000000000' - DdzFFzCqrhstjRCW8CMTRsQtm2js3eNY8g6Himv9wRq2nGqHGcxrjjnJWg8sfv6n9XmgH2HUtdn74ECXAo46Pquba6ARDL3FWnhpNtZq: '100000000000' - DdzFFzCqrhshgLViiP5Ri669Pi7DWr4dJaWP3JWR63uKxUJPBkhSczY5hsmDBF5psF6Qztbm5ZEvuqwtzu6xD19KuHW2v47ao8cz7HQ8: '100000000000' - DdzFFzCqrhswp48YcybJsKQjSoHU1d633kAvp1e2b8mTe1zWNfqkTR13uivbBEKwoUW9wZXzvJsu2AQRN7QCnxf86PboJYSfKCTziEFm: '100000000000' - DdzFFzCqrhszfK9mSNKmkz59BQqrrw7QaCjh3RePKQLMfptzaWMhH93PvDZpUVrL6k3Rpju13HpPvtTQ6PGj38aMFTQW6dgZ9FnnV2KA: '100000000000' - DdzFFzCqrht41ppXhcQH9LiWms8TacShaaa9aKF9PDGNcLmYcRaZWTKQWLtaEH93A56YbMBTYExiRs1dcNWQJ4gBwvV9Rnz3HtZu7zDr: '100000000000' - DdzFFzCqrhsh9Q4etAbbGNGsDQ8PWDDywgaZcULNeuYDeozumxWS2iT8WTCWHeoNedBZrgevcVxjjRiyqndxHpQEZJ33tsbiLciPND1W: '100000000000' - DdzFFzCqrhspRdmyRj9vHsSiERi3mxuJt3fNbdLuXwofUR69cqSk86EZqrkVyQgsxXXsouwgvHSLrbeS4wivsTnPF2ZcrinspBjVqLQC: '100000000000' - DdzFFzCqrhsricu1G19ztma1NfZre4cMtj8teA7qxVXyJZRtJCqQqEAUgsCdAj6NoHFCMJtSquenLg8HrT1q4XrVngKobLeN8TNizEqG: '100000000000' - DdzFFzCqrhstwetBwgiVZsTGFeJWHn1PG5vPGZEU52a2ECkGd8x7yxyBKwMjbnjRSd7M2KsDYj4JDPDzeZFXqRGzpjBc7APj5nKCsFW1: '100000000000' - DdzFFzCqrhsrweSHCw4eG5M9HLeabUjomKhVpMyPQu751b27Q6G2sYwkb8YjeCtE6mTPHxdemBpyi1Rg9XwQvfje1YbHDvZPLE5Pj13W: '100000000000' - DdzFFzCqrht774BLMpeBxqUmUPVw8hc5FvwTabDYq5zGYrMCzQLVnsevFFg4FrArwmMEQ6jTuTnPjYzSS2R4KcdWqhCugH2MJ7HtwAx8: '100000000000' - DdzFFzCqrht335VM94gwfV5V6wbPyV3DziLGmDBcDdChsvEqtn7pXaSR5q5DEEGpsK3fgizpoHNFNUFLFKimteAfiZzR8hH4rPveHeHT: '100000000000' - DdzFFzCqrhsu6yUWUgdrrX33z8PsAizZhSS83CMxT7BRJNk7GrCQhUvJGyxojQsUftZxwtac6uujAaGerMdxacQZcVto95YUvduw4ZxE: '100000000000' - DdzFFzCqrht1cYp4zCqsUxFTMGiiuseKicKMYYQjcMyo3Lnn7rWFqEReyuWhR36mC7dErgUP9umgmj2hS3Dd1wXcFGSeUZ8ssYvDxX9x: '100000000000' - DdzFFzCqrht6Sxt4d1p4joo64HqTmNhXRrpbi2A1nVMyZDwAGhY59XXNKghG33wuDVxbGYJYRXD3FzJUi45qm4aALNXSDLRfDe2go6nA: '100000000000' - DdzFFzCqrht8gsu8hjZyo6ig1znmnxihU8fwK4LRbpMfSf4HkwuXdEwGgkVgbsWk7jiyNRcYmfvqCUw6cEcap58Vai9wsgyZDS8ttg3A: '100000000000' - DdzFFzCqrhsfJpvLcHBZfGzUL8fyGNB3rSMDHWVsKbbSdRhLt4NbqoY3nufQBMRzpCtNTZcGFiWHpoRqKY7fLXGJ9D3aS5RmdW1Aw6ee: '100000000000' - DdzFFzCqrhsfQ1Ksa5Pqifh2mLqZhwxxDf6pknCgSwSLdGVWMeBcLwNPBzpT3yS24vF3EbiQwnxpqKmjcyfmmYJtap72XR8YsRaZL9TQ: '100000000000' - DdzFFzCqrhswAFhUif2wtB5ZieXzKVV77xkkejzM27g9QWnX942Lwqgp2hY9uUdcffZhS2TU5gYnAmYQAF4wC1ccz3hv4dSHktfMDuSj: '100000000000' - DdzFFzCqrht4gzeTABzgcMEHf4Kfw74FcUGLJhrbbaSAaw5zC5euhuTxtFPx5Y6XLDAjFPWtaZmKjsvCz6C6UyLQTTEWUu3W9xTmGw8X: '100000000000' - DdzFFzCqrht6W2ZaCijsjKAf1cLLkVKWiusmEjirYLAJ74X4a6eGSBa9y5tGDxYHYNs2t6BZ47LZ8k4LzjT1qHh3g6WVREp4Uz7v61bt: '100000000000' - DdzFFzCqrhssH8NAvZAGxj4gME9Cjp86DpNoH3KtpLDYdMMJTJMvcS1YgQFXURBbzKf7yQaGb46JKJWRfAgwSqExHwehWAG1cj1WbYHx: '100000000000' - DdzFFzCqrhtA9CPR9ybbU4Ya3yDhxwhonvWU96AqypXzq47LC4ke1omoo8uoqGSd6XL43do7njy8empxtvazToGUSSQsUjrSCBpKTj1v: '100000000000' - DdzFFzCqrhsneb6wahYrepbDMGEop9Xrp6LUiiD2o2GHfCSVtCNxYxJJXqw5iW3Hta6poasNr2CJX8mUinRurbdRnF2PCBDAAqiTiCoR: '100000000000' - DdzFFzCqrhsq7QfyHaRfHte89XAtYGog36uvbUbSP7AwZCXcqdg5EoUYtHEUyBSwemH4VT3v22xui9pJnYvE1dFVEqXyjMoQb19Cb7Y4: '100000000000' - DdzFFzCqrhsh4puDVySVKZsLDgUpqtf14yBsQbuEbr6VZ4j8xET7PzKYHtKQMnp6jzSGM3gshAivQhotU9KTSVPBhYHGhbfHZrw2teCa: '100000000000' - DdzFFzCqrht3D8ajpqRwofh4jEABV7rQQdRKQDKboZ88sZqfmYHVYCiq67jR4BkpZ7GkGnwkTdVikgHzU3hNAzfJDPd5LdWNfLPJLyXV: '100000000000' - DdzFFzCqrhsofubXZFZoD9jXoQTQAf15ZHXtKSYkg5ASPCBtJ6fowQV8Zn145PwnqjsHb96y1USEEYvfzqHwX9jpsRJYhEM9f4T5NeUS: '100000000000' - DdzFFzCqrhsmBK5csecqbvVW7F9m2CB8PFWaqEckNwTf4cw8LYp9ywz5VWVebCPhLLzsKUvXvUPCBD3T42yDr4H7fujLsB8GBMvQ48f2: '100000000000' - DdzFFzCqrhseJ8oNov4FDoHsMube8TPRguHXnzJkqwvCXFEhY1rwHf9TbCxrXLni9RpMXSJsYrdg9eqvWw8GxkvGsHy6kZS96dArYUpP: '100000000000' - DdzFFzCqrht786QiJDAbM57AXmuY8mxFUY3hiwKfSzd6DPhx7HbWwSJU5AfHrYCdKfktDVkNRCE6LH2ABR9t1sfuAyk2Gfw3QVyuEpAF: '100000000000' - DdzFFzCqrhskdyo7sWSbC4u1baaSDvs3i8jgSFPEz5b8LSWSZgYR4s4g3hcCt4hfhVMHQec7VjP1kT6WcDPgmEDy72mm7RatDYKswqXo: '100000000000' - DdzFFzCqrht2CbY7YRP8TzfupL1hDGnhTpfzt8eqKzutzkUn6YFVNAzMg6xiaQHGT3TDuEkbsH44j2GykynhP7SAcLrmRX7hZiHvEtP3: '100000000000' - DdzFFzCqrhsqhXkMqahoV8KxH3MGZ9ttFt3BQ51egE3fZSBPpjuzAqcd67uYFFPgyLww1E1T76rnFDVPWk5SoK3pk6hMGcwkAxwzVaxx: '100000000000' - DdzFFzCqrhszV7peSPWBiz3VJQc5sss6CjaLK14ErvotFeKyYUrUjQhBsjsjYZwPCnzurcMqbedXdo7ouv7PExwfC1qqVDuYEuNiCggu: '100000000000' - DdzFFzCqrhsujF7a7XyirMJuYh3VFXRitBRHpbSgfSiNpck7cTNmeft3oAiNpeRcSBaUfM1ndSptMBNFrxcrEYcPbHhwV2TV7BJ3wLWV: '100000000000' - DdzFFzCqrht9DGXbSN7fHYxqK2SPm8CBL7s5mzKR4aRFNFJZVND8fHLymBnkvv61tFibtkLKQmaFtMM2A5NZFXi7zbDpieEqqcFMdFFu: '100000000000' - DdzFFzCqrht3TgMjouHLWkAxFcuCxk8wx1XoG4p3gHCR1cdRZAtVmDqgSaLN1rPwiKzMBLR12GZhreFCdfBmdvr7tcagUMp2pUyEBo66: '100000000000' - DdzFFzCqrht9zNDXrxDkztkQoKPNqAnW2SsMXLUbGyvEnamF9ytYkAP9RcJSjpCk8imtx37dWiMNfrXKZAStpmNKDXswvd7TskbmJ5iH: '100000000000' - DdzFFzCqrhswUHvMPNgFVSpd1U5xpt4J74msDF51DhFCTNud7bhUt3d7ZfzupkgU2axa53igLU129Pk87DjFK3VJBWyFY1HzwGzGCk6p: '100000000000' - DdzFFzCqrhtA3WXZPaUNZBoAchGS6sbTkkmAZeUt8YaMKPxBTCh4Y3HhfsAeNV7aEHRbKdrbUSPVmtk2aQiAiPDvCJW3Hx44NpVKS3fC: '100000000000' - DdzFFzCqrhssNLTLnp45TsHmjgpxhEE497KCEqjXGTvP2YNuAZ4hR7SLDM3swmCiTo5ed92TkQyS5b3Vyy5ABq6JxeNp4222YdZTDSQG: '100000000000' - DdzFFzCqrht3N3YQ43u8jJTkSxQteg6DxqwX6ADWbLVeXtDHdc2TtQfXSvWqEK33JKp6Mz5dnJBYu7i22PoYupoKsspav1QDksMn9WJ8: '100000000000' - DdzFFzCqrhsjctXVagGk3vDSkjrYRxYZNm2tJJwHzeMeSTAiQQdJ2RK6qEojGPemKwJVVWmnLXndzjYiWMuJvtGnz2pkqYSfa5UiiwMP: '100000000000' - DdzFFzCqrht7bhjZErXHxigm8TW3gjBQJNnQ3nr9tqYeBFqNkhsbE7rkm5DmqmXavNvkVGMYfcemhotpX6F634kkoXgJxBxmoqT3Dp9f: '100000000000' - DdzFFzCqrht4fZ7bWmAaQV7JkgSEMvEuym5taFqDXqYn6GAiQTrbSqs8XFiU6W2rGje7cqYMNd9hJMbKhj46LBKWwJQsXRNJhPhBYUr1: '100000000000' - DdzFFzCqrht1cZxgpaEKkGj6Hvijf5ZEvHkLNBjhTRsR3noM9y7Haj68pXag49J9Pj7SsQrSgY4aNXyQRK9w1vnPybGU9LEMobe2Wh9n: '100000000000' - DdzFFzCqrhstgcXvdfkUk6HxcAtTs1Ys4WwxKPHiQM118enibwVLH8aPNY8TCBoKTh1g6m6D4Vq5dx3d9Jk7JmUekrH1ofxFBqkB4eNa: '100000000000' - DdzFFzCqrhsoTcUtzM18LjEuNvHApod1apAyMkYeiaGgL6ArYL6Enx6z6LvDAiQrB8hUnjUYdoMBAguKbbPkUwb8UZnwGuD7aQ2ZyBL5: '100000000000' - DdzFFzCqrhsmDxRBj7avPbTGGABQphJPDyPZotcXteNYcooSKfxZ5jyT6iDBZYAu9a6W6fPPWW62bXzXRWenEhqVEkXccrzDE6PX8UCF: '100000000000' - DdzFFzCqrhskPhD7hk8Q91J2zNcmW9R4ybLpvrEU9URW9oANULhAh3StYxeHWRTuZh97RE3BioLLzUdAVMupFCeR3JTnnTg2btm33LVE: '100000000000' - DdzFFzCqrhse7FaWK8CNGENKpywSPfnbLVDtC4zK2MAKXYQ6UuGrF6rA96AjQ6SvQ9dEmUgkDwP3WffUE2NctGtrjo1rk2Yg832vjS3v: '100000000000' - DdzFFzCqrht67ksABwmf7pFKBR4KunDk1VCRvDj2XeLwKZvubmpjSd9xLxyBsJdjetGgvL4HRQkZXu7m3TAQG4cbkNeeoUHyxtkkXwep: '100000000000' - DdzFFzCqrhses5fkMvvzWuUtkBGhdWaX7HFbSZfWWvDg7whKjPGG8wrxYqNRe7cceZ4YVbFuQ9SVQAYDerAoAiVEuGB4jxYQ428ibfVx: '100000000000' - DdzFFzCqrhsnov55muSAXAEwocLzwMX9ArDTKTaHXztteiYfpPYBQDanGTUkGb5wMGQETtS2tEripCgrKToDZRNbAxY1iLNsJTtGXMqS: '100000000000' - DdzFFzCqrhsj1KHd92eaHYMWusaMDShyefqD9j84rgdbwct9j1AB5kiDn8nbj7sQUB2REgAgQhXSdPt7musZf8xJuqmYBMXgJPxArCd4: '100000000000' - DdzFFzCqrht1et62EbBABXtP9qHeV2pRaEU9cyqguBsxzbLJBsNUb5rmstfutHzvEYujaysyjiCFGvakczvCTLc8hLTGsm7vBrfSE5Gg: '100000000000' - DdzFFzCqrht1cDmt7js3nsDrjobR8zFKiS5v1aYpNefvxCY8hsccq9YKkMZBp7yGxVQNLgxenRmXLa6eNVMU8EfmHBkCiDjPR2i3Cg77: '100000000000' - DdzFFzCqrhsetQSZMV8r8GcknBKvT3iMUD5szcYEkik7vkHYnDVMdjzZuPDqLFbCVEic3zLSEdum4kovmCfcLoBDETqN84YhJqKBxMES: '100000000000' - DdzFFzCqrhsh2jrDHdnhY9UZvnNrg9DNtuGUUrJNP1SDf29xm7w9fD2LVVcxYhAHbygZdcPrqLuUAdEnKDwCC14YARk8kRmDAuewPWo8: '100000000000' - DdzFFzCqrhsxSZz71Xe1ER1MTk8JZCohNTzRCDrx2gv1n7ZhPxenu8eFkk8nEdgkpmYWj4DPeH2icwHNipHLyDdtv11hEmx1HUZ8REqm: '100000000000' - DdzFFzCqrhsvdgurD6tgyCgTKzGnn542CRKEbJzKec6kc6cbmBH4E4wZngLyk1YLyxSrFdPbCUud3EncEQSQM7dLUSHPiDDxNikrDqoQ: '100000000000' - DdzFFzCqrhsshqdyoZ4rEBhLwCjwtLMnVcZW8qGwqkwE4zx1MWRp2cUPrp7q86gUAYyrZdJ2QUH4Yk5orfYgEoeeqRk2NSLvBo1MH5jq: '100000000000' - DdzFFzCqrht4jbeQLqNafwxfXoQXba8kRjz54BFGE7NFHNSoGioAFEZT1Dr1ikDyc9DyVXz6rNePZLaJUpTVHkLqwV12YswT6aQqxTSF: '100000000000' - DdzFFzCqrhshnp81eRN5fZXuViBAtJ4fFRsWBQEVnRp5U6NWbkNAHRMnbR3uEDCeJnhBoMfzzqyHbSG4a8QMPa3hEPoznv1ivjQHxYVm: '100000000000' - DdzFFzCqrhtCpt8VLw58giEDbveGi5AyYaADcU12HhZ4TzZX2AzqVYsXA7APHDR9Z7CNPUYb4x7CFrYiDmBUXRXpkHy1f7zqrTtaiWmY: '100000000000' - DdzFFzCqrhsxyz68spbiaPoHwXBKxoD5ZbUpscwgu3waU7nLBXNfkzLTy8JfEqMz3qhX2wHqPapfxCo26qdySs28MTp9pZPy3TTeTgwd: '100000000000' - DdzFFzCqrhsxLSS4VZTqcDDMawN12zMKyJzwLYq8Z4RjCM7Fm61JXHCiic1pfaf4hppMeZPiw2M3rQjiC2t4d74aXoDse8ta5Z3updzj: '100000000000' - DdzFFzCqrhsfbEcs76dGUaYEJCorLheaQcy4Wv5ATGYTff321GZZWd2nJ9SedhTV2eNnmNhcpSe34LVaVaN4sEu3AUYGzM7cpma2pQ5e: '100000000000' - DdzFFzCqrhso6PQiCqtH18UaK4CgAYKuvvTQ2R12o4jZ1miVtmBKTh5nLTM9ny6Fe679UZh6msXA64rEHSobVi8oieig3Qqag2ywRJmC: '100000000000' - DdzFFzCqrhsw7HNhZ78mFEec3zRgJfZuhzyTtwAMqqP8Mr73pEFLqTgAk8qGTM4EnGoc44vvkkJRgJCSwLqFxsjePCbPKPBAeGund9Fz: '100000000000' - DdzFFzCqrhstHsGLQsQhYRe2CB7BDNtfsqnuTdaD11zu7w2XugfMfXmJuMgMX7vBZr5pc9mwwpaAbQ77QM7LjJP6h2uhrYHBNxbv2zEt: '100000000000' - DdzFFzCqrhstP1y7D5nGi1TXkPkrAv5rypvHtZE8YkD3r9fseTeD7Lc3EBMyRG2Z1o66u3bTpfm7Lp49LnhyBBGECyp6L72RouxFfF8d: '100000000000' - DdzFFzCqrht8b23Vxk4XvUMDpqMiAr9eLuF1e9k1RzTCXNSNGEfZuqzJnuHeFwVnRy7vTxoNquj64ywoY8xaT4wEYPmt1QbvbQ2Prdam: '100000000000' - DdzFFzCqrhsz1oyrwS3HQ8nAeK9yhPvC5vYrEE8jqmkixv4aKq1NudSn6giyNQQKuM3FhBGwMiJHhm6kYtMr7JQho1oGiKw5YAsAPrDi: '100000000000' - DdzFFzCqrhsmWNTz3GNGH4okFgGcxRzBG94NiMnF5GzoaZk4LUMjT487DvRLvCJCAqrQe8X1RNeP7kX9NBieR5mqkmgbWxVd3uTQJkrx: '100000000000' - DdzFFzCqrht7SbejtNAHvDRzqqipzjqFGXucGWZw2bPE9QrmAMEba4hzh6t1n64RJMDDbbSN5wE3ybEk2mLwFUmBPHoDoyoFGverPenQ: '100000000000' - DdzFFzCqrhshvYUKNEbqNUyKbPhFiUjrG2wHucpw7t1ZP8Yk6YSGgrKe8U5hYmPUCMutkAM5UG6Mxw8TDs9tYBzsutEEXgS8L2gaBQiL: '100000000000' - DdzFFzCqrht8hnLivYANprN4uhMqLAbVAvpkx547i4UHfiDAeMQ8623wbqc4teWU2zM6XBPhys66yChZPLqiLiL1Bx2LzcUBWirRmTra: '100000000000' - DdzFFzCqrht3ShwB3C6aeVBQStc8oRo8mpqdCr4TmrzADwrz3ko26aqscvEUuFWE3JhwtKERy5Q9ihUYAK6AaiDXcV5yYt3e59ovZStd: '100000000000' - DdzFFzCqrhsebz3EtfjTYr7ZEEnQcpHG2V6Gs7zjo3FLD2YyEk2KWFDQ42LNczHZJAD3GtjRx6hxNA4zTPbEDxGakJKP7TKnUfCfTwgh: '100000000000' - DdzFFzCqrhsnUAt4kNHFcnZ6DWiHT9pbfMsBsn4SxUsWK8Snf8aDbskmKG95gLgyJQGkP76yedHhgEDw5ssRWeTThpss4YH7AvjJxea6: '100000000000' - DdzFFzCqrhsjP4JFevxikr6zU8TpZSjnoBcG81iu2JoGrrwAgvNgdYeVYGKFzq93FCsqeBfmTR1ktyPQoF3V7kAcaxj8aD6Rtuwr9HoS: '100000000000' - DdzFFzCqrhsrkt8MJdarX1ryE5DpYF8qLKdw7Pnz6S44yseEaByVsJDq8nDbgoJyNFNZGXKbXiaYqaLHEymWWgJT2Derz6zCRWgJ5VVV: '100000000000' - DdzFFzCqrhsuaHCL3YetjZv4gbVtuiTydkk8bxYdS3QD38HdXv7QPu3i2Na4pegcUEhpvGvZrRJWd1EwZyaWwEtx2iT3D9yeboMWZ8fm: '100000000000' - DdzFFzCqrhsspuoR5bGh7TGk7qpmrFYbSF13bibwZRaZA6fC1343UNC96H3fF4EjWr4yYxs93hyiB4FP4oET3DkdkKkwFthFrzcSfyTB: '100000000000' - DdzFFzCqrht7ZSUtTzHASGtimVWkSEayKwAWdWS9ybTVyE9TjAixq5Rjw5NwE7BpaUqRmzNBmqQKeQahsEHJpU266tmJkx2cDWCrYpQZ: '100000000000' - DdzFFzCqrhskbcDjS3TkPMLcfbqFN28uzoHXVbpAaEJRk3H5TKXWZkDqcQPsLA5EQKiTNDWqCEWFQMnPU99yeZgQxtn5bja48LtPwUn5: '100000000000' - DdzFFzCqrht8isJrdTLQbE1qVCmoe4DY9uZsGiC6V9cJvxdvZBTLbmnx2wA7u8LMCiMDRDQZ67PJc6qgATvdjDmdvyAroAvmcJoXcbJX: '100000000000' - DdzFFzCqrhsmSLni517VQDeKgi6NioEP3qdfh1q7EH3cxStiSsrQnnW2kYw1VzML2PBS7AuNwUaMZAAM3LfPSp1tX6UsaLAo2QTZG1uc: '100000000000' - DdzFFzCqrhsxiFDvynFQEdNbwEjoxUwoYc88GC1aQUWpqorusBy1dyST6rX54cF33afGANNScdoYBtBd9TgZbmREuih9VqGrVFDqcVKH: '100000000000' - DdzFFzCqrht61w95SBc4hCcYuZmd8mbmQ2X34xRjr7bvVGtfUXVBHy7HpAfzfYDxaaLNJHbr6tWby5xAqWnMospUxi2Hn5TFJ8k1u4hX: '100000000000' - DdzFFzCqrhsrUmUNUR7fpRgSwHVJk3S61sfBpdiacCBmfiYvwKMdZocyVhUxdMa4Q1Nub4cQuKrdhkhqQXFqHtcbpsjVfXaVn8is57S2: '100000000000' - DdzFFzCqrht1VoBf6Qh2cg2yWa72rJAmRSrKvJzvRT8fyN9vZzk9eFEF1S1tg3dMmKYj6hpjABP14gd6jqph8GsQzxNfkY4AmYVSnpXo: '100000000000' - DdzFFzCqrht8gn3ATia2Nm3frGzNm5wJPSL3k4r9S33hgXWhBX7Kei8Yhwd99LtsfddYLV49bHid2QuVWv24eMBrQW72CiHmLH9wx77s: '100000000000' - DdzFFzCqrhsh6qkNtSLLVybmaTFP8TxxxehP2P6mX4zLx2fp9yjBoDrLEP6UfgmpWNu4Xmx3XfpePoq8Z3xnybM9XcJsSR1CWsrXwxzU: '100000000000' - DdzFFzCqrhst8Uw7gByKmaC9iWiJcdX6JXPBvKeY6H5cLgNovWX2bHrJpJn1ZFoB57AS6HDDz26EyBd1EW5SJus9js89LEjJaTmj6tbH: '100000000000' - DdzFFzCqrht674UZJL5dJvsbRJPTERWPdcNKqhyw6WY2rQhg1bked72hyEhKtV5jQy69NwTj8512955M1oKkMv5pNzxd6UJrKsfXW7a1: '100000000000' - DdzFFzCqrht5bgPw6xdXnB92xuCvUyJku17s6qZNZrVG7vJZ9ytGR3fhvwNSnS5rTUpJtJBnywJPWNionHhwugusHHnkDH2pnDv3dZGY: '100000000000' - DdzFFzCqrht1WUNQWNky85reojZbvftJJE6BEwJoxHdh8A7hkJCz6YNEU1Tubvkdm6tKm9UoWZzjLsLybPHZd75mNmFBzsxv6hsjQ8TS: '100000000000' - DdzFFzCqrht1sa38YvhKjmC8X7PksuxUPLJoMa4J6iZLHTVcTUPmug37aiTvNSKz1wecw3H9eBJAyW4iQY99ChvH6xYa4yk5GbpQC4jU: '100000000000' - DdzFFzCqrhshKv1mrTmmVvMmv8RPVeF4F7BwuUMsQmMzh85mhUcG3LuGvKoNUeyScoX7B6AxQVwMJxmGyi4gcaiHdUgP1pzKubSKDJ35: '100000000000' - DdzFFzCqrhtB3isMxmMqEinxsNuZFDUjEc8YiYPauQ6Wk1i7dBZNaREeELYdTPma27DC74wPwNHgUEx3ddA1UqzfGPm7LJsQ3aXeKyCU: '100000000000' - DdzFFzCqrhsj5EJP8ixwzFQ2NAj2wz5DgBWqPqBRwXacK4D3v9QXomrVVupMvUnLWP7xMVJxTcQeXfGkxp2WCFwkgueHCnR8fzAP7wkS: '100000000000' - DdzFFzCqrhsqmAPKepyznWeoPeheeWUmWcv2TL4hpRRT8hFajT3d96BE7n4WhK1weN18YR18M9onrTVqHdQVLvaLFf64PFDh1Cd4ouBn: '100000000000' - DdzFFzCqrhtBe52zEhFjdGAsv7LkaYaX81Ho5yygUD8hLnhwxwoSiL2DyhU7YF4qyfcPfu6e8ZyViyhv279QbQMTVwqwt4Kd88Drmt1V: '100000000000' - DdzFFzCqrhtBMoPC1cJbMPYeLLHay9qazoAqHmi6fAtgVkedcoWvUrkuANyzRwmL4oCuo5SsUwbLCvUTLyPKJv8bN1kd31Gan5hihJUQ: '100000000000' - DdzFFzCqrht439benSkBHLrLHaicWnug6otuF8bLngSDYKpQZk4yg9tDhRuawuB8hWACk11qAULoGu9vM8UPqoYCdzmjRU5SYBGNe3wj: '100000000000' - DdzFFzCqrhsvn3VAfc7C5ntUjZr7HDgmCREuiJdmy7YBDqWS6mYrmdRRZsc3FVcyA1xJLoNzjtkuhBqrFwpQLVTMe2AQBXZhT5RBMrED: '100000000000' - DdzFFzCqrht1AD6wnMCZQYRXN7yPmnPFyn4ckJXcvfiwkxqJY21C9uimHr5YGuEtsaV7LT6vWtYMubo2PsgSDzbjkhs2pVgcEgqPb1R4: '100000000000' - DdzFFzCqrhsyZKJcjPdnL4yFT5iaVAHTbNwuVGwR4s9FUZoRZRtnky3WaDuvxtPdw5WDJXxtnf1ZxHvvVaemvH4E8qvif5w4L3FMyq71: '100000000000' - DdzFFzCqrht26W3mvKYkUrYr4aRXumECNhKYJ6oni4VhrfEsFRT8ibVgoeMp5EGqjf1SLojTcejx5dPXbxienJLsjaaeBLAjGLFVQGXG: '100000000000' - DdzFFzCqrhskRMcqPxXszeaaa3e3GeGm8svQEKMXzGGaFrxkkGeUmQqLzga4yG3NU6ST2REG6dvA4puebdrRF7Pb2LGFiCsTTPSSCWX3: '100000000000' - DdzFFzCqrhsiRDd2Yg7sRQvzXzGV1KH7ud3Mayof939zqkmY7mBKPDVVczmVLhZAWs26BLg3D9jDqacJZLq285mWSKVFdjCVCT9bUs4i: '100000000000' - DdzFFzCqrht5fwqThtNT4fw6zXctvuHhq4M9wjPVHYqdHDae1h1NwiZ9D3xoeQALXLEdp4rQRAtMK2sYBWTxSN7tuHLNyZ5UUr23aMCW: '100000000000' - DdzFFzCqrht7ZPByhWy3JoK6VWHNH4XF6sjV5MVvtx1v9a2eVLiUSUce1HSX16dSbS3LYYeh8uQMPW27fuG1P7kv8HprM7ebX86m1Tdg: '100000000000' - DdzFFzCqrhsqCo1nbUfeKbuwBS8MRSAfagH5jN32GhF5tizgs3cTSoHhEDtXjWmRXw8Bu49CLQ3pZ6pvwk2oCDACX5fefMcU8vKMQzTw: '100000000000' - DdzFFzCqrht8JyqFHBZGvCmizKmfH16WePzznmEFozMByVHVnmAbU69U4VmoxSeBxzyJG1rtcdKkSMjuzoJNe3VXnMkUVDzGvQcYTkGj: '100000000000' - DdzFFzCqrhswufamdszJtBM6RjHjdeKxMuRWFb2YmRaUKGvVY7e9rLdvzXAY79HEiJqDT5V4oLEX8w3JExkAT8XuF2ZjFHXNJY8rvUFq: '100000000000' - DdzFFzCqrhskfDsd7cWp7yv6LUwcb8C5DCDSdJ6W3VVMyJzZ3RdsfQBbcGhcMVqzz6ZbbwoZn5P4c76fzKjUMm7kWFNRRtYB9gSNtiom: '100000000000' - DdzFFzCqrhsgMJmbPNm8trUEtaSvF7MRorHnNL73PzuCL9uauuUUN7K5oHsop6eXjtDPywmBsokBiHz1zQyf6GGz1L7nDfmYn9gsUrNQ: '100000000000' - DdzFFzCqrhsoXKATuRMKD8rih8rwiRbs5aJuhpVLYCVYvafwgcpwjNnid7NRBeu4k68EVhvL1QEA18xbAWDW8kn9uJSsoTjwQMDNUeE9: '100000000000' - DdzFFzCqrhsot5S3cdu1tojRcN7cwidbvpdiWscrBGvvegZ28d88JvR6CyAceDCoZhw48X2R24XgVLkTbtZq6TkCUEDtXRhSt9WEmykx: '100000000000' - DdzFFzCqrhtCQkRpBXwvzLQHmJqPBzoVngbyFGRG7D1cQ74QhKCo5f9TSUF7gXXZ6E5aDQjm5BihSwvufNCZ1WZ6nabQ9Fhnt9M9CdZF: '100000000000' - DdzFFzCqrhsgP42mxaHtCFnubPXFeDwZuY2PPL2DcZxc5swphMBNrFq3i3FPAzq9CbRWKYFZrYQgxkSXNHo4zhpV5e3rTgyQ5SkWdKNS: '100000000000' - DdzFFzCqrht5aik8mrKuZVVuNtq79aC8mn42CMYtd8C1qTJTCthKqisf5N52mxDv7AbLekF3mCxYcPuHwDXYL8SH5fmQzPLsY2xJ5ynv: '100000000000' - DdzFFzCqrhsvmoPxZCuCx3ZCXmSpEeAoZtmXzwg2SLUiiXqNkNRmPjCXorfmUrhsiYTBKqo57AiRQMoVxrJdgXFxr6UDYmeGbn8oRmmr: '100000000000' - DdzFFzCqrhswZ4zGD7XBhJhhafGzTz4nCttX6kMtDdzugabPrcaac35qbKNau3LV4Qvk4zKU7NLXBYE9Yo9wbNkQwHMYjYkx3BpiyX7t: '100000000000' - DdzFFzCqrht6jLpBnpFJkUQy9fnmVzETWPfXt1dPwJxvzWWJBQDTTBsHN3HBWU81tZhmATnXR34GmYAjYr1AmaF7h2jt9htTmFJvNTMU: '100000000000' - DdzFFzCqrhtAxyonZvFvDfbDpXnzYV4Hva5S8g5sHDdA1d5PKeTjpkD2HY53S7YPL8og3h3xxK6Z4T9NqgbNx56PkjWTV673jnb8foGX: '100000000000' - DdzFFzCqrht1otrMqMYaaa2DR1mywJMLx2mLcBtv7Agcr25ez2yeW5Az8URR3a5GQqjqyAcMLcpkHsJLrcY9mHfLGkNZZXGzHJQeHMUV: '100000000000' - DdzFFzCqrhtBAjiiCzh4jvK6DjacJM2kq9ig5K7gm1EfGq8CxYkVJJGQSjFhsY41GjEr2Ed5e6MTJcCWhnaC7YWU87VQrwffBRqtJrSU: '100000000000' - DdzFFzCqrhsuQJwWwhu6Vxpic7WZHWq6sY3vcHh6DuftyLYmRSqfgMjgsEAfTewQx2qzASm84hXsQBtweAAHuceJSuq8J71pQ1Phe9Zy: '100000000000' - DdzFFzCqrhsye2oD2kUWBVMp1tf4BCGCs59fRrH95ujZzBktXhQsqKW4STScunHzpo8ynrK17NvhGMEL7SKz1Ahs1ACqUNdNeZgdpJuA: '100000000000' - DdzFFzCqrht2PHXFLM3Q4SiZx5fRAPFz3KjuMJZGxifbormZCwBwzyz3iChnntXRDosXTBuDcnkCbpNnLfVqZ7QBs1BSVxPexFKKkWhC: '100000000000' - DdzFFzCqrht8R7cPMGDB6Dc9j6iWJiPqddfNehZn4Hm7qVZd5ZsuP7fkDAc6QJhKj2UYmHW2CugNfszTdtXNXt1GfobUJAZicnFDektu: '100000000000' - DdzFFzCqrhstRWBbLghUCXd5Gnz6hYCQ3UBkzDdGwHRg7xduF91Y3uP7XvkNtN3HS8AXUvfB4zTN6p9a5i4AUWshgTGevpGvaUvGQauE: '100000000000' - DdzFFzCqrhsnrMBKUQPpDT7FuEx7GE4wR6rfeeZTfZXZM2rbiG6gctLxBjbG6hf9w4KbSsSFWBrZUsS69jJhnBDwDTPAMXmonZTEaaJ9: '100000000000' - DdzFFzCqrht5AHhMMbfzKf2shQcgSqdoWq9g2aZfbvMERPGjMqUru1J2LwUzDmkeQoWJ7gMSyfVWeKy1DQ3SxfToGjsWCX2Rc7wh7wwQ: '100000000000' - DdzFFzCqrht4x4UcjeNeUKLETyexLqRaJZCibBDPCTrChEi17DeoX4DskREg9Yt5SpXwRKB2MRFaM6THKDwDMWsNZJcDhp7xjjDPXBJq: '100000000000' - DdzFFzCqrhsqLja7ksswD4V54MUPjWuVKbB2WmvhNvLpJjYLsoRLhHhmVYKp8B6TjPdm3jStFhpvFuHGqgfKYsiwersy7c5YawyU9XLp: '100000000000' - DdzFFzCqrhtC2RFhDpTrKMVhUyDkoqB6rbn5XWm23EFRNHxiMYpRVn6oHNUudLkDnVBhsE3VoTraucUK7gEEozNzu1aniXoRZPNr3TV6: '100000000000' - DdzFFzCqrhsztPvaC9obe4uPPeReoe8Yz7LGbEvgoUMURW2t26ZKvCKQHRYwa9q3qmea1Wq6Wez7N4wMxKstZvhUSMKGq2mu35YQSncp: '100000000000' - DdzFFzCqrhsmEdDDkWxW24xZv4miGsG89AP2TNgC2r7EEAxtaDi3ueEFveigv7V9ZL8Z3aDcuZ5jni6q3Ww9DZ3th7PA3bvpGz7JbNpu: '100000000000' - DdzFFzCqrhsky1fpTgvjfyfiH5oUWprVjckb398MjDj8bK13wcRhz7H9BbEsjCNj3Rc3xJnLkDNSkMcY5QQoAznRC8uPwfhXkk4HMhAi: '100000000000' - DdzFFzCqrhshFQU8vJQnDd5xgC7b2uEZX1RPibumRJSEdsBUQgWS4PGhokHc6XBM4h7tLiGirAhMVVwgJUpTxBtxoKbp3pXtCBnHKq3h: '100000000000' - DdzFFzCqrhsqvYYfAtrwybXyrZ2XfGpEDN3WTMyH2BsgehC6GWTvs5CvQW1eekvdPWDQU6HLbfETVDugNbeNRYbfKUJzyLjuVVDtmWRt: '100000000000' - DdzFFzCqrhseP24Yu7xxXQjuKzhQyCiKb8edL1qHVaV3K4fUgEAvHdeYAXgpGup6EeY15pGvVfFfkfBSRncse5pFijhLy6tGX97Muj4i: '100000000000' - DdzFFzCqrhsusXwj2sxaEXmzz7wAy7ngdF3pjnm1f8U58VcxXRPG6Zg3zsU5xTpUwsQzKTcXj14KCffdy9hUmo5dUisyZgGXWiyfoptt: '100000000000' - DdzFFzCqrht53feJEW3NDHkikGTpkGHoSqpwF24kWSEiFd7P6ceFeD2fptSJQ94yiCzh9FgqH8AdNk3gczsBVv6ADDvJSsqyiKxjd3vS: '100000000000' - DdzFFzCqrhst4iBUkfT3Pj5xA6vqb8e17LhFHyKkLiVyUxGc7vLkYSktaJbC6F36j9d1xN5vX2hkgRHzMaN2xkaGzw62WFnRFVauoNb4: '100000000000' - DdzFFzCqrht8P2ybUJw33prwqPWbkdcbhHNy5QhsfBosrV7toU3R56kFjhNyhdK7gZDHWojsKgZztJeGidTxh81wLHDKXxBwqj9QBcyv: '100000000000' - DdzFFzCqrht6NaQ9QkkRx6UrqFLquWd6gGicBcu2BxWS2bP9cXmhJ1Jsm822Ljtq1ir13R5nZETVGZNRtHjZGbddCywVmk615kJQuLcc: '100000000000' - DdzFFzCqrht7ncG7G1AuvaYpLn5E6zrwja12rW2WatbR5QMRaLJvoCKU4QLct2MFVe9VGYbRPDtJBfP7E7PapKuoKMyU1qz79fD6PR8G: '100000000000' - DdzFFzCqrht4N1sj7JjkVgdLnL8zRLG1RSF4RmoUoRS5g3JaMXcQfTMXz7fgxJQUULK3oUcgS6j5ZyszEqFZtRBoYCZ4Zcm5SfkFAyJe: '100000000000' - DdzFFzCqrhsxSdPSYTEWC28j8gi3qWDXxn5VgHa9XWWrYPja6V4xBmob8svGQho5AHFWCPNHcT7XHPBEeYcVtaMHybNGgzYbe2jaiTiw: '100000000000' - DdzFFzCqrhsjJfTgS7pG4CNtR6zCJhVHFaqCzhfY7jY3Cf8CxLqdvL2QRMcuAaRZG5ABLXAcB674a4LVWTbM1wXJ3ADz9Tg7PHoEbfuX: '100000000000' - DdzFFzCqrht5QL2ZCjRu3vsp36PReVKRqjGr4UqNU3i454psdD9hiLMC6JbhSncwjyFBNjwZiBWCUyY7ty6iwpCUBT7oyk5Q3PkrrhQs: '100000000000' - DdzFFzCqrht9zucT19Ym69mPEorJo8XnbCafwr8r4DGGJpezxMDeWASyZhQNc5vmMvE7wm5VX39E9oeC9VknNYbt6cZSeHn5pkWT6oFu: '100000000000' - DdzFFzCqrhsxU6yHdTZSq7ybgPcRdqgLgiZ66Etya1G7oGRAonUGiPugqfYu69M5QzTMMvZZLPnybSvjWAy2BYwBk9WNdyNBrQNSQSMw: '100000000000' - DdzFFzCqrhskb8geC1uij7PH7g4f5DNkYxcfpPksiKFmhZPvivukH8UiqoqtCn8Bm4zjMM6tE4BZ9UVpFvWmJqNkZSeyoi6XnRAseYrv: '100000000000' - DdzFFzCqrhtDGHTDogrmCeUYB45ADfe7jsUD3sX9ZTep8TsVefuxjBA2nDSZ7wD3h6RyfZZXJJxJssN4x25zH28s7qiF1Hn8vKc6bbxX: '100000000000' - DdzFFzCqrht8AbMx3Y8KcapH2zc5eqKtaY38ifkS9cUjzZtyFT2bNTMWVuJQwLQmJ2Q5pL4DZQau6bqjH7N2EttF3bdmyWVYs311ue1a: '100000000000' - DdzFFzCqrhswKhHP8yVXgyS8Tv54T3aNHjvVgoYigggyoiMD6847ro7zanHEVsKHgjtBi12b4pAYH86uELcSKLeKFfqhsgDrCXJ3mUh5: '100000000000' - DdzFFzCqrht3mSSgh6tPYh6hTqnWwne8QTHmuDVwExYnVmeNESsfS9o1ps3YqZ8zDTmCBLm36kya8kAknxv65FHq1mzuXEeh1xru4uvy: '100000000000' - DdzFFzCqrhsyENFC6AjpwnanwvCVYFEHjDuP1pRaLSKHiAMs9u32W7vsUChmK22p5AXT2ExmgXPfAUVaDVBGuTPzM9nAPPjSzJ5cKcUC: '100000000000' - DdzFFzCqrht5LzM3ujWHNuo54Tw8psAzq6LAYmfGsbyUGwQePcKK1oEb9qF5MCAmoWtaNaQSnUiT2oEs48UkG8TRrj58hfC1MaAPNEyk: '100000000000' - DdzFFzCqrhske3AMwb4scPsfK3Zy2TtD9Ero7R89482cKfvow1oCmC5eovgrykPrPbU6twceG4ChNS6jzxSYgUG8CUov9XzJwpzfJi3F: '100000000000' - DdzFFzCqrhsvq9iJqPVr1qMsPFT4DUzD2TuWK9F4WE9B9GWZWaad3Evw9VbdTsEkEebS4YaDiaB4tSiaZupk7mqPhaiSLJTPrY9Tevzm: '100000000000' - DdzFFzCqrhtBXs6wxxRnJBfr6PM3fQxx5gn8jVMzzS9DYhdiTsZ8wZwvBTazaYZuVoov2U5Ljr1Epaz41td7UDgD2iMxMAV3rqbZ7P8W: '100000000000' - DdzFFzCqrhtA1aAZb5ewZvR2LbkjcQjSAPGqGwkZwQ9XQKJRwTUVCeZYcNrNXi5T47SxRHQ27bJCa1fJkvi9rX2Dr1ozucSDMSYY9bxX: '100000000000' - DdzFFzCqrhsnCnZxEgwwXu4WKKSNADuPnrid5sUzZKiEx9b6KGPuksyM2gffmFN7Ar4EuB7sggome2ymbkNZYCfd6H4rw7e2hwNHQJcF: '100000000000' - DdzFFzCqrhstxaRYq8wHTYkjBhaZLJBDLGRZDM9RnrVvbvWT21SogEkoG1mAoQsEHwY19ypQ3EiQa7fynmHvYUUZkmHtD9RGYi1KhCCf: '100000000000' - DdzFFzCqrht2w1AnP5nUVdHNn6D3TUKP3dw6bAijbK1vzUzD7sXVPothRffWVSXAh7w9UjjLcMzCznNmv2JH5zsK4hmSpX9pGRx5jys5: '100000000000' - DdzFFzCqrhtABvmYEZptEVcw6gxyTd62k6fhPLtpP1Tr6CnJEc6dintCNuZes4KxH4Zhmm3TSZRVUWLwYKxZ1K4ijzuZvXCfkPigRy8t: '100000000000' - DdzFFzCqrht8qGErRZP9pdNtioCn9Y6cRDNXsu4UyrfzxnEzCnEVPjcDoKZKQEvaoNHv9PXm19geUXujR3zWMQ1QqQ7Jp6X8HfTYbGNC: '100000000000' - DdzFFzCqrhsovhRtApboKb3prBCub2m2fTDcJ3CMbc8UzFbifNQqrBSh4gbehxPjqLGYdAaWShfUYDKCHCpQSYPqHWSbmcQJKuh3D8sz: '100000000000' - DdzFFzCqrhsxoTxVUtpWvdxki4gQ17RUQWrXYHbL6YagHqVQnsVW2v5XTnhxFnYriPVS9Ar6LgNJ1iL3R5Aia1bpJypnR2nkA9WHbSGm: '100000000000' - DdzFFzCqrhsnhKt2MWvXBt2429LxvnkwJ79kmrG5WiM9Mkc5wDQNPrj8nMwFcZiRTPnGE47tKUg3TwA2Yq9vovpMSHRTysn1rt2SbJnH: '100000000000' - DdzFFzCqrhsjKkvakS7dVrShF4wz2orNBSMJMGpeyYNkN3kvN99gFJAhhVhFxVExHxXnmhTkJtcHWrRpY3xm3DAjC67t2CiCcmhyxyKy: '100000000000' - DdzFFzCqrht6Yy7op4YtaarvDjZtnQqF3kaidEdSaGqz5WrqhNx5x8jirBwjTFM9tcg6phXwkMdAoj3DoPWrQAC8hQ3rRUDQPZcxFh9K: '100000000000' - DdzFFzCqrhsunHKPAoacUVWLjX6SdGeHMymcN98WjRigakuNumCJeyCoDaYts13YS48tTkGYaP8ii7aTv3DvMaaHg2c6UBsTrzSB59Xn: '100000000000' - DdzFFzCqrhsmLc9QdkGQ9Dwtv6MwinCXpEpAeMz7Uc8giDk34Ud9Y5iTL31kajUbVTGNJ7g6vF57mwhoEx26U21DHyZe5kPWjVKw57Eg: '100000000000' - DdzFFzCqrht8F8ECWdQPVEZM4z6zkiMnfdVAjHwsSSGFyKfTe9NWDYfv9iLUcftptXYuj2jSKJ4YU3VpaGfKaxNsS3aaorervsgSLUy5: '100000000000' - DdzFFzCqrhsr821ubDTtA2N42NY2zBcNb78csH75ThSxhKVYGWjGu5kxJqBQkrpvtNXmSHawPDgnvtuWCpYCtmxKTJK5QArd5ztGXSd1: '100000000000' - DdzFFzCqrhssQMjAmz66DvcAfSMfPJxQSfNd8cA9vuknPoin5zS6QJ3ApW86EPhvJ4RzzkYooEWw2XWM2KRhqe5pqLF7ZZL5YUFzqupY: '100000000000' - DdzFFzCqrhsn5WhR7z3AGj5p7jZmr9YdAzojZYQL5s4ug5XFtZet5NodNbF2NuKpYki4GhYk7bM4ehhnCFrSzhveUosXbrF24XqJGFV1: '100000000000' - DdzFFzCqrhsvnmPSFn5k5NyjzQbbUuXsdvBrwrzirDNJz9T1m1fYc6dXaa6RkHxfbtpiHoiUiYM5VFDUfFRuBP9FD3UehuofKujo3EWF: '100000000000' - DdzFFzCqrhssFCusazWHXUZ7khgSfSNbXDUTrR9u1tc62Pmk6cy5PtYoPqXAY4wXnAZccHVvJQduPBQ7Xj3BmYUaQjAtACiyS9STsWRW: '100000000000' - DdzFFzCqrhsuX4Ju7VST1WP5jvWamxTkRb1ghrJwSedFhBXiZtdj6EYAGW5CdGwF9NeRV9g1GS4ttYso7soU1BvYp97BL1bJdrHZG7Pb: '100000000000' - DdzFFzCqrhswvTyXzhkrufxNkSMQY2sUqt7THjne3wqUmqNgRsUVXefxHGZ4mUq2FjpSKngah8Kgnoboxh2f3HsTXPi9xsvjnXxiJDLb: '100000000000' - DdzFFzCqrhseBfUQzpJanYhPqpBQdYYsoJuRrSxAi8fQbL4Sm2UtLjNRbm7T9Hc1vKj8BB7e3M7F3eLRQUFNRMqwjgJfJ4ANnFSoRVhU: '100000000000' - DdzFFzCqrhsxTE6PwWFgKnEbQo9NJvBPCSoTobkaJmQRXJdwhiJu6sXGn8oLQhfXsvUjskXetp4phZN6GPsiYW2CSNebvbkdiiWS7bm7: '100000000000' - DdzFFzCqrhsrQpCCp4LgSTqkw6PPKH1bkjQ6KAznmSK7izVDaRd9c4WsMQfKonRU1WSX3GeSzQw8YrSLcZckFiaKrdfGaKg5ps7CBzph: '100000000000' - DdzFFzCqrhssA5bm1sZwM5waYSF8gzKAqfKcPHmcDDztCSyVPLSRT97YcpC9wH3ieVmbcEft6huGCHNKT4JWGuVU5RdyVmN1Byj7JV3S: '100000000000' - DdzFFzCqrht4wQ9tURQwpDzMHFkxzthYn5GmgQujS4GFYLfXSCCmujY6rKkW65oKMDhDv3MxrwE564CdEpRCX9TthjxzRpH9K6GgjbMF: '100000000000' - DdzFFzCqrht4S2sfyY8nsiLJa1L1LeKVK7Smd53zYBhwwDz3XsnaZot7QNUrmG8TsfL1DAQccQ16fMJYDvLoQMQMv3i6q3CZL7KQzaCR: '100000000000' - DdzFFzCqrhsrHg2753KenwVkzJJKJCTLad3fydBmQaDyy9Z5AVwG4fTLHR7dAPm1Q4dw21vekUTb8RdFkgmviRZarBiUqxF3AqcFwuL9: '100000000000' - DdzFFzCqrhsnoygDdz5s3jHhZB4aUAGEQKHPJcbAAuEzcY4M1iSRh2tcH8r1Gm4QXEPrhtfq9bXjaEhxxrsQRDxwpNZfjiK1Qk7ahkMu: '100000000000' - DdzFFzCqrht2Q922m9WpwHYxStkPMHRH6T3yCW4TXPBMuTJhr5zGncVygCURWNgdrgKBqsNojqK5VWPpDkr7rsGF1jdWrreweamKqFT6: '100000000000' - DdzFFzCqrht8zHHSqsSqGVUYzS7XN1ZxAaKbFh3A58a3Mh2f1MDff4jHRmBe3kgqTHkr2fo4ootgite76yMqEoJqRd1EqoEf66FPDbFr: '100000000000' - DdzFFzCqrhsmajz6R4cJmAmsiNdS2DTz8xBiiHufwwBziWFJFD12B8EsvhJrjTo4o497CZozESxaSp1j9RsxFKUdhTXeBgBWUdBdT63D: '100000000000' - DdzFFzCqrhskspMSGoJsEBYtrthZpoKgnMALXkn1xvj6FLngpveHxH9Xz8cjNGdPLUVvYMXg1AMLAGYGBa4FqNn1Fg3J1spJsVbNwwkM: '100000000000' - DdzFFzCqrht7JdNAPQCq89zpLY8dJ4eKEBZmfRW4qR5QHnJgnd4sXHYmotehGRG3riec6dDQWVx9PTtNy7wmDCL1y86WpyPfjejwe6cg: '100000000000' - DdzFFzCqrhtCSH1pouAatoNeF4MtVHc6m9XNDQwXVTiBYsZTxJoSrCmBncAe51t4TZ1kmtZGoCLXkSUL2SvVdc82ne7bw8y15GDrVt2y: '100000000000' - DdzFFzCqrhtA2vGMiYJss5afhtUN63EdLJk1mxnvsXzhygZgajKzEVxURZpu3EikvVAppnAxgg4nfRJxypREE9iGjdM6qx5cHj5Jpejw: '100000000000' - DdzFFzCqrht3pM6bqHYcJRsYmiLD7NkTnty5AUVtiUmnUiGrpg5Rt5xwmsntBe2HDrsrKteSTSDbfoydXALXk89Kzdp9JobQbp9J1VvP: '100000000000' - DdzFFzCqrhsr27QaZfATYvsqjV98vMFEgvffD4tRsPefxJi8MHHoFQMEJ1ZV2msWyCgYb5Etgh4KV2Sh7YL3FgwJHuXLuVTYv1acdKnY: '100000000000' - DdzFFzCqrhtBb7mNhy3LowyiKRjci48zwuUqXGzZgvDSLt6mWWdgw82zmLprfhmLK3pS3JXYSJMPfndcUHBPWWNmyuS53nmhNF55CqLq: '100000000000' - DdzFFzCqrhsnB7u8SrdGTMgf3PVRUyz9gzsK3YCaDEP8G4rytti9REugshq2CCstwpTkg5iKguR39K61vTkxeHqZNaSqPB1ZATsuhoTj: '100000000000' - DdzFFzCqrht2Bhpc4Ba6nT8R3zAaiU14vhJRSSHgtbGYWziqUMiJ6FnDisdhVtfyUqyfzsPvUjYWGk37xHxqDCz26427wXCpAN5j2w9C: '100000000000' - DdzFFzCqrhtCV7RYuxXAwLnAu2rkmcVKasbuTzSbjwbQPxHzP3KSbVudmTKgBpRfnzM3CVs6p4nBeegnqD5KC7v1oXjfw4rEVNQg4gVC: '100000000000' - DdzFFzCqrhsuuY2n9bbyPKxT4ZqqDVyAvFqEnRnjabaDPDPNQrxPruZEGUVtprsQtTFs4h7kGisCeF97Wi1GSaaa15EFSneM9QM2k6qe: '100000000000' - DdzFFzCqrht6j1wgApngbzBXbnpFVQfPg4JQ2b5C8U8pG5M9cWo5v8rAVo1nDGMPphyfDVPjS5rc4sxb5y7MXNjb4xsDjEZ4UwqvbSYn: '100000000000' - DdzFFzCqrhssKmUtBsrjbWL1iT8oSeD13MXh7yrkVmecAYv7pUYfNSr6XRT7qQWcWHJxaYYuPwt2exac1PBTpZV65zapvbnMLzu8wmd6: '100000000000' - DdzFFzCqrhspPtL3MfMcHeSZ4wQUvac6SPGNCiEHrXbqfzQ748Ne1ZUMmBUzVkN8RTZXqGwTPdMXY7qnWRUmBGoS577wqvint733qRNK: '100000000000' - DdzFFzCqrhsr86UF6Y9WhdAY1dFyv3dkwhGBGwNwNx19wvPugGAyDEDwmyQgVTNfCHGZM4FdLSWQzwfXo5DxDRNLyizsX3DHqhCzucAM: '100000000000' - DdzFFzCqrhtCEPtsXCc19jpjRZX1yL3Bfp6FfP333DZ4w5R6dCS1CkCAM3eQrF2dsrNs9YaanbhBoYoZXabrKccYDqxiqwDCeXjCAy6z: '100000000000' - DdzFFzCqrhsuJ4KGXPeq3D77Fh4qgz8XKkJwmfG84fEhcftKyDVGzfrpPsp883F39aS2DFAjACLUVDKuxARh3TjnRk8hbah9YLbJ1VFA: '100000000000' - DdzFFzCqrhsfPshhTyx3fsWoDA4JpYgAeUZYaAgwumDqF3E5is8hpD3qQJspe5SrktkZpkp4ACSJvz6AEHEGqA933H6SBCBAdhS2qHTs: '100000000000' - DdzFFzCqrhsid645qK4Emgvho21JkCkMXNNsjeYDnGxSFtuy3VVm6BSvGuWSqWptkz7iu9E929FaWVtnX7Gv58Re1TESYNkhTcrFBnBY: '100000000000' - DdzFFzCqrhtAny6YTDBw9BqR6B8EjhYXk4f1FYLGBBqHktdetgAT3MPKtgBVHw8uw4DK6Das5Ya4TkbmNqwgqr7R8L4H352YsSfL3X7B: '100000000000' - DdzFFzCqrht8qqQVBVJ2mcZgqahX1BQ1393XV7ZUzZw2gzqWy17nRdrCvPLhrxULWFuxXmtdYYp939BSUuAvSWsFvL7ymkeZbvdMEcnE: '100000000000' - DdzFFzCqrht2q2XaYTfDdAzG69xZjdFtYj14EJTkUdJPTkFPtDNzKuQGjrbNwgYi63GrYCLcKq5syU5iUcFBHDSYUVJtu1bLaDVg2i1P: '100000000000' - DdzFFzCqrhsfHLcUKMopeMSVjbUU1waXdYzdvsoBEnoQGQ7481AMZ2SjbMhfqaELD3baKuR9UgtpEHPtdP4PYBNcAH5qL8fsvEMzrYzz: '100000000000' - DdzFFzCqrhsoBY58ytmcdEPBpcNsNZSZWxmc4tUajwtn1f7BLYWjuRsZCj7aYq1ijesCTVJKQ3hNSSzRzYV8YehCZQmbNN3VREzDQYuU: '100000000000' - DdzFFzCqrht92ihcWZLduFG3k4KiGgmQoGhSBEPExHDCh2NbSqvra7GNix2RjYfWX2otBy1iv8CYQQb4g1MrtSW3CT9Fj7fg4pmuf7Pb: '100000000000' - DdzFFzCqrhsehNKvbiX1iEthbn4sT1nucdcrAEeJLnMs9B8SnGCaQNvq2Dafs4SikXnRPc1hdH9CuEKRNN999jd6Uo6umqeZd7pcLGYH: '100000000000' - DdzFFzCqrhtBVnrSLcUGj7wH7iyf1bHrtnrHcoaUWg9YQf88NC5xoDpwuxEm4huiLhNN8ti8ptX2GzxC2GxNnWT8oXx8snLCcbvZgdMX: '100000000000' - DdzFFzCqrhsqmv1XXKrBZAR6fQdjA9DdHW1pfgkPmrak7qSmbvZTA2XwXfPZnc8XimHLLiA3Car9K59StccqNXBqyBcsjUxtQRSHyrER: '100000000000' - DdzFFzCqrhsqzdSBWXQkUJ1mJWxUbPgXo3vFnTfA7A6G1FbFTeaCgp41PD4cSbr7YGdy3Xe5imXGRnds6mTeecC1WTVyqBiE4A71FJAP: '100000000000' - DdzFFzCqrhstAu5KnBxgNCTT5XJdYQ3XYwGmsp6nuGoPXtj2wPGY9vLEzvsAYw2hmkei7EBpPEaEE4jw6fnJGFgQeyZj7A9EFUxRF9aA: '100000000000' - DdzFFzCqrhsqiQdYJSpcLAPXpS3ENoiQKbXRemTrZL9fUvFxWGzqtViSihqhNEBJFqQpTU9AWw81M2vCrLyDNV7Q3wu6MgnZkSk78u2f: '100000000000' - DdzFFzCqrht1BE19pzkzzPFojKNvgUHLrEQZUqDYi5GSnyoAu5n6pgUbhAbEtdY455QEMbLQU7sPKgL46hRf3Aydr2uw3v2NycVsnc9c: '100000000000' - DdzFFzCqrht9YiSBaGY3xNtoKxzRjwxGAqVVaX2LcdUxvPvwsbmC8mKaVDaCWpbsaMCxL5zZgcgd6XcykbV6Rp5DEH2UZ3t9kVkL8pvr: '100000000000' - DdzFFzCqrht7icQSvUaNXxLMbS11ouxKytJf6ZetARe8Df1fzoSA2jYAUtmmcBUs7b6Dnbg1Q5RhYWsbk8GksMvpfVA2MCxc3C7fAe2y: '100000000000' - DdzFFzCqrhsdwyL5Xdjz18heotupQcqGcaYwiEq4m5CPVN1Fu7x7kbx7FRdgvVbh8rsAJcoDc5cGj73ZNiyQxmBL7tXBMWu3f2y71QKY: '100000000000' - DdzFFzCqrht8ZUn39jnjtfCFQsShGLvnvogzrHV4mhBSwUabMduz6p9mKLtkVWrSJWGFJsgFWp9QwscFNHf3mcUQxot13HV4tbr6cAv1: '100000000000' - DdzFFzCqrhsmD9xRHRAPvmsBmTMq4MxF2Ezj85zrbxYLsktrXeYmeMbdtdje9TKFcrrq63bX8mAG6cX6PYdPVhzSXamrkRkefGGp4ao5: '100000000000' - DdzFFzCqrhsrXidYNscXZFyKmEcfsoFzpgn7ktHcUHfqVX3xMFLTx6hbYAF4q4sb76E7LDUpHxB5kuAkqx9jyCe1WaURB9eSVdU1uSuJ: '100000000000' - DdzFFzCqrhsm14cAPAMCk77kG7Gwu6YsRqhaJsPsybZnq7yru9YX7fT1VgSgrbTzkP3zBQdq4otjBMc8ecPbNh6MWt8k8ZXiTgh8gmFi: '100000000000' - DdzFFzCqrhsqqgKJTCJqRHH4EvDMBt8N2JGTqD98qZWS8vKoYzKYNVsgc2YvenK2thiwoyJHGPKWBRZ216mpgJXq43zQxt7bZ3QEqKhv: '100000000000' - DdzFFzCqrhsidJNqfDQLNiRVprzRhpxvt9B6dtn1hzqyCKhqchnKLhjLEu3ESVzEKGrc5EAiHHY7rrP2zFaSVmkce1DNUkEhFVBy5KuX: '100000000000' - DdzFFzCqrht1QZdEH3vdXTYrboyKzhh6Cn5r3pxkN3TYoN7oiTasyiR5q4XX7qF67o4zCMYnafDgDczehqw2KipxR7boRku5Nw2y794P: '100000000000' - DdzFFzCqrhsiMhkHeXDNRHZzkBNzzGssqgFqFae9VrZ9fV7USUN4ogD4G4DQAyYiAg3tdZ4D2vR3tWPWwTsQWrjSJiCyjBkSzbirDvo1: '100000000000' - DdzFFzCqrhspRmwRiwjJF9ZHvmNi4FGYCMEATFiytAm8uweRJFUY8pm89NSdGAQWG3XarirFoK9XXaHPGuDrzuUREdkNkz5DkyTFtBaH: '100000000000' - DdzFFzCqrhsejoW2qcdB81U6LNuhVae3hWX221V1yx22EjyjGMrW4FcWJwPnBx6iUwZQCrCGkQmh1K3Vivjj7MMgD4QY8C9KMBe4QVYF: '100000000000' - DdzFFzCqrhsqie1ffztHbz3DbGSTeqYQDqZMQk7Cy65oMqm6zXWAHRSeJnboMr1txHtcLyRF9wFuzzk6SiT2C8DJVupN3ip5VrhHKij1: '100000000000' - DdzFFzCqrhsiVXMXwGUwvKkgwrJg5Bm9GR58hE4Soxpy9SgtkWBPrG3WT4bocxExNTHYVy2KLz4CGMf2DMBDL1v4SXiouKCio4LMNoqv: '100000000000' - DdzFFzCqrht7hxr41HJ4zu7TFL6ZN2Rr5Sz9zPshdKboXgoeb5UdMMFqPsqrxtkCmnT2mSVUuPi3RxdqWpvrZnyq2mRodcDxMHvsjnTa: '100000000000' - DdzFFzCqrhstfrqD9djhFjphQwE1wy4vSzfNJAXppHSPGxbw9cfPGHD37qmVxS3icC6BuAg9z8pqSVnhVjRbxv3gnE1tjLfGSh9ZmqNn: '100000000000' - DdzFFzCqrhtCBca8t28wWgHPLXrqVbRjpMGo6ntAQbBVmesnUkU9VnXpfpiHmv3xgu7QT3MxoDzgvM22hAYWb5dWBjNy4ZPe4tnqVPfH: '100000000000' - DdzFFzCqrht3P8aqQNHnGFvJVsjYBTMWyYHeCt5KnsB1yNBika7kPsjBQpAbeA9TZZRuRc7fcB1vY4ZkPNiRRL76wL6CDvVLTwgitikt: '100000000000' - DdzFFzCqrhsyL9J4HTGVY9nojxhrdf8rSTrWod38VoXYRHtUXMhFK92Y4bmHsYgpvVqKk4wUjJpzHAEBmHbAN8bxKZHKCcz759hou868: '100000000000' - DdzFFzCqrhsnnzeUWi4xQu88SM5Bn2dZWFPQCEzdexgoWWRkck3k8s5orNA9WLQr1dGnWmekMeLKDkspBnEZetuZBCa6tXCvGQGng62L: '100000000000' - DdzFFzCqrhtBoz6w9wwEnxoMzUp7Vr6S9XwpHQJWrib4vJU7SEwPbhyKf7JJr8ZnDfqUe8rbySddMGgHNUHFWZNAW1sFoapmF4ncN8Zx: '100000000000' - DdzFFzCqrhtCw9zL7n6dtmgeTvqcrUnYySoWwwKgacRevPY5sxT4MbjBzVXe8LLZd2exFWZdLdmtJ9bVNZq5bqdeXKay8SeY5311J4qx: '100000000000' - DdzFFzCqrht96nPuZyMinb3AUuoh9XLtWaQXX5vBogv3CxRCu1jAGLAH8Ls2Jk3Q6LfXZvJ2jYzkDxB4VsRbqhFrvLJpb5ZPUX8N1qBY: '100000000000' - DdzFFzCqrhspDHCaRX8fhK2tPg8V3Ttdfqqv6LCfnL1rKx8XiMPvHTCxghSAZwMr316jRrtuy15evxdtNd4wCsy3wLHGiK8ALLCuga9L: '100000000000' - DdzFFzCqrht6SqeTkLsu4BCz1p1iPiANnCP8spSZA9vQWunUqKHzXQwqCBkYHvJ8T5cvRC5zAhyFp1HbTBsvYZtHTdBCk1DSPnMFpgeF: '100000000000' - DdzFFzCqrhspimnLiNraenn7vZTB2qJQySoJa9jdLzjiiHECUTqdfv12X5JDc2N1jP8cHHMBsgBR9uMameBuWgGkQEmvgERCctUHuLaK: '100000000000' - DdzFFzCqrhsviVcEcCKBXwfTVFV3J5gSzA8nJzgNgxLeoHRGEua187Gkyt6ZkypavHgRjd66kdx7KUbNKU3PfC9C33e7NEHU1Dx48ht2: '100000000000' - DdzFFzCqrhsgoVMKe6GN7HN4feWzFwoasfQqsGytg9mg6Ex2zjvVendKrLKHTgzVu2d6AF2K1zShYUHVCz37kXVcJvnLgqmTvrUKrUWb: '100000000000' - DdzFFzCqrht4RpH7D7toLDRT2QKrx6m91TGWh5Dw26KrCXqxvY5PVRFvbh9nqhPm6BN1bGohWDj1yheWUsucETLqSdet7bfivwetpzR6: '100000000000' - DdzFFzCqrhsywbCUoqj5sXi9xK5Enut1xZmDHEFYNnJt2gh7Tsydi2zLDEEgpkL9oorNJ85BQ82M2kGTtBv8qwZPFDmoNKMmMPF7W5iH: '100000000000' - DdzFFzCqrht8VvHj7E8pKYfcY4gAf1vzFZcTr1YnYVPJgHanv83pc4CzPb2E9y7AmzrJCJa6BN7eDXXEjAasUiprmUTVURkKHjSJuZ2S: '100000000000' - DdzFFzCqrhsxZY2sW89zcsKNFvaTuG5tb3nsCnzdfWDuc5vCbqh8986GRyK17Yd6DpQ7P4FufmUBGQH6phKHk5vh2QD8qREErqtNRVer: '100000000000' - DdzFFzCqrhseTob4UBFTJ14S7tfetxzZGmf2DsS57LXuDib7mX8JCUqpmyDfYqoyyKRDTvLByZkxS9GQp61YYz5zPmTtkLwjyaYpidEH: '100000000000' - DdzFFzCqrhsrQ6HrGAhhvqsvDTLbriJqnqHTAR9p9bcWr9C8m6Z8zRAzAVxVcDMCzp6dBkwf4yu7fEJXVLNv2KVAMZXbUb9MNz8ZA6AU: '100000000000' - DdzFFzCqrht9upMHEsV7LkJp9dFFiQ6R4ciArrR8rGbjbThvNSuTeTPWTCsj6j8BT5Bkts7yuUjE9gLpDpoLDVhSFTxw4Ge7y2DhpmHd: '100000000000' - DdzFFzCqrhsxZSWpmJTfXPjUFzq9YFz1NakSHam6fayRXF7gEZYv6JfWvHCRk7UbFjD3fjVdG7ukvg1eT56XfJNySZzu1Njt2ZiLitmw: '100000000000' - DdzFFzCqrht3Gv5U1Ekwt2gcmCdyZG7XYrD4TQi3fEPYZGBneUKMiT7WFWCieKA152VRj74hf7QqLwjDjcfM75vHTfqSnT5fJRkVhdhz: '100000000000' - DdzFFzCqrhtAkkHcqmn53L15oPmvuh6ycm75QGAmhNNDaR273UjDCAw27b8KSydHX7bGoypUyoiR66ug7PQk8eimg58G5jfU9JHFoW6J: '100000000000' - DdzFFzCqrhsrHfuXELg6C3Q3jYsWavU2QXCXQ9VLGFkPnYX1CopJ42i17epaT7KmKYvTPfRrFmM12wcwqRoM3VipUj254sqcTai6tWQo: '100000000000' - DdzFFzCqrht8Au8vc1g5UWEem4Nwvc7PWXnvcmXcqhLWhGixABtU6SYjq3Yk5MjYrms243cZwiNbqBgTjjo4jCbKak5byyqaMXmBViiq: '100000000000' - DdzFFzCqrhsnUNZ5DWVetCaseiviJ7KmX3dpLmJdRyBAWDmPSAxkepSVTW9zuxHpQvvDMvp16TKtMzoDVoqjiDSFLFggx5S149dZKcZm: '100000000000' - DdzFFzCqrhsexrE141shQ9GSabDFGuhgW5H8TR2U7kmSP7A9F8e5hWYtUDbaHew2eKr3iBbfxRJBGXMmykYwULo3AHrGCb7HZjWmjN7i: '100000000000' - DdzFFzCqrhstpwMupeBgNya9wmGkh9bYsyrZb6bz9v8a4orynopWp3mNhh4XZoFRxPHgJ3cTjCEHu88CZkdUiopxBdeptZ3SvkhSEGx2: '100000000000' - DdzFFzCqrhtCfoX5ssz6TcuiYPXpxSZRkcZzBe4tm13m1r2J8xXMUDpt6eCZRZyeus4DSWkxZxsp3za1MbWukuDKMk7DbNEBNATHgZrD: '100000000000' - DdzFFzCqrhsuj3A5C3vQD2JFmCCpQybhYNpnWf8XgAidkoiepPhLqEDE3n133STaeA4Gi52GGVbM8N3WLWDv9eg3YbWMTuCbMuLrFKpK: '100000000000' - DdzFFzCqrht66Pd5cbKxe2B6tSssiWuiEYukctVVXib6VzpJtFbPJ6H59b44zPcdFjqj8nWzXGcQG3j7w7kVxzRfWGPjaeuhN3oSswdv: '100000000000' - DdzFFzCqrhstemddBkQ4FdLJ1zw2RheCnfVzuhdA5mZxMpjkehpVAZcerhxShuYfEghytuxvb2xBXx2CyUBKuirN4HAL9VpLN2sTe1CL: '100000000000' - DdzFFzCqrht7ECrWLALfcNFpY15t9uFKRXBg9XnTeL1CZKaeVaYcozYPLPCUJPFCafshs6Ut4KsoDkcFz1szWK5ETmpbmP2nKuRbz33D: '100000000000' - DdzFFzCqrhtA81Nd4nvEy3Yed2AMazNJZAdxWeYZ9Y5GV2ixiQnEA2ZTByMNQQEdGwEtqUjEmHjsS712TFBUt7rwkx3mz7pVwBqaXXDi: '100000000000' - DdzFFzCqrhtAhTNyzGV9vCXAvyaWd47XMcUEmWnUhFQaWfmRwM1xa6d34YdBvZdbCXgnMhy43tVRp3kb1ojsBFvhYYBS8JJfQcGZLfRa: '100000000000' - DdzFFzCqrhsjau1oTu4CtgwQVe68CCELCrYX48v92kQbSQvX9mV2sMtX1pfruYUivfmMmuhDV2URXs9Zii8rBvjQJvizEVQZhkebcVPz: '100000000000' - DdzFFzCqrhsr3hg61iDP2sR67k77WpjJ93Q6Jg1jW7rwuG8SoJSRfkyciBdPD46FtUTC3LMk53LgYNogYLDRvAMzoiu2FgVkE3ssFALg: '100000000000' - DdzFFzCqrhsmGKjNiAn4rUfE2w6eU7PB331snS4mVNoJtN1F5Yp1EFuVJC1yCbqK9V133C3DEVWfQKLo5crfDv8w1XwXRevMrJve5AQs: '100000000000' - DdzFFzCqrhshyFfBWD6xzdLaFE7nP7cVmXJBxqZfC1ACTPDzKwbFZQFPr6v7JKUxBSN2XVQSaEXNLhWPYvovL9idPcY7njZPYVn4sc9N: '100000000000' - DdzFFzCqrhtAZHCrJBX2Wg4ivSes4rSo6App4SaEXLMdqNgFFb6zeD8APtx6TSPddgoZHMNpcVttpfAmL8AYu8xvycpoKyJX8Z5WJ9iB: '100000000000' - DdzFFzCqrht2nE3pu7fiuu7CYxDtfCy1pnPyRSvEqiRpQjgw3AuRHuUqwMnt69HfFD13WNQVB92EPFvCxBRthP93SmuJw6Y1CmiYffBF: '100000000000' - DdzFFzCqrht2FP8YFs5YkNf2Aqo3wYXRQRZT6C5ydQ1gHeGUiQDojMSwj5fZXiHNgjZLwSoPU4d3ryD3NRVHwVTUV6E2Ajf1PonncbJK: '100000000000' - DdzFFzCqrht1mSKrFd7zbreqbyA7CbECQMSUMwd53usRCL7cmjkweprK4m45boob2hpjKLnRjq9BWd2JkfAfXcbox6iWgTQzLDWy4sai: '100000000000' - DdzFFzCqrhsieTqw5jZwYoG5ibkuJXbPhdQHsoGzTxMC8fEacK65rgTkZrsMdjNrxbJCg51XNe2Z1DTfgbRhdY7bGv39Sgva5dn7R6Js: '100000000000' - DdzFFzCqrhsfysRg51kA4FxFWm279ZY7646jhxvFjF8EeFSb2RBZaTHD4qEUoVLA89gEska3fr6K934P1SUh5jRbfTmemAX8oXZe79h2: '100000000000' - DdzFFzCqrhsewZh2mPZTTgxEJa65UuMZFTfMVYZdgkNu9z3zgL8psq2Sx3iGVtWbvHPpW5rDFgtqkjA7FJeEz6QT2JJ1mANMffvfsNwp: '100000000000' - DdzFFzCqrhsnDWzJ6eLMBiC3yNAjFTnUwuWTswT71SLMJew1YdVCmdcsQNE46fYC1AT4zj1zMPMH5mBNH8hyQRDB31mD4erEzsRQmZg9: '100000000000' - DdzFFzCqrhszjaKta1B5LawWmwHzep2gUFLPcY2nTMmrKnBva2gM7sVPdAZ5K9quRmPMAv25SjXR72QZYsM2d6npyvD2tYbKkedQrB5J: '100000000000' - DdzFFzCqrhsidhXsAkgn75ZW5hBm7GU3rVx9vpHUERVozN2imdF7YD5KrRjAxyqMvSpanC1qk4MTRABBnQUp6wUTA7Cxq1kfpb1H59Ec: '100000000000' - DdzFFzCqrhsqKffUrbcrUQd3TYKQHNDYmGUG52yHJC6Bpj2xGiS1SmibXbkRPAfLCB7t7WkkChJ9UNYjR671KShb6yg2UmqcJDVYuMRa: '100000000000' - DdzFFzCqrhsz6oPnwmPFD9Q71EXCp6UjqPHT7DhsDa9BQiCdDQQrnMF6kvX9ZkN3xDcv2fkZa4FsWepL3KJK7KgCjDu5HgC69LbptprW: '100000000000' - DdzFFzCqrht5v5msg4HLVFPLtT7ndyAS51uCxgvSVvTSyGrLUFPiHPJE8CCLgr7eHp3BYN7FPQyz5z26jKeXA385K4Mu7MfeoQTHxafH: '100000000000' - DdzFFzCqrht2qEERrHHQEteoBBrohrGhUDsqoC2XJmVGiueaYYgKozTN2bR5VtzDUUzBepmMYdn7NWJFBoQ6rGumqDpsX24gxJ5b3MJ5: '100000000000' - DdzFFzCqrhsrWSBJW2xC7B3DLfTB82sa1gc5pyfyLewSDc7edF1w1LUv6xMyWFeLV223ZEttxF3M3EcPYbP9qYKxxBAjHYr7xoZ7Swhz: '100000000000' - DdzFFzCqrhsuVim8EiNU3tsX415aJZ2UVvYTxqVEi29WSY3QknwwiLptKB9pUC3gnJSxbjCcsJoxcxT367aoCe26BWQ3PrvxXnCNCeaC: '100000000000' - DdzFFzCqrhswFzx7cwCX3c5jDPye8aWJ1h9h15rMvV4CXstDCyJFvLWhgvyBWjktKbvyk2u1MHVWt3F159jT4c9foHAYR2pzCJq2yJG9: '100000000000' - DdzFFzCqrht13bfVTveGynbJjCdfvbFWYbALziEvVzdCeuMWboEvyQg9KQ4xfBick9arDwaHSCSmsPvRaqVsMAkiYhJoxUTSRQa3fut3: '100000000000' - DdzFFzCqrhtBsYvva6meVRXmcJiqdoDeXuwMF95bFcF6Xm1Bis1b53fbHxYu6XW1HrrpLNZuR4Awcpkd9pWjcmEarJCyUmBgr3hzqg2C: '100000000000' - DdzFFzCqrhsgiYV6v7koQ6Na8pyoQ5cJPr5Qpf4rSaBbPTnprk8c1pbJBmX8L2XDp1QgS5zV4dwLkezAzXKRPjqJNCvkdzWB2pto6fTX: '100000000000' - DdzFFzCqrht6bncAcUv2Xkc8H3C1Ac4HbUZwFz5BvX4p66zdPNtyVug8A1eisRwVYpmYRuZi1fBYmG91NqGModmdTCGuJKjsTKyN5Cbr: '100000000000' - DdzFFzCqrhseipkRqSWnEFo8okC2kJqBrNSyLHrooSry2ig9JsWCNp9XGWS9j4ifMD6pJEeiHfYqqpipJoQF5exiKhmLCXaR1HfbpwHK: '100000000000' - DdzFFzCqrhtBWSfB52qb4R426ammhF7nQtLPaFGFHjVH2ZLtrcx9CEZq4AdHwwa9XtkLrrKF43BsUTyeqVaxBRi3WJbvdfsgBytFtMSR: '100000000000' - DdzFFzCqrhsftBgnzPrVcKLsVyjrPq8QLJPgSUUqK3diVQ7tcufY8v59kDb3WJtVs1ouQUtSDo3Cn4GspMx7mxtFaVDH41x2TvjZoBL5: '100000000000' - DdzFFzCqrhsmAN5s6AB2iPnA1Gs7SF78ZSKYCjxtNjx8NxgaJXG3fqK293UbVybEUb2bTPFN2BzPuUydU6ygNDp3XcHEPZGnXy6SjDRX: '100000000000' - DdzFFzCqrhsnCT29uT5DV4cCqBpyWDNQqeAQ5BcqG61hB7ttdkLyjYQ2gMwV28zd4sxvGpnLKHH161EuSZi1D95YnJ7FsEhwSYrCMxLK: '100000000000' - DdzFFzCqrht9BkyJ6xmEzVgy2A3MYkWyC5CcHdRFg6P9d6DPedLTJfAuaMBzTuhUdY3uTHmynzrNYeZcPNWMr685mS6aMEp9WzQxctbX: '100000000000' - DdzFFzCqrhsjH8ZrptUx3Lqn6a4KHT1CEs7Kc8qYJPnR8JM52VDe2By569R8gYd82VGTmmkNPMSGjwp4CS7VfKkcjSvR14sfgbGPyquN: '100000000000' - DdzFFzCqrhtD11vYVXP6x3DBujPSbd8bjiwUwuPPRyPbJqdTbYTFvRq2az9WBUXPp9YxWa4To2tGdqmUWrm9xjRMRiPfydDbYWnUjcGA: '100000000000' - DdzFFzCqrht3eWRupXFoukzrNo4tXApqbMH56KsxYBC6HDMSJ3XKxLugg626agrbiu5TBqXfjr8fdryhrkBsHwXyckkMxqMwEAU5iv8u: '100000000000' - DdzFFzCqrhsjEQgHeZLBcKVVHoN8tkZVXXyQSK8xchmSGUegSDQmq69mdRL7hPcfqfNGh7FrUibX9UHAaCXjpQxRg2L6CQqN8Q1WjMCG: '100000000000' - DdzFFzCqrhsmnWXeLsNdoNZcphmnUhTD94XcjfCDoV27DfYmVA6umVGfarH25fG5CYW5dDUB4hmzm5ZySrNgYstZ94umfJrjXxDVUr6V: '100000000000' - DdzFFzCqrhsqWrNWvtTwi16EY2xxjwmELa8gB94fwkzk2g6vDiTB6T6exyvhcxsKKRnFWeTPJquuJqeqMmmF5oTcMpcqyb7W4L3HgaYE: '100000000000' - DdzFFzCqrhsmazcxguukyfBwAstmuDZvtZvRSQtYexveR2BrC1ZB5TCscAr74EGcthbbGSaTrui3VjpmRXzHw9GU3j78p3AaQUkTcnPN: '100000000000' - DdzFFzCqrhtAA64GN6rvcr2wMQPstST774T3iePwyRD93Av9GxJBBcA6mKmKwdt51xpjjWf1NFo3LyYwhh6AnLDE2yt4ubZkNatTtm3t: '100000000000' - DdzFFzCqrhskiMixCwBP5xXjJd2LV41gKwFe2qMWWbznenBxgJ6hRwGGP2yToXwznwc6anGrVixm2SchpHzwG6NDDc3UN2CJq6YBSfaS: '100000000000' - DdzFFzCqrhstXqSybDkiKY3QHdFAV6sWdkK6PV3Qh46s37SxSjtLJdTk1g9oSGH4ZLYUye1anZLRpbeVdtTY5SiEZFatxZgZeuUjHtPJ: '100000000000' - DdzFFzCqrhskR6kYqddQP6m1nxm6HtMnFkFkMRVKoCyNSQCkAbM3nmtekHZxHE1YdWWbV28dH6sdJHtGtXS8akcBFtqrbMQTdjeixEhq: '100000000000' - DdzFFzCqrhsePBoa7AM18nPP67xoBRtYeox6PxhQLhzBCxBNBSvxSbSbiKGe9cCEVcpHya9igKFktyGnxRAnpczHbdt5qQvEMNXj9eML: '100000000000' - DdzFFzCqrhtCSo68dDjR7AhgiUVUs2AFhpsL3PDppYZgJjKV9d4ST656e1HAjYixdvasGu4eKP4cbLTUe1X2YSoHs5pPJMTg9isJAa6T: '100000000000' - DdzFFzCqrhssveYPKz2V8eBJT7DSx3cP1eDzMJzyo1WARiD79y8B7L42Rp7XjmzcdgL1hsda4JVHghm1jQj2xHZrSN3Mjw9RiPBuWori: '100000000000' - DdzFFzCqrht6mgbjQnSiz42d23v1esngXkuqWSTGbChgmRkGCQcP96VmhddYbzXVTZtZoXyZuvvQMCMkmpfo7RC53iR2pHqMg7tVs51i: '100000000000' - DdzFFzCqrhskHLdDjF3jvVD41NAdGqGL6bZa8pgNuKmTYbRtGWTV2YdWkGE5ATuqXSjTYYFDvbok73d2zDnnuUmoZosJSFSUChpbi7Zz: '100000000000' - DdzFFzCqrhtCgDcuE4AHFYesG1XSDS5hELrctspWMjZZ6zc6f16wDj8aEMKZBtXT5d6VoT3VqmguMV1rqDZ3Hwo4ZzmsQHiE7VVDuHw7: '100000000000' - DdzFFzCqrhsoazkWATWjoRtbLHJcciH3G39PWnXTRvwksCxo2Y5AK5rvcs1dfQXu3yejWrBEmotHowNmPtLTfx3DaRCfjv2xjdXwwk7b: '100000000000' - DdzFFzCqrhsrC22jQo6rfgVGZKUutJPW5e2vKTHC2c5nn3jGTw1DBEK78MWwHXHq5KVDWTQ69wf9yqWV64da8QnM6ke6iY1uAM4aX6yT: '100000000000' - DdzFFzCqrht9RtDuLeCZW77XGxTYVByen9JBxaj96uKKccCqEPmvzfvHCYS6ucFDYYBhAEqFqg3ejWtkgsZBwTUA4rSthRbgqkg2c5Vm: '100000000000' - DdzFFzCqrhstpgnjboHWpndAvU96xaDFfzabrG7ZxEHx5J9h7RsckBSiAGFryeyRV6VfPWxMJC8fbsvoZjrpw6fRD49bYnUJiJxiu4WW: '100000000000' - DdzFFzCqrhsrNfLGtBDszf4zgw1LLfXEfeG7p1xq3ubgyysppojYWSD1S3ks1y871PTGQPUJhr9e3ynWBJqY38Qno15PjRLzPAP1mjsv: '100000000000' - DdzFFzCqrht7YUutvA8M2dJDRpTkrS954ufZx6bAYZGfx1zd7vB6hH5viuyRRMbrKjAzuKLPPNj2ztsPDzdFFKSaV2m1bk3DrKXaxpEm: '100000000000' - DdzFFzCqrhsiSV5SKmQVBgNMG1SJBn4hEU38MLHPDu2c1kfDMg56UJXG6EV8pUmTyKdQXLJYd4ce3T4Cm5R35JXF28HQP1NmFcfGWGk9: '100000000000' - DdzFFzCqrht6vqywvNZ3XYGEPg5pxBVDGrwd9KCL3SgXETnJYYgctjzEJGg2owhDMyvcje3CPydJRux87DGhceJ6RpsCpYR9V4U7vN7i: '100000000000' - DdzFFzCqrhsiz8vGAPQGQPhoXxcou8AWR8Yavr6zXBtHj5faW91tCSthdRkrnzDj4nR5x8r5ZNhbU2y9kLqCXgwGF8W9EAm5dB2p2nj5: '100000000000' - DdzFFzCqrhsnmJ3aUSkKX2YB1B1uhtdAkqEnhMgNSkaDYcmjmxCt7Yk6gJCRZS1m8AZrPSQFTVkCTvEXw9JfXLzgLdbW96odBWhfrifW: '100000000000' - DdzFFzCqrhsuPALKSafpg9uN2qLUvWTykAg9UXxqkfStE6hky3ER8dDrs4tasek5aoPKhjzwmrU91CcAo3LRZGQZCnD12v8jVQJjCRA9: '100000000000' - DdzFFzCqrhsezMDDoc4EFs6FSp1qQE4cxH9yfHZJHTNgEJyUFYEY49EkBJp7z6LEdufKZncG7waj3jSqizW6duQsksvyLmcn6F8o5sHE: '100000000000' - DdzFFzCqrhshBC2drNiVTAPUc3zc6sH72WVquMjbsCButxbU5hoqLm4MDDY2E5GuvCYqyDV5FCeo2yb9mUC7xmWTRXoC3EM9ypCR2tMV: '100000000000' - DdzFFzCqrht1gsp4NTMiMsCromT23af8CvheNnPppMNQjwXHXDNMG8Tm2CbZw8VtLpjTTjgWw5zwSuPYXF3g4fXDtpzsSuogPHKBXmd3: '100000000000' - DdzFFzCqrhsiipcZJdaUjteUWzYaC3is3rawtS96o7mi2c8CKLCsmCGUen168uVxpjtL4TrrShdErMqyFzKdSmWCBcDYEgVH5Uym18hQ: '100000000000' - DdzFFzCqrhsfQcxQTStfPAvrDbXzBb9UY8DRiPjkxmhXEhaQvt5QBayaweSmbrgmtaqPNJucwA3sqDtGq1JZmJpR74EdhZsv2VRnY2f9: '100000000000' - DdzFFzCqrhtAiqawiEAobxWuo4yRKzYL6CF3EpSYX7ip1kHh5iRj74bAn6ngXsXTQMtdsinVhr7hKqsXkqEGfKrKnX1iazWnVvpiseFV: '100000000000' - DdzFFzCqrht6g5GdQotde1CSpSCQ3nQX3PtnBqPWHoxTTufi9pwPQa1QhEpDGXo4mqsv8cgEn1rmj2hxxJ593HNEAmdyi5KiGJzWPWc8: '100000000000' - DdzFFzCqrht2Bk7Wm38FXUoi8tMYmn7eytAKynW2sSGxoEKjC12tEkrgP8VTqwEPxS5Gxazv6UQtBUAYqLM8gCG5D61HPX8sHoH7BYXB: '100000000000' - DdzFFzCqrhsizfHhnqMrFdGSm3BDZtoHHPzCPbNGixV1nzWDYy9xfCdg1miwYsBDwFiM6frVcENrQx9KZtQqYfwgxEc34dkTx8tva3RH: '100000000000' - DdzFFzCqrhsmikVEKgvrgvDcJ2b2wS5ygpCCB5nX6Bih4DBT5G4UeeYs4T1NSsDGQ4k8zejxnV5zCGksBvMZ5zztcLoyNWvZAzr7Ymg2: '100000000000' - DdzFFzCqrhtCYjdYEeZtDEHq5zCZo4hbDxgtP8t4CUyPSDLFQYXbMgJKrwXHL96hrjE8fHLfLQE6EnmBNAz3zjERywxQnxkFmDeUrEra: '100000000000' - DdzFFzCqrht9PPqthaDdnnYtqNL1wNDQDwucsmGCnfKTNgz62bQEUwDCE2D6tXrn9mT1tdesPQfVoTPxtKGqvWhmNWVCRc6Aq5LudDAr: '100000000000' - DdzFFzCqrhsxUttsj4AwiQKbLdFEswoPGBPji8XaLUHzwW3w7kD1SLonudsTPxeDUWRnJtSgKwfYMD7ihXFTvZC68VC5pSXGojzU7fpi: '100000000000' - DdzFFzCqrhsz5Aiu9F3ngXYzX4w2Kg1ZmrxH4FP4RtEQNj8sSoBp8zG5Hs9k2QwsrVeiu52fwRBhu5SvyPKRZWxRi4sqkwqC1yA1zbgg: '100000000000' - DdzFFzCqrht2ydUJho3y4Ae1HqhSLFwq9moKxLDQW4dHixA6v2XGrrT4KqcGNNjk3cN1N1Ectc2qs9JViabnQ5vQ8cuosCCBa9eKmznZ: '100000000000' - DdzFFzCqrhtBGsakVjnfBeMAAP2w1R4PVRXdfaVNwz5f96MhxTBoMsF3qk3hghpSp3CAXpwRkjUdf5cVAEm34AuEDMopVPeJTWz6YAAY: '100000000000' - DdzFFzCqrht7vHs8w41ehNKoLjQ81YaBeR4rqdQNFpL5dW4cspLzMPgnfLJ7FpoBB94io62wNz7XcyxEjjQrUiYGrc5bQeVNm3E4NCGc: '100000000000' - DdzFFzCqrhsmboHF6ECHkopHPfZnNe1CTMzo2anHdry2F19aojkAiUrSqxqLijE9ADxRRFBc8eJXveCVQNQ69UKUFvvWqh3irvo9Uj7E: '100000000000' - DdzFFzCqrhtC4sak5k7Ur17e7Stfs3WXHfD4Wun6YYHyNuKZ73YUpfbWPy42vz6V767m9uh3YwsV72CxMMd73sHZGBudBukygar5a65H: '100000000000' - DdzFFzCqrhtBvNo9S5pMDYfEmWBknyHgQfbgnmvC7Cfvn1D5JFvh72FoK4MJ4L5ZJnVpbfsnEYXjiJSdvbb3ZWWUbrVoyzRGdUA2i6o9: '100000000000' - DdzFFzCqrhstE8D9dQTxod5Atxz5cRnUVnURp2yWSgUHDtPTDh25kBq9w3PDF1MicztsM7ywdQExi5TsMcFaqSvgwvUFPMY8sQNcy6ua: '100000000000' - DdzFFzCqrhsg5zSxwqDMn2dyYoRTzF9bPgyJjLXwR6MdecedFLoQ3JBqPGB1C89gd5pDR9n68UDzG7jPKawcz6mX21hA5iWiDT4UpfCC: '100000000000' - DdzFFzCqrht8NtBkvoWbWenp6rghioPNPX55NvjsyXtRAocDnPTaLN1WyREEga7KQBqUWBzCEBkYamnFbiXb2qYF5ZRHKg3FvtFt9xBV: '100000000000' - DdzFFzCqrhtAYNzJvKZueNn4kegSUbBCVSSMkH7DiAucbJeN86mRs3MWa4hzzn2fiPHhNXook4YT6ZxnQ99EvmuL4DkMRU1dPF6bRJ9s: '100000000000' - DdzFFzCqrhsdso2Acs3ZWRZsvSiacqTb9RJCTd2tqKtN5jJUwJHAo9mCih1SVpMoZvPvQTLvryjfK7S4k4nopra3CdXYerEAS8sXTiQs: '100000000000' - DdzFFzCqrhsk2LUttfUUtw9K3sbFgexo61H1UaRakYKarUT9BqC4NdCK51wxdeTAf2nWrpvk5aeD454HkwJzWZS4f1SDJnUqjwJdAwU1: '100000000000' - DdzFFzCqrhstL5nEaax7t1kpHKPzXS2jcMEPf3PYB11fJmyjRNvzj9d5a38BdD78VSCUFJrPUxoVyCmgVxqogi7FdBcjDkYP1QBZcQTr: '100000000000' - DdzFFzCqrht4WPKUCjXhWAfibm5Wo2bGsc1QwsDcZBbuNU1Rc61t5cx5Y1df7YrSteNdJNAMLimMfnHT1idmfGKA3vSrC54NjWZENFqr: '100000000000' - DdzFFzCqrhsjuiPr5P2WFmJzdQn8LiqixgNhfBqWSzQgpkjWZem5iYC6m9roZUUuoNTfRWEbhP5X3RqmsC3u7zgw9kUHnd42cZjyVPmx: '100000000000' - DdzFFzCqrhsh7q154dg5ieHsvdjW8pbAQ7mJLJo464mSPn1kccyNXT4yhwfN9YBSitVUiRGs4cw8wiy4PUunn7ssmtRxwU7nfwxBhyKU: '100000000000' - DdzFFzCqrhtC6WPsuyhqtVPmWEz3MdT2uDk6JW8gVEb2J4Nsi928Zmox9uKmEVXpzw42NhprGXRLiAgQTALRU8x3btiUdmnAYWXY4k4r: '100000000000' - DdzFFzCqrhsstkWYNBD3fpeP8xSXyQHzKySdNfSZVsPqQ1jjL8Du7YVBwB8bPqd8RJP9M5c6S3pav3Ys6fueage6Vf5MWGGmgvTZGKbA: '100000000000' - DdzFFzCqrhtDEKPFcpmBG8EXTgXKdUHFALzy9yBzasahChmSxyXFnUMch2LBFDgB6k2u4TtRbE4zPCc7vokG3vMZkJoxNaMVHaoZwV6Q: '100000000000' - DdzFFzCqrht1QvSXSVcFCPE7dm9eaVB56eMRUeKadtnREkHC6jN3WR19gWFscoAvd4tT9HB1GGhYUrdVj7yBYvh5Vg3G38Qd5jwAqFY4: '100000000000' - DdzFFzCqrhsu37FVmDNLAngSqp2fZoX474mzrXYHGM3bDeqsG3nyuu2rLW1bhndHG1XL9NoPikGXb57vdsiFGD5rvfXCTXyPNAUnM86B: '100000000000' - DdzFFzCqrhszt8RBxLWN8raBaqDR8hTW91qeohZ7KfcR4bWXe7t7CYZYmQGR4qzZ8qc5WzoqxVRzPEcTSi9Naz1SZNavMEXVGm92wmV7: '100000000000' - DdzFFzCqrhsxYoxRtXRHu1G8QjF42oLdYtUvjTUar19DTr1c15rWhfMhVaumw5G1T7suC7UGbjPSHzwNbEwrDzpVBRzkM2xUioKEr8WJ: '100000000000' - DdzFFzCqrhsfbYrsF3zrvznBw8aN2Rb1nQiaotFDhaJzXTTcW6EnMN8KuNqV6NRMPkZ31eps3PQ93FxdWXm4wdC6PDXQVaQ4N6R7nHmp: '100000000000' - DdzFFzCqrhspPG75WPd8Ff7SfSHHUj1ThjyX4TTrNdSRfR3Rf5tYc3KCHCsPTGz4bmZcQh2yYVFvZ3a97K8pm2xaYgcD97o7C4xjHh5m: '100000000000' - DdzFFzCqrht1M1m7hBpVHLTx5J1UPk8G6JEmjBpoHiQNpZDf9vFjTtJYHhvw7WvUHFEogWefTzPdeNgyMAfG99axy3bpAer5hdkMwywJ: '100000000000' - DdzFFzCqrht5yEbfJY72VZHKbizsKmAfWErHKmQ7X2SCwBAbWJys2SqZqwsLwek8xYZqFDyCP2j22NaxzwPojehgqdCqPrBLvAMa7A8U: '100000000000' - DdzFFzCqrhsxQBAhsAKjiohg5X29WKhDgByq1iRfBEY4zS6RtBxskJqfEdHr3b6xEQrYS4FZ2V42z453V4cPoPUnk9t5Wnz779RKyVPq: '100000000000' - DdzFFzCqrhstorkTmRLeMuVgDGYCMdS5cCjNVqkockyTNe8VDU2fHLFFoy5vZDkZCgYSXhj1xQD5Dsjy6m28EELmaA75WfcnWJqURKN4: '100000000000' - DdzFFzCqrhsm8CuhbBL8Gbaey66LTHPUnZAFxzwPmLGfisT7d65Xj4NMYKMRtdVHeF95gicTCbkj953KGxTnsrfMnJHKjv6eFnSPeNVg: '100000000000' - DdzFFzCqrhswSDgiie3Grt8pfU89fDmnK9M21Y4fH6YD62vv4nMV7X36BFdjqz26sYuZoTYbKCZXWGsBCroZdbj93Ggsa7JmfoyBSnf7: '100000000000' - DdzFFzCqrhsr2e1v3shpmm6akAoXe3moXZ8gqVgft8f8nKhHGvbw61nJ58bTP8meMzfK6CRLydqBFmgiyhm9nRLytto8idY4NWVYwY4R: '100000000000' - DdzFFzCqrhsq9ksjqtNkiTMCQRefFRpFZymKYR5KY9K3dx1iuMDLfnxbcCjttmApQS3VqBw44kRcVYZqcKkmDLX6BQSSdJpJsjrd1F4i: '100000000000' - DdzFFzCqrhspPos2BJmUkkG9kWTb1N5mrqkWxt3xtiKJLAZfkgYB8pe8JWmDwfZEmAcAfHYdBFfQX5f7eH85vmNGwVXNFYYMi8et5RWK: '100000000000' - DdzFFzCqrht4zmwguWjWYscg1J2Amgdi51qFbj3jZxZuVFtWbZj7KhkwSVmaj16CuaCaQ8mUvn9BH295Tj59hMksNSvUPLrtPE2J3Q8A: '100000000000' - DdzFFzCqrhsjrzU9wpS4MKuGPwtdGvBMqLwAArAQhDoZdhF1TyTPzVPiVfnZsXEhK3Rg2HByeMYbLs7CxhNZQEbeWiTMZgQ6S5nKvvge: '100000000000' - DdzFFzCqrht5Ks8m1aUaucNsgjnH4W35JWue68wtiYfmRtsuhLZ9F29qTFKJf8PXU2RpczMmf4C4sMVFtSMSpgz1bfgxk8HtEYDeHbKh: '100000000000' - DdzFFzCqrhsgyL5jMQK7VQkkm434yEi7XDiZriD8YhWtX1bWXD1qr5w7Kr4Abeo6QrzDPzNDgYgxzhvCYNFjtKV321gevYvSWCxF1bcg: '100000000000' - DdzFFzCqrht5NXVz2Pt3kcdsW3Q5qtRZCK1wfKZoV7am7P9yD4wnj9rHgzm7nMpeLtuZYrUdpioQh3Bi9tLGAuvHrK2uCztxff8k6Bi8: '100000000000' - DdzFFzCqrhsj1TXEZ9wx3gfT3UvNJjijfQPe9Qmcbt6PxEmmbeCU7i7rR2QkbPei8CyGvipmax8NfxesAXmzSCMV76ozUDdzjw3Qdimo: '100000000000' - DdzFFzCqrhsdpJZHrVp8pv13Lvz4TxNrhTPqyt1Hnpad2GzhRikEHaon3XRfLZpr6973nJn668ebtPUgL9FpSZEH8UiYzXnKmz44iaNA: '100000000000' - DdzFFzCqrhsen5WXkaCV1EPz8U8Gkhn9nP3K5iJbLJKFAzGgnfDydXuASTJzpm4CeHujWMKqh48P2Fg5CasgQuM9LezhPeQhpsr6y9GQ: '100000000000' - DdzFFzCqrhsqyT7BNaHpE58gLaBwjPgQe8TT7gyx2mj8f6YzD5ZEnu4LFTK91aiLUDzfUQzpU9t1AxV1MvVpftNvt6YWoFu9rLeMvQYF: '100000000000' - DdzFFzCqrht5w7Dv7kVW1ivoCvRKh3A4Ju8cccPGpNNX43FcSybrVXWyrNXYFSut7q7ogQaJXeJ7ycEm71oZ9T1Tv1zv78VXdPNCf6A2: '100000000000' - DdzFFzCqrht76Tkn6QzYeFSPRx55Qmoqz9yeCKV8RjLGueNdDaiQBPyAHhsZdaJLXiovZzyYx7MjMHaDF3iGnv2aA3He4debEgAGrK9C: '100000000000' - DdzFFzCqrht77LAUt13bNaQD3xrkUDWZTkdwHEyUzd1WJyoZpdJV7bME78s7xcVF9j7PNjBis2SbRDDSASrcKo4ZS1yix7shKKPmnVcZ: '100000000000' - DdzFFzCqrhsdu9QdfAi2BmXcmdV1DA4zHKsEtWdeti32jpKzQC9dUpGqy4A5WPWgoNSvwhmFceVj8BTVna1Fq3jmjS3NbyAqseACNhqm: '100000000000' - DdzFFzCqrht53PjyZUcneCYf9CGnHxnpc8fbsqjhVRNu8zx9onVDX5rS623SfAJ4enUZseRsFehCYXoTiMFnZrrXk9daNs87EMVPupzs: '100000000000' - DdzFFzCqrhsdwALkqZUNTYvqq1cM1HDP9iXzWfEwJktgnutkDDzhEKRYa5u6DLf2Qbgo8bSEhNjrjVAFRK5CrHH9tvxhSDoV3u3xG1P7: '100000000000' +- DdzFFzCqrht5TM5GznWhJ3GTpKawtJuA295F8igwXQXyt2ih1TL1XKnZqRBQBoLpyYVKfNKgCXPBUYruUneC83KjGK6QNAoBSqRJovbG: '100000000000' +- DdzFFzCqrhsj3hDxtjHA5Sbrf5Y5A2ExAgxeL1B7PEetoE8g7yBphmHYGDkKTBZtbVv7TjB8g7Q5rw1kvSjeJwxPXb82W8vw787uqMTz: '100000000000' +- DdzFFzCqrht5J1FMoP4G4RPyVcKEn9C9jKNM9VqecQ9HQK391JqypjZm3uGuLupVzEXQcJTRfUoRn3UfuKpeNEjzFXtWA4uPMtZ5fxbY: '100000000000' +- DdzFFzCqrht5R7SgpmD2TffGXEJ8CoP8HfvHFWt1DM7Rd9WQGyxungKWuCKy7PampAtbWiDvJoyR32V7jTev1KX4CfdEyHyfCbZj2mUF: '100000000000' +- DdzFFzCqrhsiaJWtv3KgSyE1APe9v1jWcxaSyEPsGtBbrqiddWU8cfVrXamwLuyypo3Guv1xB9ZTzoqs2GzWJ6u5j679SkQzoUHnEdH8: '100000000000' +- DdzFFzCqrhshSUSN6x57Gf4AeAWzkvA8Qpsz6xbXheGWhnsvsnQ6omxNwww6AtsMvF56NJ4KZ3DCeoYSU9G8pX2qbSMHWJGkTYy3K2oL: '100000000000' +- DdzFFzCqrhsgKk79Wo42Dm6BszTkiQiJaADLvwB3Bc94wyrTb5EYm4WdBkNPversvLuRELokqW5VQkLBvVdDTofd1DHPaw6LGCoaQK8S: '100000000000' +- DdzFFzCqrht3fc1oQvUoHXSLLGj3woXdUM8fgBBNAmSeQ7XxtxKwEcTAn1TdLY3S7Tu9gzLPEXVJChBRFDWvVUPWmijZnSbrddDdBB6j: '100000000000' +- DdzFFzCqrhtC9sDX18jdj4zBUdLpmuTiszN2ZofWwVv4SXHA97frgMjPFKG6JzVYbyk1AVks1rVN4L3jg6yJCB1rLmFGakVRxsR9EuxY: '100000000000' +- DdzFFzCqrht3jJoG2rsUSjNXyLSfSHPj72HgprsNWbjSEGx3Sn3R5qDkUZXEPwsfYTBpRgYCP7D4YuFqsG2F1cV4qDUb6PTwMtXUWd5g: '100000000000' +- DdzFFzCqrhsrpHvUPAeXYF9Fhza9tp8V7BqsouT16oXd5ZyeZSr1xf2wBrVgK2RRLLfyPqViawhF51eHUSp4ZunW17tptMYjsYegRKtX: '100000000000' +- DdzFFzCqrhsuhKwzvsPXrk4p2hVnwnpSsfx6Bz8YDdPkPNXRK3syiwnZ9nUi3yYuSyaVbxx3cnXcKZJePaAYDW7Gir6Bi4oXUbU3R8W6: '100000000000' +- DdzFFzCqrhtDAsADG8aFJ7czQaJhT4nZeVQ52ugZg44AJWqsESeX8YewxeMrNM65GfmFDH7ByBeFETUQSejyq9RkfGHEL21CDubd5SfS: '100000000000' +- DdzFFzCqrhsrRn9QpkXseeeBP7DphvLpwpfoY2o1dTPhsvnkfrPGo8P19BK2p8vB8R54ZkFtvTE2D7gJ3kQLo8vTbQhX8CbsdGeiidAb: '100000000000' +- DdzFFzCqrhsyZp5ktXWS8KzE73q189Aj7YUZXuxfCPZybrmwFWQZw5sSPQgRcZq1xBodta8u9HnAYa5UMkiDw2RpAkATUNtSTqm9c6en: '100000000000' +- DdzFFzCqrhsvYScvLTuKan1LGWeASqhR7tH3TJgniMQ8wHKtpCTBowAqSVJNwvKV7Fchd7g73iesAyQbNk3RRwmjStoF9RpTd7cvRkCJ: '100000000000' +- DdzFFzCqrhsgTJYs8RaBJDzyd9zG5WPZxCu6kgkSL7juEU2nNd9CiRbDuKFQmzigMAFtDe2uEuTbgpnTe81vmesDLh4XbCbEowH1MRjw: '100000000000' +- DdzFFzCqrhsuCfwXNUmgU5eyJSdvLCH6LvMomQ65JX7uAvkaZ9hNkJ6xc7t1u4qpwpkJkSHpcWPGYTb8hBLCu6YPvxRFycQjvdvJT5mp: '100000000000' +- DdzFFzCqrhsmtYhQLZxPFiZv6Uzgxx2eZZzPm187osgyZWKKjXsLbGdTUpqkKiFxBHMyG2hrNZhY9ZxdqGJgEmHidSSyjoCZ3aSfNnAm: '100000000000' +- DdzFFzCqrhshdpXiZtGiZsSYAvmxdGD1wZoc8HVYW8pfLd9sQHAobJZ9riRLU2yUh4Pi3jnnvVJfAgyDdyxWmN8WE7LCBBStKQfCfca3: '100000000000' +- DdzFFzCqrhsuUXs45RkH7SyC2zXugtRW6f6FwAH6Nj8NpppsyR1NFSfGRMQFegpPdvEEXwHJXnVVmWC4J7CGBfc1EjzLZDd7fwcuiBrU: '100000000000' +- DdzFFzCqrht1wQyixEJa24mnaSv4v5XSvK712p4Vav9ajdUSQuH1vdJefTJeLgRLmgS35HYtB6icd17Lyk3g7vrHEv6XHEQuaJZe4phJ: '100000000000' +- DdzFFzCqrht782JAJPNgXEUf9u42goY2WFH4Abtu4KUKM3dJ4GSnHH5RWMQ6Ff27cq467VFwa6rPvEqMBw8zGNArCSKbKcFjukKVkDmE: '100000000000' +- DdzFFzCqrhsmvpq9C2QDkKm8qGCPEKx5FapZ3b2j3z1LDCRJvGxyt7N5fs8asPZPFVwgSqBhfiYRZZ95qx8rnmCBQJWDRJgnoWQM63ja: '100000000000' +- DdzFFzCqrht2B4h3cgpT1rJZcqnhB9DdyGXxzGG2YeqiJdnjC4ENwf4Vz2GtwLSvVum3ykhVm9HfcbwFdVJZibQaWLhfi9tacVwjgnMu: '100000000000' +- DdzFFzCqrhszv9yR8BRkFfJ9x1V67S9g6fsDsvgg5Q9SHQjczBEmapSyxMF1WZxbAZGEHcDHkQPDxCnRD5GdTwkixMA58ENa6zHVT2xk: '100000000000' +- DdzFFzCqrhsx1Tg16KGnNgYL74YjUJkbKXJfDsJmvwR7yWRohAeXWfZBiEuW1XAsGPBPJ3eeeQ5Us8PwoiHuxMK8xtf269JcaNY9fCNL: '100000000000' +- DdzFFzCqrhtB9kXoB8hkqqDEVepjN7iLEbrZ4ev3Fzc2DtkwFDTx5yQUQ8HFWpa1SX6xa19zJoG638SwkXD2YRZ8BJmKzmPgezpPdG1Z: '100000000000' +- DdzFFzCqrhspENibdKwdhJY29iCxe1FbkaRYTCpvGUKD7RDimWTSpge1TTr5vUEKAq2fUomK89rJ9Jm2zAxhPtwkT1qH3QBQwuMa6vXg: '100000000000' +- DdzFFzCqrht3PXq2rbrSWPABrzcR2ii33duy2XrvNCHFnipHpUEFmA92dZQ19J2hyKmLPXx4zNwyfJbfxpeTek7HwPGNGbMqURLDXKAh: '100000000000' +- DdzFFzCqrhsuvjFmqGSon18Cre43TkBapMjhXMiF55zYVXDSvBNmgFfuV5Sd3NK3zQ8ADJWwotoCC7R27xk7F3mV3Fqpx6YLenjPfmTT: '100000000000' +- DdzFFzCqrhshH6MA2sFv95TwnruNgEc7EwMjJHaA6ey3mpXq3cNaF5gPVnwUfhyhHt8wDGN9BjJ1VnEYWSUnCKHwgkvDzzoRioB5eaVa: '100000000000' +- DdzFFzCqrhse7GJDZdrDFr8rwkYwKqQ3AnDFDtKWWh4PKc9bjMZ41mumvpSPY5fTogmsqzV389Xt5SdwzALMHsEKsAQ9majAboxF4PKz: '100000000000' +- DdzFFzCqrht1g1paWFHdY34u5AJvVy8ojNeRC9aSFRCDbMYZA57CH4UMQR9XxzmpH9bYJM65kuq3K7BPEkKAmLGG6szva2K3d4BVumo7: '100000000000' +- DdzFFzCqrhsnXxtUvNRmvUstDgjcePy5wkwgA5X42qxY5iVNc9Fc9rZ372yB6TJ3ye4zCbrBhMsjo671HweGFMPHv1bKNJ5ecH4xxfPi: '100000000000' +- DdzFFzCqrht7t6dt967aaCZU25KdhwQLWGnTXw9zbq7DCnEfsfhz8WjjTQFaZtiG45DUvDhn3wHVYXgFWcJMqycSoT9JvpdMUE2J84Pk: '100000000000' +- DdzFFzCqrht2XhxfHjuSFL9fRKtc6iLYVwMMeyqMPvxTLtKcNhNyXGrU2hM3TPs7AqWaNtDtVPr6pjjrNfJPNAwcyAFfPCRN1igBSGne: '100000000000' +- DdzFFzCqrht9UvbfWbC6jt5s4eNz1v38zADUSZnMQoccZFGevc44fAH3RcdrLtqbyaXNPLY9UoZWKu3oLnAPKYvPz7tV7ac9MPXHHdWw: '100000000000' +- DdzFFzCqrht9K9NJskUq7LUC3xrAgdAqUFhXxY4dCZh2BFNXgDU7qPBqisum3UMYLSkBWEQUs8VsFiUmmFBoVrZ894PxAmuQgwnUMQWK: '100000000000' +- DdzFFzCqrhspvhpBXZTCD3pKyXvSVntAQQTKYXDYb3KPb5bCKvfsXqsTKqVephRoPViAfPwdbDR1yq67BRvF3DabDGGSREkQ7QvqF2Ps: '100000000000' +- DdzFFzCqrhtBQwqcDSEtyMUAzvZPyGo7iasXiCJrS8GDwPXbphxVZf6Wc2kdNp17YLeMMj3rioijxNKxK32T3iTFohfhWZzfuAxoFeNy: '100000000000' +- DdzFFzCqrht3W4KpoP8CUEiiXrdDjVXMoSWmuDrErMcbQRTeYWkPPkzuBf7mGNy8sHS7QD4bhxGnY6DagY2rd7PoN44yyCfB8ELp6cP5: '100000000000' +- DdzFFzCqrhsoX6VN5s61mmoX9UoQmpmmrLx2vpvF6oVby33urnyTipUpWUvq4kcKPE7YsPjWpxKUdwkSexqDCaHE4TFbXAMPPmysbZAt: '100000000000' +- DdzFFzCqrht2LtZmni99CDoNL5NZd51DL4KzukJgzCkJv4uGSMqZsn98h8C8EFg8CN6P9esADw1HmYkcwhUQ8iQGLR6Yp8vK8u3PQpvS: '100000000000' +- DdzFFzCqrhsmXKnXnNqMjXTvQ7ppteSc3Qg6YxhhZjx3QzXpmF3PcrLyfSzp8augogfNKaX6dzqApAcp3CFy1B4WkHTfetDg27KDs1NS: '100000000000' +- DdzFFzCqrhssT43cdYzXE2A9qSo9GviGqS16LveBG7k49ph3f2mfUbpfoTP7PMy5EbuLiPbXHWmF98DBQEL6JqCoGEYjXcZpKnvJFs8N: '100000000000' +- DdzFFzCqrhsiNy9NZEoFSYrttjT1acFxZQjSayt3rppQfNFzCrEE8NQYDa5ktMZTq3MDhTtjAXL7Ua1rWYJSFzChUmcUWAGHv2tUSW4y: '100000000000' +- DdzFFzCqrhsmb7utbmSRfK5hL5i9Fq7mPmcpoSSEDqKZqSewSMYtqJvafpef1x4zxAjrSWU8zcv29g6tUPgH7BZAzpzcp8NAw1ip5v62: '100000000000' +- DdzFFzCqrhtAG9sL7jX2QfKvgHsLwV7G5mWa2mLJsbmaC5QrHzkatn2SABHKNMfcoPERQqUwWHGmrhJTEDxLQVvTJFFTptTKeUoLVSZC: '100000000000' +- DdzFFzCqrhtB7BvDH31vkTyMaAdiP1fUFA8KGAG6FkTQQETgxrVWgixRzsyHaJ1Wg5FFPULXRa1JQo7LbeafGwguWe6QkAqResgBPbf4: '100000000000' +- DdzFFzCqrht4QogR1CAGxFTib5LunkacDu9yPncCXFg9YG56sv8dUtcpTFkn7PgDCGsdWSCyvXzwwLfa7zU1AWp6fNuPhHsRZGqyAqXc: '100000000000' +- DdzFFzCqrhtBhnkPNQbCBnZzUMGQTZ4U5KiHmdf7vfYro2DEVvoHA39GLaCAtmEwhmS4BJ6L9FBiDY3WGB9u3qzMctBvwTrmgtXK9KWZ: '100000000000' +- DdzFFzCqrht2qoGkJbAvSoWmftXfW4AKicxQJbz9gBBgBfaoUEW7aaFSHgk5MAEPiEfdantMNmB3YhggrdGSNQajVQixr8gZn2NFkYXB: '100000000000' +- DdzFFzCqrhsjNsnvXCxjqED2NQoN67qHPKXuX1Q8uw1z421ph1kqbwFitByMU9MxpzuBHhU9EqCKJSa6ZTpxn9sxWcixcCEgJKiWtwcb: '100000000000' +- DdzFFzCqrht7eewmhd5drGkiQPZ8RPTebW2diqNas8zNLZFw5xRamwFwftbSjFz8zCsPoZJzWckqDfC7giYu5Z8sik1DeT4Ld84LToM7: '100000000000' +- DdzFFzCqrhtD7EDyMHr8BTSoJtrx9LbJA9aYX8CFhqoSMKY8PZjGZnMJVY2EaWgW36cvcvejWi9t7f6r8c6w2BjesHHYfXAWBd7PRHu1: '100000000000' +- DdzFFzCqrhsfxq5TbeLihjwYQhAKHahtRdBKZNgEUeJ7xe68RTU2U7d2NmtCpeNG9UgMaR5zjsuAbpAgUSbb3VTJMTwkLxoq2v9fzrb9: '100000000000' +- DdzFFzCqrhtAV5NrHQps6M5sRnfDXgQnPxqbxiXVaSrAjXg7rHLjC1JfTpFcMM67rvzjrfHHWjBuSMVnA5ZVx79zqJ4gcDyZirfe7V8X: '100000000000' +- DdzFFzCqrhsioiAtUjCJs4aRcmAn31ghqmsLxqrrk4eu8ZxM9zqVG1wGTab7npn7zfhpgB3MzjF4Xdhr3iTRRxQGN18LhpkxvyZwA5NH: '100000000000' +- DdzFFzCqrht84M49omXJT2wUystJu1Y7AVJvhgBYLRTZndNNvp8kxBkBSmszji78FzAcHfWmHayZpKPzH96QctEfjNQj6KmEgAWNCwWD: '100000000000' +- DdzFFzCqrht57eZDhmXBWEQpZCxVEegTgmbDNGn2ETJEjwtQJD3HappzpBEDVJEWz7Np8CeGGm1MPaHBrN1f2ET4vBm3BmxytCATtow6: '100000000000' +- DdzFFzCqrht4KjpLrJohdK2qqf3ABPLzF6AwWqPA5jfQAVSPfokxM9rzm6nr9tdd6WSacyaUBDDUpnUyYN5dvVJi8dLXUozZa1xC4vLp: '100000000000' +- DdzFFzCqrhskqh2LiGzRYFBVPhBwqzqedC3KCMNZegxXB2EzWKhdfryCZeKjrMGx5a51YEjKgcHtuXw2hBT4SZUsKqoYykvdZN9xfr9J: '100000000000' +- DdzFFzCqrht7LeAGngeyj9hpG5ZRjdDhU3NzCtEsEpQmmKmAMq1NH18uN5zfZaVccPyRBZqmsRi13eH5Pk1aKkhiwHwH6m1kq248Ddjj: '100000000000' +- DdzFFzCqrht36BqnLDbxFKHXHpR8zree4a5qw7hR9oT3gzygGsrMxShQ41JevQiTgobv8YaNVCiQhXr9c2rycfYHnV6w3pARbXJ8JTci: '100000000000' +- DdzFFzCqrhspgHBe9eUmcDt4o9WCsFM6GunqnWjMfNScEQasrmikoCe7N15KREgb8zfVc72S65oNHwgMgmibN9S4KVaNCakFWBLJpUDp: '100000000000' +- DdzFFzCqrhssHyhhWC4XpRrbz4v834gYSvZbNsPMSFdZKRzgp8zYWue4jxPeX4eevMt48jSidw5Yr7hCfruZHFMKvLJcAiP34dvqnNgJ: '100000000000' +- DdzFFzCqrht7cRsCug1zdvgQXNA8Xd3u8RtQTUQNpXWT5hZvBaT5eQeA5y33BT9oKifrFiDACmqjZY5EzMG2ru5XXRH9fmjLp7MFsFby: '100000000000' +- DdzFFzCqrhskfjCZMpoK1pmHja9bPc4bpnhCPrxyQHAebwmunyy5heefMNFSQwXDRgFsxh19zJViYtSfWiWCRURbcLFF1MXWMQsPuUGr: '100000000000' +- DdzFFzCqrhse3jqmUbLtaCGk6smPESyVz9DvTEs5aQjvPraHWbNaBRUXe2AMCwqHGb6dixbCgVeTGZsQWhfDz8sN34D4PrzXyTXofHDx: '100000000000' +- DdzFFzCqrhssUnqD4WScMCzs6i2DFs9xoVDDtdkiswVR91MfFvzP4XE6HKGidaPvx5YFdXddQ2qfEko2gpL2enrXSJvrHx15f6ek4nQx: '100000000000' +- DdzFFzCqrhsrFW7cw8d4iwUABgVdzCUjDfRa7d59bMJ8ySKoGnit3MZSmjobCdb3MDDmhwUBmLcrgc9DYHNd9A6Vugh74XZU275SXiyt: '100000000000' +- DdzFFzCqrhsrgynva2wmP9ZMtR9VVCDVMC4nmUgz3YfdrM6csPKU5VLzW366NN971QAiSeMnKR1XjWPQ79BMzBh2mTKBRm4hP2vNcmhT: '100000000000' +- DdzFFzCqrhsgAiK5F2axtBqRcsujv7vdr2R184ojg4UWe3W7FXYnWmqsCHwJWpY3P993CTVPwoh9p15215pQhXRP7xRtY39kcCvaCJrA: '100000000000' +- DdzFFzCqrhtBSxx2SGmR4UoJ1RUKiEzcyetmU9KXn95eB7aE2BE1WY9YsfkjvQXx1wAbCWUrk7bMbcPH5Cxm7EnfRoTSHuDzqu4DcQSv: '100000000000' +- DdzFFzCqrhsnMtZDbJ5e5Nk8QgU87Kny15LtDMxcbRA5gwksCVmS3G7jb81rk9sRhrpeHDpNmvBpPB2dwg8aqTwDZba5RkLZroLRXjY9: '100000000000' +- DdzFFzCqrhsuyAfgk1e1KwCqC9WYPdoGXbHQRkZiHXgxwiESVShHQ5j6FhV4G3EmW2bRZFY3EmNdzye93aRkXVw7P2GzBxYkSt8Ninat: '100000000000' +- DdzFFzCqrht2JE47Cpy7TWnnFDeGypCxJ8myjG4HCZRr88ZAsLL3sJuVa1yBpZBRkRuaEqhUB9T82qvgD5jGzWCqk1SjWVRHrpVcXra9: '100000000000' +- DdzFFzCqrhsmDbBNsGTm83q69zu3RPYkuREcT2XXv8vEiyJgZhmNf777AJ5oxjCLKXf5kANFKEtiyboEdCiiNG2uDDU3WCkU6CNRKNVk: '100000000000' +- DdzFFzCqrhss7raQK4JXu4abQnULTsoP7JiEVDZcnZ72bzhFYcoAY23j3fwt17mPMnFcn9PhoGVEnZZV3GnkTrDoZ1gJmnKRPuZVoAL9: '100000000000' +- DdzFFzCqrhsyF4quuYiAXmp1vfiFhhbcxXniypiSiE7tnBraPczHxcfBP5B4yBCyeaYJKwG2N7U5ujjoTrvvJCfXJaHLbfWg1nnm5ajb: '100000000000' +- DdzFFzCqrhsyiAAwKP1fAhs5wihZ6dSEPf1oE2YG91C5vDWS3zwnXA8GUVHeoa2Vr7Y1ibHneWA5TxR7bQvZT5MSM4RMYVbBNbkBduWx: '100000000000' +- DdzFFzCqrhsj39Ged8WpW8WTTfXn9GPdQmS9CjL4ooCmB1dgBQABFjiX3tm7oZ6qT8UWyjenG1M3j9DFqPTgXkWTBsyfiqL83hMXJuDu: '100000000000' +- DdzFFzCqrhswiRMQc9sB3uW4CFNgMKc2PovFhMJm7F1A3gmTfWJgf16deq97qsF6f2gGiGjyaWdGAwnVztma4m5XzeoMUJnj7sk7vbj5: '100000000000' +- DdzFFzCqrht58AUUmjsBjCXk7XYkT2cAX4K6AyfZPZkD2rRAKaqFEFy9QaYhQ2CDYaHZ8DAtbKXGFFnqzS8khah7CWcWZHyrDo8eYiQS: '100000000000' +- DdzFFzCqrhsrK1QzPNAeMgGrCE3zUFs4GmDHhHHRev8cackbf3mbuiGTpX6C1r2fpzWjtwaBDMhcUcYPiBF2w6A3dw7br4HuSxLho42L: '100000000000' +- DdzFFzCqrhsjDZirn7o8PeZrrwkcMcB4hmTHCg9t48rwZLQMvwn5hsX19yqvnVzGbfMjZ1UN4tHGbLeoXSnioTv3CYbvnE3Sn61TGuQA: '100000000000' +- DdzFFzCqrht4rqa7rBzrbXRmUDvEghRBC8XqxLtvsDaz4uVrQ3zs9gtgiw2Qg6qWk6ijanwM3pnPk46jEJJAktHDhQrgNk3iTh9BkzPL: '100000000000' +- DdzFFzCqrhsybR9KyLbQjDymLz3iUZMHjyniAgiPLSJwmnRcA6JVyH34fAZZkvX6fNVQkxiZoU2i4FfN96NucWqL8bMCnQDHncSJd6oN: '100000000000' +- DdzFFzCqrhsjpQsHgvWQTaVZx7EgQ1VgngEXcoPCm8AAyoitQR2GRuue2JUoSvbaoEPpsoUSQqA3NR9gVMKYjNivG9XimFPgeDMy71yo: '100000000000' +- DdzFFzCqrhsyiTnBicudK3xgsfurYhZaGbUu44bPyY3pLqDJdqf6pBePqtVhkkYnATNq49VQP1v1RgcFTfXjC2XZV1X4YYFdNBfeeNDf: '100000000000' +- DdzFFzCqrhtAnCLaX6TVTUKyBEhchKz7CsqApuZX2AXsWV5DuAm9MPcH9mmgFCBSJawVTXvQrLp1g2kLdmWLNHLt989LdZ47bfAfcDdV: '100000000000' +- DdzFFzCqrhsiAEyhnR6iqQfYoT8mDFJZPrp8HGmSmExU2VrdYzrdSHumSgrEB6enotFApCKYwLNojgWFgPeSizLdKxQAwAbNicAdEpMi: '100000000000' +- DdzFFzCqrhtC1ABHDxF8wjtP2tqEQXM6kNYEfteNMZ9hHpzejZtWGaFibGXjfJ2RkqQSqd92n2qCggNHkFAcgrCKD8yezPZ4VJYwxzVZ: '100000000000' +- DdzFFzCqrhtAfgScY4gYasbf2XCqFygcDThwphvj8cp7UfYxuJv3BaGGk37i6yNkZEGTAHTWbyruQEBSNGKWrYCmxvY3LUEWprNhyrrK: '100000000000' +- DdzFFzCqrht457hNzoa6trXPNq3GYP9v8nzdBedReoMxYZ2zxWjRTtfUbcviPsYtiQ7sNou8p7jvLzQZT3v7D9PSjd5ypa2c26cmC7CE: '100000000000' +- DdzFFzCqrhshQDFiDeweJFq9L7hbtFMedMtjTcstJTpNUprfGfMyXorEaSdFgsAC16AmWGQ3ZkoMNrJtniGWSQMfBMrrejjzPg4B4Jxd: '100000000000' +- DdzFFzCqrhspbiLg2qHfmJvJFjQTiXgbwdzYFHE9zWuXWkaBCK1ox8kG3oUSaRT7ZZXo2nmt9uA2Q7u6PtBUQzwNoZrswajApr7wMCMX: '100000000000' +- DdzFFzCqrht7PwCwS3E688NQuud8oLNYLP9nYXqqipvXnm1xc5HtddL64fLtfuVeUiRUZDx3JftfvCQi44WC8h8L4uaEHfcTf74hM9WC: '100000000000' +- DdzFFzCqrhsmen6yqDxHMrDwPppTdkwy2KY2VwxvXqFLXWaii9s57YTqFh7xeUN685e4DL2YxjmoSrQGramxgaA4EwKLYBhG4LErDCN5: '100000000000' +- DdzFFzCqrhsvdXAz1SJakLthTSFRZUFtN8kLRMuf9jwRKgH91DLnmKnGWWar8xJhsSLS1fnV46WfQR51nJ8TUT9vAsWzhQJXRM7H1hwS: '100000000000' +- DdzFFzCqrht2DtsCFb3XBfpMjbwVRsFgWpYw8G6PQ58yZ4P5FeczYCJJgXgnPgE1oovbngLXcq5kEK7EzzNvBf6fe1HhpmPyC1sdHQkL: '100000000000' +- DdzFFzCqrhsv3BrjfGXmu6skF8PKRpWL9zjHqD6bhFPHbFF68vG8GzofiwNBnhwaYNX3eQch253KFPXm3xhuNNvU1U337HPdQjhbCC54: '100000000000' +- DdzFFzCqrhsqb6h9YtTRB5p7dJNEhCHt6GnCjvdr51LoMc836NgPepYHu8vXAuLNrbxmMW3rz4LxzG57pB9CbiuFqbztt1ZMVH5p7KD3: '100000000000' +- DdzFFzCqrht7WSNSBcjzaZKWnwpGLQZRWrHCPx9cAtR5FPrWesYRowz2UZSjpr7gC9BfT2A42JmnmNDVv9VrLvJZbThfVxrW4i4vbLzB: '100000000000' +- DdzFFzCqrhsf6JHsDi2eaixZbvARSNms43kSYwP8segyCE7vPmxCF616aLx9zSB1rD75SpsKo1AsBnz7SoGnLU9viravqZMGwpTQHq3d: '100000000000' +- DdzFFzCqrht8HsQRv3b79px7C68r2gewt7Ej2LeV1rB4nzhYwhDdrgxGvzXeoJiPkgYRCj4nCcKU3MheLfMvR7aL6oxc9VmViyJMMNpz: '100000000000' +- DdzFFzCqrhst1pvkm5Fyvo926mcLxEhd8VRBaetNZCYyiEZnLmV8euYvEYQxvYgzoW4b2ceZqb9zWXYeDcMwaSuj69Pd6LGeuorFVT4B: '100000000000' +- DdzFFzCqrhsriKxiH15F7CZTvwFDmBwTQMxdbZaomXhE75Zcg4TH14BqxUh8ztnEDEeLx5AAeZHNt1aDp5UeL9112PCXRp1RJGiiWY12: '100000000000' +- DdzFFzCqrhsy74X8fHcNx9C5owuY1FFA2a4Rf9KCwZPiSiKgNWpK4Nm3sXoN8kQF9nKFoLQcom3YJoFeda6D8woAJKFrkDPcnYpSBrsy: '100000000000' +- DdzFFzCqrhsoMYShvsYzCTW2DpA6vdQ4HZaDa32hp4ZA8wLLgdxzn3hjTFufb4XA9rGaq9XdmHTSHweL8mCUjgyVZgSu9MGS1xPgpyZi: '100000000000' +- DdzFFzCqrhsmV7MBQZxxFUoDE3W76ni53TzC4tdhmGsZRMzK33JmBbZrxp5u54PEYk5ikPHhfEDMH4ragbdVCUufeiU2v8N57GQseWXq: '100000000000' +- DdzFFzCqrht5hU1bKC1krwBPwRfbdCdKtHqorVjUtXenrnngZTabPLNMLsgixvMho1hcwJF3YNVj8Y2wuGKApmpXgbmdm7iSzoT8vgdr: '100000000000' +- DdzFFzCqrht8mYdcrigMUgwZgCZzwisotuAK5CU4LgY9uaCawGFU3wKaqsXCLo3m17GZLgeCF5ypDMNHJAbPZKoZxH8kEo7rBUTeMTZk: '100000000000' +- DdzFFzCqrht1173DMt1FrRyzFSzSetP6GpyH8Qf1dFPmzEf9uU8dWpmk8P2q1Fxfge3UCBpYQbuZbw4PV3q5kaPZMquuL3g1msPZnJby: '100000000000' +- DdzFFzCqrhswjgRpUTisLAKNdGwebL1ghfRR4qD1RkWYE2n7AgHAQbjz3ARu3FoUBWaM7fcA6xn1g1PuZZwZgK4XysndxSnvuf5WYLzw: '100000000000' +- DdzFFzCqrhseRdRAWJKDWHgSHya5oXpvzNgjChT7JvvFBUtTbqVkZ7NS3GRJMB1Tts57EErJNgv89jxy5iJX3xQcr5z5NcHo43arp1MT: '100000000000' +- DdzFFzCqrhsxRLLh2j7DpWu2EycxeWsUKgC8UJNkB81caHN3FWn2Fh7eN7K7VVjCagEWcCqAzn7LGJPqXzHzbMk4Pa2VxYwy2KLYDQgM: '100000000000' +- DdzFFzCqrhsvSrFJ3Ue2aVzfkSaMF7zy1VXYrNvF8PguZhzhFwbQoyL6nqurv3rMpvD3CxSS6wU9qhpnMqgysk9Cb5pTuhgL3r8C6yRL: '100000000000' +- DdzFFzCqrhsgRiVjpHSfcD9q5qLvJssnwmJ6WVQQwHfRRrxiuwpUkGVDmAP6XXfgaYVGqAyANZmUJa6aTV7m6hBYApBCHhzEWqJhmeki: '100000000000' +- DdzFFzCqrhsrJdmtGJacDT3FniJ1LXtnxgdKEXm65mDhub2DDWxDXZCZNZ38SHJEAvRLrMZ46ES6tXBwfCKswTYq9BnJxXAKiGPP8gGE: '100000000000' +- DdzFFzCqrhtAkyz34omL7tXaWvrHPBqR34cS9hVujo62Uyj7eubAePLDRTsfrAmEVBxHq8GV6ADybhCC8idDRyhCvxuW7uZBSFapfAKo: '100000000000' +- DdzFFzCqrht5ZoCC7ZLVEK1KDvfVkTvkRkGQaCBmBMsP7z3Mnm1w3an3hVAteXpNJPjujEn5ZfWh6Ei1G8v2Ak3X2LohiA1nyGxbRiKn: '100000000000' +- DdzFFzCqrhsidUFoGAPCnjxK2cgn7UdWjGFRLbFjjdWnzPGKvskC23NF7VvWpuw9nB2U5XgMEtmDkZxsLmC475zSXcRAAFQQRjQWAH89: '100000000000' +- DdzFFzCqrhtATtiyKvxKUdJDiCwN8M7Xx1AgLUV1eJcCGEJgaTQn6mxWfqz6FhDF3uA61KBK37Eg7Vi3xXrTNk399zD5GdJsmyEmYJVq: '100000000000' +- DdzFFzCqrhsk7YpKzvC1M2PUdhSXFCezLXAZEP2THzjMQ9hmf3XxsFrv2dn56sAygQ1n7tKjKRzsSF74Lo6LfXzr1Lo1ahDUst2CtgJw: '100000000000' +- DdzFFzCqrhsiCgr7CZiyWH6W6tyjtvtgioRozyXxbZiJRWeoFbDjnYoWJHewAzG5KzShpziKPB4HwkePga4vC3U9UfRmJnt7Qe6MwBcR: '100000000000' +- DdzFFzCqrhsgdPsjZ5m4caLfiVYnkr8YWtkYMwRVhUZ4eP2Jf5AfxyMUKN9hfi9pYQN3T1kUKJ6DWYQWGn8a2GhtH7WjJrD3d1ZLwRDA: '100000000000' +- DdzFFzCqrhsxaar8kBmcyRyFX52rEh62UCDT5K7ygP9Zd86E2DVj5oPzyt9sYwdWanRVJpo9z9JuebxBqBoLoSiB1fSPW7R4gvBxsdpF: '100000000000' +- DdzFFzCqrhswDdTbDRGPoLV543U3f6uQ3HPSaCb2cEhJtTXxnTTz6Dkr8YmdmxB9zLem2gm3nLnP9dmhoiLzABBTr9JYd2xuQmzzm7Fw: '100000000000' +- DdzFFzCqrhsonkkxuu5cjVich3NJ9paVDNssBxCgWgCSV8eK7ZQkaJE7fnbMkBvgsxFDVo6L64FAVpWKoaVT5cjMQm6de5wDD4Z8cNVy: '100000000000' +- DdzFFzCqrhsjTdHd7rTBC43Fic5kYmcT78SrgQ6Cn51c6vpf8t1c5S7LcnLJnjRVeVVEz4ykMhKPcmGhKmzA6uZkUP4aTkJtCfTJ5LoD: '100000000000' +- DdzFFzCqrhsunDv3V1z11dvdjGLb46Bkfbpqc9tqxJCxDraPeFNi6Kz3KckrQqfJ2TmWifdu67X6Ai9hzkALpEbn3v9q2BasmmRnaGri: '100000000000' +- DdzFFzCqrhsforRn635ApD9XFg24kRkhgLakJn69cvZGeg3Hr36BHKD8pJB1hqpfa6uKQnnEJ3TiGnNm9bvAtXsYEHcwcty44dqm7Jen: '100000000000' +- DdzFFzCqrht91SEEmwLJpadLebAKdnxJ2rwSWcJnDP3qSn5jEXHNd2xzfzNsfvoT6AK5CENUHV5Cusi5fsM7RBYqKmWLy6ShDXoifCAU: '100000000000' +- DdzFFzCqrhsmT5CSkBW5WCjk1taagdZ1mxmqBhbugNymrQWEwVRCS3rsyH6i8wmEzAWSxGCGMDVEAQbgDB2NLf89EVrkoRRMc6m8xvDv: '100000000000' +- DdzFFzCqrht2u4XjNkia2UodGYJrGfEGVcWPG3maWE18CtJ7ZoSYFdz8sJg8kb5tGzJKagr9DzWrq5MTru9MeRPxvVSuePU3XdFsc18c: '100000000000' +- DdzFFzCqrhsgUJnGmaj7M43tYXhL6K69MrzwWdvJaPQeCjcM2GXgJgsZ7qqD9KERPPzzq1ifD2idguomjXaBmFRZbv7FBE1KyDuUc4s6: '100000000000' +- DdzFFzCqrhszegz1idFqU1qhtnVoByyaynPMJ8LiBY2bfbt1t2prS9P6T8Dg9QBgAGDfyFDAtCcbjSEt7rjtUjkkFN9fFBsXQZM4mgC2: '100000000000' +- DdzFFzCqrht6hfSPjqHQR5MT3EfUshXNPNXHrUvZtiWSDWT5ypCXweSxYrFqkuCpLqHAUEuyhe4FyJ7TRx1nPwUtMAZwb42Z8chjjoF3: '100000000000' +- DdzFFzCqrht6GHvq82ALWW2Qtjgz4VJdVtQUEzkQvTh1eQ5JZdrkejuzjWPqCM9hkPHv4v9bhZfqfszHNX3XUkes9H1fypootkBSVCrN: '100000000000' +- DdzFFzCqrhsfNtk6jYMKvxx5RQFtmuAygL1ZAKkhxBysZxD3RhrHJeupZNzo1KaWQoKjTf2Cd4ueHrmur6XHCAs9w9x7BH18ccDxtQxs: '100000000000' +- DdzFFzCqrhtBRPp4B9CdceqEFeL4uoCxhyWTyyUqfZ2U51hvo4MHWe28Zk3VwintLh1tvXk6hP4jc98qcKDxJVk4AZn3fjN5uhELYn6Z: '100000000000' +- DdzFFzCqrhsqAM93CqysJRayLqex8TvZVS1LtTwShCUEWN33raksC5n4Jz2xujaPz3MjHqDbpGfcCC3ATSVAfM6BWo8ak8r7WNbMauMG: '100000000000' +- DdzFFzCqrhtBMojc5VESzeJ8tYVNktLXTxoxrS8yuGgY336o3QQGvEJbMcKsbJfggUSMdvz9ZbnbRGoEicn3QcrsjdfyTf2xa4rff1p8: '100000000000' +- DdzFFzCqrht3Tu5czKRrWA6arGmTwk9ngNjBps8Gw3khHUkTPAtDpte4BYMxE4NrMndNPEAg1x7rMZCBQtKoLgBS13LtRqnozyA71MFQ: '100000000000' +- DdzFFzCqrhswM3h6D6cuY4Smwir2SW6qPiGQP5hFS63qCSQLYkDqSFtkd9YXEZBAN6LhHU699XrX9KhDyhsSCZ1B7YaSseuUEkEoDd3j: '100000000000' +- DdzFFzCqrhsqdy2UgVgpZcbEhdU6bkjY8pb8McWsgUq3MyXoXXfwzKrRC7Ha9UoVUyx1tpSfXLoWhsgdmhAt8rmQJcbR9L6xNUiQxbHV: '100000000000' +- DdzFFzCqrhsuGxWEdM3r8aS5tx1pzF8TFW8krVxGVJtSvUKAc6JGWye8RwGQQ49jmhMLdLdazrzqxsXGSVUeCVLpw28DPTE8bcUqZNkj: '100000000000' +- DdzFFzCqrht8bzmHHCZmA6yn1U6utfX6qPuZm4t9wuFWR4mpA8XtBjQw3LSgScWUwXasscTetedRF2CrguEnM15yfBT1FaFS16wZGok9: '100000000000' +- DdzFFzCqrhsv9NPjstKN2ucUp9zpN9S1qCRfS8geWXVY6DNSruj95UpohYxV66MnHw2un3QgL5gBaUQPHrRpFUtWkXpuU5iy3PPCnMmV: '100000000000' +- DdzFFzCqrhsgHWks4Zmu8YfjnUgTY92bL4KJKopf8CuPuHeqZG8R7hm1PLZT2eJdoSCVkdAJYGvMxjM2Nz1wDV581u7hh6RnhJdpCxmm: '100000000000' +- DdzFFzCqrhskpEHqhFfYYcQv4An5bVBZmEEWHUM1s6SbocstXfSUqqhPmPmbQUUamvssKuLrWip76zoAohmRcxG5Y5yeixGPPULFa7Aq: '100000000000' +- DdzFFzCqrhsm9bB8qYkfKTmLweiv7saHCtTgvmjk1wbapktgnUwCiEntRgaZpcEiBNHttMRURnTK8cURzjfnpwcJuKc2QteDHRtHrc45: '100000000000' +- DdzFFzCqrhsgu18fzX1oKxEPutnGsSQAh6wf7A974T9mgsaLrCvKmqnUp3y73kw7pVuJfYJWtB8XQnTQKGJrNNuwjuJmtJ2UFqoAQpn9: '100000000000' +- DdzFFzCqrhshz5SZ8FJWckBeUQywicwbUJMrmRSE8TwoCLscPTxzgSrrrmrgKdWXf2xdQeoAfAfNyJLQ9Sh7XSZfwww96eWhGzFmZrC6: '100000000000' +- DdzFFzCqrht2ncLwKpXDRbRXr7wgvURkFmqCujbTozRzukDC69H8ue8ZxKKfftYawN82LUZ1dB68Sv7sLjouJUQyfSznToc69g47Fyac: '100000000000' +- DdzFFzCqrhsjsZjAVx9u75DMW9h7daAWhL7V6e4YtaQEz7f7XMAge14rt2m4rbDA9DpMp5YmzAhy7bjsMRb8s9obEUwyTT2EWTni9k19: '100000000000' +- DdzFFzCqrhsoWc2K4SiFsM3BgbfS8fru4t6NzXR2FGbeoU9MhdQWXdmKn5SCEGCfGLfGehoqsx9fDJSZia55hBopYoRoJ1SdUjN213cb: '100000000000' +- DdzFFzCqrht9FRFEqbyENDVSvKhbzwxGEW9hGP9MfdYvx56PWKpWPPevNSL1asq7c6dJCMjzRrzgAipaLcUE5vixV718zuwKoH5BkJaz: '100000000000' +- DdzFFzCqrht6Y9KnEi9jh35Fm7GjWqWrW5Cc2Wgt4rSJM2gBC5hmE8tPbCm5ywjfQ8aEHP25VDmCFcTHfMk1G9w8GCZMHQBSGGVUwWw3: '100000000000' +- DdzFFzCqrhsnKVE9AAHaoQbPYjXCiEbyMz6uzHCAMx7hK1K2tzfroQGp5dS2C68Gy28vMLvcVu6F664Qw9iChsVoFWL7hqeMp83U5TCP: '100000000000' +- DdzFFzCqrhsjPeuAtJF87FUXQBUKssugSf5rsYEUoXTNcJ93msNs9riEyAmzu7YVgQdxwmjmqfhbNTQZ469SfWc2V8Ert3KCcSYTjVD6: '100000000000' +- DdzFFzCqrhsm5bgZv4SFZ5vC2JELPadbMWSdj6BP13LH4Z7R6uMHVv2Q3Wvxbf6kdJUCk5S5ecmM1A6xLwKvuDjTAUjX3VD4ViEnYan4: '100000000000' +- DdzFFzCqrhsnAzD36uvr7rHLhU8GaRuNkNhX1MpKtFBmHYkTvUqGrjjab9s2EviesFvat7HL5tx36XovBkgFBrobRh2fGCMH1CZ9EWmF: '100000000000' +- DdzFFzCqrhsz3nJePTVEyEt62Aopr4npWnwSTxruNwsFsVjAHHWeijiZkW2G5wACy3DTdsBGxb8WzahS3c164Qep2Cm5HfzGrZthamLx: '100000000000' +- DdzFFzCqrhshhEsU9gYh8uUf9nxYDNSJYojJ9gaDHTtAYwr5nswEdpDDyZ2kkGvndVXxdENYNbUyyW9pzCrvrf9gSrbUWdnuE7XE4AcG: '100000000000' +- DdzFFzCqrhsmaGrdAfo9qovx4Fv4fnF7JMFyT1kWavyPVsLTCjRcCXvCxoKYeTqP4rTsXyVNUD6UqZQEDNxGNV86ZbjiJPB5rNP2rtoa: '100000000000' +- DdzFFzCqrht2e8WbaAcCM3GKzZBD82rh3cxyRs6eUyhW2GgpNdK3keuk1QeVhADoQs7GG6w7jgiVycKsWQ42NyRqQogtCdBhgurTuoXf: '100000000000' +- DdzFFzCqrhszNkS3hGcKJH8VQ7FuLU6Yeuxd3DZ7nF8xT91YioDf4kzxvEYUfCA3hxQqkD4GZY8rA4sY4BHW5GhtQn58tMsd82B78DdL: '100000000000' +- DdzFFzCqrht1EW838ajWUqZjmvz3xo96xPF1WonDDrTGbq1RuHjYgAuEmYsJS6QUe5Kys76u6S6xwmgG8rerQKh8AW1gfoEHEKQA2YEQ: '100000000000' +- DdzFFzCqrht3f5dsciyPRVyKy2woNhXdtp4MegSw8wYNw6cpQZQDt9a4Xn4RL6dBiovb6nSEGFMDLnAc4UoC48oBZEQyBJcHekLc7si5: '100000000000' +- DdzFFzCqrhsoSkMuK7u2ToM2rGWgseVpGvpL9VGwPqHyAqSfg8LLy9tsLfZQHp2cJjPTSoyWJh4bMSCAq7dx9oEKXH1pZMi5YAAb3JgP: '100000000000' +- DdzFFzCqrhsughEFvccCa7mRD9RQZoL88h3RTc4WZ7SoNfUbiEofBgJB8yRGoTKgP62BSpew9JZfLtSsfXSqKzfLkLGqVaqrHNQWpCMQ: '100000000000' +- DdzFFzCqrhsxN3xy6B6b66zHZVsrJQDFdYo6Lw8WTAqS8bNJ2msLU5oqUmcviinqxoNGBfSX6rrq1ba9KANPZ62Jzd7jPnrxUASkbSEX: '100000000000' +- DdzFFzCqrhsiXmakPg2y18FAbQFKHeHtZX8VZNd4XkEx5WUm4hy8pAhSgfb5ut8cDV1sE2Q9aVBFrRk3D7iojXkWucCR5qA4F5Xp9HtR: '100000000000' +- DdzFFzCqrhsyzSxVuScVv2zdymnpAfKRuUEJ4aMvWfkPBBwFGUpUy8pGcEAPoZT6rCpUxcXJjpUFMZJxfGhTLVi7DxhBQn9WciHyUemc: '100000000000' +- DdzFFzCqrhsx7ybPGKPrGo6HEvvJEwh8MaEbqmhKzq3kmWdN1eRRfsF5r6x2N1xVP5EucvLgMCULCWJ5UxsYNeEnVACu9U23J1uXi5rD: '100000000000' +- DdzFFzCqrhsuCzSZjeuoACKcbeqFdCn8wnsLfWahoTsxEiQjvtnurMKHeA5Uovdovy2eyzL1dG41La2AYew3Sz7qGsydFbbYRidmHzKc: '100000000000' +- DdzFFzCqrhshZhZXSqdg9LJ6L5ucgfosECYZswKNZTwFZi8xQWiCmrXnUrpkZxioyNUd3cy98B8tLXHWaSkJXWBb8PvAGhLUAkMPfLsR: '100000000000' +- DdzFFzCqrhsu65W1ihdfX2QRRZTnSzYSi2qCaZLv5nya6sVR4XNWeLHFr5XePhNKasPjorBzqW8qch4KNQNbPdJWLBDrshq6EwbXznJm: '100000000000' +- DdzFFzCqrhstvbwMaERaLV1pnPuM6og8hgnPewkMVkrmhNkgnTB5rgbt9bEPYds14ZV6dgXVVhS57YLbaGrDjn1ZCiU9SF83Q7dXt4jA: '100000000000' +- DdzFFzCqrht8mTWFtdmmwHhHC9TWBhMevmXpPjFSefWayVyBxH3eNAd5q9WDWQy8krtzKymrxCXBLL59CvM6LmYDrtPcHJy3DK8vwwUL: '100000000000' +- DdzFFzCqrhsvoEZRtPAhpbMvZnx8ky7FqJdPJmKgpyBf27pXaK3WvrrLeBGjM1aR1qjQqaaviABTVP1wsJAfB4ZCZcXCU9RfrdZqWvt4: '100000000000' +- DdzFFzCqrhswxeRiuBVPCJSnWG4oe6vkN4eEjHstqHUTuC1QeKzjCn3jN3qP9Gxu2hXAb7vgLk6nKBYfCKmpCe5q6muM4MPjQ19WUBMu: '100000000000' +- DdzFFzCqrhsubCguPahemcTZtmNoZDcwP6nJMFoEj3hkk6yuYeK2EknkZqLjMnkSsLGrMcqdbsKiCU5SPHUyK8Gc38McSRBpBJrQ581y: '100000000000' +- DdzFFzCqrht6HR6fCfV34AUyvR3YyriyhpAMLpdcPj9rYd8xkRLH7U6xtdPGLtaXHExV66C4Ets31i8Hnq5NrrkJ7urSj8MUtEBcZMKX: '100000000000' +- DdzFFzCqrhsqkj4dLvYnxEktx6oWSS4du8MNyZfFrj7kajyQ7sXY5KqVeCqpVij1kQ1SBJbZH5FvWo7xRWYWwQUeGjFyCCZuRNgqE2xh: '100000000000' +- DdzFFzCqrhsiuqpSe6YrZyioZi3BGCGVx531UBP9h3LbTppppb65fwG7R55TJG42M3z91LZgZzqaqyAGqD1kBjz4b5JtqR99QMNMmE73: '100000000000' +- DdzFFzCqrhstgeTg3vnEmbERQFuSbrQ4B1HZvo29bCXo7xkBjs16GYKRNbWG7hG2sSdosjGk5eyMhfiBye8H3fp2pyVs3Mr69CSPkkxB: '100000000000' +- DdzFFzCqrhskQMk1v4faf9q3RLouube1N6jaw6tEn3sE2YUmDDQUjnAQr2i5GdUuKsVfJTSKkB8dXvPS5zAdp5Vvu1nNBvzJUBZBHWfJ: '100000000000' +- DdzFFzCqrht41wzTkjmzB88BcAhYFb6iVSMETpC5ZvTES5RQJvfG9eGMwPSLFQRXi6uotWKaReTsZyUXwS1LNdycV5CFPWzuLQtAGgLh: '100000000000' +- DdzFFzCqrhseKzWFXhjHPhPM7E3tBfCzLQ5ncpwzqJuH33prMjBEwJStzkMDRAE2upsBXdcn5iPCQe6qy9Z9vBpv6U2PUY5ZxeNdP5PF: '100000000000' +- DdzFFzCqrhsfBp2xYs2xqAvawVVjZGrExgsEeTqhje1C6yFQxQhgHNavZKL33XpRrG1J8SJAiMtsqQnCBcpSdgkYDEHvfU6hxESboxtp: '100000000000' +- DdzFFzCqrhsr89fgkp69qpxL43ymQt2YNfwA45cTMHu2oviPQTwyJisize6qSiDrLV6CtAvkkERJN7B8gpaSSdKRs7FqDkcuqjn137wH: '100000000000' +- DdzFFzCqrhtBYPNBfhVxkvWzaBdZBtNKPR1gLk6ph3sJVVC7djbQsfJRps1vWsdj7Ng9aCYTF7ZvdfVzF7YKKF8oXE2mF4HGHz6kNgft: '100000000000' +- DdzFFzCqrhtAyzeg1JJPsj2RGJhh8CYzjApC5aGhxZ45fgPGK3rUPE1bdxzREeZXkEvbVBnaw2h2yzBJn7gkb6vWboeBaD1D491gDkM6: '100000000000' +- DdzFFzCqrhskpfrsyafEcXqaos4Xh6Kj7yXTQfwN3FvofwQhbMq43UPzQLLmQBQ7LtkYuJvVybRcMLZgrhwVaJ3tVZqLnq3Mot6GMatW: '100000000000' +- DdzFFzCqrhshCqg6rq8wZXZ5GnnSiZkSZCtUwaagL46wxp3M157jzMbF1q4XhDrfzZmc58WxXwa8AC9uSb1wD8befSZM5dQJYrmDCoic: '100000000000' +- DdzFFzCqrhtCVAF3SiP645MiyAwRvbaq34FryjaK6sxjFPR6P94P91ZPR6wE9nSGeuyjMwJeZpz1jT3HLnuo9f6XszNdFTTnEv2gyy6K: '100000000000' +- DdzFFzCqrhsiaRM8xydosGBPRJuuzzX7yxeHAcHdGwWiqHzyqe738ytj5pNXtxfHPDYWD2g684hNaxJipt36Pa9WsGHiLJk884oCrwu4: '100000000000' +- DdzFFzCqrhtApeShHWGcxv2Wr9qwbm42XL5Xe2rekV2fH5v9tRZXdV4Mb2KSDh2U83yuNSoJdGDwPKmfjWPoKWhd3TtWvpx1WABqR56p: '100000000000' +- DdzFFzCqrhsveWJGTgC1ifyEvBBTQmuFRfL41tGxGKQCVnAGQtdU6rocaiPQvvw1ssQDtLhQD4pA8QVDqBTQ5MPaBBricDrBMFGkUnqe: '100000000000' +- DdzFFzCqrhsy9HENZRDdEzGfhXj3rkR5CWtkW4TjUYVYAh4T3bZUg8trAUiaHtkdJbVAd3YDX2YEMqFDSvPUXisDC39NpU3c7ktL6YyL: '100000000000' +- DdzFFzCqrhsv36gadfxGKDSx1MpWcmVAVTQpPANTbf2LujHux2Py2H9KoEY1YxHSauXxiwRiiCwpVr5A8eXoov9C4zZYDdw68A5MV3Cx: '100000000000' +- DdzFFzCqrht4eq39dq3RU2uSppUdhBuF8HtSgK9d593XDL6rYZop3BPYUdZktSpYA8yif2cMHFDqYFmFKuPkAaQW1PNhuaeucqCroozh: '100000000000' +- DdzFFzCqrhsm3qRzxcPFMQ8Lg62xPCEdMH1pgJrh6gQsPU6uDY95mxAn82Wp9Aktjs3igYRnoRy5XAbv8cbbQg1pdJpsBMqbuQVfFR8M: '100000000000' +- DdzFFzCqrhtBvpeuo7sprBafj1ueThBVV8xCEL7GevccZv9RJBCShzi9PF3qTssk5PkDwKxLxrESFaFCTpz1ZLa6Kf2vD9cNsvycfbQ1: '100000000000' +- DdzFFzCqrhsqy43jB34f8b1bpJUQyobkhmk9wbuFeZRjgpwRpM3qr9CCsgncDyUpedSEgzkY8UXVMLSH4GxcQ4SKrqLpDW4Ko69mqBMT: '100000000000' +- DdzFFzCqrhsqzemHP17k8LZMtmaHcsBwgFLy3LP6pZ6wjPRs8omh5AcsjBczXEqsf413f1JDw8tFGHwhx8QuDut6Nh2kFQx81XhZtAmX: '100000000000' +- DdzFFzCqrhst9BUTdGX8sF54S9aw5jSBXSDAEUma77UrFjoDx2yKPEuVhWDMxpk6MWBMDhefBG65zQGCcfXjEf8AyAptQ5sWyee2Kwvo: '100000000000' +- DdzFFzCqrht4bPKFXEERy8MT1BcDmC4npEfiSPQL227ptkLVdHqy3dTGrU5ADtKzSN3MFwzyAni62bp2ZV8n5ZDjzHdm1cxAihmYySXu: '100000000000' +- DdzFFzCqrhsiYyLaNVE2uhcqLmbdYQnThLiC6euJdrpyWWguLEdkhmeWGdxDx5Xaicn2w2fJKz81KMq49euSesUhvwUx6F427db7jprr: '100000000000' +- DdzFFzCqrhssdaJHLMpSjwmUFZGH58ShswVMeMDoQRucHiDYGvhMrczymfti5QwB6FzfYhXK4X5qbdKXUvzEzsZYdr1rdZqfJaWzXktp: '100000000000' +- DdzFFzCqrhsmn8PvGHjxS1C9FhyFzwNBRhXpZF2C7q1pkLFf9yHFCVRHnVAF5qpH5pVpBNdiEvNWhsQzUbMksodhnAEXYt58o4tK916A: '100000000000' +- DdzFFzCqrht9yCckWrvTSynq5ZVETP3tvvLCMHfEDH8DqQj6H2aQsPw9KBjeAoSGvp2SAen2graUiAvTj42o1HXbqyR1xbauTRqo5Xuk: '100000000000' +- DdzFFzCqrhsgHhQcRMrm3RPbBUwrvnanGbcchXgMHeQ64bqEJwdi9g69nS1U9UFvmB5nBDqRUjjdCbZSeY8XPM8tY4tVLuyLsGX6CRir: '100000000000' +- DdzFFzCqrhsjfhfdSnS8XYcn4tTw8u5Y6SEYygK6RvJHC1uamWGuDNLYgwQNWnC91LFtSxX2R1yY87A6tYNEhFKQKF1HmX14xAt1XRxe: '100000000000' +- DdzFFzCqrhsrT81z6mn6MTdLNt28sBUmnosC2rYCjQejM6tRDV8AKHqEbxGc4LQhK2ggScFrQ5za15P6LEAyXf3p8P6h8cjAJvhHw5MF: '100000000000' +- DdzFFzCqrhsjdEjd2YipWNbt6jKF8j3THaW3Hj7WMGuXXsaWfDjvk2f32dgb8Njtj2wa18AGMKuU4EswggKuZ4zBiZahq24S6hyzCwis: '100000000000' +- DdzFFzCqrht4nV96FhGCupGNWmaCxuEtAmFeBesEW68cjy3RpLggYCZFrLPy7ykuHu6vKN3LidtEwSdtv2wSUFAadwTEmksjf1Sbi3LW: '100000000000' +- DdzFFzCqrhsho5PGAWinxtac4QJxPQrYzRdK2PXV8gBUrF6i39U3MJgaGCogwynj1e8xYoTWVmPhCHsHG257Qihhu8hQTABUxtGirzbM: '100000000000' +- DdzFFzCqrhsqokHp8w9JSAiQ7zCujVoC7C9ozRYkS8ogkYuwnbCTwqZNxCg2upu3eiA3CZjrgwBCarEibjYTj6BNWHwC48RKTKb8Ysis: '100000000000' +- DdzFFzCqrhstWZnLR1tsxXSrWfNjRxbetZDQkJ5SB3hXsd6zEnordufxSpqdAQ4d2d6fFUU9GMPgeYpsAwaEgwYpkbGYpe9zZcV483Wd: '100000000000' +- DdzFFzCqrhsytaiYTPHCkxnR6Ppet5MoETkLW7LGv6VkUAspR5iExDbjrGmR6kQWF8BisMphv6QuMrGLNPjVpfw8sbzxcgA7UB46LQLo: '100000000000' +- DdzFFzCqrht36H4ECYgqwMpkpoYZH2Vco4jqrvagZJ3t76p8wtuUizatFvExcfydawjX8QtvPNrLkCgxoaokw9J9RCxPYQzj5ESTZ1J7: '100000000000' +- DdzFFzCqrhsu4MBuLV8qG3GAD3zTXFqSLpaXpyFwvvhhi8JPmxA5WPF16UqLvKBewkH8wawggbRUUihgiZta86wAnHGN6yvwET6CGxFN: '100000000000' +- DdzFFzCqrhsp7uHHYqrH4PEqkY1FMkXyL4eRwQSWUTMAUbH3aR2SMvYV8LmVtgjhAyWJUHh2Fmr8PrtDmjcFtNp5A1mRp7PmWkmt4xVP: '100000000000' +- DdzFFzCqrhssoQazfcZfswz9GQcEmJLzdBhkzf8c8d93DybhsjEJ8J8yZzHxsaDAi5nWEjFcJTv41Zjrsy4Rmy1cgJ92RvjHK4WfgNuU: '100000000000' +- DdzFFzCqrht73JH3X3pHv8JpamtLcTtxpCr5hvcPU42fGFz8jG8XR1wNfEa9hp3ZMFCr5AJLih6168iuKGVGTbCsMiiAt7pTbbeyZ1HV: '100000000000' +- DdzFFzCqrhsrebKm7sFGGe5F3bfLJd7gaUt1JRt54D5GLWRCq8bE458dMdf53gTTueVYHYe7sv1GAFCaDNohWuWftqbsXtKUJVfQGphS: '100000000000' +- DdzFFzCqrhtByw2NWvLn2yu4uyaqwBCPYNU9goY2WwNvrFJg5GjAKFHQyMnnNuoX7m4ZtheRWxrae9oUTP3E6XeVgkBDatcC9aMfs3iT: '100000000000' +- DdzFFzCqrhso1L6xw4jTsBudSBBReMS8t5aKMLwDLKmz3vUAnCb5EksNTPjQdQgzBDjR7btkEwCtaA4yZuGPpoAmwL9EP814gTus3Nze: '100000000000' +- DdzFFzCqrhsqKSLoD8ZcA9VNkNTnaZRCVesUnajTp766soeaz44t3KTve9pD4JTdpEseVpHyQVFfJZZwBqCYzqDkKEGGPcWp9JBEh1vQ: '100000000000' +- DdzFFzCqrhsf3GKBLMweuuwwinX4hutK5P4Vet7op58hVZu6HXc4dShBrrn3wTqRHxUhbXx12NvDs2L6JukkKXgK8iSpb2PJFaN4ABzG: '100000000000' +- DdzFFzCqrhszAprdFXZxuGGMYq81F7y8A73qc3rkyD3aDi6xej6TVHfD6d3KUQpu485zCQQUpRVWzBrb2fCwbFrRomN7b5Xpzv4U3eg6: '100000000000' +- DdzFFzCqrhsx5LWMerjwfnZzKA3gVfdYCScV5UadAzszwhrag57eo3hdxLXHoXXiGXvre3npCiVzqK2TNwk7o6LGfLyb1jrNLpw6gE3H: '100000000000' +- DdzFFzCqrht3nAENaMizh84Ve7yEput2HNsMQNWd5x2noTXNPEw9uuxdUa8b5y63PtxX9gjhJyEKLtRRPSqVQCJPnXyAxyK5tfQP8fNh: '100000000000' +- DdzFFzCqrhsu87pssBC19mrrhTMhRjrp36fEVqCp4HbTVXEjSwoZYetxG8bqjzMXHCnPPfX8z7k8Lv9VQyCpJFUXfHU4NeB9uEnQRhkB: '100000000000' +- DdzFFzCqrhskRrWY38HPw8yfYEjp91wVNUzRQ76qcM4UkQjY1kBKhfRjip4ieiQYXLFyoxfEqPkbPZ5WbGkB3CZhScPvPjPppc3PZkWD: '100000000000' +- DdzFFzCqrhtA6YZj6oSVtqoSXrkUiHsRv9kpdxbohtZzxfvGaMUoYP7VWWdsczheYVfLt9VW5r4XFMscjcZcb2UGw8ykB2vFyxbQckQg: '100000000000' +- DdzFFzCqrht9z4VHBohf7kASug9YRebqhLuWkz5NLADUR1YckG6CznWEvjPs2itEY7kG26vuDchGMvkwcF7NWyFxdkkUqHWhYi6h3NTz: '100000000000' +- DdzFFzCqrhstM1aY9uaj2Jo54ivAePvGWYZpefwh6tovQWeMUSkauQ4q6UF5NUwukjzfF8XBNMR2tJhD7bc4E45kBvmKfaR4FnRiZ6LL: '100000000000' +- DdzFFzCqrht44eVXvmjvLtuBHvDNEfD4fNTE23HDu2cRZWN3NLfkzpBapjReXMwpJEvT15kx1r2RTjkAz7LnuqAbAKaoBwG6g9krLWw7: '100000000000' +- DdzFFzCqrhsggd6EwdqkEUBdSjbiALquH6mC2AmwDNNLkAdNY29sGx7HE27H3C7BJ7H1UF1CBob64fJiF9Zkqb53fc6Sox1KEH3YBQJF: '100000000000' +- DdzFFzCqrhszudUhGSJkkLCJ586obG6P9DeXeweYG1fMfujcpf9BvqKU8d1ur72ZSfWfkM3v5JxWMExAw6Zv5AA5qJxaLDDF4PytWQ3U: '100000000000' +- DdzFFzCqrhsymccaaCAmMmG6JxkoYaCY15F9VSFv8zDxWrdEA8jP2SZXMUwUEdYWhEJubuy1unRdpvUeMXFSL4tqY75QXUW24yfGvy6r: '100000000000' +- DdzFFzCqrhsrbJp9CJL4N4RbS9WkAmWtX2Zco4xQ3HPqARe7th5UDF2XEJEoLc7cgYEGzPDoK3EDjSQGiEBzChwwsEjPGhwvwzDPkqnP: '100000000000' +- DdzFFzCqrhsfocoG1xmGoaHJXhga6dmQtZ5mgBg7P8xf4swuWMJW2FZJxSrvx8TpAyuKhub45Ys7az9BgqZNRsx8kzZQSsQe5hGjXREm: '100000000000' +- DdzFFzCqrhseNSpmQJVXqRrjwCMhfzdGcLMLNvXZgAyuCfYHjwq5A2UUBqibD4M2me62GdfD7sL6qBQCkEos6VSgcYMJjg8uSXiqXGpT: '100000000000' +- DdzFFzCqrhtBFw7EgiMNyUnKrYjYd9B6urwCN3WTTRpvAufSbgDmmoS98K331mof79YKfkVR1sVnf1ATPAJHH61AMYJQhx3keV9cK27R: '100000000000' +- DdzFFzCqrhsjfM4ZyRU75YACkZ3fkW5pCy5YJydpCFqRDJatDh3fVjuxR8X4vENkLCVjKndZdwBsgErbi5t7ZG5pQ9jaLxyQtSvHFwLL: '100000000000' +- DdzFFzCqrhspVTt8n3DxK6LkLveXermCBWPj5eKphpccFszTFS4mD9G2bz7hk4GczgTVuwkTNDPim7EaXfTXxAvanuPS3PDmMoe1RJ91: '100000000000' +- DdzFFzCqrhsfzeTD8yxSDVbaMUgEkbQuUrZEdpqwdQjHpuPfDvpntaiBcqEE8TkJpG9gpbH8ar84nusQrB7iAbqb4yXCKDU5PKWaev6x: '100000000000' +- DdzFFzCqrht6J3dL5pfC9f3cewkJTdXsCofBLj2sWVutDGKCKYci3fA2ATqtgyzahakBLjVbPTHEMCBkHFvxw9z1eDVmc4Z87bL3A3Kf: '100000000000' +- DdzFFzCqrht5i39FiCMKxSV5AFN5nBeJ2MbupM8bTSg9KNcHv2XHBRZnxwPGFtgH2QpKGbEuVc9CUweu3Zx6KrGfm2dRPGiVFm5CpNiL: '100000000000' +- DdzFFzCqrht8BN1iUe87rbf4vXq3b91P3wEX6cH4UyuSCJBpmhomgJZvXFAMG6ENW4nhW2oThPccnHhbPWMieaBbChzEgZ9dERgahnFu: '100000000000' +- DdzFFzCqrhssae3NuNKnVvzmpM1a9fZMn4AuK77N9i8SaV8XgcKYfxCmN4HWWXxDEFjcxMkpESN12TpSEteGKWtPKoKEuSkqh1K7bf9d: '100000000000' +- DdzFFzCqrht7DQte1tjKsEV53eH86em44gNDwDtJTiPwcupUEZeWDfBCM58JArVLCuS89jBCdUjpZ5cV5MTg55n2c6Zn6UiTi6aXXScF: '100000000000' +- DdzFFzCqrhsusvfZkGxf29gy6t1uyrG2ihyak3iwemGjiXujtyetE7NaLg5cUE2kaakyYWYfpX5QRCBzBjMAWoHnxn9bydngLzqxhcto: '100000000000' +- DdzFFzCqrht6vJoBt2bhDjUCUaCLfiXSah4qGtvHJaMn1L9gqH2SaffNwkitTiyu3z89DeVuFD4CbD6FBE1pSMCVY5osmU72d1yWo9g8: '100000000000' +- DdzFFzCqrhszjskyvy6H3oBE3CAmViTtkDphHzPtjbut9bMPxrZaAoAvjJpuvhN1zfQkZHSweTdsi4BuyXrPQ22rCf5Bhea7ZopzgTbU: '100000000000' +- DdzFFzCqrhtAkMhss378ZA33eDMwzT55PQHCnfe7FYuRMqwbYqhqTXH9QfnxPLaCkJkKAKaHboLQ1Ufxu7awexHRKQHTAbQLFunmeJ2W: '100000000000' +- DdzFFzCqrht92AZbrR8SWu694B7uDiaecYzVg5z8udHZgL2jYsVCRgigrhjrsz6zouhH8D7RX6KEKp15zdAKtCjwwy6j5JA3EFtXnA4Y: '100000000000' +- DdzFFzCqrhsoyT3rnz36eiX9eYxAVgrymp9z48sjJxntBV34EZxrhvExRoiYVbk7fdnQ7BuviNvvqpNmCB3hBtjJmj8A42pHgHiyzFYg: '100000000000' +- DdzFFzCqrhtBjTmB5m5qsm8K1srWJAG9Kdt9F5e2w2XR141pXivAiL15u2VHok77mVHwo8RiBX2Ya8Qkde9bziHZGv6CxMJ8n9CQQESP: '100000000000' +- DdzFFzCqrhspjaMkcHj6hChprqoRzxRAT58u919ZS8sLrWP3EN5FLxYNVm7pJ9VL5SGyp6QGV1UfjxymH2snUAQztf2VGhRSb3gMM8fE: '100000000000' +- DdzFFzCqrhsuPxVHBrCzjYZEZ5KyMoyDzY8kiamuus3jWBvSm4EbZ9xFo8Dsf5cfXzq7ssWWWvu97q7YQWSeR7rMtfYXy96KVwH4i4o8: '100000000000' +- DdzFFzCqrhsebh2FZt7cP8aSgDMf2o8iMBFfEpAbkVDRg6fUrrAQDBK53qQ87LUBnD6CB3KotdxV45KyHDnwv25pzXychWsUCMKALGZk: '100000000000' +- DdzFFzCqrhsmys32gydWhvhaVMxKm4jLY8T5GcYjcAKrvizenswfKvhcxGi8fTMvwqUVBAhTePxaj4tCV6qzhrmTUgk9Ge5d4G9aFiy2: '100000000000' +- DdzFFzCqrht71ZWyLH6Nt8dRB1vK37nGfoihNhSzw24xCVJ9WsLmEphVR2aup36PY3ckFDApZH6vVagVZgDWEhdyg9AVX88idWCm9Sj5: '100000000000' +- DdzFFzCqrhtAPzJgttZb3LFYfsAVJN91vWB5qh9YBWHiwjg9uMqHX4PPsKW2QRMHVGyiAvRMwLr2t8QtkAfJa4g4XMieGzUFgpCavtVw: '100000000000' +- DdzFFzCqrhshw6x9EqMayfUij859txSoSYHQa2qqZUrwYMNiSj6wrm5iJUWBh1oAMmeUnsNQcvSBP1n6H6hiWTNWFLjnTobtnUErCxN3: '100000000000' +- DdzFFzCqrht5uDzi746DnPGCQ3Aq42hwSZbYg1fXMke5DERTPGhDD1VnirqzUC5oRJrDRKZMBC78bAAvyUSjHtLpud3tytzjUzbjq3rh: '100000000000' +- DdzFFzCqrhsime3ux2vxCULpsTCAQjpQKxQFaW8BG6x4Nzi3GowBMpyo4TNsKd7EiZwVMBU3PfMupk5UMttwZgVr8XcGRGVNKz9sJkhX: '100000000000' +- DdzFFzCqrhsxJ5JKBLVyoVCYHcEPDzoui5i9bTi3pWYMQAbyr1XqwEKVyDddwTXAhv4htUk31fGtmo47crfA7t2LszWzAQkDVbemiyto: '100000000000' +- DdzFFzCqrhsmKhjdNpqX2WaD23zAnhmwYsPEip1NMXzRTXo4LgoURoa1S1qxR6NmTq1QY4E2zDo3anWpGjgnQ1t4Yx6jfs6befm7optE: '100000000000' +- DdzFFzCqrhsyHw9BWhX5PmxzAyFVfybZrGpFgLMKrJF6GRPv2KYQn7jgXriU88oMrV4ARYJP7DDLmZgotivuHdbVDXvcp5vU9hMDvHAv: '100000000000' +- DdzFFzCqrhskyMbptmV625ae221NrzVHoZCYKV5qqsDgusXxY8sPvJDmnAPLqtwtHmsPs6T3zXkmyXSpD648mmSjTZSZxKimXrtw2Um8: '100000000000' +- DdzFFzCqrhsivpXNEmP7ZqNXReNPR57doCHNeWyrKtT5tqPF6bNfZnD8Tsb571y5KgWjKbvQ4sXscQPPEoFToADRUCyCJh8ejACSyZDR: '100000000000' +- DdzFFzCqrhshgzsD4r5KPuGZP4LpTYjY2xWRZTJ7G1oQYSGmzA7EoV3W4kXSWSChryj4E64dG8YkXd4skazjWjkcpFk3DDLTLbUApWn4: '100000000000' +- DdzFFzCqrhsg1H5j5z4fgWqWxEsjRYEtUipcQmycJqEcjhiQ1JuZ75bDnva9XJ3V2r3XGUsid72rkgHBD1HossFYRxDyjgYD8FNdAtbP: '100000000000' +- DdzFFzCqrhsw2aLZysp2j3g8RgybjfgDqq69GZ7SuwS8QtAnKs5zBdUVTpnmztrW5jAQCpLRWKTK91n7uYEQiVxBoCnET7FSxBQLnPFt: '100000000000' +- DdzFFzCqrhshheEVbxKXs4mrSQx61LbTv3NALLi2BkY1uKvMFn64feev1RifahxpZ56w9pbLaWuSTHqzrZEZTXAPbk1T3JYE66axAHcf: '100000000000' +- DdzFFzCqrhsuFUh87hptKqiKLRR7Z494cJosQ9kSA3DSq8sLudxfTUyEZfUXvetkFDtvJKCJXi2EGLFWdQ1adNX3PjjGhgMfA7eLZLq4: '100000000000' +- DdzFFzCqrhse1dJXxMGtvpEkAj7KcodwGN9dp3qsmYvgiDSJoigiUykaR6tkqeZsE2LWNNADFSkdpCFJQe8DrgDsy7LDXt6Rup9eZ9mp: '100000000000' +- DdzFFzCqrhtC6PSbZaMaXSAgvo971uvLGEQQ2Mx5bkaryDYB63uutqvsZJfAqxaBEcjWibTNLoXaCKKEzvYiP1tmoEdgqr3ocTPP79gA: '100000000000' +- DdzFFzCqrhsfoxYEgtp4nNJUW7NV5GW2QnYE5XNU7aVk1Wp7CjtxnMFaV3jiQHXwS1XF94jWn6n41tCBmuTj9fJiexAqNHukQhhoEuXv: '100000000000' +- DdzFFzCqrht9SEZiFkHxAqyo6UwY3Mo4q13dBZrzUk74DLcDoJMJagy8EUsd92EMd72nYqqBDYtm5FC7ihJVvutmeDMwrMfEfyBB9qDX: '100000000000' +- DdzFFzCqrht2UjaBXn8kSu3xHhrJLBTvvNjjStCGsubbPJHib1nMLVokcLGK53cEvisuwhAaNdPCHbinD9ELYS2ddZvoQLcLBZaHSjc6: '100000000000' +- DdzFFzCqrhsgTJYFraVxVhV9QJJatNikDgjkNxMbSqkiRRn3bZQwAaQZhNiBkJrBv8p9Ms7y2jBLNxR1YbUHMrh7FHzkGzFDV3SRpA8q: '100000000000' +- DdzFFzCqrht1U45cCUrm8bsM93gqkT6t8drPeS9Hp7psrhceEER8kngKk8ZfHcxw1F3V5ZTk1DB1ZswKH1Ty4xViqckFe5bCgnbvimtS: '100000000000' +- DdzFFzCqrhsx4v3EEhCbHLbsv4oHBrM9BkJUwQqCkSd2C4VZV3qe5SAHmqrngkBqog4YB9JvcHaVZXX6jWnZKsGCfHJ11WGmKQB956Ec: '100000000000' +- DdzFFzCqrht4PnuBRmCV55uZY8MgDQWtRNPpFFjMwnQgvm7Td9ZfWX5YA6TQCVUprcpCVHvggRuMALvz8WMLjy1dU5pdEewdKRxxf86f: '100000000000' +- DdzFFzCqrhskJg9VnyFZzbdvHL1zPauGxEbqX82TZ6LtD1KvDUCDY496wnSAmCHBxQ4rKwBVWc72qTWFuozWiEV5xdUgqutuWcGGB6qs: '100000000000' +- DdzFFzCqrhsm3ymTTjrkHFZnHdcLwbTGtkcmv9W4GmGjZydSDAUh5dwnLj6FFfXqinQg2MnpjvVDfNKEK28zaVHaTgG5EYbbFPDor971: '100000000000' +- DdzFFzCqrht8XXFJSkg5FpjzTjvEgcanCjsWxPZeQFSdhwjtdXSmxN3oADnSSzHns4HyH6tkxrEcaMYpYpPa5DBXWrnVkaRoMiBAdZVs: '100000000000' +- DdzFFzCqrhtAjxVGbcYvP6SK7r42C5iWNE9gz1yHLEhMDj8kmEaaVyL8yH6A4sqEkyqLqdGvD8HUFxQUcVGtzEr15QEHabY8TsErbQKP: '100000000000' +- DdzFFzCqrhsdvjyeD8dopUpmCMPnif8VZXVLgW8KLUoVEZYrB3noXnibKwP3GZsBVZTZAxksb4WBrBBLUiv4XGRiYMZkNtBEBRKVHzQG: '100000000000' +- DdzFFzCqrht14sAeB9ErJbz2aW2SwLekBPkm411UDaKHoDpNsZf7U7ddJmTxFqfeXFs4UhwcYzLzBc2L34dxtsHqKzQsVumtAUdPwdto: '100000000000' +- DdzFFzCqrhspgqqqhiEKCxcE4uKkhG68qMmRqWqERbrZrt8DSKsGeUdA1fiqEhxjA7nh563x3arSftiznjasoEChGHYwfMMJxT9kvDwM: '100000000000' +- DdzFFzCqrhsuteMNG6kTVgRHpQTbc6qxicZB5to9mbDTVeE5rt4WyCgJ9AJ7D7oXFgGM3kNs94jUDx9iWHGocry77DtN44j84KJ7MuV7: '100000000000' +- DdzFFzCqrht3tQFfScPr9a4p8KsxYdzrDY5upr4mEcrmWaDkxqYnVcRjC8AabojAbCm7xEZbQPtdzZUWZRrFve5LY4HfsDV6PHhkKYEb: '100000000000' +- DdzFFzCqrht5NCk6JCi9C2yzUQ8EABwkP6NekyAcvq6Dy6iQQ1obiXTpu1omW5p3h436W6PqiqmKCXsaaLyCGa4zaeP3HgtQdRVGPyyW: '100000000000' +- DdzFFzCqrhsegqFLh5p2m5f1E9DgV4zYkLD9Vua5M8sywqYjwtDXTqi9HMjbF1xhnPAWksngEv1jj8B2Db4trtnQNi6yepJPpu6p8xaa: '100000000000' +- DdzFFzCqrhsqPtXsi9Zn8uata1pvR8j6C7cZ9SJCorWjUsL6XG8XFWPooyeCP3JAn3R5MekSETGGVLyyBDAJN2DsXXrPojGfE7vZ3CpE: '100000000000' +- DdzFFzCqrhszN3ThU4DkZL5ZiQtBerpyPN2ajtcEctDGeV7x55rigdPAKr2hvs9DiMV8EntV7nABeHNMNEZYpPqTnYoAf4sJSoKw6ALr: '100000000000' +- DdzFFzCqrhsogHAxvYdHo3kzMTFAzMqXWzUp4f2GTGahLkStP6Yfm7T5N1e3h1DNNhkzgtYBPifiRjA4n7DYa8YPrcn5GWCkBbscMYbx: '100000000000' +- DdzFFzCqrhsz2cZ7NN2JuwVAxUgF6VGFNLBHDQRYymMb6bpUwRM5vcYkHqvf1dRf7kHhh7xwViGideH28ontY87NkWAYedQtPmDs4Qnn: '100000000000' +- DdzFFzCqrhsnAn2UiEjPYR6EbhETRGAA7Pbtr3DRdgWgzURD4iy1ciUqCHXNAJKtU2vD6h3fW3JFTFYxwTZps5bTZG1NvkL5Q7XkfX1N: '100000000000' +- DdzFFzCqrht1cDfX6cVfYuK5q7RTCwattixFjdR11vxJgBnk4b2Fo4nNRFWmVAsTkb2XPkcb7zafwAPmVc44Ff9yNSfKdt5LyxA3zeYt: '100000000000' +- DdzFFzCqrhtAsM7ec1Q79KN5HJwxfD5ZpEDzDjsDrdgazr6nz5kvWvyqWWAuuFUwshhJqvKHPZbbWsqSFBy9Y3tkPRQk2czYa69JzQSJ: '100000000000' +- DdzFFzCqrht3Mt6Q3iAy9eTy9qZfZVVKGE7jejkeV6BfJS1AD5hpjtHDZRH5XzFV35aD8YDaKraYwWVzTZ4H8FxgCwqWCpyVfAfSyXTV: '100000000000' +- DdzFFzCqrhsgHACZ7YZ2KdXj1v55refKj4BbGGGytahQvytEogJ14byAzFrBYWo6GosDak3npUH41dkUaV8f8iNHMsQRT7snPhC17PSy: '100000000000' +- DdzFFzCqrhsjxFrHP6ynjGdg1FwhtcJNPHRQ2hkqv7dL1ZEtYYAa16KgL3Mm1tFod46YUdmWvFaWib3yaGgnKStCGQhhMVnTKZupNMnw: '100000000000' +- DdzFFzCqrhskQdm6LtmQDD9t7J1TBTDVnCuopEWDx2WhcaN1TNjZJSNa2uu3VN6jpaFejFTUkTDzHfeUihkbxbk5w4A6KPATbgUn9Scb: '100000000000' +- DdzFFzCqrhsq8GeLkWw54ww6oRx6GDw6VXNBH5joZAt89FcsW7FLZTfauhBagkLxQ29fEC2KUibhQdnnNL6wiD921srAfyHK4Mn46YF3: '100000000000' +- DdzFFzCqrht5CEUKcBErFxVKnV4tuuuGxfL3yH9oScHsZkHEp7ZkSSziDE6MxFwdNKrQ9TzVEPuAwwLU1EhEEw1bBjcyhPgDSMc4QaAA: '100000000000' +- DdzFFzCqrhsvMES8UtB5f8JL8WLHGdPrFcTv6bmUkqK7iEAoE3NbcnnCwVX8BuLyeMLZtuWi1YiUkc9ERiTYDZZDXQxenY5XQG1wT29E: '100000000000' +- DdzFFzCqrhstBSoA3mpa5RBZ6TseQ1bnkvBeug9arVZsviGgCY6cSTrRg78NJ7gAcs71AYNrc4yVTpSi12GXcs5CuvHPYz3ptxEBbean: '100000000000' +- DdzFFzCqrhsq3UxakcFtKdFriXGwzRyBghBp6njmD5nAnpQ91ubcjxm2pGX7DW6ZnHupAHDaU5qQKN6esRRYG6k943qaK3X8iiMd6ru2: '100000000000' +- DdzFFzCqrhskvjfPki1rtQUm2G5e9BEqCzPK6Le99XQ94CGxUBqf1yHJbLMuEnGjyK7rW4RNqvfv1zzrTnQQW8rXU23DHMWtei5oadFq: '100000000000' +- DdzFFzCqrhsfmKR8aCiwWVTUE8aWApRaAFNsqBPiPepkbLPQ7e29nLoy2WPGN7zkP9fmmXgPUVkXYaJRQ1cQXa6PdwerzFym8V8iD5ys: '100000000000' +- DdzFFzCqrhsxWD9Npxa1AJryBy14aaeYpq89qdNEFjwiuWm4U4C5WJgjsbUgQF6mHQvWirt5gW9f4osKp5VPJYzcjVKyeiCRWs8Qp7Lc: '100000000000' +- DdzFFzCqrhspGf59ii12bMaVPUer3zViQ4mAD2T4arK7GwftjrG5HmTRVpmRADwpFe7zktWFBt1nkxqznnLMiJr8KVSXhcak6p38Sw2D: '100000000000' +- DdzFFzCqrhssPTdEzqQ3FR45czq9AChvpstgdAAb3w2qVG1XNz1Ev4cGwCZERPyNRhKbPdq36puHDYLjFAhuQMTMJXcvpeeMMFd7tdN8: '100000000000' +- DdzFFzCqrht2cH3go3Bz4YYXXND7ASQXAdSgq5h1Sx2hy5BJgFEH1NkSJCX9XnuCfb9MExnaiVRw1Bk6GYXq5GFo86J9akvxeatD5L4m: '100000000000' +- DdzFFzCqrht5KFdAHE2Ly9haU65WpFQDckd5XgH2YLpSttX2tJgceGiUfeyTL1QfPAwUgiiTsaHxfAmaCUdW7sBnfA35MNsmpoBJqQ1S: '100000000000' +- DdzFFzCqrhsjEH72Jf1d1H2mTpHBRzKzTy9rWkNhxtniNVCaoGSQxSLkJ9aM3UvkGLcseiuvHDeUe2wgWVFfNUjHMrPAN7efFDKu9HYA: '100000000000' +- DdzFFzCqrhsdxnxLx1kz62Hv2T3PQWrGSzq9tPmqdu1J37pZbyatxYLu6iEomoi3b7RdZ3EYHAYG71ydt41gV3dMbrmYgnavK8qz1R56: '100000000000' +- DdzFFzCqrhsw26CfnwSSgjPJkCsMC8u6eRmBoem6d1L7nSKV2wtyAYV3hqfTXcnvLeeS6fdVn3bBcJegcHuaCQihenQvHBB7C1z5jVSF: '100000000000' +- DdzFFzCqrht2kUc6LtTMRAfhS81S7GHMcg8uMWca8zeZM2KS4fZnbtSeGj8Y3Aqz8QGdhKiawTcEieTp1RQy8DUeB6myGCcGKeohcwFy: '100000000000' +- DdzFFzCqrhsvFagd5L4yJMCC5b2NaDyQ6i7jc2wFWzQu5kkZ44oLqz9Egye2k694iBuuwT6rRUUdMWYv1KVzqG6SeSv7rKgWZNFx3Muz: '100000000000' +- DdzFFzCqrhstQfMVyRgzLeXfethXexEXUbmCQdNLYPpGWvg1zQWfh7wDEGy4QaTeeMbQ44RZvnWZ1So7yzzyT5UBF6cseZiUvWo9SPV4: '100000000000' +- DdzFFzCqrht5n8w9UUgxpA6BbnzGPzWob6xcCmJtsNCQoyhR5RrGQndz13qATgrn3pQ5zmyu8UijyuGqbAzEB9RfGe1V2KSCcjCwVgyE: '100000000000' +- DdzFFzCqrhsqmM3a6jUkdTdWx77WGbveL2vXjXr1edMKgDpPVgN7piVBcTTFF3vorbhoJjktnp88SYDG6U6HiHTxVHy3XYDKcvQdS8rp: '100000000000' +- DdzFFzCqrht3WDVGybgYuzdJzrJMseMJ8Kau5qk5phLPGPom7b6aQ3YgCF65o8RjhtffTmLAk2pvrsnwdNfrusRkqeFyQ7ZWfHmY7e1A: '100000000000' +- DdzFFzCqrhseYnuqkz3GJTeBbk81yDiEaENtjmbpmjKpufte5KmMBXhpoeHGNKkZ5rRg5Gu1fkT3frwLhWy9wem62YyWfZ7tfzTVzPpv: '100000000000' +- DdzFFzCqrht6bNvuYSfPN4jahmSB1Uq6G3UuvawUC5BPcdxoT9ASH92NV3VkxzQFpCx2swnqY2tyJ7siAgZM54V2S6EEah1Qsd1n5qmu: '100000000000' +- DdzFFzCqrhsqsX2poXx1YgSd1s2ezQtmzstWJ1dXCEKCAz11LwG1wUKP8RNBPSPcqQ4mPwW899KZNWeLHJP5HuEonTL7USphJoaAozAi: '100000000000' +- DdzFFzCqrhstimY6SK92qRmHf841S59MZXiypJh2oe9J5pFgnGkkfT5b48y1M4GgsCkZ6qYtTqJZA5vNd4wtGhmnwc7B1sNiRh3U7Rwn: '100000000000' +- DdzFFzCqrhtBZLXzf2ev6kWwkjHjdQAYuiou3Ew3YZaFYMayfPLo2gMRs23R6dCHMDbdXNes85CmeLbXy66xo2s94rnAiGHDTje9CrH9: '100000000000' +- DdzFFzCqrhsx1uqRpmhnXXd5AVioyDFiCxG6E5oSP5wDqESc49sSgkvxLBPZWb2pgXd982yoKjJMg41UqMCrSUjz4mXEhbHRMuUkAiTn: '100000000000' +- DdzFFzCqrhsx814uitj7SrP3cFiunmghewArXvuUFGdekaVKUNf2ibKCDC7MWWqSvviazZLFS36JKTYH4h9KV4cfwPJ1B6x8YzWprxrT: '100000000000' +- DdzFFzCqrhtD3U1gBCqLH1oTm3woUnRc9QuGucApBQfrR9Wb2Vom7eEZREL7r7qcPjyA7gmYEP6qMByLQQJR6HdZeU3BXhdCpjh8BZkS: '100000000000' +- DdzFFzCqrht5vQCL9uJLZbrcUNHjPveH69TAj8HMx6gAcnbfAA18yd8GbmTLqj16j7encGSexZgy1my9Jh9k7sjkUJGfCpWkaGy3RESa: '100000000000' +- DdzFFzCqrhsfdjfkngqhpt4jWALub9s31U1iGFzKYAiwZd2iLpSVdywEdhU7YWkN4bBhQYGu3knBU4fUT6GwhWg75CKLb5WF8dtLyJXQ: '100000000000' +- DdzFFzCqrhsyYfBwQ2CK2aFg5sS1S1CnqkYWiUvTf4bL6aKZTb7DTgvsus5jLaW8sQPbbLCZUFJqjKh3Exg9vGMfgEjFewkjcgSqxpce: '100000000000' +- DdzFFzCqrhsirqaDrY3GEHudjBKKbin1YFxhxsFPpfaQkJoh4gKJmuWZTk8yVPSENhA6jdVW9AdXrudBWXr4zeiZtmbPqTGzzPXHrJ5T: '100000000000' +- DdzFFzCqrht3FErm1LHLUtvQPzrE61TPoWg3dvCaPRiTQ5dEGJkiZxR9eKqx9knhFkYBj7fmGYaHVkX89xvtkprepfiCB7hc79oWfqao: '100000000000' +- DdzFFzCqrhtDCtieR9HLGjPc3mvo6njY8kBwzQD6kQhf55zP8c6kcFz2B1S49KkxVymxtyLpE74zfcMCuSUTpesYPnWMrN2otyToYxRM: '100000000000' +- DdzFFzCqrhsxFsmvzPJCLvV3UYHtR8xKZC2JLJugTQ8rMjDj5jAzoRdG3Z5dHzEk69N7z6r8bYLn3TV9Lbh99UiqbLAA9SvVeEapmJ2e: '100000000000' +- DdzFFzCqrhsfEhPt2rUx5u37jUchKeNcE9EFKVUxNxCbRUHQFtwVcVJKrbmckmdhdtMpRHbvBpt6wW1ug1JzccS4Kn53FLH7iPhASp8q: '100000000000' +- DdzFFzCqrhsr8kEgE5ceq2riNbJEm9jEeXU77CfFQ4bhkNjVEbea4RDVsMEbrpBA5xftjWK8wKugdxpPbMbW5vh8bjNPVvstP6L2MKBT: '100000000000' +- DdzFFzCqrhspYmmcQ9WUEmmr5hiFpdRspPbWp4MD95E6knR1TnmW9KasGAXSmA5QkF7GkPPCXrUCVHUvP2ayVWCiT9QFqyrEUJPCNYQj: '100000000000' +- DdzFFzCqrht8vv4HdEPw7kdn5rDd5CLUXfU2M8nCv2oaeSVvyi1fuzScUZy7sKg8igjmphPedJwrUraatb991z8QYX7BU2aM3ApivGBx: '100000000000' +- DdzFFzCqrhshJv2hh6tQu35TGhj8CQpNHKCvEJYrdthkwUkX1CfmT3ASAFrHS1eEKxgxeeJKNciziGzNNLHcTAvZFyxMS9TmdstvHEEv: '100000000000' +- DdzFFzCqrhsjp3PvdWZpcpsjjPJQFWosszkn4dVxVom9ib35B8BUgSj7UHSeUeVk9hDTSY5zVRJvGCBWwRDDS6XyPXNBKhrVUBF7rUUy: '100000000000' +- DdzFFzCqrhszS9FxeU1gK1veSwiAazL5i6PJqxL79bzxFtik6oUvXhCaMRWk6Liznjef5FyvfqMJtd531ZkARDcAsE9wEUCywC3um2Ka: '100000000000' +- DdzFFzCqrht2Hmtw1WRzqgnRHLHc21erPB53aJwab67UAaHay89fMiJqQ89TB4e149dCRNDsqacvYm14yLVRSPEbPAkF4D6qTziYEf34: '100000000000' +- DdzFFzCqrhskmq1rWnPEH8AUWqJuBXtRMRrz12QkRjWFS1eb6zkq3EsjmXn8WyU6AZHWWk6SLzre72qqsFmfUyASHHWjCophUNQtZqEp: '100000000000' +- DdzFFzCqrhsvzDsvN9Sv5ASJo9ALQaHCpTr359qMhybZHJja74anQDiRSkFWrcN5CvsreedBeewJNNnAjBTYsKWy4dMT1zrX1uCGp5GW: '100000000000' +- DdzFFzCqrhse4U322kYnW4K9V3p5DoE6Z6oYNLsyfztQn6kbNxvpyrkixCoGB4VFZzFuHAMCjE5ueCPSHPbz3JZPG4iUTZUu1SVyo9qM: '100000000000' +- DdzFFzCqrht4uV7aS42kcmGAW5SGNenww7QJCa97Lez9wwPGqT7mADBUFrCUjX82ftf4hCVDENqumXfVKPpgErRMaynt3nweu4bbeMbv: '100000000000' +- DdzFFzCqrht6o6uoFEtsNDPFRFhR4DmgSGmCYaDHAzcuV6PtyrZkPJN6AMbiBE6BkBGR4aioUYdwFVBgxuTsPYGjypZ1kAtXnjXQQEL7: '100000000000' +- DdzFFzCqrhsjFqjm7WR5ZxnCgX4rUcCtK6AKTtfxZ2nq6mG6mh9JiTjVdQw5UZtaW37b8RUZcaH3nzES2jme2bLiiWxLQ4rYmW5tMJgf: '100000000000' +- DdzFFzCqrhskK2z1eVbDqzMpxcMCa6VbCwoX21Gq4SJYkgAYJuUGbV3YYfy4qDfAoxKcnGbZw3dFxG1hmX7ciYP9NSoci7gWjtzxZLQB: '100000000000' +- DdzFFzCqrhsp1VCERc9JF2Z3zxCmuFqCb6unSA37mRhfDtoMwityiMu94y9bAjdrfw82eLCG2Gma8LurTmt7VS8hPh8viSmuhrhGQYrk: '100000000000' +- DdzFFzCqrhskq2aGJFn1ktTs7QxEkGR6fUyEX4tnGkMqm6b6oRaU4ecjS9pmALGpGQE3roBPdJcitu7ek89WCvDmPc8BrUwandzXrjb7: '100000000000' +- DdzFFzCqrhtACHAaVWPhDNEpQELtgxC1hKJhvmPMJxDmgW4GSNBPfTJfQTUZusdAcR9raHgFa7Rc4GjpYdEfY2adAAXu5UtzrQDhgmnu: '100000000000' +- DdzFFzCqrhsuFkk97VQXq6LZD1SxEHvu9QAZCghaEnqugvvJEVismR5unpPpoAphVXSSarBSB7CQNd4PdtgkuyrQsW8hWTZXBgudX5FN: '100000000000' +- DdzFFzCqrhsmn928sFHooNxxqNhfN6YVxyhVT774MrJpCwVRFHaf6wG5SCbv9NwRyRdFoeWEcD7fX8XiGmSnCgosU3HEmi6iGizEDjvo: '100000000000' +- DdzFFzCqrht9Rx81VgehV84mqJiyWkNkhP2n9Jr6LEvGtXCPeDsX5zM86JJELau1XqRRvGZLTA8Ybsu4bim2kCrSykXiw4yHPeQ6zhJW: '100000000000' +- DdzFFzCqrhszsGjmn6TztgRLBLogNcLSQDnhaQXqHhCv6J1CBVSuaB43jKVp5NcyBPYdw5ScNaDdHUMsLEtbGWnhym42zUEkMg66r8UY: '100000000000' +- DdzFFzCqrhsp1fdrEw9nkeR72wNPiRw75ayiUtGyiCvn5T1XZnhM9cd3A42uX4gGsfXHtXMsJ7WUMgphAT9aX1Cct8bbYbBnsGqtbpgM: '100000000000' +- DdzFFzCqrhswseYvnMZtSrdXQd1B1oL35mC9eUKGZvvESmBDSx7EUAH2xoAHtKv3T8bUz9GcD5aDqMg25tHpBx8mhDyTbN7vxRSPUGQw: '100000000000' +- DdzFFzCqrhsmGC46MxTWh11T95Z3MhMG5m5S51z6Eatq5VGA7b7wEgH7VJ99uVgyFsUx3T212neZbS7WZQxoeFMNLMoPHC4PvJDyKuLZ: '100000000000' +- DdzFFzCqrhsuv7nZw6AKfE621zCeggTMT1nAckJbp931rgnHxj4cUG4KfxLg4MfJsvNm9ZNcRAjeU4yH6HrF6MoQpMFJQKCRG7ymXtEJ: '100000000000' +- DdzFFzCqrhswyrxiuXDhMYvTpmUwowm7nBjSBaq2sVogFF5KMYLfniumZGV5GSKmTnE3HDUEcg17SFsB7FXSsCTB31JEEtwpCS2EhoW3: '100000000000' +- DdzFFzCqrhsscwofDdwRdoug4Yj43xVMTRqSc87Af8vWvyPL8ctmY3YBZbHNf7pkKv7rYezPYak8gFqhCof37ZVR1JM5QpQMqsM1j1Gb: '100000000000' +- DdzFFzCqrht35BG5VRCEb7jrS8Zm5eMfFNo6HwtGr2cx6FGDdZYZMAnmaSyh9yvMdKzpSEJsWcBrQPTXqkLLh7Kr2sxr8sY1PJCtMNq4: '100000000000' +- DdzFFzCqrhsqcNVurMcLit9T2ZCtGaThHqDtjiQk8XbUwTWwpzELWb7kL5m8pxaunQFxeB6QQGgeo48gcmqxw7SZY8Eg9XYD5cZ5uKVW: '100000000000' +- DdzFFzCqrhtCQeGBhZT34bctGEd3DY86M5nYAFomdnaBLHMizEbNNcbqTpywmHazqob734QzFU9FLVkEPWjxBoxeAFioQvHHSJsGpkbY: '100000000000' +- DdzFFzCqrht3EWhQFghHH1TPiKPTj286dcAq2QhNSjPe34ZqZo4HYcnUJDQFapAbBvXqnS5rDBJXwZqSLVf6t4FtfeBDxaXtNvzdT7SW: '100000000000' +- DdzFFzCqrhsdq1PHyUk3DcdR7kf54QpXLGpJT5hYcDLRcxaWhvNVrCsqu6GKZt5RPjbV1Q31cBDCsVVMqg2xiwk93kSXwnQAn8w3LK3K: '100000000000' +- DdzFFzCqrht4bPYAu3rPj9dNH584Ms7pBfPPEQ8cSLouZ5vMyt9k4Z8f2iyATEq1kqp3n8Rgbw3iFiLxVWS1HiZSuZ3ogUHzrZjf73Uq: '100000000000' +- DdzFFzCqrhsm8HcYs4oSAFqbNqE4dmvtwjZXgaBHJJPNeW8M35PC6tMwnzcvP8k93YvUNChnYPzSNvsivXbWfYEDFFPLWpf3EUxyAQRd: '100000000000' +- DdzFFzCqrhspqVPRJJ82goLXmwUWgav3VKes4QR3wpJgBfF75UV5Z57gSrvb8Sikk98X2FK7j9rFVts2Nz78pL8sFEQDyKtywyJz3CUM: '100000000000' +- DdzFFzCqrhsoedW1ZV9sRi6fiDP3fijjdwBScYQL9LHmjttTW3qeACHKHmAUqzmTjggcxt9gcz4mMxFNYGJkhia22aaUTyJQqHfRbJBY: '100000000000' +- DdzFFzCqrht1mTMgt8AYo1RiZYPHE1KZ6mN2DvEPper57SgFWHyqozbXoDPwfqcqg7j1PKhU2Fz6Ts1kKvtTy3adQBM2qzLpN5NnMLPg: '100000000000' +- DdzFFzCqrhsko6ir4rSwzXDvTMGD4hsijQxvQYw3Xb6pftKLnY41j4Eie5T4qHeKSBFdxNDEyCpbY9Dzjy7FFstDsAUdTe63JEAYccvD: '100000000000' +- DdzFFzCqrhtBWQZs4fZiv3ZH2awqci59MkYCoS5VXK2hSZuGLHnHvPLn1nNPgRf1eyZW1F3uKHBZcphbh1G4PRzDsxpxLF55h2Y6Ds3Y: '100000000000' +- DdzFFzCqrhshm6GhHtsgLgYj8Ww76zZe4DV5teHjAfrtezrZnzLHeneZDU9iFujyJ5N4QT9yzBX8RKDHKQn2DWp2mY5CN7t96Ym2su7S: '100000000000' +- DdzFFzCqrhsyt33EA24bfsxWeQeRmxqkKCPsq4SXmDfsV8mwEcMeveXsaJpXUXBn3Fjrt1vDtvaECjWspxKo4ZcW9juBLhzEYx9HenLY: '100000000000' +- DdzFFzCqrhsqF7uoaT7xgeMp9sAf6nTYecmdsQWxZdFNyDCmczaUn4wCQLMJfxALrCvwZmJpkVn6ig1mM6LFX6jcQRsMi9MyRSjM9tur: '100000000000' +- DdzFFzCqrhsftvhD4KEfsa5PXhtEXf1K3AwtJnT4jXDMMgEEAD7gVsK6YKb5M8Phk6cZsuFnoBoDBHdBtGJngSumT6DS1iZD9xSbbFSK: '100000000000' +- DdzFFzCqrhsePcXjw3jMJtXX59Q7LTTeMqXjRNas1Hcg6xEqAbL13HoWTv3fLJoXQ537GiQrM17WLPyVEBSfJiWJ4qRTdLZhUnoTwZmQ: '100000000000' +- DdzFFzCqrht598xTNcbgJnUvKz8L298hdPYdx3QuJiC9MvszQQs3WNSi4KDk6cWjzZTuZNJcMRKmKNHpeBeGoSBhyjnnQWNJoxxhqxt9: '100000000000' +- DdzFFzCqrhsuci83wQjAuydNm37t9qrmPf2a15kCbnnwTo6j33ZfU8YmK9ekc1n5A5cGcCgAkXZeXMz4R9hMnm5qWvP3GFBjv5hbXs3W: '100000000000' +- DdzFFzCqrhsvTaSoS3EK7hc6EVjVYFA2jyKLsb7Hwy96Q2dvJ3nnhdS5Fayxqmp6nrg1rCVr7RAojgNnTYHX2CBZ46zFxCmgs4wwkLqC: '100000000000' +- DdzFFzCqrht4y1H2dmZjKLicsPaGKiV3nbgPDy9quTkibDWyDxkHJdyQoCjEsNYwTa6MVT1jCpdzmULarPWWDAHgRXLiRDmB3ELhWrbt: '100000000000' +- DdzFFzCqrhtBMJt9hwoGbvwPvfJBQCUMkkmh612kbdAsuW2b3P1y5Tmd6Dm1FYYhbVitQsxVeV7ErfPKPYCP5eZ2GKmeqawNWsVjG7qb: '100000000000' +- DdzFFzCqrht4FThHVnPfHeNa9nHgk6hiH5oRyvKB7oPCF4JTcrkAGWucFiPvsu6ghq9egZNpLvFvcGgjd8a4CgNw3fv5PAsjc2eF1Mu5: '100000000000' +- DdzFFzCqrhsuK1xmMjeNjp8iNhNmDRLmVSRJddNMCnarR2Q1S6QhZH1CrKAoQA3uTRcu2uUVB18jFuscFVan9wfVLv9nMiHzvzb6EGiU: '100000000000' +- DdzFFzCqrht7xu1ThbvWAGihXyoAZSfdRZbZaEvoVoTQ218tzjLCVVAWdmKEnvEXnDtSvS5gKJ26LR94aXjwpkZefGhZPipiu6xoQVBS: '100000000000' +- DdzFFzCqrht6h8wFKpA4QZjACXa5ULSNnSMP5JjeviGB3JiFvqHiScsA1EMMERBUF2z8FsEv1y8iFCqCLx2o8iG7vNRf4Ego78Eid68v: '100000000000' +- DdzFFzCqrhsz55qcBZWT48xn18Stbms8KdULWBh147jwTStQ8K4ECj3BYB8uSnegDZ2EzZQKkcpstuqPS68zZiAUNJPqFN24mEMoLtAp: '100000000000' +- DdzFFzCqrhso1S2dBxNyzg3UhRzPqW9jAwN1Uy8GVZPKMXXLsSaFw5hq4MRSunJQ45gDbsFAQFwF3ZcwFfozPpkaeHYVwFZEL8bA8bhe: '100000000000' +- DdzFFzCqrhtAev96FEZw8pZVRUFEPJThZ27Gtm9mDWVCt43RXo57FMuF9ZFYztyQ9QJM5KqGd1BQyzdos4gdaYbyzoLXtGxJGYVYoJAv: '100000000000' +- DdzFFzCqrhsecM4JhNsDQBu9iS64LGGFMrGJrZRA3WDDa51bAVtY9VDRSacwP3nNURxtCbFXpFPGaMJnCRknTYyupWt28uUN3hbakW1T: '100000000000' +- DdzFFzCqrhsf3RjyaGJ3ctLEdfZMr8SpHnbGTUzEXxw1V8uENw4N8BGEXnpJhVMnYoKyiYvvHQaNNhpoo4ZpVt5gy8oXiu2ur96RUSF7: '100000000000' +- DdzFFzCqrhszhC9dk1PDjBNeqCwrkkZroQrmoXhn3i3hhsBdmx7fi2uSYFs28VGjurXxeF4Ve1PAYVa8MpSZ4iDy3t3pjKf1y3YrNBoV: '100000000000' +- DdzFFzCqrht5ukJkfXpPgoQHWxXJP3PUjXLg126hSLWyz7DDubuFAsVoWGvpXhcET3B8RVk6pT3ffH4TWP166Z7RhDbawDKWUVmcCaDd: '100000000000' +- DdzFFzCqrhsqyxfVji35rFdco7BBvRa2zPVHwX7GYP6ruYsnS5ebhrqoZFPAg75rXVEE15UJgEyMxKcbaknM5kvfmvYMMs4ubQgEm2sJ: '100000000000' +- DdzFFzCqrht8N7Svk2Vc9wuCkWTk2WvET1iRxwkakR31UWDp6y6Bz8sJtjSRGjBWbjiaMGu67iS16nSpMMXZ25b4aUZ2BYfdzYeSgsek: '100000000000' +- DdzFFzCqrhsqSZrmAQtW27JsZXzCZKekUBEeNhtorW2TcKg29MG1xQkuzif6mJGycsWBiyv3YKw7G5tpM3UvhhopuwPx5tuuFPNXNWDz: '100000000000' +- DdzFFzCqrht8cxT4gBj5g4FZ1Nih5PRfe12mv4J8m1PpDd4LofMihn96oCfbhyh2gZmBrERwptJUD3wgVYhjMuK6z8QsxnpELRgtJbmj: '100000000000' +- DdzFFzCqrhsrhPc7AgutQv9g8TUF6UQNXMDFqq1Ak3pQvK2cwrdg5924TW449hhwxFC8HcgSiJFDwsHtW7hc44XpKr8VNMaVkMho8Qpc: '100000000000' +- DdzFFzCqrhtAHYHESKJ8qwYy5QKyGMHBsN5hKKzLDpPZo4YDDHqnbE2KGMy4m98JEvGWRbQZ4K6Lmpnu4jiwKgeiv8Xb3Y1k21GkQNyT: '100000000000' +- DdzFFzCqrhshWphRtzfuCWYLJjgUxdH25WE8wtM5tSC5oQvSEHmBhXEYvp7oPtsn7NPsVF3vpkFgNVkNzkAzz7dSnVpGcK6DDR5vjYLB: '100000000000' +- DdzFFzCqrht9gED4v9iCwctdj1GmJByGLZSESFXCmW2LBS6uMJAzMmmgph25zphKiTaMy2Sd9qBSVYMDy4FiMQgNHjgWnQSZSWynTF2W: '100000000000' +- DdzFFzCqrhswGabYQ8k3qENLQu9zDw5wzeCaj4TqKgoUSdCaBGCdFWTQmvwn9zexmk13AVzus5GvQRZew49PxRAc15KAXzvkU5w3XjK6: '100000000000' +- DdzFFzCqrhtBKUS6RG2zETFgi8Aw5KxgXpgaiiCs7hMeKmouHSaQi9Jpyn9N1N3rZUJUi7jsDCkuBDdtsaz6ZT2Smz1WxbriWodvp4oU: '100000000000' +- DdzFFzCqrhsrFpZrnR8p5nDAp5w8PVk6CHWDfZNF2G83erd6y64TK8bmHHfSXXiXZAmN2xYbruEPFSoh9XFziSWTdpUNn38UShYNwidG: '100000000000' +- DdzFFzCqrhsoFMCcVAtQ2xgPLqV53CpgcAZjxTLkrqzrkGpRVwU21gqeu9zUi4PyxBdfEL8gHdPsSF7DhLuU7cseB4hVbjv4eX6EWZLe: '100000000000' +- DdzFFzCqrht3hR8rWXM6RTp2yTAMk981YZdenZQGWpyiPwXRRCaCWqJzk13kfaP9LnLrPY34cSjEe6mnKQDvRwyWyannc5MFB9wSE4wB: '100000000000' +- DdzFFzCqrhsqQ3S4M4GrJ6xzSD3HhA6XpEjUzRE5dKmfmaWvdamGzZYq9h7ZSDM32zr4Mja38zso8qFhJiM1oCTckjnDEsUDxS2MGX4e: '100000000000' +- DdzFFzCqrhspJvB8ZbSgbQk4kkr84N28BVieeGDHQ3mSxreLQaMdWSk8M5Nt2qXdQ75Cpj2VBgXmupkoRjGbdr5vYHnhD5mduhdZA2a7: '100000000000' +- DdzFFzCqrhsm34xyD3JT9kebupvpZMGNvp9gsFfChjGPMZ6Jfqj6jVRFV7wWbvVDhLtcPQrzvkNDgy9mNkfzZGntfGgLdHmdkHC2VjPD: '100000000000' +- DdzFFzCqrhsuXrMEpjhkHrWAhi1AwYEAzWjS8nkFSBTsFxoUSyX4rVExeZYJBrsXH5WtBBXBbQfSL5JKdgD9PezWqU97AbhZnLWiu2wc: '100000000000' +- DdzFFzCqrhssp3cHWwX3dbpmbT6q7NM9NMHrLBXXBPpGcM7YiNxCNCWttAWspZuhMMvvtJhSHj7Sz5GopKGqBVNB4s4wcEaFNXoG9Wt6: '100000000000' +- DdzFFzCqrhsuZGbagphdmToSyBfShaBenxrGqb6AyG6afNZgVianCQPF2xTdrqHGMQFSrXgUSA4G6745reAdUAiHapeXW95yGsR7ZdSJ: '100000000000' +- DdzFFzCqrhtCyezYjfeok8vQc1nhaEXt9nES1LcmVM5f37cLERJtzP4Dyw9sNrBH5q8FgqKajVFX8cD2jqNHn34rpPDPRcV3NdJHzXrG: '100000000000' +- DdzFFzCqrht12QSQENL6dgBqh11eNWHziyAgoYfjs34P75iAV8iFyLGiuLPKehqw4f1r9M2sayNxxJ6QpCeY27EFQtkwJ1xvyLqBsx8P: '100000000000' +- DdzFFzCqrhsjmVaxFq3LqaebaWp6Q6vzf1Pf3JLe1sX2iUkAAkzbF6EP6A22gWfN6dDjU4eMWB5YfyGNQ5xX16WMG1MqFja9hv2gyAqv: '100000000000' +- DdzFFzCqrht3s6trpmevq8wY32vjMe9feXVJR73VvfrbzVd5qM8iTLyDVKYfynoTsv3VjgwMLGEu9ZPeUFLHHzQPec6kYUYt2b1Tb28R: '100000000000' +- DdzFFzCqrht73tSGrXM34JSxYSnYfaaXeYXPc6d6iNeExruHXVmZW8hjExmNqAy2WatVFyenpQBZhFf8YePrexqmN87Cc8gUeuH5b5Ds: '100000000000' +- DdzFFzCqrhskgLs1wihXSPNNF3oVJPc3GvFhsgiThv2nohxqBjVWhxPqoNSsRdDyQACLqwuG2rA32gLVM2W9K6Fbn1k1APs7PpRmJuUQ: '100000000000' +- DdzFFzCqrhsmnVwuUHTkYbUGDTHkdGXKxP4UZbfkDUVC5P5RTTXYPs6tEGBeFTmkvZ1JT4Qvr91WZt3ACnxYXKh7zDQkDqa1XAehEU9u: '100000000000' +- DdzFFzCqrht75PZoF7J1LGF67Z7DzdPUuxx5hDohvcv5abfBySf9Tf11BQ768m8QVoNRzhs7GsAmHZgjME93YLjwhN5SJ1eUoKQNH91m: '100000000000' +- DdzFFzCqrhsithh7MYQH3AVcAEtm4BaQP81SZzrdYEXguf2otCZb6PMrLo2fYDfCEvozwX6bugzXF7BB5U5kQ5gueeMQXHjjWGV4hCSQ: '100000000000' +- DdzFFzCqrhsuUAmP5L5UH5yP3UmxfSdUNRAAr7dRz7T4EzK1x9y2PyLBexj88AM2xnvX8hFCtGtcTdHvkzrzjScwYR3odJgXomks5tZ6: '100000000000' +- DdzFFzCqrhtBcj6beVnGkn3X886MS3X4HsCvztkxzibwD3zqm4EFDfUbbESeVT5Q97GryFhrgMBFrnTT2CTsPChabvXbnYfi5DAfUrip: '100000000000' +- DdzFFzCqrht2C8t9xzvyso8WdFc99MBaxQTa2KiFanCNhjMwuU7XhfSSdiM13KpP9r4ZLJLvCmZAngh9FpxYjgTdmzCK3roAxJNMD5qU: '100000000000' +- DdzFFzCqrhseH7ZxVicLqNLFRS6tHi63aYDBygFHWX7kiPi4WJjZLozmTnyPnn36QvzwLn8J2D3ZpffUUiuPh5MHVU77kAM1gJRZTUwt: '100000000000' +- DdzFFzCqrhsvs8BUJkUjkezzNbPkW1UbvvtHQv4pRsJFn9swkWe7VNuYbCGZpL7APXp5wUNfQoypDjvGFtTQ1GttA6yhDEYBKUMCMGpp: '100000000000' +- DdzFFzCqrht1Sdu3bWsFMW6CATc3RA8etJnh1cW9yqt6PtymxnSMkywKn7pemzgwAixjPfQtsPde2D7K5tB6EhZiWx2TakFWnRPa6Ry6: '100000000000' +- DdzFFzCqrhszNktP2h3X4SM3Fsgj7fsi5mg2wRpEABjvQbUBz4kr7zUBJR4UNRj8BNR3xBcrqRHPVMwqB2ZM3ypiXbVmQrTXWDxRr5C4: '100000000000' +- DdzFFzCqrht4nAThDbLoesmynPijtqvF2E1qPWXTqUvxdBxnZDSYNWQKR15zmpMyqPppYXgJszUa2w7v8Pe4iJNuFE9vhL8BaWvv2h8X: '100000000000' +- DdzFFzCqrhszqtLSk9Vn2GhHkJpzhKWgigLSEf2a29EuuaoFLT9naACVqRMbo2sUPQetxj7XyuQtDcNzkYvJm3cEazBk4YPnRhfudJU2: '100000000000' +- DdzFFzCqrhsobennBPaegJ9DS7vmpLHsHaMRSzjpkHcGET3xgk46WPsBZPLj8muG5uE3RYHg3ta12ApWDuqb7M1pVqRQr9PDjvjfW4zD: '100000000000' +- DdzFFzCqrhsi2LJqKjzjx2dPYoVeNkZSY6xU3ExFSCMAqjRxhsjRqChk83SgnRR9U9PNkUM1fUQGsHPWwE88RDoCEpXBKswnanCFRF4s: '100000000000' +- DdzFFzCqrhsvNLeV88Sca18ngaoXZMj5AKrAuiArrZPBCjvMpmM46TjpHwwgLe7jkYF83MyimCyyBrg2DZ3tNwTUyPh4arAanUXPxoyj: '100000000000' +- DdzFFzCqrhtDDEXJUVpwk3hY7Qoov9qZ8opjoVfJUDXiN34Z6GtaKTsKDJugfrNshAW89f95jvKtrUeKeXMedehNcukU4uBoZmmdvm79: '100000000000' +- DdzFFzCqrht8okn63zWJeU3YXfAMvWhVR5xX3waQdayPRznMzJSoFZ6VexxywugCGKJk8rmrF7jCGPmpg1J1yPBYM2aaXMpqyAnSMhGa: '100000000000' +- DdzFFzCqrhsh8HnjvhZHNGLRDLQyNPoWVBsWJNGEwrUzjaxjP4mz4ky8qQfU5zHpjsHRENK6UwRApkhYaE5Yix5R4z4YKvi1NejavrYB: '100000000000' +- DdzFFzCqrhsg2t5zWdHhi4YC3CdDw5WrH641V263P43ic6Bjvvm1W251SdaHXEphYdmYo4Sufd1aBo2YexVMWqSG7pShg2NBdXCw3qez: '100000000000' +- DdzFFzCqrhsmW4eK2tgHhwv3VUUHY9G64nSEVLohbwKEMBvRTr1Xv3KaBHNVSFD3NYXWh3Pu35cdRJgww3siyaPfQsnt3jpCiQPgcxzX: '100000000000' +- DdzFFzCqrhskCNPjm9y7NuURa34Lu3yNNBb352nucX1CgN2AMMEjZVzcGmPqd8J11c9ZN5fAY655bsPRb7ZRR2MijKTJBpZpbyf9VauJ: '100000000000' +- DdzFFzCqrhsn4wGL1xBJgNBjDx5f1ZDnZ5hdzLwKufQ7pTt37VCu5DCo3QKKXWair2SkgVsp5nRmSLnd89hYCHv4foJdD9mKR85JDMF9: '100000000000' +- DdzFFzCqrhszHW4NZjXiLozNvPfAShzZFPGoVxkqQRDynKcX8AN3vTsaMvioYGGNaQ3CB1jjGWdVUyQQ3psxPJo2hqPysgGC95ZG7KCV: '100000000000' +- DdzFFzCqrhtAxyD6YE2oQeWUxhTT87a3cYrSQuyySHqMq3PcLB4zc8iBaVKJFvibvtNhUHZVrxXoRRvEzEFXoykeLBJQkkvDKCYsPB7e: '100000000000' +- DdzFFzCqrht3p5bxND6yegJRgsq54ozEsPPMXUoJFesuDSiGSEs9gNuAQ7Mdj68YKayNqNbsBPD2iXubR1Gm3AWmP8ysoBgE8e28ZZ6K: '100000000000' +- DdzFFzCqrht8Tt3RDcCQMeYnmv26JV3SpXSoHeuSoZGQYLz2PFqv4nc2MsUM4G4MLcavwbZK4Nt3KeGhwHZ6bceasgU3h5CoF15cLog4: '100000000000' +- DdzFFzCqrhsi3hDdrT2qt7FyREyj9opL3qyxyZGhx7yqcsQMJk1KRsyVbm9fuuckcxJojmKi5Bf3hUARymuYmKKirYVDJWpYuZRycuYa: '100000000000' +- DdzFFzCqrht4p2xyooBkGxduQ9Twyzk9poePc8tSaTRaV8pJ474tZJHRUsoVXFJd3NuNWDnn6nWtEcaD5kXSmn1A6urVQSHy2voSrPsj: '100000000000' +- DdzFFzCqrhsuMmJM2URCSETY8GMe4kYiDdrjGv8R8LKynQWcqNf5KTJ51Bff873w14RuWitzwz9wGQZh2jEh4dDvEow97tK1Ds6tZU7q: '100000000000' +- DdzFFzCqrht2eyyngsrqLW1zRVWZo1Ap2XQTJW23EQQVNnngjQx7BvCTEQHDdpnuRSTXnCkmqx8T1rQrNPAa9kugM5cfuNmvSUoBp5CL: '100000000000' +- DdzFFzCqrht8sJAdGeKLFEragNooh1JoJFANmxJwXGXeBgAkxLApJVcRJbWkU5fh4aEdqwtJVFibvHZG6nRivKK57Ws6suw6H29bocam: '100000000000' +- DdzFFzCqrhshNbqqjHqmwbuBMA6LNG7LFS1CiWdcotPWokBLjHxzCW6d2jW5WvCfVsie2oyx7HrnGWQacyvV2D7u4FS5LfiUr1gdfNXy: '100000000000' +- DdzFFzCqrht5u2qAJnrPfjTw6GQLRbAyX4ToJrXd5f5iTtTRT8Qvuf7Mwnu9qvE6sRKBWqy1jc2mXKAzRwkx2CXtiAUTZzdD124X1EsS: '100000000000' +- DdzFFzCqrht1e3sfnY8C5qm8BtTZ7JgeJewWXj6AseZwa8pBXc8s59gkcPfjMXdTncnXA2QhHoYcBdrbB4Wevt7AZJPEEf2ahGqTKmBR: '100000000000' +- DdzFFzCqrhsduBmKoiyV5JMptPcsx92vEjEP1XB83vFZ9PuJHwL4LbT1YUahftueutWrd7sCxm95WoyvXVKz4mR2kw5XjXHMKvtz1wNY: '100000000000' +- DdzFFzCqrht1dQaTmtvXDRftmxo9eAE5AKP3gH9rtsqNdCKkLWYWkswhBXSJKp2HoWmwJc2o7bEYk3xLUVMHfxia1eJKnEX5Li2aZVWB: '100000000000' +- DdzFFzCqrht4KnDKouTA9vbkDTEG4BHbYQK3wEYKu4HdZaSLsY9Ahk6NQaAMvRBZH1k41ndaCdJMWFeFEXhRjmALEqkJQM9mPZH3mypV: '100000000000' +- DdzFFzCqrht7ReDSccYqFgHS3n7SsxSXupaV6EbDANTHxzNXDQfeKR52Yybqu5SEbJeCgzEzTmPuSUf5MdJ845KDAszaEuvkX4paDSH3: '100000000000' +- DdzFFzCqrht3ZBz7b9mXXDpWPornBjmdBFD9kUuGDPcH5iwteStxgykjV4F6vE15ZPcPrDKLVsdMuFXUrL1sjM9ZqCEewjGxdDphXqYX: '100000000000' +- DdzFFzCqrhskCKLa5Jxu6EgcqGAg4bQ65GqT8dfirk4bQwbid7sU9bZBRqXPDQNZdCr3xN7d2EwKmB5Z46MRZQc4yHi86YS21Ve1JfBU: '100000000000' +- DdzFFzCqrhsscBVBBosRRqdzV9bZLLhw2HRWwJPnPccbnWesthDRmYzgFvSYpmxxGfFwhb5ZoMhLenmWnurrUxrrsRQKEZw67m319eFa: '100000000000' +- DdzFFzCqrhsugi59n2nGhmcffPZUP3fn2R3YBkiuUjYEipfRYsmg9LdZCh7kzLbahK8yxq4R2U75LV5MZXEdCsR5ZWiXWnoSNnreEPm9: '100000000000' +- DdzFFzCqrhspMZg6QHJ9Qi1HWxwsKKfsYwhv1QAFSFYopirBFTgA8C24h1XsSrAJ5vY4vm4nRSF7YCLdjcGYcCnocAPtpLdA39P3zqKk: '100000000000' +- DdzFFzCqrhsu5AuJ2K94J1DZVpE12wK1g3QhFXekPqNHXTtoaWoe9CJjBwEakoJNL75TUPkVe5EroKEx9CFXU1nZBsBRZRAgvKZ3wZBs: '100000000000' +- DdzFFzCqrhsy1cnk1fixDdwwwvVapurcTdFMMT1cd2rshSZ7Lm24eE4gqsC1CkBotNpzumaqgSk4azFZ54XhitsLYjiiffdi2KDoDxFz: '100000000000' +- DdzFFzCqrht8JenNkJeSvk5Rf896wJKS114RsmvYm6YBkvLzg2cDgxue1myB5ExAf2yFQkp1tV76wFQTCTcxvXwzGAB9UnGVcvcVbALm: '100000000000' +- DdzFFzCqrhsfoPMc4WkrD2WnPE9PcVEDgCkKk65dCqALi3rAodXB3Vqq2TkXW26cNXeSXvzobPB31WArwxB6fFArViPAkvAzz31ge3hP: '100000000000' +- DdzFFzCqrhsr3ndNijDuvAvZLUWKRfpqoaUuVf2g22gtqqmmDQk3eAL7aRZ3bik2yZGGruZYw7yzwbbawEhcKmozaDf2pMt8iFzCQTQD: '100000000000' +- DdzFFzCqrhsoDAv22hhbouwKscBNRRnh2mBcUwHBcfLH17uxN4tfsQWJDpwpna96SsUYUk9p4qJoX63ApmPq9hwrJohFiQMHAYzFoPU1: '100000000000' +- DdzFFzCqrhsjD8ifeVpNo6Me5hyTsRPgB5K7JZ5GJqPeemqCgBQTcg5wew1GkZfojYGUu8KtWSVXCo5fYn6VjC3jsCYNvamTdHfVLp13: '100000000000' +- DdzFFzCqrht3ncXQfqXbjMzuGtQhfsCdHuX1FbFDXn8seoFJpuEbTZKBUujyYmxiSgXafqkrkKwHeZtLbzp15BwrngZS9qzbMTnMsfjA: '100000000000' +- DdzFFzCqrhskFgBrTWsyX3tVzybbwDJHXmLRo4ZKA1Xh2xyaqitGvHWzhoXrjcXbsd9yY1Yz7oXvCj3QwC2QWjbAikFu1H72nN6rPKFL: '100000000000' +- DdzFFzCqrht8aFzSNnc8NHzADWNufedzf2EcJCAzK1pHiWXPPfN85EKx5Ze1sohdDwQXvcbu4Eu38QNdYTwgQ1SPscU2AMYqH3xN5SsN: '100000000000' +- DdzFFzCqrhtBd7BmyTGMUQVbCuicqF4MoB8itzgFQyeKQxr1uu7C3KVJ9G5xdQ1cp3URRDMQKtoKWyyU18ALzaqwLnnRaXskACYbYHw8: '100000000000' +- DdzFFzCqrhseDfLmPMXexSYHT5BcuqrCaLaj7Utv89HSHEXM6JJhnj5AJCEJLPaihW28LaY5x7bGfDzk3bTzYEnXZAeWvHbCrigaHpp5: '100000000000' +- DdzFFzCqrhsqDaw44Zg3FDLkXJW7RiTSSwH3KhfSZKREuQ3DkRc2ybmTDSckMm8632uWHishffQU2cg7VnMJW4o7w4LYpWxfnTe4HDfn: '100000000000' +- DdzFFzCqrht6RqwmevaghJLgy3jzL6WVhokmij3LesHpCLzCjKFNoqFwDqYapAY9yaxwWdPMPxyKPqtnuYxXLxAMnproe1vbgGAEYm9W: '100000000000' +- DdzFFzCqrht5n2AygCgM6WUYdahf2pDj1FM63w4zkPuuHQyY2xyeZsZVugmTiuRhoRFQZtp2zc4HTyEUM6WycDwzM7PqD3WBbHUMepi5: '100000000000' +- DdzFFzCqrhsrbaaoa39zNKrgikG3oU7VirBumeBNHaSFC8KYVpcPBLcK7MXoyvdA5TedJ5VMV7f4PL6KpPXn3uv3wzA7FxsRaiYbwnLA: '100000000000' +- DdzFFzCqrht7xzE2W2G4fzDaW4LhjDhLtmwkebh5txAMtmASqijb4DQmngnNFAmsFg4tc1F9KwJsLHw7daqivU298o9MCUS1Nz3H37FK: '100000000000' +- DdzFFzCqrht87hXb2121ZpurC6DTq2rX5FXf8MDzr6n2sgjAukmTQSir2VJZPfZRiqyKke18SsZbNUzfLTmB2DQ976YhbhpBmXvrnyVZ: '100000000000' +- DdzFFzCqrhsnKFXnVRkWWdwiuvJMLhbzoGvh438MrFW3hVGKuwD9zrZBEK6KN9EoM7L9Z6x5q9eWUftDMb17vbdynURoMpyqMr6sj73L: '100000000000' +- DdzFFzCqrhtCYz1ZSzuXUDxumhL9jVTbCLNeRXMhe6fcbdxH4K4X64c6dtbPhqeouDpxpjtMdhP8L3GawDwNQdfLfHhaSxehTzxw9g9d: '100000000000' +- DdzFFzCqrhsiMd7DsqPa8Dtjv4y9hVUAKoZARSQL1Kv7k4KBWorMKZtEkEGXtBthhq3Bis1k3oNmyyVngGKxZvEwuCCjmeqbVZfUn965: '100000000000' +- DdzFFzCqrhsjB9y6Jpsnrni4HA81ZnsjFwTP6261yCfa3FDdMUA3F52joWZihrZNVtJAtNzn7rFUEUXkThnJcYxGGygupndZFd2d2ZR5: '100000000000' +- DdzFFzCqrhsg84vsepmwRoYqu6mwiafT2LgQcdD9GTHSWCZ93pEyUGboG9rjEghPdkLZU2GwERD4PU9TR9ZaEzuKQ3ghRWJ5kj9iqK3h: '100000000000' +- DdzFFzCqrhshUzE8cruj5JWmYakNzg63P9FWD2B489A1GwBRM1e8fsqk7fCVR6nb5mTYJrrjAdqMw8JcjafbhdYAGsG5CFf9P5Ust8hX: '100000000000' +- DdzFFzCqrhseTr3SeFrLf2trTfAen97FhGp1w5ruErzF9Zhkt28CeUHbMnppvCubLAxpBRi46MJJDt6BHttogo22ccNzhCUCykJmKaq3: '100000000000' +- DdzFFzCqrhsiHAUy6W5aJe6PJEk5S6ZnSjSDocM4kK6Yr9H4NgqPProyvZu33K2FnrTYWF3hqVwWcpioeGzCYHXaEVGn72xkaMmJKUA1: '100000000000' +- DdzFFzCqrht2JtTkwghp9gtdyFjQQSS6CcsiZ5KjDqMr8WXuim5K12h3A4CExaSqqLG75qxsGKF6vUVJwVqwmuZJxmBDRd4rSccj3vZp: '100000000000' +- DdzFFzCqrhsn81Bif4S4TvArGbSuFiUDjmMudN4jcWecbLV1ELMz1VRjPVDTjipRz1MxcgKcdYMLo4ZS9QgKz1YWFJqKqVzpj7or24ga: '100000000000' +- DdzFFzCqrht7K7s4BhN8Q79CGFXi6f3bZ6z9dEMiTpNSc2zSC27hLUqf6ZK6KtNHbsxBfSW9iVcWK2R2Wn1NdEZW7GLk9xLVPYX5UXSc: '100000000000' +- DdzFFzCqrht6Q65AVXCpoG3F1jzktnwc9xDkXeHw6pQt5wMMUik4Wj1NdRfRVmhyCubT88vCjYbVZDaZ1LuTocf1VkJeSoEvBhCV577h: '100000000000' +- DdzFFzCqrhsygQoj4xwJv5LfeWaefUSm5a25iZL6iLotro4KCvW25uKpuspxY19oVZrQQrWLTwG9krC2zBu2eBAQ3Vj1QJi78kzRxhps: '100000000000' +- DdzFFzCqrhsr2ceCax8aJ48gHNYughZx9YT3Vh3KdmM5T1zv25BoZ2M5NNHXrMfX4w2HBnF7yQLzdXCe86XnABoonahWMtuedDLGrgmQ: '100000000000' +- DdzFFzCqrhstjXnHbw5ivuEjLxxM5orLACAtQMR6JW5YT1aeAAS4nbFUX3VnXcyhT2Tv26ofxCCRzx1HV65K8Ttz757C3bh766hQi6js: '100000000000' +- DdzFFzCqrhskyhURJWsNsjWYNUxnYb2cZGZcAfLRB2QvHuuaQcC8KdtikSwJwow8fZMLgmAqvYv2JeV9XZTrR2oWyYUswuQn3AbypaR1: '100000000000' +- DdzFFzCqrhsrxDiKst3RAgLE8L5b2RCHXfe2rshMDCgcY1qhXgp8cSfrmBt82ueuRbmpeZpqyS6uZoFF8Ga2qu3DcD63q3eYh5ZP6RXB: '100000000000' +- DdzFFzCqrht7L4XNRPyf6UbCU7THasU41YZJ4mJuDrTobBBg8g9PCzBcJ2DavVDz3DVP8LmsaSWCG5BkkMomRunQJDRYK7YHJh8X3LKu: '100000000000' +- DdzFFzCqrhsxQGZSRbGbTP5EgMEoCg5FxKDwAeUZek5QpVKMvEhgYodz2ucvzRzBjZh7vQiT3uDFR2uzp5YiQatKRdkeudRE7U26Pi1G: '100000000000' +- DdzFFzCqrhsmk7Fzyfm89Yb35PA3osmkLie7BFdwqyGsko7wQSCJd8qyk2ZNDZT5EiJJ6scgNRok86jizRGQiKsLcbUdji8mNb9eCq6S: '100000000000' +- DdzFFzCqrhseXFuFSSPZRK749ZLP7Bq1aD6hqz2wpQgUg5c8f315VBVuYL6fLuk14T6E5b2tATCPhNoy2b8gzyxUaC5fhBXFDxMuMTBh: '100000000000' +- DdzFFzCqrhsreXyoKhFgZDdiu537ovwixw3D1zkqsG9wzUJPjhb4KvppugKZRCyeaEEVNKNom6DRzRXD5iLfrxENUFkH6hP8dcZddcaL: '100000000000' +- DdzFFzCqrhsq7gpp8qXHzQUuWQYZr4ETQ2L1T8SPUiwSftsPgoFdS8TRLWBpgYzU2HaB2rcRVmta4uWd3XT4bmSKSYBCbRgEb5sAvSg2: '100000000000' +- DdzFFzCqrht67GhRFmxLNzFRRr1vyanuTbmeh66ioHxhbiZWEmJDs9V2WJsdyfvRf6NhETLzcF43bUnd98cgfeUyv44PxCdqnXJnTsGj: '100000000000' +- DdzFFzCqrhstx7L6UY5wZtuDVZQkndMWAmokSKcgZMudqDX3MMnGyZhy1J6RnWrYdGPU9YeJhUc33gCRuu5EE5dgERCiu2ebUXdRipGW: '100000000000' +- DdzFFzCqrhszuv7rHKgyuUAYhnGrtH5y7XdWhV64fgfeJSFny7Ytj5dPKLbF75TDGtvd5NXbEdPDrAtbadY4oHw5CB3B63Fbt8CvXhNg: '100000000000' +- DdzFFzCqrhso9cmx6G4y3cxKjYHKktTNHVQ1AW91RntyVAA1Co64puNeoAKN5udYyDrRc5Sf7oD8aSpsapnwFD7K5ptRGnALNGaTBnvF: '100000000000' +- DdzFFzCqrhsxTWZMDFRbUNJw752A8qFMLZXSDVbtxm4mwDJFZo8dMeCYAN64BMYmq5ZvwiKSNFAEM3M8gjYyvtjRwxqh28GJqiZ7SuXr: '100000000000' +- DdzFFzCqrhsgcV7HvRC2ccD5fDwr5BodgSouKZzfso5kqyGPU38f8Pe2wm8JnQCGkD3JpUPCQTtG7ExJZKmT5DCuUkv8Rvutm4KPVTp5: '100000000000' +- DdzFFzCqrhsgTD2ozBXhkfdS9KL2xJPGhi4wSnBFPWYFpVoo8jCBZMkbxbhPN6EnxFvhrJzfwBXqnqR5891wwfSy3qkKHsJJX4B78TEZ: '100000000000' +- DdzFFzCqrhspWNxXjAWCBbiQkeBiBMiGJpz1vUthRcoFhmKrBidcBR9gqQBzU13iS2DwWFsCtYJkTh5XGyEVr8SRxZ5B779njrX8o8Aj: '100000000000' +- DdzFFzCqrhstLwTVCQhuyL4h8b4FP7KApykt4QAjwD4wpoXhUqJ5Uu9DGG3cT2bgjih3c8QjvFnmtSUg53vZtZvmxVcWa9GPxWeTUmBu: '100000000000' +- DdzFFzCqrhtCeDtgG6wDBEACTRJRWXrWidgpnJJj1JeY2aZd3ssevtZXuwVSbRLSRhUCHAoE22CH9TSRxgevqyY37X7FnMQJvZrzaaFM: '100000000000' +- DdzFFzCqrht8BGBTenpg6FNtYb4iJd82b1d8eNpoCFe2gNewFRZy37BmhLr8fMz8AXVveuavmbpja3cC9rZidJ2rzGG9Fu1GGKg2ivVM: '100000000000' +- DdzFFzCqrhshWdbKro6b24uC7vYuVPLZ6btQbE84xoW4ZafZbyuAsZLnadHShGhuaJ1geeiH318gAns3So9hbz83Fn3HcD1877Hg3qPP: '100000000000' +- DdzFFzCqrhsdqAnHuL33afabJ99YKS9xFkMGcHLBBFkmTWM8YJswTApxUFZCU1f81xs9RMU1hJk1b1X9UqbzF7de7UnnMoJCGQaQNFit: '100000000000' +- DdzFFzCqrht3ouyQW1UL7uqaL1mc5GsCQdivs8m8PDmghKphNL2mPjB6TYRUVZkmiZC34ttS8aq35aAUkeVxikpEBNpBjUxPCvWdYEaG: '100000000000' +- DdzFFzCqrhswpxXZm1yVcTk4xiVSkjw2HeBbGtPqK8PE9ETbXKBkBo6uobqRA6fENt8XiZ5TPoyWnkHsTvpCQ3C2jvg8FnAsgo3pHzcf: '100000000000' +- DdzFFzCqrhtAABG8CSJHtdqBbRkyeRfpS96g3zLc5fhLQcDAcbRYFt3G8Y6uhrwoHMUTyWooUa6VeEM4bCLpD6y3nvWjc2tSDzAZAuo3: '100000000000' +- DdzFFzCqrhssTWme7rjdx54rTfz9KEeef59ghJHksxcPL1c9dsDeNuqhF1cXBSYJVNQR82wDFx6jtUhYDKprC7Ru7vJeZhPzroJvJ6Ug: '100000000000' +- DdzFFzCqrhsuNKHnBS7rFUf7sNDBzDFQhxSX7zudomuQVoSUXb8u4ooTVKSEtd3Ue8qTba3EJLUcAMVJMqLp49pEfwkHYms959gcMx92: '100000000000' +- DdzFFzCqrht6SMHNTsHsBJXbsA9AU19TTJCy8VJoBVE9FcK25zhq7opUvPs1roHtiNhdL99DasqT8yBMd3eqaFn33LNYJYQDYu4wq666: '100000000000' +- DdzFFzCqrht9MJ1VfVugY1tYdaZuSn1stggZTAZVruQ2P5NW5osCWLGbkX6XVr2bmmJrNFqN8eMtm6onopdANk5K8C8y7AG3RStfpAie: '100000000000' +- DdzFFzCqrht8hncXkj6aJ5k9aQnL79b3SuTbmSVXLjC5W8Zk5RznV2WQpvKy4BZKrdSQd7DAWGSSWY2UHkLMTv231ZFzLVL2b6YZJuaE: '100000000000' +- DdzFFzCqrhsg1g7uBuUWDDLxVrevbFkw8C7neo9jsU6dh1d1oRZ8Xw6dFmL7zzEG8PnndWAZbbEqMr4ipaweW71skFJpskmqPc67nQtZ: '100000000000' +- DdzFFzCqrhssqqTmU3zzS1KxQbRPb5URNf8XUbsdXDujQjhNXb2K8LbeeJPD5f9vhCiRe2r4BYNriFRjbsavFTVSe5i86zH2Rs6twWzr: '100000000000' +- DdzFFzCqrhsz2Yz2xcn4mG3ZTY9XPGjfSPDRKGycps24ZJcjd4fkf4CbGZstbLEpiNbpuwNsT6vBK8mVXvrk2wC4AnM6m3NKzQx4mGiq: '100000000000' +- DdzFFzCqrhtARWeGotFeY1BrUA9g9pDzLfJmN7VEB6Bd4i8r8KQC5ijgihYVPiqsw5ZMj98C9wbuEchxf6pBYiD6WDgZCo6MSksV6uK7: '100000000000' +- DdzFFzCqrhshhonGcBv2dbEKsCPWnv2dcpFY1GfZwnGEY3c5aFCu231ZWd4PSy1da5WrWhgGFzLSc4Sa88WLmx7AwGKyzmbMMhVhbzwt: '100000000000' +- DdzFFzCqrhstZUb3muPTBBMMtvdCtaGaffpBphWfPSRpfiuWtU57QxaSwEcsXwUygN5PCNnsum4EEat7zGH83fSCiyz1JzZZVg2gunHm: '100000000000' +- DdzFFzCqrhshEDcRtbXHoD7yddStcC4R5upihoWXMY1Lt3cYRfk8zn7WHrrEgms4GwR3B1hP8Hdt1BmRfWtq7NG1VN8X5m5nzp2hYwMz: '100000000000' +- DdzFFzCqrhsoxAj134nTLUQQML8Yjdyye6HAGpsQjtM4V1KpCu7eNH89XMqGJkTTQPXMdjTkeF47BXedjf4MfQhDDdyZ6KvRCREXBfcs: '100000000000' +- DdzFFzCqrhtA8gCxis2ok7VmUAcUf6Lg1itbvvau9NTzicFot1gN6SGVmGLksB8EZDtgZfv2aX8XUrpK8u5AyK65eJrH3MaKui1XB4NV: '100000000000' +- DdzFFzCqrht3AbCSwur2UZDNzXfcRYJvGjFwVWpmW7WWhrAUUDoJrt9R1WjzdmPq1GyGALMnnFQa8kxQCSQPjtA5uJ7GaCTT9W9BPwir: '100000000000' +- DdzFFzCqrhsuopMfCzNikpQKnDgbe6e15Eb6CKGdm5nFmNwT3GarAjRVcE1KER4grMDq3A1i6HDF4kTJxJRpQdogzMj5TRKuukVDshWr: '100000000000' +- DdzFFzCqrhsjFQTt9miGQCMFjNcqb82egFSVTXL1x3EvmMENZ9PH6y4gK3uvgM34nZsgvHDa9ZAbVoYya8C6HEVoSMJiyGeocpuT1Mcb: '100000000000' +- DdzFFzCqrhtAKBD25eMMUS2Vow4eghk58nYwfif5JP5pdQkAD7yuzmzMJaN3gJSYWNJqFJikoMepdwWFtauAUayHuYhEemHKCY7fDcSH: '100000000000' +- DdzFFzCqrhsqxHdeT6WQxjLgwKvMpiUsTePQopSdodAVjbotG8Y21FKaxTBjd1uzKTMhRzHuVG3yHJbbxFoZpT9eK3QQ6hGFzeZbimWY: '100000000000' +- DdzFFzCqrhso71omgseidDjnQibyiZH2maGbPzKfoRuH7B4mXuCqT5FENHiyDL8qvuuviScbtjcfie9ejM8kywsBwLs2ShZkST47HWyA: '100000000000' +- DdzFFzCqrhse2wXHgsdG2Qd3aJgUAXza6j2DBtwTfmjBnSBh1VxK3u6S1E6qQDZrX7bfLuNissUmeAFQSgVMWKCupXb2KKPDFUPEcZqW: '100000000000' +- DdzFFzCqrhstGqU3NQnutrPccuL4nwYfShPmayGJuEa7sGokS6UCovzbA3sm4EAxBPaBF3iPSqvF1FQH5rrVbSQ6siRStX4CgbZSXPCF: '100000000000' +- DdzFFzCqrht88Zc1gLdusPtk6WNABbaaBiTz8681cJ8VXwy4dLdaHSJcBY6px7NSjJ3fevJLSaE1q3eZGNhjR4o7rc8RH4oEpFL7B4Qs: '100000000000' +- DdzFFzCqrht9rVFmiPYEVZTAsgF8cuqsD5vsSTTT7NZyfYQdMdPWnXXyxpZepdoQf4AxmjhtGRAu1r9Uf7SprNJTwUPtLGRXrsegr2py: '100000000000' +- DdzFFzCqrhtBY2YrGRC2DFHhLRegn1Gi7aDuJbR3wVS97YpaV3Rc1SxvKRGNjwVQkzBXo6AQv5UpskGFtmFABRN2LjfDUTpmYHcAU6ck: '100000000000' +- DdzFFzCqrhsuKN4keaM7FaGh3GvD62BzV7f3NRJ3NjkVpPMxcuEDZeDRsPxiKm12vKY8hcoAAgKBvF79M6Gne7AJG1sJ4kP47VqPQyFp: '100000000000' +- DdzFFzCqrhsfZXJQ6wuXPxobyaykc9WKeDWM4mVzkzmaCj2ZWgUnMHQDjEsCGM49fskEuSxsSQ1Ft1gzqpxFK2PacHSkzQvCCbWVZGZV: '100000000000' +- DdzFFzCqrht3Yho2v1aAZvNFA7n3C9dRpvPj6jd7MWWXNvg4K1FkhPXLRkeyp9EBQbfHucBKda2tWy87DUrMZHj2MMrjbHc7bqYZKSwA: '100000000000' +- DdzFFzCqrhsfek215p9sn1KaZ5eeYnE8M1JN4ijCXs4Y8QFt7mVZf5bZxpMW2ne8ESCU8twRwmyfJGD4YvUo7pmMBEDTkxWZt9Hsm5Cv: '100000000000' +- DdzFFzCqrhtApZdLq7QavRUv3yhstvAUBBnqKogfCsSSQv2Xmuffp43shQt4EXcrVEXbBxLnqwUeA7qXwBGvQLu2t8jYZ1syq9qzg3ub: '100000000000' +- DdzFFzCqrht8cSRbfuJ2CjKdzGjWn7337xoiLW7b15r84A7dirUxsqpLNesyJwtBjQduNQxF8hK8VnFaup3AVogtedukS6NhNHd3cn8e: '100000000000' +- DdzFFzCqrhsijhdyfNuk6YWkW6P9xtT6qKnM7yNj587d4rPhmLwtn2geu1w2CN9GaScuqwmVyc9WYSYEnQG9mpVC4jwzL4Ttkf1DbYdp: '100000000000' +- DdzFFzCqrhtCtC8CA3ubpopY5Jn1KW4Wj8EmQfxo7mbiTi6Tb93zCE1L8V1AGrF6U7mY3MqPGAshauE4yPtsydAVhrrSSnVQvoRqeDnC: '100000000000' +- DdzFFzCqrhsruE4E1Jno9WVQ77i598VZ2SemdfbiiDX2qHKmszQdegMHfqVFoKXEpaXXk9CN68wVa2NYhVZkpMMZihkiCzBzNcjfV4Ai: '100000000000' +- DdzFFzCqrhss7WeV2Ax9RSwjF2UbiL3YrZrxk4gnLqvBpj28xJDyotVUKiGNph4CgGXF5KeoJgrfmkWpArt6bEEZZCBgQnyo8tLuAQYj: '100000000000' +- DdzFFzCqrht8k86spcvSjiPBntvLNka99aHhZeckFobRGbpciXkJzLeBcnorPVUMxiJ2Lun96essWGkD8C4XkgoJiFdBZKkiAAqdsXHo: '100000000000' +- DdzFFzCqrhsvDcQuSCVE8icer8zxdtQrTR2kgGV2NwVrT4iSyhXBDgmEXofpgByrQTxx73BttjsM77TzVxpfZTUUhsGjjkHd4oxGEQ2j: '100000000000' +- DdzFFzCqrhspLBxBUc7N7RCVs1n1mVHhUGjd4sUkR7czgxWVmfxizFkCN4H32MTMSLSah9AGEDzrFvV1hz5a9NiVDc7iVEAJDdaA4RHn: '100000000000' +- DdzFFzCqrhtD2aZNiRmwwWMD5KtSfV4K72djBmVr9ckD1RAQw7PPm9HYDRb5yZiZkhb3zrAVfXyHfG4SzEaN7MkY12Z19FEBe4rNHpzn: '100000000000' +- DdzFFzCqrhstFTfQ4whUJSMFHSHGnQ9XywzKXNoXo9awSpWZKu4ujUn6SCyKFAz1wdJcX77bXABsgEespXqKo7dbdGof6Tu2THeUimAE: '100000000000' +- DdzFFzCqrhtBUTPtDvD8Akuhp5T7J9NmpYeDhJeDWE6myJUwB1vLg1ftyHoddCo5EgpmAcBEwvC9Jkb3JEL3M9eJA1zmjM1Rc7jqwCGV: '100000000000' +- DdzFFzCqrhsfcGeyPDw5tn1cvkTrcAWZEB8FnzLjxPHnseLzqp6iKjYt8ZfYjeD5AyGRKuLiF3VuGpJi9MMk2K9jMZPHxuEQNKAKqiTS: '100000000000' +- DdzFFzCqrhsgZ2XfLjWdqs1DBP6iD5EftmwwnqYenXjtLWm3NiUTnCX5tivVSJfPabEB2v5UWRJ7w6xYpvPZFu3anCa8kDBwZhSEmQm7: '100000000000' +- DdzFFzCqrht9HMM8Ju3sKNFJ9SDFaE8fY4P2mvW2oNCkYDmxuAFJfpZ7ZQawfH13B6F35q96e323KcyRTXDMYNWeSVKyQQB4txFW9529: '100000000000' +- DdzFFzCqrhsyRyBo52ruuxBUeogukmBWFHxvpc9EJmtidXhYZZcA2xHb3QiztLPB5U6RhbjdJNHuWdUEQcXRRdtasgS6SrddyM73aodu: '100000000000' +- DdzFFzCqrhsyQMi4f2CzPMdvMWj3xfrPyG1vQsKDrZ2RxuXffji4Mw9ntg9t7T6uoNqzENzKK3t36Rv8jGbdjZDnfHdNsBZa25SgR6Dy: '100000000000' +- DdzFFzCqrhshsbfGrn7h7AhzHRubspv8faJJNFmGw1GZaSdUsMYN1aQM69FjReT6fnaaMDhHbRa45j22Cji5u9YZrxcsrn3hWB3K7fuX: '100000000000' +- DdzFFzCqrht67ZkDD3fv91tGUPtUNQ5ALjCDJudgqGXTX7TRMTvz2SqT156vPrPZJbQ3SRetVBk3R9KWs6QGPhvRZjpuQ64e8warHoix: '100000000000' +- DdzFFzCqrht9oQ6Sefw3BsYG4fWnftowNz1JriCn7zV1zx8dqqd3sTShno9EfhZAPSX1W8tBRMySEtmonKtTm3K2Pk883p5wTQJxv3Ky: '100000000000' +- DdzFFzCqrhsjNT5kanxnF22UG6fRojRB5sGXjuMEyy9GDz13aXpbT7wdUgx8ChdHThVwwBLvmXweQQVyR79KTvmY3fPEhXmQ9JdNgSRK: '100000000000' +- DdzFFzCqrhsg2meWxvZAoqXtDn8i67BLhFfz6MjZJd1CXfyBV1XwY8JopEr7LBEruqqFqBD9UogzEvN3Nz5RqAdL8LUoiMjgSAMLokZi: '100000000000' +- DdzFFzCqrht34u8WkcZWsY1sZ5oqGLEPani1AKeHZDfrXUAPf6ZpTWfMjCWAgWq3zdECWZ6JQxbwaUdrLPKwSMDC9dmPF3j6EEsAZhr2: '100000000000' +- DdzFFzCqrhsxtMtsJU3DkzrCUJ5rUnqRj5zET7DSTyfFptYRps4v6EEpvkqvYje4WrWdZmuR6BAKYvZSDu5r15xixoBQinVGMCRyRSP1: '100000000000' +- DdzFFzCqrht2NDSR5FjTGUguVM8bsHxbAAjWL9hK8cPv6x76MqwvFzFduFxsPvhk1Wihss5nPWg7jX3Jtw7a9pQar5DQJdEPLbubW7AK: '100000000000' +- DdzFFzCqrhsn5YM1sUjML62hvuAqtFbmZfXyrWBHTx3ibYQQL2sx7XL3LPVfi4Htb9i5QTLBDdVRf2p4yUYVuLu4Sb1Vq5ekVNDCdRUV: '100000000000' +- DdzFFzCqrhstjRCW8CMTRsQtm2js3eNY8g6Himv9wRq2nGqHGcxrjjnJWg8sfv6n9XmgH2HUtdn74ECXAo46Pquba6ARDL3FWnhpNtZq: '100000000000' +- DdzFFzCqrhshgLViiP5Ri669Pi7DWr4dJaWP3JWR63uKxUJPBkhSczY5hsmDBF5psF6Qztbm5ZEvuqwtzu6xD19KuHW2v47ao8cz7HQ8: '100000000000' +- DdzFFzCqrhswp48YcybJsKQjSoHU1d633kAvp1e2b8mTe1zWNfqkTR13uivbBEKwoUW9wZXzvJsu2AQRN7QCnxf86PboJYSfKCTziEFm: '100000000000' +- DdzFFzCqrhszfK9mSNKmkz59BQqrrw7QaCjh3RePKQLMfptzaWMhH93PvDZpUVrL6k3Rpju13HpPvtTQ6PGj38aMFTQW6dgZ9FnnV2KA: '100000000000' +- DdzFFzCqrht41ppXhcQH9LiWms8TacShaaa9aKF9PDGNcLmYcRaZWTKQWLtaEH93A56YbMBTYExiRs1dcNWQJ4gBwvV9Rnz3HtZu7zDr: '100000000000' +- DdzFFzCqrhsh9Q4etAbbGNGsDQ8PWDDywgaZcULNeuYDeozumxWS2iT8WTCWHeoNedBZrgevcVxjjRiyqndxHpQEZJ33tsbiLciPND1W: '100000000000' +- DdzFFzCqrhspRdmyRj9vHsSiERi3mxuJt3fNbdLuXwofUR69cqSk86EZqrkVyQgsxXXsouwgvHSLrbeS4wivsTnPF2ZcrinspBjVqLQC: '100000000000' +- DdzFFzCqrhsricu1G19ztma1NfZre4cMtj8teA7qxVXyJZRtJCqQqEAUgsCdAj6NoHFCMJtSquenLg8HrT1q4XrVngKobLeN8TNizEqG: '100000000000' +- DdzFFzCqrhstwetBwgiVZsTGFeJWHn1PG5vPGZEU52a2ECkGd8x7yxyBKwMjbnjRSd7M2KsDYj4JDPDzeZFXqRGzpjBc7APj5nKCsFW1: '100000000000' +- DdzFFzCqrhsrweSHCw4eG5M9HLeabUjomKhVpMyPQu751b27Q6G2sYwkb8YjeCtE6mTPHxdemBpyi1Rg9XwQvfje1YbHDvZPLE5Pj13W: '100000000000' +- DdzFFzCqrht774BLMpeBxqUmUPVw8hc5FvwTabDYq5zGYrMCzQLVnsevFFg4FrArwmMEQ6jTuTnPjYzSS2R4KcdWqhCugH2MJ7HtwAx8: '100000000000' +- DdzFFzCqrht335VM94gwfV5V6wbPyV3DziLGmDBcDdChsvEqtn7pXaSR5q5DEEGpsK3fgizpoHNFNUFLFKimteAfiZzR8hH4rPveHeHT: '100000000000' +- DdzFFzCqrhsu6yUWUgdrrX33z8PsAizZhSS83CMxT7BRJNk7GrCQhUvJGyxojQsUftZxwtac6uujAaGerMdxacQZcVto95YUvduw4ZxE: '100000000000' +- DdzFFzCqrht1cYp4zCqsUxFTMGiiuseKicKMYYQjcMyo3Lnn7rWFqEReyuWhR36mC7dErgUP9umgmj2hS3Dd1wXcFGSeUZ8ssYvDxX9x: '100000000000' +- DdzFFzCqrht6Sxt4d1p4joo64HqTmNhXRrpbi2A1nVMyZDwAGhY59XXNKghG33wuDVxbGYJYRXD3FzJUi45qm4aALNXSDLRfDe2go6nA: '100000000000' +- DdzFFzCqrht8gsu8hjZyo6ig1znmnxihU8fwK4LRbpMfSf4HkwuXdEwGgkVgbsWk7jiyNRcYmfvqCUw6cEcap58Vai9wsgyZDS8ttg3A: '100000000000' +- DdzFFzCqrhsfJpvLcHBZfGzUL8fyGNB3rSMDHWVsKbbSdRhLt4NbqoY3nufQBMRzpCtNTZcGFiWHpoRqKY7fLXGJ9D3aS5RmdW1Aw6ee: '100000000000' +- DdzFFzCqrhsfQ1Ksa5Pqifh2mLqZhwxxDf6pknCgSwSLdGVWMeBcLwNPBzpT3yS24vF3EbiQwnxpqKmjcyfmmYJtap72XR8YsRaZL9TQ: '100000000000' +- DdzFFzCqrhswAFhUif2wtB5ZieXzKVV77xkkejzM27g9QWnX942Lwqgp2hY9uUdcffZhS2TU5gYnAmYQAF4wC1ccz3hv4dSHktfMDuSj: '100000000000' +- DdzFFzCqrht4gzeTABzgcMEHf4Kfw74FcUGLJhrbbaSAaw5zC5euhuTxtFPx5Y6XLDAjFPWtaZmKjsvCz6C6UyLQTTEWUu3W9xTmGw8X: '100000000000' +- DdzFFzCqrht6W2ZaCijsjKAf1cLLkVKWiusmEjirYLAJ74X4a6eGSBa9y5tGDxYHYNs2t6BZ47LZ8k4LzjT1qHh3g6WVREp4Uz7v61bt: '100000000000' +- DdzFFzCqrhssH8NAvZAGxj4gME9Cjp86DpNoH3KtpLDYdMMJTJMvcS1YgQFXURBbzKf7yQaGb46JKJWRfAgwSqExHwehWAG1cj1WbYHx: '100000000000' +- DdzFFzCqrhtA9CPR9ybbU4Ya3yDhxwhonvWU96AqypXzq47LC4ke1omoo8uoqGSd6XL43do7njy8empxtvazToGUSSQsUjrSCBpKTj1v: '100000000000' +- DdzFFzCqrhsneb6wahYrepbDMGEop9Xrp6LUiiD2o2GHfCSVtCNxYxJJXqw5iW3Hta6poasNr2CJX8mUinRurbdRnF2PCBDAAqiTiCoR: '100000000000' +- DdzFFzCqrhsq7QfyHaRfHte89XAtYGog36uvbUbSP7AwZCXcqdg5EoUYtHEUyBSwemH4VT3v22xui9pJnYvE1dFVEqXyjMoQb19Cb7Y4: '100000000000' +- DdzFFzCqrhsh4puDVySVKZsLDgUpqtf14yBsQbuEbr6VZ4j8xET7PzKYHtKQMnp6jzSGM3gshAivQhotU9KTSVPBhYHGhbfHZrw2teCa: '100000000000' +- DdzFFzCqrht3D8ajpqRwofh4jEABV7rQQdRKQDKboZ88sZqfmYHVYCiq67jR4BkpZ7GkGnwkTdVikgHzU3hNAzfJDPd5LdWNfLPJLyXV: '100000000000' +- DdzFFzCqrhsofubXZFZoD9jXoQTQAf15ZHXtKSYkg5ASPCBtJ6fowQV8Zn145PwnqjsHb96y1USEEYvfzqHwX9jpsRJYhEM9f4T5NeUS: '100000000000' +- DdzFFzCqrhsmBK5csecqbvVW7F9m2CB8PFWaqEckNwTf4cw8LYp9ywz5VWVebCPhLLzsKUvXvUPCBD3T42yDr4H7fujLsB8GBMvQ48f2: '100000000000' +- DdzFFzCqrhseJ8oNov4FDoHsMube8TPRguHXnzJkqwvCXFEhY1rwHf9TbCxrXLni9RpMXSJsYrdg9eqvWw8GxkvGsHy6kZS96dArYUpP: '100000000000' +- DdzFFzCqrht786QiJDAbM57AXmuY8mxFUY3hiwKfSzd6DPhx7HbWwSJU5AfHrYCdKfktDVkNRCE6LH2ABR9t1sfuAyk2Gfw3QVyuEpAF: '100000000000' +- DdzFFzCqrhskdyo7sWSbC4u1baaSDvs3i8jgSFPEz5b8LSWSZgYR4s4g3hcCt4hfhVMHQec7VjP1kT6WcDPgmEDy72mm7RatDYKswqXo: '100000000000' +- DdzFFzCqrht2CbY7YRP8TzfupL1hDGnhTpfzt8eqKzutzkUn6YFVNAzMg6xiaQHGT3TDuEkbsH44j2GykynhP7SAcLrmRX7hZiHvEtP3: '100000000000' +- DdzFFzCqrhsqhXkMqahoV8KxH3MGZ9ttFt3BQ51egE3fZSBPpjuzAqcd67uYFFPgyLww1E1T76rnFDVPWk5SoK3pk6hMGcwkAxwzVaxx: '100000000000' +- DdzFFzCqrhszV7peSPWBiz3VJQc5sss6CjaLK14ErvotFeKyYUrUjQhBsjsjYZwPCnzurcMqbedXdo7ouv7PExwfC1qqVDuYEuNiCggu: '100000000000' +- DdzFFzCqrhsujF7a7XyirMJuYh3VFXRitBRHpbSgfSiNpck7cTNmeft3oAiNpeRcSBaUfM1ndSptMBNFrxcrEYcPbHhwV2TV7BJ3wLWV: '100000000000' +- DdzFFzCqrht9DGXbSN7fHYxqK2SPm8CBL7s5mzKR4aRFNFJZVND8fHLymBnkvv61tFibtkLKQmaFtMM2A5NZFXi7zbDpieEqqcFMdFFu: '100000000000' +- DdzFFzCqrht3TgMjouHLWkAxFcuCxk8wx1XoG4p3gHCR1cdRZAtVmDqgSaLN1rPwiKzMBLR12GZhreFCdfBmdvr7tcagUMp2pUyEBo66: '100000000000' +- DdzFFzCqrht9zNDXrxDkztkQoKPNqAnW2SsMXLUbGyvEnamF9ytYkAP9RcJSjpCk8imtx37dWiMNfrXKZAStpmNKDXswvd7TskbmJ5iH: '100000000000' +- DdzFFzCqrhswUHvMPNgFVSpd1U5xpt4J74msDF51DhFCTNud7bhUt3d7ZfzupkgU2axa53igLU129Pk87DjFK3VJBWyFY1HzwGzGCk6p: '100000000000' +- DdzFFzCqrhtA3WXZPaUNZBoAchGS6sbTkkmAZeUt8YaMKPxBTCh4Y3HhfsAeNV7aEHRbKdrbUSPVmtk2aQiAiPDvCJW3Hx44NpVKS3fC: '100000000000' +- DdzFFzCqrhssNLTLnp45TsHmjgpxhEE497KCEqjXGTvP2YNuAZ4hR7SLDM3swmCiTo5ed92TkQyS5b3Vyy5ABq6JxeNp4222YdZTDSQG: '100000000000' +- DdzFFzCqrht3N3YQ43u8jJTkSxQteg6DxqwX6ADWbLVeXtDHdc2TtQfXSvWqEK33JKp6Mz5dnJBYu7i22PoYupoKsspav1QDksMn9WJ8: '100000000000' +- DdzFFzCqrhsjctXVagGk3vDSkjrYRxYZNm2tJJwHzeMeSTAiQQdJ2RK6qEojGPemKwJVVWmnLXndzjYiWMuJvtGnz2pkqYSfa5UiiwMP: '100000000000' +- DdzFFzCqrht7bhjZErXHxigm8TW3gjBQJNnQ3nr9tqYeBFqNkhsbE7rkm5DmqmXavNvkVGMYfcemhotpX6F634kkoXgJxBxmoqT3Dp9f: '100000000000' +- DdzFFzCqrht4fZ7bWmAaQV7JkgSEMvEuym5taFqDXqYn6GAiQTrbSqs8XFiU6W2rGje7cqYMNd9hJMbKhj46LBKWwJQsXRNJhPhBYUr1: '100000000000' +- DdzFFzCqrht1cZxgpaEKkGj6Hvijf5ZEvHkLNBjhTRsR3noM9y7Haj68pXag49J9Pj7SsQrSgY4aNXyQRK9w1vnPybGU9LEMobe2Wh9n: '100000000000' +- DdzFFzCqrhstgcXvdfkUk6HxcAtTs1Ys4WwxKPHiQM118enibwVLH8aPNY8TCBoKTh1g6m6D4Vq5dx3d9Jk7JmUekrH1ofxFBqkB4eNa: '100000000000' +- DdzFFzCqrhsoTcUtzM18LjEuNvHApod1apAyMkYeiaGgL6ArYL6Enx6z6LvDAiQrB8hUnjUYdoMBAguKbbPkUwb8UZnwGuD7aQ2ZyBL5: '100000000000' +- DdzFFzCqrhsmDxRBj7avPbTGGABQphJPDyPZotcXteNYcooSKfxZ5jyT6iDBZYAu9a6W6fPPWW62bXzXRWenEhqVEkXccrzDE6PX8UCF: '100000000000' +- DdzFFzCqrhskPhD7hk8Q91J2zNcmW9R4ybLpvrEU9URW9oANULhAh3StYxeHWRTuZh97RE3BioLLzUdAVMupFCeR3JTnnTg2btm33LVE: '100000000000' +- DdzFFzCqrhse7FaWK8CNGENKpywSPfnbLVDtC4zK2MAKXYQ6UuGrF6rA96AjQ6SvQ9dEmUgkDwP3WffUE2NctGtrjo1rk2Yg832vjS3v: '100000000000' +- DdzFFzCqrht67ksABwmf7pFKBR4KunDk1VCRvDj2XeLwKZvubmpjSd9xLxyBsJdjetGgvL4HRQkZXu7m3TAQG4cbkNeeoUHyxtkkXwep: '100000000000' +- DdzFFzCqrhses5fkMvvzWuUtkBGhdWaX7HFbSZfWWvDg7whKjPGG8wrxYqNRe7cceZ4YVbFuQ9SVQAYDerAoAiVEuGB4jxYQ428ibfVx: '100000000000' +- DdzFFzCqrhsnov55muSAXAEwocLzwMX9ArDTKTaHXztteiYfpPYBQDanGTUkGb5wMGQETtS2tEripCgrKToDZRNbAxY1iLNsJTtGXMqS: '100000000000' +- DdzFFzCqrhsj1KHd92eaHYMWusaMDShyefqD9j84rgdbwct9j1AB5kiDn8nbj7sQUB2REgAgQhXSdPt7musZf8xJuqmYBMXgJPxArCd4: '100000000000' +- DdzFFzCqrht1et62EbBABXtP9qHeV2pRaEU9cyqguBsxzbLJBsNUb5rmstfutHzvEYujaysyjiCFGvakczvCTLc8hLTGsm7vBrfSE5Gg: '100000000000' +- DdzFFzCqrht1cDmt7js3nsDrjobR8zFKiS5v1aYpNefvxCY8hsccq9YKkMZBp7yGxVQNLgxenRmXLa6eNVMU8EfmHBkCiDjPR2i3Cg77: '100000000000' +- DdzFFzCqrhsetQSZMV8r8GcknBKvT3iMUD5szcYEkik7vkHYnDVMdjzZuPDqLFbCVEic3zLSEdum4kovmCfcLoBDETqN84YhJqKBxMES: '100000000000' +- DdzFFzCqrhsh2jrDHdnhY9UZvnNrg9DNtuGUUrJNP1SDf29xm7w9fD2LVVcxYhAHbygZdcPrqLuUAdEnKDwCC14YARk8kRmDAuewPWo8: '100000000000' +- DdzFFzCqrhsxSZz71Xe1ER1MTk8JZCohNTzRCDrx2gv1n7ZhPxenu8eFkk8nEdgkpmYWj4DPeH2icwHNipHLyDdtv11hEmx1HUZ8REqm: '100000000000' +- DdzFFzCqrhsvdgurD6tgyCgTKzGnn542CRKEbJzKec6kc6cbmBH4E4wZngLyk1YLyxSrFdPbCUud3EncEQSQM7dLUSHPiDDxNikrDqoQ: '100000000000' +- DdzFFzCqrhsshqdyoZ4rEBhLwCjwtLMnVcZW8qGwqkwE4zx1MWRp2cUPrp7q86gUAYyrZdJ2QUH4Yk5orfYgEoeeqRk2NSLvBo1MH5jq: '100000000000' +- DdzFFzCqrht4jbeQLqNafwxfXoQXba8kRjz54BFGE7NFHNSoGioAFEZT1Dr1ikDyc9DyVXz6rNePZLaJUpTVHkLqwV12YswT6aQqxTSF: '100000000000' +- DdzFFzCqrhshnp81eRN5fZXuViBAtJ4fFRsWBQEVnRp5U6NWbkNAHRMnbR3uEDCeJnhBoMfzzqyHbSG4a8QMPa3hEPoznv1ivjQHxYVm: '100000000000' +- DdzFFzCqrhtCpt8VLw58giEDbveGi5AyYaADcU12HhZ4TzZX2AzqVYsXA7APHDR9Z7CNPUYb4x7CFrYiDmBUXRXpkHy1f7zqrTtaiWmY: '100000000000' +- DdzFFzCqrhsxyz68spbiaPoHwXBKxoD5ZbUpscwgu3waU7nLBXNfkzLTy8JfEqMz3qhX2wHqPapfxCo26qdySs28MTp9pZPy3TTeTgwd: '100000000000' +- DdzFFzCqrhsxLSS4VZTqcDDMawN12zMKyJzwLYq8Z4RjCM7Fm61JXHCiic1pfaf4hppMeZPiw2M3rQjiC2t4d74aXoDse8ta5Z3updzj: '100000000000' +- DdzFFzCqrhsfbEcs76dGUaYEJCorLheaQcy4Wv5ATGYTff321GZZWd2nJ9SedhTV2eNnmNhcpSe34LVaVaN4sEu3AUYGzM7cpma2pQ5e: '100000000000' +- DdzFFzCqrhso6PQiCqtH18UaK4CgAYKuvvTQ2R12o4jZ1miVtmBKTh5nLTM9ny6Fe679UZh6msXA64rEHSobVi8oieig3Qqag2ywRJmC: '100000000000' +- DdzFFzCqrhsw7HNhZ78mFEec3zRgJfZuhzyTtwAMqqP8Mr73pEFLqTgAk8qGTM4EnGoc44vvkkJRgJCSwLqFxsjePCbPKPBAeGund9Fz: '100000000000' +- DdzFFzCqrhstHsGLQsQhYRe2CB7BDNtfsqnuTdaD11zu7w2XugfMfXmJuMgMX7vBZr5pc9mwwpaAbQ77QM7LjJP6h2uhrYHBNxbv2zEt: '100000000000' +- DdzFFzCqrhstP1y7D5nGi1TXkPkrAv5rypvHtZE8YkD3r9fseTeD7Lc3EBMyRG2Z1o66u3bTpfm7Lp49LnhyBBGECyp6L72RouxFfF8d: '100000000000' +- DdzFFzCqrht8b23Vxk4XvUMDpqMiAr9eLuF1e9k1RzTCXNSNGEfZuqzJnuHeFwVnRy7vTxoNquj64ywoY8xaT4wEYPmt1QbvbQ2Prdam: '100000000000' +- DdzFFzCqrhsz1oyrwS3HQ8nAeK9yhPvC5vYrEE8jqmkixv4aKq1NudSn6giyNQQKuM3FhBGwMiJHhm6kYtMr7JQho1oGiKw5YAsAPrDi: '100000000000' +- DdzFFzCqrhsmWNTz3GNGH4okFgGcxRzBG94NiMnF5GzoaZk4LUMjT487DvRLvCJCAqrQe8X1RNeP7kX9NBieR5mqkmgbWxVd3uTQJkrx: '100000000000' +- DdzFFzCqrht7SbejtNAHvDRzqqipzjqFGXucGWZw2bPE9QrmAMEba4hzh6t1n64RJMDDbbSN5wE3ybEk2mLwFUmBPHoDoyoFGverPenQ: '100000000000' +- DdzFFzCqrhshvYUKNEbqNUyKbPhFiUjrG2wHucpw7t1ZP8Yk6YSGgrKe8U5hYmPUCMutkAM5UG6Mxw8TDs9tYBzsutEEXgS8L2gaBQiL: '100000000000' +- DdzFFzCqrht8hnLivYANprN4uhMqLAbVAvpkx547i4UHfiDAeMQ8623wbqc4teWU2zM6XBPhys66yChZPLqiLiL1Bx2LzcUBWirRmTra: '100000000000' +- DdzFFzCqrht3ShwB3C6aeVBQStc8oRo8mpqdCr4TmrzADwrz3ko26aqscvEUuFWE3JhwtKERy5Q9ihUYAK6AaiDXcV5yYt3e59ovZStd: '100000000000' +- DdzFFzCqrhsebz3EtfjTYr7ZEEnQcpHG2V6Gs7zjo3FLD2YyEk2KWFDQ42LNczHZJAD3GtjRx6hxNA4zTPbEDxGakJKP7TKnUfCfTwgh: '100000000000' +- DdzFFzCqrhsnUAt4kNHFcnZ6DWiHT9pbfMsBsn4SxUsWK8Snf8aDbskmKG95gLgyJQGkP76yedHhgEDw5ssRWeTThpss4YH7AvjJxea6: '100000000000' +- DdzFFzCqrhsjP4JFevxikr6zU8TpZSjnoBcG81iu2JoGrrwAgvNgdYeVYGKFzq93FCsqeBfmTR1ktyPQoF3V7kAcaxj8aD6Rtuwr9HoS: '100000000000' +- DdzFFzCqrhsrkt8MJdarX1ryE5DpYF8qLKdw7Pnz6S44yseEaByVsJDq8nDbgoJyNFNZGXKbXiaYqaLHEymWWgJT2Derz6zCRWgJ5VVV: '100000000000' +- DdzFFzCqrhsuaHCL3YetjZv4gbVtuiTydkk8bxYdS3QD38HdXv7QPu3i2Na4pegcUEhpvGvZrRJWd1EwZyaWwEtx2iT3D9yeboMWZ8fm: '100000000000' +- DdzFFzCqrhsspuoR5bGh7TGk7qpmrFYbSF13bibwZRaZA6fC1343UNC96H3fF4EjWr4yYxs93hyiB4FP4oET3DkdkKkwFthFrzcSfyTB: '100000000000' +- DdzFFzCqrht7ZSUtTzHASGtimVWkSEayKwAWdWS9ybTVyE9TjAixq5Rjw5NwE7BpaUqRmzNBmqQKeQahsEHJpU266tmJkx2cDWCrYpQZ: '100000000000' +- DdzFFzCqrhskbcDjS3TkPMLcfbqFN28uzoHXVbpAaEJRk3H5TKXWZkDqcQPsLA5EQKiTNDWqCEWFQMnPU99yeZgQxtn5bja48LtPwUn5: '100000000000' +- DdzFFzCqrht8isJrdTLQbE1qVCmoe4DY9uZsGiC6V9cJvxdvZBTLbmnx2wA7u8LMCiMDRDQZ67PJc6qgATvdjDmdvyAroAvmcJoXcbJX: '100000000000' +- DdzFFzCqrhsmSLni517VQDeKgi6NioEP3qdfh1q7EH3cxStiSsrQnnW2kYw1VzML2PBS7AuNwUaMZAAM3LfPSp1tX6UsaLAo2QTZG1uc: '100000000000' +- DdzFFzCqrhsxiFDvynFQEdNbwEjoxUwoYc88GC1aQUWpqorusBy1dyST6rX54cF33afGANNScdoYBtBd9TgZbmREuih9VqGrVFDqcVKH: '100000000000' +- DdzFFzCqrht61w95SBc4hCcYuZmd8mbmQ2X34xRjr7bvVGtfUXVBHy7HpAfzfYDxaaLNJHbr6tWby5xAqWnMospUxi2Hn5TFJ8k1u4hX: '100000000000' +- DdzFFzCqrhsrUmUNUR7fpRgSwHVJk3S61sfBpdiacCBmfiYvwKMdZocyVhUxdMa4Q1Nub4cQuKrdhkhqQXFqHtcbpsjVfXaVn8is57S2: '100000000000' +- DdzFFzCqrht1VoBf6Qh2cg2yWa72rJAmRSrKvJzvRT8fyN9vZzk9eFEF1S1tg3dMmKYj6hpjABP14gd6jqph8GsQzxNfkY4AmYVSnpXo: '100000000000' +- DdzFFzCqrht8gn3ATia2Nm3frGzNm5wJPSL3k4r9S33hgXWhBX7Kei8Yhwd99LtsfddYLV49bHid2QuVWv24eMBrQW72CiHmLH9wx77s: '100000000000' +- DdzFFzCqrhsh6qkNtSLLVybmaTFP8TxxxehP2P6mX4zLx2fp9yjBoDrLEP6UfgmpWNu4Xmx3XfpePoq8Z3xnybM9XcJsSR1CWsrXwxzU: '100000000000' +- DdzFFzCqrhst8Uw7gByKmaC9iWiJcdX6JXPBvKeY6H5cLgNovWX2bHrJpJn1ZFoB57AS6HDDz26EyBd1EW5SJus9js89LEjJaTmj6tbH: '100000000000' +- DdzFFzCqrht674UZJL5dJvsbRJPTERWPdcNKqhyw6WY2rQhg1bked72hyEhKtV5jQy69NwTj8512955M1oKkMv5pNzxd6UJrKsfXW7a1: '100000000000' +- DdzFFzCqrht5bgPw6xdXnB92xuCvUyJku17s6qZNZrVG7vJZ9ytGR3fhvwNSnS5rTUpJtJBnywJPWNionHhwugusHHnkDH2pnDv3dZGY: '100000000000' +- DdzFFzCqrht1WUNQWNky85reojZbvftJJE6BEwJoxHdh8A7hkJCz6YNEU1Tubvkdm6tKm9UoWZzjLsLybPHZd75mNmFBzsxv6hsjQ8TS: '100000000000' +- DdzFFzCqrht1sa38YvhKjmC8X7PksuxUPLJoMa4J6iZLHTVcTUPmug37aiTvNSKz1wecw3H9eBJAyW4iQY99ChvH6xYa4yk5GbpQC4jU: '100000000000' +- DdzFFzCqrhshKv1mrTmmVvMmv8RPVeF4F7BwuUMsQmMzh85mhUcG3LuGvKoNUeyScoX7B6AxQVwMJxmGyi4gcaiHdUgP1pzKubSKDJ35: '100000000000' +- DdzFFzCqrhtB3isMxmMqEinxsNuZFDUjEc8YiYPauQ6Wk1i7dBZNaREeELYdTPma27DC74wPwNHgUEx3ddA1UqzfGPm7LJsQ3aXeKyCU: '100000000000' +- DdzFFzCqrhsj5EJP8ixwzFQ2NAj2wz5DgBWqPqBRwXacK4D3v9QXomrVVupMvUnLWP7xMVJxTcQeXfGkxp2WCFwkgueHCnR8fzAP7wkS: '100000000000' +- DdzFFzCqrhsqmAPKepyznWeoPeheeWUmWcv2TL4hpRRT8hFajT3d96BE7n4WhK1weN18YR18M9onrTVqHdQVLvaLFf64PFDh1Cd4ouBn: '100000000000' +- DdzFFzCqrhtBe52zEhFjdGAsv7LkaYaX81Ho5yygUD8hLnhwxwoSiL2DyhU7YF4qyfcPfu6e8ZyViyhv279QbQMTVwqwt4Kd88Drmt1V: '100000000000' +- DdzFFzCqrhtBMoPC1cJbMPYeLLHay9qazoAqHmi6fAtgVkedcoWvUrkuANyzRwmL4oCuo5SsUwbLCvUTLyPKJv8bN1kd31Gan5hihJUQ: '100000000000' +- DdzFFzCqrht439benSkBHLrLHaicWnug6otuF8bLngSDYKpQZk4yg9tDhRuawuB8hWACk11qAULoGu9vM8UPqoYCdzmjRU5SYBGNe3wj: '100000000000' +- DdzFFzCqrhsvn3VAfc7C5ntUjZr7HDgmCREuiJdmy7YBDqWS6mYrmdRRZsc3FVcyA1xJLoNzjtkuhBqrFwpQLVTMe2AQBXZhT5RBMrED: '100000000000' +- DdzFFzCqrht1AD6wnMCZQYRXN7yPmnPFyn4ckJXcvfiwkxqJY21C9uimHr5YGuEtsaV7LT6vWtYMubo2PsgSDzbjkhs2pVgcEgqPb1R4: '100000000000' +- DdzFFzCqrhsyZKJcjPdnL4yFT5iaVAHTbNwuVGwR4s9FUZoRZRtnky3WaDuvxtPdw5WDJXxtnf1ZxHvvVaemvH4E8qvif5w4L3FMyq71: '100000000000' +- DdzFFzCqrht26W3mvKYkUrYr4aRXumECNhKYJ6oni4VhrfEsFRT8ibVgoeMp5EGqjf1SLojTcejx5dPXbxienJLsjaaeBLAjGLFVQGXG: '100000000000' +- DdzFFzCqrhskRMcqPxXszeaaa3e3GeGm8svQEKMXzGGaFrxkkGeUmQqLzga4yG3NU6ST2REG6dvA4puebdrRF7Pb2LGFiCsTTPSSCWX3: '100000000000' +- DdzFFzCqrhsiRDd2Yg7sRQvzXzGV1KH7ud3Mayof939zqkmY7mBKPDVVczmVLhZAWs26BLg3D9jDqacJZLq285mWSKVFdjCVCT9bUs4i: '100000000000' +- DdzFFzCqrht5fwqThtNT4fw6zXctvuHhq4M9wjPVHYqdHDae1h1NwiZ9D3xoeQALXLEdp4rQRAtMK2sYBWTxSN7tuHLNyZ5UUr23aMCW: '100000000000' +- DdzFFzCqrht7ZPByhWy3JoK6VWHNH4XF6sjV5MVvtx1v9a2eVLiUSUce1HSX16dSbS3LYYeh8uQMPW27fuG1P7kv8HprM7ebX86m1Tdg: '100000000000' +- DdzFFzCqrhsqCo1nbUfeKbuwBS8MRSAfagH5jN32GhF5tizgs3cTSoHhEDtXjWmRXw8Bu49CLQ3pZ6pvwk2oCDACX5fefMcU8vKMQzTw: '100000000000' +- DdzFFzCqrht8JyqFHBZGvCmizKmfH16WePzznmEFozMByVHVnmAbU69U4VmoxSeBxzyJG1rtcdKkSMjuzoJNe3VXnMkUVDzGvQcYTkGj: '100000000000' +- DdzFFzCqrhswufamdszJtBM6RjHjdeKxMuRWFb2YmRaUKGvVY7e9rLdvzXAY79HEiJqDT5V4oLEX8w3JExkAT8XuF2ZjFHXNJY8rvUFq: '100000000000' +- DdzFFzCqrhskfDsd7cWp7yv6LUwcb8C5DCDSdJ6W3VVMyJzZ3RdsfQBbcGhcMVqzz6ZbbwoZn5P4c76fzKjUMm7kWFNRRtYB9gSNtiom: '100000000000' +- DdzFFzCqrhsgMJmbPNm8trUEtaSvF7MRorHnNL73PzuCL9uauuUUN7K5oHsop6eXjtDPywmBsokBiHz1zQyf6GGz1L7nDfmYn9gsUrNQ: '100000000000' +- DdzFFzCqrhsoXKATuRMKD8rih8rwiRbs5aJuhpVLYCVYvafwgcpwjNnid7NRBeu4k68EVhvL1QEA18xbAWDW8kn9uJSsoTjwQMDNUeE9: '100000000000' +- DdzFFzCqrhsot5S3cdu1tojRcN7cwidbvpdiWscrBGvvegZ28d88JvR6CyAceDCoZhw48X2R24XgVLkTbtZq6TkCUEDtXRhSt9WEmykx: '100000000000' +- DdzFFzCqrhtCQkRpBXwvzLQHmJqPBzoVngbyFGRG7D1cQ74QhKCo5f9TSUF7gXXZ6E5aDQjm5BihSwvufNCZ1WZ6nabQ9Fhnt9M9CdZF: '100000000000' +- DdzFFzCqrhsgP42mxaHtCFnubPXFeDwZuY2PPL2DcZxc5swphMBNrFq3i3FPAzq9CbRWKYFZrYQgxkSXNHo4zhpV5e3rTgyQ5SkWdKNS: '100000000000' +- DdzFFzCqrht5aik8mrKuZVVuNtq79aC8mn42CMYtd8C1qTJTCthKqisf5N52mxDv7AbLekF3mCxYcPuHwDXYL8SH5fmQzPLsY2xJ5ynv: '100000000000' +- DdzFFzCqrhsvmoPxZCuCx3ZCXmSpEeAoZtmXzwg2SLUiiXqNkNRmPjCXorfmUrhsiYTBKqo57AiRQMoVxrJdgXFxr6UDYmeGbn8oRmmr: '100000000000' +- DdzFFzCqrhswZ4zGD7XBhJhhafGzTz4nCttX6kMtDdzugabPrcaac35qbKNau3LV4Qvk4zKU7NLXBYE9Yo9wbNkQwHMYjYkx3BpiyX7t: '100000000000' +- DdzFFzCqrht6jLpBnpFJkUQy9fnmVzETWPfXt1dPwJxvzWWJBQDTTBsHN3HBWU81tZhmATnXR34GmYAjYr1AmaF7h2jt9htTmFJvNTMU: '100000000000' +- DdzFFzCqrhtAxyonZvFvDfbDpXnzYV4Hva5S8g5sHDdA1d5PKeTjpkD2HY53S7YPL8og3h3xxK6Z4T9NqgbNx56PkjWTV673jnb8foGX: '100000000000' +- DdzFFzCqrht1otrMqMYaaa2DR1mywJMLx2mLcBtv7Agcr25ez2yeW5Az8URR3a5GQqjqyAcMLcpkHsJLrcY9mHfLGkNZZXGzHJQeHMUV: '100000000000' +- DdzFFzCqrhtBAjiiCzh4jvK6DjacJM2kq9ig5K7gm1EfGq8CxYkVJJGQSjFhsY41GjEr2Ed5e6MTJcCWhnaC7YWU87VQrwffBRqtJrSU: '100000000000' +- DdzFFzCqrhsuQJwWwhu6Vxpic7WZHWq6sY3vcHh6DuftyLYmRSqfgMjgsEAfTewQx2qzASm84hXsQBtweAAHuceJSuq8J71pQ1Phe9Zy: '100000000000' +- DdzFFzCqrhsye2oD2kUWBVMp1tf4BCGCs59fRrH95ujZzBktXhQsqKW4STScunHzpo8ynrK17NvhGMEL7SKz1Ahs1ACqUNdNeZgdpJuA: '100000000000' +- DdzFFzCqrht2PHXFLM3Q4SiZx5fRAPFz3KjuMJZGxifbormZCwBwzyz3iChnntXRDosXTBuDcnkCbpNnLfVqZ7QBs1BSVxPexFKKkWhC: '100000000000' +- DdzFFzCqrht8R7cPMGDB6Dc9j6iWJiPqddfNehZn4Hm7qVZd5ZsuP7fkDAc6QJhKj2UYmHW2CugNfszTdtXNXt1GfobUJAZicnFDektu: '100000000000' +- DdzFFzCqrhstRWBbLghUCXd5Gnz6hYCQ3UBkzDdGwHRg7xduF91Y3uP7XvkNtN3HS8AXUvfB4zTN6p9a5i4AUWshgTGevpGvaUvGQauE: '100000000000' +- DdzFFzCqrhsnrMBKUQPpDT7FuEx7GE4wR6rfeeZTfZXZM2rbiG6gctLxBjbG6hf9w4KbSsSFWBrZUsS69jJhnBDwDTPAMXmonZTEaaJ9: '100000000000' +- DdzFFzCqrht5AHhMMbfzKf2shQcgSqdoWq9g2aZfbvMERPGjMqUru1J2LwUzDmkeQoWJ7gMSyfVWeKy1DQ3SxfToGjsWCX2Rc7wh7wwQ: '100000000000' +- DdzFFzCqrht4x4UcjeNeUKLETyexLqRaJZCibBDPCTrChEi17DeoX4DskREg9Yt5SpXwRKB2MRFaM6THKDwDMWsNZJcDhp7xjjDPXBJq: '100000000000' +- DdzFFzCqrhsqLja7ksswD4V54MUPjWuVKbB2WmvhNvLpJjYLsoRLhHhmVYKp8B6TjPdm3jStFhpvFuHGqgfKYsiwersy7c5YawyU9XLp: '100000000000' +- DdzFFzCqrhtC2RFhDpTrKMVhUyDkoqB6rbn5XWm23EFRNHxiMYpRVn6oHNUudLkDnVBhsE3VoTraucUK7gEEozNzu1aniXoRZPNr3TV6: '100000000000' +- DdzFFzCqrhsztPvaC9obe4uPPeReoe8Yz7LGbEvgoUMURW2t26ZKvCKQHRYwa9q3qmea1Wq6Wez7N4wMxKstZvhUSMKGq2mu35YQSncp: '100000000000' +- DdzFFzCqrhsmEdDDkWxW24xZv4miGsG89AP2TNgC2r7EEAxtaDi3ueEFveigv7V9ZL8Z3aDcuZ5jni6q3Ww9DZ3th7PA3bvpGz7JbNpu: '100000000000' +- DdzFFzCqrhsky1fpTgvjfyfiH5oUWprVjckb398MjDj8bK13wcRhz7H9BbEsjCNj3Rc3xJnLkDNSkMcY5QQoAznRC8uPwfhXkk4HMhAi: '100000000000' +- DdzFFzCqrhshFQU8vJQnDd5xgC7b2uEZX1RPibumRJSEdsBUQgWS4PGhokHc6XBM4h7tLiGirAhMVVwgJUpTxBtxoKbp3pXtCBnHKq3h: '100000000000' +- DdzFFzCqrhsqvYYfAtrwybXyrZ2XfGpEDN3WTMyH2BsgehC6GWTvs5CvQW1eekvdPWDQU6HLbfETVDugNbeNRYbfKUJzyLjuVVDtmWRt: '100000000000' +- DdzFFzCqrhseP24Yu7xxXQjuKzhQyCiKb8edL1qHVaV3K4fUgEAvHdeYAXgpGup6EeY15pGvVfFfkfBSRncse5pFijhLy6tGX97Muj4i: '100000000000' +- DdzFFzCqrhsusXwj2sxaEXmzz7wAy7ngdF3pjnm1f8U58VcxXRPG6Zg3zsU5xTpUwsQzKTcXj14KCffdy9hUmo5dUisyZgGXWiyfoptt: '100000000000' +- DdzFFzCqrht53feJEW3NDHkikGTpkGHoSqpwF24kWSEiFd7P6ceFeD2fptSJQ94yiCzh9FgqH8AdNk3gczsBVv6ADDvJSsqyiKxjd3vS: '100000000000' +- DdzFFzCqrhst4iBUkfT3Pj5xA6vqb8e17LhFHyKkLiVyUxGc7vLkYSktaJbC6F36j9d1xN5vX2hkgRHzMaN2xkaGzw62WFnRFVauoNb4: '100000000000' +- DdzFFzCqrht8P2ybUJw33prwqPWbkdcbhHNy5QhsfBosrV7toU3R56kFjhNyhdK7gZDHWojsKgZztJeGidTxh81wLHDKXxBwqj9QBcyv: '100000000000' +- DdzFFzCqrht6NaQ9QkkRx6UrqFLquWd6gGicBcu2BxWS2bP9cXmhJ1Jsm822Ljtq1ir13R5nZETVGZNRtHjZGbddCywVmk615kJQuLcc: '100000000000' +- DdzFFzCqrht7ncG7G1AuvaYpLn5E6zrwja12rW2WatbR5QMRaLJvoCKU4QLct2MFVe9VGYbRPDtJBfP7E7PapKuoKMyU1qz79fD6PR8G: '100000000000' +- DdzFFzCqrht4N1sj7JjkVgdLnL8zRLG1RSF4RmoUoRS5g3JaMXcQfTMXz7fgxJQUULK3oUcgS6j5ZyszEqFZtRBoYCZ4Zcm5SfkFAyJe: '100000000000' +- DdzFFzCqrhsxSdPSYTEWC28j8gi3qWDXxn5VgHa9XWWrYPja6V4xBmob8svGQho5AHFWCPNHcT7XHPBEeYcVtaMHybNGgzYbe2jaiTiw: '100000000000' +- DdzFFzCqrhsjJfTgS7pG4CNtR6zCJhVHFaqCzhfY7jY3Cf8CxLqdvL2QRMcuAaRZG5ABLXAcB674a4LVWTbM1wXJ3ADz9Tg7PHoEbfuX: '100000000000' +- DdzFFzCqrht5QL2ZCjRu3vsp36PReVKRqjGr4UqNU3i454psdD9hiLMC6JbhSncwjyFBNjwZiBWCUyY7ty6iwpCUBT7oyk5Q3PkrrhQs: '100000000000' +- DdzFFzCqrht9zucT19Ym69mPEorJo8XnbCafwr8r4DGGJpezxMDeWASyZhQNc5vmMvE7wm5VX39E9oeC9VknNYbt6cZSeHn5pkWT6oFu: '100000000000' +- DdzFFzCqrhsxU6yHdTZSq7ybgPcRdqgLgiZ66Etya1G7oGRAonUGiPugqfYu69M5QzTMMvZZLPnybSvjWAy2BYwBk9WNdyNBrQNSQSMw: '100000000000' +- DdzFFzCqrhskb8geC1uij7PH7g4f5DNkYxcfpPksiKFmhZPvivukH8UiqoqtCn8Bm4zjMM6tE4BZ9UVpFvWmJqNkZSeyoi6XnRAseYrv: '100000000000' +- DdzFFzCqrhtDGHTDogrmCeUYB45ADfe7jsUD3sX9ZTep8TsVefuxjBA2nDSZ7wD3h6RyfZZXJJxJssN4x25zH28s7qiF1Hn8vKc6bbxX: '100000000000' +- DdzFFzCqrht8AbMx3Y8KcapH2zc5eqKtaY38ifkS9cUjzZtyFT2bNTMWVuJQwLQmJ2Q5pL4DZQau6bqjH7N2EttF3bdmyWVYs311ue1a: '100000000000' +- DdzFFzCqrhswKhHP8yVXgyS8Tv54T3aNHjvVgoYigggyoiMD6847ro7zanHEVsKHgjtBi12b4pAYH86uELcSKLeKFfqhsgDrCXJ3mUh5: '100000000000' +- DdzFFzCqrht3mSSgh6tPYh6hTqnWwne8QTHmuDVwExYnVmeNESsfS9o1ps3YqZ8zDTmCBLm36kya8kAknxv65FHq1mzuXEeh1xru4uvy: '100000000000' +- DdzFFzCqrhsyENFC6AjpwnanwvCVYFEHjDuP1pRaLSKHiAMs9u32W7vsUChmK22p5AXT2ExmgXPfAUVaDVBGuTPzM9nAPPjSzJ5cKcUC: '100000000000' +- DdzFFzCqrht5LzM3ujWHNuo54Tw8psAzq6LAYmfGsbyUGwQePcKK1oEb9qF5MCAmoWtaNaQSnUiT2oEs48UkG8TRrj58hfC1MaAPNEyk: '100000000000' +- DdzFFzCqrhske3AMwb4scPsfK3Zy2TtD9Ero7R89482cKfvow1oCmC5eovgrykPrPbU6twceG4ChNS6jzxSYgUG8CUov9XzJwpzfJi3F: '100000000000' +- DdzFFzCqrhsvq9iJqPVr1qMsPFT4DUzD2TuWK9F4WE9B9GWZWaad3Evw9VbdTsEkEebS4YaDiaB4tSiaZupk7mqPhaiSLJTPrY9Tevzm: '100000000000' +- DdzFFzCqrhtBXs6wxxRnJBfr6PM3fQxx5gn8jVMzzS9DYhdiTsZ8wZwvBTazaYZuVoov2U5Ljr1Epaz41td7UDgD2iMxMAV3rqbZ7P8W: '100000000000' +- DdzFFzCqrhtA1aAZb5ewZvR2LbkjcQjSAPGqGwkZwQ9XQKJRwTUVCeZYcNrNXi5T47SxRHQ27bJCa1fJkvi9rX2Dr1ozucSDMSYY9bxX: '100000000000' +- DdzFFzCqrhsnCnZxEgwwXu4WKKSNADuPnrid5sUzZKiEx9b6KGPuksyM2gffmFN7Ar4EuB7sggome2ymbkNZYCfd6H4rw7e2hwNHQJcF: '100000000000' +- DdzFFzCqrhstxaRYq8wHTYkjBhaZLJBDLGRZDM9RnrVvbvWT21SogEkoG1mAoQsEHwY19ypQ3EiQa7fynmHvYUUZkmHtD9RGYi1KhCCf: '100000000000' +- DdzFFzCqrht2w1AnP5nUVdHNn6D3TUKP3dw6bAijbK1vzUzD7sXVPothRffWVSXAh7w9UjjLcMzCznNmv2JH5zsK4hmSpX9pGRx5jys5: '100000000000' +- DdzFFzCqrhtABvmYEZptEVcw6gxyTd62k6fhPLtpP1Tr6CnJEc6dintCNuZes4KxH4Zhmm3TSZRVUWLwYKxZ1K4ijzuZvXCfkPigRy8t: '100000000000' +- DdzFFzCqrht8qGErRZP9pdNtioCn9Y6cRDNXsu4UyrfzxnEzCnEVPjcDoKZKQEvaoNHv9PXm19geUXujR3zWMQ1QqQ7Jp6X8HfTYbGNC: '100000000000' +- DdzFFzCqrhsovhRtApboKb3prBCub2m2fTDcJ3CMbc8UzFbifNQqrBSh4gbehxPjqLGYdAaWShfUYDKCHCpQSYPqHWSbmcQJKuh3D8sz: '100000000000' +- DdzFFzCqrhsxoTxVUtpWvdxki4gQ17RUQWrXYHbL6YagHqVQnsVW2v5XTnhxFnYriPVS9Ar6LgNJ1iL3R5Aia1bpJypnR2nkA9WHbSGm: '100000000000' +- DdzFFzCqrhsnhKt2MWvXBt2429LxvnkwJ79kmrG5WiM9Mkc5wDQNPrj8nMwFcZiRTPnGE47tKUg3TwA2Yq9vovpMSHRTysn1rt2SbJnH: '100000000000' +- DdzFFzCqrhsjKkvakS7dVrShF4wz2orNBSMJMGpeyYNkN3kvN99gFJAhhVhFxVExHxXnmhTkJtcHWrRpY3xm3DAjC67t2CiCcmhyxyKy: '100000000000' +- DdzFFzCqrht6Yy7op4YtaarvDjZtnQqF3kaidEdSaGqz5WrqhNx5x8jirBwjTFM9tcg6phXwkMdAoj3DoPWrQAC8hQ3rRUDQPZcxFh9K: '100000000000' +- DdzFFzCqrhsunHKPAoacUVWLjX6SdGeHMymcN98WjRigakuNumCJeyCoDaYts13YS48tTkGYaP8ii7aTv3DvMaaHg2c6UBsTrzSB59Xn: '100000000000' +- DdzFFzCqrhsmLc9QdkGQ9Dwtv6MwinCXpEpAeMz7Uc8giDk34Ud9Y5iTL31kajUbVTGNJ7g6vF57mwhoEx26U21DHyZe5kPWjVKw57Eg: '100000000000' +- DdzFFzCqrht8F8ECWdQPVEZM4z6zkiMnfdVAjHwsSSGFyKfTe9NWDYfv9iLUcftptXYuj2jSKJ4YU3VpaGfKaxNsS3aaorervsgSLUy5: '100000000000' +- DdzFFzCqrhsr821ubDTtA2N42NY2zBcNb78csH75ThSxhKVYGWjGu5kxJqBQkrpvtNXmSHawPDgnvtuWCpYCtmxKTJK5QArd5ztGXSd1: '100000000000' +- DdzFFzCqrhssQMjAmz66DvcAfSMfPJxQSfNd8cA9vuknPoin5zS6QJ3ApW86EPhvJ4RzzkYooEWw2XWM2KRhqe5pqLF7ZZL5YUFzqupY: '100000000000' +- DdzFFzCqrhsn5WhR7z3AGj5p7jZmr9YdAzojZYQL5s4ug5XFtZet5NodNbF2NuKpYki4GhYk7bM4ehhnCFrSzhveUosXbrF24XqJGFV1: '100000000000' +- DdzFFzCqrhsvnmPSFn5k5NyjzQbbUuXsdvBrwrzirDNJz9T1m1fYc6dXaa6RkHxfbtpiHoiUiYM5VFDUfFRuBP9FD3UehuofKujo3EWF: '100000000000' +- DdzFFzCqrhssFCusazWHXUZ7khgSfSNbXDUTrR9u1tc62Pmk6cy5PtYoPqXAY4wXnAZccHVvJQduPBQ7Xj3BmYUaQjAtACiyS9STsWRW: '100000000000' +- DdzFFzCqrhsuX4Ju7VST1WP5jvWamxTkRb1ghrJwSedFhBXiZtdj6EYAGW5CdGwF9NeRV9g1GS4ttYso7soU1BvYp97BL1bJdrHZG7Pb: '100000000000' +- DdzFFzCqrhswvTyXzhkrufxNkSMQY2sUqt7THjne3wqUmqNgRsUVXefxHGZ4mUq2FjpSKngah8Kgnoboxh2f3HsTXPi9xsvjnXxiJDLb: '100000000000' +- DdzFFzCqrhseBfUQzpJanYhPqpBQdYYsoJuRrSxAi8fQbL4Sm2UtLjNRbm7T9Hc1vKj8BB7e3M7F3eLRQUFNRMqwjgJfJ4ANnFSoRVhU: '100000000000' +- DdzFFzCqrhsxTE6PwWFgKnEbQo9NJvBPCSoTobkaJmQRXJdwhiJu6sXGn8oLQhfXsvUjskXetp4phZN6GPsiYW2CSNebvbkdiiWS7bm7: '100000000000' +- DdzFFzCqrhsrQpCCp4LgSTqkw6PPKH1bkjQ6KAznmSK7izVDaRd9c4WsMQfKonRU1WSX3GeSzQw8YrSLcZckFiaKrdfGaKg5ps7CBzph: '100000000000' +- DdzFFzCqrhssA5bm1sZwM5waYSF8gzKAqfKcPHmcDDztCSyVPLSRT97YcpC9wH3ieVmbcEft6huGCHNKT4JWGuVU5RdyVmN1Byj7JV3S: '100000000000' +- DdzFFzCqrht4wQ9tURQwpDzMHFkxzthYn5GmgQujS4GFYLfXSCCmujY6rKkW65oKMDhDv3MxrwE564CdEpRCX9TthjxzRpH9K6GgjbMF: '100000000000' +- DdzFFzCqrht4S2sfyY8nsiLJa1L1LeKVK7Smd53zYBhwwDz3XsnaZot7QNUrmG8TsfL1DAQccQ16fMJYDvLoQMQMv3i6q3CZL7KQzaCR: '100000000000' +- DdzFFzCqrhsrHg2753KenwVkzJJKJCTLad3fydBmQaDyy9Z5AVwG4fTLHR7dAPm1Q4dw21vekUTb8RdFkgmviRZarBiUqxF3AqcFwuL9: '100000000000' +- DdzFFzCqrhsnoygDdz5s3jHhZB4aUAGEQKHPJcbAAuEzcY4M1iSRh2tcH8r1Gm4QXEPrhtfq9bXjaEhxxrsQRDxwpNZfjiK1Qk7ahkMu: '100000000000' +- DdzFFzCqrht2Q922m9WpwHYxStkPMHRH6T3yCW4TXPBMuTJhr5zGncVygCURWNgdrgKBqsNojqK5VWPpDkr7rsGF1jdWrreweamKqFT6: '100000000000' +- DdzFFzCqrht8zHHSqsSqGVUYzS7XN1ZxAaKbFh3A58a3Mh2f1MDff4jHRmBe3kgqTHkr2fo4ootgite76yMqEoJqRd1EqoEf66FPDbFr: '100000000000' +- DdzFFzCqrhsmajz6R4cJmAmsiNdS2DTz8xBiiHufwwBziWFJFD12B8EsvhJrjTo4o497CZozESxaSp1j9RsxFKUdhTXeBgBWUdBdT63D: '100000000000' +- DdzFFzCqrhskspMSGoJsEBYtrthZpoKgnMALXkn1xvj6FLngpveHxH9Xz8cjNGdPLUVvYMXg1AMLAGYGBa4FqNn1Fg3J1spJsVbNwwkM: '100000000000' +- DdzFFzCqrht7JdNAPQCq89zpLY8dJ4eKEBZmfRW4qR5QHnJgnd4sXHYmotehGRG3riec6dDQWVx9PTtNy7wmDCL1y86WpyPfjejwe6cg: '100000000000' +- DdzFFzCqrhtCSH1pouAatoNeF4MtVHc6m9XNDQwXVTiBYsZTxJoSrCmBncAe51t4TZ1kmtZGoCLXkSUL2SvVdc82ne7bw8y15GDrVt2y: '100000000000' +- DdzFFzCqrhtA2vGMiYJss5afhtUN63EdLJk1mxnvsXzhygZgajKzEVxURZpu3EikvVAppnAxgg4nfRJxypREE9iGjdM6qx5cHj5Jpejw: '100000000000' +- DdzFFzCqrht3pM6bqHYcJRsYmiLD7NkTnty5AUVtiUmnUiGrpg5Rt5xwmsntBe2HDrsrKteSTSDbfoydXALXk89Kzdp9JobQbp9J1VvP: '100000000000' +- DdzFFzCqrhsr27QaZfATYvsqjV98vMFEgvffD4tRsPefxJi8MHHoFQMEJ1ZV2msWyCgYb5Etgh4KV2Sh7YL3FgwJHuXLuVTYv1acdKnY: '100000000000' +- DdzFFzCqrhtBb7mNhy3LowyiKRjci48zwuUqXGzZgvDSLt6mWWdgw82zmLprfhmLK3pS3JXYSJMPfndcUHBPWWNmyuS53nmhNF55CqLq: '100000000000' +- DdzFFzCqrhsnB7u8SrdGTMgf3PVRUyz9gzsK3YCaDEP8G4rytti9REugshq2CCstwpTkg5iKguR39K61vTkxeHqZNaSqPB1ZATsuhoTj: '100000000000' +- DdzFFzCqrht2Bhpc4Ba6nT8R3zAaiU14vhJRSSHgtbGYWziqUMiJ6FnDisdhVtfyUqyfzsPvUjYWGk37xHxqDCz26427wXCpAN5j2w9C: '100000000000' +- DdzFFzCqrhtCV7RYuxXAwLnAu2rkmcVKasbuTzSbjwbQPxHzP3KSbVudmTKgBpRfnzM3CVs6p4nBeegnqD5KC7v1oXjfw4rEVNQg4gVC: '100000000000' +- DdzFFzCqrhsuuY2n9bbyPKxT4ZqqDVyAvFqEnRnjabaDPDPNQrxPruZEGUVtprsQtTFs4h7kGisCeF97Wi1GSaaa15EFSneM9QM2k6qe: '100000000000' +- DdzFFzCqrht6j1wgApngbzBXbnpFVQfPg4JQ2b5C8U8pG5M9cWo5v8rAVo1nDGMPphyfDVPjS5rc4sxb5y7MXNjb4xsDjEZ4UwqvbSYn: '100000000000' +- DdzFFzCqrhssKmUtBsrjbWL1iT8oSeD13MXh7yrkVmecAYv7pUYfNSr6XRT7qQWcWHJxaYYuPwt2exac1PBTpZV65zapvbnMLzu8wmd6: '100000000000' +- DdzFFzCqrhspPtL3MfMcHeSZ4wQUvac6SPGNCiEHrXbqfzQ748Ne1ZUMmBUzVkN8RTZXqGwTPdMXY7qnWRUmBGoS577wqvint733qRNK: '100000000000' +- DdzFFzCqrhsr86UF6Y9WhdAY1dFyv3dkwhGBGwNwNx19wvPugGAyDEDwmyQgVTNfCHGZM4FdLSWQzwfXo5DxDRNLyizsX3DHqhCzucAM: '100000000000' +- DdzFFzCqrhtCEPtsXCc19jpjRZX1yL3Bfp6FfP333DZ4w5R6dCS1CkCAM3eQrF2dsrNs9YaanbhBoYoZXabrKccYDqxiqwDCeXjCAy6z: '100000000000' +- DdzFFzCqrhsuJ4KGXPeq3D77Fh4qgz8XKkJwmfG84fEhcftKyDVGzfrpPsp883F39aS2DFAjACLUVDKuxARh3TjnRk8hbah9YLbJ1VFA: '100000000000' +- DdzFFzCqrhsfPshhTyx3fsWoDA4JpYgAeUZYaAgwumDqF3E5is8hpD3qQJspe5SrktkZpkp4ACSJvz6AEHEGqA933H6SBCBAdhS2qHTs: '100000000000' +- DdzFFzCqrhsid645qK4Emgvho21JkCkMXNNsjeYDnGxSFtuy3VVm6BSvGuWSqWptkz7iu9E929FaWVtnX7Gv58Re1TESYNkhTcrFBnBY: '100000000000' +- DdzFFzCqrhtAny6YTDBw9BqR6B8EjhYXk4f1FYLGBBqHktdetgAT3MPKtgBVHw8uw4DK6Das5Ya4TkbmNqwgqr7R8L4H352YsSfL3X7B: '100000000000' +- DdzFFzCqrht8qqQVBVJ2mcZgqahX1BQ1393XV7ZUzZw2gzqWy17nRdrCvPLhrxULWFuxXmtdYYp939BSUuAvSWsFvL7ymkeZbvdMEcnE: '100000000000' +- DdzFFzCqrht2q2XaYTfDdAzG69xZjdFtYj14EJTkUdJPTkFPtDNzKuQGjrbNwgYi63GrYCLcKq5syU5iUcFBHDSYUVJtu1bLaDVg2i1P: '100000000000' +- DdzFFzCqrhsfHLcUKMopeMSVjbUU1waXdYzdvsoBEnoQGQ7481AMZ2SjbMhfqaELD3baKuR9UgtpEHPtdP4PYBNcAH5qL8fsvEMzrYzz: '100000000000' +- DdzFFzCqrhsoBY58ytmcdEPBpcNsNZSZWxmc4tUajwtn1f7BLYWjuRsZCj7aYq1ijesCTVJKQ3hNSSzRzYV8YehCZQmbNN3VREzDQYuU: '100000000000' +- DdzFFzCqrht92ihcWZLduFG3k4KiGgmQoGhSBEPExHDCh2NbSqvra7GNix2RjYfWX2otBy1iv8CYQQb4g1MrtSW3CT9Fj7fg4pmuf7Pb: '100000000000' +- DdzFFzCqrhsehNKvbiX1iEthbn4sT1nucdcrAEeJLnMs9B8SnGCaQNvq2Dafs4SikXnRPc1hdH9CuEKRNN999jd6Uo6umqeZd7pcLGYH: '100000000000' +- DdzFFzCqrhtBVnrSLcUGj7wH7iyf1bHrtnrHcoaUWg9YQf88NC5xoDpwuxEm4huiLhNN8ti8ptX2GzxC2GxNnWT8oXx8snLCcbvZgdMX: '100000000000' +- DdzFFzCqrhsqmv1XXKrBZAR6fQdjA9DdHW1pfgkPmrak7qSmbvZTA2XwXfPZnc8XimHLLiA3Car9K59StccqNXBqyBcsjUxtQRSHyrER: '100000000000' +- DdzFFzCqrhsqzdSBWXQkUJ1mJWxUbPgXo3vFnTfA7A6G1FbFTeaCgp41PD4cSbr7YGdy3Xe5imXGRnds6mTeecC1WTVyqBiE4A71FJAP: '100000000000' +- DdzFFzCqrhstAu5KnBxgNCTT5XJdYQ3XYwGmsp6nuGoPXtj2wPGY9vLEzvsAYw2hmkei7EBpPEaEE4jw6fnJGFgQeyZj7A9EFUxRF9aA: '100000000000' +- DdzFFzCqrhsqiQdYJSpcLAPXpS3ENoiQKbXRemTrZL9fUvFxWGzqtViSihqhNEBJFqQpTU9AWw81M2vCrLyDNV7Q3wu6MgnZkSk78u2f: '100000000000' +- DdzFFzCqrht1BE19pzkzzPFojKNvgUHLrEQZUqDYi5GSnyoAu5n6pgUbhAbEtdY455QEMbLQU7sPKgL46hRf3Aydr2uw3v2NycVsnc9c: '100000000000' +- DdzFFzCqrht9YiSBaGY3xNtoKxzRjwxGAqVVaX2LcdUxvPvwsbmC8mKaVDaCWpbsaMCxL5zZgcgd6XcykbV6Rp5DEH2UZ3t9kVkL8pvr: '100000000000' +- DdzFFzCqrht7icQSvUaNXxLMbS11ouxKytJf6ZetARe8Df1fzoSA2jYAUtmmcBUs7b6Dnbg1Q5RhYWsbk8GksMvpfVA2MCxc3C7fAe2y: '100000000000' +- DdzFFzCqrhsdwyL5Xdjz18heotupQcqGcaYwiEq4m5CPVN1Fu7x7kbx7FRdgvVbh8rsAJcoDc5cGj73ZNiyQxmBL7tXBMWu3f2y71QKY: '100000000000' +- DdzFFzCqrht8ZUn39jnjtfCFQsShGLvnvogzrHV4mhBSwUabMduz6p9mKLtkVWrSJWGFJsgFWp9QwscFNHf3mcUQxot13HV4tbr6cAv1: '100000000000' +- DdzFFzCqrhsmD9xRHRAPvmsBmTMq4MxF2Ezj85zrbxYLsktrXeYmeMbdtdje9TKFcrrq63bX8mAG6cX6PYdPVhzSXamrkRkefGGp4ao5: '100000000000' +- DdzFFzCqrhsrXidYNscXZFyKmEcfsoFzpgn7ktHcUHfqVX3xMFLTx6hbYAF4q4sb76E7LDUpHxB5kuAkqx9jyCe1WaURB9eSVdU1uSuJ: '100000000000' +- DdzFFzCqrhsm14cAPAMCk77kG7Gwu6YsRqhaJsPsybZnq7yru9YX7fT1VgSgrbTzkP3zBQdq4otjBMc8ecPbNh6MWt8k8ZXiTgh8gmFi: '100000000000' +- DdzFFzCqrhsqqgKJTCJqRHH4EvDMBt8N2JGTqD98qZWS8vKoYzKYNVsgc2YvenK2thiwoyJHGPKWBRZ216mpgJXq43zQxt7bZ3QEqKhv: '100000000000' +- DdzFFzCqrhsidJNqfDQLNiRVprzRhpxvt9B6dtn1hzqyCKhqchnKLhjLEu3ESVzEKGrc5EAiHHY7rrP2zFaSVmkce1DNUkEhFVBy5KuX: '100000000000' +- DdzFFzCqrht1QZdEH3vdXTYrboyKzhh6Cn5r3pxkN3TYoN7oiTasyiR5q4XX7qF67o4zCMYnafDgDczehqw2KipxR7boRku5Nw2y794P: '100000000000' +- DdzFFzCqrhsiMhkHeXDNRHZzkBNzzGssqgFqFae9VrZ9fV7USUN4ogD4G4DQAyYiAg3tdZ4D2vR3tWPWwTsQWrjSJiCyjBkSzbirDvo1: '100000000000' +- DdzFFzCqrhspRmwRiwjJF9ZHvmNi4FGYCMEATFiytAm8uweRJFUY8pm89NSdGAQWG3XarirFoK9XXaHPGuDrzuUREdkNkz5DkyTFtBaH: '100000000000' +- DdzFFzCqrhsejoW2qcdB81U6LNuhVae3hWX221V1yx22EjyjGMrW4FcWJwPnBx6iUwZQCrCGkQmh1K3Vivjj7MMgD4QY8C9KMBe4QVYF: '100000000000' +- DdzFFzCqrhsqie1ffztHbz3DbGSTeqYQDqZMQk7Cy65oMqm6zXWAHRSeJnboMr1txHtcLyRF9wFuzzk6SiT2C8DJVupN3ip5VrhHKij1: '100000000000' +- DdzFFzCqrhsiVXMXwGUwvKkgwrJg5Bm9GR58hE4Soxpy9SgtkWBPrG3WT4bocxExNTHYVy2KLz4CGMf2DMBDL1v4SXiouKCio4LMNoqv: '100000000000' +- DdzFFzCqrht7hxr41HJ4zu7TFL6ZN2Rr5Sz9zPshdKboXgoeb5UdMMFqPsqrxtkCmnT2mSVUuPi3RxdqWpvrZnyq2mRodcDxMHvsjnTa: '100000000000' +- DdzFFzCqrhstfrqD9djhFjphQwE1wy4vSzfNJAXppHSPGxbw9cfPGHD37qmVxS3icC6BuAg9z8pqSVnhVjRbxv3gnE1tjLfGSh9ZmqNn: '100000000000' +- DdzFFzCqrhtCBca8t28wWgHPLXrqVbRjpMGo6ntAQbBVmesnUkU9VnXpfpiHmv3xgu7QT3MxoDzgvM22hAYWb5dWBjNy4ZPe4tnqVPfH: '100000000000' +- DdzFFzCqrht3P8aqQNHnGFvJVsjYBTMWyYHeCt5KnsB1yNBika7kPsjBQpAbeA9TZZRuRc7fcB1vY4ZkPNiRRL76wL6CDvVLTwgitikt: '100000000000' +- DdzFFzCqrhsyL9J4HTGVY9nojxhrdf8rSTrWod38VoXYRHtUXMhFK92Y4bmHsYgpvVqKk4wUjJpzHAEBmHbAN8bxKZHKCcz759hou868: '100000000000' +- DdzFFzCqrhsnnzeUWi4xQu88SM5Bn2dZWFPQCEzdexgoWWRkck3k8s5orNA9WLQr1dGnWmekMeLKDkspBnEZetuZBCa6tXCvGQGng62L: '100000000000' +- DdzFFzCqrhtBoz6w9wwEnxoMzUp7Vr6S9XwpHQJWrib4vJU7SEwPbhyKf7JJr8ZnDfqUe8rbySddMGgHNUHFWZNAW1sFoapmF4ncN8Zx: '100000000000' +- DdzFFzCqrhtCw9zL7n6dtmgeTvqcrUnYySoWwwKgacRevPY5sxT4MbjBzVXe8LLZd2exFWZdLdmtJ9bVNZq5bqdeXKay8SeY5311J4qx: '100000000000' +- DdzFFzCqrht96nPuZyMinb3AUuoh9XLtWaQXX5vBogv3CxRCu1jAGLAH8Ls2Jk3Q6LfXZvJ2jYzkDxB4VsRbqhFrvLJpb5ZPUX8N1qBY: '100000000000' +- DdzFFzCqrhspDHCaRX8fhK2tPg8V3Ttdfqqv6LCfnL1rKx8XiMPvHTCxghSAZwMr316jRrtuy15evxdtNd4wCsy3wLHGiK8ALLCuga9L: '100000000000' +- DdzFFzCqrht6SqeTkLsu4BCz1p1iPiANnCP8spSZA9vQWunUqKHzXQwqCBkYHvJ8T5cvRC5zAhyFp1HbTBsvYZtHTdBCk1DSPnMFpgeF: '100000000000' +- DdzFFzCqrhspimnLiNraenn7vZTB2qJQySoJa9jdLzjiiHECUTqdfv12X5JDc2N1jP8cHHMBsgBR9uMameBuWgGkQEmvgERCctUHuLaK: '100000000000' +- DdzFFzCqrhsviVcEcCKBXwfTVFV3J5gSzA8nJzgNgxLeoHRGEua187Gkyt6ZkypavHgRjd66kdx7KUbNKU3PfC9C33e7NEHU1Dx48ht2: '100000000000' +- DdzFFzCqrhsgoVMKe6GN7HN4feWzFwoasfQqsGytg9mg6Ex2zjvVendKrLKHTgzVu2d6AF2K1zShYUHVCz37kXVcJvnLgqmTvrUKrUWb: '100000000000' +- DdzFFzCqrht4RpH7D7toLDRT2QKrx6m91TGWh5Dw26KrCXqxvY5PVRFvbh9nqhPm6BN1bGohWDj1yheWUsucETLqSdet7bfivwetpzR6: '100000000000' +- DdzFFzCqrhsywbCUoqj5sXi9xK5Enut1xZmDHEFYNnJt2gh7Tsydi2zLDEEgpkL9oorNJ85BQ82M2kGTtBv8qwZPFDmoNKMmMPF7W5iH: '100000000000' +- DdzFFzCqrht8VvHj7E8pKYfcY4gAf1vzFZcTr1YnYVPJgHanv83pc4CzPb2E9y7AmzrJCJa6BN7eDXXEjAasUiprmUTVURkKHjSJuZ2S: '100000000000' +- DdzFFzCqrhsxZY2sW89zcsKNFvaTuG5tb3nsCnzdfWDuc5vCbqh8986GRyK17Yd6DpQ7P4FufmUBGQH6phKHk5vh2QD8qREErqtNRVer: '100000000000' +- DdzFFzCqrhseTob4UBFTJ14S7tfetxzZGmf2DsS57LXuDib7mX8JCUqpmyDfYqoyyKRDTvLByZkxS9GQp61YYz5zPmTtkLwjyaYpidEH: '100000000000' +- DdzFFzCqrhsrQ6HrGAhhvqsvDTLbriJqnqHTAR9p9bcWr9C8m6Z8zRAzAVxVcDMCzp6dBkwf4yu7fEJXVLNv2KVAMZXbUb9MNz8ZA6AU: '100000000000' +- DdzFFzCqrht9upMHEsV7LkJp9dFFiQ6R4ciArrR8rGbjbThvNSuTeTPWTCsj6j8BT5Bkts7yuUjE9gLpDpoLDVhSFTxw4Ge7y2DhpmHd: '100000000000' +- DdzFFzCqrhsxZSWpmJTfXPjUFzq9YFz1NakSHam6fayRXF7gEZYv6JfWvHCRk7UbFjD3fjVdG7ukvg1eT56XfJNySZzu1Njt2ZiLitmw: '100000000000' +- DdzFFzCqrht3Gv5U1Ekwt2gcmCdyZG7XYrD4TQi3fEPYZGBneUKMiT7WFWCieKA152VRj74hf7QqLwjDjcfM75vHTfqSnT5fJRkVhdhz: '100000000000' +- DdzFFzCqrhtAkkHcqmn53L15oPmvuh6ycm75QGAmhNNDaR273UjDCAw27b8KSydHX7bGoypUyoiR66ug7PQk8eimg58G5jfU9JHFoW6J: '100000000000' +- DdzFFzCqrhsrHfuXELg6C3Q3jYsWavU2QXCXQ9VLGFkPnYX1CopJ42i17epaT7KmKYvTPfRrFmM12wcwqRoM3VipUj254sqcTai6tWQo: '100000000000' +- DdzFFzCqrht8Au8vc1g5UWEem4Nwvc7PWXnvcmXcqhLWhGixABtU6SYjq3Yk5MjYrms243cZwiNbqBgTjjo4jCbKak5byyqaMXmBViiq: '100000000000' +- DdzFFzCqrhsnUNZ5DWVetCaseiviJ7KmX3dpLmJdRyBAWDmPSAxkepSVTW9zuxHpQvvDMvp16TKtMzoDVoqjiDSFLFggx5S149dZKcZm: '100000000000' +- DdzFFzCqrhsexrE141shQ9GSabDFGuhgW5H8TR2U7kmSP7A9F8e5hWYtUDbaHew2eKr3iBbfxRJBGXMmykYwULo3AHrGCb7HZjWmjN7i: '100000000000' +- DdzFFzCqrhstpwMupeBgNya9wmGkh9bYsyrZb6bz9v8a4orynopWp3mNhh4XZoFRxPHgJ3cTjCEHu88CZkdUiopxBdeptZ3SvkhSEGx2: '100000000000' +- DdzFFzCqrhtCfoX5ssz6TcuiYPXpxSZRkcZzBe4tm13m1r2J8xXMUDpt6eCZRZyeus4DSWkxZxsp3za1MbWukuDKMk7DbNEBNATHgZrD: '100000000000' +- DdzFFzCqrhsuj3A5C3vQD2JFmCCpQybhYNpnWf8XgAidkoiepPhLqEDE3n133STaeA4Gi52GGVbM8N3WLWDv9eg3YbWMTuCbMuLrFKpK: '100000000000' +- DdzFFzCqrht66Pd5cbKxe2B6tSssiWuiEYukctVVXib6VzpJtFbPJ6H59b44zPcdFjqj8nWzXGcQG3j7w7kVxzRfWGPjaeuhN3oSswdv: '100000000000' +- DdzFFzCqrhstemddBkQ4FdLJ1zw2RheCnfVzuhdA5mZxMpjkehpVAZcerhxShuYfEghytuxvb2xBXx2CyUBKuirN4HAL9VpLN2sTe1CL: '100000000000' +- DdzFFzCqrht7ECrWLALfcNFpY15t9uFKRXBg9XnTeL1CZKaeVaYcozYPLPCUJPFCafshs6Ut4KsoDkcFz1szWK5ETmpbmP2nKuRbz33D: '100000000000' +- DdzFFzCqrhtA81Nd4nvEy3Yed2AMazNJZAdxWeYZ9Y5GV2ixiQnEA2ZTByMNQQEdGwEtqUjEmHjsS712TFBUt7rwkx3mz7pVwBqaXXDi: '100000000000' +- DdzFFzCqrhtAhTNyzGV9vCXAvyaWd47XMcUEmWnUhFQaWfmRwM1xa6d34YdBvZdbCXgnMhy43tVRp3kb1ojsBFvhYYBS8JJfQcGZLfRa: '100000000000' +- DdzFFzCqrhsjau1oTu4CtgwQVe68CCELCrYX48v92kQbSQvX9mV2sMtX1pfruYUivfmMmuhDV2URXs9Zii8rBvjQJvizEVQZhkebcVPz: '100000000000' +- DdzFFzCqrhsr3hg61iDP2sR67k77WpjJ93Q6Jg1jW7rwuG8SoJSRfkyciBdPD46FtUTC3LMk53LgYNogYLDRvAMzoiu2FgVkE3ssFALg: '100000000000' +- DdzFFzCqrhsmGKjNiAn4rUfE2w6eU7PB331snS4mVNoJtN1F5Yp1EFuVJC1yCbqK9V133C3DEVWfQKLo5crfDv8w1XwXRevMrJve5AQs: '100000000000' +- DdzFFzCqrhshyFfBWD6xzdLaFE7nP7cVmXJBxqZfC1ACTPDzKwbFZQFPr6v7JKUxBSN2XVQSaEXNLhWPYvovL9idPcY7njZPYVn4sc9N: '100000000000' +- DdzFFzCqrhtAZHCrJBX2Wg4ivSes4rSo6App4SaEXLMdqNgFFb6zeD8APtx6TSPddgoZHMNpcVttpfAmL8AYu8xvycpoKyJX8Z5WJ9iB: '100000000000' +- DdzFFzCqrht2nE3pu7fiuu7CYxDtfCy1pnPyRSvEqiRpQjgw3AuRHuUqwMnt69HfFD13WNQVB92EPFvCxBRthP93SmuJw6Y1CmiYffBF: '100000000000' +- DdzFFzCqrht2FP8YFs5YkNf2Aqo3wYXRQRZT6C5ydQ1gHeGUiQDojMSwj5fZXiHNgjZLwSoPU4d3ryD3NRVHwVTUV6E2Ajf1PonncbJK: '100000000000' +- DdzFFzCqrht1mSKrFd7zbreqbyA7CbECQMSUMwd53usRCL7cmjkweprK4m45boob2hpjKLnRjq9BWd2JkfAfXcbox6iWgTQzLDWy4sai: '100000000000' +- DdzFFzCqrhsieTqw5jZwYoG5ibkuJXbPhdQHsoGzTxMC8fEacK65rgTkZrsMdjNrxbJCg51XNe2Z1DTfgbRhdY7bGv39Sgva5dn7R6Js: '100000000000' +- DdzFFzCqrhsfysRg51kA4FxFWm279ZY7646jhxvFjF8EeFSb2RBZaTHD4qEUoVLA89gEska3fr6K934P1SUh5jRbfTmemAX8oXZe79h2: '100000000000' +- DdzFFzCqrhsewZh2mPZTTgxEJa65UuMZFTfMVYZdgkNu9z3zgL8psq2Sx3iGVtWbvHPpW5rDFgtqkjA7FJeEz6QT2JJ1mANMffvfsNwp: '100000000000' +- DdzFFzCqrhsnDWzJ6eLMBiC3yNAjFTnUwuWTswT71SLMJew1YdVCmdcsQNE46fYC1AT4zj1zMPMH5mBNH8hyQRDB31mD4erEzsRQmZg9: '100000000000' +- DdzFFzCqrhszjaKta1B5LawWmwHzep2gUFLPcY2nTMmrKnBva2gM7sVPdAZ5K9quRmPMAv25SjXR72QZYsM2d6npyvD2tYbKkedQrB5J: '100000000000' +- DdzFFzCqrhsidhXsAkgn75ZW5hBm7GU3rVx9vpHUERVozN2imdF7YD5KrRjAxyqMvSpanC1qk4MTRABBnQUp6wUTA7Cxq1kfpb1H59Ec: '100000000000' +- DdzFFzCqrhsqKffUrbcrUQd3TYKQHNDYmGUG52yHJC6Bpj2xGiS1SmibXbkRPAfLCB7t7WkkChJ9UNYjR671KShb6yg2UmqcJDVYuMRa: '100000000000' +- DdzFFzCqrhsz6oPnwmPFD9Q71EXCp6UjqPHT7DhsDa9BQiCdDQQrnMF6kvX9ZkN3xDcv2fkZa4FsWepL3KJK7KgCjDu5HgC69LbptprW: '100000000000' +- DdzFFzCqrht5v5msg4HLVFPLtT7ndyAS51uCxgvSVvTSyGrLUFPiHPJE8CCLgr7eHp3BYN7FPQyz5z26jKeXA385K4Mu7MfeoQTHxafH: '100000000000' +- DdzFFzCqrht2qEERrHHQEteoBBrohrGhUDsqoC2XJmVGiueaYYgKozTN2bR5VtzDUUzBepmMYdn7NWJFBoQ6rGumqDpsX24gxJ5b3MJ5: '100000000000' +- DdzFFzCqrhsrWSBJW2xC7B3DLfTB82sa1gc5pyfyLewSDc7edF1w1LUv6xMyWFeLV223ZEttxF3M3EcPYbP9qYKxxBAjHYr7xoZ7Swhz: '100000000000' +- DdzFFzCqrhsuVim8EiNU3tsX415aJZ2UVvYTxqVEi29WSY3QknwwiLptKB9pUC3gnJSxbjCcsJoxcxT367aoCe26BWQ3PrvxXnCNCeaC: '100000000000' +- DdzFFzCqrhswFzx7cwCX3c5jDPye8aWJ1h9h15rMvV4CXstDCyJFvLWhgvyBWjktKbvyk2u1MHVWt3F159jT4c9foHAYR2pzCJq2yJG9: '100000000000' +- DdzFFzCqrht13bfVTveGynbJjCdfvbFWYbALziEvVzdCeuMWboEvyQg9KQ4xfBick9arDwaHSCSmsPvRaqVsMAkiYhJoxUTSRQa3fut3: '100000000000' +- DdzFFzCqrhtBsYvva6meVRXmcJiqdoDeXuwMF95bFcF6Xm1Bis1b53fbHxYu6XW1HrrpLNZuR4Awcpkd9pWjcmEarJCyUmBgr3hzqg2C: '100000000000' +- DdzFFzCqrhsgiYV6v7koQ6Na8pyoQ5cJPr5Qpf4rSaBbPTnprk8c1pbJBmX8L2XDp1QgS5zV4dwLkezAzXKRPjqJNCvkdzWB2pto6fTX: '100000000000' +- DdzFFzCqrht6bncAcUv2Xkc8H3C1Ac4HbUZwFz5BvX4p66zdPNtyVug8A1eisRwVYpmYRuZi1fBYmG91NqGModmdTCGuJKjsTKyN5Cbr: '100000000000' +- DdzFFzCqrhseipkRqSWnEFo8okC2kJqBrNSyLHrooSry2ig9JsWCNp9XGWS9j4ifMD6pJEeiHfYqqpipJoQF5exiKhmLCXaR1HfbpwHK: '100000000000' +- DdzFFzCqrhtBWSfB52qb4R426ammhF7nQtLPaFGFHjVH2ZLtrcx9CEZq4AdHwwa9XtkLrrKF43BsUTyeqVaxBRi3WJbvdfsgBytFtMSR: '100000000000' +- DdzFFzCqrhsftBgnzPrVcKLsVyjrPq8QLJPgSUUqK3diVQ7tcufY8v59kDb3WJtVs1ouQUtSDo3Cn4GspMx7mxtFaVDH41x2TvjZoBL5: '100000000000' +- DdzFFzCqrhsmAN5s6AB2iPnA1Gs7SF78ZSKYCjxtNjx8NxgaJXG3fqK293UbVybEUb2bTPFN2BzPuUydU6ygNDp3XcHEPZGnXy6SjDRX: '100000000000' +- DdzFFzCqrhsnCT29uT5DV4cCqBpyWDNQqeAQ5BcqG61hB7ttdkLyjYQ2gMwV28zd4sxvGpnLKHH161EuSZi1D95YnJ7FsEhwSYrCMxLK: '100000000000' +- DdzFFzCqrht9BkyJ6xmEzVgy2A3MYkWyC5CcHdRFg6P9d6DPedLTJfAuaMBzTuhUdY3uTHmynzrNYeZcPNWMr685mS6aMEp9WzQxctbX: '100000000000' +- DdzFFzCqrhsjH8ZrptUx3Lqn6a4KHT1CEs7Kc8qYJPnR8JM52VDe2By569R8gYd82VGTmmkNPMSGjwp4CS7VfKkcjSvR14sfgbGPyquN: '100000000000' +- DdzFFzCqrhtD11vYVXP6x3DBujPSbd8bjiwUwuPPRyPbJqdTbYTFvRq2az9WBUXPp9YxWa4To2tGdqmUWrm9xjRMRiPfydDbYWnUjcGA: '100000000000' +- DdzFFzCqrht3eWRupXFoukzrNo4tXApqbMH56KsxYBC6HDMSJ3XKxLugg626agrbiu5TBqXfjr8fdryhrkBsHwXyckkMxqMwEAU5iv8u: '100000000000' +- DdzFFzCqrhsjEQgHeZLBcKVVHoN8tkZVXXyQSK8xchmSGUegSDQmq69mdRL7hPcfqfNGh7FrUibX9UHAaCXjpQxRg2L6CQqN8Q1WjMCG: '100000000000' +- DdzFFzCqrhsmnWXeLsNdoNZcphmnUhTD94XcjfCDoV27DfYmVA6umVGfarH25fG5CYW5dDUB4hmzm5ZySrNgYstZ94umfJrjXxDVUr6V: '100000000000' +- DdzFFzCqrhsqWrNWvtTwi16EY2xxjwmELa8gB94fwkzk2g6vDiTB6T6exyvhcxsKKRnFWeTPJquuJqeqMmmF5oTcMpcqyb7W4L3HgaYE: '100000000000' +- DdzFFzCqrhsmazcxguukyfBwAstmuDZvtZvRSQtYexveR2BrC1ZB5TCscAr74EGcthbbGSaTrui3VjpmRXzHw9GU3j78p3AaQUkTcnPN: '100000000000' +- DdzFFzCqrhtAA64GN6rvcr2wMQPstST774T3iePwyRD93Av9GxJBBcA6mKmKwdt51xpjjWf1NFo3LyYwhh6AnLDE2yt4ubZkNatTtm3t: '100000000000' +- DdzFFzCqrhskiMixCwBP5xXjJd2LV41gKwFe2qMWWbznenBxgJ6hRwGGP2yToXwznwc6anGrVixm2SchpHzwG6NDDc3UN2CJq6YBSfaS: '100000000000' +- DdzFFzCqrhstXqSybDkiKY3QHdFAV6sWdkK6PV3Qh46s37SxSjtLJdTk1g9oSGH4ZLYUye1anZLRpbeVdtTY5SiEZFatxZgZeuUjHtPJ: '100000000000' +- DdzFFzCqrhskR6kYqddQP6m1nxm6HtMnFkFkMRVKoCyNSQCkAbM3nmtekHZxHE1YdWWbV28dH6sdJHtGtXS8akcBFtqrbMQTdjeixEhq: '100000000000' +- DdzFFzCqrhsePBoa7AM18nPP67xoBRtYeox6PxhQLhzBCxBNBSvxSbSbiKGe9cCEVcpHya9igKFktyGnxRAnpczHbdt5qQvEMNXj9eML: '100000000000' +- DdzFFzCqrhtCSo68dDjR7AhgiUVUs2AFhpsL3PDppYZgJjKV9d4ST656e1HAjYixdvasGu4eKP4cbLTUe1X2YSoHs5pPJMTg9isJAa6T: '100000000000' +- DdzFFzCqrhssveYPKz2V8eBJT7DSx3cP1eDzMJzyo1WARiD79y8B7L42Rp7XjmzcdgL1hsda4JVHghm1jQj2xHZrSN3Mjw9RiPBuWori: '100000000000' +- DdzFFzCqrht6mgbjQnSiz42d23v1esngXkuqWSTGbChgmRkGCQcP96VmhddYbzXVTZtZoXyZuvvQMCMkmpfo7RC53iR2pHqMg7tVs51i: '100000000000' +- DdzFFzCqrhskHLdDjF3jvVD41NAdGqGL6bZa8pgNuKmTYbRtGWTV2YdWkGE5ATuqXSjTYYFDvbok73d2zDnnuUmoZosJSFSUChpbi7Zz: '100000000000' +- DdzFFzCqrhtCgDcuE4AHFYesG1XSDS5hELrctspWMjZZ6zc6f16wDj8aEMKZBtXT5d6VoT3VqmguMV1rqDZ3Hwo4ZzmsQHiE7VVDuHw7: '100000000000' +- DdzFFzCqrhsoazkWATWjoRtbLHJcciH3G39PWnXTRvwksCxo2Y5AK5rvcs1dfQXu3yejWrBEmotHowNmPtLTfx3DaRCfjv2xjdXwwk7b: '100000000000' +- DdzFFzCqrhsrC22jQo6rfgVGZKUutJPW5e2vKTHC2c5nn3jGTw1DBEK78MWwHXHq5KVDWTQ69wf9yqWV64da8QnM6ke6iY1uAM4aX6yT: '100000000000' +- DdzFFzCqrht9RtDuLeCZW77XGxTYVByen9JBxaj96uKKccCqEPmvzfvHCYS6ucFDYYBhAEqFqg3ejWtkgsZBwTUA4rSthRbgqkg2c5Vm: '100000000000' +- DdzFFzCqrhstpgnjboHWpndAvU96xaDFfzabrG7ZxEHx5J9h7RsckBSiAGFryeyRV6VfPWxMJC8fbsvoZjrpw6fRD49bYnUJiJxiu4WW: '100000000000' +- DdzFFzCqrhsrNfLGtBDszf4zgw1LLfXEfeG7p1xq3ubgyysppojYWSD1S3ks1y871PTGQPUJhr9e3ynWBJqY38Qno15PjRLzPAP1mjsv: '100000000000' +- DdzFFzCqrht7YUutvA8M2dJDRpTkrS954ufZx6bAYZGfx1zd7vB6hH5viuyRRMbrKjAzuKLPPNj2ztsPDzdFFKSaV2m1bk3DrKXaxpEm: '100000000000' +- DdzFFzCqrhsiSV5SKmQVBgNMG1SJBn4hEU38MLHPDu2c1kfDMg56UJXG6EV8pUmTyKdQXLJYd4ce3T4Cm5R35JXF28HQP1NmFcfGWGk9: '100000000000' +- DdzFFzCqrht6vqywvNZ3XYGEPg5pxBVDGrwd9KCL3SgXETnJYYgctjzEJGg2owhDMyvcje3CPydJRux87DGhceJ6RpsCpYR9V4U7vN7i: '100000000000' +- DdzFFzCqrhsiz8vGAPQGQPhoXxcou8AWR8Yavr6zXBtHj5faW91tCSthdRkrnzDj4nR5x8r5ZNhbU2y9kLqCXgwGF8W9EAm5dB2p2nj5: '100000000000' +- DdzFFzCqrhsnmJ3aUSkKX2YB1B1uhtdAkqEnhMgNSkaDYcmjmxCt7Yk6gJCRZS1m8AZrPSQFTVkCTvEXw9JfXLzgLdbW96odBWhfrifW: '100000000000' +- DdzFFzCqrhsuPALKSafpg9uN2qLUvWTykAg9UXxqkfStE6hky3ER8dDrs4tasek5aoPKhjzwmrU91CcAo3LRZGQZCnD12v8jVQJjCRA9: '100000000000' +- DdzFFzCqrhsezMDDoc4EFs6FSp1qQE4cxH9yfHZJHTNgEJyUFYEY49EkBJp7z6LEdufKZncG7waj3jSqizW6duQsksvyLmcn6F8o5sHE: '100000000000' +- DdzFFzCqrhshBC2drNiVTAPUc3zc6sH72WVquMjbsCButxbU5hoqLm4MDDY2E5GuvCYqyDV5FCeo2yb9mUC7xmWTRXoC3EM9ypCR2tMV: '100000000000' +- DdzFFzCqrht1gsp4NTMiMsCromT23af8CvheNnPppMNQjwXHXDNMG8Tm2CbZw8VtLpjTTjgWw5zwSuPYXF3g4fXDtpzsSuogPHKBXmd3: '100000000000' +- DdzFFzCqrhsiipcZJdaUjteUWzYaC3is3rawtS96o7mi2c8CKLCsmCGUen168uVxpjtL4TrrShdErMqyFzKdSmWCBcDYEgVH5Uym18hQ: '100000000000' +- DdzFFzCqrhsfQcxQTStfPAvrDbXzBb9UY8DRiPjkxmhXEhaQvt5QBayaweSmbrgmtaqPNJucwA3sqDtGq1JZmJpR74EdhZsv2VRnY2f9: '100000000000' +- DdzFFzCqrhtAiqawiEAobxWuo4yRKzYL6CF3EpSYX7ip1kHh5iRj74bAn6ngXsXTQMtdsinVhr7hKqsXkqEGfKrKnX1iazWnVvpiseFV: '100000000000' +- DdzFFzCqrht6g5GdQotde1CSpSCQ3nQX3PtnBqPWHoxTTufi9pwPQa1QhEpDGXo4mqsv8cgEn1rmj2hxxJ593HNEAmdyi5KiGJzWPWc8: '100000000000' +- DdzFFzCqrht2Bk7Wm38FXUoi8tMYmn7eytAKynW2sSGxoEKjC12tEkrgP8VTqwEPxS5Gxazv6UQtBUAYqLM8gCG5D61HPX8sHoH7BYXB: '100000000000' +- DdzFFzCqrhsizfHhnqMrFdGSm3BDZtoHHPzCPbNGixV1nzWDYy9xfCdg1miwYsBDwFiM6frVcENrQx9KZtQqYfwgxEc34dkTx8tva3RH: '100000000000' +- DdzFFzCqrhsmikVEKgvrgvDcJ2b2wS5ygpCCB5nX6Bih4DBT5G4UeeYs4T1NSsDGQ4k8zejxnV5zCGksBvMZ5zztcLoyNWvZAzr7Ymg2: '100000000000' +- DdzFFzCqrhtCYjdYEeZtDEHq5zCZo4hbDxgtP8t4CUyPSDLFQYXbMgJKrwXHL96hrjE8fHLfLQE6EnmBNAz3zjERywxQnxkFmDeUrEra: '100000000000' +- DdzFFzCqrht9PPqthaDdnnYtqNL1wNDQDwucsmGCnfKTNgz62bQEUwDCE2D6tXrn9mT1tdesPQfVoTPxtKGqvWhmNWVCRc6Aq5LudDAr: '100000000000' +- DdzFFzCqrhsxUttsj4AwiQKbLdFEswoPGBPji8XaLUHzwW3w7kD1SLonudsTPxeDUWRnJtSgKwfYMD7ihXFTvZC68VC5pSXGojzU7fpi: '100000000000' +- DdzFFzCqrhsz5Aiu9F3ngXYzX4w2Kg1ZmrxH4FP4RtEQNj8sSoBp8zG5Hs9k2QwsrVeiu52fwRBhu5SvyPKRZWxRi4sqkwqC1yA1zbgg: '100000000000' +- DdzFFzCqrht2ydUJho3y4Ae1HqhSLFwq9moKxLDQW4dHixA6v2XGrrT4KqcGNNjk3cN1N1Ectc2qs9JViabnQ5vQ8cuosCCBa9eKmznZ: '100000000000' +- DdzFFzCqrhtBGsakVjnfBeMAAP2w1R4PVRXdfaVNwz5f96MhxTBoMsF3qk3hghpSp3CAXpwRkjUdf5cVAEm34AuEDMopVPeJTWz6YAAY: '100000000000' +- DdzFFzCqrht7vHs8w41ehNKoLjQ81YaBeR4rqdQNFpL5dW4cspLzMPgnfLJ7FpoBB94io62wNz7XcyxEjjQrUiYGrc5bQeVNm3E4NCGc: '100000000000' +- DdzFFzCqrhsmboHF6ECHkopHPfZnNe1CTMzo2anHdry2F19aojkAiUrSqxqLijE9ADxRRFBc8eJXveCVQNQ69UKUFvvWqh3irvo9Uj7E: '100000000000' +- DdzFFzCqrhtC4sak5k7Ur17e7Stfs3WXHfD4Wun6YYHyNuKZ73YUpfbWPy42vz6V767m9uh3YwsV72CxMMd73sHZGBudBukygar5a65H: '100000000000' +- DdzFFzCqrhtBvNo9S5pMDYfEmWBknyHgQfbgnmvC7Cfvn1D5JFvh72FoK4MJ4L5ZJnVpbfsnEYXjiJSdvbb3ZWWUbrVoyzRGdUA2i6o9: '100000000000' +- DdzFFzCqrhstE8D9dQTxod5Atxz5cRnUVnURp2yWSgUHDtPTDh25kBq9w3PDF1MicztsM7ywdQExi5TsMcFaqSvgwvUFPMY8sQNcy6ua: '100000000000' +- DdzFFzCqrhsg5zSxwqDMn2dyYoRTzF9bPgyJjLXwR6MdecedFLoQ3JBqPGB1C89gd5pDR9n68UDzG7jPKawcz6mX21hA5iWiDT4UpfCC: '100000000000' +- DdzFFzCqrht8NtBkvoWbWenp6rghioPNPX55NvjsyXtRAocDnPTaLN1WyREEga7KQBqUWBzCEBkYamnFbiXb2qYF5ZRHKg3FvtFt9xBV: '100000000000' +- DdzFFzCqrhtAYNzJvKZueNn4kegSUbBCVSSMkH7DiAucbJeN86mRs3MWa4hzzn2fiPHhNXook4YT6ZxnQ99EvmuL4DkMRU1dPF6bRJ9s: '100000000000' +- DdzFFzCqrhsdso2Acs3ZWRZsvSiacqTb9RJCTd2tqKtN5jJUwJHAo9mCih1SVpMoZvPvQTLvryjfK7S4k4nopra3CdXYerEAS8sXTiQs: '100000000000' +- DdzFFzCqrhsk2LUttfUUtw9K3sbFgexo61H1UaRakYKarUT9BqC4NdCK51wxdeTAf2nWrpvk5aeD454HkwJzWZS4f1SDJnUqjwJdAwU1: '100000000000' +- DdzFFzCqrhstL5nEaax7t1kpHKPzXS2jcMEPf3PYB11fJmyjRNvzj9d5a38BdD78VSCUFJrPUxoVyCmgVxqogi7FdBcjDkYP1QBZcQTr: '100000000000' +- DdzFFzCqrht4WPKUCjXhWAfibm5Wo2bGsc1QwsDcZBbuNU1Rc61t5cx5Y1df7YrSteNdJNAMLimMfnHT1idmfGKA3vSrC54NjWZENFqr: '100000000000' +- DdzFFzCqrhsjuiPr5P2WFmJzdQn8LiqixgNhfBqWSzQgpkjWZem5iYC6m9roZUUuoNTfRWEbhP5X3RqmsC3u7zgw9kUHnd42cZjyVPmx: '100000000000' +- DdzFFzCqrhsh7q154dg5ieHsvdjW8pbAQ7mJLJo464mSPn1kccyNXT4yhwfN9YBSitVUiRGs4cw8wiy4PUunn7ssmtRxwU7nfwxBhyKU: '100000000000' +- DdzFFzCqrhtC6WPsuyhqtVPmWEz3MdT2uDk6JW8gVEb2J4Nsi928Zmox9uKmEVXpzw42NhprGXRLiAgQTALRU8x3btiUdmnAYWXY4k4r: '100000000000' +- DdzFFzCqrhsstkWYNBD3fpeP8xSXyQHzKySdNfSZVsPqQ1jjL8Du7YVBwB8bPqd8RJP9M5c6S3pav3Ys6fueage6Vf5MWGGmgvTZGKbA: '100000000000' +- DdzFFzCqrhtDEKPFcpmBG8EXTgXKdUHFALzy9yBzasahChmSxyXFnUMch2LBFDgB6k2u4TtRbE4zPCc7vokG3vMZkJoxNaMVHaoZwV6Q: '100000000000' +- DdzFFzCqrht1QvSXSVcFCPE7dm9eaVB56eMRUeKadtnREkHC6jN3WR19gWFscoAvd4tT9HB1GGhYUrdVj7yBYvh5Vg3G38Qd5jwAqFY4: '100000000000' +- DdzFFzCqrhsu37FVmDNLAngSqp2fZoX474mzrXYHGM3bDeqsG3nyuu2rLW1bhndHG1XL9NoPikGXb57vdsiFGD5rvfXCTXyPNAUnM86B: '100000000000' +- DdzFFzCqrhszt8RBxLWN8raBaqDR8hTW91qeohZ7KfcR4bWXe7t7CYZYmQGR4qzZ8qc5WzoqxVRzPEcTSi9Naz1SZNavMEXVGm92wmV7: '100000000000' +- DdzFFzCqrhsxYoxRtXRHu1G8QjF42oLdYtUvjTUar19DTr1c15rWhfMhVaumw5G1T7suC7UGbjPSHzwNbEwrDzpVBRzkM2xUioKEr8WJ: '100000000000' +- DdzFFzCqrhsfbYrsF3zrvznBw8aN2Rb1nQiaotFDhaJzXTTcW6EnMN8KuNqV6NRMPkZ31eps3PQ93FxdWXm4wdC6PDXQVaQ4N6R7nHmp: '100000000000' +- DdzFFzCqrhspPG75WPd8Ff7SfSHHUj1ThjyX4TTrNdSRfR3Rf5tYc3KCHCsPTGz4bmZcQh2yYVFvZ3a97K8pm2xaYgcD97o7C4xjHh5m: '100000000000' +- DdzFFzCqrht1M1m7hBpVHLTx5J1UPk8G6JEmjBpoHiQNpZDf9vFjTtJYHhvw7WvUHFEogWefTzPdeNgyMAfG99axy3bpAer5hdkMwywJ: '100000000000' +- DdzFFzCqrht5yEbfJY72VZHKbizsKmAfWErHKmQ7X2SCwBAbWJys2SqZqwsLwek8xYZqFDyCP2j22NaxzwPojehgqdCqPrBLvAMa7A8U: '100000000000' +- DdzFFzCqrhsxQBAhsAKjiohg5X29WKhDgByq1iRfBEY4zS6RtBxskJqfEdHr3b6xEQrYS4FZ2V42z453V4cPoPUnk9t5Wnz779RKyVPq: '100000000000' +- DdzFFzCqrhstorkTmRLeMuVgDGYCMdS5cCjNVqkockyTNe8VDU2fHLFFoy5vZDkZCgYSXhj1xQD5Dsjy6m28EELmaA75WfcnWJqURKN4: '100000000000' +- DdzFFzCqrhsm8CuhbBL8Gbaey66LTHPUnZAFxzwPmLGfisT7d65Xj4NMYKMRtdVHeF95gicTCbkj953KGxTnsrfMnJHKjv6eFnSPeNVg: '100000000000' +- DdzFFzCqrhswSDgiie3Grt8pfU89fDmnK9M21Y4fH6YD62vv4nMV7X36BFdjqz26sYuZoTYbKCZXWGsBCroZdbj93Ggsa7JmfoyBSnf7: '100000000000' +- DdzFFzCqrhsr2e1v3shpmm6akAoXe3moXZ8gqVgft8f8nKhHGvbw61nJ58bTP8meMzfK6CRLydqBFmgiyhm9nRLytto8idY4NWVYwY4R: '100000000000' +- DdzFFzCqrhsq9ksjqtNkiTMCQRefFRpFZymKYR5KY9K3dx1iuMDLfnxbcCjttmApQS3VqBw44kRcVYZqcKkmDLX6BQSSdJpJsjrd1F4i: '100000000000' +- DdzFFzCqrhspPos2BJmUkkG9kWTb1N5mrqkWxt3xtiKJLAZfkgYB8pe8JWmDwfZEmAcAfHYdBFfQX5f7eH85vmNGwVXNFYYMi8et5RWK: '100000000000' +- DdzFFzCqrht4zmwguWjWYscg1J2Amgdi51qFbj3jZxZuVFtWbZj7KhkwSVmaj16CuaCaQ8mUvn9BH295Tj59hMksNSvUPLrtPE2J3Q8A: '100000000000' +- DdzFFzCqrhsjrzU9wpS4MKuGPwtdGvBMqLwAArAQhDoZdhF1TyTPzVPiVfnZsXEhK3Rg2HByeMYbLs7CxhNZQEbeWiTMZgQ6S5nKvvge: '100000000000' +- DdzFFzCqrht5Ks8m1aUaucNsgjnH4W35JWue68wtiYfmRtsuhLZ9F29qTFKJf8PXU2RpczMmf4C4sMVFtSMSpgz1bfgxk8HtEYDeHbKh: '100000000000' +- DdzFFzCqrhsgyL5jMQK7VQkkm434yEi7XDiZriD8YhWtX1bWXD1qr5w7Kr4Abeo6QrzDPzNDgYgxzhvCYNFjtKV321gevYvSWCxF1bcg: '100000000000' +- DdzFFzCqrht5NXVz2Pt3kcdsW3Q5qtRZCK1wfKZoV7am7P9yD4wnj9rHgzm7nMpeLtuZYrUdpioQh3Bi9tLGAuvHrK2uCztxff8k6Bi8: '100000000000' +- DdzFFzCqrhsj1TXEZ9wx3gfT3UvNJjijfQPe9Qmcbt6PxEmmbeCU7i7rR2QkbPei8CyGvipmax8NfxesAXmzSCMV76ozUDdzjw3Qdimo: '100000000000' +- DdzFFzCqrhsdpJZHrVp8pv13Lvz4TxNrhTPqyt1Hnpad2GzhRikEHaon3XRfLZpr6973nJn668ebtPUgL9FpSZEH8UiYzXnKmz44iaNA: '100000000000' +- DdzFFzCqrhsen5WXkaCV1EPz8U8Gkhn9nP3K5iJbLJKFAzGgnfDydXuASTJzpm4CeHujWMKqh48P2Fg5CasgQuM9LezhPeQhpsr6y9GQ: '100000000000' +- DdzFFzCqrhsqyT7BNaHpE58gLaBwjPgQe8TT7gyx2mj8f6YzD5ZEnu4LFTK91aiLUDzfUQzpU9t1AxV1MvVpftNvt6YWoFu9rLeMvQYF: '100000000000' +- DdzFFzCqrht5w7Dv7kVW1ivoCvRKh3A4Ju8cccPGpNNX43FcSybrVXWyrNXYFSut7q7ogQaJXeJ7ycEm71oZ9T1Tv1zv78VXdPNCf6A2: '100000000000' +- DdzFFzCqrht76Tkn6QzYeFSPRx55Qmoqz9yeCKV8RjLGueNdDaiQBPyAHhsZdaJLXiovZzyYx7MjMHaDF3iGnv2aA3He4debEgAGrK9C: '100000000000' +- DdzFFzCqrht77LAUt13bNaQD3xrkUDWZTkdwHEyUzd1WJyoZpdJV7bME78s7xcVF9j7PNjBis2SbRDDSASrcKo4ZS1yix7shKKPmnVcZ: '100000000000' +- DdzFFzCqrhsdu9QdfAi2BmXcmdV1DA4zHKsEtWdeti32jpKzQC9dUpGqy4A5WPWgoNSvwhmFceVj8BTVna1Fq3jmjS3NbyAqseACNhqm: '100000000000' +- DdzFFzCqrht53PjyZUcneCYf9CGnHxnpc8fbsqjhVRNu8zx9onVDX5rS623SfAJ4enUZseRsFehCYXoTiMFnZrrXk9daNs87EMVPupzs: '100000000000' +- DdzFFzCqrhsdwALkqZUNTYvqq1cM1HDP9iXzWfEwJktgnutkDDzhEKRYa5u6DLf2Qbgo8bSEhNjrjVAFRK5CrHH9tvxhSDoV3u3xG1P7: '100000000000' # Icarus wallets - Ae2tdPwUPEZ9CbZnamvZsqj5vpQe6TwUNgVtFzTUeMjvk99BwtvMeSe9KRS: '100000000000' - Ae2tdPwUPEZCjKWc4sRBRHhWtJyyvAE8P5jk1zGJL7sVivMrbEminDtE3AS: '100000000000' - Ae2tdPwUPEZBT6m1fWaekRtXtKnTk4oyDC3mrDZoLSmsdmFBswdUEyVTD1N: '100000000000' - Ae2tdPwUPEZ6FGr7qJQzsjmAis4TH9p5PiccaSzDy3epNfnijigXhvqjuRV: '100000000000' - Ae2tdPwUPEYzLXeB3NuYYouNwF3ut9CoZUHTnV9BaWMXR9ELnn2VEYMtJLy: '100000000000' - Ae2tdPwUPEZ2hRRf7qxoetRqCqWcoekNVdWgeMDvcycUYvTwFgxnSj3tv71: '100000000000' - Ae2tdPwUPEZ84xfQnTBg2of8xvP3auzM2NsxttaWikFeGWHXXhDLPPHWYtX: '100000000000' - Ae2tdPwUPEZAeXYwmaSwKb7cj1smTacYE1y3BHzgCKreLBgccWqNEqzADvB: '100000000000' - Ae2tdPwUPEYxFW1qHXvrWBEwNXhKMYxSdGcouVxW6S1udSCsGsZzcP5AG4K: '100000000000' - Ae2tdPwUPEZJbgFPzLxpQ66FkKpusPCTMuQJeHTP6VEFTgUVHqy9oAKRTKi: '100000000000' - Ae2tdPwUPEZ9t9fA55Ky6Kheo7fp1CadoPBLV9sGFMAz37hbDuYbprfqG8H: '100000000000' - Ae2tdPwUPEZMZF9obmh6qQyUpV9Prw2njh21r4LCbUvJ4dLBM8W6wbqoBTz: '100000000000' - Ae2tdPwUPEZ3vjD7tijceV5nofKJPCbo38ALCcJ96yrbFxjUHZRqEEFVUp7: '100000000000' - Ae2tdPwUPEZEMydxoUBCYJst1gZSuqPtvzTDs27vDURrMaUXzztoBH54aRD: '100000000000' - Ae2tdPwUPEZBkPn3hNNsD9mgFxDFHbALb9fh9fXZaqmYk1M9PgCoWxVgv9v: '100000000000' - Ae2tdPwUPEZCwCFGbbdprQqKUc57PoxBipLwVhVw45buSQAMmEKZN5rUxcH: '100000000000' - Ae2tdPwUPEZEXQ89XLfn2vuTvv8cAFoBA9cutYtNMa2FY5p9vNdq8x7CgBH: '100000000000' - Ae2tdPwUPEZKEwDyJHFeZYNKwCZG3ZDKugj2epNJ4QJvt8HvKhxQomzKX8N: '100000000000' - Ae2tdPwUPEZCPH41CHRo6ydFnq3b4WwE2wvYwLULWMAXgTyfrVFsqYuckUf: '100000000000' - Ae2tdPwUPEZ6gpdpSwcQncGLkdk4RAfco5aApfaSUNZaQdxwYS4Kecz95SE: '100000000000' - Ae2tdPwUPEZJ5BCs5wCMTo5w9PugHdwCGQHt5Ezv6jzib4qH2NPYZNtnYFg: '100000000000' - Ae2tdPwUPEZ53mQaXLxW9w4C4K5RGu4MyVbtMhhhCqUnub1HYyVVNnK9v3K: '100000000000' - Ae2tdPwUPEZ7QzV64AccYzKZU7UhejzQ8QH4FUJbCHqp9ApccoAtSCzAPvj: '100000000000' - Ae2tdPwUPEZNFTfSVZVB6GnMuf3zEBPUednPwX9fttdLZAhpDJZm3Hr7Kx1: '100000000000' - Ae2tdPwUPEZ6hmBiNFqRdpG1o1rZ5akRnVfdgSECD1A6d9FnMF4nq2MwzPy: '100000000000' - Ae2tdPwUPEZCBVAkDmX5xLAmHgTJY33mU7ATKg3eau1MFPu4iALGSdR2UfP: '100000000000' - Ae2tdPwUPEYz2ryynipU2cM8qpkMyDya85dBpDUFaG4KPnVBjwCUrHQUSH5: '100000000000' - Ae2tdPwUPEZHbbFsAxgxNBBLdfYpmQH23xmMnxANrCXKu5PEcsPnUC834aL: '100000000000' - Ae2tdPwUPEZKvTGfva3r5k1BjnSU1mwgX35sob4AL9fvJnvwot2aCLonkPN: '100000000000' - Ae2tdPwUPEZM4hC9yXZUuf2V9w5uE5Urozt9R51j4dKRyC3rW31SZfQ5wZT: '100000000000' - Ae2tdPwUPEYyUapnFvgSr7cHEGYqVfGSkS8QLA9d6zC8ESu2ULTD3uPsSDR: '100000000000' - Ae2tdPwUPEZLpnoNNUf1Zgssgnq3M2Py7vYWaXtCaa2mKjVbqeaaCdmh8CD: '100000000000' - Ae2tdPwUPEZFoT54DRvCDTM2dffDcwy75srTAwqV3JQ8WPXZdJU65zTSeL7: '100000000000' - Ae2tdPwUPEYxqxw6CYgrdgvW8iBbYtP5RpVHoewWpnWUc1HxP2zEryVAYdf: '100000000000' - Ae2tdPwUPEZ72idRngV4tz2LTDYqpJWAgrrb7hsGN36wWYFQH7dRkZzh8Vr: '100000000000' - Ae2tdPwUPEZHk3FoJtJ1nq4LP6Ajme9MtznQZn6AXXigjGSm4ypoJ6q5EHp: '100000000000' - Ae2tdPwUPEZ2CB6bhGuV3E2gJ8wVBZFnW8MWZ9gtTUq1kLRBvBty6u6YNkc: '100000000000' - Ae2tdPwUPEZD1hu4Dkq5ExcntDEGjHTt8JH1zT5ijPkmhdiVeCbZo9po3SD: '100000000000' - Ae2tdPwUPEZ3f9bQ8XRwKzMbmLnBUE14REw5PuaWzCXGtS2X3fMSzuzZuqM: '100000000000' - Ae2tdPwUPEZJTZH1J5oCnLXeVPyBwkbuddMRuMuauZ1t7txkT1ynpQZJvi1: '100000000000' - Ae2tdPwUPEZHDNbJuTCebMCxMSNytbRbbtmrXTCdJGEJez1BhZhEBoAHMp2: '100000000000' - Ae2tdPwUPEZG87YBDmuacpg6kQV7LLZEio28LXkbSeLz6oUqsjWdowDa3Wf: '100000000000' - Ae2tdPwUPEZBXw9gywojwx2bXYHk3gKBhSKK1S7xrF2BgMcEk3ab3Bb3P8P: '100000000000' - Ae2tdPwUPEZ9rZH8FVtHdT2g6LbyU3wv9PZVUS9MpMj5jrrpnyskDgnfbmf: '100000000000' - Ae2tdPwUPEZDrbgo3gBvRzJncARkVysRniLTp26QuRYnsp9QeReKRAFiMs4: '100000000000' - Ae2tdPwUPEZFaiMZkRnArEdD5tLF2mK1v1Jz6ocuQLdjzR1UZ4yL8tDenUb: '100000000000' - Ae2tdPwUPEZLoDUMrpV4bvVHMrcef28CxED9oCeWVHPmBjmi25QG86JkAER: '100000000000' - Ae2tdPwUPEZJjN8qes1hxWYPRzeQoVBmzoHL87dW9ZZTo4DURTcV4VJzSjp: '100000000000' - Ae2tdPwUPEZHisqwXFgcegTeeEVkbPWknFeexujv4AhFBpDLEQDt37VEpPZ: '100000000000' - Ae2tdPwUPEYzQTSyqGffL97S42p4Kn4151CbpNPkNy6HhD95mDgVC42FcAw: '100000000000' - Ae2tdPwUPEZKoKVCyUfvuh7dD6sb4nME361R2d8LiDFDtKcgQLyDH6o6ZJv: '100000000000' - Ae2tdPwUPEYzgHhxnLQWo7LWuxSEHaageDhRqzLJGVPJcp13oN9XvFDrvpj: '100000000000' - Ae2tdPwUPEZ7hX79gagSogoHmgqvYfTVbE1QenjBWTDeWSXRj74caV6Ybzd: '100000000000' - Ae2tdPwUPEZGu6E1q6VQNTH5AUU5WxKKC5p18gBjX382oEuRn9rw4BL7QqW: '100000000000' - Ae2tdPwUPEZJGKJJdH7vmjXDnEGE2mnvJpmmzkgPA9wqwQusiaNu9zK5tbb: '100000000000' - Ae2tdPwUPEZ7yRuj5Ufd1H4JfQfpDeJUz9UwTBRQiW114wKMv1EbwXc3CzF: '100000000000' - Ae2tdPwUPEYzVFgja8tieWubwKUSnxPTZgogN1n3eQR4MRgtBWoxdZjpS69: '100000000000' - Ae2tdPwUPEZ3yuDr9bUjQsqYwuQ6fsU2uRMrtetUmUddQ3js36Fvo6fPQMs: '100000000000' - Ae2tdPwUPEZ9YPk5PkhbNeQnbGae38V3k5vXrpMR4kMXLdUNQGRFDTmdn1y: '100000000000' - Ae2tdPwUPEZHwYNYYtDUXJRqb1ssVu3QnPqKfkQ5SeC6SPHZWpnf7ioa4hS: '100000000000' - Ae2tdPwUPEZ1UYrjuQ87Y6PGnETHeduWxWkrhv7nWRrMywBRUYCgAnshEVt: '100000000000' - Ae2tdPwUPEZFV7UWLNKHHLkeibYnjpLmYknUMSabeMQQUSThxegqewFnmQA: '100000000000' - Ae2tdPwUPEZ18qDPCBnuUZmoX7sHjqt4SkTXdEysaiLrTaDFiiVKmmRpbrz: '100000000000' - Ae2tdPwUPEZ1DZfhPiqgJmLQ1cFq6WbtRNcppQrajNfYG7EUMC9fz4a8Wjo: '100000000000' - Ae2tdPwUPEZLqUBNRwSeAtdHRjBGMwcZKeuawfZd3kkJi7d2kWujki9FzEs: '100000000000' - Ae2tdPwUPEZ7LndjRSUmsJQaA9uQB4hFgAAdzsbSniXdzYZYYwFaEQ2aXF4: '100000000000' - Ae2tdPwUPEYxTXUvPJUGGkVi22fmGBRnqib5mZLuZpef8P9NRxfAKZmiUmd: '100000000000' - Ae2tdPwUPEZBorBxQ3LNZtuvwtGJgxigk8Qtr3z191yKvpVHmghgETxLZjA: '100000000000' - Ae2tdPwUPEZFP9XDgqvEfyxxA5fwNC2foMAYP8i2tJ7iAw9HcS1deQAyzNV: '100000000000' - Ae2tdPwUPEZ98cfPdpJszzo7NX2oyqnntXevBVTsTKQfAJm5EThF7bK93VF: '100000000000' - Ae2tdPwUPEZFayinWxke6wYgHrEGZj8c6PH1kvWAcZtnHiBo538ZH9Z1u54: '100000000000' - Ae2tdPwUPEZJhDM1zkiZYyehsEJPPHBX7RkT3g8CuqqYV6RZsD4bu6v3uF5: '100000000000' - Ae2tdPwUPEZJH3cD6rZcxcuYffzoYX2f6nnVanQEcXgridHjafR8ExnjEfp: '100000000000' - Ae2tdPwUPEZKREfBnaR2Dsggw8EkVWGnZVa2BT56Knifxy55ZXpCmwrqQiW: '100000000000' - Ae2tdPwUPEZCEEuSQGATQir8GavQykyWKM6c2e4m8VEmsBbJ8NY7Vz8VTNf: '100000000000' - Ae2tdPwUPEYxHGAwkPtNW8qW63Na7RzNaD5HW9amgagByg1hd6pmRiDEwmJ: '100000000000' - Ae2tdPwUPEZKLEBt2AMF3z5ng7tqeHcjs8oWgvV9eXnFKANMzXnP7fdY8Cm: '100000000000' - Ae2tdPwUPEZ97snjrcU36viZhV7GQGNEFUdvB3TgJ2KqZb5vTf734LAV7nj: '100000000000' - Ae2tdPwUPEZJhkmTnn8j9AHVRjCzdGJdr8rCcip1Pc4Wz1ZjBR3kytRVgGH: '100000000000' - Ae2tdPwUPEZJHw1SqqJdG5HkpQx8K7hKCBY3v8McntQoKERgZGqrgtvP6xE: '100000000000' - Ae2tdPwUPEZKye4tAhvu7EyojYtLt1f2YhD1bzaWJsPnK7bnQ89ebWrxiNa: '100000000000' - Ae2tdPwUPEYzo1SMdPsSVheagaxMDCS36SM6DGi4rzpYy5pqxW67PD9R8mY: '100000000000' - Ae2tdPwUPEZ92siraj8GpXTRoKgS2Q4UQSdy6UXTiBJ3AsjpfbiYqK8fzeM: '100000000000' - Ae2tdPwUPEZHxGS9WQiQWKb2bYHQwqjwB5UiPhR7SyvoEE4VroDzP4cqGbg: '100000000000' - Ae2tdPwUPEZ6F7S6R4hyC3bMx9unr55mH32FdfyzxywFnHU2xwTpeGWmX41: '100000000000' - Ae2tdPwUPEZF9wESGBLARRTFqj8SyUyqEtFeDt98wvUUKkjhetx6tmo7VRi: '100000000000' - Ae2tdPwUPEZ6VbCbFSw8vednot75f3pqSitccu9mfL8PtY2a4ApqXt5gDei: '100000000000' - Ae2tdPwUPEZDCr7WL6efn3Zszup6mqnHAeh6BZ4tpR38VRFirMzrkzZje9U: '100000000000' - Ae2tdPwUPEZ3hajHbGabZGMWV1jeHChUpxiHRmoFcF2RMbp7LtDFAjNyzR2: '100000000000' - Ae2tdPwUPEYwnD9hKk8Ju3uQFaPfrZeCM8eLcNGuSBw6HDCEpnRMAoVk4Yh: '100000000000' - Ae2tdPwUPEZAMx6daGaFA5AqmsUbLgXvdBZdvbYNabc5HwuH4HSR4FArgCv: '100000000000' - Ae2tdPwUPEYxkewyCrzUrSE573rnbJJU82vnCaV7gLgoMDxurHwRDLWCbGi: '100000000000' - Ae2tdPwUPEZCTmkTcNnhpQRR6Y4T3gSSgLX45RkgdMgEkWWCSVQind4BQGv: '100000000000' - Ae2tdPwUPEYxJNjS9G1CWZZ7oK3dE9Lj3zr9v9FqvNHuQVTzv2L3Za5cUSe: '100000000000' - Ae2tdPwUPEZGLkUU4xVqcn53hBraSyxxm4JwiMxPMnZd8t4w4kCKRrrGt1r: '100000000000' - Ae2tdPwUPEZK4tJHCDj5ZPmh9GkMVBK8LB9viUXinWKNum2zeN2Wwe27G7B: '100000000000' - Ae2tdPwUPEZBJucvYyV8Tw1tFsLsLBNM3ryfuME65kpBQBn8eGUs2dKrLDt: '100000000000' - Ae2tdPwUPEZ6A1QwNygXpdtV16WvihLJ4kcf4sMDM5coC54JHaTf1KZHB9T: '100000000000' - Ae2tdPwUPEZKzCY55tHrSw3d27ibdH8Jhu5bmhqCwryA86gcJeRTSZqYnSA: '100000000000' - Ae2tdPwUPEZ4tyQR1CmmsZtNy4BUx7nP4GkNMYS5BwUNRq3rcdDudMksn5j: '100000000000' - Ae2tdPwUPEZ44dZvh3Z26i7tURh66UgsYzq3HatD8E2eLqe7iRVUhRyWgqq: '100000000000' - Ae2tdPwUPEZAxF82KqfQobHK3N5cp81BpXsT3pKRK49fdKEDv5aErbhHAnf: '100000000000' - Ae2tdPwUPEZBQgC63vHEq8Pia7GnThMkZj2fLL1ct41rySaZ3cbaCG5eLWk: '100000000000' - Ae2tdPwUPEZ5V9UaqSYNQrDHajyCMFmNwQF47FgzXDrSAJm8UnKpia2n41Z: '100000000000' - Ae2tdPwUPEZ2jRrynT9an1BhJDWRMzuPq2o4SbcrwEfp547jhi5KBQfSjqz: '100000000000' - Ae2tdPwUPEZAWdcTqJBm3WU1NEvVdEF7Np9E3Menad8eXuEQLmCfAKPcuVJ: '100000000000' - Ae2tdPwUPEZNJZa8SyZd4Bpfh2K5E7SU4ha965wLG5ppUwB3WsTGz4V7wyc: '100000000000' - Ae2tdPwUPEYz2bX1Cjng4gdQgWLJztL92kdCVzoP7cv3LssgUfksKeBuqjV: '100000000000' - Ae2tdPwUPEYzTJj2S4FKbyxDazf5pLF8wWTCy92zq2tPyyVXogc3tsX6VA9: '100000000000' - Ae2tdPwUPEZ5DjrpQYgcdBNZ5QbsbNBFLkcHQfjqakJ7jLJGLhwumNKCQMm: '100000000000' - Ae2tdPwUPEZESZekewoEvS4Gu2CXePzN8S5jzMrQzitpUGrQjMiAcE16mtj: '100000000000' - Ae2tdPwUPEZKfTpxjHXxTnkSd5KDKHqZoXzzQ6dP7gWW5qViVLvWz8E49GG: '100000000000' - Ae2tdPwUPEZ9dYypZ8MujGzohGUFth6jRm2zpsve17Uc5VF4ik3YLV8j4t5: '100000000000' - Ae2tdPwUPEZ17zd3GSobgex9apxwXUsPesezueFvdzkKX5S1m11mbiTeSfV: '100000000000' - Ae2tdPwUPEZEKs2YqyduGgngU2o2veqrk6fZjGDnW7GdexBF6Sfo3SLt5BD: '100000000000' - Ae2tdPwUPEZAw6JSmz4oLYn6AFGTXTx2mN41jZFUEYtfCzPLa9DFrn4VU2F: '100000000000' - Ae2tdPwUPEZ4SogTJgoPViU8MH6NrBLXECCNJGpVTLavPbJzsAJfNrAH3Qs: '100000000000' - Ae2tdPwUPEYz8wxMLTWuRcPLkh1KWWYbgMA6VNyKbc6YT64WyCBtpPigfTv: '100000000000' - Ae2tdPwUPEZ43fSQtVLfKpKgzo3avdDCNsZNWFphtumcr9dpk9BvVR72Bpd: '100000000000' - Ae2tdPwUPEZDV62Rgc4HL8A2wVNfhLgjQW8Pip3gRZgMY33AYKer8vTSa3E: '100000000000' - Ae2tdPwUPEZ2uF4wHtZeHieavknWfo8wK6oJ7EKQuhPivCQdWchEMBidwrp: '100000000000' - Ae2tdPwUPEZ3AdJWunrCm9DvBWNweoa7V3sG6hEkyYjo8Lx6ifQmy1PmM7m: '100000000000' - Ae2tdPwUPEYzoNQQUCaiW8aWQpatgpBNpLbLx7NUKFqqbBNcJQWxGdUKsVk: '100000000000' - Ae2tdPwUPEYy2qgZAS3JqDKjAYrRq9d72JBjo7MsMh1ufzELtRQbU3DfxD7: '100000000000' - Ae2tdPwUPEZGEFvshtd5RXEyTQukbBbirLDr7H1nG3eX8iYXFutetPkRLf4: '100000000000' - Ae2tdPwUPEZJZ3ntYzKwMiJ2NvvoVDVbBDGY1A8SieFV54f4QnHQtQhBqWq: '100000000000' - Ae2tdPwUPEYzbLk4qz4J2zRYKk7GD3STC62W6VwvEQs5xXPehP2nhC6ZJuV: '100000000000' - Ae2tdPwUPEZEQRpoinX1kBxbmxPEEiBohJbw7byuzu7zmD8r7n47gvuxHiw: '100000000000' - Ae2tdPwUPEZ3U4wjcH8jfsZhByQsJmcc4cAUcPXYwoAgjygL2bZsZQfo2yz: '100000000000' - Ae2tdPwUPEZ9C9jvGbgBhob5UjkvTrbniWBfZJPHjBaUvkf7QzokMEjvyA2: '100000000000' - Ae2tdPwUPEZMjeQZAR2zVuXDxmbYCJZYwqEs4u8c1BBL2urxKU1Eg47qqdn: '100000000000' - Ae2tdPwUPEZ1wjde935ncT9xZa9Prwmqi1AAg77mHVSyYARpbrZhqToxNfY: '100000000000' - Ae2tdPwUPEZAXmspP3SJGsFjEL8FFEeajb6NJGRjQRYDMEYHY8Uy7Rfc8mw: '100000000000' - Ae2tdPwUPEZB6Vq9YbkPnCD8vyWbWbpTb3bHnh1NTTGZnrbUN2mBt2oK2FT: '100000000000' - Ae2tdPwUPEZDqP1ooXnVj8K1iSoAep6YFXvBdxkAqpQDYUvkF6T7zBX9Gr8: '100000000000' - Ae2tdPwUPEZKKe93c1DSP3jdGaLLf1QV25P5KGS9GTpR2DR7VB2E7ZbpVUT: '100000000000' - Ae2tdPwUPEZ8v3EN8AaLk4u3JBwxopVr9eA1EYSKQZ6ZTUkx2WbvvYVxWhJ: '100000000000' - Ae2tdPwUPEZ4UQ1TiCtBMkEXUbQHpxvAVJMMqYacjgQ5an2oRFLE6ZaCqvm: '100000000000' - Ae2tdPwUPEZ6NLB2T9MpHqi4yHSFiMetTGXGsLKzHgdfDTx7SH4kTVhB3zB: '100000000000' - Ae2tdPwUPEZFq9QNV7QjyhRHf1j7ZAKraJGCRvYgLEmJ9CCp3hXYRK7xHaH: '100000000000' - Ae2tdPwUPEYxETqTVLXf5QewsMYddgztYR4q4RTQv2ZgcHRcinFgfCE75vg: '100000000000' - Ae2tdPwUPEZ8QeqaTzBKjzYMx6nPv1fNfHDPen3DCGuPeAqwEJLnjPXrwzn: '100000000000' - Ae2tdPwUPEYxUePM3oHmkrvyn8K8o64bnPZQD33LW2GxDgn7YGkDeiXg5Jz: '100000000000' - Ae2tdPwUPEYz1ZH2X7ZpAJagbWDW2HDJbqixbw1w5PYtk8PTY72o5xZ51HL: '100000000000' - Ae2tdPwUPEZ7agbynn2exuo1y6CPEsJCuWFzzdWDp4WwN9ZVHuWrBhus7yp: '100000000000' - Ae2tdPwUPEZBLcoTDJdnefFiF39U9DhzMDaC7Yzti2N3fmqJ95dqaLdBJNv: '100000000000' - Ae2tdPwUPEYwzJsYYTkbWJoPvXkcn7hfp4FRi3xHvbcLAewub8DZXX7CSSi: '100000000000' - Ae2tdPwUPEZ7ZSFv6YrRs2F5wPH9iCfudBjfwrWJr2p2YtT19bcT1cuDXAJ: '100000000000' - Ae2tdPwUPEZHA2Bgr6XT8ZwEkiUQvzFK71gya7ED2K6v6pi1jFXaT7GdmKn: '100000000000' - Ae2tdPwUPEZ9tVtyj1cC7WKknx3WC2Wq56uZoZGuwKM6GahsaGiiSeAHt6m: '100000000000' - Ae2tdPwUPEYxWxA66PhgAV3GYuG32jptf5MVgCPHxPZaLFMNpEXH48HLDTk: '100000000000' - Ae2tdPwUPEZN6BwCB5hoqFm3oK8qC2xjtEkSv52UeK3vaRsJiB6RL9GNYXE: '100000000000' - Ae2tdPwUPEZ8zraXmkS2qPuJJDoqohSh7uoTAMUpdLXHdFMiFUFyYhyCuWx: '100000000000' - Ae2tdPwUPEZ9X3e3qWK3XQHgM86hQ1oeL9dXu8c5zr4VY95CgHp7MgCLDN1: '100000000000' - Ae2tdPwUPEZ4Qp5V7LwHCXrZbWFkiA4ksJNHceHEcdtazKiRUQiT4hurkRH: '100000000000' - Ae2tdPwUPEYwU73nG7Szf2cw16o4oVVSogArjrmb57BHoMYksDNFJemy63P: '100000000000' - Ae2tdPwUPEYvy3bpvbX4XU9TzRxtQzuX5qB7KmTKX4quQmDRgATTWqb2AAJ: '100000000000' - Ae2tdPwUPEZ5Zjac6pucQcez81iCUTnCp7xUpDjtJfStUjLGK5biHFUiSiu: '100000000000' - Ae2tdPwUPEZFUHhBy3baagWZY3pAzTSmecL1DaSR4CinhFXsn1LdVQcfPUq: '100000000000' - Ae2tdPwUPEZ8biBAsW2pzoPVrUmEussYCKQK8ohqR8Juf1BBr97zmoL24FX: '100000000000' - Ae2tdPwUPEZF3G1hWedaTDy7z5nmi9T7wH6q8zpmtmcdTUX4LPkYM54F7jP: '100000000000' - Ae2tdPwUPEZCqnehWJedr1cAhEh3PndtepQZDZWXAnEH6CmoCyQp36MmVib: '100000000000' - Ae2tdPwUPEZJsgsQ8EywLdrCkWchoSw4dtQ5B29W6kajMoL6HhBHZXbPtR5: '100000000000' - Ae2tdPwUPEYyzou9NfTcGn9HMEsQPQaFotZiTuDNTCj9viKCqqLTHJf9kMR: '100000000000' - Ae2tdPwUPEZJPEJ3NM2Do8V5P61AYLGtpxc27rrGE33eQCqmVzv6kmBzhAE: '100000000000' - Ae2tdPwUPEZCjtQAmSvSFBJa9tLDUVKV2zNfR4xhkCCE8B71vjPPNej9erU: '100000000000' - Ae2tdPwUPEZ5Bt9dTKqD8iHTtJpzttGRPMSLLVraXCfSYAFewLruvSSXkQw: '100000000000' - Ae2tdPwUPEZLjVEJAkF7JVK1NrkEdtEpcvtFnd56bf28CwGfEMHpamk2R1N: '100000000000' - Ae2tdPwUPEZ4MxjzgeAVts5xkA3a3KXFw7Hi7gQjBaGVxLUFjZd9bJiqCz6: '100000000000' - Ae2tdPwUPEZHgYmjSPK4mqErqEPCYrCaGp9MBxsLNLNfFVFj31ZPR2vZWnP: '100000000000' - Ae2tdPwUPEZ3DDG4G1rnGGbWj2yhrsgi4LW64rV7D7hdRZ1w9iDPzaBkw81: '100000000000' - Ae2tdPwUPEZ3M79mNDBaZm3Xxx1yTxmGPzwmEx1nSfvj125n8UKghW32Vps: '100000000000' - Ae2tdPwUPEZEURY5ybR8TWu2z9iVMbJR3A5TpvcHpW2L6KodfR61TshTM4g: '100000000000' - Ae2tdPwUPEZJbnq4XxL8B9c1LHmG3VQ6WnVHzHjck1fu32ZxmwgCknawaDU: '100000000000' - Ae2tdPwUPEZM4S8WznaspXyaNCz7oYc3ED4XEFaTNS9uaDk5eCzaczwNyeJ: '100000000000' - Ae2tdPwUPEZJ7cysTFLJ38GAQQYDKyh7bF7QTNZutixaCWmGjJqUtzgc63T: '100000000000' - Ae2tdPwUPEZBVNnUh1HBwTogJiwW2ZpVpJ5SofHv1uBtSJnUJHyf1qk7TYn: '100000000000' - Ae2tdPwUPEZ6ZnSp8kJkL88MwAWYnvy2a3p3cbvEYj3RFhH3CTJVHgjuJNP: '100000000000' - Ae2tdPwUPEZ8qsU6yNkZbDgPAgGEya53ER5haQHEyYMqb4gAfRaMCLcSiJL: '100000000000' - Ae2tdPwUPEZMmCSrPtibGN7zCfENiUu4DjqgWKnTdBRwxnwpVRLm87oRwin: '100000000000' - Ae2tdPwUPEZL71mCQ3Zcb5EgC1Vy2oaWhSFLZki67uxWcdFJ4LzApPxpjVL: '100000000000' - Ae2tdPwUPEYxDeiSegEFJAJJg645mjn9EDhbTpdcB4CwPT9aPFPo1xhQfMi: '100000000000' - Ae2tdPwUPEZ6WA45qamy1G2fyeT4SKFrLWNDAhUup1CgrLw9B8pFbw39Gm6: '100000000000' - Ae2tdPwUPEYwYiEZTKhCQa7U9KeRkK95toRBkR365WDFqoVZf1Ak19F52kV: '100000000000' - Ae2tdPwUPEZNA4M3Mw3TFvQqWxet94LTrjbiFHH51jnU2ikycMmUKcqTPvD: '100000000000' - Ae2tdPwUPEZH9yAjkpjaqCK7jNwPiKUdDN1rm9XmLWZ4QHa7M2sk8P2rer7: '100000000000' - Ae2tdPwUPEZHvqGg2oN4QJ2zuqsbkkZnZ2Y2PwLHsW1yEukC9StikdRUAEY: '100000000000' - Ae2tdPwUPEZGAenMEmMDzEbfDoTmPpcJnhAZu3LsQS5WeXpkx9V3F1hruuX: '100000000000' - Ae2tdPwUPEZHsJt8TtbyoGQuxaMQzKrFJz1upBVHoGn6qy2f1KFtSoAFW1K: '100000000000' - Ae2tdPwUPEZ2WgP6WUAHaXjuU4Mg5GourmRaviT7JdJKQmC7B18mdo9rvnk: '100000000000' - Ae2tdPwUPEZHpAm3AZ9oqMjStD6me6nw6Bzs5fpA83f6yNnQYV7FY54k3fM: '100000000000' - Ae2tdPwUPEZ91uU32wM6Qb7cxV8uU1Wsibfwn3WJBZaiWxYuLe6pTVi787w: '100000000000' - Ae2tdPwUPEYw6waL6WVGsBTHU8DJCQt1KVbdaTDDpCeaGJ8X1Kguat1FrC7: '100000000000' - Ae2tdPwUPEZMNHYd6486pwdYiyvHWxkvBtd5RMoUP9cG72N6TmDxmH7utFC: '100000000000' - Ae2tdPwUPEZ4MAt66BNoieVMxpBsWY8GjGrvdGi1xPtzYfHfY8bzR1AQYQ4: '100000000000' - Ae2tdPwUPEZGD7NjNauzvvf5VWu7X9KjsKP7iHWT4xYkgwCvjNienbFpR87: '100000000000' - Ae2tdPwUPEZGdWobiLjyqTtvKJXEymuaygUfxb8ekACjf742UPxKMgw8J2Q: '100000000000' - Ae2tdPwUPEZJAnKz2m7QeYWQZ3rq3VHwjnWW8cp277FQ1oWVM9oxaxf1Yer: '100000000000' - Ae2tdPwUPEZ43Rseb8dzgxJ7o8BeJyFDKKVWupkSvwzLiMRbxnGbri7bBao: '100000000000' - Ae2tdPwUPEZ81jqJDQ56PXGAvXj11C1AF6C54LsYHwq3X36x7rTxEUFt4ht: '100000000000' - Ae2tdPwUPEZCBfkMi5X8bRV91RCKfJwM9EYWQ4eTUA9Wi2mtSBPCSQgDeJD: '100000000000' - Ae2tdPwUPEZ7yyWmfooy6E87GZX3WXQoq4tFkgMTqQ4i8gHYvQQ66TWF8NJ: '100000000000' - Ae2tdPwUPEZ4B3UUq52fMj5AEMpSiudYYvkYV9WEUfh56BHQRLqaEiHrZ3U: '100000000000' - Ae2tdPwUPEZHPGatFrcenhvBrWzxGN9bz4xxfN2JZmtPJadXCRqmqiUGcM9: '100000000000' - Ae2tdPwUPEZ8XJSS4wcJtWaEN1crSCx2NPcutwUDcQCQBZGH7Rn4ktWxogV: '100000000000' - Ae2tdPwUPEZCt25tJ6xeeWJmaxrS198o3G2WCu59grjKMa6zzdST1Spgkmg: '100000000000' - Ae2tdPwUPEZCzG5Bq9Mca99S2xC2AS3AKa2HYKe3zUfwisQaAywWKf39HVA: '100000000000' - Ae2tdPwUPEZ5wgLfsuc9qbDsTRneU8miVKDd4VVnChYnc2PccQfwpMELSwt: '100000000000' - Ae2tdPwUPEZ1RFG81KCTxgLFZJPxFxAgdcwfMQGEbektxusUp61XNEb9G8B: '100000000000' - Ae2tdPwUPEZDbFkB7g1rDbWZE5F7PgJEzbj7J4F6XfEU1R9DKpiF9rmJCez: '100000000000' - Ae2tdPwUPEZJMVJK9bENjToka83ioUyetLvNMfGXfmGuSaK17oJPtY19Hmj: '100000000000' - Ae2tdPwUPEZEBNARZnMGANKpCUXrunwJQDd7fCkKfCwsAdRJd5TbeC5Hzfh: '100000000000' - Ae2tdPwUPEYydLNMtNNeiLEFArMzbrfAhUEhms9TggfSX2HZpKvn19JpUWm: '100000000000' - Ae2tdPwUPEZ4WFLyntPbTpk2fGRaV7ZXjVFH9Q2tQLgGLfC2biU5zks8DvM: '100000000000' - Ae2tdPwUPEZESzAfNGmBhK7rHJd9ZcR4G1usLqT17vdfDdF2XCJCQzExPm6: '100000000000' - Ae2tdPwUPEZCjNmQo2gvGWbdcFte7Msv8HU8B5B6MMbx5mczFzFq66ZdJQ5: '100000000000' - Ae2tdPwUPEZ3Tc48SwqCSiUBBkcNaUXsbr3hSB2cTqrGGN1FL3pviv8TUCf: '100000000000' - Ae2tdPwUPEZKJ2tuoz5hSe2varQ94jdW8RVZUyoqcminPkcDwRrFJYz9V9P: '100000000000' - Ae2tdPwUPEZ4poJvNPT773s7SYuRRH9mWMDG4Eva7RWLxdq5uybgqNbGnoR: '100000000000' - Ae2tdPwUPEZCy3jyej8FAyqAudArSGbd7o28kRdy5AspprdRM9ntwiTpwQP: '100000000000' - Ae2tdPwUPEZ5s1VJbFsdnS5D9vA3VzPZDJxkdBC8472zHSguKAoLMntKzmY: '100000000000' - Ae2tdPwUPEZ8jGNVJUZLwthZKtDvDbMhkp8o69yjbqUxk5NHCqHhjxRL9xT: '100000000000' - Ae2tdPwUPEZ4dFtsNLvezT1rf7wF3Yq6zRshUWkU4pjvPtVCMR3HTLE7RjR: '100000000000' - Ae2tdPwUPEZM38W7d5ZppbX8Zg3uEAzpVmY8PNdwXNzZw8rGhmyCrPRwXpb: '100000000000' - Ae2tdPwUPEZDcy47uhHy56DtZ3RL1Gh9ykEzij4HkfN1nRNB5VFhx9huXdY: '100000000000' - Ae2tdPwUPEZ89D2J23b7KePqnh5dXMdLgXc4LsYJBuXKQcncSWzzLHPfZgB: '100000000000' - Ae2tdPwUPEZN6huac62PMqAsJfWLmBEAAKwKR7mGexMWUJrHm7c3hUHuQ4J: '100000000000' - Ae2tdPwUPEZ5auFwdyGfBHvDSYXwdFDv93QdkQTNK13VRG83r4Rp62JbpHq: '100000000000' - Ae2tdPwUPEZE2FfDA8RScRBthjRE1X111S1Loc46bsFSf4WwUg5AP8eig5n: '100000000000' - Ae2tdPwUPEZG4X6p59Tc6bdWtF5KT8ZybAhM6KV9eJ7Q9576J47a6zjA6pC: '100000000000' - Ae2tdPwUPEZBZMV1mMGXBAaLmkebkLsHyfsskUrSLVsyYV3J38sMHMP4CVG: '100000000000' - Ae2tdPwUPEZFQ3KCXx1SPg28jaKU4VBLbf7MdXmPk4jGq7HBfLubrmPUikD: '100000000000' - Ae2tdPwUPEYz8c2d1oAhwHsSjxjHahcQ6T6D4NHj3VoPH6AhVvBTKUcYZRW: '100000000000' - Ae2tdPwUPEZ2YHh5cDQL4MBwk7761Lf3miKpNDSYqiEZkyxjH3ZQvEKeFP6: '100000000000' - Ae2tdPwUPEZD9MjaLL4cKHYcCxrTgD717EW1pMMYt1wJoKHjg4W9T79y1pM: '100000000000' - Ae2tdPwUPEZ78o5pKwU4zq7tGoPUrXhpLc5N6q4vf4xwLtbJV78XrXrrp7x: '100000000000' - Ae2tdPwUPEYvyo6BtkHXyMHQW3mpbY5jw6adkRVuBEjdbQvPMwtqB5F6SyL: '100000000000' - Ae2tdPwUPEZDTNbb7nwVyyKAeGZEPqKUTbzU5c6fo2M8KfqAqp22HBx4qJp: '100000000000' - Ae2tdPwUPEZ2t5sdV6UwuUxvfLjF2jTCj6xsxmDa2rmVcJu2qDv91ZQoF1g: '100000000000' - Ae2tdPwUPEZG4m83wkwfei4CRVuqHMAWPtLvF4pPzWrbnmdBPJQMBjZ6X2a: '100000000000' - Ae2tdPwUPEZ9gqJdt4Smy3UZbbTaHbimnk5EmtQtyupLgoUeX6YH7oBvfnn: '100000000000' - Ae2tdPwUPEZ7XhNKJ3Q5Wd6T7UGCoxjW8EQFJis2M6eturuJCssBhkDZump: '100000000000' - Ae2tdPwUPEYyYS5rXxkssATS1UQATyhk3gPusGbm7fmh3R8uvVRyBRYgkrR: '100000000000' - Ae2tdPwUPEZDCF1b2F5z5RkhQprm1HEsDrZ9gWXLEn5DYR6PAwxZ6qQihcR: '100000000000' - Ae2tdPwUPEZLh7L5PNqNtZyC7kuevJRBdXRaboAwnVgo97zAhsMzcxHSDwf: '100000000000' - Ae2tdPwUPEZLUkWS2gFqUq54iNoa2rAbPtjiRwRqKYvbrZtts3UzVV8zaM8: '100000000000' - Ae2tdPwUPEZAmbnXWAAexP2P6d6FxJ1KHALKNkqgkP8KF2mY7Ry4TCwSEq8: '100000000000' - Ae2tdPwUPEZHQ1bg4QNidpiGcZLUdaFcWGFpj1WBZ47gCsFPsSPHX7WzWXY: '100000000000' - Ae2tdPwUPEZ3fzeis4aTbaekV2MF85C3tGMW2iMHeXDuXtJsrbir4t5Lwya: '100000000000' - Ae2tdPwUPEZ3crEQ5hStZ6zEK6H3ejMWU8yP988JbiqgvgtvHqG8c9CYiL7: '100000000000' - Ae2tdPwUPEZ3xg1CTyJe3viw8guBo4g8p6YbCi5fnStsZhKbrCnyk1hjfwp: '100000000000' - Ae2tdPwUPEZNDT1HQrdfo7NVqkejhhv7f3NXYBY5yuGieB8K1HcEanCPFL2: '100000000000' - Ae2tdPwUPEZ7zuDhuZfQuCJ59AvWEZQH6Q2tcYYkQuUUbt5RwLNqc3YCet3: '100000000000' - Ae2tdPwUPEZMo5ExHFPhrAo5JNaA45hBtpfbw9uUFEsHcY5iQbL8S9CRUAg: '100000000000' - Ae2tdPwUPEZ3FtUBTxnyucxs1uesPzD3tcGsPU1PdTvouTMXgLNn3BKjiL5: '100000000000' - Ae2tdPwUPEYxE7cNbfJguDBGZ249MRzdmtHEmmyTkFzHsawtyJSkXjXNVW6: '100000000000' - Ae2tdPwUPEZCqizdNW1izYYzuqRmCWLPrGwjXivpvpaY3yG2tdVN1iHTMFb: '100000000000' - Ae2tdPwUPEZMGNUf9vyyB5tVZLXpHpw7f5fUnfWLMGyrfqSYyW6uArHbUVP: '100000000000' - Ae2tdPwUPEYwuDDDQhgwbq5mZ338srdAWzSmHwwyqXF1tkqhZKLAxABBqTs: '100000000000' - Ae2tdPwUPEZGAn3KG8aNRoTXUP9QCi4FeG5V9cRYYxTaWfm1vLMvWHF91EH: '100000000000' - Ae2tdPwUPEZ1EzGZmZZvpu8mvshMcrJRACavoJQPihU47mH3kJSkzzmPgdo: '100000000000' - Ae2tdPwUPEYwZaPBzd3NzofZ5xq9FLgWsAzGL8hmmgty3GLXkQtP4Wm5NmN: '100000000000' - Ae2tdPwUPEZMRoAJXEWs6EYtQ2iPCArTRhsX7dLJrduYQUA4ao7m2TV77dg: '100000000000' - Ae2tdPwUPEZBxWJFBYhVfwGzhsEVah3LFYe47HTYPDVToQFZXH1pfgVhLfu: '100000000000' - Ae2tdPwUPEZ6mjX6ESZtXoV3HCbbwYgjTW5ZRGcMuZnTbxMnB3Z3RQ7CmFY: '100000000000' - Ae2tdPwUPEZ2R2R2XkM6GVwPCmYSUBcuYmVpVHHd1AJiwrSAT8rpT3q3yzs: '100000000000' - Ae2tdPwUPEZBMCP4GygT5jacFHctQ9QxnkRU7cs3TSyvM1G2X4guWCLM4Zs: '100000000000' - Ae2tdPwUPEZLrzZdA2FFAMPrjTzh2BHCc6KEuEXuNwdKuQRtNEDWHzLRDT5: '100000000000' - Ae2tdPwUPEZGGaCowLNQGE8NrV3bQbrSDbhfCrsmgEsYXiFA6sTKgy6n5EK: '100000000000' - Ae2tdPwUPEZBqnXzZJAZfGEwpKsk4dezw79kuV66T1hLbymEVgou8tg1Wns: '100000000000' - Ae2tdPwUPEZDTuVTxZHknpaGPRETKt35fmfu6NumLqmWZd3kiib48oFxRVU: '100000000000' - Ae2tdPwUPEZKUdeNDnNskBfNrr7GK7FNdYm4DVTXiNdBXQYBfK1ZfrGj7vC: '100000000000' - Ae2tdPwUPEZ2D3XWnHnwaQ8WXFvASyS9zUWD5E6EF36GrxoBqrFARDeK13m: '100000000000' - Ae2tdPwUPEZ1X4fckx4MozBFaqpsFuE5fWBqhQw9UANFaum8sTYEhe8pYDm: '100000000000' - Ae2tdPwUPEYw5nyCBLuGSWHW4tRRGEuKDjXYwCxJ8CDoPwu7HzbHCZPJAn4: '100000000000' - Ae2tdPwUPEZ7fth7NCF5U3fMAooFqK3wuSzXkb7FEn7sRFUbNcUzxmPZzXe: '100000000000' - Ae2tdPwUPEZKBx3FSL1okH9eQyLsjg6yF48jp2CpfkrfLtoaxtdfetuph6F: '100000000000' - Ae2tdPwUPEYya56MhSDa1SxLX1kyqjCGWKCY3ybrKWVpK6GQPNr9TsRfNyz: '100000000000' - Ae2tdPwUPEYwK8GArkU3sd1FrXsTJSj77QqCwM57p9ciGpEvaYZGghegAjM: '100000000000' - Ae2tdPwUPEZAR1XByfgkgDf1iv2GHeUH4XVfK9vs93rxkHnBGE4Ff2QAVSM: '100000000000' - Ae2tdPwUPEZDpGznRRpVoTiNsqjRXqBXS6tddPSnM8ikJb42UCeDegJfsqg: '100000000000' - Ae2tdPwUPEZJJ4d9vocjJCcnusesxu7mxzqWtbGZQDFA3SL5GN3y4UujQN5: '100000000000' - Ae2tdPwUPEZ3jwQJ7nxhWU6UwzvikdcQpkt5dYrCePpBa613miSf9JYL8Jd: '100000000000' - Ae2tdPwUPEYxrnDxc2fe7v2xfhue6BREW8ysQpP7bjePjuJccakNWsxCz6B: '100000000000' - Ae2tdPwUPEZMMuLmLFweVGvQoEs76RCKVVD4TdUooeUDQsdQpnTpZnpxCDp: '100000000000' - Ae2tdPwUPEZ13crmX7Ea1u2WMrBYHLjKC4345L76NNWcKPqqfPCNpkPUYDy: '100000000000' - Ae2tdPwUPEZ25DQAqG8ECh1PCF4k8GcxAHtyvvd3gQZav2aWzgytoHq9U4w: '100000000000' - Ae2tdPwUPEZ46w2tq2T9VgfwNLSKFn4MjDvGMcHMY9tBERRaMEcFvT6Gwuz: '100000000000' - Ae2tdPwUPEZGJBEPxNgyWLjx5z6nm8AyFJApGbCYgeC7UkVuTJ7aHarq11K: '100000000000' - Ae2tdPwUPEYyFfHi25EMFC3QaR2KLEQVfN1Q4PHpspr4zy1P54MwKzCzCoE: '100000000000' - Ae2tdPwUPEZGE3keyCPnPp3kiGLHbArJPrw29tbtAxBDprGrjPwB689dwqV: '100000000000' - Ae2tdPwUPEZ4kwuedCjS51N8DU9t2FdxHtNMB5mZbFwHDyic61H8ADLFRpi: '100000000000' - Ae2tdPwUPEZFPjnKmFhRUCBa12YwLMgBbfrav7iqqNa2iRFSPKJuRU89126: '100000000000' - Ae2tdPwUPEZ46DC1J25Ydqvw4vv2QfsyQ3YXXJLuEFxxzYz1RohkwdPVXXe: '100000000000' - Ae2tdPwUPEZ3QKC5AKpuPbDVBAtXLYtmJNAoKqzk21zysmVK2j2XQTktCiM: '100000000000' - Ae2tdPwUPEZFKv6KXgaCiA1zXJoDs28njnesWD1cupFYQMJsymbqQht5UVC: '100000000000' - Ae2tdPwUPEZ56raE14SucxceZnBB5v4JatYKzK9UFnCRU8no5wBo3X6SD5x: '100000000000' - Ae2tdPwUPEZKDBqEfrKvRx6KjdKEjhsw1Rm9eBGNtEAaar66CiV1S55vwXo: '100000000000' - Ae2tdPwUPEZ7tG1hd2YGUjJYqTTZytcbxGDhYyQBQK4E9isJ9NAuEFx933D: '100000000000' - Ae2tdPwUPEYxpuYgmbEdtqdLxpf9bVc2rG8VTLSRmiaBF1pWmrZKbP4qKGQ: '100000000000' - Ae2tdPwUPEYy13QE3a2DGcJaeibwXy6jGDM3vvnaXhLGBV4sduCVedjRmdA: '100000000000' - Ae2tdPwUPEZBFomEuQ9RwkjiUMbvVPysFqTowS9ZuGKfgqpDRm2Lbg9fWzW: '100000000000' - Ae2tdPwUPEZ1DzPArFeppQ8mjgV61m4oNupUf6Y95yquUMhZ1DZswRUTF2e: '100000000000' - Ae2tdPwUPEZ88V4RbwFa67PDu31x4LMqvvv6qpRCcoZhQa1jkuok5egBto7: '100000000000' - Ae2tdPwUPEZHwPUk5g4HFqM2qFAvqzwGyH8U9QTZkZyAnD6geKqZTqbqiTy: '100000000000' - Ae2tdPwUPEZ3SP2NhwRnqkoYZY9t8icFkKj7h16MEnTpa7fTnVn6SfdCPeQ: '100000000000' - Ae2tdPwUPEZ6NbyM3PbPnGx7Z3do9QjcmLgbL15Gc6Z2TGt3VLLuiyp3Smu: '100000000000' - Ae2tdPwUPEZ4niF6Q2HvuCLvoNxgUVzzqi161Lbx4MhBLi6UJR66YyUunEV: '100000000000' - Ae2tdPwUPEZ3ern826FfTxiPTDVz7oXzug1MtoS9bqrA4xar8iDUy4igqVM: '100000000000' - Ae2tdPwUPEZBiLGAPdXDnwfdsxVudSEUHVVKWz8uCJyPFQjT5aW5WxwBTe8: '100000000000' - Ae2tdPwUPEZ4nbpbFDmbocwfykydyvtJyEPETxQ3CUHuarHjZWSEoQuEHoa: '100000000000' - Ae2tdPwUPEZ89jgUR3c8XuLNii9QN5nb4LUQ7HC9sVYUNrBEJp4raRtp2VC: '100000000000' - Ae2tdPwUPEYvyPh4q8suUZyLrLHJabDi8Hq4kkC3KmCDTKdN2vtrj4H73sZ: '100000000000' - Ae2tdPwUPEZFCxJsCyXFfP6cPgKUz8b6LFq6UewJCcVAtrjq6e4NP3pnVoA: '100000000000' - Ae2tdPwUPEZ8EfXXu23343aKDgcxpP8oZA3zkRJxkZRRvr2yKoce8QtgcEg: '100000000000' - Ae2tdPwUPEZChWR9u5zN3NcR4exqgjsMVPDfbbu5zvHjCd22kkuaN2aw8gk: '100000000000' - Ae2tdPwUPEZF5H2V6svN6io75oeiFucxLYUdQhpNDuEcg5vtXTES2QSurpQ: '100000000000' - Ae2tdPwUPEZ31KkH1KTwM2PzncJW43UB8MGYD8zyNsiRDo2q5AZzzjYSRiC: '100000000000' - Ae2tdPwUPEZERL2eCLpbAFmA4dkvpAAkBBbmDa3nJeBgiJTXtJRPonJSFuh: '100000000000' - Ae2tdPwUPEZNK4iVzTjkogxZcJdSYvHt56xyKheAn1mv7Lzs8ZwhkytprPC: '100000000000' - Ae2tdPwUPEZD9Zu6swkcMigHxi7GiQ17qcyDa777jUwBbtXeedx4yGg6hn7: '100000000000' - Ae2tdPwUPEZN9jV1D2fBMoFs8DiWcocwDcwfzk4n3KSgGQMWBPVHLMzrdib: '100000000000' - Ae2tdPwUPEZ8kLAE9bLNTVsCVUJdC9Xfm2o3dum6WCECfeTcoasLwyEM3my: '100000000000' - Ae2tdPwUPEZ7ceYmnUBVGoDrHV1pNs6YRgkYzFQUMQVJcUGkeBG5hMkBUF5: '100000000000' - Ae2tdPwUPEZ7UKYc4F6btGCg6h7tNTRua8c74AQT5oLejMHftkVonCqmxtF: '100000000000' - Ae2tdPwUPEZHpziVD7ksyQaQ4dtKGkB8NyGW8kZRihZt8sVHZHR9gtTzUoH: '100000000000' - Ae2tdPwUPEZFZ4UnjdbKuYqjoXUZTYJ7kJpHvyEkXj6Q2WLQdfb2QmmcPV5: '100000000000' - Ae2tdPwUPEZ1Cbg2ym2YcF84iKxdfxrTtUTbep3r6gc71NQbbuxShDgXdM6: '100000000000' - Ae2tdPwUPEZ59CyAoFEbJJMR8KMFrfVnnb8Dp8qp8PSAwf1Q6itoFpSvNya: '100000000000' - Ae2tdPwUPEZ8Uv8owFy2dnacZ3Wsbd8KdpBixvoUDm7LRaNyXuqF2ZUYvS6: '100000000000' - Ae2tdPwUPEZ7jmwUBsotNoVeV6AUNhmhYKWDRhaUk5QPf9XBuFNaDBuH8JS: '100000000000' - Ae2tdPwUPEYyBB7uSUatNL7EG644onyGBEyNGvxkjoJKSyDvQ3Ew9WsFfhn: '100000000000' - Ae2tdPwUPEZ6SYoCxNgcg8ztAAsXB4bzGifGzTSFNrS9YuCTWZi3LgCkrqz: '100000000000' - Ae2tdPwUPEZL4kbxsCLVRnvE2wL8aQWEk5k8YQKhxqWPzeYUq5fQ3SFNBfR: '100000000000' - Ae2tdPwUPEYyu4WTaBS9bYw2P4bB9bFTwK217FyYnFPTWuxEgSJLzWCb9X1: '100000000000' - Ae2tdPwUPEZ9147MgzAgnRvUo4gMbZyxBpSdSQZTaHKESpQhHTm7sEicRGE: '100000000000' - Ae2tdPwUPEZ53ytiak4fHVCQgUYg6rVG2buWmBFb5mBDsFtXRN5MremGsBC: '100000000000' - Ae2tdPwUPEZEuNVUBkf4WGxHPuQ9cQ1GfWmLg2o1TCWj35hWqqpcEapXoS2: '100000000000' - Ae2tdPwUPEYvxXFR5ScY6J35xH9ZK6dUzUHpKo7aF6usmAjJKFgjAMUZSXM: '100000000000' - Ae2tdPwUPEYzuELo8zE6C1tKWv53KsAehShc9pbBMTwjpKyTSNbkBXDiJSF: '100000000000' - Ae2tdPwUPEZEkp6nKiCC7ha4eAS7KdsEmVtLPnKg1mrUxcBWwBd1ksKvbSV: '100000000000' - Ae2tdPwUPEZ5rnspVLgL9fwex7aY99MXGgxUn5PTez4kqY4QmY3oqxtvQqB: '100000000000' - Ae2tdPwUPEZAKsM6crrriAGf9dhjakPYsopJz2sVu1FHoCCRDr7QeJnj1zK: '100000000000' - Ae2tdPwUPEZ5VNAEm71feVGjcYWdekv376syPodd7934BgB8ccpmYvNuiFo: '100000000000' - Ae2tdPwUPEYw5eBFkSx1mUp3nkA7MuAXGw8yFzFtpPm9TZNHdCbJQo8KsF8: '100000000000' - Ae2tdPwUPEZ5z22Z4uCXc64osax6ENEnhbYv7P75GyHD43mnumUeReiJbFK: '100000000000' - Ae2tdPwUPEZ43i4wkWjnvsQZvT5ammnuqFyo3q38My3vrqRvRNYTF1S8u5Q: '100000000000' - Ae2tdPwUPEZC37NZXejuUa2xbWRz43WZrsJaMJEVgnTsojG5S4gvyPEW2S2: '100000000000' - Ae2tdPwUPEYxuAtDEJj4UsYeMYnvVgD6b3CbKsaz4wEwcm5P7742HcCq2WR: '100000000000' - Ae2tdPwUPEZDVHSWfxyyUHEeZ1iL3Ed4KXGqfqULbvQXnY5sQFfhdjjhkrB: '100000000000' - Ae2tdPwUPEYzAca7B5LaSbgEnWieSgzYntSqKnbcaEsE6t63rxj5fAXteY4: '100000000000' - Ae2tdPwUPEZG7UEhBtmqL1ky7DusRHAFkjHfnjvuCQLQKr2NFz32EGgfVfU: '100000000000' - Ae2tdPwUPEZCNrHcAXxQbMedZ7cesYVXeitW6PMvDMytohPqxgAyvYkd1aB: '100000000000' - Ae2tdPwUPEZANcctpoj9vQg5r5zuoCfC4Za9o4TX2jHm3fqqQqqM493iJ2u: '100000000000' - Ae2tdPwUPEZHNZZfmfiwou5xEnajYcNYs1cfGtTUPaYnWeU3iQbbBcEAPCy: '100000000000' - Ae2tdPwUPEYvy6p4rzW5jdWJhsWB67D4JLTtgx1zNjZHLrGxM6V2sxuTGCH: '100000000000' - Ae2tdPwUPEZMvLqcUAwJyHvjC12j5iXQXG3qTxyNY2HMy7Nrk3KkQAVsiQn: '100000000000' - Ae2tdPwUPEZEZCBRnYgMXHijysd1QuHGifD8WWHWZWK5G8pZVXbhpwgzDAV: '100000000000' - Ae2tdPwUPEZ2zmS7RFJLV97JrL1CZkwRBp4nkQNS6emHwuUMrieG29U6RUX: '100000000000' - Ae2tdPwUPEZErUVUMXnChqoeHRNmTkrypXFXHmzNPxJ2VDxmEyVRv5x8Nsf: '100000000000' - Ae2tdPwUPEZ8ebtP5yLvnvz9QpnU9MdzbbLMVdkEU7jg2nNkJPBXLqAFwMT: '100000000000' - Ae2tdPwUPEZE54GTpXRZPjty6x6fZccgy94tiyEXgRqzmSsdnrnhLhUwGrE: '100000000000' - Ae2tdPwUPEZJ74CyQxBmJk6Sg1nbdLYhFWeAdNQ9xpyn5Q45J9PE9Jxx92u: '100000000000' - Ae2tdPwUPEZ3vixYtx92ZQbJeuaJ9kKoXViMP3StyAv1DrNDV5erk4w4Tx8: '100000000000' - Ae2tdPwUPEZ5f31q9oPtNSXRFvF84eSiU3xjJY8SnopBV6TNfmYRoMqFZp2: '100000000000' - Ae2tdPwUPEZMHzvJz4bFYURDTG8G9zFgjcBHFUDyjZa5Q2etdrjd3qWxDey: '100000000000' - Ae2tdPwUPEZHRASZgqVnWSqKxavKfqc192Wn3Wy9LX565qvhFvaAgqtuBGF: '100000000000' - Ae2tdPwUPEZ88tqAzyv1mr7g4Aozq1oxS53Pxjm46Hy9BYETB3iGYTXv1a2: '100000000000' - Ae2tdPwUPEZKMQuZZUfTzbgZcUBW8JA5AVC5Fu7mKDTghuwNPHPc4D3aCDx: '100000000000' - Ae2tdPwUPEZEENhfCDUtvRrDrx7PsQAuvrf7PcZ7XJ8U7xgZkyzAW1Vaazx: '100000000000' - Ae2tdPwUPEZNAqKk6PRS6gpzGPwXGmxdWCuohu7Kjf6VYDHMz2XSgb99yEA: '100000000000' - Ae2tdPwUPEZDgm4ZoU2uRtHaHik2V3KmwsgPSbyeMvF23a9VW7M3G5bq31P: '100000000000' - Ae2tdPwUPEZL6LYQ7MP9ERqHMyUUd1PkTRwCjAwfAcq9D4rPN1T6Qi2A6f2: '100000000000' - Ae2tdPwUPEZDgPg9uyqoF8nqPQLvqGGVxLLKfCgtm9njuwAZJRMiAjg13DU: '100000000000' - Ae2tdPwUPEZEeqihENetKejKQ6HRbwhqUg9VSSSqJdkdzhMxnjLSDQMksMR: '100000000000' - Ae2tdPwUPEYyo3egDtEnk8Wb6Z74mLFjZJV5jZx2JkkNsGq5urzivHzQkGE: '100000000000' - Ae2tdPwUPEZ29MxnpS1cwy8BUdGztoLGwQcfofBHPs6x6KAL1ZtbigR1p6x: '100000000000' - Ae2tdPwUPEZJhTW4ymcMTedrjGqajjT4MkPBhwL2vaUWvJLv57G5HjvPYRH: '100000000000' - Ae2tdPwUPEZBHMB7jsNaA85E3dcmheVtZmzbtZj5CPZhaBHNTYT5oADiiQi: '100000000000' - Ae2tdPwUPEZG2sLRZiWWxCqwNMqTVjYTDyMfv4S251EqnKLDHoosvqnH5fC: '100000000000' - Ae2tdPwUPEZFoJoe3cAowR8awBiTgpidKSM7jq17bbdCRmKRoH4xoaNCa1v: '100000000000' - Ae2tdPwUPEZ5x41wUp9fvvGKee93aCVoZbzy7du2JAtunkCBWpX4y5c6oyt: '100000000000' - Ae2tdPwUPEZELtacz6AfGpR6ksGtUUMb6FopGupMbyEWKm5EsFtvzkFUsTu: '100000000000' - Ae2tdPwUPEZ794iXyVB54CHdH9c7V9y4hsCDwBh8YESk85XK2EGgXSpEME1: '100000000000' - Ae2tdPwUPEZ5tQPRd1abuUQHMqwPMyUUN7trD6QCcjm18pQNRUwiNSkGQh7: '100000000000' - Ae2tdPwUPEYzbHgN93mBt5MapP51HKT1Wg1qD8cVWw36A1GZkZ1VeEg9xm8: '100000000000' - Ae2tdPwUPEYyyQ7Jfj1K1MJQr18E7Xpfwq56eg6BqcAopK19c5633jyhe2h: '100000000000' - Ae2tdPwUPEZ5rUoM2NySqyVKqYovHPmu8qFWBKsfAxABwgTVKFPsvZTGkiB: '100000000000' - Ae2tdPwUPEYxFSD2BcVNLshc5ma7nvSYkXW9fy7UftmH7kMRjsRNYNsgTnx: '100000000000' - Ae2tdPwUPEZJFag3c9i2Q5diXV7ddP1uyqTK2D8b39SBkjnfksyy6kK6W1U: '100000000000' - Ae2tdPwUPEZCFCLevrxUrMHD5ki1zPwW49eBPQHnnt9MUbgyTap3kaXpU8U: '100000000000' - Ae2tdPwUPEZ5PS2jeYyER5CmUMdGVMUtNJ5yQc8xYdoswSznM7QWURMVXo6: '100000000000' - Ae2tdPwUPEZ1wQ8iC3hGspf15DN3za3z4ou4Je8qFt9GgeRjFjaErNxHdeE: '100000000000' - Ae2tdPwUPEZD4Yv2j365jRdvj2viVYG3mEqpr4aHPYsAwC5fMtFAGasHCVH: '100000000000' - Ae2tdPwUPEZBoZugiAfSpx1nckzEAsguJq5kENa3wAjLTFaif4qTRAykESa: '100000000000' - Ae2tdPwUPEZ4WSPCCYRV59emZyuLrXUDQpq8j2fa7LUJN4PZkxS6okF5Bi5: '100000000000' - Ae2tdPwUPEZKyvDUrBcPvh89cYTs1urkSqb9NwGtdUYjSqnpLCKrMjuHiZJ: '100000000000' - Ae2tdPwUPEZAzjyZC75HHhkTq7nDxTaHxqc9GqeWXS1yxzuLNBA1xKexr8h: '100000000000' - Ae2tdPwUPEZ2go5PX9rrC46yesPC6wQDAMEBbPmuNNEnXa6pF4GYyinPGRg: '100000000000' - Ae2tdPwUPEZJqStRx8pyVhW2FnfmAU7rh5xZZm7oiXUJmAnMg8mLFrnMn68: '100000000000' - Ae2tdPwUPEYyt79Lo85dSmBpPhNNDZWn3fnuUjAX4UUfXNQ2X1LnSXUdQPj: '100000000000' - Ae2tdPwUPEZKZGCFao6ZHS7Ast5v9T8K1JWv7wFaZmQiFNU36Fs7Rcq54FH: '100000000000' - Ae2tdPwUPEZ4etrSY1cxdA9q5uHzSVwbvD8ashufPcbkmRgpJXVCzv1si1M: '100000000000' - Ae2tdPwUPEZJpa28YX5BpywUkJ5mcNq9Xx1jy2SNwhkgE6NQih25Xpx2GUC: '100000000000' - Ae2tdPwUPEZJCY8nnhzhE63MmrnwdKVrwAieutUHojxz68dQVtVAFpy7GQZ: '100000000000' - Ae2tdPwUPEZ44otc4nD544HLERbf8Du7RRD2sP4276kSpzYTp6GRV1RTc7y: '100000000000' - Ae2tdPwUPEZ6aDQ9AUMt73sAEEucThgCs9vxTGXE9LH2byoacgxLZWtPm3z: '100000000000' - Ae2tdPwUPEZFrAuBp1kVTKBJvZUa7iYATh7PjuFFVKb9AEAFPmRvf57fLRu: '100000000000' - Ae2tdPwUPEZFXCW4QqiMUmo3UqKcyZ328NjsnbXZXq7yp8NwTbdDDLhQmSB: '100000000000' - Ae2tdPwUPEZ8U9MCjDkTeq2tct17YXVn7eixE7NkR35afqbvJsbYexk74RK: '100000000000' - Ae2tdPwUPEZ1R7vkdmpaEzfJf64X2tBm98eZFy2zHvwwm5ZdyNVHfCds4v9: '100000000000' - Ae2tdPwUPEZJnA9yKBNXnHC7FfTA9bPRTRf3zNNPJPpp7DS2N2jckscmr8k: '100000000000' - Ae2tdPwUPEZGWeABA6jTneu7G2LmuAMobUanuowaCaEuHnmWZRPEGhpqNbL: '100000000000' - Ae2tdPwUPEZK2nm3QLMmZ9CCkCYMMpsZmDtfhwyKz7ov3FKmgYvZDksU1LB: '100000000000' - Ae2tdPwUPEZHKJNysj3g43iACQHjyaBsgDGYkHKKwJWqLKMoLJGrPkWAxYy: '100000000000' - Ae2tdPwUPEZB4GDYmNfAEAc9iGMM8CVigVRWvc4Agiya2taFpLbhAbNPhnG: '100000000000' - Ae2tdPwUPEYvqJSmg7PFGck66m4RrmVikeKMoQUietuHDMGTAFoCLz5rHjS: '100000000000' - Ae2tdPwUPEZDwNzwhb2V8irmSMNsAJ2FkjJP5xmsHXqBv19dQKWHcoRZngR: '100000000000' - Ae2tdPwUPEZ5cYocyXpEytvbdKmdDSv3g27UfzR5EudJH2AxSz8spDPzRvh: '100000000000' - Ae2tdPwUPEYvov4qsXNuDJiP53YBvbqwQcoFrUWkDM7PzxC9GyEVGB8ZPyr: '100000000000' - Ae2tdPwUPEYymTKtPU4mCRhqxDksnd33qTiWsFVtoyX1XsGkWXXombKHYsE: '100000000000' - Ae2tdPwUPEZCAVTJib2PNSNDqxB43GzCafDxEELBYh1ffhRq8wn3k5CR38D: '100000000000' - Ae2tdPwUPEZ2ter2zfgPbMPJHGcqmhgpYM3ucsRmxtCuE4HSkDnNkd9Hpaa: '100000000000' - Ae2tdPwUPEZ9zxPjYDbLPYmf6vRuj77rNSH4nzsMNuAx8HVcxJEQPGmxJrW: '100000000000' - Ae2tdPwUPEZF23c58GHUhNy5wDpGkTU9pzdt6q9d3aoJFPUtx7uXjvdmbWV: '100000000000' - Ae2tdPwUPEZDJyjtvbY8XB1C4ho1tz4Hz251oHiu9e9Hwwc2pJa28fB5gvq: '100000000000' - Ae2tdPwUPEZHCZ9Wavb8xPmqtkXF21a77aFk1yx3oDKRVsFL4okyUgXMEmp: '100000000000' - Ae2tdPwUPEYy4NZWXVkGekFyAE1QVBeHEx65Lwu6JqqDCe67t7MyGp8HwAE: '100000000000' - Ae2tdPwUPEZ58HopWJ1ybMXnZ3mnc6qMwNBBSyvLXzspad5RBuCxVZXc6um: '100000000000' - Ae2tdPwUPEZ7d9t5WFRsyusjcKNokWE64jG8ZbGtUCXcBars5RMWj4Z7HDH: '100000000000' - Ae2tdPwUPEZ1RzdYk3dk5PYw5aQrUkTatFZ5ecUMWK4UFAu1RgcybqA1poE: '100000000000' - Ae2tdPwUPEZ6nPGLRhSphdG9WnfLF7ZDia6geKwbrrq16bi3KnmEgyyGp6j: '100000000000' - Ae2tdPwUPEZMyVN1HGvByrgGjCm14HJ8RZnBQSMt997cd7ZPJWXFykbpQwG: '100000000000' - Ae2tdPwUPEZFnSGD5Ry4TLVWYS5vSJ24QRFKNmTJMc1hhwg7oaX2j4hYci9: '100000000000' - Ae2tdPwUPEZAkVTJZkLNXmcx2A4hnxkDRA8r88MTsm2osWRsse2fxj8PKYr: '100000000000' - Ae2tdPwUPEZ817Wd8eVcmwx1fDBCJUgAWphKhTvUYvvUNHaaZRdFRn1xtAW: '100000000000' - Ae2tdPwUPEYyRtGppkaT38My6up9qwxNVaBKWvaYkSAmHhZqdL8iQgWQw22: '100000000000' - Ae2tdPwUPEZCepQh6o2eKjwwskrJ7u7kTCHUfWWYpLa1shRmqdPUGaT4L2o: '100000000000' - Ae2tdPwUPEZA9rTKkP3ZjJ2fBczHWQaFiSPsWXpd8Zhx5L44PqjKGAov8oe: '100000000000' - Ae2tdPwUPEZ9ETnXzdeVSgM932qPta38NRuTd4LHSvuNUKdHdjrdVkQ69VV: '100000000000' - Ae2tdPwUPEYzn3EjuGqbinDNnpXHktpctCnrjqxNuisG2DE36xHSTs3eRe1: '100000000000' - Ae2tdPwUPEZ1hgMqHp16Lcek2Yya7mtKHPY9ERgcmpNfw41SXM2E6zyrmWi: '100000000000' - Ae2tdPwUPEZ5V7V33SPoTQdcLtpPuhesMZJWskty1THSAaC6H6cDYoe8dDy: '100000000000' - Ae2tdPwUPEZ8Dk5wCfxAqfDqAE6VBriDfnxNhpZFTPAGeJSnca3Vaj2mK8R: '100000000000' - Ae2tdPwUPEZ4LpZe3THwFh3WC1L4rCqBNyDjAxpnHxSneoPWxL9NdFqAGuS: '100000000000' - Ae2tdPwUPEZAkdytYKhgzG8P6rVhZWuoD6V4DBcvBfTLQx9yZHgsNFcjZCn: '100000000000' - Ae2tdPwUPEZ1ACQBxLAAK3HPxSbmnpGsSpLbwbCNTAqrDFu8y12pgnSHKjV: '100000000000' - Ae2tdPwUPEZEuod1rhr7TU2f39maXDBtbJWVFpm84cWEWdnHnLKvL5ikGeg: '100000000000' - Ae2tdPwUPEZ8pt7Pv1KYJDGd12G5tW6KDNS4Nfyb2SXLXBkySGctTPYiCpJ: '100000000000' - Ae2tdPwUPEZJsQVWL7AUT1R4UWKVWgU83Ne3UigKANdLeNGimcu5AhWPFhj: '100000000000' - Ae2tdPwUPEZ6mLhxJBF4xvJs4Nn1mCrGpESnuWJNvLgB9WNjpF82nbMKRjw: '100000000000' - Ae2tdPwUPEZDnbB5QhjKuDLJtSLpYijfCQRKs8AVNZq99a8sHDjXRT8oi9Q: '100000000000' - Ae2tdPwUPEZCW5AZDx9sK2irEtWRYybEmPSTgQVMZAwKhLjcrzfiiqyZzpM: '100000000000' - Ae2tdPwUPEZD4nhxDVYSDsQEFf32weouEtvagMWALs7NQLQFHmZir8ULsUS: '100000000000' - Ae2tdPwUPEZ8oSsuTZYvWJcJVUi5ZYdouT7f5PF3QVKZGErs9Kxvu6nakLc: '100000000000' - Ae2tdPwUPEZBx5NBU4Ja4C69DQzeVMaEwW8pb4VqxQPjatt9tTek5DP71n1: '100000000000' - Ae2tdPwUPEZ2M3nQK3dEcRjG3Np9CTCKxEkXhmt4wVcsytuLU1qHZFY6D9J: '100000000000' - Ae2tdPwUPEZ9GD9AtEtJffpuY1V7MtuZ19VNvv4sB3vWPsc8QaBBDupfvRX: '100000000000' - Ae2tdPwUPEYz6kHBDcFujUxZJtRGk31hjfLrUQKG8qhkRX9KG1rUfWWdGre: '100000000000' - Ae2tdPwUPEZ3gQVUhBC2tWpVARdSBWshdMACLsketBVHAMQM9SJwupY7tKK: '100000000000' - Ae2tdPwUPEZKk1ay1FVHXrq7TikPUXaN57ugqHG7JqKtipoaoopbx3CpWNt: '100000000000' - Ae2tdPwUPEYzxV6jJo37mTrr1dTpahzqM8FSmLkYgtLinjzXicwDmEt65Pf: '100000000000' - Ae2tdPwUPEZELGoNGmUr1QAbNoaaQpuiAFdLR2YVfAKZZQCsXkypGMvccEi: '100000000000' - Ae2tdPwUPEZAH5Vh4T4D4aHeBWBuFTzccoiQkN56RPDkCWo3kNimqJPVvpW: '100000000000' - Ae2tdPwUPEYx8L4VPbNQPpUkBhtgLK6HTe5Bis2t5s3na2y657ghUL3Coo4: '100000000000' - Ae2tdPwUPEYxgiCkHM4vvR6ZgExWi9x1icupe7k35UFg1mPrpNg2iQPQJz3: '100000000000' - Ae2tdPwUPEZGo8rprmThXMacgbZWv7yE6oZFqqTdh5hQVdstXwLsoPgH4EZ: '100000000000' - Ae2tdPwUPEZKUZRDxVXaiKWHdUPXdoJt1EQR7yAEmGu3t1kFdSRLdwfXka5: '100000000000' - Ae2tdPwUPEZ8nXHubodagrQmZGQsggbxoyhJpZPsBGsYkGUmgX5tgVD2HW8: '100000000000' - Ae2tdPwUPEZA8uRLUY1bcFKu8zRLGBPnUJk1pMzyLtMGXKx5L6bVYGGYejY: '100000000000' - Ae2tdPwUPEZMgsg38BfjUp1YiDKjAyyF8oMMCBVjjHppAGEj4J1geA9ryAs: '100000000000' - Ae2tdPwUPEZFzgVJLcaLUkc8WNfattXi4tLjdvp8Z2SvZ9S9WnnvjzytQNK: '100000000000' - Ae2tdPwUPEZ3bDM6ijEE16WjPNoGSVKQdR5oNMVzp62ihKfjEG5xDonBPPP: '100000000000' - Ae2tdPwUPEYxj92Zq5nqKP6GskZRKbdsmYN6fSER7CZLZZah8PtmghVv8Px: '100000000000' - Ae2tdPwUPEZCkR2LLixyVmK89XCoc9cJ6pXsbSRgG6JkkfiswAYRhdhLFuR: '100000000000' - Ae2tdPwUPEZ4dbdebXv7Y3eDm6gJs6ZXDTfwUH3rSLwGrAxwPGWvdXxrR4y: '100000000000' - Ae2tdPwUPEZMu4iQuM5WN4NTbv6stfwVN7KjQTN4o8DJZA8k34spdD5n2hX: '100000000000' - Ae2tdPwUPEZ8u9QL3YyXDsTAky2bFZCz997sbUrJCdGzmDaQtWxd5oWCHv2: '100000000000' - Ae2tdPwUPEYyNoLn4LdkJn4bqTJrd883jWa6rweFgMShbRJKeFD3N53emj8: '100000000000' - Ae2tdPwUPEZ4fszZ9QhnP1CEy17FsXA7dWkdvinxWQA97p6mZ1ewzQrYiqJ: '100000000000' - Ae2tdPwUPEZ1vTCrJQYAemoXwezted46NstSMjYWKDyFhDqF7H4qMMuvgvd: '100000000000' - Ae2tdPwUPEZ5hfpyogjLRfWUUsotoUqkrDFNGwgbYBH7hpkuJbVQjZySEwU: '100000000000' - Ae2tdPwUPEZHGy82xAgyoEYc37DyqkLe7pWzEx2MdxCEwXP2TwU3hG57bWm: '100000000000' - Ae2tdPwUPEZ7VEDceyz99aX7CuRs1LhC9dA1NnDz844qDd5DekVZLDSfZux: '100000000000' - Ae2tdPwUPEZGrTVGHo6joxndf73xzfGgwh6DYH97sNyXsLsJmNtHW6QNFiQ: '100000000000' - Ae2tdPwUPEYwXoqGSP5noGZwQqtxreDEMcGCvpTLvRWpAjTLZBkyKoKJAeu: '100000000000' - Ae2tdPwUPEZH6M29UnLYQJCsj6DaCAY87RzyCXUGQeFkbVU9QMJDgzg2xXT: '100000000000' - Ae2tdPwUPEYzKg8YnsHScSB2nV9Y1t1bMdLWhegthzD8XEPm36uVmXSLngE: '100000000000' - Ae2tdPwUPEZApTr5DTA6WZN88oo9cXBYQPS5Yv7gqqXJmkaeFYs6xrFNjtP: '100000000000' - Ae2tdPwUPEZ68xMJMNmR9NS564rWUV9eEUdyTfxCM1SSeBhhNLRgj1ZUzLf: '100000000000' - Ae2tdPwUPEZDvQApaEytrGqMme2UTU1YehaVgY4snHJEHEryz9R6wLece4S: '100000000000' - Ae2tdPwUPEZ1y7VZAvt9LxWimoUVM6Bk3GbbXE3AfhAVHemAEQfZejZxd8k: '100000000000' - Ae2tdPwUPEZ6wXNEinkg3ojy8F4PbS1pjZwkqd3ewPpB21tJdeTb71uCDF9: '100000000000' - Ae2tdPwUPEZGxstKHepJQwo3SSkHsZwXEdPnNLgd3rd2DHciuP8qvuNJMiU: '100000000000' - Ae2tdPwUPEZJba42PS2e3xgD5i2WHBe9JYxgnVep64Ud8Wx16o4Kwp1p2Qv: '100000000000' - Ae2tdPwUPEYyEshwRhjXJUHn33xZNeYJp8ySP99DLyisgJPY9NK5sDoCBRL: '100000000000' - Ae2tdPwUPEZGpRmPxWpHSNJRvTQXhARCYgqyCK62xXzCaYMyRdWmkprxfxr: '100000000000' - Ae2tdPwUPEZ3yoK7GCwrwdiMQcDGMkVcDF5QmJ18L7cLxo9k9RkTJJVCmRx: '100000000000' - Ae2tdPwUPEZHapZEXuqVB64tJBtcupit3P1SDj1xUzjmrc1ANU9rzocsHq8: '100000000000' - Ae2tdPwUPEZLsht9t1VaszK6NceJC3SaXDXGJedEo1d8WHi7vT4HXWbu6k1: '100000000000' - Ae2tdPwUPEZ922BJ21MxoRWshnAQGKw4bsHyShd6xPSR4vMgFGQBVFViaku: '100000000000' - Ae2tdPwUPEZ6JFEcaY1jy5LZJpP8Yu9WPTfriZi4rFGbRqTScNmhXChxjZA: '100000000000' - Ae2tdPwUPEYxAyELpSWvTA9bhxn84uYu7uWf2KvuoAegJyiCLJNZxmvfCEa: '100000000000' - Ae2tdPwUPEZKW6syqzBgAWWebh3n8UstPukZNR7ZTxVzts3UfMaioZsweYJ: '100000000000' - Ae2tdPwUPEZGS87ojKH28sdbf2FhvhXQo5EaHcHnQiRwm93t3ckBk6LeGa5: '100000000000' - Ae2tdPwUPEZCBndw8dH3T6ebanAgmSRS6iut5yuYbhQwrZvqUc3MiBTcUwK: '100000000000' - Ae2tdPwUPEZ9iPN9w2P5xCcbZitH3H5uhH8vHMwcoikuW2z8fuETxnzBAX7: '100000000000' - Ae2tdPwUPEZFAF4qdAPLLm7juXYY6kBtNGk59WPwmExNf881UeXh832P41r: '100000000000' - Ae2tdPwUPEZJjV6ehFK6ttCk3KsHe6KaRko3jDcaa7YGfkWXGADxGHHDXLo: '100000000000' - Ae2tdPwUPEZ1wo8wY7V9FyMXZsNg95dmJbRX6RVGJdjhrCacKcpVNb39say: '100000000000' - Ae2tdPwUPEZBV3CuELwNwPNagjH2BXYCS8fEVNfX5Bmy7kXiAq3gRSEHDV4: '100000000000' - Ae2tdPwUPEYz1y5UuB6qfMXpR1Xj4FiErhWDDWdevJbP6PLeDczfa3bKB5e: '100000000000' - Ae2tdPwUPEZJ3QqoL8Tr7vcMoAo7oUBb2yaXS6R1j43SSxKeKzCt6wvafVr: '100000000000' - Ae2tdPwUPEZE2F8rMYs5MNGdpK9qHytsdiwGCLH1Grg6N1pVP6b6YXFDMQs: '100000000000' - Ae2tdPwUPEYziyQpAVfdZ6UCoesnEvAn8spLRJLsJHMnzhqnyTGPjJgMtTC: '100000000000' - Ae2tdPwUPEZ5mVQ8qhZ4b4SRB5ADita8pb1gJfvREQoEJoM2rXPwWqAHgYW: '100000000000' - Ae2tdPwUPEZ6ycwrDkUF1sfo6usrZWQ7LuKd7F4CKFJ74vdjSD5A5jaasRM: '100000000000' - Ae2tdPwUPEZ3ub2HHLy1bwt6HNSUGN1wbcZ6GqJr2yWUx73bfSFB32PBEPV: '100000000000' - Ae2tdPwUPEZ6KF7DyGay3sf7WsDGi4UQiUtFBU4KZmkDAEkX4x7qLC7qNxZ: '100000000000' - Ae2tdPwUPEZFqbrJeQGFTdL3EuaE5DRq598ZyfPPrTtFqAfsnzE6zLd8ghd: '100000000000' - Ae2tdPwUPEZEbsQozN4jWPcgVruFEX5iUWgq2wHbeLskEiWnVWmm93v8W5b: '100000000000' - Ae2tdPwUPEZHEpFFaQU9FrbezrSMTL9C3BTbc83SRMTPDfj6AViNKtEsKwz: '100000000000' - Ae2tdPwUPEZ2WYZcz6SU8N1EVVmsREbdpSQgPHDYUyFtP9JhznBQ82uGqjA: '100000000000' - Ae2tdPwUPEZ5RuAUgbYY8TZEmwEX6ttLB6CNxirwNVLeRLKzrZ9NfF7R7tP: '100000000000' - Ae2tdPwUPEZ7ZSsejr1gx7YKLX2R9sua5xPpaDVgREAumRczGwCDLvXJkxv: '100000000000' - Ae2tdPwUPEYz4YvmhXqjYWMZNqGapmo1pYxTSBebtULsRQCAJepn4fXWM43: '100000000000' - Ae2tdPwUPEYwSivYSvPwTKPdbCZabvuqAxJcLETLQhH1ssaqAVZtAa1sMRV: '100000000000' - Ae2tdPwUPEZLfUNWNBHNxCUgfj98BnWwA9RmDHeLoLDJXT3qPbDBTG4sG6c: '100000000000' - Ae2tdPwUPEZGk5xRu5rTBjmipvfTGK7N93zoB5kgSiUBvjJ6QNN31VTAZc4: '100000000000' - Ae2tdPwUPEZ3CEUaMHEPL7Th8N3mDzBqMofxaGyfdKzfqy61AF66jxvcbyH: '100000000000' - Ae2tdPwUPEZBpSUGiG4F3dQZ55zoct827kM3nkNh3xCAXNpSUd2pmq7g4iF: '100000000000' - Ae2tdPwUPEZ46KN1zTn6g8r3cwhfy2XRwuxhThybNG7QoocsYPpwr2L6VmN: '100000000000' - Ae2tdPwUPEZ52nq68ibgzAywbCfeGiJz1RNtTQcxSrkzq9LurXnsPJj3Sfo: '100000000000' - Ae2tdPwUPEZ323oZCWCJTpWBByjEoCzPRXunXohagdNSRDBpVBhk6BbBXjF: '100000000000' - Ae2tdPwUPEZ7ZKVS4z7CzzoiJyofEcRRRjfdepNtwSeFYhYNTz2Zzp1Bhdq: '100000000000' - Ae2tdPwUPEYwGHGkGGnBcyxmi2jWNr8Bhh3GPy7zwk2U516LsFkVkx8KQxT: '100000000000' - Ae2tdPwUPEZFhhQAeFmHXE9VgxoKYetVUA9FrsjWuAhSVvhyhLy6zZbPGts: '100000000000' - Ae2tdPwUPEZFbSxefymE9M3DVjEdRxrtFdLd69kHHvXKFASpZMkrCEHQqEL: '100000000000' - Ae2tdPwUPEZ8L4HyV7E6XPCde2mRFTiw62dd4mEZmbv2yy2Zy2RvoGHE2CE: '100000000000' - Ae2tdPwUPEZL9EHqU2bi84zzywUNf1AngSvupLzmRK3G5ej3SzfFoAmKgc5: '100000000000' - Ae2tdPwUPEZDYfBSwxEtiDFiZ2uj2W1ZFJTCcw7noUJUAMzAWwh5FzruPA5: '100000000000' - Ae2tdPwUPEZ75mzmESVGv2NikTgMkXhLLzCS1zKrcDgLxDworJfqR5aEnPm: '100000000000' - Ae2tdPwUPEZ17rurZnLR8JbkY8NnL8KsDGWu2Zq9A6AWRE5BnGGUpKV5cRQ: '100000000000' - Ae2tdPwUPEZGr7hcnV3FCjhMHk6bbf4FoDf94CbLtsTT7vThM8HrNvRs8mu: '100000000000' - Ae2tdPwUPEYzChGiHuFDbcRHSHF4j5HE2xnEVq1URvYJVdJtp9K4UoVM9Wp: '100000000000' - Ae2tdPwUPEZANjQ4CfGpk5h5wi4qFwUVbzRZHc9euPrnMWcxh62zZy6y6PC: '100000000000' - Ae2tdPwUPEZDK4sEXDpii6VKnMFW4YamJnjKd1FSwkwEuGd3aXT7YVm6mw9: '100000000000' - Ae2tdPwUPEZ26bkJ8vQ6j7eGwnag3iRXsubCqDUJm3k19nR5qA3Uq5KH6EU: '100000000000' - Ae2tdPwUPEYxT6vqP8CEUBsFwoNW4NtGXKci71JVwCmcFUDGhF68oTRUMrx: '100000000000' - Ae2tdPwUPEZ7ReC86k8yytwUNwAZvgyafkHjR9gwNAmdbs2twEjWRZbB2Go: '100000000000' - Ae2tdPwUPEYx6ZrqAtW9MW8ajR7v81Aps8TcbcXgMwjuB1QqkoDjnjJ19ZX: '100000000000' - Ae2tdPwUPEZDpAgMVGYuGZwYdnCcY3GdKm157xnhcAZrPMGncPAsXAp1oS2: '100000000000' - Ae2tdPwUPEZFLHZ5pzDno22duSXtBvvLjXVy6QRoV26J5UhXCLLQyMeSGhM: '100000000000' - Ae2tdPwUPEZK5e9fJ16JKH8SP6BmKjTzQLQbKC7XQdgUNzF8PK4REGofXkv: '100000000000' - Ae2tdPwUPEYzRQ8fDPgkM8n9y3ASiyPgS956BauwS7LTog2VC4GmZPs4URz: '100000000000' - Ae2tdPwUPEZCig9cdGbay4jYJyxgpKqCveLMic5oEcjZtzLhrovV6atpiJU: '100000000000' - Ae2tdPwUPEZKgmRxTqmvR3Sz2nvS9BLN4rvo1PUx19q5i3MbUbChY8Zp1g3: '100000000000' - Ae2tdPwUPEZLGucJvjhVbuffKWnb9N7cV4SE2nEhrnm8M5RKXq4mfDh7Cqc: '100000000000' - Ae2tdPwUPEZ6imbAhsFQYtmVjAY1njZGKswv8FwqtgVfMmcZWcda8fLCLb6: '100000000000' - Ae2tdPwUPEZFptM9jGFbr9RjHBVF6BuBJPXf5phCNXfAQTa5EpxuQsPhpEG: '100000000000' - Ae2tdPwUPEZJvGgmcDAgaboLJZyPWAqtL8DV8oa5SjsVotnNeTPDFWE32Ey: '100000000000' - Ae2tdPwUPEYxSJKKTPYMMQq7RCpBfTtmtH4uo47EhEy4jKepYhcCEW1pn6D: '100000000000' - Ae2tdPwUPEZ2PDcCbvvCeDCbcnxQo6dfUpu4Aop4kxabjdWkB9DK9QmhSD7: '100000000000' - Ae2tdPwUPEZ49gecr1eLKrdRyeQYt72sTfU8VFpAwpJE5hZ2BU8fpZPKnZg: '100000000000' - Ae2tdPwUPEZF1rSQtctMxFA52UiZjHGSrsMQ5eBJXLQCrJ9YgXTMA6pJDVJ: '100000000000' - Ae2tdPwUPEZ51SX8DhZnhEzuaDaooxeYPegmNpzkQvmy43MqrV2ikycLkuY: '100000000000' - Ae2tdPwUPEZ4cphH3Eac6B7Z25XEaGzB8ozvWieTktTVjDYAY3gzTfPZiKo: '100000000000' - Ae2tdPwUPEZCMvvpULP2dg64eML1zcWS9bie7Xcbp8oGvPFwEyYrDtyevzX: '100000000000' - Ae2tdPwUPEZBRi9zpG5fZUVF4wPJM89wZ2gS4FV9rcweyhkaCm4JoUrmcW5: '100000000000' - Ae2tdPwUPEZL4Edj6Uyxj2iqneqCkymP3G82wRQD1DWeCtpS1KsDxGGLsp8: '100000000000' - Ae2tdPwUPEYx66tnvjg7Pyycg9EHiuAZq3uNYqhKnvjsXQvDoaH62wQsxS8: '100000000000' - Ae2tdPwUPEYyidPXSzu3y4Ez6XUGKjZfEM6oL8sWsLFiCJqxgjoVpkyUAZY: '100000000000' - Ae2tdPwUPEZJNb9rNog3v8xSqUTkFB5yB7rMxDr9ni6jV7R4PyXAAEKad73: '100000000000' - Ae2tdPwUPEZF43jN7VVqZhTZvHg4FKzdKzy7RvkuqSDsfP5NFfpWGwu3tPE: '100000000000' - Ae2tdPwUPEZBQ45uKrxDJspmhj1kN9ow5VDWmff3Mzk2GKj7UECtzWPAMXd: '100000000000' - Ae2tdPwUPEZFFDYKQ8RPryzRgqVwUCVAsvkH3o71qKujcPmYHBZ2cbFSnNr: '100000000000' - Ae2tdPwUPEYxwn8YnS4q9xMbvpz42L57DdfhtHYwiqqLFWNWRwqoXhY5Z4c: '100000000000' - Ae2tdPwUPEZ7dkiWzvPhGF92Tgyxd5ABSEUmV8pPj1PxpDsHn2fBuEMoUT9: '100000000000' - Ae2tdPwUPEZ1d1yq92zUT3nqZs9PQBN1tZiF3rKfXGvAkeR8E1bjFsHjYHn: '100000000000' - Ae2tdPwUPEZLeLQPWPdWR3nAji3yFtp1DNdDnhqXf1oqPjwERQuBnurESnp: '100000000000' - Ae2tdPwUPEZ5Kd4NCyCz5ogJVCEq7QQvf31nAJgaEAvHo2qUd8jRTwxnYDE: '100000000000' - Ae2tdPwUPEZHBhKs5FLrCaBGSp4pvDmkf1jttpcr7tekzDaE8pYFkcpBhPm: '100000000000' - Ae2tdPwUPEZ8chT6uZkDtDQ8xroBRffwbajxEDpzYMgHzRBMVnDGAaw26cG: '100000000000' - Ae2tdPwUPEZJBKSFyGnqKoGBPqTBk1RQfbVXJQRpUtYchamzXEssXoKQz7T: '100000000000' - Ae2tdPwUPEZECgworJHL5iBVSknP443U8tKMomDNRMdGfFUo5aVW1ypQmE9: '100000000000' - Ae2tdPwUPEZB1SHQkMzAuf44qA3giZ8MgSsP4y1CFF5LSuYoV1iSxBQdVMu: '100000000000' - Ae2tdPwUPEZ1wdaz6H9hBYjqwKSbqNthsLfZ3nX3VvVm7jNGGL8YrQMsBVH: '100000000000' - Ae2tdPwUPEZ496hoyvHgCoAFrcB3rkNqfBEMrwhGjfWhPgu99u6w9txUkx7: '100000000000' - Ae2tdPwUPEZ5FKdFgfR66MLFFZ8xUWeqcUQg9az5G2JUe4chyGGBy2e2eGA: '100000000000' - Ae2tdPwUPEYwE4jmWM41qyA8XDeaRUUMsrDBQwsM7LukPTS6Pwtb4qbwW6z: '100000000000' - Ae2tdPwUPEZBr5dMsPkuDWcMLPraZcvCNpDjKiYQyfdQzsvwnBHgzZvd1CZ: '100000000000' - Ae2tdPwUPEZMT9Bd3kgzFor584N6ckWKA9tMxKyDMWbHRsZMiFTvB4xeWFV: '100000000000' - Ae2tdPwUPEZJPaN7Bb5d6LoLDQsNfrjuBBGLGHWc2Zx9geLg3yUHDsVSMAD: '100000000000' - Ae2tdPwUPEZ7xGmTzbaufs5k5eTcfH85tB6tKewTgqNBdyDXBcojhckfGTU: '100000000000' - Ae2tdPwUPEZHnaVPvDLfp9ALs7yAkihUxBwGX2KVcUxpReBJQJhu5FxYhvr: '100000000000' - Ae2tdPwUPEZBN2SMJ88d1N8uGNJbKPgyPTbmWHh4zM4iTd2mH2yoNhFCNXn: '100000000000' - Ae2tdPwUPEZ4LMYQ7uG9yi1YPAmDGpfjGcR93jHKAbEQzFTZy4CJEhkBgTf: '100000000000' - Ae2tdPwUPEZKRAZemEWm7RosQahbdXY6gYoP56fcU4QQFf2LRyzGucwx79u: '100000000000' - Ae2tdPwUPEZASdWZ6Y828MRXb9TgqjJ2EjdL2tBNz2SzLQ41g2taRMHpr6i: '100000000000' - Ae2tdPwUPEZBRMGTDnMj8MrXLQT5NrjixodheCWfXwcgWYyjbBxbA25U4tu: '100000000000' - Ae2tdPwUPEZ7Efktfq9QCq6qvtnmtE6dwbVWqCUUENDsU4qgpwGy4ms9QgT: '100000000000' - Ae2tdPwUPEZ4Rtyrf35bLjFBNXvZVawEeQ5m4rKao4RfMEGje73fgrCH6L9: '100000000000' - Ae2tdPwUPEZ9WgcLhmGaXeqnRZKAoMUYgzkitTnY4w3wTR4eJCrpxyxePH1: '100000000000' - Ae2tdPwUPEZ4VCtTCxHEcVsaRNczU77myPxteyMACZKXKkc3AFkDFE5Nozt: '100000000000' - Ae2tdPwUPEZ1bXAc6t45KVNZ1K7CDfZXMYagkTjmVp8T1zZwwsi8Lbw36hW: '100000000000' - Ae2tdPwUPEZHRHGRFatEqmaZUYyaiQ8u6wm1F4NbPnc31Kx4pSKHhmnqtf8: '100000000000' - Ae2tdPwUPEZDnTGUVyouXCzcAQNaDHbBcNQh9wxrjmyXZZKdo9rgWpAgPNE: '100000000000' - Ae2tdPwUPEZ6xHtgXRYpgSYtpD5FjaGq6pya81HZmG4k5ybQgrC9c18Vx2Q: '100000000000' - Ae2tdPwUPEZ4HEPMZQojTkYXoqM6emJKS331csUw7BTqRguModgRz9QfiTB: '100000000000' - Ae2tdPwUPEZ33Yby6MUGuoaGAmcWtoxGn7fn7cmN33o83wDziQL6p6YDogi: '100000000000' - Ae2tdPwUPEZ18hcCwpAg2s9oETj8kejkkBkx3AQCKjsc46UEXAjw9Xd5gnV: '100000000000' - Ae2tdPwUPEZGPtVeVc6q1tR4aLb7MJmY8STi6Xmiuw9dsUHnVXsmtP7M1Fs: '100000000000' - Ae2tdPwUPEZ4xVsDdPozUd7Z3teJL84FLBEL99UefcFKBSHgv6GLHudg2z8: '100000000000' - Ae2tdPwUPEYzYrLF1MrBQCGdmAbbBFtu1AqRH4oohfnxePTjwAZLsg1h3jX: '100000000000' - Ae2tdPwUPEZJL79ZEiTzaATEddT7H7mMXvHj5JvJjPmYaVRGEwU8htYC14a: '100000000000' - Ae2tdPwUPEZ6bA93GjEAebH4xkvSCnkYYLPTKkvYisXjoiVaERPQnu6sSDe: '100000000000' - Ae2tdPwUPEYyY9Lh8ArzQUrJxMMyitGcYWskBXPwvXT7zWV3XzM8X6BsBHF: '100000000000' - Ae2tdPwUPEZFfQ1nSPt2YfQomJCrf65SoRExCZ5tusjLTQKXRiibHkVXsJh: '100000000000' - Ae2tdPwUPEZGk4i9j35Bpef5mowoTohQb843QxexToQJCdsUbBYY8RQbiVx: '100000000000' - Ae2tdPwUPEZ9xmZURDTzmwQRpABGeVs4z4mpzgC8ztdwVxqL5PCxzhcSz6g: '100000000000' - Ae2tdPwUPEZ8mYikh7Vpoe9fRwM9HAxXP4rSh1mgAt3Ym2yg99kCsrDM13x: '100000000000' - Ae2tdPwUPEZF51KnYRGxXBum2TdQJehUGzaP6Hqdxmewvr8U33vp9KEK1sW: '100000000000' - Ae2tdPwUPEZ8sqZjExaJmvbLuGMZgLsWfhDQHfe7KKyhtRBNFy9USLoEmFb: '100000000000' - Ae2tdPwUPEZMQXFATLpkx6Tn9uR4HGwGXdeTW57PVQafduh4qo1Nvo3uvmN: '100000000000' - Ae2tdPwUPEZHp3W1XRLVGJ4oRgqm3CPtUk9StCdQKowwdob6y77Gc8b9e9F: '100000000000' - Ae2tdPwUPEZC5tKu7EVtG6zZPfrZtbN1xvinVADXKrYgmoeRWYK6um1CGHb: '100000000000' - Ae2tdPwUPEZCM7C6ARR5hf88RGdMFecNyWn5BweXbXt8Uf8R5g73EJidSfL: '100000000000' - Ae2tdPwUPEZKTdWcFco4fJjeKdFaj1s49FeJEkAH64LU7GKvcGX2WG6JFYR: '100000000000' - Ae2tdPwUPEZ4SxZvoRBH99Qe5DmZY7qzseTPKxSe79tZGpgap6gvnR3xvvG: '100000000000' - Ae2tdPwUPEZK52bP87UdNHK5uWmv79h5NsHGwPSqwoggEcsQCosQX3hdx3Y: '100000000000' - Ae2tdPwUPEZDTjaXYuhY1fBvhr37d9c8VnK7392Yc7dkfBW8cdGq12u5dXL: '100000000000' - Ae2tdPwUPEZBaoB1JefVKtA3VGk2eM5qcwvVQQvTQAhJwEhGBqqyzWjKftY: '100000000000' - Ae2tdPwUPEZKSQiJBpcTC6HcyGUJTks8UXdbeo5Xvtd4sPsopD3Rv3tLh12: '100000000000' - Ae2tdPwUPEZ5cf9wx85gwoTij79i1dyNcse7daujFSMR3fGTKByC818xQba: '100000000000' - Ae2tdPwUPEZ63wPWaj3xmT8JkBvd7ZDrWC5UkKVsGB9r7QoukHghrT7ZAjY: '100000000000' - Ae2tdPwUPEZ7Vi2faNy2M7kULFgukmbeHU5Si2ZoyhenR83eUSHJuKy3SH9: '100000000000' - Ae2tdPwUPEYw91WTetobvbfbVFu9DudduwAvmmsambmv2P989qYcNMtBLT5: '100000000000' - Ae2tdPwUPEZLbhaongPApXtGQ6aZyQTSncVLSXNqqoSDJJivcTN5UgCxJF4: '100000000000' - Ae2tdPwUPEZMgBHHdB4uj73pAu8zgSoEGJhRMfpyesUJebJomFybFXGhH4g: '100000000000' - Ae2tdPwUPEZJYpRA5TcWaVB122YLkoadggtTWa86vvK4Tmc6DKd5CKuGaxZ: '100000000000' - Ae2tdPwUPEYxSkyoTTcxeEqpCZzYsCLY2navAeFCkjNiSG4bSP5T4fQnhQu: '100000000000' - Ae2tdPwUPEZLV9Rx63N2HkXvj8LttaaVryK9fLUZDt9Cna9bbcEvbDHWLEr: '100000000000' - Ae2tdPwUPEZ2pyN58t7iNWFtifqaxkPRvEw5fvMykL2fuMjzMCQ19yAe22g: '100000000000' - Ae2tdPwUPEZMBgaR49mSYGBbHifbcvDzpBsg7xUkbj1xx9wagdqWtL7Y9Zz: '100000000000' - Ae2tdPwUPEZEsMsCmfCFdUX6RA1DWg7ncUAAFeT2UXZvkKTuEhyb2Q6LGqr: '100000000000' - Ae2tdPwUPEYy5r4FDHJxzokphy952KDCTa4C3Pk5n4nZ7rGpocFQ7qRhYLG: '100000000000' - Ae2tdPwUPEZ4CxvJTGg3DK8Fo1QUAZV3zghdVfkGKzkGW44oSHm2EvWGusR: '100000000000' - Ae2tdPwUPEZ7nZ8vF21oMiLm6KQkSX8pes6JRgUvYGNTBNQ5839WjJjDYtj: '100000000000' - Ae2tdPwUPEZ83kRM1xbLQKeLCc7LPTYBFMqEL61Ef8xTfb7g7qz4SBHU3sX: '100000000000' - Ae2tdPwUPEZMyga1QxtEYaswU8yCvad4VLSJHReGMdxXijzn4bRKMr6bRiQ: '100000000000' - Ae2tdPwUPEZ76WDAraZcH74uWgXyRVEZNBPzYm14v42LZjPrDjDAefnSwQP: '100000000000' - Ae2tdPwUPEZBXCbQLR4sCs32y4AHcSp7EYxsJXTB911VV5UD99p7GD89mjq: '100000000000' - Ae2tdPwUPEZ8XMQxdpAmrqXs9rdWehKSduXezRR6esprs5EovyBCf8hVywV: '100000000000' - Ae2tdPwUPEZ9GmEHu5E1YqKf42VfqgNDXipiCxjLcCnqGqHFr7R4kXA2eC9: '100000000000' - Ae2tdPwUPEYy2n1ZyyJE1VCBbLq5BCzPTLA6yHz3pbKqazJ7nW8wPG9VLbs: '100000000000' - Ae2tdPwUPEZA4hBjdVnmrUnjjnau2xAj9Ezfa1dqdjtkrkvuM6ydveuguPe: '100000000000' - Ae2tdPwUPEZ91Jqh1tetZMh1YVB61zTgADdHbjsB2mvnFyzYmzhjeppSrRn: '100000000000' - Ae2tdPwUPEZKjbhkYGFt8KpNfBHsHko2zWoyTL2sNwYGcduCQCDBNhEt3Xm: '100000000000' - Ae2tdPwUPEZ85zE5t4byntUuEvDdMpjRVLBX74JHCFLZ5uLyLsHyVoFX17A: '100000000000' - Ae2tdPwUPEZFU62cHp9fYzgNC21TosTsoLxSzD22dBZ6RxDp9aHo6G82xGo: '100000000000' - Ae2tdPwUPEZEBADxGQpSrMieRXfvz46VTMtM5CB5UQjMDMtKEdmE9dHYUtJ: '100000000000' - Ae2tdPwUPEZBHfh8c2V3Xr6gsKV1SPYo2PBo1oGj6kG1fZQ2WizbJXnt98K: '100000000000' - Ae2tdPwUPEZKg4Y9p18z3BR5qGdbrnYV5qBbGBYHkJqEZi8Ur67yJG9WMxs: '100000000000' - Ae2tdPwUPEYxPUhRwTeEZXjD1Z5HkPgSeV3Ku7WyVnfcKqRF8p92DAeMVpi: '100000000000' - Ae2tdPwUPEZCTjyViyDg2Ws6pT2q26WiGvUXfs8kWKxZV2qp67qjTWoEpwb: '100000000000' - Ae2tdPwUPEZ14ybwmRGnGCyYTcVs3gMcep5rFp7FsfPqRhbYdkiukh16Pgu: '100000000000' - Ae2tdPwUPEZ1dBGjbd6WuxDeaTjtbY9G7hYFUZ6s9GgE9r15G6foJYasjZ3: '100000000000' - Ae2tdPwUPEZEV6oViBK2guboRFxFAr5ZDYeVj9hTPXXDY6jyTJ4xVrWRjYw: '100000000000' - Ae2tdPwUPEYzHq4VbnAvFHH2DwxVptDXPoUPFfCFm3vRirT2cgMKtjvfU5i: '100000000000' - Ae2tdPwUPEZ4pVGZymoUiH3gSUtBjPMcxfaqXt5Kt8wLaYtp7FW2qrjnc7C: '100000000000' - Ae2tdPwUPEZ3r58STrCwpQGFey25cpj8By4SNterMCFurW7RAQUnzBzQBbt: '100000000000' - Ae2tdPwUPEZKUwJYKyUXbUZBZqcEbuSBvu2ANsNVB7L8Xp2rkV7V1DziMuP: '100000000000' - Ae2tdPwUPEZ9nfEDZr3DHTDFuYcY52gN8Qm3sxU3fLDEtBAZuqKi5rxruaK: '100000000000' - Ae2tdPwUPEZGzXPGcN7j75TTb7kiNLz4SUYQGrQFRfvomfM5o1nMrWheS1m: '100000000000' - Ae2tdPwUPEZEcRML3yeSiuDmd5U3mPQwAJGCeJTdLJ3ujupPYh1wE7sVTcb: '100000000000' - Ae2tdPwUPEZ46zno9nb4wJL3rZVB5WAB5jN4hMuWx5JsPv86MgRY4VHfQpA: '100000000000' - Ae2tdPwUPEZ3JHXPjVfKKbfpWT75dz2VJ5mFoW1md2P6rrbDRAxCyTE3xZY: '100000000000' - Ae2tdPwUPEZCnmAmLUroHXJ5vBMmM2KamBJmVvMZyyPbsce6jjixGtLWZck: '100000000000' - Ae2tdPwUPEZBoHJ79ZzgdMXHLQXADN4kn66zpUwHPcDbTKoSetcpnVr6hU5: '100000000000' - Ae2tdPwUPEZ9hPDAkNcuHgCHxYk7aNd86rRwY1qxcqsM2cmmbHUTUm9WnSz: '100000000000' - Ae2tdPwUPEZCsfbt7myzCXYLRwdHW3riEHd7eM3MgZFgUK8VXEoGggik4fY: '100000000000' - Ae2tdPwUPEZDbe9s18AxDUy7X9y4jxSxbBApv3MqfRVZB4PkiNtXH6GGKdo: '100000000000' - Ae2tdPwUPEZB5nf3Dhvn9REc3BMbstXhPVzSWN48XzVpkDKDJzxKt99CqCP: '100000000000' - Ae2tdPwUPEZ7cYeZvJuVRuZ5qCAvPUGLYvm9aNzfdT8hXe1KbbxBFGLtcmB: '100000000000' - Ae2tdPwUPEZMHEb2QVRAjcKs4jEwkMnyp1L9BHKtwzatf5WKFNskXzXE1mo: '100000000000' - Ae2tdPwUPEYxfoP6tvfiEz2XAhFNpBuqfdMPRKqHru86it341sYbT5yJaD7: '100000000000' - Ae2tdPwUPEZDeR5K1Gx1oYnqEU3BReHGCHXK53a6F6LBRPnHrnyVp5kVn2k: '100000000000' - Ae2tdPwUPEZ23HVxCLEWQByYvhZkpeEdCa8NSe2jwqFyC32C2smx29uJNPT: '100000000000' - Ae2tdPwUPEZABeUoGmwZ532ofYyTmiGBtFZ3QKYP9hoMaJtW79u1fpmRBvo: '100000000000' - Ae2tdPwUPEYy6cRNLgSP2cst3ot5TmVUUgeXsiCA7Tm8vG2R985onW38MQ4: '100000000000' - Ae2tdPwUPEZKULp3T5nrCCuEaiqhDHKqiVBopd5mgZKUvKnis66kHA7mE5R: '100000000000' - Ae2tdPwUPEZ4owDgDvt9BEZmwyuXAbYn7B7MXdbTm11agYCNVWNYmy1CPDx: '100000000000' - Ae2tdPwUPEZ7rtRtUBLv2zJGSrKDEXp3yMNNJFdk1R6E8QzBZQTauyAkRV6: '100000000000' - Ae2tdPwUPEZ2ZLd4Ld9rcZQtisK39nBTHC1FzbVB4zcGfhgrmY8fHrVYQdE: '100000000000' - Ae2tdPwUPEYzZ7psyppHBPsicdDoYXasnqFpR4kXMJomSKzpPJNYkCc1s69: '100000000000' - Ae2tdPwUPEZJyTmY7UQJju4BLKPB1G9G7Fq28joMiDgQTkn6QyBDVzW8EYK: '100000000000' - Ae2tdPwUPEYyGYA8MZVMGnmrSpLZWBiWB4Jhkzoi2k4v1dqVCSpd8cZLghu: '100000000000' - Ae2tdPwUPEYzeQ9PaaCLGJxd2FuFv4RKxJXZPQHPxW13fynNdFgCtHzCgCV: '100000000000' - Ae2tdPwUPEYytUuZ9hJQrNXc1H3qsdQGMdeEWBxafL1E8uoAFQpnhSEu7aa: '100000000000' - Ae2tdPwUPEZJP6oxMxayhiBzkLqXoA7mjyq5RFS6o9hDSq3UdkHbqDnTTBp: '100000000000' - Ae2tdPwUPEZ7YuarjjrXh9WwqsW5yC5G1MmVTH3Mi1LCm3wjcZkLppa3YP7: '100000000000' - Ae2tdPwUPEZKxSA8gYv9eV44TBmGXtp4Y988bJusYgqHEUyVKAy8ZAeTBgS: '100000000000' - Ae2tdPwUPEZ9efjN2wk8NepR3FEmgJQZBj8HEFNe9Rdipc1XJjy6CoJC9TH: '100000000000' - Ae2tdPwUPEZ74hTQxC2ePnFQvkcPUvRcprtSDRgPLpo2tQ2NNWWFQaXe9Gx: '100000000000' - Ae2tdPwUPEZDkMBVEAey5sLPEszVXLwYhwcyXNedBnTCaxm5s1Hw8nk4iPr: '100000000000' - Ae2tdPwUPEZLcAN2oFb4YMCSY9pAFmYP49q23NRaUaqjt6cbJyPwZWzYo8V: '100000000000' - Ae2tdPwUPEZGSRYyKNkJftoSmjnRwjULiUSu8VANkzfjYhMfq5BACpRTEob: '100000000000' - Ae2tdPwUPEZMpfEAHQgC6vTmnpfySyHmUa3c2C67pUhmb1aZcQEF81MEfeE: '100000000000' - Ae2tdPwUPEZ8TK3dydjiVEi2SXjfCcxuLfimBGqWA3f86Efhrhqa2tAfKtB: '100000000000' - Ae2tdPwUPEZ6hmaqv52tMhXDnxErbpycQ4tSgpredA3PyKqd8VrvQANohYE: '100000000000' - Ae2tdPwUPEZ6Ln9vFxXWSjMvJhULbn9QfKG662aQ1Lj7Lav1MTZTiuF3Rmy: '100000000000' - Ae2tdPwUPEZ59UvfWLH6Jep7ZNUoxUhRGn4mcGHHb98zA4ZSuJDdF2AR7yb: '100000000000' - Ae2tdPwUPEYwz12sBtQ4YkQv8LzCTpiRC2y7y7D1fsxsBfYih43s5XTwCro: '100000000000' - Ae2tdPwUPEZFWUqbEuBAaHsc2Ne1CBf7dM3JQgGv6vksx79tqys9mQBxDb3: '100000000000' - Ae2tdPwUPEZF869bbWvNTwnTagnLhGVBmH12Tj7A8KkDHeGX79daYP7NUND: '100000000000' - Ae2tdPwUPEZDkwXJ3ZXZMGtaj7nFn8fyH1Gj49DUkaJH4pRpToWKoS6HM8n: '100000000000' - Ae2tdPwUPEZ8pBfNYBujUbrFQyTF47LSuMpK76Ux4AUjfvm2AECk9r4qFyd: '100000000000' - Ae2tdPwUPEYwbD1M5TfdjQvaP8pToc2ZA5BBjjULChaKrLgKJnQDj6JoH6Q: '100000000000' - Ae2tdPwUPEZ7Hu5GZbYvbUjKdRdgp8WUncrGyX8LE5Ct5zg5HyTzCL4iXtn: '100000000000' - Ae2tdPwUPEZ4W1ocZ2KFAe9YtYiaDEA2KboKhHVnFCraqdzAHTgiVY86RiU: '100000000000' - Ae2tdPwUPEZGevz51cU19G837F89gyDqbQVc66JR1QWPeCAJ6H6vB5x18LW: '100000000000' - Ae2tdPwUPEZ4XFdcwGoiTYAZNX6tDVYFFxdL7fMSrMsMUwe8tBhoCN9d125: '100000000000' - Ae2tdPwUPEZ8JgkqaJQJZNYhAbKVqNcgdwjbrPeDpEgugAeZ4sufBu7B3qM: '100000000000' - Ae2tdPwUPEZK9kaMF4DCPEKBsMFgQArqNQosamFJbntLx4qbxZJVKPpybLX: '100000000000' - Ae2tdPwUPEZDoYN6BHMJsowpmos2wN9DDAyGRn74cAv7U6P6GvQDdZJpQYW: '100000000000' - Ae2tdPwUPEZ6GjqdhPpSYa82MuDaQ4AdHp99q1y7mXy4xFcSaZ36L3xMQAJ: '100000000000' - Ae2tdPwUPEZ9gkH3SL9RsExnPT2u4uvd5vobWFN2VqwFmL2MDZ1pJ3avNuC: '100000000000' - Ae2tdPwUPEZ5TzQAyQcKn6NyhtMHnBPhoZVK7HcAN1X6HY6ButR1FEkSCsn: '100000000000' - Ae2tdPwUPEZCHNjsUvHr2sEsGY3tHKw513RFZ6gEVsWPeiHw3xRvRs5s5Lb: '100000000000' - Ae2tdPwUPEZ9ww5xjpzfWfQZvfRMuCGz3rEMSctbeAj1nSU74U8vgeySfTA: '100000000000' - Ae2tdPwUPEZ91XTvWQjTs678nEubKpdNmijBWzQ284m4QmyjYUVJVsJB5Le: '100000000000' - Ae2tdPwUPEZAXWeS4kTx98CgCwxxeeyk77sdCXgtis6dPTibkkNYxy9h685: '100000000000' - Ae2tdPwUPEZJMAnP3UiznuqS182Q1Ciy4WtsUxtUT9rW9JTwh2kbVZjbHHy: '100000000000' - Ae2tdPwUPEZBWxWetYqN3cXVa6VxL37KuE9g4fYuCHxzcEyUweyLShnXpsR: '100000000000' - Ae2tdPwUPEZDMSAMN4vrtPCuM1FkivRL5gb6wR2UZhNGH5sqTKifRYiwMJw: '100000000000' - Ae2tdPwUPEZFvdHVj6vUUEVkChLqK1wFC5tYy3eUwgpVjEz11mhPbm57QmS: '100000000000' - Ae2tdPwUPEYzzsGJmP9WHG3M7f64ecu8mga25WBg93diQipnukQwhtM7qEn: '100000000000' - Ae2tdPwUPEZ8vE3DuvtAVvzG6RmxKgnANEqkxVoVRty61yZprQFcZgf7t8q: '100000000000' - Ae2tdPwUPEZ2Ct21TrzaVgz3tEBbSFU9CjNXCgGhwYqQBqLwcBymuTwJevC: '100000000000' - Ae2tdPwUPEZCc8dasxJJD1BFzCHK9ULESu2cgTDgXzyJhjAwv1nYCGEzkwh: '100000000000' - Ae2tdPwUPEYwP11rHrn5xgAWPMasT823xRTPQTtAeFTA6qvuhnz7xdpMNRk: '100000000000' - Ae2tdPwUPEZGrvJRYDbxREDuSk48DLvfyKfV1NaZHUVfsbQqcWuHC6dYecM: '100000000000' - Ae2tdPwUPEZCHibWTjAndMwXDyPGJQjY54zPJvfb4Gx8ggkpDUczsatZpaz: '100000000000' - Ae2tdPwUPEZHt2wCW8nX8Tn8ebEDvLfowgL9V9QAaWGdbHvY1s73H7VKbzw: '100000000000' - Ae2tdPwUPEZHMwXMBsL5BYbH69rA2D3nJpUcURn2mZPe9iXnq1XZvYJ2HDE: '100000000000' - Ae2tdPwUPEZHkrw4wXi3Y4Pk75jCVP8QYSXpwZtygCuAgRdoPwVw8j5SNbj: '100000000000' - Ae2tdPwUPEZMupHyK6AgPAKSTSZ5fcDRzet2FncmAgqVDizgvJQ5NqysLbP: '100000000000' - Ae2tdPwUPEZBLnbve3bo2NKER3b3vLCkfxNzJgeiFPUt33sZgnji3Bz7YBV: '100000000000' - Ae2tdPwUPEZ1vPsmkZfqckougrkz53MnLd6gBahWe5koWQ7DgmdxHNv2NsU: '100000000000' - Ae2tdPwUPEYzaDAgk3zN2sqkHYeG9M8CmqCKmE8adSgYq3114wCynkb8Mbj: '100000000000' - Ae2tdPwUPEZLcpRqXzanRY69a7scsryiygpBHgvdpPHvWD34fjQMZE6MYLA: '100000000000' - Ae2tdPwUPEZJB87GNHZfFJcs1Ei6djhj4HKLufc6FYViqeCc8FoATyKaPPB: '100000000000' - Ae2tdPwUPEYwdeYNWaPT71jhnbZSQesV9gzz22vydfvXtWhC5B2djs8sxyD: '100000000000' - Ae2tdPwUPEZAvzE1xXpgNCmHYWPwATb6LALZ5bDcapuwpxPXmBn2uz2irWL: '100000000000' - Ae2tdPwUPEZAMGei2LYdmRVtBtZHFhK7g71TV8ooXxe9ZztkaYabomhPTTP: '100000000000' - Ae2tdPwUPEZ3EsV15t7ZG8AHqE8kvvxGuzEJwYZkrHmx1CzoAdpwaayFgSz: '100000000000' - Ae2tdPwUPEZ8mWnL5CUJ4KeRpEvqphR55h3ZV1NRoiBPx5jWYV4UPByeqN4: '100000000000' - Ae2tdPwUPEZ7LqyFESUyn2yhgNybSACag6hb2Qh81sAxGSKS8to1skwG9Us: '100000000000' - Ae2tdPwUPEYwG6qzvxuBXZbQZNM7ouc6VDZyM6iMpJLL8z6GDD1ZHWWy91L: '100000000000' - Ae2tdPwUPEZ8A4ZYi4yegF21KmBbFgcCgHSWqc3LDYJHUsQRd3aoqxpLNhX: '100000000000' - Ae2tdPwUPEZLd9tnEHHVZX8wSF1BfwkxTLmXM8M6ZKVnHcDSUkbSeMpb3bH: '100000000000' - Ae2tdPwUPEZMujdBbhYJdU7czhhNKsPNYB6SXXbvpqmYx2hwqVqyd1eNmE9: '100000000000' - Ae2tdPwUPEZMkWBzgxwD6emaajTQM6CJtbWAMrbR4eC9ma9rEoj1xFuhkmN: '100000000000' - Ae2tdPwUPEZGEMwn3SaDfeuAFfFPLLzLW9uuaPraF2PrKtCpDo1xtLXApJK: '100000000000' - Ae2tdPwUPEZ6q8wQufb5E4s5qKUe7uSTMN4mJfLXKgkfVySzPMbqX2wAxwe: '100000000000' - Ae2tdPwUPEZGNP7rCTdMT2K645118hQEwq346G1HiJrs8y9JtxdbFZT1UqC: '100000000000' - Ae2tdPwUPEZ3p8qiAv9rZcNnqHupvS5FGY6AfxkA3NeAqbMK4QHWYwDAYsd: '100000000000' - Ae2tdPwUPEZJcDo5j1qv1RhTKau7Ns32Kzk7WY8gMo2u4vT2VXBEcDgUDmT: '100000000000' - Ae2tdPwUPEYz7oNcpbfkQrYbm6sP2R239Yx4remK8vY35Xn2HnJDVzuh34o: '100000000000' - Ae2tdPwUPEZJvEnYsAYGXSQxXpPydWFQLWKewGpAE1DunZURhfCW8SbncFF: '100000000000' - Ae2tdPwUPEZ3At4hac395zvqYMVjze5a3hHvGnctKGNrwB7Yxf2Wqd52H47: '100000000000' - Ae2tdPwUPEZ1MSdnXbdHdD7uBNkqXGtVYANSTZvXdacKpS1hNcvQM8rqL1x: '100000000000' - Ae2tdPwUPEZ7taSV1G9rgNh92NrJpV7yEA8EsAGNg898HVR1fBkR5wC1fA4: '100000000000' - Ae2tdPwUPEZEDXj16fiG5aQg6vvEnPG9HvQJV7UDpSkmN3cLgUwzk2ghGRX: '100000000000' - Ae2tdPwUPEZ5pHMPPvL1wAVFR8gcJcqMLJtRGtjzSyf35P9pY2MaYUC5DP3: '100000000000' - Ae2tdPwUPEZH87zCxrTZnWJpjQ5QnjY265PE219isMzVB1zh1RehV9PDkHn: '100000000000' - Ae2tdPwUPEZAtVWzKqkbtHUUvkxh7XvHrVr8o31APTUsru4oizT7t1pHKJj: '100000000000' - Ae2tdPwUPEZ3bF93iFsmUjQoVjUE8JjiKJdWsh7SsVbjR8NXzmeqZ1jTiQE: '100000000000' - Ae2tdPwUPEZCPDrbDU4qusE4yhjLfk571RynMFwxrj5icqRyBZeHGWnAs7m: '100000000000' - Ae2tdPwUPEZ5dABVHbfzBHhvQEjujEJ7GL3cVCBU5YubhuTr2h5cMHGxB3n: '100000000000' - Ae2tdPwUPEZFbvcPe3zomByRbCEcpoZfZ3eyHdoeGysgresyrzN47qDawvc: '100000000000' - Ae2tdPwUPEZGHx7EAZY71WWpG9Tn8Ww4j1uuHvemqECjERSnuP5sx9VyW34: '100000000000' - Ae2tdPwUPEZ9zBw4UxLE1Y3RQfvvZF5mzCgNyfg1STiTr58gxUyPWPQG1mQ: '100000000000' - Ae2tdPwUPEZ6ahnDES88dSVat78TqwiYsffR8y5vX4dDkDtyGTEDK6veVxD: '100000000000' - Ae2tdPwUPEZFVE753Bn4K67Acs7HUUgB7s1jhu3c4mWAQjJDuBJMB1btUYQ: '100000000000' - Ae2tdPwUPEZ3NNXpNA77KnNxVnkrVjwakjh4h3zWvffK7d3eHeHi9hLDabh: '100000000000' - Ae2tdPwUPEZMYj3znfx3UH99H88eXXDcmg7hnXtsqFJwCnVENFoaV6DfCWz: '100000000000' - Ae2tdPwUPEYw1kewNHsH4iTLz8hNbCw1JDT1XhELsEW7dLtgyHetfc9dDav: '100000000000' - Ae2tdPwUPEZLgpPCrqyR7BpgApJxZbdTJzhqAr1scjXdGUmE4ShJnn4keJH: '100000000000' - Ae2tdPwUPEZGtdimxpnZC7us214h7QMUcSzRNuT9Tb5SpBJTR96kqT2Jzx5: '100000000000' - Ae2tdPwUPEZ4yxCTWMK9WXMniVbCtGmT3rp4SmjvsQApL5PdrhhmqCcdZK7: '100000000000' - Ae2tdPwUPEZ7RKtd7x5zwt3qTaDhaYTwSD5ioE7aRHDg7KcxrMWxyCqefKp: '100000000000' - Ae2tdPwUPEZGEMcmPeH2nadvmj249gVsXhaSpJXxNZWJhDr7DZbpoLRCR52: '100000000000' - Ae2tdPwUPEZ4N9U6QspKLAa2UV6LUG4DcUotA7AktCcTot9SMirob7cV5yw: '100000000000' - Ae2tdPwUPEYyV3EooWPmd1fECtgwHJurJ7JgcVPnsWr7RTeXoNJFD2MUuP7: '100000000000' - Ae2tdPwUPEZFMj3B7R3BUabTNN5ctwh5ovhpRRahvmRsHJ1Sj8pwbujQEmi: '100000000000' - Ae2tdPwUPEZ4K84XiKnnR87iBJMNRX7WXxQcybjTThVpCfFvCVVsqnH21Q1: '100000000000' - Ae2tdPwUPEZBQDyhXvnBV582n4KHrE9YoLHV9fSgKkmYBbXg7tEp1HLYSmF: '100000000000' - Ae2tdPwUPEZFZSTmpdBTcS2UZVcKghv9aMBbZtwt1k8epj9EJEYUVHpzdLe: '100000000000' - Ae2tdPwUPEZB9XZ7YXZ45tH8DCe1HwCmY9gKdWA3EzPKQtV8RS77p37YsD8: '100000000000' - Ae2tdPwUPEZ5Rdw233T24RhvegGQZ45EfSghHBztak5WZ9fSugB85HUpBFv: '100000000000' - Ae2tdPwUPEZJ11pM8xBEWNvp2QjkWwy8xj9XXbz52RPrfDJPFA9xmksZqic: '100000000000' - Ae2tdPwUPEZDiggeuD5JFi16JqSqENV5qXeSbWEWeU5dzWjRY2JUtDQp56U: '100000000000' - Ae2tdPwUPEZGVfzkdfXkfariW7CpxpEeeQfWXhXP5st3NzMPj3PC1BTrCYm: '100000000000' - Ae2tdPwUPEZKCJfHVxCxxnYFJcvUB3PAeisfPGBdbx2eCCAW8pxrPBZDp6a: '100000000000' - Ae2tdPwUPEYxUu6UdVLZBNxvkPhGKzwqDwGrcrXwmXZj9HthX7691r1f2ou: '100000000000' - Ae2tdPwUPEZ7P2B5yqvxMH5Zy7CKPES3mwgaLQQ2dPQ26fAt9drJfa1A3Vv: '100000000000' - Ae2tdPwUPEZELdQWr8ZseGDJRMKRm1b3mh6bNZMMG2MWh2F1MQ5ZTJX4iEc: '100000000000' - Ae2tdPwUPEZ2b6UxgNELwMvtUn94x45bjAe91tYzFRMYZhWyNYtE8KUAYz3: '100000000000' - Ae2tdPwUPEYxK7tL3jgP6hJBzpxog1t9r9depsdCm8k7xL5ucoYqs2zS8jz: '100000000000' - Ae2tdPwUPEZKhnDkfAUV23pghKwUGoWsq55HLcVrzJXiADmgLcDKQMFq7eg: '100000000000' - Ae2tdPwUPEZMJUxV6uxYtSvkruafyhJg1SWJdbZ8GZoVFJARHgxrKFk77c2: '100000000000' - Ae2tdPwUPEZ4NDxqhgx2uYtU7YR8PA3vTkaZWVoQ57pLE8jpYGf6LnwGQss: '100000000000' - Ae2tdPwUPEZM2RP3V3wT71g3AnTmrHQfu9dXGUU7JEGzbuYXp1Rr8BXD3ik: '100000000000' - Ae2tdPwUPEZ5XJZX331mVbardNUgtriPYy87kFt6XSzhAJZmcYESnyPQTMg: '100000000000' - Ae2tdPwUPEYz6sqZ4WYZUh3h7jmwA45EtVWkdfwGEwkqUXGRH8ukVnzcVQr: '100000000000' - Ae2tdPwUPEZ9K9WHN5ZQGcYTXrZ5aVgnjojBCeT5LP3WcNMZagnaApHVwpA: '100000000000' - Ae2tdPwUPEYyQndV92UcWm8bCdX7TsRJuA5hqVq2HYuFHATdpnToZQoxCUH: '100000000000' - Ae2tdPwUPEYythZh57NUkadgMVbD2fSJnKHDP41bWHbZAfQ37UhYBpzvXVq: '100000000000' - Ae2tdPwUPEZAN9wbLkdu8SU5xaNFJZoLUmQvP7AvZZuq5Fpgkq4JEh4pTW8: '100000000000' - Ae2tdPwUPEZH8TVjchLtCeYmig61Pafd5JU5qj6izAUuBCCN23Gjgkyf4VU: '100000000000' - Ae2tdPwUPEZ4jhhgGhA9shyJ91ZgUdT23Gdk9BszQrmwwvDuTaH4UGJSgTK: '100000000000' - Ae2tdPwUPEZMWw5qNCYrc6GHCD1TEvgtNBt9gZVFsdwsk5frGpbxE4HBZzx: '100000000000' - Ae2tdPwUPEYzcx5X8R1L78ajAXkDEWNQpxKPbuxiRqVqtZXwBmW1hw5d78W: '100000000000' - Ae2tdPwUPEZ3qjEmFHVrBoNiExKuqCq2wDeSM3fsHvZA235RrQLmRJNZJ5B: '100000000000' - Ae2tdPwUPEZ2TbvHWS8iqUUkbMet8XprC3492aE1BebMFfp8PWYpEihdi5N: '100000000000' - Ae2tdPwUPEZ3KXygpAB5ySYPqHfWTNqMkhUTEdVYueqSshwT8yQqmt4crUM: '100000000000' - Ae2tdPwUPEZJvJTfWgJhUMppZeonnaT2ZpwFrBxSYkh3t8kBRVbgz8ngcFd: '100000000000' - Ae2tdPwUPEZBdxbCA194iKBoNVrPoDQyfxRTuPnMBjqojNqJzRQ95efGNDz: '100000000000' - Ae2tdPwUPEZDq3hGvEzWTt6txPuM7hoYnZRMxvrfvqAoE9RdZ4SCFiupq3H: '100000000000' - Ae2tdPwUPEYyDb2e4yE3hzapCSMhdaXQvojPJ2dxC5ZLUz15Ry5UdQfJggU: '100000000000' - Ae2tdPwUPEZ8FFJoEvjfsWxXUwpsYH5mSaqNJWvfSDNfsgaapHooKXTFoSf: '100000000000' - Ae2tdPwUPEZCQH6VHymHcjxhGrv3bQV6zkBfhHhS57uFY4kWaH4BSzUJkzq: '100000000000' - Ae2tdPwUPEYvp2GFyDRUtAx2YYosFfaCtYFJtQsGfXnDNCtGwuPByXmqzP6: '100000000000' - Ae2tdPwUPEZCNxbrLBRfNyzrcxPoGn4E4bPnR9N7zFpK9ddj3UjpER5ay9V: '100000000000' - Ae2tdPwUPEYzk6y3hpZjfC2xeHxceaLyiumYJXDECZSyZP8SZaXG2B5aNCF: '100000000000' - Ae2tdPwUPEZ2q8AwouwaeCJTJqY2ZbDC5jTARLseVJAKNKyAeYeJNFEoFEp: '100000000000' - Ae2tdPwUPEZHtXyMoD31N3VCojHQWHTqGFbhy2fCQjQWab1TNyyvG7BRiDy: '100000000000' - Ae2tdPwUPEYxvGAmXnU6tHuTiB6MUCr88QhSr6QgbvoSJuBzKugHHcQeFKZ: '100000000000' - Ae2tdPwUPEZMFd9fRJqhvh9KQhefNxyyDFb8rziER7rhCk4u7HR7aTQUWXF: '100000000000' - Ae2tdPwUPEYybwErVB1h5SeHW8wARx21KbBuhiJQd5zwwwCKUyhi5kLwGwz: '100000000000' - Ae2tdPwUPEZ2jyADZdkxJGHjLtmqY3DVpgfPzeq6Upe85KcQXxUBktLf8zv: '100000000000' - Ae2tdPwUPEZ2RFahkUugaBLcBHyJ3bWc7X92yG9YNvazguVfgKEjGTFyGJu: '100000000000' - Ae2tdPwUPEZ87DsaXtGcyCne84GVGjKGruzDbX5QqCSNgA6WeW1VoSWihrm: '100000000000' - Ae2tdPwUPEZEjgyRTVZJc9CZiEoGRPiCJmGEsHWndj8odNdHq1RmNncj6fT: '100000000000' - Ae2tdPwUPEZ2N3x1ELxEhoBVvb917kSK6rKRPQP4hMFWEeMa2JRm3Cjn8ST: '100000000000' - Ae2tdPwUPEZMLQV9ygYcBqqBwA4yUSYppuQvNhHdjrgAHbvQN1rxFRNPjrD: '100000000000' - Ae2tdPwUPEYy6b3XydEUTztJELJygyLHLaDvBe1YRN3XbKYCo4avxyYvi5D: '100000000000' - Ae2tdPwUPEZ69LzWFSLc4kWktnY5gtdWN1eWNdPK5jvq29gRXEAgAhVpwy3: '100000000000' - Ae2tdPwUPEZCQzfdKe1486wXAiz8Ysnv1fx6CiqjdCm3JAnUP5waRJyQWEW: '100000000000' - Ae2tdPwUPEZMA8X4rMwovnjaRx1ndmFQX52dq8wkzWDZjYa1Tt1THZbRhjq: '100000000000' - Ae2tdPwUPEZ1DxkbPTFHibGNGT53LstXmwcXwDvRKcL9pFSfn8L6f9v9Vmi: '100000000000' - Ae2tdPwUPEZ7EfLhBqZvXJ5CkY2rhon8ic7rRrTorZVV3Bn2GKWo8bTX4yM: '100000000000' - Ae2tdPwUPEZ2BR6xHsoaqWj8SL3HaHuFcsBeVaZ1pT3R5NqR1PdG5kmtxoc: '100000000000' - Ae2tdPwUPEZA33ArbNrW4cQrQPspHutfvxaNoV8tuaGa3AwNyaWa4ieqQoz: '100000000000' - Ae2tdPwUPEYziHXFqYub2GXnbtyM4tfTp2hoEVfVSqf5GVi2P56Vv2p6hvG: '100000000000' - Ae2tdPwUPEYvuqX9tZqqAkDDP7afsCvgFujfXxZHTz1PKeQwrh7gbjGFQ2d: '100000000000' - Ae2tdPwUPEZGwXEmQgFjUkQWRipq7AGsCpiMHq3rFfVSPFFSXTRwELizrfo: '100000000000' - Ae2tdPwUPEZ9BAxwfpZFGnK2g2TfYkRKnCo2U5wdyYGtNbP1pEsaxi8AnHg: '100000000000' - Ae2tdPwUPEZALSuJYXrUNfdVPef3B8JmeFZN3qLL7NsrvZhdcrwoaF31NQB: '100000000000' - Ae2tdPwUPEZ93Gu6c9TBcjSZMMsYRqZvtetdvNC39xWRh6uKwqjMmpkzrq9: '100000000000' - Ae2tdPwUPEYzcvDX756wJHLbWqM7PtfqEHnFbnNy48w1ApaYGEuEA3MPCw6: '100000000000' - Ae2tdPwUPEZK63M1TwrMijav8ZxSVsDusTTSmndc7u4J7Nv9FRPWwTE4FEZ: '100000000000' - Ae2tdPwUPEZ34oTAZoo37HmkacJ91SnS9Qa6C38AAKoiVyDeCkv6LSWeBCN: '100000000000' - Ae2tdPwUPEZJwMKhpij16Fk3Vvwky2iYqJZgsmG5WcV9DQ9ic7N2rSqdEwd: '100000000000' - Ae2tdPwUPEZJ18GpEJEv96UNEaHpCRh8eJQmeetBmg3XhewuCzyXdRnNrXQ: '100000000000' - Ae2tdPwUPEZ6hD8AUzwEGAfyc5PThCDZQHktfqYGCebxiK7jqcBiaxrS1hr: '100000000000' - Ae2tdPwUPEZ8jaQAnhLoz6FMcw8h217BmHvNTytqSjJtQR3WhSvcGynm9Ee: '100000000000' - Ae2tdPwUPEYw99Hz37zU5D7WiDmaPDQMRACzM6sx8WYDHhR25Dp2FrAHCyU: '100000000000' - Ae2tdPwUPEYzKmGanjFGuD5V3gH6VG5qV1QvregiKdrJceUpWQQiFMQZruP: '100000000000' - Ae2tdPwUPEYyC6vFbWeLNxHXmP4omZRpcJ4HzASaY2wzZkzsBBcJzw4WGFy: '100000000000' - Ae2tdPwUPEZGNuzQnUrzAMQWPowcDF2rVXZin3MXR8PFzACURzQ76NLM1mK: '100000000000' - Ae2tdPwUPEZD7SfaobKSba9pbFjh8ZnPoDdsbGzaANKWvCbYUqNPVWjh4Ma: '100000000000' - Ae2tdPwUPEZD8zhkg6qn5cBqRuo7JK5zuycSdN8QnivPm53vKcfvMee3SpJ: '100000000000' - Ae2tdPwUPEZ93EkFiNPmJGYVxCtCTwyFxFAGqYgVXXF24TuJ6kVTAEqcJDB: '100000000000' - Ae2tdPwUPEZJBgtVWWSqNjp4KdtnSeMjfyUbrYtKRZVrqDQ9QnyEdkr2rC7: '100000000000' - Ae2tdPwUPEZLwjWp67wCj6vtTd6zAjRBtna4SKJco4UYizWuKzMizKDktbU: '100000000000' - Ae2tdPwUPEZ5k2M3LzdnGdijwa2PK9MU3piNA2aU9Nr4PtHDCM8BjsUusq4: '100000000000' - Ae2tdPwUPEZD1neex1GiaT3CiA2icFPaDVxbNWUDMdgGNdrevYAcjjNA2Nj: '100000000000' - Ae2tdPwUPEZLoAS77y5vg4zawjfDCvfJRukaQB9DuXrq1ceYjh1fixwj5tQ: '100000000000' - Ae2tdPwUPEZ6CqiRL8Eyja7pzm2vheaUWb4PtpuzFaEQz3WSffGWHnkCMoh: '100000000000' - Ae2tdPwUPEZL82pcDJx9EgxY2619buYMbtG7hfhUgC765KqNmbdivKXbB2s: '100000000000' - Ae2tdPwUPEZKMpRR8qoe9wfM8sQcfYPp2oRmtumGB6Y2xMghmscz8wRqPq4: '100000000000' - Ae2tdPwUPEZLvFUcFHk9QKVAYthaREiEj8QrqhtAWqyfUGGQGf32SCvBYfP: '100000000000' - Ae2tdPwUPEZ87wPWbY4q9hArZzJikVdFs2JoHKNJEojkjxy8Vp9zLJ51muG: '100000000000' - Ae2tdPwUPEZ7fkQ36m3UFj2RdrynWpadFvKFZAUxvQe6D9SFFbexeTyMuJE: '100000000000' - Ae2tdPwUPEZ8TJXYXt7EJkzZA1YS4MxyjQ5pVxKxVtV6jZ9dHr99Yjbq4hs: '100000000000' - Ae2tdPwUPEZLoABxB2XkjSsJ2ZTkHpR2qJ5qhCoawXiBfgBuFw41oTn1WQD: '100000000000' - Ae2tdPwUPEZFXnqxxggvgGcsSNkjkXvy9MtdKT9kPcZoiWHg6WpJqTidTdD: '100000000000' - Ae2tdPwUPEZBtTiXjHCAZLWYWf6jsuh6xvqy2NAYDsuWnbsSxJAxM7iLgW9: '100000000000' - Ae2tdPwUPEYwPNnfohiWmX4gBdXSPvbS7yXnje2RLSpAiMFC4gs8QndqHeF: '100000000000' - Ae2tdPwUPEZ13sHbK1QbjL5n3DdauAEfQs12uvwyQaWGFSuDbqtBjLNnuqg: '100000000000' - Ae2tdPwUPEZHXU6Ci9uEzp653gTbe5TQ7gb3AK9TLtF1MttBfr5KjdrEBHk: '100000000000' - Ae2tdPwUPEZ8VAi986YfPxkYuTQmLMnfYsPEwkj4ob6mnzSpPC8a7eM4ajk: '100000000000' - Ae2tdPwUPEZ3yoeyvrM9N5J5nPug7kX49eKKsJFm7JNwQeCadWbMzsvw5uZ: '100000000000' - Ae2tdPwUPEZHvzmTM8aagizNsrGrabgeuHbWRAQEpHAsSUzVPEJpbEJZsrX: '100000000000' - Ae2tdPwUPEZBR7kZfwscTkBrtYV8Ff5bajNnUmdcrMhBV9dedeT3wVyFdG4: '100000000000' - Ae2tdPwUPEZChNirPh9QzubG52AWoRaNhofa3TbGf6eGLUvzEi3g8s28Rov: '100000000000' - Ae2tdPwUPEZ3AV95GkjRJCjGPab7DGDKLHecHfebJeNnmSzKFLso1b2zRDn: '100000000000' - Ae2tdPwUPEZ8wwWByYZm27Tbk3ZP4CRvJmWsGWYikdFvhC5tvgW3rf8ueB6: '100000000000' - Ae2tdPwUPEZ7zLi2zvzCDuz3kEjw97FPBTLqaFKS6Xc5n8yhKLh6D4xiXhY: '100000000000' - Ae2tdPwUPEZ8ncxRKKQjBqKtUCYdcvxBc2iC2PqznWcV7UAwdSoAD8DyAYt: '100000000000' - Ae2tdPwUPEZMqP4RPxdmMhi3JU8h8cqzVRjpk56HCjvoJ6mjuCbV28bf14e: '100000000000' - Ae2tdPwUPEZ8FuKmYNKksVxg5t6arfx9HkdLgT7oKf4qA5bsin8eXG59pYb: '100000000000' - Ae2tdPwUPEZ9jDSQyS259HRGSwkQDHSutLwNpaYxpwcayHcqvhUaGjNHQQQ: '100000000000' - Ae2tdPwUPEZ5dSDJ8BbkTMVcoGY7vgYdMVuaDiKZSVRknZndpWAxHXTSEYJ: '100000000000' - Ae2tdPwUPEZJSoZX79C6V3W5cuytGH3yK1DEnEezuCGWnvrsJxVTFaxqTKs: '100000000000' - Ae2tdPwUPEZ4BGksrCA7GFohmRJxML8bYdiPfYHzRAH1ZeehTHWwoaKUPUj: '100000000000' - Ae2tdPwUPEZ4CkT654whww9MPPz5AwzxEhb8QbDynh99C3VChvcW7dmyBif: '100000000000' - Ae2tdPwUPEZ6w8X6Y9z7Cz74nmnkKnjJWqfCSn4S5tXYYyqMhCvpGoHDnfA: '100000000000' - Ae2tdPwUPEYwPChJ1zr8hB7QUvyzpDesUp4to3JZbsLN57PLH7ZWEq4yYVk: '100000000000' - Ae2tdPwUPEZ7Cx68hJx7ZZZ5P4s4vu2tpmeWzVP5zSEi6wC5WM1qc3PzioQ: '100000000000' - Ae2tdPwUPEZ5WFJgC6Mdxegq95JxtEXWLbRwsbivBkvaLTNqoDBPAbQ1ypB: '100000000000' - Ae2tdPwUPEZ7WGiJu4a17o5fRvA9Jxy1AWk2uZuhWb9FRUXZG4cPUw98d2f: '100000000000' - Ae2tdPwUPEZ9t9BVAKsHmA9gkUGpRSeeYZDV4oY5bjShjo3V7KDBqYbiUNW: '100000000000' - Ae2tdPwUPEZ3Qd85yPhvpH1zW3T34cfJyvjinwbi9odxowZwmm4aoJGczDN: '100000000000' - Ae2tdPwUPEZNJiJnsy6DttDVkmCDRMsSrjcdo2cVbZooSYyUcb2SjcmV5jR: '100000000000' - Ae2tdPwUPEZKxr8pmCZ8WwbuBQ4B6ow1EFdPNYKFLqWnJsGpDaUCdDVKnHa: '100000000000' - Ae2tdPwUPEZ1Pz3k53z5UbN6LvCCTczn8dJsVuk9ZRTN6Wt86FmkUGc1Doq: '100000000000' - Ae2tdPwUPEZHrU42ZDpm6deQHHtvNuBopoz6tV35eb571cBnFbEeUiN3sw2: '100000000000' - Ae2tdPwUPEZ61HSMuRvL9qKocuPPEciqGw88eZrepNWhLdTG5s29EpyA4Cy: '100000000000' - Ae2tdPwUPEZJctCftDzEDGzr226gY782YukcHE1KHqrApV1wi1JNhKESVSS: '100000000000' - Ae2tdPwUPEZ43WjWQrTk1mQCmofyiQJsN3dBuabaRtrr9kcxqRAKkYu35L9: '100000000000' - Ae2tdPwUPEZ7TMGPjHcsQhy5ZFkixdpkCvrKF5GJLinm1XYn9UuSKkDwxe6: '100000000000' - Ae2tdPwUPEYx5UAX28QmV1fBvr5fhUd7c6uokLu43JcxTYUK3LnBALT1Ycd: '100000000000' - Ae2tdPwUPEZ7tf4SnwQNPBEhZS2fKVKk53SH4gkfZzh9TUWLXL4DBLB8HTd: '100000000000' - Ae2tdPwUPEYybP1TecLtjztuUo64J1hxiYXhrojcbmN9nQhTdraQKvtjPao: '100000000000' - Ae2tdPwUPEYyEt37tDBMPTQthSpVWMmP3i79kWiV4sxrGTyg2tk67sgGRvq: '100000000000' - Ae2tdPwUPEZ3eXAzcgVu3To6stLGceEJmafZez8tbLMxbDbYfRqepqoSTvH: '100000000000' - Ae2tdPwUPEZ6A4FzdpC5n2E4jhEvRcz5Pk1fa2sqWtDr1BxWz7k5KQfytM5: '100000000000' - Ae2tdPwUPEZHxkEqg2cijMqdYq2h569ALyLD2e1iDb6RbhTLJ5isWiBMWvK: '100000000000' - Ae2tdPwUPEZJcAsq2pgr94xhQp7m5KC7S9RsBaCN7aauttwNSBoXB6utxCx: '100000000000' - Ae2tdPwUPEZ8zkm8J4QjQ685ejAiwP1J5S6s6bVcfUFrJw8shD6GeC3oFa8: '100000000000' - Ae2tdPwUPEZCGEXr5CCvxDHvMqGVyZcHXCmtGL7u1BV2Vy6hPJ7VeTEiQZd: '100000000000' - Ae2tdPwUPEZE2eThpHN641QoUkg66UMjdoE7Q3yLrCDLYtBgsuZkdCQddmm: '100000000000' - Ae2tdPwUPEZ4bozW48zMym8kKaLnR6MAKbgSsifqqWwA1xHM1ozVkhFUj1D: '100000000000' - Ae2tdPwUPEZKp8fMNbmWgL1XFFfRtFj56E2sX7Hw1UP6bQH4TiWb31z2wLP: '100000000000' - Ae2tdPwUPEYweitdnXpbPTvVXVEn4ZzhmpvfBvnbyDrgjBNtcFgTKKNBN6A: '100000000000' - Ae2tdPwUPEZ62uW1TrYnB5ueZ2Wk9cg5poFco6N43VWJuLi8t5SJFjjt6Hb: '100000000000' - Ae2tdPwUPEZ6bjoU9zALeZuYJNzgZyQrJvx5ciFcz5TDdDSJDUz248VdU4N: '100000000000' - Ae2tdPwUPEZ8BCtfUU91FhumMMNWp9z9UTfLRneruNkChuZr6YDBwU7aG6k: '100000000000' - Ae2tdPwUPEZMdaUvXZ2aXF7ZXYsXyQnRDNxLFKQXqK3vwjaMaqws4GHxiim: '100000000000' - Ae2tdPwUPEZCe3snREFsBJUYp7BUu4HTDxrr8hkjmtoEJWqEgb2h9oKTidP: '100000000000' - Ae2tdPwUPEZFU4FdqvRkgMfcyct4QumN9VgZbBEQVtmecEWmBuJtuPx2G9T: '100000000000' - Ae2tdPwUPEZ9ViHaTSrKKfLxr8mf6TdeiFzA1UjMzr6baruxib1HcMRPfmr: '100000000000' - Ae2tdPwUPEZCcDwhHSvmw3eVvD6LoaGSAhBo9yBhMiBk4M1A3sH924Z8mmP: '100000000000' - Ae2tdPwUPEZKn6mM2ChAREkMwHxGwdHRBDU9NWANWLvGByFeSu2WyxCcst6: '100000000000' - Ae2tdPwUPEZ5FTU77xdpyyEZTsHEWqA4SkuYBvFtCbSskoMzC1ft8WTYEui: '100000000000' - Ae2tdPwUPEZ555CLvYqhHRE1XKjkSBKqneLpEJ9v6sjsV4NfdmS1vmm6mN4: '100000000000' - Ae2tdPwUPEZHUwuEkHm1eon6wYnWmt6ksFFRTt1XQuP5MHHnmvi4NJijWJA: '100000000000' - Ae2tdPwUPEZMXz8bacHcxvRXaR63VsDvz5uhRWPaq3Cu61Xhpa9zd5MeM5M: '100000000000' - Ae2tdPwUPEYzh48Qk3ohSe5XnNdoNcqZuYvCgsEMASuWPB5n4perL1BSujx: '100000000000' - Ae2tdPwUPEYzBDp8a6d5xdm1xXpvgNqKVEh3k5z9pMpykrFFiWjp6FaXd2u: '100000000000' - Ae2tdPwUPEYyckp6oURgGFXd9jG69n78zCee4B9SEQ2bZXyjxbUq3R5HMU4: '100000000000' - Ae2tdPwUPEYycp9vuzZHXQtGrgTM1gCPjszoS1SzqBWjuoAgyUCG2XjN9ku: '100000000000' - Ae2tdPwUPEZBMNmzqSXZsUDqry7aF47NPvT43LxMWGKmviEUJzN9Smeguxg: '100000000000' - Ae2tdPwUPEZDa8wGNQ11jonhjok3ehzyWsbkFVBij4iPcQd2CJihWjyYZ5S: '100000000000' - Ae2tdPwUPEYzxrpydczZyQ5AeY3qAXCngijc5yZNHNAhoGddCSgm5Lnkqnh: '100000000000' - Ae2tdPwUPEZ3Vn2gGxXRpvZX5uXjqHSXAAzQTstzsaMCWCt5ooSt7cyRH4w: '100000000000' - Ae2tdPwUPEZF2UPCuoSq3ivvovpBjXc5taAqLrUw5vgGh6zx3ckpK2Fi7FD: '100000000000' - Ae2tdPwUPEZFa1ssXJN4sgukaGBDtst2jcA49ZGzXa2Hr1C5vuZP7CuCybW: '100000000000' - Ae2tdPwUPEZEMZ2a3tcUU4bvb6hoM9w3defNmMti7ja6wigjCdSxkJNDwZC: '100000000000' - Ae2tdPwUPEZFKJDXx4Fsp91ZgpaAgKNNZWB13jkYXW6wPEey36chKL3NDwe: '100000000000' - Ae2tdPwUPEZBCkARDHPo852i6XfT58pw2Pjvirgkva1EPw6PwEaYGuTNwLb: '100000000000' - Ae2tdPwUPEZARA9MeBQwoccSYDUj9YChXLyh7AtHMvwvqG9ayZ625ArKUxM: '100000000000' - Ae2tdPwUPEZ2SsnM8YH4Hf38XvLidHoZ4DPmTiEDtMPmE1MzEnPfbssXNJK: '100000000000' - Ae2tdPwUPEZHKAokswWkYgcpD7xafPndkRqpUgQaZHsarap1JAgFjRDGfXQ: '100000000000' - Ae2tdPwUPEZM4tzjPRCcjKSj7BTNika8my9DRRAjY1EHi1oo24Tm2XsS2tg: '100000000000' - Ae2tdPwUPEZ1JqaUF8MTCB7b8CtKXYm21fTKSa6yYL1RF2s79Ti9ZbThbKk: '100000000000' - Ae2tdPwUPEZ1KgqFrnvMZxDFimrPpLmdwMPzHERU6vH5twNVwGoWNnPo2ua: '100000000000' - Ae2tdPwUPEZAwJp8YhT57SFdGsxYcdNH8tTX2zRqdTxg43FPaPp9JCJp8Mf: '100000000000' - Ae2tdPwUPEZ25AXK3R5hJkV21NFPHWGqgGR2xcnHcbPT5p1hGeTyN29i7Kk: '100000000000' - Ae2tdPwUPEZ5UJfgzYLuadaTe1woBSkBM8utqJnQzRB7UyfjN9RP6788oSd: '100000000000' - Ae2tdPwUPEZAWahctBMQNS3W4BXtYzwkDiaMoMRBwky7dTV2Ex7uvjqJfs1: '100000000000' - Ae2tdPwUPEZ3Gaq2hSnXQsxtnTuFaXMFmj2DZd2fvuQ438w6QewyFiWGhBF: '100000000000' - Ae2tdPwUPEZFxrHZD4xbVj6rbRDSUenw5cqrETC9FdU1c3V5MB8CBA64rwW: '100000000000' - Ae2tdPwUPEZ17Pp5q5Uk6nuoVZaLL3sV2tsMfC7gJqhm2ejLY5MNoWNw7Dt: '100000000000' - Ae2tdPwUPEZKuZDoFKaajmAEQ9kdhMxihkg6EHHHXa4ZudLLbKCjX3Hq6dK: '100000000000' - Ae2tdPwUPEZKhn8uCm9phfy2Lq4GJAymiZyakBtzky3fyqjst76gfu6qVCY: '100000000000' - Ae2tdPwUPEZF5pDQEGx91dJwRhniHsJfQa3hN54NZibuKw39r3LnA76bzPV: '100000000000' - Ae2tdPwUPEZ5gC5x7zz8K2XBjb1EP9UMgXMQtGTefJFdwsqUKYfFQfFwnQH: '100000000000' - Ae2tdPwUPEZ42KPbxKa3oWvgGAMNyuLJiChHuqhK3xr6cpMyvtm61TQWWsc: '100000000000' - Ae2tdPwUPEZN5Uij8nGQZZPS6aAG116Lk9Fficg3HyNnZBMX7uE1vUrWy9k: '100000000000' - Ae2tdPwUPEZGYm1TLWoAr9bnz8E1uquebQpFu2hQvgZsTonU6BzAqyBRiTs: '100000000000' - Ae2tdPwUPEYxXAL3ZDYMEQRBWnEdPUKua1VN7kzjPPCftRSCJ8fH1Rtwiqe: '100000000000' - Ae2tdPwUPEZDzUGRJZzF1ULkP9NuGvnx1eqPhPdsRR9jEjYA1JucvWCpgYs: '100000000000' - Ae2tdPwUPEZCrm6p2guL2YpegrsznYJCYjoTXWqXFiVGvkXGqE9rUgB2kbp: '100000000000' - Ae2tdPwUPEYwNeXui4QEN6wcBmYYzfbxY7Z4bVQLWnNv7d1gjKmeACPYzCM: '100000000000' - Ae2tdPwUPEZF1rWkHBWPKEBcbG3tS7MUZfZ9HZGbcJLb1PYenysWX4MXnVY: '100000000000' - Ae2tdPwUPEZ8qstsN6TLqP6UHGMP1Eo4iVzoNr6WqeEYFdBz8wHKCL7wxvH: '100000000000' - Ae2tdPwUPEZ8cVvmKvAutGSseymQScV7ot2jd3HpeddcygXTkUBwQxF3Tqm: '100000000000' - Ae2tdPwUPEZAaKFF3dYu4SSXz2npmhWQ49bwbZanRWjTLU7yyihrV4VnE5D: '100000000000' - Ae2tdPwUPEZMgkVA1gXHNwqYZKEYqEiBhkXXRwZU8QYRvwPtgv5seiNg54w: '100000000000' - Ae2tdPwUPEZ4wCrqVNbZyVYjt6ZN4rM12iPRSSCdR46tpmKgUGqsK6NvhiE: '100000000000' - Ae2tdPwUPEZBMR1jky8fkFR6mtBpir25PXoS3R4wCKWpytHZNwUzSAW792F: '100000000000' - Ae2tdPwUPEZ4iQaHPshodNHD6TKTjvkBtn9AWyv4NJBLDX2sky2Efsox87W: '100000000000' - Ae2tdPwUPEZCqTNGRt2U2TiUAds6Bsh1YpZBe8ED9s3Xjkq4zKTfBisFaYu: '100000000000' - Ae2tdPwUPEYzZhAHMPqpXcEZr7nXxj5BgVaUdJR5DPawBC5RkUEGnhn5bPE: '100000000000' - Ae2tdPwUPEZBy4idd7minN27Ygb9xsNjQTaFi8x6bsTwQPUGPo8jvqLaSgZ: '100000000000' - Ae2tdPwUPEZ2S6AbCeAHSLF87HNdT7JQN9NGBg26SYHfMEPDYLZyTAZnKpr: '100000000000' +- Ae2tdPwUPEZ9CbZnamvZsqj5vpQe6TwUNgVtFzTUeMjvk99BwtvMeSe9KRS: '100000000000' +- Ae2tdPwUPEZCjKWc4sRBRHhWtJyyvAE8P5jk1zGJL7sVivMrbEminDtE3AS: '100000000000' +- Ae2tdPwUPEZBT6m1fWaekRtXtKnTk4oyDC3mrDZoLSmsdmFBswdUEyVTD1N: '100000000000' +- Ae2tdPwUPEZ6FGr7qJQzsjmAis4TH9p5PiccaSzDy3epNfnijigXhvqjuRV: '100000000000' +- Ae2tdPwUPEYzLXeB3NuYYouNwF3ut9CoZUHTnV9BaWMXR9ELnn2VEYMtJLy: '100000000000' +- Ae2tdPwUPEZ2hRRf7qxoetRqCqWcoekNVdWgeMDvcycUYvTwFgxnSj3tv71: '100000000000' +- Ae2tdPwUPEZ84xfQnTBg2of8xvP3auzM2NsxttaWikFeGWHXXhDLPPHWYtX: '100000000000' +- Ae2tdPwUPEZAeXYwmaSwKb7cj1smTacYE1y3BHzgCKreLBgccWqNEqzADvB: '100000000000' +- Ae2tdPwUPEYxFW1qHXvrWBEwNXhKMYxSdGcouVxW6S1udSCsGsZzcP5AG4K: '100000000000' +- Ae2tdPwUPEZJbgFPzLxpQ66FkKpusPCTMuQJeHTP6VEFTgUVHqy9oAKRTKi: '100000000000' +- Ae2tdPwUPEZ9t9fA55Ky6Kheo7fp1CadoPBLV9sGFMAz37hbDuYbprfqG8H: '100000000000' +- Ae2tdPwUPEZMZF9obmh6qQyUpV9Prw2njh21r4LCbUvJ4dLBM8W6wbqoBTz: '100000000000' +- Ae2tdPwUPEZ3vjD7tijceV5nofKJPCbo38ALCcJ96yrbFxjUHZRqEEFVUp7: '100000000000' +- Ae2tdPwUPEZEMydxoUBCYJst1gZSuqPtvzTDs27vDURrMaUXzztoBH54aRD: '100000000000' +- Ae2tdPwUPEZBkPn3hNNsD9mgFxDFHbALb9fh9fXZaqmYk1M9PgCoWxVgv9v: '100000000000' +- Ae2tdPwUPEZCwCFGbbdprQqKUc57PoxBipLwVhVw45buSQAMmEKZN5rUxcH: '100000000000' +- Ae2tdPwUPEZEXQ89XLfn2vuTvv8cAFoBA9cutYtNMa2FY5p9vNdq8x7CgBH: '100000000000' +- Ae2tdPwUPEZKEwDyJHFeZYNKwCZG3ZDKugj2epNJ4QJvt8HvKhxQomzKX8N: '100000000000' +- Ae2tdPwUPEZCPH41CHRo6ydFnq3b4WwE2wvYwLULWMAXgTyfrVFsqYuckUf: '100000000000' +- Ae2tdPwUPEZ6gpdpSwcQncGLkdk4RAfco5aApfaSUNZaQdxwYS4Kecz95SE: '100000000000' +- Ae2tdPwUPEZJ5BCs5wCMTo5w9PugHdwCGQHt5Ezv6jzib4qH2NPYZNtnYFg: '100000000000' +- Ae2tdPwUPEZ53mQaXLxW9w4C4K5RGu4MyVbtMhhhCqUnub1HYyVVNnK9v3K: '100000000000' +- Ae2tdPwUPEZ7QzV64AccYzKZU7UhejzQ8QH4FUJbCHqp9ApccoAtSCzAPvj: '100000000000' +- Ae2tdPwUPEZNFTfSVZVB6GnMuf3zEBPUednPwX9fttdLZAhpDJZm3Hr7Kx1: '100000000000' +- Ae2tdPwUPEZ6hmBiNFqRdpG1o1rZ5akRnVfdgSECD1A6d9FnMF4nq2MwzPy: '100000000000' +- Ae2tdPwUPEZCBVAkDmX5xLAmHgTJY33mU7ATKg3eau1MFPu4iALGSdR2UfP: '100000000000' +- Ae2tdPwUPEYz2ryynipU2cM8qpkMyDya85dBpDUFaG4KPnVBjwCUrHQUSH5: '100000000000' +- Ae2tdPwUPEZHbbFsAxgxNBBLdfYpmQH23xmMnxANrCXKu5PEcsPnUC834aL: '100000000000' +- Ae2tdPwUPEZKvTGfva3r5k1BjnSU1mwgX35sob4AL9fvJnvwot2aCLonkPN: '100000000000' +- Ae2tdPwUPEZM4hC9yXZUuf2V9w5uE5Urozt9R51j4dKRyC3rW31SZfQ5wZT: '100000000000' +- Ae2tdPwUPEYyUapnFvgSr7cHEGYqVfGSkS8QLA9d6zC8ESu2ULTD3uPsSDR: '100000000000' +- Ae2tdPwUPEZLpnoNNUf1Zgssgnq3M2Py7vYWaXtCaa2mKjVbqeaaCdmh8CD: '100000000000' +- Ae2tdPwUPEZFoT54DRvCDTM2dffDcwy75srTAwqV3JQ8WPXZdJU65zTSeL7: '100000000000' +- Ae2tdPwUPEYxqxw6CYgrdgvW8iBbYtP5RpVHoewWpnWUc1HxP2zEryVAYdf: '100000000000' +- Ae2tdPwUPEZ72idRngV4tz2LTDYqpJWAgrrb7hsGN36wWYFQH7dRkZzh8Vr: '100000000000' +- Ae2tdPwUPEZHk3FoJtJ1nq4LP6Ajme9MtznQZn6AXXigjGSm4ypoJ6q5EHp: '100000000000' +- Ae2tdPwUPEZ2CB6bhGuV3E2gJ8wVBZFnW8MWZ9gtTUq1kLRBvBty6u6YNkc: '100000000000' +- Ae2tdPwUPEZD1hu4Dkq5ExcntDEGjHTt8JH1zT5ijPkmhdiVeCbZo9po3SD: '100000000000' +- Ae2tdPwUPEZ3f9bQ8XRwKzMbmLnBUE14REw5PuaWzCXGtS2X3fMSzuzZuqM: '100000000000' +- Ae2tdPwUPEZJTZH1J5oCnLXeVPyBwkbuddMRuMuauZ1t7txkT1ynpQZJvi1: '100000000000' +- Ae2tdPwUPEZHDNbJuTCebMCxMSNytbRbbtmrXTCdJGEJez1BhZhEBoAHMp2: '100000000000' +- Ae2tdPwUPEZG87YBDmuacpg6kQV7LLZEio28LXkbSeLz6oUqsjWdowDa3Wf: '100000000000' +- Ae2tdPwUPEZBXw9gywojwx2bXYHk3gKBhSKK1S7xrF2BgMcEk3ab3Bb3P8P: '100000000000' +- Ae2tdPwUPEZ9rZH8FVtHdT2g6LbyU3wv9PZVUS9MpMj5jrrpnyskDgnfbmf: '100000000000' +- Ae2tdPwUPEZDrbgo3gBvRzJncARkVysRniLTp26QuRYnsp9QeReKRAFiMs4: '100000000000' +- Ae2tdPwUPEZFaiMZkRnArEdD5tLF2mK1v1Jz6ocuQLdjzR1UZ4yL8tDenUb: '100000000000' +- Ae2tdPwUPEZLoDUMrpV4bvVHMrcef28CxED9oCeWVHPmBjmi25QG86JkAER: '100000000000' +- Ae2tdPwUPEZJjN8qes1hxWYPRzeQoVBmzoHL87dW9ZZTo4DURTcV4VJzSjp: '100000000000' +- Ae2tdPwUPEZHisqwXFgcegTeeEVkbPWknFeexujv4AhFBpDLEQDt37VEpPZ: '100000000000' +- Ae2tdPwUPEYzQTSyqGffL97S42p4Kn4151CbpNPkNy6HhD95mDgVC42FcAw: '100000000000' +- Ae2tdPwUPEZKoKVCyUfvuh7dD6sb4nME361R2d8LiDFDtKcgQLyDH6o6ZJv: '100000000000' +- Ae2tdPwUPEYzgHhxnLQWo7LWuxSEHaageDhRqzLJGVPJcp13oN9XvFDrvpj: '100000000000' +- Ae2tdPwUPEZ7hX79gagSogoHmgqvYfTVbE1QenjBWTDeWSXRj74caV6Ybzd: '100000000000' +- Ae2tdPwUPEZGu6E1q6VQNTH5AUU5WxKKC5p18gBjX382oEuRn9rw4BL7QqW: '100000000000' +- Ae2tdPwUPEZJGKJJdH7vmjXDnEGE2mnvJpmmzkgPA9wqwQusiaNu9zK5tbb: '100000000000' +- Ae2tdPwUPEZ7yRuj5Ufd1H4JfQfpDeJUz9UwTBRQiW114wKMv1EbwXc3CzF: '100000000000' +- Ae2tdPwUPEYzVFgja8tieWubwKUSnxPTZgogN1n3eQR4MRgtBWoxdZjpS69: '100000000000' +- Ae2tdPwUPEZ3yuDr9bUjQsqYwuQ6fsU2uRMrtetUmUddQ3js36Fvo6fPQMs: '100000000000' +- Ae2tdPwUPEZ9YPk5PkhbNeQnbGae38V3k5vXrpMR4kMXLdUNQGRFDTmdn1y: '100000000000' +- Ae2tdPwUPEZHwYNYYtDUXJRqb1ssVu3QnPqKfkQ5SeC6SPHZWpnf7ioa4hS: '100000000000' +- Ae2tdPwUPEZ1UYrjuQ87Y6PGnETHeduWxWkrhv7nWRrMywBRUYCgAnshEVt: '100000000000' +- Ae2tdPwUPEZFV7UWLNKHHLkeibYnjpLmYknUMSabeMQQUSThxegqewFnmQA: '100000000000' +- Ae2tdPwUPEZ18qDPCBnuUZmoX7sHjqt4SkTXdEysaiLrTaDFiiVKmmRpbrz: '100000000000' +- Ae2tdPwUPEZ1DZfhPiqgJmLQ1cFq6WbtRNcppQrajNfYG7EUMC9fz4a8Wjo: '100000000000' +- Ae2tdPwUPEZLqUBNRwSeAtdHRjBGMwcZKeuawfZd3kkJi7d2kWujki9FzEs: '100000000000' +- Ae2tdPwUPEZ7LndjRSUmsJQaA9uQB4hFgAAdzsbSniXdzYZYYwFaEQ2aXF4: '100000000000' +- Ae2tdPwUPEYxTXUvPJUGGkVi22fmGBRnqib5mZLuZpef8P9NRxfAKZmiUmd: '100000000000' +- Ae2tdPwUPEZBorBxQ3LNZtuvwtGJgxigk8Qtr3z191yKvpVHmghgETxLZjA: '100000000000' +- Ae2tdPwUPEZFP9XDgqvEfyxxA5fwNC2foMAYP8i2tJ7iAw9HcS1deQAyzNV: '100000000000' +- Ae2tdPwUPEZ98cfPdpJszzo7NX2oyqnntXevBVTsTKQfAJm5EThF7bK93VF: '100000000000' +- Ae2tdPwUPEZFayinWxke6wYgHrEGZj8c6PH1kvWAcZtnHiBo538ZH9Z1u54: '100000000000' +- Ae2tdPwUPEZJhDM1zkiZYyehsEJPPHBX7RkT3g8CuqqYV6RZsD4bu6v3uF5: '100000000000' +- Ae2tdPwUPEZJH3cD6rZcxcuYffzoYX2f6nnVanQEcXgridHjafR8ExnjEfp: '100000000000' +- Ae2tdPwUPEZKREfBnaR2Dsggw8EkVWGnZVa2BT56Knifxy55ZXpCmwrqQiW: '100000000000' +- Ae2tdPwUPEZCEEuSQGATQir8GavQykyWKM6c2e4m8VEmsBbJ8NY7Vz8VTNf: '100000000000' +- Ae2tdPwUPEYxHGAwkPtNW8qW63Na7RzNaD5HW9amgagByg1hd6pmRiDEwmJ: '100000000000' +- Ae2tdPwUPEZKLEBt2AMF3z5ng7tqeHcjs8oWgvV9eXnFKANMzXnP7fdY8Cm: '100000000000' +- Ae2tdPwUPEZ97snjrcU36viZhV7GQGNEFUdvB3TgJ2KqZb5vTf734LAV7nj: '100000000000' +- Ae2tdPwUPEZJhkmTnn8j9AHVRjCzdGJdr8rCcip1Pc4Wz1ZjBR3kytRVgGH: '100000000000' +- Ae2tdPwUPEZJHw1SqqJdG5HkpQx8K7hKCBY3v8McntQoKERgZGqrgtvP6xE: '100000000000' +- Ae2tdPwUPEZKye4tAhvu7EyojYtLt1f2YhD1bzaWJsPnK7bnQ89ebWrxiNa: '100000000000' +- Ae2tdPwUPEYzo1SMdPsSVheagaxMDCS36SM6DGi4rzpYy5pqxW67PD9R8mY: '100000000000' +- Ae2tdPwUPEZ92siraj8GpXTRoKgS2Q4UQSdy6UXTiBJ3AsjpfbiYqK8fzeM: '100000000000' +- Ae2tdPwUPEZHxGS9WQiQWKb2bYHQwqjwB5UiPhR7SyvoEE4VroDzP4cqGbg: '100000000000' +- Ae2tdPwUPEZ6F7S6R4hyC3bMx9unr55mH32FdfyzxywFnHU2xwTpeGWmX41: '100000000000' +- Ae2tdPwUPEZF9wESGBLARRTFqj8SyUyqEtFeDt98wvUUKkjhetx6tmo7VRi: '100000000000' +- Ae2tdPwUPEZ6VbCbFSw8vednot75f3pqSitccu9mfL8PtY2a4ApqXt5gDei: '100000000000' +- Ae2tdPwUPEZDCr7WL6efn3Zszup6mqnHAeh6BZ4tpR38VRFirMzrkzZje9U: '100000000000' +- Ae2tdPwUPEZ3hajHbGabZGMWV1jeHChUpxiHRmoFcF2RMbp7LtDFAjNyzR2: '100000000000' +- Ae2tdPwUPEYwnD9hKk8Ju3uQFaPfrZeCM8eLcNGuSBw6HDCEpnRMAoVk4Yh: '100000000000' +- Ae2tdPwUPEZAMx6daGaFA5AqmsUbLgXvdBZdvbYNabc5HwuH4HSR4FArgCv: '100000000000' +- Ae2tdPwUPEYxkewyCrzUrSE573rnbJJU82vnCaV7gLgoMDxurHwRDLWCbGi: '100000000000' +- Ae2tdPwUPEZCTmkTcNnhpQRR6Y4T3gSSgLX45RkgdMgEkWWCSVQind4BQGv: '100000000000' +- Ae2tdPwUPEYxJNjS9G1CWZZ7oK3dE9Lj3zr9v9FqvNHuQVTzv2L3Za5cUSe: '100000000000' +- Ae2tdPwUPEZGLkUU4xVqcn53hBraSyxxm4JwiMxPMnZd8t4w4kCKRrrGt1r: '100000000000' +- Ae2tdPwUPEZK4tJHCDj5ZPmh9GkMVBK8LB9viUXinWKNum2zeN2Wwe27G7B: '100000000000' +- Ae2tdPwUPEZBJucvYyV8Tw1tFsLsLBNM3ryfuME65kpBQBn8eGUs2dKrLDt: '100000000000' +- Ae2tdPwUPEZ6A1QwNygXpdtV16WvihLJ4kcf4sMDM5coC54JHaTf1KZHB9T: '100000000000' +- Ae2tdPwUPEZKzCY55tHrSw3d27ibdH8Jhu5bmhqCwryA86gcJeRTSZqYnSA: '100000000000' +- Ae2tdPwUPEZ4tyQR1CmmsZtNy4BUx7nP4GkNMYS5BwUNRq3rcdDudMksn5j: '100000000000' +- Ae2tdPwUPEZ44dZvh3Z26i7tURh66UgsYzq3HatD8E2eLqe7iRVUhRyWgqq: '100000000000' +- Ae2tdPwUPEZAxF82KqfQobHK3N5cp81BpXsT3pKRK49fdKEDv5aErbhHAnf: '100000000000' +- Ae2tdPwUPEZBQgC63vHEq8Pia7GnThMkZj2fLL1ct41rySaZ3cbaCG5eLWk: '100000000000' +- Ae2tdPwUPEZ5V9UaqSYNQrDHajyCMFmNwQF47FgzXDrSAJm8UnKpia2n41Z: '100000000000' +- Ae2tdPwUPEZ2jRrynT9an1BhJDWRMzuPq2o4SbcrwEfp547jhi5KBQfSjqz: '100000000000' +- Ae2tdPwUPEZAWdcTqJBm3WU1NEvVdEF7Np9E3Menad8eXuEQLmCfAKPcuVJ: '100000000000' +- Ae2tdPwUPEZNJZa8SyZd4Bpfh2K5E7SU4ha965wLG5ppUwB3WsTGz4V7wyc: '100000000000' +- Ae2tdPwUPEYz2bX1Cjng4gdQgWLJztL92kdCVzoP7cv3LssgUfksKeBuqjV: '100000000000' +- Ae2tdPwUPEYzTJj2S4FKbyxDazf5pLF8wWTCy92zq2tPyyVXogc3tsX6VA9: '100000000000' +- Ae2tdPwUPEZ5DjrpQYgcdBNZ5QbsbNBFLkcHQfjqakJ7jLJGLhwumNKCQMm: '100000000000' +- Ae2tdPwUPEZESZekewoEvS4Gu2CXePzN8S5jzMrQzitpUGrQjMiAcE16mtj: '100000000000' +- Ae2tdPwUPEZKfTpxjHXxTnkSd5KDKHqZoXzzQ6dP7gWW5qViVLvWz8E49GG: '100000000000' +- Ae2tdPwUPEZ9dYypZ8MujGzohGUFth6jRm2zpsve17Uc5VF4ik3YLV8j4t5: '100000000000' +- Ae2tdPwUPEZ17zd3GSobgex9apxwXUsPesezueFvdzkKX5S1m11mbiTeSfV: '100000000000' +- Ae2tdPwUPEZEKs2YqyduGgngU2o2veqrk6fZjGDnW7GdexBF6Sfo3SLt5BD: '100000000000' +- Ae2tdPwUPEZAw6JSmz4oLYn6AFGTXTx2mN41jZFUEYtfCzPLa9DFrn4VU2F: '100000000000' +- Ae2tdPwUPEZ4SogTJgoPViU8MH6NrBLXECCNJGpVTLavPbJzsAJfNrAH3Qs: '100000000000' +- Ae2tdPwUPEYz8wxMLTWuRcPLkh1KWWYbgMA6VNyKbc6YT64WyCBtpPigfTv: '100000000000' +- Ae2tdPwUPEZ43fSQtVLfKpKgzo3avdDCNsZNWFphtumcr9dpk9BvVR72Bpd: '100000000000' +- Ae2tdPwUPEZDV62Rgc4HL8A2wVNfhLgjQW8Pip3gRZgMY33AYKer8vTSa3E: '100000000000' +- Ae2tdPwUPEZ2uF4wHtZeHieavknWfo8wK6oJ7EKQuhPivCQdWchEMBidwrp: '100000000000' +- Ae2tdPwUPEZ3AdJWunrCm9DvBWNweoa7V3sG6hEkyYjo8Lx6ifQmy1PmM7m: '100000000000' +- Ae2tdPwUPEYzoNQQUCaiW8aWQpatgpBNpLbLx7NUKFqqbBNcJQWxGdUKsVk: '100000000000' +- Ae2tdPwUPEYy2qgZAS3JqDKjAYrRq9d72JBjo7MsMh1ufzELtRQbU3DfxD7: '100000000000' +- Ae2tdPwUPEZGEFvshtd5RXEyTQukbBbirLDr7H1nG3eX8iYXFutetPkRLf4: '100000000000' +- Ae2tdPwUPEZJZ3ntYzKwMiJ2NvvoVDVbBDGY1A8SieFV54f4QnHQtQhBqWq: '100000000000' +- Ae2tdPwUPEYzbLk4qz4J2zRYKk7GD3STC62W6VwvEQs5xXPehP2nhC6ZJuV: '100000000000' +- Ae2tdPwUPEZEQRpoinX1kBxbmxPEEiBohJbw7byuzu7zmD8r7n47gvuxHiw: '100000000000' +- Ae2tdPwUPEZ3U4wjcH8jfsZhByQsJmcc4cAUcPXYwoAgjygL2bZsZQfo2yz: '100000000000' +- Ae2tdPwUPEZ9C9jvGbgBhob5UjkvTrbniWBfZJPHjBaUvkf7QzokMEjvyA2: '100000000000' +- Ae2tdPwUPEZMjeQZAR2zVuXDxmbYCJZYwqEs4u8c1BBL2urxKU1Eg47qqdn: '100000000000' +- Ae2tdPwUPEZ1wjde935ncT9xZa9Prwmqi1AAg77mHVSyYARpbrZhqToxNfY: '100000000000' +- Ae2tdPwUPEZAXmspP3SJGsFjEL8FFEeajb6NJGRjQRYDMEYHY8Uy7Rfc8mw: '100000000000' +- Ae2tdPwUPEZB6Vq9YbkPnCD8vyWbWbpTb3bHnh1NTTGZnrbUN2mBt2oK2FT: '100000000000' +- Ae2tdPwUPEZDqP1ooXnVj8K1iSoAep6YFXvBdxkAqpQDYUvkF6T7zBX9Gr8: '100000000000' +- Ae2tdPwUPEZKKe93c1DSP3jdGaLLf1QV25P5KGS9GTpR2DR7VB2E7ZbpVUT: '100000000000' +- Ae2tdPwUPEZ8v3EN8AaLk4u3JBwxopVr9eA1EYSKQZ6ZTUkx2WbvvYVxWhJ: '100000000000' +- Ae2tdPwUPEZ4UQ1TiCtBMkEXUbQHpxvAVJMMqYacjgQ5an2oRFLE6ZaCqvm: '100000000000' +- Ae2tdPwUPEZ6NLB2T9MpHqi4yHSFiMetTGXGsLKzHgdfDTx7SH4kTVhB3zB: '100000000000' +- Ae2tdPwUPEZFq9QNV7QjyhRHf1j7ZAKraJGCRvYgLEmJ9CCp3hXYRK7xHaH: '100000000000' +- Ae2tdPwUPEYxETqTVLXf5QewsMYddgztYR4q4RTQv2ZgcHRcinFgfCE75vg: '100000000000' +- Ae2tdPwUPEZ8QeqaTzBKjzYMx6nPv1fNfHDPen3DCGuPeAqwEJLnjPXrwzn: '100000000000' +- Ae2tdPwUPEYxUePM3oHmkrvyn8K8o64bnPZQD33LW2GxDgn7YGkDeiXg5Jz: '100000000000' +- Ae2tdPwUPEYz1ZH2X7ZpAJagbWDW2HDJbqixbw1w5PYtk8PTY72o5xZ51HL: '100000000000' +- Ae2tdPwUPEZ7agbynn2exuo1y6CPEsJCuWFzzdWDp4WwN9ZVHuWrBhus7yp: '100000000000' +- Ae2tdPwUPEZBLcoTDJdnefFiF39U9DhzMDaC7Yzti2N3fmqJ95dqaLdBJNv: '100000000000' +- Ae2tdPwUPEYwzJsYYTkbWJoPvXkcn7hfp4FRi3xHvbcLAewub8DZXX7CSSi: '100000000000' +- Ae2tdPwUPEZ7ZSFv6YrRs2F5wPH9iCfudBjfwrWJr2p2YtT19bcT1cuDXAJ: '100000000000' +- Ae2tdPwUPEZHA2Bgr6XT8ZwEkiUQvzFK71gya7ED2K6v6pi1jFXaT7GdmKn: '100000000000' +- Ae2tdPwUPEZ9tVtyj1cC7WKknx3WC2Wq56uZoZGuwKM6GahsaGiiSeAHt6m: '100000000000' +- Ae2tdPwUPEYxWxA66PhgAV3GYuG32jptf5MVgCPHxPZaLFMNpEXH48HLDTk: '100000000000' +- Ae2tdPwUPEZN6BwCB5hoqFm3oK8qC2xjtEkSv52UeK3vaRsJiB6RL9GNYXE: '100000000000' +- Ae2tdPwUPEZ8zraXmkS2qPuJJDoqohSh7uoTAMUpdLXHdFMiFUFyYhyCuWx: '100000000000' +- Ae2tdPwUPEZ9X3e3qWK3XQHgM86hQ1oeL9dXu8c5zr4VY95CgHp7MgCLDN1: '100000000000' +- Ae2tdPwUPEZ4Qp5V7LwHCXrZbWFkiA4ksJNHceHEcdtazKiRUQiT4hurkRH: '100000000000' +- Ae2tdPwUPEYwU73nG7Szf2cw16o4oVVSogArjrmb57BHoMYksDNFJemy63P: '100000000000' +- Ae2tdPwUPEYvy3bpvbX4XU9TzRxtQzuX5qB7KmTKX4quQmDRgATTWqb2AAJ: '100000000000' +- Ae2tdPwUPEZ5Zjac6pucQcez81iCUTnCp7xUpDjtJfStUjLGK5biHFUiSiu: '100000000000' +- Ae2tdPwUPEZFUHhBy3baagWZY3pAzTSmecL1DaSR4CinhFXsn1LdVQcfPUq: '100000000000' +- Ae2tdPwUPEZ8biBAsW2pzoPVrUmEussYCKQK8ohqR8Juf1BBr97zmoL24FX: '100000000000' +- Ae2tdPwUPEZF3G1hWedaTDy7z5nmi9T7wH6q8zpmtmcdTUX4LPkYM54F7jP: '100000000000' +- Ae2tdPwUPEZCqnehWJedr1cAhEh3PndtepQZDZWXAnEH6CmoCyQp36MmVib: '100000000000' +- Ae2tdPwUPEZJsgsQ8EywLdrCkWchoSw4dtQ5B29W6kajMoL6HhBHZXbPtR5: '100000000000' +- Ae2tdPwUPEYyzou9NfTcGn9HMEsQPQaFotZiTuDNTCj9viKCqqLTHJf9kMR: '100000000000' +- Ae2tdPwUPEZJPEJ3NM2Do8V5P61AYLGtpxc27rrGE33eQCqmVzv6kmBzhAE: '100000000000' +- Ae2tdPwUPEZCjtQAmSvSFBJa9tLDUVKV2zNfR4xhkCCE8B71vjPPNej9erU: '100000000000' +- Ae2tdPwUPEZ5Bt9dTKqD8iHTtJpzttGRPMSLLVraXCfSYAFewLruvSSXkQw: '100000000000' +- Ae2tdPwUPEZLjVEJAkF7JVK1NrkEdtEpcvtFnd56bf28CwGfEMHpamk2R1N: '100000000000' +- Ae2tdPwUPEZ4MxjzgeAVts5xkA3a3KXFw7Hi7gQjBaGVxLUFjZd9bJiqCz6: '100000000000' +- Ae2tdPwUPEZHgYmjSPK4mqErqEPCYrCaGp9MBxsLNLNfFVFj31ZPR2vZWnP: '100000000000' +- Ae2tdPwUPEZ3DDG4G1rnGGbWj2yhrsgi4LW64rV7D7hdRZ1w9iDPzaBkw81: '100000000000' +- Ae2tdPwUPEZ3M79mNDBaZm3Xxx1yTxmGPzwmEx1nSfvj125n8UKghW32Vps: '100000000000' +- Ae2tdPwUPEZEURY5ybR8TWu2z9iVMbJR3A5TpvcHpW2L6KodfR61TshTM4g: '100000000000' +- Ae2tdPwUPEZJbnq4XxL8B9c1LHmG3VQ6WnVHzHjck1fu32ZxmwgCknawaDU: '100000000000' +- Ae2tdPwUPEZM4S8WznaspXyaNCz7oYc3ED4XEFaTNS9uaDk5eCzaczwNyeJ: '100000000000' +- Ae2tdPwUPEZJ7cysTFLJ38GAQQYDKyh7bF7QTNZutixaCWmGjJqUtzgc63T: '100000000000' +- Ae2tdPwUPEZBVNnUh1HBwTogJiwW2ZpVpJ5SofHv1uBtSJnUJHyf1qk7TYn: '100000000000' +- Ae2tdPwUPEZ6ZnSp8kJkL88MwAWYnvy2a3p3cbvEYj3RFhH3CTJVHgjuJNP: '100000000000' +- Ae2tdPwUPEZ8qsU6yNkZbDgPAgGEya53ER5haQHEyYMqb4gAfRaMCLcSiJL: '100000000000' +- Ae2tdPwUPEZMmCSrPtibGN7zCfENiUu4DjqgWKnTdBRwxnwpVRLm87oRwin: '100000000000' +- Ae2tdPwUPEZL71mCQ3Zcb5EgC1Vy2oaWhSFLZki67uxWcdFJ4LzApPxpjVL: '100000000000' +- Ae2tdPwUPEYxDeiSegEFJAJJg645mjn9EDhbTpdcB4CwPT9aPFPo1xhQfMi: '100000000000' +- Ae2tdPwUPEZ6WA45qamy1G2fyeT4SKFrLWNDAhUup1CgrLw9B8pFbw39Gm6: '100000000000' +- Ae2tdPwUPEYwYiEZTKhCQa7U9KeRkK95toRBkR365WDFqoVZf1Ak19F52kV: '100000000000' +- Ae2tdPwUPEZNA4M3Mw3TFvQqWxet94LTrjbiFHH51jnU2ikycMmUKcqTPvD: '100000000000' +- Ae2tdPwUPEZH9yAjkpjaqCK7jNwPiKUdDN1rm9XmLWZ4QHa7M2sk8P2rer7: '100000000000' +- Ae2tdPwUPEZHvqGg2oN4QJ2zuqsbkkZnZ2Y2PwLHsW1yEukC9StikdRUAEY: '100000000000' +- Ae2tdPwUPEZGAenMEmMDzEbfDoTmPpcJnhAZu3LsQS5WeXpkx9V3F1hruuX: '100000000000' +- Ae2tdPwUPEZHsJt8TtbyoGQuxaMQzKrFJz1upBVHoGn6qy2f1KFtSoAFW1K: '100000000000' +- Ae2tdPwUPEZ2WgP6WUAHaXjuU4Mg5GourmRaviT7JdJKQmC7B18mdo9rvnk: '100000000000' +- Ae2tdPwUPEZHpAm3AZ9oqMjStD6me6nw6Bzs5fpA83f6yNnQYV7FY54k3fM: '100000000000' +- Ae2tdPwUPEZ91uU32wM6Qb7cxV8uU1Wsibfwn3WJBZaiWxYuLe6pTVi787w: '100000000000' +- Ae2tdPwUPEYw6waL6WVGsBTHU8DJCQt1KVbdaTDDpCeaGJ8X1Kguat1FrC7: '100000000000' +- Ae2tdPwUPEZMNHYd6486pwdYiyvHWxkvBtd5RMoUP9cG72N6TmDxmH7utFC: '100000000000' +- Ae2tdPwUPEZ4MAt66BNoieVMxpBsWY8GjGrvdGi1xPtzYfHfY8bzR1AQYQ4: '100000000000' +- Ae2tdPwUPEZGD7NjNauzvvf5VWu7X9KjsKP7iHWT4xYkgwCvjNienbFpR87: '100000000000' +- Ae2tdPwUPEZGdWobiLjyqTtvKJXEymuaygUfxb8ekACjf742UPxKMgw8J2Q: '100000000000' +- Ae2tdPwUPEZJAnKz2m7QeYWQZ3rq3VHwjnWW8cp277FQ1oWVM9oxaxf1Yer: '100000000000' +- Ae2tdPwUPEZ43Rseb8dzgxJ7o8BeJyFDKKVWupkSvwzLiMRbxnGbri7bBao: '100000000000' +- Ae2tdPwUPEZ81jqJDQ56PXGAvXj11C1AF6C54LsYHwq3X36x7rTxEUFt4ht: '100000000000' +- Ae2tdPwUPEZCBfkMi5X8bRV91RCKfJwM9EYWQ4eTUA9Wi2mtSBPCSQgDeJD: '100000000000' +- Ae2tdPwUPEZ7yyWmfooy6E87GZX3WXQoq4tFkgMTqQ4i8gHYvQQ66TWF8NJ: '100000000000' +- Ae2tdPwUPEZ4B3UUq52fMj5AEMpSiudYYvkYV9WEUfh56BHQRLqaEiHrZ3U: '100000000000' +- Ae2tdPwUPEZHPGatFrcenhvBrWzxGN9bz4xxfN2JZmtPJadXCRqmqiUGcM9: '100000000000' +- Ae2tdPwUPEZ8XJSS4wcJtWaEN1crSCx2NPcutwUDcQCQBZGH7Rn4ktWxogV: '100000000000' +- Ae2tdPwUPEZCt25tJ6xeeWJmaxrS198o3G2WCu59grjKMa6zzdST1Spgkmg: '100000000000' +- Ae2tdPwUPEZCzG5Bq9Mca99S2xC2AS3AKa2HYKe3zUfwisQaAywWKf39HVA: '100000000000' +- Ae2tdPwUPEZ5wgLfsuc9qbDsTRneU8miVKDd4VVnChYnc2PccQfwpMELSwt: '100000000000' +- Ae2tdPwUPEZ1RFG81KCTxgLFZJPxFxAgdcwfMQGEbektxusUp61XNEb9G8B: '100000000000' +- Ae2tdPwUPEZDbFkB7g1rDbWZE5F7PgJEzbj7J4F6XfEU1R9DKpiF9rmJCez: '100000000000' +- Ae2tdPwUPEZJMVJK9bENjToka83ioUyetLvNMfGXfmGuSaK17oJPtY19Hmj: '100000000000' +- Ae2tdPwUPEZEBNARZnMGANKpCUXrunwJQDd7fCkKfCwsAdRJd5TbeC5Hzfh: '100000000000' +- Ae2tdPwUPEYydLNMtNNeiLEFArMzbrfAhUEhms9TggfSX2HZpKvn19JpUWm: '100000000000' +- Ae2tdPwUPEZ4WFLyntPbTpk2fGRaV7ZXjVFH9Q2tQLgGLfC2biU5zks8DvM: '100000000000' +- Ae2tdPwUPEZESzAfNGmBhK7rHJd9ZcR4G1usLqT17vdfDdF2XCJCQzExPm6: '100000000000' +- Ae2tdPwUPEZCjNmQo2gvGWbdcFte7Msv8HU8B5B6MMbx5mczFzFq66ZdJQ5: '100000000000' +- Ae2tdPwUPEZ3Tc48SwqCSiUBBkcNaUXsbr3hSB2cTqrGGN1FL3pviv8TUCf: '100000000000' +- Ae2tdPwUPEZKJ2tuoz5hSe2varQ94jdW8RVZUyoqcminPkcDwRrFJYz9V9P: '100000000000' +- Ae2tdPwUPEZ4poJvNPT773s7SYuRRH9mWMDG4Eva7RWLxdq5uybgqNbGnoR: '100000000000' +- Ae2tdPwUPEZCy3jyej8FAyqAudArSGbd7o28kRdy5AspprdRM9ntwiTpwQP: '100000000000' +- Ae2tdPwUPEZ5s1VJbFsdnS5D9vA3VzPZDJxkdBC8472zHSguKAoLMntKzmY: '100000000000' +- Ae2tdPwUPEZ8jGNVJUZLwthZKtDvDbMhkp8o69yjbqUxk5NHCqHhjxRL9xT: '100000000000' +- Ae2tdPwUPEZ4dFtsNLvezT1rf7wF3Yq6zRshUWkU4pjvPtVCMR3HTLE7RjR: '100000000000' +- Ae2tdPwUPEZM38W7d5ZppbX8Zg3uEAzpVmY8PNdwXNzZw8rGhmyCrPRwXpb: '100000000000' +- Ae2tdPwUPEZDcy47uhHy56DtZ3RL1Gh9ykEzij4HkfN1nRNB5VFhx9huXdY: '100000000000' +- Ae2tdPwUPEZ89D2J23b7KePqnh5dXMdLgXc4LsYJBuXKQcncSWzzLHPfZgB: '100000000000' +- Ae2tdPwUPEZN6huac62PMqAsJfWLmBEAAKwKR7mGexMWUJrHm7c3hUHuQ4J: '100000000000' +- Ae2tdPwUPEZ5auFwdyGfBHvDSYXwdFDv93QdkQTNK13VRG83r4Rp62JbpHq: '100000000000' +- Ae2tdPwUPEZE2FfDA8RScRBthjRE1X111S1Loc46bsFSf4WwUg5AP8eig5n: '100000000000' +- Ae2tdPwUPEZG4X6p59Tc6bdWtF5KT8ZybAhM6KV9eJ7Q9576J47a6zjA6pC: '100000000000' +- Ae2tdPwUPEZBZMV1mMGXBAaLmkebkLsHyfsskUrSLVsyYV3J38sMHMP4CVG: '100000000000' +- Ae2tdPwUPEZFQ3KCXx1SPg28jaKU4VBLbf7MdXmPk4jGq7HBfLubrmPUikD: '100000000000' +- Ae2tdPwUPEYz8c2d1oAhwHsSjxjHahcQ6T6D4NHj3VoPH6AhVvBTKUcYZRW: '100000000000' +- Ae2tdPwUPEZ2YHh5cDQL4MBwk7761Lf3miKpNDSYqiEZkyxjH3ZQvEKeFP6: '100000000000' +- Ae2tdPwUPEZD9MjaLL4cKHYcCxrTgD717EW1pMMYt1wJoKHjg4W9T79y1pM: '100000000000' +- Ae2tdPwUPEZ78o5pKwU4zq7tGoPUrXhpLc5N6q4vf4xwLtbJV78XrXrrp7x: '100000000000' +- Ae2tdPwUPEYvyo6BtkHXyMHQW3mpbY5jw6adkRVuBEjdbQvPMwtqB5F6SyL: '100000000000' +- Ae2tdPwUPEZDTNbb7nwVyyKAeGZEPqKUTbzU5c6fo2M8KfqAqp22HBx4qJp: '100000000000' +- Ae2tdPwUPEZ2t5sdV6UwuUxvfLjF2jTCj6xsxmDa2rmVcJu2qDv91ZQoF1g: '100000000000' +- Ae2tdPwUPEZG4m83wkwfei4CRVuqHMAWPtLvF4pPzWrbnmdBPJQMBjZ6X2a: '100000000000' +- Ae2tdPwUPEZ9gqJdt4Smy3UZbbTaHbimnk5EmtQtyupLgoUeX6YH7oBvfnn: '100000000000' +- Ae2tdPwUPEZ7XhNKJ3Q5Wd6T7UGCoxjW8EQFJis2M6eturuJCssBhkDZump: '100000000000' +- Ae2tdPwUPEYyYS5rXxkssATS1UQATyhk3gPusGbm7fmh3R8uvVRyBRYgkrR: '100000000000' +- Ae2tdPwUPEZDCF1b2F5z5RkhQprm1HEsDrZ9gWXLEn5DYR6PAwxZ6qQihcR: '100000000000' +- Ae2tdPwUPEZLh7L5PNqNtZyC7kuevJRBdXRaboAwnVgo97zAhsMzcxHSDwf: '100000000000' +- Ae2tdPwUPEZLUkWS2gFqUq54iNoa2rAbPtjiRwRqKYvbrZtts3UzVV8zaM8: '100000000000' +- Ae2tdPwUPEZAmbnXWAAexP2P6d6FxJ1KHALKNkqgkP8KF2mY7Ry4TCwSEq8: '100000000000' +- Ae2tdPwUPEZHQ1bg4QNidpiGcZLUdaFcWGFpj1WBZ47gCsFPsSPHX7WzWXY: '100000000000' +- Ae2tdPwUPEZ3fzeis4aTbaekV2MF85C3tGMW2iMHeXDuXtJsrbir4t5Lwya: '100000000000' +- Ae2tdPwUPEZ3crEQ5hStZ6zEK6H3ejMWU8yP988JbiqgvgtvHqG8c9CYiL7: '100000000000' +- Ae2tdPwUPEZ3xg1CTyJe3viw8guBo4g8p6YbCi5fnStsZhKbrCnyk1hjfwp: '100000000000' +- Ae2tdPwUPEZNDT1HQrdfo7NVqkejhhv7f3NXYBY5yuGieB8K1HcEanCPFL2: '100000000000' +- Ae2tdPwUPEZ7zuDhuZfQuCJ59AvWEZQH6Q2tcYYkQuUUbt5RwLNqc3YCet3: '100000000000' +- Ae2tdPwUPEZMo5ExHFPhrAo5JNaA45hBtpfbw9uUFEsHcY5iQbL8S9CRUAg: '100000000000' +- Ae2tdPwUPEZ3FtUBTxnyucxs1uesPzD3tcGsPU1PdTvouTMXgLNn3BKjiL5: '100000000000' +- Ae2tdPwUPEYxE7cNbfJguDBGZ249MRzdmtHEmmyTkFzHsawtyJSkXjXNVW6: '100000000000' +- Ae2tdPwUPEZCqizdNW1izYYzuqRmCWLPrGwjXivpvpaY3yG2tdVN1iHTMFb: '100000000000' +- Ae2tdPwUPEZMGNUf9vyyB5tVZLXpHpw7f5fUnfWLMGyrfqSYyW6uArHbUVP: '100000000000' +- Ae2tdPwUPEYwuDDDQhgwbq5mZ338srdAWzSmHwwyqXF1tkqhZKLAxABBqTs: '100000000000' +- Ae2tdPwUPEZGAn3KG8aNRoTXUP9QCi4FeG5V9cRYYxTaWfm1vLMvWHF91EH: '100000000000' +- Ae2tdPwUPEZ1EzGZmZZvpu8mvshMcrJRACavoJQPihU47mH3kJSkzzmPgdo: '100000000000' +- Ae2tdPwUPEYwZaPBzd3NzofZ5xq9FLgWsAzGL8hmmgty3GLXkQtP4Wm5NmN: '100000000000' +- Ae2tdPwUPEZMRoAJXEWs6EYtQ2iPCArTRhsX7dLJrduYQUA4ao7m2TV77dg: '100000000000' +- Ae2tdPwUPEZBxWJFBYhVfwGzhsEVah3LFYe47HTYPDVToQFZXH1pfgVhLfu: '100000000000' +- Ae2tdPwUPEZ6mjX6ESZtXoV3HCbbwYgjTW5ZRGcMuZnTbxMnB3Z3RQ7CmFY: '100000000000' +- Ae2tdPwUPEZ2R2R2XkM6GVwPCmYSUBcuYmVpVHHd1AJiwrSAT8rpT3q3yzs: '100000000000' +- Ae2tdPwUPEZBMCP4GygT5jacFHctQ9QxnkRU7cs3TSyvM1G2X4guWCLM4Zs: '100000000000' +- Ae2tdPwUPEZLrzZdA2FFAMPrjTzh2BHCc6KEuEXuNwdKuQRtNEDWHzLRDT5: '100000000000' +- Ae2tdPwUPEZGGaCowLNQGE8NrV3bQbrSDbhfCrsmgEsYXiFA6sTKgy6n5EK: '100000000000' +- Ae2tdPwUPEZBqnXzZJAZfGEwpKsk4dezw79kuV66T1hLbymEVgou8tg1Wns: '100000000000' +- Ae2tdPwUPEZDTuVTxZHknpaGPRETKt35fmfu6NumLqmWZd3kiib48oFxRVU: '100000000000' +- Ae2tdPwUPEZKUdeNDnNskBfNrr7GK7FNdYm4DVTXiNdBXQYBfK1ZfrGj7vC: '100000000000' +- Ae2tdPwUPEZ2D3XWnHnwaQ8WXFvASyS9zUWD5E6EF36GrxoBqrFARDeK13m: '100000000000' +- Ae2tdPwUPEZ1X4fckx4MozBFaqpsFuE5fWBqhQw9UANFaum8sTYEhe8pYDm: '100000000000' +- Ae2tdPwUPEYw5nyCBLuGSWHW4tRRGEuKDjXYwCxJ8CDoPwu7HzbHCZPJAn4: '100000000000' +- Ae2tdPwUPEZ7fth7NCF5U3fMAooFqK3wuSzXkb7FEn7sRFUbNcUzxmPZzXe: '100000000000' +- Ae2tdPwUPEZKBx3FSL1okH9eQyLsjg6yF48jp2CpfkrfLtoaxtdfetuph6F: '100000000000' +- Ae2tdPwUPEYya56MhSDa1SxLX1kyqjCGWKCY3ybrKWVpK6GQPNr9TsRfNyz: '100000000000' +- Ae2tdPwUPEYwK8GArkU3sd1FrXsTJSj77QqCwM57p9ciGpEvaYZGghegAjM: '100000000000' +- Ae2tdPwUPEZAR1XByfgkgDf1iv2GHeUH4XVfK9vs93rxkHnBGE4Ff2QAVSM: '100000000000' +- Ae2tdPwUPEZDpGznRRpVoTiNsqjRXqBXS6tddPSnM8ikJb42UCeDegJfsqg: '100000000000' +- Ae2tdPwUPEZJJ4d9vocjJCcnusesxu7mxzqWtbGZQDFA3SL5GN3y4UujQN5: '100000000000' +- Ae2tdPwUPEZ3jwQJ7nxhWU6UwzvikdcQpkt5dYrCePpBa613miSf9JYL8Jd: '100000000000' +- Ae2tdPwUPEYxrnDxc2fe7v2xfhue6BREW8ysQpP7bjePjuJccakNWsxCz6B: '100000000000' +- Ae2tdPwUPEZMMuLmLFweVGvQoEs76RCKVVD4TdUooeUDQsdQpnTpZnpxCDp: '100000000000' +- Ae2tdPwUPEZ13crmX7Ea1u2WMrBYHLjKC4345L76NNWcKPqqfPCNpkPUYDy: '100000000000' +- Ae2tdPwUPEZ25DQAqG8ECh1PCF4k8GcxAHtyvvd3gQZav2aWzgytoHq9U4w: '100000000000' +- Ae2tdPwUPEZ46w2tq2T9VgfwNLSKFn4MjDvGMcHMY9tBERRaMEcFvT6Gwuz: '100000000000' +- Ae2tdPwUPEZGJBEPxNgyWLjx5z6nm8AyFJApGbCYgeC7UkVuTJ7aHarq11K: '100000000000' +- Ae2tdPwUPEYyFfHi25EMFC3QaR2KLEQVfN1Q4PHpspr4zy1P54MwKzCzCoE: '100000000000' +- Ae2tdPwUPEZGE3keyCPnPp3kiGLHbArJPrw29tbtAxBDprGrjPwB689dwqV: '100000000000' +- Ae2tdPwUPEZ4kwuedCjS51N8DU9t2FdxHtNMB5mZbFwHDyic61H8ADLFRpi: '100000000000' +- Ae2tdPwUPEZFPjnKmFhRUCBa12YwLMgBbfrav7iqqNa2iRFSPKJuRU89126: '100000000000' +- Ae2tdPwUPEZ46DC1J25Ydqvw4vv2QfsyQ3YXXJLuEFxxzYz1RohkwdPVXXe: '100000000000' +- Ae2tdPwUPEZ3QKC5AKpuPbDVBAtXLYtmJNAoKqzk21zysmVK2j2XQTktCiM: '100000000000' +- Ae2tdPwUPEZFKv6KXgaCiA1zXJoDs28njnesWD1cupFYQMJsymbqQht5UVC: '100000000000' +- Ae2tdPwUPEZ56raE14SucxceZnBB5v4JatYKzK9UFnCRU8no5wBo3X6SD5x: '100000000000' +- Ae2tdPwUPEZKDBqEfrKvRx6KjdKEjhsw1Rm9eBGNtEAaar66CiV1S55vwXo: '100000000000' +- Ae2tdPwUPEZ7tG1hd2YGUjJYqTTZytcbxGDhYyQBQK4E9isJ9NAuEFx933D: '100000000000' +- Ae2tdPwUPEYxpuYgmbEdtqdLxpf9bVc2rG8VTLSRmiaBF1pWmrZKbP4qKGQ: '100000000000' +- Ae2tdPwUPEYy13QE3a2DGcJaeibwXy6jGDM3vvnaXhLGBV4sduCVedjRmdA: '100000000000' +- Ae2tdPwUPEZBFomEuQ9RwkjiUMbvVPysFqTowS9ZuGKfgqpDRm2Lbg9fWzW: '100000000000' +- Ae2tdPwUPEZ1DzPArFeppQ8mjgV61m4oNupUf6Y95yquUMhZ1DZswRUTF2e: '100000000000' +- Ae2tdPwUPEZ88V4RbwFa67PDu31x4LMqvvv6qpRCcoZhQa1jkuok5egBto7: '100000000000' +- Ae2tdPwUPEZHwPUk5g4HFqM2qFAvqzwGyH8U9QTZkZyAnD6geKqZTqbqiTy: '100000000000' +- Ae2tdPwUPEZ3SP2NhwRnqkoYZY9t8icFkKj7h16MEnTpa7fTnVn6SfdCPeQ: '100000000000' +- Ae2tdPwUPEZ6NbyM3PbPnGx7Z3do9QjcmLgbL15Gc6Z2TGt3VLLuiyp3Smu: '100000000000' +- Ae2tdPwUPEZ4niF6Q2HvuCLvoNxgUVzzqi161Lbx4MhBLi6UJR66YyUunEV: '100000000000' +- Ae2tdPwUPEZ3ern826FfTxiPTDVz7oXzug1MtoS9bqrA4xar8iDUy4igqVM: '100000000000' +- Ae2tdPwUPEZBiLGAPdXDnwfdsxVudSEUHVVKWz8uCJyPFQjT5aW5WxwBTe8: '100000000000' +- Ae2tdPwUPEZ4nbpbFDmbocwfykydyvtJyEPETxQ3CUHuarHjZWSEoQuEHoa: '100000000000' +- Ae2tdPwUPEZ89jgUR3c8XuLNii9QN5nb4LUQ7HC9sVYUNrBEJp4raRtp2VC: '100000000000' +- Ae2tdPwUPEYvyPh4q8suUZyLrLHJabDi8Hq4kkC3KmCDTKdN2vtrj4H73sZ: '100000000000' +- Ae2tdPwUPEZFCxJsCyXFfP6cPgKUz8b6LFq6UewJCcVAtrjq6e4NP3pnVoA: '100000000000' +- Ae2tdPwUPEZ8EfXXu23343aKDgcxpP8oZA3zkRJxkZRRvr2yKoce8QtgcEg: '100000000000' +- Ae2tdPwUPEZChWR9u5zN3NcR4exqgjsMVPDfbbu5zvHjCd22kkuaN2aw8gk: '100000000000' +- Ae2tdPwUPEZF5H2V6svN6io75oeiFucxLYUdQhpNDuEcg5vtXTES2QSurpQ: '100000000000' +- Ae2tdPwUPEZ31KkH1KTwM2PzncJW43UB8MGYD8zyNsiRDo2q5AZzzjYSRiC: '100000000000' +- Ae2tdPwUPEZERL2eCLpbAFmA4dkvpAAkBBbmDa3nJeBgiJTXtJRPonJSFuh: '100000000000' +- Ae2tdPwUPEZNK4iVzTjkogxZcJdSYvHt56xyKheAn1mv7Lzs8ZwhkytprPC: '100000000000' +- Ae2tdPwUPEZD9Zu6swkcMigHxi7GiQ17qcyDa777jUwBbtXeedx4yGg6hn7: '100000000000' +- Ae2tdPwUPEZN9jV1D2fBMoFs8DiWcocwDcwfzk4n3KSgGQMWBPVHLMzrdib: '100000000000' +- Ae2tdPwUPEZ8kLAE9bLNTVsCVUJdC9Xfm2o3dum6WCECfeTcoasLwyEM3my: '100000000000' +- Ae2tdPwUPEZ7ceYmnUBVGoDrHV1pNs6YRgkYzFQUMQVJcUGkeBG5hMkBUF5: '100000000000' +- Ae2tdPwUPEZ7UKYc4F6btGCg6h7tNTRua8c74AQT5oLejMHftkVonCqmxtF: '100000000000' +- Ae2tdPwUPEZHpziVD7ksyQaQ4dtKGkB8NyGW8kZRihZt8sVHZHR9gtTzUoH: '100000000000' +- Ae2tdPwUPEZFZ4UnjdbKuYqjoXUZTYJ7kJpHvyEkXj6Q2WLQdfb2QmmcPV5: '100000000000' +- Ae2tdPwUPEZ1Cbg2ym2YcF84iKxdfxrTtUTbep3r6gc71NQbbuxShDgXdM6: '100000000000' +- Ae2tdPwUPEZ59CyAoFEbJJMR8KMFrfVnnb8Dp8qp8PSAwf1Q6itoFpSvNya: '100000000000' +- Ae2tdPwUPEZ8Uv8owFy2dnacZ3Wsbd8KdpBixvoUDm7LRaNyXuqF2ZUYvS6: '100000000000' +- Ae2tdPwUPEZ7jmwUBsotNoVeV6AUNhmhYKWDRhaUk5QPf9XBuFNaDBuH8JS: '100000000000' +- Ae2tdPwUPEYyBB7uSUatNL7EG644onyGBEyNGvxkjoJKSyDvQ3Ew9WsFfhn: '100000000000' +- Ae2tdPwUPEZ6SYoCxNgcg8ztAAsXB4bzGifGzTSFNrS9YuCTWZi3LgCkrqz: '100000000000' +- Ae2tdPwUPEZL4kbxsCLVRnvE2wL8aQWEk5k8YQKhxqWPzeYUq5fQ3SFNBfR: '100000000000' +- Ae2tdPwUPEYyu4WTaBS9bYw2P4bB9bFTwK217FyYnFPTWuxEgSJLzWCb9X1: '100000000000' +- Ae2tdPwUPEZ9147MgzAgnRvUo4gMbZyxBpSdSQZTaHKESpQhHTm7sEicRGE: '100000000000' +- Ae2tdPwUPEZ53ytiak4fHVCQgUYg6rVG2buWmBFb5mBDsFtXRN5MremGsBC: '100000000000' +- Ae2tdPwUPEZEuNVUBkf4WGxHPuQ9cQ1GfWmLg2o1TCWj35hWqqpcEapXoS2: '100000000000' +- Ae2tdPwUPEYvxXFR5ScY6J35xH9ZK6dUzUHpKo7aF6usmAjJKFgjAMUZSXM: '100000000000' +- Ae2tdPwUPEYzuELo8zE6C1tKWv53KsAehShc9pbBMTwjpKyTSNbkBXDiJSF: '100000000000' +- Ae2tdPwUPEZEkp6nKiCC7ha4eAS7KdsEmVtLPnKg1mrUxcBWwBd1ksKvbSV: '100000000000' +- Ae2tdPwUPEZ5rnspVLgL9fwex7aY99MXGgxUn5PTez4kqY4QmY3oqxtvQqB: '100000000000' +- Ae2tdPwUPEZAKsM6crrriAGf9dhjakPYsopJz2sVu1FHoCCRDr7QeJnj1zK: '100000000000' +- Ae2tdPwUPEZ5VNAEm71feVGjcYWdekv376syPodd7934BgB8ccpmYvNuiFo: '100000000000' +- Ae2tdPwUPEYw5eBFkSx1mUp3nkA7MuAXGw8yFzFtpPm9TZNHdCbJQo8KsF8: '100000000000' +- Ae2tdPwUPEZ5z22Z4uCXc64osax6ENEnhbYv7P75GyHD43mnumUeReiJbFK: '100000000000' +- Ae2tdPwUPEZ43i4wkWjnvsQZvT5ammnuqFyo3q38My3vrqRvRNYTF1S8u5Q: '100000000000' +- Ae2tdPwUPEZC37NZXejuUa2xbWRz43WZrsJaMJEVgnTsojG5S4gvyPEW2S2: '100000000000' +- Ae2tdPwUPEYxuAtDEJj4UsYeMYnvVgD6b3CbKsaz4wEwcm5P7742HcCq2WR: '100000000000' +- Ae2tdPwUPEZDVHSWfxyyUHEeZ1iL3Ed4KXGqfqULbvQXnY5sQFfhdjjhkrB: '100000000000' +- Ae2tdPwUPEYzAca7B5LaSbgEnWieSgzYntSqKnbcaEsE6t63rxj5fAXteY4: '100000000000' +- Ae2tdPwUPEZG7UEhBtmqL1ky7DusRHAFkjHfnjvuCQLQKr2NFz32EGgfVfU: '100000000000' +- Ae2tdPwUPEZCNrHcAXxQbMedZ7cesYVXeitW6PMvDMytohPqxgAyvYkd1aB: '100000000000' +- Ae2tdPwUPEZANcctpoj9vQg5r5zuoCfC4Za9o4TX2jHm3fqqQqqM493iJ2u: '100000000000' +- Ae2tdPwUPEZHNZZfmfiwou5xEnajYcNYs1cfGtTUPaYnWeU3iQbbBcEAPCy: '100000000000' +- Ae2tdPwUPEYvy6p4rzW5jdWJhsWB67D4JLTtgx1zNjZHLrGxM6V2sxuTGCH: '100000000000' +- Ae2tdPwUPEZMvLqcUAwJyHvjC12j5iXQXG3qTxyNY2HMy7Nrk3KkQAVsiQn: '100000000000' +- Ae2tdPwUPEZEZCBRnYgMXHijysd1QuHGifD8WWHWZWK5G8pZVXbhpwgzDAV: '100000000000' +- Ae2tdPwUPEZ2zmS7RFJLV97JrL1CZkwRBp4nkQNS6emHwuUMrieG29U6RUX: '100000000000' +- Ae2tdPwUPEZErUVUMXnChqoeHRNmTkrypXFXHmzNPxJ2VDxmEyVRv5x8Nsf: '100000000000' +- Ae2tdPwUPEZ8ebtP5yLvnvz9QpnU9MdzbbLMVdkEU7jg2nNkJPBXLqAFwMT: '100000000000' +- Ae2tdPwUPEZE54GTpXRZPjty6x6fZccgy94tiyEXgRqzmSsdnrnhLhUwGrE: '100000000000' +- Ae2tdPwUPEZJ74CyQxBmJk6Sg1nbdLYhFWeAdNQ9xpyn5Q45J9PE9Jxx92u: '100000000000' +- Ae2tdPwUPEZ3vixYtx92ZQbJeuaJ9kKoXViMP3StyAv1DrNDV5erk4w4Tx8: '100000000000' +- Ae2tdPwUPEZ5f31q9oPtNSXRFvF84eSiU3xjJY8SnopBV6TNfmYRoMqFZp2: '100000000000' +- Ae2tdPwUPEZMHzvJz4bFYURDTG8G9zFgjcBHFUDyjZa5Q2etdrjd3qWxDey: '100000000000' +- Ae2tdPwUPEZHRASZgqVnWSqKxavKfqc192Wn3Wy9LX565qvhFvaAgqtuBGF: '100000000000' +- Ae2tdPwUPEZ88tqAzyv1mr7g4Aozq1oxS53Pxjm46Hy9BYETB3iGYTXv1a2: '100000000000' +- Ae2tdPwUPEZKMQuZZUfTzbgZcUBW8JA5AVC5Fu7mKDTghuwNPHPc4D3aCDx: '100000000000' +- Ae2tdPwUPEZEENhfCDUtvRrDrx7PsQAuvrf7PcZ7XJ8U7xgZkyzAW1Vaazx: '100000000000' +- Ae2tdPwUPEZNAqKk6PRS6gpzGPwXGmxdWCuohu7Kjf6VYDHMz2XSgb99yEA: '100000000000' +- Ae2tdPwUPEZDgm4ZoU2uRtHaHik2V3KmwsgPSbyeMvF23a9VW7M3G5bq31P: '100000000000' +- Ae2tdPwUPEZL6LYQ7MP9ERqHMyUUd1PkTRwCjAwfAcq9D4rPN1T6Qi2A6f2: '100000000000' +- Ae2tdPwUPEZDgPg9uyqoF8nqPQLvqGGVxLLKfCgtm9njuwAZJRMiAjg13DU: '100000000000' +- Ae2tdPwUPEZEeqihENetKejKQ6HRbwhqUg9VSSSqJdkdzhMxnjLSDQMksMR: '100000000000' +- Ae2tdPwUPEYyo3egDtEnk8Wb6Z74mLFjZJV5jZx2JkkNsGq5urzivHzQkGE: '100000000000' +- Ae2tdPwUPEZ29MxnpS1cwy8BUdGztoLGwQcfofBHPs6x6KAL1ZtbigR1p6x: '100000000000' +- Ae2tdPwUPEZJhTW4ymcMTedrjGqajjT4MkPBhwL2vaUWvJLv57G5HjvPYRH: '100000000000' +- Ae2tdPwUPEZBHMB7jsNaA85E3dcmheVtZmzbtZj5CPZhaBHNTYT5oADiiQi: '100000000000' +- Ae2tdPwUPEZG2sLRZiWWxCqwNMqTVjYTDyMfv4S251EqnKLDHoosvqnH5fC: '100000000000' +- Ae2tdPwUPEZFoJoe3cAowR8awBiTgpidKSM7jq17bbdCRmKRoH4xoaNCa1v: '100000000000' +- Ae2tdPwUPEZ5x41wUp9fvvGKee93aCVoZbzy7du2JAtunkCBWpX4y5c6oyt: '100000000000' +- Ae2tdPwUPEZELtacz6AfGpR6ksGtUUMb6FopGupMbyEWKm5EsFtvzkFUsTu: '100000000000' +- Ae2tdPwUPEZ794iXyVB54CHdH9c7V9y4hsCDwBh8YESk85XK2EGgXSpEME1: '100000000000' +- Ae2tdPwUPEZ5tQPRd1abuUQHMqwPMyUUN7trD6QCcjm18pQNRUwiNSkGQh7: '100000000000' +- Ae2tdPwUPEYzbHgN93mBt5MapP51HKT1Wg1qD8cVWw36A1GZkZ1VeEg9xm8: '100000000000' +- Ae2tdPwUPEYyyQ7Jfj1K1MJQr18E7Xpfwq56eg6BqcAopK19c5633jyhe2h: '100000000000' +- Ae2tdPwUPEZ5rUoM2NySqyVKqYovHPmu8qFWBKsfAxABwgTVKFPsvZTGkiB: '100000000000' +- Ae2tdPwUPEYxFSD2BcVNLshc5ma7nvSYkXW9fy7UftmH7kMRjsRNYNsgTnx: '100000000000' +- Ae2tdPwUPEZJFag3c9i2Q5diXV7ddP1uyqTK2D8b39SBkjnfksyy6kK6W1U: '100000000000' +- Ae2tdPwUPEZCFCLevrxUrMHD5ki1zPwW49eBPQHnnt9MUbgyTap3kaXpU8U: '100000000000' +- Ae2tdPwUPEZ5PS2jeYyER5CmUMdGVMUtNJ5yQc8xYdoswSznM7QWURMVXo6: '100000000000' +- Ae2tdPwUPEZ1wQ8iC3hGspf15DN3za3z4ou4Je8qFt9GgeRjFjaErNxHdeE: '100000000000' +- Ae2tdPwUPEZD4Yv2j365jRdvj2viVYG3mEqpr4aHPYsAwC5fMtFAGasHCVH: '100000000000' +- Ae2tdPwUPEZBoZugiAfSpx1nckzEAsguJq5kENa3wAjLTFaif4qTRAykESa: '100000000000' +- Ae2tdPwUPEZ4WSPCCYRV59emZyuLrXUDQpq8j2fa7LUJN4PZkxS6okF5Bi5: '100000000000' +- Ae2tdPwUPEZKyvDUrBcPvh89cYTs1urkSqb9NwGtdUYjSqnpLCKrMjuHiZJ: '100000000000' +- Ae2tdPwUPEZAzjyZC75HHhkTq7nDxTaHxqc9GqeWXS1yxzuLNBA1xKexr8h: '100000000000' +- Ae2tdPwUPEZ2go5PX9rrC46yesPC6wQDAMEBbPmuNNEnXa6pF4GYyinPGRg: '100000000000' +- Ae2tdPwUPEZJqStRx8pyVhW2FnfmAU7rh5xZZm7oiXUJmAnMg8mLFrnMn68: '100000000000' +- Ae2tdPwUPEYyt79Lo85dSmBpPhNNDZWn3fnuUjAX4UUfXNQ2X1LnSXUdQPj: '100000000000' +- Ae2tdPwUPEZKZGCFao6ZHS7Ast5v9T8K1JWv7wFaZmQiFNU36Fs7Rcq54FH: '100000000000' +- Ae2tdPwUPEZ4etrSY1cxdA9q5uHzSVwbvD8ashufPcbkmRgpJXVCzv1si1M: '100000000000' +- Ae2tdPwUPEZJpa28YX5BpywUkJ5mcNq9Xx1jy2SNwhkgE6NQih25Xpx2GUC: '100000000000' +- Ae2tdPwUPEZJCY8nnhzhE63MmrnwdKVrwAieutUHojxz68dQVtVAFpy7GQZ: '100000000000' +- Ae2tdPwUPEZ44otc4nD544HLERbf8Du7RRD2sP4276kSpzYTp6GRV1RTc7y: '100000000000' +- Ae2tdPwUPEZ6aDQ9AUMt73sAEEucThgCs9vxTGXE9LH2byoacgxLZWtPm3z: '100000000000' +- Ae2tdPwUPEZFrAuBp1kVTKBJvZUa7iYATh7PjuFFVKb9AEAFPmRvf57fLRu: '100000000000' +- Ae2tdPwUPEZFXCW4QqiMUmo3UqKcyZ328NjsnbXZXq7yp8NwTbdDDLhQmSB: '100000000000' +- Ae2tdPwUPEZ8U9MCjDkTeq2tct17YXVn7eixE7NkR35afqbvJsbYexk74RK: '100000000000' +- Ae2tdPwUPEZ1R7vkdmpaEzfJf64X2tBm98eZFy2zHvwwm5ZdyNVHfCds4v9: '100000000000' +- Ae2tdPwUPEZJnA9yKBNXnHC7FfTA9bPRTRf3zNNPJPpp7DS2N2jckscmr8k: '100000000000' +- Ae2tdPwUPEZGWeABA6jTneu7G2LmuAMobUanuowaCaEuHnmWZRPEGhpqNbL: '100000000000' +- Ae2tdPwUPEZK2nm3QLMmZ9CCkCYMMpsZmDtfhwyKz7ov3FKmgYvZDksU1LB: '100000000000' +- Ae2tdPwUPEZHKJNysj3g43iACQHjyaBsgDGYkHKKwJWqLKMoLJGrPkWAxYy: '100000000000' +- Ae2tdPwUPEZB4GDYmNfAEAc9iGMM8CVigVRWvc4Agiya2taFpLbhAbNPhnG: '100000000000' +- Ae2tdPwUPEYvqJSmg7PFGck66m4RrmVikeKMoQUietuHDMGTAFoCLz5rHjS: '100000000000' +- Ae2tdPwUPEZDwNzwhb2V8irmSMNsAJ2FkjJP5xmsHXqBv19dQKWHcoRZngR: '100000000000' +- Ae2tdPwUPEZ5cYocyXpEytvbdKmdDSv3g27UfzR5EudJH2AxSz8spDPzRvh: '100000000000' +- Ae2tdPwUPEYvov4qsXNuDJiP53YBvbqwQcoFrUWkDM7PzxC9GyEVGB8ZPyr: '100000000000' +- Ae2tdPwUPEYymTKtPU4mCRhqxDksnd33qTiWsFVtoyX1XsGkWXXombKHYsE: '100000000000' +- Ae2tdPwUPEZCAVTJib2PNSNDqxB43GzCafDxEELBYh1ffhRq8wn3k5CR38D: '100000000000' +- Ae2tdPwUPEZ2ter2zfgPbMPJHGcqmhgpYM3ucsRmxtCuE4HSkDnNkd9Hpaa: '100000000000' +- Ae2tdPwUPEZ9zxPjYDbLPYmf6vRuj77rNSH4nzsMNuAx8HVcxJEQPGmxJrW: '100000000000' +- Ae2tdPwUPEZF23c58GHUhNy5wDpGkTU9pzdt6q9d3aoJFPUtx7uXjvdmbWV: '100000000000' +- Ae2tdPwUPEZDJyjtvbY8XB1C4ho1tz4Hz251oHiu9e9Hwwc2pJa28fB5gvq: '100000000000' +- Ae2tdPwUPEZHCZ9Wavb8xPmqtkXF21a77aFk1yx3oDKRVsFL4okyUgXMEmp: '100000000000' +- Ae2tdPwUPEYy4NZWXVkGekFyAE1QVBeHEx65Lwu6JqqDCe67t7MyGp8HwAE: '100000000000' +- Ae2tdPwUPEZ58HopWJ1ybMXnZ3mnc6qMwNBBSyvLXzspad5RBuCxVZXc6um: '100000000000' +- Ae2tdPwUPEZ7d9t5WFRsyusjcKNokWE64jG8ZbGtUCXcBars5RMWj4Z7HDH: '100000000000' +- Ae2tdPwUPEZ1RzdYk3dk5PYw5aQrUkTatFZ5ecUMWK4UFAu1RgcybqA1poE: '100000000000' +- Ae2tdPwUPEZ6nPGLRhSphdG9WnfLF7ZDia6geKwbrrq16bi3KnmEgyyGp6j: '100000000000' +- Ae2tdPwUPEZMyVN1HGvByrgGjCm14HJ8RZnBQSMt997cd7ZPJWXFykbpQwG: '100000000000' +- Ae2tdPwUPEZFnSGD5Ry4TLVWYS5vSJ24QRFKNmTJMc1hhwg7oaX2j4hYci9: '100000000000' +- Ae2tdPwUPEZAkVTJZkLNXmcx2A4hnxkDRA8r88MTsm2osWRsse2fxj8PKYr: '100000000000' +- Ae2tdPwUPEZ817Wd8eVcmwx1fDBCJUgAWphKhTvUYvvUNHaaZRdFRn1xtAW: '100000000000' +- Ae2tdPwUPEYyRtGppkaT38My6up9qwxNVaBKWvaYkSAmHhZqdL8iQgWQw22: '100000000000' +- Ae2tdPwUPEZCepQh6o2eKjwwskrJ7u7kTCHUfWWYpLa1shRmqdPUGaT4L2o: '100000000000' +- Ae2tdPwUPEZA9rTKkP3ZjJ2fBczHWQaFiSPsWXpd8Zhx5L44PqjKGAov8oe: '100000000000' +- Ae2tdPwUPEZ9ETnXzdeVSgM932qPta38NRuTd4LHSvuNUKdHdjrdVkQ69VV: '100000000000' +- Ae2tdPwUPEYzn3EjuGqbinDNnpXHktpctCnrjqxNuisG2DE36xHSTs3eRe1: '100000000000' +- Ae2tdPwUPEZ1hgMqHp16Lcek2Yya7mtKHPY9ERgcmpNfw41SXM2E6zyrmWi: '100000000000' +- Ae2tdPwUPEZ5V7V33SPoTQdcLtpPuhesMZJWskty1THSAaC6H6cDYoe8dDy: '100000000000' +- Ae2tdPwUPEZ8Dk5wCfxAqfDqAE6VBriDfnxNhpZFTPAGeJSnca3Vaj2mK8R: '100000000000' +- Ae2tdPwUPEZ4LpZe3THwFh3WC1L4rCqBNyDjAxpnHxSneoPWxL9NdFqAGuS: '100000000000' +- Ae2tdPwUPEZAkdytYKhgzG8P6rVhZWuoD6V4DBcvBfTLQx9yZHgsNFcjZCn: '100000000000' +- Ae2tdPwUPEZ1ACQBxLAAK3HPxSbmnpGsSpLbwbCNTAqrDFu8y12pgnSHKjV: '100000000000' +- Ae2tdPwUPEZEuod1rhr7TU2f39maXDBtbJWVFpm84cWEWdnHnLKvL5ikGeg: '100000000000' +- Ae2tdPwUPEZ8pt7Pv1KYJDGd12G5tW6KDNS4Nfyb2SXLXBkySGctTPYiCpJ: '100000000000' +- Ae2tdPwUPEZJsQVWL7AUT1R4UWKVWgU83Ne3UigKANdLeNGimcu5AhWPFhj: '100000000000' +- Ae2tdPwUPEZ6mLhxJBF4xvJs4Nn1mCrGpESnuWJNvLgB9WNjpF82nbMKRjw: '100000000000' +- Ae2tdPwUPEZDnbB5QhjKuDLJtSLpYijfCQRKs8AVNZq99a8sHDjXRT8oi9Q: '100000000000' +- Ae2tdPwUPEZCW5AZDx9sK2irEtWRYybEmPSTgQVMZAwKhLjcrzfiiqyZzpM: '100000000000' +- Ae2tdPwUPEZD4nhxDVYSDsQEFf32weouEtvagMWALs7NQLQFHmZir8ULsUS: '100000000000' +- Ae2tdPwUPEZ8oSsuTZYvWJcJVUi5ZYdouT7f5PF3QVKZGErs9Kxvu6nakLc: '100000000000' +- Ae2tdPwUPEZBx5NBU4Ja4C69DQzeVMaEwW8pb4VqxQPjatt9tTek5DP71n1: '100000000000' +- Ae2tdPwUPEZ2M3nQK3dEcRjG3Np9CTCKxEkXhmt4wVcsytuLU1qHZFY6D9J: '100000000000' +- Ae2tdPwUPEZ9GD9AtEtJffpuY1V7MtuZ19VNvv4sB3vWPsc8QaBBDupfvRX: '100000000000' +- Ae2tdPwUPEYz6kHBDcFujUxZJtRGk31hjfLrUQKG8qhkRX9KG1rUfWWdGre: '100000000000' +- Ae2tdPwUPEZ3gQVUhBC2tWpVARdSBWshdMACLsketBVHAMQM9SJwupY7tKK: '100000000000' +- Ae2tdPwUPEZKk1ay1FVHXrq7TikPUXaN57ugqHG7JqKtipoaoopbx3CpWNt: '100000000000' +- Ae2tdPwUPEYzxV6jJo37mTrr1dTpahzqM8FSmLkYgtLinjzXicwDmEt65Pf: '100000000000' +- Ae2tdPwUPEZELGoNGmUr1QAbNoaaQpuiAFdLR2YVfAKZZQCsXkypGMvccEi: '100000000000' +- Ae2tdPwUPEZAH5Vh4T4D4aHeBWBuFTzccoiQkN56RPDkCWo3kNimqJPVvpW: '100000000000' +- Ae2tdPwUPEYx8L4VPbNQPpUkBhtgLK6HTe5Bis2t5s3na2y657ghUL3Coo4: '100000000000' +- Ae2tdPwUPEYxgiCkHM4vvR6ZgExWi9x1icupe7k35UFg1mPrpNg2iQPQJz3: '100000000000' +- Ae2tdPwUPEZGo8rprmThXMacgbZWv7yE6oZFqqTdh5hQVdstXwLsoPgH4EZ: '100000000000' +- Ae2tdPwUPEZKUZRDxVXaiKWHdUPXdoJt1EQR7yAEmGu3t1kFdSRLdwfXka5: '100000000000' +- Ae2tdPwUPEZ8nXHubodagrQmZGQsggbxoyhJpZPsBGsYkGUmgX5tgVD2HW8: '100000000000' +- Ae2tdPwUPEZA8uRLUY1bcFKu8zRLGBPnUJk1pMzyLtMGXKx5L6bVYGGYejY: '100000000000' +- Ae2tdPwUPEZMgsg38BfjUp1YiDKjAyyF8oMMCBVjjHppAGEj4J1geA9ryAs: '100000000000' +- Ae2tdPwUPEZFzgVJLcaLUkc8WNfattXi4tLjdvp8Z2SvZ9S9WnnvjzytQNK: '100000000000' +- Ae2tdPwUPEZ3bDM6ijEE16WjPNoGSVKQdR5oNMVzp62ihKfjEG5xDonBPPP: '100000000000' +- Ae2tdPwUPEYxj92Zq5nqKP6GskZRKbdsmYN6fSER7CZLZZah8PtmghVv8Px: '100000000000' +- Ae2tdPwUPEZCkR2LLixyVmK89XCoc9cJ6pXsbSRgG6JkkfiswAYRhdhLFuR: '100000000000' +- Ae2tdPwUPEZ4dbdebXv7Y3eDm6gJs6ZXDTfwUH3rSLwGrAxwPGWvdXxrR4y: '100000000000' +- Ae2tdPwUPEZMu4iQuM5WN4NTbv6stfwVN7KjQTN4o8DJZA8k34spdD5n2hX: '100000000000' +- Ae2tdPwUPEZ8u9QL3YyXDsTAky2bFZCz997sbUrJCdGzmDaQtWxd5oWCHv2: '100000000000' +- Ae2tdPwUPEYyNoLn4LdkJn4bqTJrd883jWa6rweFgMShbRJKeFD3N53emj8: '100000000000' +- Ae2tdPwUPEZ4fszZ9QhnP1CEy17FsXA7dWkdvinxWQA97p6mZ1ewzQrYiqJ: '100000000000' +- Ae2tdPwUPEZ1vTCrJQYAemoXwezted46NstSMjYWKDyFhDqF7H4qMMuvgvd: '100000000000' +- Ae2tdPwUPEZ5hfpyogjLRfWUUsotoUqkrDFNGwgbYBH7hpkuJbVQjZySEwU: '100000000000' +- Ae2tdPwUPEZHGy82xAgyoEYc37DyqkLe7pWzEx2MdxCEwXP2TwU3hG57bWm: '100000000000' +- Ae2tdPwUPEZ7VEDceyz99aX7CuRs1LhC9dA1NnDz844qDd5DekVZLDSfZux: '100000000000' +- Ae2tdPwUPEZGrTVGHo6joxndf73xzfGgwh6DYH97sNyXsLsJmNtHW6QNFiQ: '100000000000' +- Ae2tdPwUPEYwXoqGSP5noGZwQqtxreDEMcGCvpTLvRWpAjTLZBkyKoKJAeu: '100000000000' +- Ae2tdPwUPEZH6M29UnLYQJCsj6DaCAY87RzyCXUGQeFkbVU9QMJDgzg2xXT: '100000000000' +- Ae2tdPwUPEYzKg8YnsHScSB2nV9Y1t1bMdLWhegthzD8XEPm36uVmXSLngE: '100000000000' +- Ae2tdPwUPEZApTr5DTA6WZN88oo9cXBYQPS5Yv7gqqXJmkaeFYs6xrFNjtP: '100000000000' +- Ae2tdPwUPEZ68xMJMNmR9NS564rWUV9eEUdyTfxCM1SSeBhhNLRgj1ZUzLf: '100000000000' +- Ae2tdPwUPEZDvQApaEytrGqMme2UTU1YehaVgY4snHJEHEryz9R6wLece4S: '100000000000' +- Ae2tdPwUPEZ1y7VZAvt9LxWimoUVM6Bk3GbbXE3AfhAVHemAEQfZejZxd8k: '100000000000' +- Ae2tdPwUPEZ6wXNEinkg3ojy8F4PbS1pjZwkqd3ewPpB21tJdeTb71uCDF9: '100000000000' +- Ae2tdPwUPEZGxstKHepJQwo3SSkHsZwXEdPnNLgd3rd2DHciuP8qvuNJMiU: '100000000000' +- Ae2tdPwUPEZJba42PS2e3xgD5i2WHBe9JYxgnVep64Ud8Wx16o4Kwp1p2Qv: '100000000000' +- Ae2tdPwUPEYyEshwRhjXJUHn33xZNeYJp8ySP99DLyisgJPY9NK5sDoCBRL: '100000000000' +- Ae2tdPwUPEZGpRmPxWpHSNJRvTQXhARCYgqyCK62xXzCaYMyRdWmkprxfxr: '100000000000' +- Ae2tdPwUPEZ3yoK7GCwrwdiMQcDGMkVcDF5QmJ18L7cLxo9k9RkTJJVCmRx: '100000000000' +- Ae2tdPwUPEZHapZEXuqVB64tJBtcupit3P1SDj1xUzjmrc1ANU9rzocsHq8: '100000000000' +- Ae2tdPwUPEZLsht9t1VaszK6NceJC3SaXDXGJedEo1d8WHi7vT4HXWbu6k1: '100000000000' +- Ae2tdPwUPEZ922BJ21MxoRWshnAQGKw4bsHyShd6xPSR4vMgFGQBVFViaku: '100000000000' +- Ae2tdPwUPEZ6JFEcaY1jy5LZJpP8Yu9WPTfriZi4rFGbRqTScNmhXChxjZA: '100000000000' +- Ae2tdPwUPEYxAyELpSWvTA9bhxn84uYu7uWf2KvuoAegJyiCLJNZxmvfCEa: '100000000000' +- Ae2tdPwUPEZKW6syqzBgAWWebh3n8UstPukZNR7ZTxVzts3UfMaioZsweYJ: '100000000000' +- Ae2tdPwUPEZGS87ojKH28sdbf2FhvhXQo5EaHcHnQiRwm93t3ckBk6LeGa5: '100000000000' +- Ae2tdPwUPEZCBndw8dH3T6ebanAgmSRS6iut5yuYbhQwrZvqUc3MiBTcUwK: '100000000000' +- Ae2tdPwUPEZ9iPN9w2P5xCcbZitH3H5uhH8vHMwcoikuW2z8fuETxnzBAX7: '100000000000' +- Ae2tdPwUPEZFAF4qdAPLLm7juXYY6kBtNGk59WPwmExNf881UeXh832P41r: '100000000000' +- Ae2tdPwUPEZJjV6ehFK6ttCk3KsHe6KaRko3jDcaa7YGfkWXGADxGHHDXLo: '100000000000' +- Ae2tdPwUPEZ1wo8wY7V9FyMXZsNg95dmJbRX6RVGJdjhrCacKcpVNb39say: '100000000000' +- Ae2tdPwUPEZBV3CuELwNwPNagjH2BXYCS8fEVNfX5Bmy7kXiAq3gRSEHDV4: '100000000000' +- Ae2tdPwUPEYz1y5UuB6qfMXpR1Xj4FiErhWDDWdevJbP6PLeDczfa3bKB5e: '100000000000' +- Ae2tdPwUPEZJ3QqoL8Tr7vcMoAo7oUBb2yaXS6R1j43SSxKeKzCt6wvafVr: '100000000000' +- Ae2tdPwUPEZE2F8rMYs5MNGdpK9qHytsdiwGCLH1Grg6N1pVP6b6YXFDMQs: '100000000000' +- Ae2tdPwUPEYziyQpAVfdZ6UCoesnEvAn8spLRJLsJHMnzhqnyTGPjJgMtTC: '100000000000' +- Ae2tdPwUPEZ5mVQ8qhZ4b4SRB5ADita8pb1gJfvREQoEJoM2rXPwWqAHgYW: '100000000000' +- Ae2tdPwUPEZ6ycwrDkUF1sfo6usrZWQ7LuKd7F4CKFJ74vdjSD5A5jaasRM: '100000000000' +- Ae2tdPwUPEZ3ub2HHLy1bwt6HNSUGN1wbcZ6GqJr2yWUx73bfSFB32PBEPV: '100000000000' +- Ae2tdPwUPEZ6KF7DyGay3sf7WsDGi4UQiUtFBU4KZmkDAEkX4x7qLC7qNxZ: '100000000000' +- Ae2tdPwUPEZFqbrJeQGFTdL3EuaE5DRq598ZyfPPrTtFqAfsnzE6zLd8ghd: '100000000000' +- Ae2tdPwUPEZEbsQozN4jWPcgVruFEX5iUWgq2wHbeLskEiWnVWmm93v8W5b: '100000000000' +- Ae2tdPwUPEZHEpFFaQU9FrbezrSMTL9C3BTbc83SRMTPDfj6AViNKtEsKwz: '100000000000' +- Ae2tdPwUPEZ2WYZcz6SU8N1EVVmsREbdpSQgPHDYUyFtP9JhznBQ82uGqjA: '100000000000' +- Ae2tdPwUPEZ5RuAUgbYY8TZEmwEX6ttLB6CNxirwNVLeRLKzrZ9NfF7R7tP: '100000000000' +- Ae2tdPwUPEZ7ZSsejr1gx7YKLX2R9sua5xPpaDVgREAumRczGwCDLvXJkxv: '100000000000' +- Ae2tdPwUPEYz4YvmhXqjYWMZNqGapmo1pYxTSBebtULsRQCAJepn4fXWM43: '100000000000' +- Ae2tdPwUPEYwSivYSvPwTKPdbCZabvuqAxJcLETLQhH1ssaqAVZtAa1sMRV: '100000000000' +- Ae2tdPwUPEZLfUNWNBHNxCUgfj98BnWwA9RmDHeLoLDJXT3qPbDBTG4sG6c: '100000000000' +- Ae2tdPwUPEZGk5xRu5rTBjmipvfTGK7N93zoB5kgSiUBvjJ6QNN31VTAZc4: '100000000000' +- Ae2tdPwUPEZ3CEUaMHEPL7Th8N3mDzBqMofxaGyfdKzfqy61AF66jxvcbyH: '100000000000' +- Ae2tdPwUPEZBpSUGiG4F3dQZ55zoct827kM3nkNh3xCAXNpSUd2pmq7g4iF: '100000000000' +- Ae2tdPwUPEZ46KN1zTn6g8r3cwhfy2XRwuxhThybNG7QoocsYPpwr2L6VmN: '100000000000' +- Ae2tdPwUPEZ52nq68ibgzAywbCfeGiJz1RNtTQcxSrkzq9LurXnsPJj3Sfo: '100000000000' +- Ae2tdPwUPEZ323oZCWCJTpWBByjEoCzPRXunXohagdNSRDBpVBhk6BbBXjF: '100000000000' +- Ae2tdPwUPEZ7ZKVS4z7CzzoiJyofEcRRRjfdepNtwSeFYhYNTz2Zzp1Bhdq: '100000000000' +- Ae2tdPwUPEYwGHGkGGnBcyxmi2jWNr8Bhh3GPy7zwk2U516LsFkVkx8KQxT: '100000000000' +- Ae2tdPwUPEZFhhQAeFmHXE9VgxoKYetVUA9FrsjWuAhSVvhyhLy6zZbPGts: '100000000000' +- Ae2tdPwUPEZFbSxefymE9M3DVjEdRxrtFdLd69kHHvXKFASpZMkrCEHQqEL: '100000000000' +- Ae2tdPwUPEZ8L4HyV7E6XPCde2mRFTiw62dd4mEZmbv2yy2Zy2RvoGHE2CE: '100000000000' +- Ae2tdPwUPEZL9EHqU2bi84zzywUNf1AngSvupLzmRK3G5ej3SzfFoAmKgc5: '100000000000' +- Ae2tdPwUPEZDYfBSwxEtiDFiZ2uj2W1ZFJTCcw7noUJUAMzAWwh5FzruPA5: '100000000000' +- Ae2tdPwUPEZ75mzmESVGv2NikTgMkXhLLzCS1zKrcDgLxDworJfqR5aEnPm: '100000000000' +- Ae2tdPwUPEZ17rurZnLR8JbkY8NnL8KsDGWu2Zq9A6AWRE5BnGGUpKV5cRQ: '100000000000' +- Ae2tdPwUPEZGr7hcnV3FCjhMHk6bbf4FoDf94CbLtsTT7vThM8HrNvRs8mu: '100000000000' +- Ae2tdPwUPEYzChGiHuFDbcRHSHF4j5HE2xnEVq1URvYJVdJtp9K4UoVM9Wp: '100000000000' +- Ae2tdPwUPEZANjQ4CfGpk5h5wi4qFwUVbzRZHc9euPrnMWcxh62zZy6y6PC: '100000000000' +- Ae2tdPwUPEZDK4sEXDpii6VKnMFW4YamJnjKd1FSwkwEuGd3aXT7YVm6mw9: '100000000000' +- Ae2tdPwUPEZ26bkJ8vQ6j7eGwnag3iRXsubCqDUJm3k19nR5qA3Uq5KH6EU: '100000000000' +- Ae2tdPwUPEYxT6vqP8CEUBsFwoNW4NtGXKci71JVwCmcFUDGhF68oTRUMrx: '100000000000' +- Ae2tdPwUPEZ7ReC86k8yytwUNwAZvgyafkHjR9gwNAmdbs2twEjWRZbB2Go: '100000000000' +- Ae2tdPwUPEYx6ZrqAtW9MW8ajR7v81Aps8TcbcXgMwjuB1QqkoDjnjJ19ZX: '100000000000' +- Ae2tdPwUPEZDpAgMVGYuGZwYdnCcY3GdKm157xnhcAZrPMGncPAsXAp1oS2: '100000000000' +- Ae2tdPwUPEZFLHZ5pzDno22duSXtBvvLjXVy6QRoV26J5UhXCLLQyMeSGhM: '100000000000' +- Ae2tdPwUPEZK5e9fJ16JKH8SP6BmKjTzQLQbKC7XQdgUNzF8PK4REGofXkv: '100000000000' +- Ae2tdPwUPEYzRQ8fDPgkM8n9y3ASiyPgS956BauwS7LTog2VC4GmZPs4URz: '100000000000' +- Ae2tdPwUPEZCig9cdGbay4jYJyxgpKqCveLMic5oEcjZtzLhrovV6atpiJU: '100000000000' +- Ae2tdPwUPEZKgmRxTqmvR3Sz2nvS9BLN4rvo1PUx19q5i3MbUbChY8Zp1g3: '100000000000' +- Ae2tdPwUPEZLGucJvjhVbuffKWnb9N7cV4SE2nEhrnm8M5RKXq4mfDh7Cqc: '100000000000' +- Ae2tdPwUPEZ6imbAhsFQYtmVjAY1njZGKswv8FwqtgVfMmcZWcda8fLCLb6: '100000000000' +- Ae2tdPwUPEZFptM9jGFbr9RjHBVF6BuBJPXf5phCNXfAQTa5EpxuQsPhpEG: '100000000000' +- Ae2tdPwUPEZJvGgmcDAgaboLJZyPWAqtL8DV8oa5SjsVotnNeTPDFWE32Ey: '100000000000' +- Ae2tdPwUPEYxSJKKTPYMMQq7RCpBfTtmtH4uo47EhEy4jKepYhcCEW1pn6D: '100000000000' +- Ae2tdPwUPEZ2PDcCbvvCeDCbcnxQo6dfUpu4Aop4kxabjdWkB9DK9QmhSD7: '100000000000' +- Ae2tdPwUPEZ49gecr1eLKrdRyeQYt72sTfU8VFpAwpJE5hZ2BU8fpZPKnZg: '100000000000' +- Ae2tdPwUPEZF1rSQtctMxFA52UiZjHGSrsMQ5eBJXLQCrJ9YgXTMA6pJDVJ: '100000000000' +- Ae2tdPwUPEZ51SX8DhZnhEzuaDaooxeYPegmNpzkQvmy43MqrV2ikycLkuY: '100000000000' +- Ae2tdPwUPEZ4cphH3Eac6B7Z25XEaGzB8ozvWieTktTVjDYAY3gzTfPZiKo: '100000000000' +- Ae2tdPwUPEZCMvvpULP2dg64eML1zcWS9bie7Xcbp8oGvPFwEyYrDtyevzX: '100000000000' +- Ae2tdPwUPEZBRi9zpG5fZUVF4wPJM89wZ2gS4FV9rcweyhkaCm4JoUrmcW5: '100000000000' +- Ae2tdPwUPEZL4Edj6Uyxj2iqneqCkymP3G82wRQD1DWeCtpS1KsDxGGLsp8: '100000000000' +- Ae2tdPwUPEYx66tnvjg7Pyycg9EHiuAZq3uNYqhKnvjsXQvDoaH62wQsxS8: '100000000000' +- Ae2tdPwUPEYyidPXSzu3y4Ez6XUGKjZfEM6oL8sWsLFiCJqxgjoVpkyUAZY: '100000000000' +- Ae2tdPwUPEZJNb9rNog3v8xSqUTkFB5yB7rMxDr9ni6jV7R4PyXAAEKad73: '100000000000' +- Ae2tdPwUPEZF43jN7VVqZhTZvHg4FKzdKzy7RvkuqSDsfP5NFfpWGwu3tPE: '100000000000' +- Ae2tdPwUPEZBQ45uKrxDJspmhj1kN9ow5VDWmff3Mzk2GKj7UECtzWPAMXd: '100000000000' +- Ae2tdPwUPEZFFDYKQ8RPryzRgqVwUCVAsvkH3o71qKujcPmYHBZ2cbFSnNr: '100000000000' +- Ae2tdPwUPEYxwn8YnS4q9xMbvpz42L57DdfhtHYwiqqLFWNWRwqoXhY5Z4c: '100000000000' +- Ae2tdPwUPEZ7dkiWzvPhGF92Tgyxd5ABSEUmV8pPj1PxpDsHn2fBuEMoUT9: '100000000000' +- Ae2tdPwUPEZ1d1yq92zUT3nqZs9PQBN1tZiF3rKfXGvAkeR8E1bjFsHjYHn: '100000000000' +- Ae2tdPwUPEZLeLQPWPdWR3nAji3yFtp1DNdDnhqXf1oqPjwERQuBnurESnp: '100000000000' +- Ae2tdPwUPEZ5Kd4NCyCz5ogJVCEq7QQvf31nAJgaEAvHo2qUd8jRTwxnYDE: '100000000000' +- Ae2tdPwUPEZHBhKs5FLrCaBGSp4pvDmkf1jttpcr7tekzDaE8pYFkcpBhPm: '100000000000' +- Ae2tdPwUPEZ8chT6uZkDtDQ8xroBRffwbajxEDpzYMgHzRBMVnDGAaw26cG: '100000000000' +- Ae2tdPwUPEZJBKSFyGnqKoGBPqTBk1RQfbVXJQRpUtYchamzXEssXoKQz7T: '100000000000' +- Ae2tdPwUPEZECgworJHL5iBVSknP443U8tKMomDNRMdGfFUo5aVW1ypQmE9: '100000000000' +- Ae2tdPwUPEZB1SHQkMzAuf44qA3giZ8MgSsP4y1CFF5LSuYoV1iSxBQdVMu: '100000000000' +- Ae2tdPwUPEZ1wdaz6H9hBYjqwKSbqNthsLfZ3nX3VvVm7jNGGL8YrQMsBVH: '100000000000' +- Ae2tdPwUPEZ496hoyvHgCoAFrcB3rkNqfBEMrwhGjfWhPgu99u6w9txUkx7: '100000000000' +- Ae2tdPwUPEZ5FKdFgfR66MLFFZ8xUWeqcUQg9az5G2JUe4chyGGBy2e2eGA: '100000000000' +- Ae2tdPwUPEYwE4jmWM41qyA8XDeaRUUMsrDBQwsM7LukPTS6Pwtb4qbwW6z: '100000000000' +- Ae2tdPwUPEZBr5dMsPkuDWcMLPraZcvCNpDjKiYQyfdQzsvwnBHgzZvd1CZ: '100000000000' +- Ae2tdPwUPEZMT9Bd3kgzFor584N6ckWKA9tMxKyDMWbHRsZMiFTvB4xeWFV: '100000000000' +- Ae2tdPwUPEZJPaN7Bb5d6LoLDQsNfrjuBBGLGHWc2Zx9geLg3yUHDsVSMAD: '100000000000' +- Ae2tdPwUPEZ7xGmTzbaufs5k5eTcfH85tB6tKewTgqNBdyDXBcojhckfGTU: '100000000000' +- Ae2tdPwUPEZHnaVPvDLfp9ALs7yAkihUxBwGX2KVcUxpReBJQJhu5FxYhvr: '100000000000' +- Ae2tdPwUPEZBN2SMJ88d1N8uGNJbKPgyPTbmWHh4zM4iTd2mH2yoNhFCNXn: '100000000000' +- Ae2tdPwUPEZ4LMYQ7uG9yi1YPAmDGpfjGcR93jHKAbEQzFTZy4CJEhkBgTf: '100000000000' +- Ae2tdPwUPEZKRAZemEWm7RosQahbdXY6gYoP56fcU4QQFf2LRyzGucwx79u: '100000000000' +- Ae2tdPwUPEZASdWZ6Y828MRXb9TgqjJ2EjdL2tBNz2SzLQ41g2taRMHpr6i: '100000000000' +- Ae2tdPwUPEZBRMGTDnMj8MrXLQT5NrjixodheCWfXwcgWYyjbBxbA25U4tu: '100000000000' +- Ae2tdPwUPEZ7Efktfq9QCq6qvtnmtE6dwbVWqCUUENDsU4qgpwGy4ms9QgT: '100000000000' +- Ae2tdPwUPEZ4Rtyrf35bLjFBNXvZVawEeQ5m4rKao4RfMEGje73fgrCH6L9: '100000000000' +- Ae2tdPwUPEZ9WgcLhmGaXeqnRZKAoMUYgzkitTnY4w3wTR4eJCrpxyxePH1: '100000000000' +- Ae2tdPwUPEZ4VCtTCxHEcVsaRNczU77myPxteyMACZKXKkc3AFkDFE5Nozt: '100000000000' +- Ae2tdPwUPEZ1bXAc6t45KVNZ1K7CDfZXMYagkTjmVp8T1zZwwsi8Lbw36hW: '100000000000' +- Ae2tdPwUPEZHRHGRFatEqmaZUYyaiQ8u6wm1F4NbPnc31Kx4pSKHhmnqtf8: '100000000000' +- Ae2tdPwUPEZDnTGUVyouXCzcAQNaDHbBcNQh9wxrjmyXZZKdo9rgWpAgPNE: '100000000000' +- Ae2tdPwUPEZ6xHtgXRYpgSYtpD5FjaGq6pya81HZmG4k5ybQgrC9c18Vx2Q: '100000000000' +- Ae2tdPwUPEZ4HEPMZQojTkYXoqM6emJKS331csUw7BTqRguModgRz9QfiTB: '100000000000' +- Ae2tdPwUPEZ33Yby6MUGuoaGAmcWtoxGn7fn7cmN33o83wDziQL6p6YDogi: '100000000000' +- Ae2tdPwUPEZ18hcCwpAg2s9oETj8kejkkBkx3AQCKjsc46UEXAjw9Xd5gnV: '100000000000' +- Ae2tdPwUPEZGPtVeVc6q1tR4aLb7MJmY8STi6Xmiuw9dsUHnVXsmtP7M1Fs: '100000000000' +- Ae2tdPwUPEZ4xVsDdPozUd7Z3teJL84FLBEL99UefcFKBSHgv6GLHudg2z8: '100000000000' +- Ae2tdPwUPEYzYrLF1MrBQCGdmAbbBFtu1AqRH4oohfnxePTjwAZLsg1h3jX: '100000000000' +- Ae2tdPwUPEZJL79ZEiTzaATEddT7H7mMXvHj5JvJjPmYaVRGEwU8htYC14a: '100000000000' +- Ae2tdPwUPEZ6bA93GjEAebH4xkvSCnkYYLPTKkvYisXjoiVaERPQnu6sSDe: '100000000000' +- Ae2tdPwUPEYyY9Lh8ArzQUrJxMMyitGcYWskBXPwvXT7zWV3XzM8X6BsBHF: '100000000000' +- Ae2tdPwUPEZFfQ1nSPt2YfQomJCrf65SoRExCZ5tusjLTQKXRiibHkVXsJh: '100000000000' +- Ae2tdPwUPEZGk4i9j35Bpef5mowoTohQb843QxexToQJCdsUbBYY8RQbiVx: '100000000000' +- Ae2tdPwUPEZ9xmZURDTzmwQRpABGeVs4z4mpzgC8ztdwVxqL5PCxzhcSz6g: '100000000000' +- Ae2tdPwUPEZ8mYikh7Vpoe9fRwM9HAxXP4rSh1mgAt3Ym2yg99kCsrDM13x: '100000000000' +- Ae2tdPwUPEZF51KnYRGxXBum2TdQJehUGzaP6Hqdxmewvr8U33vp9KEK1sW: '100000000000' +- Ae2tdPwUPEZ8sqZjExaJmvbLuGMZgLsWfhDQHfe7KKyhtRBNFy9USLoEmFb: '100000000000' +- Ae2tdPwUPEZMQXFATLpkx6Tn9uR4HGwGXdeTW57PVQafduh4qo1Nvo3uvmN: '100000000000' +- Ae2tdPwUPEZHp3W1XRLVGJ4oRgqm3CPtUk9StCdQKowwdob6y77Gc8b9e9F: '100000000000' +- Ae2tdPwUPEZC5tKu7EVtG6zZPfrZtbN1xvinVADXKrYgmoeRWYK6um1CGHb: '100000000000' +- Ae2tdPwUPEZCM7C6ARR5hf88RGdMFecNyWn5BweXbXt8Uf8R5g73EJidSfL: '100000000000' +- Ae2tdPwUPEZKTdWcFco4fJjeKdFaj1s49FeJEkAH64LU7GKvcGX2WG6JFYR: '100000000000' +- Ae2tdPwUPEZ4SxZvoRBH99Qe5DmZY7qzseTPKxSe79tZGpgap6gvnR3xvvG: '100000000000' +- Ae2tdPwUPEZK52bP87UdNHK5uWmv79h5NsHGwPSqwoggEcsQCosQX3hdx3Y: '100000000000' +- Ae2tdPwUPEZDTjaXYuhY1fBvhr37d9c8VnK7392Yc7dkfBW8cdGq12u5dXL: '100000000000' +- Ae2tdPwUPEZBaoB1JefVKtA3VGk2eM5qcwvVQQvTQAhJwEhGBqqyzWjKftY: '100000000000' +- Ae2tdPwUPEZKSQiJBpcTC6HcyGUJTks8UXdbeo5Xvtd4sPsopD3Rv3tLh12: '100000000000' +- Ae2tdPwUPEZ5cf9wx85gwoTij79i1dyNcse7daujFSMR3fGTKByC818xQba: '100000000000' +- Ae2tdPwUPEZ63wPWaj3xmT8JkBvd7ZDrWC5UkKVsGB9r7QoukHghrT7ZAjY: '100000000000' +- Ae2tdPwUPEZ7Vi2faNy2M7kULFgukmbeHU5Si2ZoyhenR83eUSHJuKy3SH9: '100000000000' +- Ae2tdPwUPEYw91WTetobvbfbVFu9DudduwAvmmsambmv2P989qYcNMtBLT5: '100000000000' +- Ae2tdPwUPEZLbhaongPApXtGQ6aZyQTSncVLSXNqqoSDJJivcTN5UgCxJF4: '100000000000' +- Ae2tdPwUPEZMgBHHdB4uj73pAu8zgSoEGJhRMfpyesUJebJomFybFXGhH4g: '100000000000' +- Ae2tdPwUPEZJYpRA5TcWaVB122YLkoadggtTWa86vvK4Tmc6DKd5CKuGaxZ: '100000000000' +- Ae2tdPwUPEYxSkyoTTcxeEqpCZzYsCLY2navAeFCkjNiSG4bSP5T4fQnhQu: '100000000000' +- Ae2tdPwUPEZLV9Rx63N2HkXvj8LttaaVryK9fLUZDt9Cna9bbcEvbDHWLEr: '100000000000' +- Ae2tdPwUPEZ2pyN58t7iNWFtifqaxkPRvEw5fvMykL2fuMjzMCQ19yAe22g: '100000000000' +- Ae2tdPwUPEZMBgaR49mSYGBbHifbcvDzpBsg7xUkbj1xx9wagdqWtL7Y9Zz: '100000000000' +- Ae2tdPwUPEZEsMsCmfCFdUX6RA1DWg7ncUAAFeT2UXZvkKTuEhyb2Q6LGqr: '100000000000' +- Ae2tdPwUPEYy5r4FDHJxzokphy952KDCTa4C3Pk5n4nZ7rGpocFQ7qRhYLG: '100000000000' +- Ae2tdPwUPEZ4CxvJTGg3DK8Fo1QUAZV3zghdVfkGKzkGW44oSHm2EvWGusR: '100000000000' +- Ae2tdPwUPEZ7nZ8vF21oMiLm6KQkSX8pes6JRgUvYGNTBNQ5839WjJjDYtj: '100000000000' +- Ae2tdPwUPEZ83kRM1xbLQKeLCc7LPTYBFMqEL61Ef8xTfb7g7qz4SBHU3sX: '100000000000' +- Ae2tdPwUPEZMyga1QxtEYaswU8yCvad4VLSJHReGMdxXijzn4bRKMr6bRiQ: '100000000000' +- Ae2tdPwUPEZ76WDAraZcH74uWgXyRVEZNBPzYm14v42LZjPrDjDAefnSwQP: '100000000000' +- Ae2tdPwUPEZBXCbQLR4sCs32y4AHcSp7EYxsJXTB911VV5UD99p7GD89mjq: '100000000000' +- Ae2tdPwUPEZ8XMQxdpAmrqXs9rdWehKSduXezRR6esprs5EovyBCf8hVywV: '100000000000' +- Ae2tdPwUPEZ9GmEHu5E1YqKf42VfqgNDXipiCxjLcCnqGqHFr7R4kXA2eC9: '100000000000' +- Ae2tdPwUPEYy2n1ZyyJE1VCBbLq5BCzPTLA6yHz3pbKqazJ7nW8wPG9VLbs: '100000000000' +- Ae2tdPwUPEZA4hBjdVnmrUnjjnau2xAj9Ezfa1dqdjtkrkvuM6ydveuguPe: '100000000000' +- Ae2tdPwUPEZ91Jqh1tetZMh1YVB61zTgADdHbjsB2mvnFyzYmzhjeppSrRn: '100000000000' +- Ae2tdPwUPEZKjbhkYGFt8KpNfBHsHko2zWoyTL2sNwYGcduCQCDBNhEt3Xm: '100000000000' +- Ae2tdPwUPEZ85zE5t4byntUuEvDdMpjRVLBX74JHCFLZ5uLyLsHyVoFX17A: '100000000000' +- Ae2tdPwUPEZFU62cHp9fYzgNC21TosTsoLxSzD22dBZ6RxDp9aHo6G82xGo: '100000000000' +- Ae2tdPwUPEZEBADxGQpSrMieRXfvz46VTMtM5CB5UQjMDMtKEdmE9dHYUtJ: '100000000000' +- Ae2tdPwUPEZBHfh8c2V3Xr6gsKV1SPYo2PBo1oGj6kG1fZQ2WizbJXnt98K: '100000000000' +- Ae2tdPwUPEZKg4Y9p18z3BR5qGdbrnYV5qBbGBYHkJqEZi8Ur67yJG9WMxs: '100000000000' +- Ae2tdPwUPEYxPUhRwTeEZXjD1Z5HkPgSeV3Ku7WyVnfcKqRF8p92DAeMVpi: '100000000000' +- Ae2tdPwUPEZCTjyViyDg2Ws6pT2q26WiGvUXfs8kWKxZV2qp67qjTWoEpwb: '100000000000' +- Ae2tdPwUPEZ14ybwmRGnGCyYTcVs3gMcep5rFp7FsfPqRhbYdkiukh16Pgu: '100000000000' +- Ae2tdPwUPEZ1dBGjbd6WuxDeaTjtbY9G7hYFUZ6s9GgE9r15G6foJYasjZ3: '100000000000' +- Ae2tdPwUPEZEV6oViBK2guboRFxFAr5ZDYeVj9hTPXXDY6jyTJ4xVrWRjYw: '100000000000' +- Ae2tdPwUPEYzHq4VbnAvFHH2DwxVptDXPoUPFfCFm3vRirT2cgMKtjvfU5i: '100000000000' +- Ae2tdPwUPEZ4pVGZymoUiH3gSUtBjPMcxfaqXt5Kt8wLaYtp7FW2qrjnc7C: '100000000000' +- Ae2tdPwUPEZ3r58STrCwpQGFey25cpj8By4SNterMCFurW7RAQUnzBzQBbt: '100000000000' +- Ae2tdPwUPEZKUwJYKyUXbUZBZqcEbuSBvu2ANsNVB7L8Xp2rkV7V1DziMuP: '100000000000' +- Ae2tdPwUPEZ9nfEDZr3DHTDFuYcY52gN8Qm3sxU3fLDEtBAZuqKi5rxruaK: '100000000000' +- Ae2tdPwUPEZGzXPGcN7j75TTb7kiNLz4SUYQGrQFRfvomfM5o1nMrWheS1m: '100000000000' +- Ae2tdPwUPEZEcRML3yeSiuDmd5U3mPQwAJGCeJTdLJ3ujupPYh1wE7sVTcb: '100000000000' +- Ae2tdPwUPEZ46zno9nb4wJL3rZVB5WAB5jN4hMuWx5JsPv86MgRY4VHfQpA: '100000000000' +- Ae2tdPwUPEZ3JHXPjVfKKbfpWT75dz2VJ5mFoW1md2P6rrbDRAxCyTE3xZY: '100000000000' +- Ae2tdPwUPEZCnmAmLUroHXJ5vBMmM2KamBJmVvMZyyPbsce6jjixGtLWZck: '100000000000' +- Ae2tdPwUPEZBoHJ79ZzgdMXHLQXADN4kn66zpUwHPcDbTKoSetcpnVr6hU5: '100000000000' +- Ae2tdPwUPEZ9hPDAkNcuHgCHxYk7aNd86rRwY1qxcqsM2cmmbHUTUm9WnSz: '100000000000' +- Ae2tdPwUPEZCsfbt7myzCXYLRwdHW3riEHd7eM3MgZFgUK8VXEoGggik4fY: '100000000000' +- Ae2tdPwUPEZDbe9s18AxDUy7X9y4jxSxbBApv3MqfRVZB4PkiNtXH6GGKdo: '100000000000' +- Ae2tdPwUPEZB5nf3Dhvn9REc3BMbstXhPVzSWN48XzVpkDKDJzxKt99CqCP: '100000000000' +- Ae2tdPwUPEZ7cYeZvJuVRuZ5qCAvPUGLYvm9aNzfdT8hXe1KbbxBFGLtcmB: '100000000000' +- Ae2tdPwUPEZMHEb2QVRAjcKs4jEwkMnyp1L9BHKtwzatf5WKFNskXzXE1mo: '100000000000' +- Ae2tdPwUPEYxfoP6tvfiEz2XAhFNpBuqfdMPRKqHru86it341sYbT5yJaD7: '100000000000' +- Ae2tdPwUPEZDeR5K1Gx1oYnqEU3BReHGCHXK53a6F6LBRPnHrnyVp5kVn2k: '100000000000' +- Ae2tdPwUPEZ23HVxCLEWQByYvhZkpeEdCa8NSe2jwqFyC32C2smx29uJNPT: '100000000000' +- Ae2tdPwUPEZABeUoGmwZ532ofYyTmiGBtFZ3QKYP9hoMaJtW79u1fpmRBvo: '100000000000' +- Ae2tdPwUPEYy6cRNLgSP2cst3ot5TmVUUgeXsiCA7Tm8vG2R985onW38MQ4: '100000000000' +- Ae2tdPwUPEZKULp3T5nrCCuEaiqhDHKqiVBopd5mgZKUvKnis66kHA7mE5R: '100000000000' +- Ae2tdPwUPEZ4owDgDvt9BEZmwyuXAbYn7B7MXdbTm11agYCNVWNYmy1CPDx: '100000000000' +- Ae2tdPwUPEZ7rtRtUBLv2zJGSrKDEXp3yMNNJFdk1R6E8QzBZQTauyAkRV6: '100000000000' +- Ae2tdPwUPEZ2ZLd4Ld9rcZQtisK39nBTHC1FzbVB4zcGfhgrmY8fHrVYQdE: '100000000000' +- Ae2tdPwUPEYzZ7psyppHBPsicdDoYXasnqFpR4kXMJomSKzpPJNYkCc1s69: '100000000000' +- Ae2tdPwUPEZJyTmY7UQJju4BLKPB1G9G7Fq28joMiDgQTkn6QyBDVzW8EYK: '100000000000' +- Ae2tdPwUPEYyGYA8MZVMGnmrSpLZWBiWB4Jhkzoi2k4v1dqVCSpd8cZLghu: '100000000000' +- Ae2tdPwUPEYzeQ9PaaCLGJxd2FuFv4RKxJXZPQHPxW13fynNdFgCtHzCgCV: '100000000000' +- Ae2tdPwUPEYytUuZ9hJQrNXc1H3qsdQGMdeEWBxafL1E8uoAFQpnhSEu7aa: '100000000000' +- Ae2tdPwUPEZJP6oxMxayhiBzkLqXoA7mjyq5RFS6o9hDSq3UdkHbqDnTTBp: '100000000000' +- Ae2tdPwUPEZ7YuarjjrXh9WwqsW5yC5G1MmVTH3Mi1LCm3wjcZkLppa3YP7: '100000000000' +- Ae2tdPwUPEZKxSA8gYv9eV44TBmGXtp4Y988bJusYgqHEUyVKAy8ZAeTBgS: '100000000000' +- Ae2tdPwUPEZ9efjN2wk8NepR3FEmgJQZBj8HEFNe9Rdipc1XJjy6CoJC9TH: '100000000000' +- Ae2tdPwUPEZ74hTQxC2ePnFQvkcPUvRcprtSDRgPLpo2tQ2NNWWFQaXe9Gx: '100000000000' +- Ae2tdPwUPEZDkMBVEAey5sLPEszVXLwYhwcyXNedBnTCaxm5s1Hw8nk4iPr: '100000000000' +- Ae2tdPwUPEZLcAN2oFb4YMCSY9pAFmYP49q23NRaUaqjt6cbJyPwZWzYo8V: '100000000000' +- Ae2tdPwUPEZGSRYyKNkJftoSmjnRwjULiUSu8VANkzfjYhMfq5BACpRTEob: '100000000000' +- Ae2tdPwUPEZMpfEAHQgC6vTmnpfySyHmUa3c2C67pUhmb1aZcQEF81MEfeE: '100000000000' +- Ae2tdPwUPEZ8TK3dydjiVEi2SXjfCcxuLfimBGqWA3f86Efhrhqa2tAfKtB: '100000000000' +- Ae2tdPwUPEZ6hmaqv52tMhXDnxErbpycQ4tSgpredA3PyKqd8VrvQANohYE: '100000000000' +- Ae2tdPwUPEZ6Ln9vFxXWSjMvJhULbn9QfKG662aQ1Lj7Lav1MTZTiuF3Rmy: '100000000000' +- Ae2tdPwUPEZ59UvfWLH6Jep7ZNUoxUhRGn4mcGHHb98zA4ZSuJDdF2AR7yb: '100000000000' +- Ae2tdPwUPEYwz12sBtQ4YkQv8LzCTpiRC2y7y7D1fsxsBfYih43s5XTwCro: '100000000000' +- Ae2tdPwUPEZFWUqbEuBAaHsc2Ne1CBf7dM3JQgGv6vksx79tqys9mQBxDb3: '100000000000' +- Ae2tdPwUPEZF869bbWvNTwnTagnLhGVBmH12Tj7A8KkDHeGX79daYP7NUND: '100000000000' +- Ae2tdPwUPEZDkwXJ3ZXZMGtaj7nFn8fyH1Gj49DUkaJH4pRpToWKoS6HM8n: '100000000000' +- Ae2tdPwUPEZ8pBfNYBujUbrFQyTF47LSuMpK76Ux4AUjfvm2AECk9r4qFyd: '100000000000' +- Ae2tdPwUPEYwbD1M5TfdjQvaP8pToc2ZA5BBjjULChaKrLgKJnQDj6JoH6Q: '100000000000' +- Ae2tdPwUPEZ7Hu5GZbYvbUjKdRdgp8WUncrGyX8LE5Ct5zg5HyTzCL4iXtn: '100000000000' +- Ae2tdPwUPEZ4W1ocZ2KFAe9YtYiaDEA2KboKhHVnFCraqdzAHTgiVY86RiU: '100000000000' +- Ae2tdPwUPEZGevz51cU19G837F89gyDqbQVc66JR1QWPeCAJ6H6vB5x18LW: '100000000000' +- Ae2tdPwUPEZ4XFdcwGoiTYAZNX6tDVYFFxdL7fMSrMsMUwe8tBhoCN9d125: '100000000000' +- Ae2tdPwUPEZ8JgkqaJQJZNYhAbKVqNcgdwjbrPeDpEgugAeZ4sufBu7B3qM: '100000000000' +- Ae2tdPwUPEZK9kaMF4DCPEKBsMFgQArqNQosamFJbntLx4qbxZJVKPpybLX: '100000000000' +- Ae2tdPwUPEZDoYN6BHMJsowpmos2wN9DDAyGRn74cAv7U6P6GvQDdZJpQYW: '100000000000' +- Ae2tdPwUPEZ6GjqdhPpSYa82MuDaQ4AdHp99q1y7mXy4xFcSaZ36L3xMQAJ: '100000000000' +- Ae2tdPwUPEZ9gkH3SL9RsExnPT2u4uvd5vobWFN2VqwFmL2MDZ1pJ3avNuC: '100000000000' +- Ae2tdPwUPEZ5TzQAyQcKn6NyhtMHnBPhoZVK7HcAN1X6HY6ButR1FEkSCsn: '100000000000' +- Ae2tdPwUPEZCHNjsUvHr2sEsGY3tHKw513RFZ6gEVsWPeiHw3xRvRs5s5Lb: '100000000000' +- Ae2tdPwUPEZ9ww5xjpzfWfQZvfRMuCGz3rEMSctbeAj1nSU74U8vgeySfTA: '100000000000' +- Ae2tdPwUPEZ91XTvWQjTs678nEubKpdNmijBWzQ284m4QmyjYUVJVsJB5Le: '100000000000' +- Ae2tdPwUPEZAXWeS4kTx98CgCwxxeeyk77sdCXgtis6dPTibkkNYxy9h685: '100000000000' +- Ae2tdPwUPEZJMAnP3UiznuqS182Q1Ciy4WtsUxtUT9rW9JTwh2kbVZjbHHy: '100000000000' +- Ae2tdPwUPEZBWxWetYqN3cXVa6VxL37KuE9g4fYuCHxzcEyUweyLShnXpsR: '100000000000' +- Ae2tdPwUPEZDMSAMN4vrtPCuM1FkivRL5gb6wR2UZhNGH5sqTKifRYiwMJw: '100000000000' +- Ae2tdPwUPEZFvdHVj6vUUEVkChLqK1wFC5tYy3eUwgpVjEz11mhPbm57QmS: '100000000000' +- Ae2tdPwUPEYzzsGJmP9WHG3M7f64ecu8mga25WBg93diQipnukQwhtM7qEn: '100000000000' +- Ae2tdPwUPEZ8vE3DuvtAVvzG6RmxKgnANEqkxVoVRty61yZprQFcZgf7t8q: '100000000000' +- Ae2tdPwUPEZ2Ct21TrzaVgz3tEBbSFU9CjNXCgGhwYqQBqLwcBymuTwJevC: '100000000000' +- Ae2tdPwUPEZCc8dasxJJD1BFzCHK9ULESu2cgTDgXzyJhjAwv1nYCGEzkwh: '100000000000' +- Ae2tdPwUPEYwP11rHrn5xgAWPMasT823xRTPQTtAeFTA6qvuhnz7xdpMNRk: '100000000000' +- Ae2tdPwUPEZGrvJRYDbxREDuSk48DLvfyKfV1NaZHUVfsbQqcWuHC6dYecM: '100000000000' +- Ae2tdPwUPEZCHibWTjAndMwXDyPGJQjY54zPJvfb4Gx8ggkpDUczsatZpaz: '100000000000' +- Ae2tdPwUPEZHt2wCW8nX8Tn8ebEDvLfowgL9V9QAaWGdbHvY1s73H7VKbzw: '100000000000' +- Ae2tdPwUPEZHMwXMBsL5BYbH69rA2D3nJpUcURn2mZPe9iXnq1XZvYJ2HDE: '100000000000' +- Ae2tdPwUPEZHkrw4wXi3Y4Pk75jCVP8QYSXpwZtygCuAgRdoPwVw8j5SNbj: '100000000000' +- Ae2tdPwUPEZMupHyK6AgPAKSTSZ5fcDRzet2FncmAgqVDizgvJQ5NqysLbP: '100000000000' +- Ae2tdPwUPEZBLnbve3bo2NKER3b3vLCkfxNzJgeiFPUt33sZgnji3Bz7YBV: '100000000000' +- Ae2tdPwUPEZ1vPsmkZfqckougrkz53MnLd6gBahWe5koWQ7DgmdxHNv2NsU: '100000000000' +- Ae2tdPwUPEYzaDAgk3zN2sqkHYeG9M8CmqCKmE8adSgYq3114wCynkb8Mbj: '100000000000' +- Ae2tdPwUPEZLcpRqXzanRY69a7scsryiygpBHgvdpPHvWD34fjQMZE6MYLA: '100000000000' +- Ae2tdPwUPEZJB87GNHZfFJcs1Ei6djhj4HKLufc6FYViqeCc8FoATyKaPPB: '100000000000' +- Ae2tdPwUPEYwdeYNWaPT71jhnbZSQesV9gzz22vydfvXtWhC5B2djs8sxyD: '100000000000' +- Ae2tdPwUPEZAvzE1xXpgNCmHYWPwATb6LALZ5bDcapuwpxPXmBn2uz2irWL: '100000000000' +- Ae2tdPwUPEZAMGei2LYdmRVtBtZHFhK7g71TV8ooXxe9ZztkaYabomhPTTP: '100000000000' +- Ae2tdPwUPEZ3EsV15t7ZG8AHqE8kvvxGuzEJwYZkrHmx1CzoAdpwaayFgSz: '100000000000' +- Ae2tdPwUPEZ8mWnL5CUJ4KeRpEvqphR55h3ZV1NRoiBPx5jWYV4UPByeqN4: '100000000000' +- Ae2tdPwUPEZ7LqyFESUyn2yhgNybSACag6hb2Qh81sAxGSKS8to1skwG9Us: '100000000000' +- Ae2tdPwUPEYwG6qzvxuBXZbQZNM7ouc6VDZyM6iMpJLL8z6GDD1ZHWWy91L: '100000000000' +- Ae2tdPwUPEZ8A4ZYi4yegF21KmBbFgcCgHSWqc3LDYJHUsQRd3aoqxpLNhX: '100000000000' +- Ae2tdPwUPEZLd9tnEHHVZX8wSF1BfwkxTLmXM8M6ZKVnHcDSUkbSeMpb3bH: '100000000000' +- Ae2tdPwUPEZMujdBbhYJdU7czhhNKsPNYB6SXXbvpqmYx2hwqVqyd1eNmE9: '100000000000' +- Ae2tdPwUPEZMkWBzgxwD6emaajTQM6CJtbWAMrbR4eC9ma9rEoj1xFuhkmN: '100000000000' +- Ae2tdPwUPEZGEMwn3SaDfeuAFfFPLLzLW9uuaPraF2PrKtCpDo1xtLXApJK: '100000000000' +- Ae2tdPwUPEZ6q8wQufb5E4s5qKUe7uSTMN4mJfLXKgkfVySzPMbqX2wAxwe: '100000000000' +- Ae2tdPwUPEZGNP7rCTdMT2K645118hQEwq346G1HiJrs8y9JtxdbFZT1UqC: '100000000000' +- Ae2tdPwUPEZ3p8qiAv9rZcNnqHupvS5FGY6AfxkA3NeAqbMK4QHWYwDAYsd: '100000000000' +- Ae2tdPwUPEZJcDo5j1qv1RhTKau7Ns32Kzk7WY8gMo2u4vT2VXBEcDgUDmT: '100000000000' +- Ae2tdPwUPEYz7oNcpbfkQrYbm6sP2R239Yx4remK8vY35Xn2HnJDVzuh34o: '100000000000' +- Ae2tdPwUPEZJvEnYsAYGXSQxXpPydWFQLWKewGpAE1DunZURhfCW8SbncFF: '100000000000' +- Ae2tdPwUPEZ3At4hac395zvqYMVjze5a3hHvGnctKGNrwB7Yxf2Wqd52H47: '100000000000' +- Ae2tdPwUPEZ1MSdnXbdHdD7uBNkqXGtVYANSTZvXdacKpS1hNcvQM8rqL1x: '100000000000' +- Ae2tdPwUPEZ7taSV1G9rgNh92NrJpV7yEA8EsAGNg898HVR1fBkR5wC1fA4: '100000000000' +- Ae2tdPwUPEZEDXj16fiG5aQg6vvEnPG9HvQJV7UDpSkmN3cLgUwzk2ghGRX: '100000000000' +- Ae2tdPwUPEZ5pHMPPvL1wAVFR8gcJcqMLJtRGtjzSyf35P9pY2MaYUC5DP3: '100000000000' +- Ae2tdPwUPEZH87zCxrTZnWJpjQ5QnjY265PE219isMzVB1zh1RehV9PDkHn: '100000000000' +- Ae2tdPwUPEZAtVWzKqkbtHUUvkxh7XvHrVr8o31APTUsru4oizT7t1pHKJj: '100000000000' +- Ae2tdPwUPEZ3bF93iFsmUjQoVjUE8JjiKJdWsh7SsVbjR8NXzmeqZ1jTiQE: '100000000000' +- Ae2tdPwUPEZCPDrbDU4qusE4yhjLfk571RynMFwxrj5icqRyBZeHGWnAs7m: '100000000000' +- Ae2tdPwUPEZ5dABVHbfzBHhvQEjujEJ7GL3cVCBU5YubhuTr2h5cMHGxB3n: '100000000000' +- Ae2tdPwUPEZFbvcPe3zomByRbCEcpoZfZ3eyHdoeGysgresyrzN47qDawvc: '100000000000' +- Ae2tdPwUPEZGHx7EAZY71WWpG9Tn8Ww4j1uuHvemqECjERSnuP5sx9VyW34: '100000000000' +- Ae2tdPwUPEZ9zBw4UxLE1Y3RQfvvZF5mzCgNyfg1STiTr58gxUyPWPQG1mQ: '100000000000' +- Ae2tdPwUPEZ6ahnDES88dSVat78TqwiYsffR8y5vX4dDkDtyGTEDK6veVxD: '100000000000' +- Ae2tdPwUPEZFVE753Bn4K67Acs7HUUgB7s1jhu3c4mWAQjJDuBJMB1btUYQ: '100000000000' +- Ae2tdPwUPEZ3NNXpNA77KnNxVnkrVjwakjh4h3zWvffK7d3eHeHi9hLDabh: '100000000000' +- Ae2tdPwUPEZMYj3znfx3UH99H88eXXDcmg7hnXtsqFJwCnVENFoaV6DfCWz: '100000000000' +- Ae2tdPwUPEYw1kewNHsH4iTLz8hNbCw1JDT1XhELsEW7dLtgyHetfc9dDav: '100000000000' +- Ae2tdPwUPEZLgpPCrqyR7BpgApJxZbdTJzhqAr1scjXdGUmE4ShJnn4keJH: '100000000000' +- Ae2tdPwUPEZGtdimxpnZC7us214h7QMUcSzRNuT9Tb5SpBJTR96kqT2Jzx5: '100000000000' +- Ae2tdPwUPEZ4yxCTWMK9WXMniVbCtGmT3rp4SmjvsQApL5PdrhhmqCcdZK7: '100000000000' +- Ae2tdPwUPEZ7RKtd7x5zwt3qTaDhaYTwSD5ioE7aRHDg7KcxrMWxyCqefKp: '100000000000' +- Ae2tdPwUPEZGEMcmPeH2nadvmj249gVsXhaSpJXxNZWJhDr7DZbpoLRCR52: '100000000000' +- Ae2tdPwUPEZ4N9U6QspKLAa2UV6LUG4DcUotA7AktCcTot9SMirob7cV5yw: '100000000000' +- Ae2tdPwUPEYyV3EooWPmd1fECtgwHJurJ7JgcVPnsWr7RTeXoNJFD2MUuP7: '100000000000' +- Ae2tdPwUPEZFMj3B7R3BUabTNN5ctwh5ovhpRRahvmRsHJ1Sj8pwbujQEmi: '100000000000' +- Ae2tdPwUPEZ4K84XiKnnR87iBJMNRX7WXxQcybjTThVpCfFvCVVsqnH21Q1: '100000000000' +- Ae2tdPwUPEZBQDyhXvnBV582n4KHrE9YoLHV9fSgKkmYBbXg7tEp1HLYSmF: '100000000000' +- Ae2tdPwUPEZFZSTmpdBTcS2UZVcKghv9aMBbZtwt1k8epj9EJEYUVHpzdLe: '100000000000' +- Ae2tdPwUPEZB9XZ7YXZ45tH8DCe1HwCmY9gKdWA3EzPKQtV8RS77p37YsD8: '100000000000' +- Ae2tdPwUPEZ5Rdw233T24RhvegGQZ45EfSghHBztak5WZ9fSugB85HUpBFv: '100000000000' +- Ae2tdPwUPEZJ11pM8xBEWNvp2QjkWwy8xj9XXbz52RPrfDJPFA9xmksZqic: '100000000000' +- Ae2tdPwUPEZDiggeuD5JFi16JqSqENV5qXeSbWEWeU5dzWjRY2JUtDQp56U: '100000000000' +- Ae2tdPwUPEZGVfzkdfXkfariW7CpxpEeeQfWXhXP5st3NzMPj3PC1BTrCYm: '100000000000' +- Ae2tdPwUPEZKCJfHVxCxxnYFJcvUB3PAeisfPGBdbx2eCCAW8pxrPBZDp6a: '100000000000' +- Ae2tdPwUPEYxUu6UdVLZBNxvkPhGKzwqDwGrcrXwmXZj9HthX7691r1f2ou: '100000000000' +- Ae2tdPwUPEZ7P2B5yqvxMH5Zy7CKPES3mwgaLQQ2dPQ26fAt9drJfa1A3Vv: '100000000000' +- Ae2tdPwUPEZELdQWr8ZseGDJRMKRm1b3mh6bNZMMG2MWh2F1MQ5ZTJX4iEc: '100000000000' +- Ae2tdPwUPEZ2b6UxgNELwMvtUn94x45bjAe91tYzFRMYZhWyNYtE8KUAYz3: '100000000000' +- Ae2tdPwUPEYxK7tL3jgP6hJBzpxog1t9r9depsdCm8k7xL5ucoYqs2zS8jz: '100000000000' +- Ae2tdPwUPEZKhnDkfAUV23pghKwUGoWsq55HLcVrzJXiADmgLcDKQMFq7eg: '100000000000' +- Ae2tdPwUPEZMJUxV6uxYtSvkruafyhJg1SWJdbZ8GZoVFJARHgxrKFk77c2: '100000000000' +- Ae2tdPwUPEZ4NDxqhgx2uYtU7YR8PA3vTkaZWVoQ57pLE8jpYGf6LnwGQss: '100000000000' +- Ae2tdPwUPEZM2RP3V3wT71g3AnTmrHQfu9dXGUU7JEGzbuYXp1Rr8BXD3ik: '100000000000' +- Ae2tdPwUPEZ5XJZX331mVbardNUgtriPYy87kFt6XSzhAJZmcYESnyPQTMg: '100000000000' +- Ae2tdPwUPEYz6sqZ4WYZUh3h7jmwA45EtVWkdfwGEwkqUXGRH8ukVnzcVQr: '100000000000' +- Ae2tdPwUPEZ9K9WHN5ZQGcYTXrZ5aVgnjojBCeT5LP3WcNMZagnaApHVwpA: '100000000000' +- Ae2tdPwUPEYyQndV92UcWm8bCdX7TsRJuA5hqVq2HYuFHATdpnToZQoxCUH: '100000000000' +- Ae2tdPwUPEYythZh57NUkadgMVbD2fSJnKHDP41bWHbZAfQ37UhYBpzvXVq: '100000000000' +- Ae2tdPwUPEZAN9wbLkdu8SU5xaNFJZoLUmQvP7AvZZuq5Fpgkq4JEh4pTW8: '100000000000' +- Ae2tdPwUPEZH8TVjchLtCeYmig61Pafd5JU5qj6izAUuBCCN23Gjgkyf4VU: '100000000000' +- Ae2tdPwUPEZ4jhhgGhA9shyJ91ZgUdT23Gdk9BszQrmwwvDuTaH4UGJSgTK: '100000000000' +- Ae2tdPwUPEZMWw5qNCYrc6GHCD1TEvgtNBt9gZVFsdwsk5frGpbxE4HBZzx: '100000000000' +- Ae2tdPwUPEYzcx5X8R1L78ajAXkDEWNQpxKPbuxiRqVqtZXwBmW1hw5d78W: '100000000000' +- Ae2tdPwUPEZ3qjEmFHVrBoNiExKuqCq2wDeSM3fsHvZA235RrQLmRJNZJ5B: '100000000000' +- Ae2tdPwUPEZ2TbvHWS8iqUUkbMet8XprC3492aE1BebMFfp8PWYpEihdi5N: '100000000000' +- Ae2tdPwUPEZ3KXygpAB5ySYPqHfWTNqMkhUTEdVYueqSshwT8yQqmt4crUM: '100000000000' +- Ae2tdPwUPEZJvJTfWgJhUMppZeonnaT2ZpwFrBxSYkh3t8kBRVbgz8ngcFd: '100000000000' +- Ae2tdPwUPEZBdxbCA194iKBoNVrPoDQyfxRTuPnMBjqojNqJzRQ95efGNDz: '100000000000' +- Ae2tdPwUPEZDq3hGvEzWTt6txPuM7hoYnZRMxvrfvqAoE9RdZ4SCFiupq3H: '100000000000' +- Ae2tdPwUPEYyDb2e4yE3hzapCSMhdaXQvojPJ2dxC5ZLUz15Ry5UdQfJggU: '100000000000' +- Ae2tdPwUPEZ8FFJoEvjfsWxXUwpsYH5mSaqNJWvfSDNfsgaapHooKXTFoSf: '100000000000' +- Ae2tdPwUPEZCQH6VHymHcjxhGrv3bQV6zkBfhHhS57uFY4kWaH4BSzUJkzq: '100000000000' +- Ae2tdPwUPEYvp2GFyDRUtAx2YYosFfaCtYFJtQsGfXnDNCtGwuPByXmqzP6: '100000000000' +- Ae2tdPwUPEZCNxbrLBRfNyzrcxPoGn4E4bPnR9N7zFpK9ddj3UjpER5ay9V: '100000000000' +- Ae2tdPwUPEYzk6y3hpZjfC2xeHxceaLyiumYJXDECZSyZP8SZaXG2B5aNCF: '100000000000' +- Ae2tdPwUPEZ2q8AwouwaeCJTJqY2ZbDC5jTARLseVJAKNKyAeYeJNFEoFEp: '100000000000' +- Ae2tdPwUPEZHtXyMoD31N3VCojHQWHTqGFbhy2fCQjQWab1TNyyvG7BRiDy: '100000000000' +- Ae2tdPwUPEYxvGAmXnU6tHuTiB6MUCr88QhSr6QgbvoSJuBzKugHHcQeFKZ: '100000000000' +- Ae2tdPwUPEZMFd9fRJqhvh9KQhefNxyyDFb8rziER7rhCk4u7HR7aTQUWXF: '100000000000' +- Ae2tdPwUPEYybwErVB1h5SeHW8wARx21KbBuhiJQd5zwwwCKUyhi5kLwGwz: '100000000000' +- Ae2tdPwUPEZ2jyADZdkxJGHjLtmqY3DVpgfPzeq6Upe85KcQXxUBktLf8zv: '100000000000' +- Ae2tdPwUPEZ2RFahkUugaBLcBHyJ3bWc7X92yG9YNvazguVfgKEjGTFyGJu: '100000000000' +- Ae2tdPwUPEZ87DsaXtGcyCne84GVGjKGruzDbX5QqCSNgA6WeW1VoSWihrm: '100000000000' +- Ae2tdPwUPEZEjgyRTVZJc9CZiEoGRPiCJmGEsHWndj8odNdHq1RmNncj6fT: '100000000000' +- Ae2tdPwUPEZ2N3x1ELxEhoBVvb917kSK6rKRPQP4hMFWEeMa2JRm3Cjn8ST: '100000000000' +- Ae2tdPwUPEZMLQV9ygYcBqqBwA4yUSYppuQvNhHdjrgAHbvQN1rxFRNPjrD: '100000000000' +- Ae2tdPwUPEYy6b3XydEUTztJELJygyLHLaDvBe1YRN3XbKYCo4avxyYvi5D: '100000000000' +- Ae2tdPwUPEZ69LzWFSLc4kWktnY5gtdWN1eWNdPK5jvq29gRXEAgAhVpwy3: '100000000000' +- Ae2tdPwUPEZCQzfdKe1486wXAiz8Ysnv1fx6CiqjdCm3JAnUP5waRJyQWEW: '100000000000' +- Ae2tdPwUPEZMA8X4rMwovnjaRx1ndmFQX52dq8wkzWDZjYa1Tt1THZbRhjq: '100000000000' +- Ae2tdPwUPEZ1DxkbPTFHibGNGT53LstXmwcXwDvRKcL9pFSfn8L6f9v9Vmi: '100000000000' +- Ae2tdPwUPEZ7EfLhBqZvXJ5CkY2rhon8ic7rRrTorZVV3Bn2GKWo8bTX4yM: '100000000000' +- Ae2tdPwUPEZ2BR6xHsoaqWj8SL3HaHuFcsBeVaZ1pT3R5NqR1PdG5kmtxoc: '100000000000' +- Ae2tdPwUPEZA33ArbNrW4cQrQPspHutfvxaNoV8tuaGa3AwNyaWa4ieqQoz: '100000000000' +- Ae2tdPwUPEYziHXFqYub2GXnbtyM4tfTp2hoEVfVSqf5GVi2P56Vv2p6hvG: '100000000000' +- Ae2tdPwUPEYvuqX9tZqqAkDDP7afsCvgFujfXxZHTz1PKeQwrh7gbjGFQ2d: '100000000000' +- Ae2tdPwUPEZGwXEmQgFjUkQWRipq7AGsCpiMHq3rFfVSPFFSXTRwELizrfo: '100000000000' +- Ae2tdPwUPEZ9BAxwfpZFGnK2g2TfYkRKnCo2U5wdyYGtNbP1pEsaxi8AnHg: '100000000000' +- Ae2tdPwUPEZALSuJYXrUNfdVPef3B8JmeFZN3qLL7NsrvZhdcrwoaF31NQB: '100000000000' +- Ae2tdPwUPEZ93Gu6c9TBcjSZMMsYRqZvtetdvNC39xWRh6uKwqjMmpkzrq9: '100000000000' +- Ae2tdPwUPEYzcvDX756wJHLbWqM7PtfqEHnFbnNy48w1ApaYGEuEA3MPCw6: '100000000000' +- Ae2tdPwUPEZK63M1TwrMijav8ZxSVsDusTTSmndc7u4J7Nv9FRPWwTE4FEZ: '100000000000' +- Ae2tdPwUPEZ34oTAZoo37HmkacJ91SnS9Qa6C38AAKoiVyDeCkv6LSWeBCN: '100000000000' +- Ae2tdPwUPEZJwMKhpij16Fk3Vvwky2iYqJZgsmG5WcV9DQ9ic7N2rSqdEwd: '100000000000' +- Ae2tdPwUPEZJ18GpEJEv96UNEaHpCRh8eJQmeetBmg3XhewuCzyXdRnNrXQ: '100000000000' +- Ae2tdPwUPEZ6hD8AUzwEGAfyc5PThCDZQHktfqYGCebxiK7jqcBiaxrS1hr: '100000000000' +- Ae2tdPwUPEZ8jaQAnhLoz6FMcw8h217BmHvNTytqSjJtQR3WhSvcGynm9Ee: '100000000000' +- Ae2tdPwUPEYw99Hz37zU5D7WiDmaPDQMRACzM6sx8WYDHhR25Dp2FrAHCyU: '100000000000' +- Ae2tdPwUPEYzKmGanjFGuD5V3gH6VG5qV1QvregiKdrJceUpWQQiFMQZruP: '100000000000' +- Ae2tdPwUPEYyC6vFbWeLNxHXmP4omZRpcJ4HzASaY2wzZkzsBBcJzw4WGFy: '100000000000' +- Ae2tdPwUPEZGNuzQnUrzAMQWPowcDF2rVXZin3MXR8PFzACURzQ76NLM1mK: '100000000000' +- Ae2tdPwUPEZD7SfaobKSba9pbFjh8ZnPoDdsbGzaANKWvCbYUqNPVWjh4Ma: '100000000000' +- Ae2tdPwUPEZD8zhkg6qn5cBqRuo7JK5zuycSdN8QnivPm53vKcfvMee3SpJ: '100000000000' +- Ae2tdPwUPEZ93EkFiNPmJGYVxCtCTwyFxFAGqYgVXXF24TuJ6kVTAEqcJDB: '100000000000' +- Ae2tdPwUPEZJBgtVWWSqNjp4KdtnSeMjfyUbrYtKRZVrqDQ9QnyEdkr2rC7: '100000000000' +- Ae2tdPwUPEZLwjWp67wCj6vtTd6zAjRBtna4SKJco4UYizWuKzMizKDktbU: '100000000000' +- Ae2tdPwUPEZ5k2M3LzdnGdijwa2PK9MU3piNA2aU9Nr4PtHDCM8BjsUusq4: '100000000000' +- Ae2tdPwUPEZD1neex1GiaT3CiA2icFPaDVxbNWUDMdgGNdrevYAcjjNA2Nj: '100000000000' +- Ae2tdPwUPEZLoAS77y5vg4zawjfDCvfJRukaQB9DuXrq1ceYjh1fixwj5tQ: '100000000000' +- Ae2tdPwUPEZ6CqiRL8Eyja7pzm2vheaUWb4PtpuzFaEQz3WSffGWHnkCMoh: '100000000000' +- Ae2tdPwUPEZL82pcDJx9EgxY2619buYMbtG7hfhUgC765KqNmbdivKXbB2s: '100000000000' +- Ae2tdPwUPEZKMpRR8qoe9wfM8sQcfYPp2oRmtumGB6Y2xMghmscz8wRqPq4: '100000000000' +- Ae2tdPwUPEZLvFUcFHk9QKVAYthaREiEj8QrqhtAWqyfUGGQGf32SCvBYfP: '100000000000' +- Ae2tdPwUPEZ87wPWbY4q9hArZzJikVdFs2JoHKNJEojkjxy8Vp9zLJ51muG: '100000000000' +- Ae2tdPwUPEZ7fkQ36m3UFj2RdrynWpadFvKFZAUxvQe6D9SFFbexeTyMuJE: '100000000000' +- Ae2tdPwUPEZ8TJXYXt7EJkzZA1YS4MxyjQ5pVxKxVtV6jZ9dHr99Yjbq4hs: '100000000000' +- Ae2tdPwUPEZLoABxB2XkjSsJ2ZTkHpR2qJ5qhCoawXiBfgBuFw41oTn1WQD: '100000000000' +- Ae2tdPwUPEZFXnqxxggvgGcsSNkjkXvy9MtdKT9kPcZoiWHg6WpJqTidTdD: '100000000000' +- Ae2tdPwUPEZBtTiXjHCAZLWYWf6jsuh6xvqy2NAYDsuWnbsSxJAxM7iLgW9: '100000000000' +- Ae2tdPwUPEYwPNnfohiWmX4gBdXSPvbS7yXnje2RLSpAiMFC4gs8QndqHeF: '100000000000' +- Ae2tdPwUPEZ13sHbK1QbjL5n3DdauAEfQs12uvwyQaWGFSuDbqtBjLNnuqg: '100000000000' +- Ae2tdPwUPEZHXU6Ci9uEzp653gTbe5TQ7gb3AK9TLtF1MttBfr5KjdrEBHk: '100000000000' +- Ae2tdPwUPEZ8VAi986YfPxkYuTQmLMnfYsPEwkj4ob6mnzSpPC8a7eM4ajk: '100000000000' +- Ae2tdPwUPEZ3yoeyvrM9N5J5nPug7kX49eKKsJFm7JNwQeCadWbMzsvw5uZ: '100000000000' +- Ae2tdPwUPEZHvzmTM8aagizNsrGrabgeuHbWRAQEpHAsSUzVPEJpbEJZsrX: '100000000000' +- Ae2tdPwUPEZBR7kZfwscTkBrtYV8Ff5bajNnUmdcrMhBV9dedeT3wVyFdG4: '100000000000' +- Ae2tdPwUPEZChNirPh9QzubG52AWoRaNhofa3TbGf6eGLUvzEi3g8s28Rov: '100000000000' +- Ae2tdPwUPEZ3AV95GkjRJCjGPab7DGDKLHecHfebJeNnmSzKFLso1b2zRDn: '100000000000' +- Ae2tdPwUPEZ8wwWByYZm27Tbk3ZP4CRvJmWsGWYikdFvhC5tvgW3rf8ueB6: '100000000000' +- Ae2tdPwUPEZ7zLi2zvzCDuz3kEjw97FPBTLqaFKS6Xc5n8yhKLh6D4xiXhY: '100000000000' +- Ae2tdPwUPEZ8ncxRKKQjBqKtUCYdcvxBc2iC2PqznWcV7UAwdSoAD8DyAYt: '100000000000' +- Ae2tdPwUPEZMqP4RPxdmMhi3JU8h8cqzVRjpk56HCjvoJ6mjuCbV28bf14e: '100000000000' +- Ae2tdPwUPEZ8FuKmYNKksVxg5t6arfx9HkdLgT7oKf4qA5bsin8eXG59pYb: '100000000000' +- Ae2tdPwUPEZ9jDSQyS259HRGSwkQDHSutLwNpaYxpwcayHcqvhUaGjNHQQQ: '100000000000' +- Ae2tdPwUPEZ5dSDJ8BbkTMVcoGY7vgYdMVuaDiKZSVRknZndpWAxHXTSEYJ: '100000000000' +- Ae2tdPwUPEZJSoZX79C6V3W5cuytGH3yK1DEnEezuCGWnvrsJxVTFaxqTKs: '100000000000' +- Ae2tdPwUPEZ4BGksrCA7GFohmRJxML8bYdiPfYHzRAH1ZeehTHWwoaKUPUj: '100000000000' +- Ae2tdPwUPEZ4CkT654whww9MPPz5AwzxEhb8QbDynh99C3VChvcW7dmyBif: '100000000000' +- Ae2tdPwUPEZ6w8X6Y9z7Cz74nmnkKnjJWqfCSn4S5tXYYyqMhCvpGoHDnfA: '100000000000' +- Ae2tdPwUPEYwPChJ1zr8hB7QUvyzpDesUp4to3JZbsLN57PLH7ZWEq4yYVk: '100000000000' +- Ae2tdPwUPEZ7Cx68hJx7ZZZ5P4s4vu2tpmeWzVP5zSEi6wC5WM1qc3PzioQ: '100000000000' +- Ae2tdPwUPEZ5WFJgC6Mdxegq95JxtEXWLbRwsbivBkvaLTNqoDBPAbQ1ypB: '100000000000' +- Ae2tdPwUPEZ7WGiJu4a17o5fRvA9Jxy1AWk2uZuhWb9FRUXZG4cPUw98d2f: '100000000000' +- Ae2tdPwUPEZ9t9BVAKsHmA9gkUGpRSeeYZDV4oY5bjShjo3V7KDBqYbiUNW: '100000000000' +- Ae2tdPwUPEZ3Qd85yPhvpH1zW3T34cfJyvjinwbi9odxowZwmm4aoJGczDN: '100000000000' +- Ae2tdPwUPEZNJiJnsy6DttDVkmCDRMsSrjcdo2cVbZooSYyUcb2SjcmV5jR: '100000000000' +- Ae2tdPwUPEZKxr8pmCZ8WwbuBQ4B6ow1EFdPNYKFLqWnJsGpDaUCdDVKnHa: '100000000000' +- Ae2tdPwUPEZ1Pz3k53z5UbN6LvCCTczn8dJsVuk9ZRTN6Wt86FmkUGc1Doq: '100000000000' +- Ae2tdPwUPEZHrU42ZDpm6deQHHtvNuBopoz6tV35eb571cBnFbEeUiN3sw2: '100000000000' +- Ae2tdPwUPEZ61HSMuRvL9qKocuPPEciqGw88eZrepNWhLdTG5s29EpyA4Cy: '100000000000' +- Ae2tdPwUPEZJctCftDzEDGzr226gY782YukcHE1KHqrApV1wi1JNhKESVSS: '100000000000' +- Ae2tdPwUPEZ43WjWQrTk1mQCmofyiQJsN3dBuabaRtrr9kcxqRAKkYu35L9: '100000000000' +- Ae2tdPwUPEZ7TMGPjHcsQhy5ZFkixdpkCvrKF5GJLinm1XYn9UuSKkDwxe6: '100000000000' +- Ae2tdPwUPEYx5UAX28QmV1fBvr5fhUd7c6uokLu43JcxTYUK3LnBALT1Ycd: '100000000000' +- Ae2tdPwUPEZ7tf4SnwQNPBEhZS2fKVKk53SH4gkfZzh9TUWLXL4DBLB8HTd: '100000000000' +- Ae2tdPwUPEYybP1TecLtjztuUo64J1hxiYXhrojcbmN9nQhTdraQKvtjPao: '100000000000' +- Ae2tdPwUPEYyEt37tDBMPTQthSpVWMmP3i79kWiV4sxrGTyg2tk67sgGRvq: '100000000000' +- Ae2tdPwUPEZ3eXAzcgVu3To6stLGceEJmafZez8tbLMxbDbYfRqepqoSTvH: '100000000000' +- Ae2tdPwUPEZ6A4FzdpC5n2E4jhEvRcz5Pk1fa2sqWtDr1BxWz7k5KQfytM5: '100000000000' +- Ae2tdPwUPEZHxkEqg2cijMqdYq2h569ALyLD2e1iDb6RbhTLJ5isWiBMWvK: '100000000000' +- Ae2tdPwUPEZJcAsq2pgr94xhQp7m5KC7S9RsBaCN7aauttwNSBoXB6utxCx: '100000000000' +- Ae2tdPwUPEZ8zkm8J4QjQ685ejAiwP1J5S6s6bVcfUFrJw8shD6GeC3oFa8: '100000000000' +- Ae2tdPwUPEZCGEXr5CCvxDHvMqGVyZcHXCmtGL7u1BV2Vy6hPJ7VeTEiQZd: '100000000000' +- Ae2tdPwUPEZE2eThpHN641QoUkg66UMjdoE7Q3yLrCDLYtBgsuZkdCQddmm: '100000000000' +- Ae2tdPwUPEZ4bozW48zMym8kKaLnR6MAKbgSsifqqWwA1xHM1ozVkhFUj1D: '100000000000' +- Ae2tdPwUPEZKp8fMNbmWgL1XFFfRtFj56E2sX7Hw1UP6bQH4TiWb31z2wLP: '100000000000' +- Ae2tdPwUPEYweitdnXpbPTvVXVEn4ZzhmpvfBvnbyDrgjBNtcFgTKKNBN6A: '100000000000' +- Ae2tdPwUPEZ62uW1TrYnB5ueZ2Wk9cg5poFco6N43VWJuLi8t5SJFjjt6Hb: '100000000000' +- Ae2tdPwUPEZ6bjoU9zALeZuYJNzgZyQrJvx5ciFcz5TDdDSJDUz248VdU4N: '100000000000' +- Ae2tdPwUPEZ8BCtfUU91FhumMMNWp9z9UTfLRneruNkChuZr6YDBwU7aG6k: '100000000000' +- Ae2tdPwUPEZMdaUvXZ2aXF7ZXYsXyQnRDNxLFKQXqK3vwjaMaqws4GHxiim: '100000000000' +- Ae2tdPwUPEZCe3snREFsBJUYp7BUu4HTDxrr8hkjmtoEJWqEgb2h9oKTidP: '100000000000' +- Ae2tdPwUPEZFU4FdqvRkgMfcyct4QumN9VgZbBEQVtmecEWmBuJtuPx2G9T: '100000000000' +- Ae2tdPwUPEZ9ViHaTSrKKfLxr8mf6TdeiFzA1UjMzr6baruxib1HcMRPfmr: '100000000000' +- Ae2tdPwUPEZCcDwhHSvmw3eVvD6LoaGSAhBo9yBhMiBk4M1A3sH924Z8mmP: '100000000000' +- Ae2tdPwUPEZKn6mM2ChAREkMwHxGwdHRBDU9NWANWLvGByFeSu2WyxCcst6: '100000000000' +- Ae2tdPwUPEZ5FTU77xdpyyEZTsHEWqA4SkuYBvFtCbSskoMzC1ft8WTYEui: '100000000000' +- Ae2tdPwUPEZ555CLvYqhHRE1XKjkSBKqneLpEJ9v6sjsV4NfdmS1vmm6mN4: '100000000000' +- Ae2tdPwUPEZHUwuEkHm1eon6wYnWmt6ksFFRTt1XQuP5MHHnmvi4NJijWJA: '100000000000' +- Ae2tdPwUPEZMXz8bacHcxvRXaR63VsDvz5uhRWPaq3Cu61Xhpa9zd5MeM5M: '100000000000' +- Ae2tdPwUPEYzh48Qk3ohSe5XnNdoNcqZuYvCgsEMASuWPB5n4perL1BSujx: '100000000000' +- Ae2tdPwUPEYzBDp8a6d5xdm1xXpvgNqKVEh3k5z9pMpykrFFiWjp6FaXd2u: '100000000000' +- Ae2tdPwUPEYyckp6oURgGFXd9jG69n78zCee4B9SEQ2bZXyjxbUq3R5HMU4: '100000000000' +- Ae2tdPwUPEYycp9vuzZHXQtGrgTM1gCPjszoS1SzqBWjuoAgyUCG2XjN9ku: '100000000000' +- Ae2tdPwUPEZBMNmzqSXZsUDqry7aF47NPvT43LxMWGKmviEUJzN9Smeguxg: '100000000000' +- Ae2tdPwUPEZDa8wGNQ11jonhjok3ehzyWsbkFVBij4iPcQd2CJihWjyYZ5S: '100000000000' +- Ae2tdPwUPEYzxrpydczZyQ5AeY3qAXCngijc5yZNHNAhoGddCSgm5Lnkqnh: '100000000000' +- Ae2tdPwUPEZ3Vn2gGxXRpvZX5uXjqHSXAAzQTstzsaMCWCt5ooSt7cyRH4w: '100000000000' +- Ae2tdPwUPEZF2UPCuoSq3ivvovpBjXc5taAqLrUw5vgGh6zx3ckpK2Fi7FD: '100000000000' +- Ae2tdPwUPEZFa1ssXJN4sgukaGBDtst2jcA49ZGzXa2Hr1C5vuZP7CuCybW: '100000000000' +- Ae2tdPwUPEZEMZ2a3tcUU4bvb6hoM9w3defNmMti7ja6wigjCdSxkJNDwZC: '100000000000' +- Ae2tdPwUPEZFKJDXx4Fsp91ZgpaAgKNNZWB13jkYXW6wPEey36chKL3NDwe: '100000000000' +- Ae2tdPwUPEZBCkARDHPo852i6XfT58pw2Pjvirgkva1EPw6PwEaYGuTNwLb: '100000000000' +- Ae2tdPwUPEZARA9MeBQwoccSYDUj9YChXLyh7AtHMvwvqG9ayZ625ArKUxM: '100000000000' +- Ae2tdPwUPEZ2SsnM8YH4Hf38XvLidHoZ4DPmTiEDtMPmE1MzEnPfbssXNJK: '100000000000' +- Ae2tdPwUPEZHKAokswWkYgcpD7xafPndkRqpUgQaZHsarap1JAgFjRDGfXQ: '100000000000' +- Ae2tdPwUPEZM4tzjPRCcjKSj7BTNika8my9DRRAjY1EHi1oo24Tm2XsS2tg: '100000000000' +- Ae2tdPwUPEZ1JqaUF8MTCB7b8CtKXYm21fTKSa6yYL1RF2s79Ti9ZbThbKk: '100000000000' +- Ae2tdPwUPEZ1KgqFrnvMZxDFimrPpLmdwMPzHERU6vH5twNVwGoWNnPo2ua: '100000000000' +- Ae2tdPwUPEZAwJp8YhT57SFdGsxYcdNH8tTX2zRqdTxg43FPaPp9JCJp8Mf: '100000000000' +- Ae2tdPwUPEZ25AXK3R5hJkV21NFPHWGqgGR2xcnHcbPT5p1hGeTyN29i7Kk: '100000000000' +- Ae2tdPwUPEZ5UJfgzYLuadaTe1woBSkBM8utqJnQzRB7UyfjN9RP6788oSd: '100000000000' +- Ae2tdPwUPEZAWahctBMQNS3W4BXtYzwkDiaMoMRBwky7dTV2Ex7uvjqJfs1: '100000000000' +- Ae2tdPwUPEZ3Gaq2hSnXQsxtnTuFaXMFmj2DZd2fvuQ438w6QewyFiWGhBF: '100000000000' +- Ae2tdPwUPEZFxrHZD4xbVj6rbRDSUenw5cqrETC9FdU1c3V5MB8CBA64rwW: '100000000000' +- Ae2tdPwUPEZ17Pp5q5Uk6nuoVZaLL3sV2tsMfC7gJqhm2ejLY5MNoWNw7Dt: '100000000000' +- Ae2tdPwUPEZKuZDoFKaajmAEQ9kdhMxihkg6EHHHXa4ZudLLbKCjX3Hq6dK: '100000000000' +- Ae2tdPwUPEZKhn8uCm9phfy2Lq4GJAymiZyakBtzky3fyqjst76gfu6qVCY: '100000000000' +- Ae2tdPwUPEZF5pDQEGx91dJwRhniHsJfQa3hN54NZibuKw39r3LnA76bzPV: '100000000000' +- Ae2tdPwUPEZ5gC5x7zz8K2XBjb1EP9UMgXMQtGTefJFdwsqUKYfFQfFwnQH: '100000000000' +- Ae2tdPwUPEZ42KPbxKa3oWvgGAMNyuLJiChHuqhK3xr6cpMyvtm61TQWWsc: '100000000000' +- Ae2tdPwUPEZN5Uij8nGQZZPS6aAG116Lk9Fficg3HyNnZBMX7uE1vUrWy9k: '100000000000' +- Ae2tdPwUPEZGYm1TLWoAr9bnz8E1uquebQpFu2hQvgZsTonU6BzAqyBRiTs: '100000000000' +- Ae2tdPwUPEYxXAL3ZDYMEQRBWnEdPUKua1VN7kzjPPCftRSCJ8fH1Rtwiqe: '100000000000' +- Ae2tdPwUPEZDzUGRJZzF1ULkP9NuGvnx1eqPhPdsRR9jEjYA1JucvWCpgYs: '100000000000' +- Ae2tdPwUPEZCrm6p2guL2YpegrsznYJCYjoTXWqXFiVGvkXGqE9rUgB2kbp: '100000000000' +- Ae2tdPwUPEYwNeXui4QEN6wcBmYYzfbxY7Z4bVQLWnNv7d1gjKmeACPYzCM: '100000000000' +- Ae2tdPwUPEZF1rWkHBWPKEBcbG3tS7MUZfZ9HZGbcJLb1PYenysWX4MXnVY: '100000000000' +- Ae2tdPwUPEZ8qstsN6TLqP6UHGMP1Eo4iVzoNr6WqeEYFdBz8wHKCL7wxvH: '100000000000' +- Ae2tdPwUPEZ8cVvmKvAutGSseymQScV7ot2jd3HpeddcygXTkUBwQxF3Tqm: '100000000000' +- Ae2tdPwUPEZAaKFF3dYu4SSXz2npmhWQ49bwbZanRWjTLU7yyihrV4VnE5D: '100000000000' +- Ae2tdPwUPEZMgkVA1gXHNwqYZKEYqEiBhkXXRwZU8QYRvwPtgv5seiNg54w: '100000000000' +- Ae2tdPwUPEZ4wCrqVNbZyVYjt6ZN4rM12iPRSSCdR46tpmKgUGqsK6NvhiE: '100000000000' +- Ae2tdPwUPEZBMR1jky8fkFR6mtBpir25PXoS3R4wCKWpytHZNwUzSAW792F: '100000000000' +- Ae2tdPwUPEZ4iQaHPshodNHD6TKTjvkBtn9AWyv4NJBLDX2sky2Efsox87W: '100000000000' +- Ae2tdPwUPEZCqTNGRt2U2TiUAds6Bsh1YpZBe8ED9s3Xjkq4zKTfBisFaYu: '100000000000' +- Ae2tdPwUPEYzZhAHMPqpXcEZr7nXxj5BgVaUdJR5DPawBC5RkUEGnhn5bPE: '100000000000' +- Ae2tdPwUPEZBy4idd7minN27Ygb9xsNjQTaFi8x6bsTwQPUGPo8jvqLaSgZ: '100000000000' +- Ae2tdPwUPEZ2S6AbCeAHSLF87HNdT7JQN9NGBg26SYHfMEPDYLZyTAZnKpr: '100000000000' # Special High Indexes Icarus Wallet: "erosion", "ahead", "vibrant", "air", "day", "timber", "thunder", "general", "dice", "into", "chest", "enrich", "social", "neck", "shine" # # Address indexes below are #501, #502, ..., #510 - Ae2tdPwUPEZB1rJ7Hgrvywn8zETWcv95csnqZ8UhxM74CrQ48VeEq3vjAai: '100000000000' - Ae2tdPwUPEZLDsoZbe9FKwsCDhRQhGUxkGvrMH17Go3EtGNSMp6AutniqQh: '100000000000' - Ae2tdPwUPEZLBfW9r9E6XcfZq9WsPJ1ufE9txTvMYUu8kLtwTAbEZdncEMc: '100000000000' - Ae2tdPwUPEZ55N1WJFJSQbFuKbKGdbFZRVTS3PyNJ84VGZiecuqy8PAZfLE: '100000000000' - Ae2tdPwUPEZBShWX3hTsErG1Fx9YRM85aNcqiMZ6VFn8TNA1ocgUddTC5qT: '100000000000' - Ae2tdPwUPEZ8kzoviC5H9y39rb6mykNhiZqTz592zPFUb8TGU9mBa6ycrbo: '100000000000' - Ae2tdPwUPEZJSoRXrbFXYaJEnZcBaBj137JWAzgG366H1oxupQPVd5daCFd: '100000000000' - Ae2tdPwUPEZ8g2f5hJUnMGmro3dpwW9DfQSDpNfLk5tfE7hxZKtNzwwTHgc: '100000000000' - Ae2tdPwUPEZFux7F1Cthr49tWitNF2vqwEL3A9R4cgvKFDSFkzGBBKv1a6W: '100000000000' - Ae2tdPwUPEZFbUA2eji7qzph7Mug3v9HVSWvhSExvUDez3CzKB1grupYBAL: '100000000000' +- Ae2tdPwUPEZB1rJ7Hgrvywn8zETWcv95csnqZ8UhxM74CrQ48VeEq3vjAai: '100000000000' +- Ae2tdPwUPEZLDsoZbe9FKwsCDhRQhGUxkGvrMH17Go3EtGNSMp6AutniqQh: '100000000000' +- Ae2tdPwUPEZLBfW9r9E6XcfZq9WsPJ1ufE9txTvMYUu8kLtwTAbEZdncEMc: '100000000000' +- Ae2tdPwUPEZ55N1WJFJSQbFuKbKGdbFZRVTS3PyNJ84VGZiecuqy8PAZfLE: '100000000000' +- Ae2tdPwUPEZBShWX3hTsErG1Fx9YRM85aNcqiMZ6VFn8TNA1ocgUddTC5qT: '100000000000' +- Ae2tdPwUPEZ8kzoviC5H9y39rb6mykNhiZqTz592zPFUb8TGU9mBa6ycrbo: '100000000000' +- Ae2tdPwUPEZJSoRXrbFXYaJEnZcBaBj137JWAzgG366H1oxupQPVd5daCFd: '100000000000' +- Ae2tdPwUPEZ8g2f5hJUnMGmro3dpwW9DfQSDpNfLk5tfE7hxZKtNzwwTHgc: '100000000000' +- Ae2tdPwUPEZFux7F1Cthr49tWitNF2vqwEL3A9R4cgvKFDSFkzGBBKv1a6W: '100000000000' +- Ae2tdPwUPEZFbUA2eji7qzph7Mug3v9HVSWvhSExvUDez3CzKB1grupYBAL: '100000000000' # A special Byron Wallet comming from ["suffer", "decorate", "head", "opera", "yellow", "debate", "visa", "fire", "salute", "hybrid", "stone", "smart"] # # with with only dust - DdzFFzCqrhsz56VqWWAQpRMcSFYE1WKeuFcVzV9UpovnJghF4YmV7TkMLNh1GCHftUBNEZQ2h3fCKsb25syBYrd1Qob2XkyeS6vgDzQ8: '1' - DdzFFzCqrhsfE8zNNyc84uMJrR6Ma3ToNYfwwZ4oQVGt8QrG9ZQtKngy3Qe4tzioZSdnwpD9n8RwFC22n61ytMs7NkXhVHrZwPoDjUju: '2' - DdzFFzCqrht6QNVjDuTwuwzYbubxxEHkRLR717NWYsUeqimhr9WwQQMJS8r4cfoW6Fkdefm53ea5vX5drr55vrTsGcPDKjFgENcXtDC8: '3' - DdzFFzCqrhspYWP9aDtu4t3LQWyt4h7zWSYgmRbfdvHindyJoSozKq81ZDEAVhzQy7PFCMFBDFyzrszZXvHQCwTwyPLpqgFwadJqn6rN: '4' - DdzFFzCqrhsktZddiMaLXEBdfpcZaJvUQpaM3KUQgaj4Tg3v2EeVU8HXimv6Ci7C46rYeQJ16sgwxU7t71eEbVpAknSsZDgCrk1ZbLk6: '5' +- DdzFFzCqrhsz56VqWWAQpRMcSFYE1WKeuFcVzV9UpovnJghF4YmV7TkMLNh1GCHftUBNEZQ2h3fCKsb25syBYrd1Qob2XkyeS6vgDzQ8: '1' +- DdzFFzCqrhsfE8zNNyc84uMJrR6Ma3ToNYfwwZ4oQVGt8QrG9ZQtKngy3Qe4tzioZSdnwpD9n8RwFC22n61ytMs7NkXhVHrZwPoDjUju: '2' +- DdzFFzCqrht6QNVjDuTwuwzYbubxxEHkRLR717NWYsUeqimhr9WwQQMJS8r4cfoW6Fkdefm53ea5vX5drr55vrTsGcPDKjFgENcXtDC8: '3' +- DdzFFzCqrhspYWP9aDtu4t3LQWyt4h7zWSYgmRbfdvHindyJoSozKq81ZDEAVhzQy7PFCMFBDFyzrszZXvHQCwTwyPLpqgFwadJqn6rN: '4' +- DdzFFzCqrhsktZddiMaLXEBdfpcZaJvUQpaM3KUQgaj4Tg3v2EeVU8HXimv6Ci7C46rYeQJ16sgwxU7t71eEbVpAknSsZDgCrk1ZbLk6: '5' # A special Byron Wallet coming from ["collect", "fold", "file", "clown", "injury", "sun", "brass", "diet", "exist", "spike", "behave", "clip"] # # with 500 UTxOs where 100 of them are dust - DdzFFzCqrht74rkP7eNhMp9iaQ79JQZzHX6QxjoFoie4qAn5D2MESx3Rzpqtc9zX6ASEdDThwJyqjc2kjqHMFnoUnC79GmmNCB9Vfe6a: '10000000000' - DdzFFzCqrhtD1LQ5wUyD3XB9wb3pV1YprcgwGwwyRoxcq4HRmrR5mPJyrgZn31dhYyWeGbu4q5UDHxBAoXjgqk5MuWsNsNVxTF8F2qWy: '10000000000' - DdzFFzCqrht2WTfwxWQe6xBUfW3wn3c1jzSxhSXA3N7k5pqQSHU7HPKEzJWmThUoumXZfPmwzsuH2ScHJVWd5aoyMu3KbuNjYerW2USX: '10000000000' - DdzFFzCqrhsmwHKki2LAsTmtgTVicRjvdnpnASuAQPAzkToBA24fe8F7VKJ7JvXr7nZK8kDUR55PmW2LE8L1PsoS8oQ5xot4UZSNDFxa: '10000000000' - DdzFFzCqrht9v5GtAfmEentVJVifD6wMiBtYwF3CRsmNrj6poVazpQVzUA2wSqaA3qXxLu38nYjF6eCPbvfa5eXtgqMRgbJgS5RKktbn: '10000000000' - DdzFFzCqrhsixN9C25gpSKwbuuDHUyx5CuX6mXpueiSeDL9xD8VSxTLReGzRYijPPVFibcSPasNbpQ4NC4sbGaoyDA6ui5TapZgvrRwH: '10000000000' - DdzFFzCqrhsimUHRmSXdMESb5rg4cvWXuEA4yyWG9K9zbK9JG5wELWB1J9fPS8UcC9px3inKqiMhDxRezLKfqBmEPKNxi88VUCV12yae: '10000000000' - DdzFFzCqrhseFRYgaXgzfzx6YP4UcfPRGmVFuHRmK46vbvxJKBv2G5PhDzgw51ncgWRPD1G5SpSe7njH3hANNNEmwZbHN5jmLERvwMFi: '10000000000' - DdzFFzCqrhsoe4FmTx53t9PNeRwkk2r3tThWDG4iFSkDRZ62ukgPEJwQuhVeH4wy7PevtqZJ5ort511GS448vq9TVtzq6MF6xYXSRzQN: '10000000000' - DdzFFzCqrhsmLgJ4SYYYP7NizMB15YhRnr3uB6etmFtKi96SLM18adj1bsD4uAo2W7A1qe3ermujVMrikw2W57uKdMSshL9R26qpMxzc: '10000000000' - DdzFFzCqrht7bNPEP52S1fFTL3fuXPiT684iHQL7Jh8TSpZ1y3daCiswqDpTzNLnVqbjJL4nGQr6EKU5ag6hQh3Su7Br6MdByijkteCa: '10000000000' - DdzFFzCqrhsfJHwdW8ST3auJpKqj1fR98ddQ2AhtcFVa86ygJ3mxGEeUt4x8Jj5fvnRPyuFbWcxmbY2cCm4w96HSPoL8GcogjfSqjfBG: '10000000000' - DdzFFzCqrht8ZChkZpKVRjGvTjtAmMvtH7ctW2BpGiuvFSEYFtiTpekfwZbkLF2mkAMJe6vkzCWYUAV1pYpZHBzYSXd7SDE15JaomHmk: '10000000000' - DdzFFzCqrhsr82KTijCUhB4X455iz3xfphVDfq7BkNyFxrZFNpMXxv5kpXCjBtwwtNPrg9989Y6eP5CaNbJXu5aw99eDYrqJhJxja4Ys: '10000000000' - DdzFFzCqrhsn6eNkT8jVdSWL2HekJzWbWXC8MpYsFBD9ZzoyREGEMnSpKwnc85fRiQoDumcBSFkYZLoV9QhhYrACDuyLxkrVQKZAu6E9: '10000000000' - DdzFFzCqrht7qfcesd7cGVWjR2g4Y4uzc1dN1N8Q4WSoRXrVagWuqRzXRnj6j3kBgKjK5wmGHy8iQ43ztHWq2muW3sBWSURaL639oD5E: '10000000000' - DdzFFzCqrhsunU3RzkxFFi828WCCxmJ1TSY87pcWtV35nPVieK37sdw1NFSWwyBoySXB6E4Djijxmt3XAbtTVqG2vYAsnxjJeJm26RSd: '10000000000' - DdzFFzCqrht2me1YG59MRZRYw3TrKEtaBe8K9gufXPsRqL2XZJoyLV2mGj8VUKKKtHNXtRhihRz1jETMSEiCJwaN3JvP79FUe7N1RshY: '10000000000' - DdzFFzCqrhsxa7TVpBQF6fWUVVTPMw88FFPJJ4Q5iACr8Ywp2kXJbJj68TxsgT96GmwLZFUMxuT3ckmH1ydBWmq6FnzKpEj7rDyRc13k: '10000000000' - DdzFFzCqrhsnd5fktRzjggYTBYqT8HXwpNgxQrLKn4hbbaBmoHt27Cp8wrkc8wXGLn7rQGdYfdFBHPE94kNKDQR6FRd1WB64imHz7dW6: '10000000000' - DdzFFzCqrhsh53AKGP1M1VTYQPy2Pa2hSLQemEwZn9T31npUGWypjZhXNgC9npqpKY3QLYpLAFrSbFWAG7RqcBQ84wwk8PebQTJN7ZM3: '10000000000' - DdzFFzCqrhtBoYfqGzYsP61ZM5Fsxy7CyXhSRykNwVJjoNeohNrWkbmCag6VqepW2KtcF8uiH4sXJSXFZ1xwp9NWZ3yy6fV2edfLTQ3L: '10000000000' - DdzFFzCqrhsfCo8npHCT2yUTybE28nhT2r97hwZmw1ZVpb1YLP3yT6XfvHUMgQn5oUKmPaacW1TyDDLSpDEt2bAPxAFVHAKi4h5vanxK: '10000000000' - DdzFFzCqrhskzPk1MGb1xo9BxzcCNHTfbN48xBupa9KbJ9n8tE9b1NF5mPncMfFQ1CGYhNreFbRcmfuk78XvNCudffUwcXxF9B6zmB1F: '10000000000' - DdzFFzCqrht4LGyz2PunUcmySpAqDNcYbgTrVheNRVTJZZMAgCSmsvayYG4eLwU9PGX5fViKBywuyzfLgau4sCDesHbucPN96GwxEH1h: '10000000000' - DdzFFzCqrhsfi1p3MtYG26TpgScRnkATR2fnjiJFLVeGrULFS3gjjj3ByULEC8ZxcXD7Av2rEQwm3vXz9oFXQ5X6K8NNprseWwrSz2af: '10000000000' - DdzFFzCqrht9GXEcM8LaTRo15oysWd8c9RxhQa7MmPcFBBPKL8cJYczhojyDLuNzfZGKRgfYCeF32UmfVyuccgxWBYubGeXqmSpYgpk7: '10000000000' - DdzFFzCqrht1x3AA2J4Ht7Z1a4xUtmBecTnsMxuDeAqhQLLbpB9vgJLjyhBAhHJQdRfPMXhDaD6ANtPdNhD4xKi67sHBe3LN2sy2JtPb: '10000000000' - DdzFFzCqrhswSf3sKpjoN4YWAqBxeG8wYmuxZsdgRTxyF8PewXqm9Tymi2FrW5zF6dx86KytPWhZNwV3qPrAggS666uYMXbajkcFMWk8: '10000000000' - DdzFFzCqrhsudVzxjFvbVFyreKSy5yWoFS7zf4U9fyft25FVV81qyQA4UHKJceGPf17sN6H2NchuLp3LWn9vAsmaHdFHd5ujH8rAJu2m: '10000000000' - DdzFFzCqrhsp9rKHL1V1fdS2pdVmgpWKRe8Bmq533DzFSAaJcb5HrLEAmmsCfbb9fvJ9uz8NfGdWDj2CxetGuheMuK3aFeYbPsYRjXdL: '10000000000' - DdzFFzCqrhsn62sWhrHnq7MMds6nunf2nUiJJY9Ewn5K6L4e3sbDAQmzU4jyq2aWcrDNXT2kHanTaPftBWsaMmaDhwMvjZWAWb8YH8kt: '10000000000' - DdzFFzCqrhsmbbfJ2naGfSRvQwDWGwc5oYjg5LiJhGjyJp8Rv6RV2uPvVqPBBVLrxt9cct9oLN9kdthL3SuFybTkBV4udXrGiJPePWvL: '10000000000' - DdzFFzCqrhsrRNcVNk9tAUPSsgWUfaFmZP4WJwKrBckucAGiMgH5SuzadfMVaoh1p5Y2ACPbT7PZZavZKxHjFgwDESHGh7mD1VHSsXHJ: '10000000000' - DdzFFzCqrhsnZWFsD6XMrKfMzjhQGLPNSVgxjTfwCdnCJB5q2M9aEf7JupcknXvMRwGaeVTmWw1auhHFD9Y7WdQGBj5X4HnJf4eLfRhm: '10000000000' - DdzFFzCqrht2X9Sjw2hQ4fsv5G9XKHVZferp3sQtqbaLFPiB3G8AyYrpBBbMdsD6ctbSR1GemGFHv82UztRoa7pCbRb15KkxatHnPPjC: '10000000000' - DdzFFzCqrht1kyXPPNKR2FdwhXtdHDpW8eCwduqCegMxCHkQ5YVK6NdUcA3YEx8ZxqLxi4spe9weUMQjSify5hkdyaQN3xDbvU8fotiU: '10000000000' - DdzFFzCqrht4eiEyj8WBvXks39GMsEf9pxq2zPJzySKfPFgMypSLuWuMqRmKjt45akL2gdGnpHd6EjQFkv8TVCkZ3AVdhj6ENtqdxZTE: '10000000000' - DdzFFzCqrhsnK4ZbLydcbGh79N6ABcDdELfPmEwjLeNeK26dRr2GypwoTFJMgKcKE8vjM2sQ69Zrb8MfSoh6S7NdqCp2z1NkyVSMByKA: '10000000000' - DdzFFzCqrhstvUSEM5Da4GteUs7AaLx3c7vvZstgxg2hpYBPmgcHNXQ5hLWyvF7Qx5wJM1DLfuc4K4WCkTVr4j1h3PpBTj96XrWZYLC5: '10000000000' - DdzFFzCqrht2Lee3DjH6PXARBJ2f4mhycRcLxbPMfkytAg4mVJYLsasxhjYmRTApSwombQbiHR38PebXgnM1B9MAF7PzeG7ub7Q41WvR: '10000000000' - DdzFFzCqrhskyjSxsuovAZusy8n54jndPa9Ri1YuAJt9pQzZAhcJzBu7FBc2W6KXxLkAA4sRkfjaqPcjRMFpAPJgHAayu5VDbZNQ2WpE: '10000000000' - DdzFFzCqrhtCeiAvANjy6mtcF6YV7hLNp7pS7raiiCRvrFDYQJR9Jujnr9niAmqQ9NLgMNQdzfW154dzZGNiVF6YLkqZxQW1wXJz4DdP: '10000000000' - DdzFFzCqrhskmdcf1AvMMoTwpLe99D942KHbU8duNxZujFx1Evwj4L5MYHXYvJVj7RTLLq82d8m1T8dNx3FrAUEj1Hf7GqaibWeazqqz: '10000000000' - DdzFFzCqrht8LXg6C8gYrnNw2vM6NjQq54yYZcY4sxQohccgA4Ugzvn7XEuQswDS6TjTAEe32HxwHn1tYXQi6nNqdcTXyCK1xHoYri5K: '10000000000' - DdzFFzCqrhsv24r2yWyW8rk7KC28gZAgyYWYZWPqxbu5F6KUeUToxi8gmuQzMS2YWkXeWFXipL3JpMerAWqVKY55SqDZDfSsBuvPPKFP: '10000000000' - DdzFFzCqrhsqVCt4UUKacnHgz27FtJZUfvK1uUQXnKd3QVjjUy8z3CppouvYkuLfvK4LYeF3uXazAKsbmPGD11uDAnUhJ1hkxHZD5Z7h: '10000000000' - DdzFFzCqrht5Jsq8pc6XZ7HszkS8GKdjWTLwx9yBGMCvUMm9B27t3pGGGstRHVpgEJ8ZwbK1831z4q9fLXR6jZ93DJoPUaaJzS3XyUvC: '10000000000' - DdzFFzCqrhssADccjeDoHmGY8b46ikWGHMsaXpzhM5r3fc8D6rXjxMQv5r5XfosrXBiRiFnHFVdvKPoDRzGjk53xM42vrgmJFzrMKFCh: '10000000000' - DdzFFzCqrhskDjCB6feTvqrNMDmtcDuFB9pa5Q91h6VTwUT6a7jccdmv8jEiHGioeCZgRV77BdBGRLcAbhPNpJN6AHQMd7fN6TDCNfBm: '10000000000' - DdzFFzCqrhsvKsWhmmLFrteyGtaGjZUprgw9LHXpXLq2WR73iszWbzd9Rac8q122nXjbFxq5tCkJRkYXV1poT8JnuhaPToKEkfHyYgY4: '10000000000' - DdzFFzCqrhshTqnGQ3vwT3usggSFkhcisYtw7CHkhZYWPKxw6YQUrmc5bRam5cjD7S9opQus9EfgxbViHVKGUAuHFktrtGgHCKpiTR3X: '10000000000' - DdzFFzCqrht9mqjNjcUzMJQCCKuetEYNFduchRbFqTmRLe9ERsNChQsDziDEK1EeDeutehcU8LhYrQJQ3NkwWNLuNgSLo1ZZNStsyKMR: '10000000000' - DdzFFzCqrht62RJx2nznFLa9PyBRGou8CQjWtd66ntzCzWmp1qJCG8Ls6BXQCDa1GTbT1PhLdfJ3fMexHBRs8RbqdwMJpVXzZSC9Sbgq: '10000000000' - DdzFFzCqrhsfGPwQT4KQidEfEgxt23tAyZKmatiKxDivkaL7D2nwHtRureaxCN6TJ6aTKdg3YM6YL4e2RKrBbuKgfwcSJ2GCtt43fJgC: '10000000000' - DdzFFzCqrhsq9gaTbqV4aJ9mWNAXjdpcCwLUCsruHn3PrUo4FadN8BZLKckU8RE2qkk4NgnQwjRwLnzvs9zkJJXqociz1TM7MDMWNMDN: '10000000000' - DdzFFzCqrhtBgHtgDnvge3BqAyHsdQaaa2kNveMH4DwHeowNMYoSCsCxCEVHctpmbFQa7VyzQTApNZkgeuU5CAzUFPw58hqxKifeCk2h: '10000000000' - DdzFFzCqrhsrjtD75C5JPZnPYc8ERSoXejiC9rLjaieUqDdwaizNa5QceGoVs4G1iyxsW6Xpd5TijRSbSKpi2XAtahfWEgk8ydLAfRic: '10000000000' - DdzFFzCqrht3Nu1ynP945mofM4mXRxbQwzgRG8JjDYqnL5hjEbByEfWUTCgbEGrnDobdRf9R1xzJcXFJ4KZ71MgdWv8F5Ta4vYwdtzf2: '10000000000' - DdzFFzCqrhskrYw9LBJmbaBdF3h4SeGggM8FVwoCdrhZ2uRTjmWmaQfyXSpegdqCgNLmEJiTFcPDjPMj7WZuCuSjHmCmFJaRpHer9x5z: '10000000000' - DdzFFzCqrhseZminsKqmJgvt6Hq6jrv7VWQ5Uw31thiF4gPdVUrxvu3Gmcvt2EP9CHzC7S5pSgSJh7waBNZrjZEzVEpV3W5DjtFiqGDt: '10000000000' - DdzFFzCqrhswqffexzb3aoNGiFnUrCiuREuK63J65toAzjpwD2cx1oCHLtBR5LR4MaAJSGRbn2uWwAC4g2wyjx4w2z7kJjEGuFCVqmSW: '10000000000' - DdzFFzCqrhsnm9uBb8qarQZfSSYxYXjQ81TdcyswH4vgsHBjq1zov7nMy4ndTRS7Yuq54ne6Ds6rfyFUhdBRk2pJKYK6RoeUiGV1vwyk: '10000000000' - DdzFFzCqrhsm1QSHAcAjK3Va4jZdDq1NvHCQjrqfEAqUBUki34yQvdeiKkZpGabFLVuvVbQJDk69YFTcwoCLbhLWi6vYWuzi93miau7v: '10000000000' - DdzFFzCqrhsksQXvpRDVaovPGxirbBZcv3pxsb16fAEw3WbWu4fSLjvo5NLxk6jwizsBPG6jHzvwHn2DV6QnzbHHvQdLq2NNKDUukh74: '10000000000' - DdzFFzCqrhtBmu3pCXv8rXFW9YuAFrrVBypDQ5GfEvuZHfsgLfeTBsnZUT5X4BqMhnLgoFFSnnC2FTz4PozcSYxqCCw89QETsn1DdnvV: '10000000000' - DdzFFzCqrhsfhPP4rNa6k991fiUXpSp6thLbQkzSVZesnJeaJwFk8h3HJkWBJGRECokpTthCmuJr9qEqGtvCP8xLmmUnK6zt8kzhBykd: '10000000000' - DdzFFzCqrht7cWB8GyXGv8VFHUGWyKSdp8LNXdzjLmhRpkkak2wAZDTeonN1pzkUU2YSQucvQ3XHtAzxPPoj7eNUXkV4sq4b9LKKYhXi: '10000000000' - DdzFFzCqrhsxcnheSckLSjUyNWc1yZD9z7yudRfQGu7VBoEu45CPGmDE2Zo7a1KJVA6SinACVzoRfpsznH8SnxxUEgMpi5ALKUArpo2t: '10000000000' - DdzFFzCqrhsyv2KBMBB66EJHkNS7w7Ei3ismZsK888BE8pDcbKWVrdpb9qmMDPb4RiSQ3s12cQ99QwAcyA6wEHU877t18igwJs4TDAnt: '10000000000' - DdzFFzCqrht58Az971KU11U83wZ8ZcPRLT5M4u3iyjUyJnwthbA1pddekoczb97vxmuAsGAJdvGJmKmG4frEdBE7e7MmYp3CnXWyAtUe: '10000000000' - DdzFFzCqrhsgFfKY5vePdM3QmjHb3GsUrKWMpLgo8GxPSy8fmCQNdUqjYm6oA6QTaSJa84wZZHvZu7V5xsNqrRxYjh6Nxb8SwypkURhX: '10000000000' - DdzFFzCqrht3VHwMWTC2qwUy1uH3zQkCnHkX4XcJyiVU3YwQPWGMHxFGnNR6PPemgjWBvwPfAfNfypxbLhmJuR34ph8vVszVCMquLcv2: '10000000000' - DdzFFzCqrhsmrxwxYLr4FesY4abQ6wYeYDbAn13teGi6gLcU1dsZD6uzvzF2QmGuBvmpyF2S7uotax69TzX7w2k95A9yf1FkBihYLEfE: '10000000000' - DdzFFzCqrhtCNu3fevJ5tbxwWrk7nF8RZKwTwjtZgRtW5hZwACqRcfGe4xLVd6bXeJJxjhJi7ne3kKqtk7n2YkxM7CSEMDpDHuKUr2ya: '10000000000' - DdzFFzCqrhtCsJdwUCsoo7Hj2exyA3nEqPzicMH8va7xqkHmgMgHvtJxzg1MKM9ntjzzvBAsUuZ5ictd59CxEmJ3kiKNJ6HHvdaVN4qQ: '10000000000' - DdzFFzCqrhtAY1WSCqaYrrG3fKvyTM925RzwipCphUpekgSrDsjA4Ps7GJCqUjv37RjcyfKMQFfRQqrm142noSv4Gdwrzca1uFCEH4FN: '10000000000' - DdzFFzCqrhsmEBikbsSNrU69MjNcumTY4yeErzt2MfNms3cEKNVJBU8cTDPoDwsZD2CUE7W8bCfQDsH6N5HCvDkJr5f3ZgeRbMyuiAZZ: '10000000000' - DdzFFzCqrhsuNnToiZ163uiiBWQBzjiMVugy17F1n27KzyCmB5AKewPyzWqEFWU9Jtoghnm6Jr5rXnU9c4WDoD236iKZHK4re67s9twj: '10000000000' - DdzFFzCqrhskns4CuEYywAcDBrWUU2mp3Gni2jkYUg8osrGKPyonz5oBNMMXicyWKiFpXDtearQHed2Z7qK19oNaezLKa8fAcjL6LGE7: '10000000000' - DdzFFzCqrhst5k9WRKnFRpUK9b2cznh5b7NRkUynwiJRec9wdiBbyP5PUVJfVXn47NFmwLcuMV4nLyShBVNpnSWbj2juRjquxvKwVq55: '10000000000' - DdzFFzCqrht7Un7iRMdZCjTZzxf29xKMiBLgs9YUyktmuk8qMwu6nSHQ5UUWf8k3VvP5NaY56XMJwnroswpJveV9T1YPpoEPLMnxS195: '10000000000' - DdzFFzCqrhtAzxVLejkpxfh56FXiBz5PCUF6Ea4LnNc5PC9uSSjss7RFMErLdNCDiETPq5m5ZL36Wdw2MSmmu37vmAzwikzNzuVVT9vh: '10000000000' - DdzFFzCqrhspAEmqDbk5XGWHD8FETFnoUAC7RNvBRnXZqnv4CusQ6oo9gKf5Z1hsiC5rnC6nzkwcE565ouA5MjGGJDD2JV4pqogJppwP: '10000000000' - DdzFFzCqrht7Xw9GSxcBzSrKpxYniA1x8gb2KrHDF67NMzhLMyj7q7RqZjdTFdoVMRrC667vxjfDWVb5NVMEmqTSv8R9yLPkRAoCZbtd: '10000000000' - DdzFFzCqrht8czQpERWB3T34hVP7V184HnUYsRR2U7tUYKvdrhrzswu9oFzNVz19ZFZy9tA44G8FmRmGrCCyxVeSLfxwqUQYMsHCB5UV: '10000000000' - DdzFFzCqrht8kukQRhwF8ZS51Ac6ZWiyBex4yevB1phtcwcmXCrEWHdJpKAVRpWrs2WpToK7YzHXVqRS5yCb7FdRotyNJ8Wb3QoZjA7p: '10000000000' - DdzFFzCqrhsrL2onj7RdwXZEBqgFpSHK2BcWx6DoDppJzd5Sszi938Ss3yiGnjH6jJVuPfTZ1m9QtxBPWQoFxdyoLjkt7gic5B1ZWdfN: '10000000000' - DdzFFzCqrhsvpQsmdyRD91kuqvtxhdWMGE6XUQQf3vo2hdxN9vJ2w5RHvqoUqycdLoEskLom6bQVo8YG9Ys8dG81ssD7gWm7WAzwgcG9: '10000000000' - DdzFFzCqrhtARo5aZWRwmgsHTGvQTUaMyNjcv6YRt2hRDebygBZcMBYuNwJNU8Vhtw9XuVy8cVR9fJQ4imXNAAxoETgmser875DtB7Qd: '10000000000' - DdzFFzCqrht2phxeuGkxu36gUTDtWX6GniKuANNFa9SxhEjajWtPzc5rumfvSbdLw4NQUyoxSNsqi3RhJedtCchERvp3chrJhFnjzTDr: '10000000000' - DdzFFzCqrht2cU4htvHMeBLiPgDDmLxopVi2Py14tmDhBfUYsZXTTsLs2Tjq9Ne5wUSQYHZWqE8n62GLQ2vgJ69jBCDpjZ7J321q3zWa: '10000000000' - DdzFFzCqrht1FjxeaiwrMp3vP38SrAuvB21Kmaar2TYEWapNG1qdsheXXzU3N5PWrt5ZRsHMuy8fzmAxtxX4Y82EXu85VJhG8SAEc61K: '10000000000' - DdzFFzCqrhsgR3ytMhHziYpg1sEG7cYzvicoHyd5kT9Mgi4nLzwc32fUCV7yMpSWcarAU31MtCurnpqFoSCVsabiBJ8A3HPvqGu7debf: '10000000000' - DdzFFzCqrht9UWFKQUrmHZggsWCvc58aoTPBNPRYNpEaxxY358ddRYF2YXXdRpPfbMdnf6hqqK3QRxhtTxiWUZVBMddKDGVE4CuEsXeL: '10000000000' - DdzFFzCqrhsgdRAMQ7JuP7jS8d7BukYHsjXK69FEpZAVquAJ5f3ksjNP69HjAdZufGp7Zfu6ieEwDBSSkxZTiHHWuL1uyJWVwH72okwa: '10000000000' - DdzFFzCqrhszNccp96SsQZxkzqMBSs5Fwgqjt8mWE9LVmAeCuj4Kw2SvywfgPA5gTU1KYCkZ3G8e4i4SvodXPnnJmMEEAybFe4HPBAPz: '10000000000' - DdzFFzCqrhsjMwjN9yzKfqxBsKBSf9wE4oH7JtcCfaPmugCyz7PGYNzRByA3vHxVA8RA8ud1mweqCyXqL3T6uNs7dSVCEQKFJmDYSJdX: '10000000000' - DdzFFzCqrhskPrKFx6rw4VbGzY6g1kq5K7MTPzJVvDXz7DDNMgb4KsiaDLGHXErTETyX9jHr1t6Jq16dnyDS72hRXTLapduf1JDYATYq: '10000000000' - DdzFFzCqrhtBGHMyjRhTdWkmVoTUPpbx3AUZiKG4C1ytVBUhmVutdXzcU9jcyUBwQ7hV2b9cZFrPh8bXZaEWUSWaV1atSEDwMjcwBD4i: '10000000000' - DdzFFzCqrhso56Q6MoLicTf3xniWQFDUKAGAsnMBXEhqLWzCtiDHE3tMvLu2YhRAdfKd2WF9jVj9zJcan3hvijgytcV2vsFqioZ9ryG3: '10000000000' - DdzFFzCqrhshTd4CpVK9NRWtcJ6A2qL11G4DG1A1eZ6yq73QvsbuccWVYrsZ4k2fu7qjsZjeher1FVQ3SpfgxkWV7fkjAHoKKmoUPiAD: '10000000000' - DdzFFzCqrhsoez4kAFHpDrUXeRfGoi7yxEwjRiiNAAuYpgtpRJSiAHytKyr6TvKgoYjKJsE2gzjVkemz2mUm9P7KBEHt1PpZrwFTJvEB: '10000000000' - DdzFFzCqrhtB5MddMzrtV3VMgzSu39iR7oNbJTUt4JcQbMNBHVpdHSn1UAMcS1Tg8CjryaSH9LjvReBLCMM6poEfUApkixb9uLeHfDST: '10000000000' - DdzFFzCqrht6WiMPLcU5QNGvN6HwqWYTZxyge5SMweQF1MK5zibCKqgQjh3gvLotSwKcYnZfupUUrTr7RYHBdrhrV99uJUyVJBDvDibb: '10000000000' - DdzFFzCqrhseumPpQeXsd85hrwrjVeiLd1xEn846veoYkTh9yiN5tu3v6tKzyRFAptZtTADaHcC4UmEkHMdwpBXHdNS3xccp2QPGbLYE: '10000000000' - DdzFFzCqrhspHH6gW2PeSjuZYiEYGZTB8kzt47bz4iaZpNWvVseZxRQKq9iRXLZ7hKAhBLJN1LjdaXmorucGgBwH3YAeQs2GU29HMD7x: '10000000000' - DdzFFzCqrhsqfET6V9bP9BFbqrfF8pPqW3yFu3yGi5fcpc8JsgTmkuAaKsRGMokSa7AGYGiTJpcbBiNYZc2rSkff8aECKHTR1ukryMjD: '10000000000' - DdzFFzCqrhskxbuAH9yagoekt4HoTnqFJfTvniwZLn7ZABjp336jTeQe1wRzw4ftoKRETNzmkfQ57fLqnLPh1ASHg6h8GL4xXPUGnXYA: '10000000000' - DdzFFzCqrhsxkiMYpysqZFwDESf5DuABcB6Lu6Ej99q9SF1y3xdVU2yzkQ22oigNudEW4GmEFHa28esrZvGszWRRGm2Qdo4WpakKWVUG: '10000000000' - DdzFFzCqrhsiKjmRFtZ9r4LcZGXnHB3kf3667wfDYYcoJ5kgmjdEQebF6DLdk8rf81ByPWXsbUSqohPHegdhdvH3nyagnvPd8JEzT9Q9: '10000000000' - DdzFFzCqrhsjKBHW3LGtau38Rjfc9zNJL9aGfDpryjpXPFeV8sKVRMDENaBJKDnnHmUMu64KXg7Xxvk7WkajUCA7ak1goaDTcc3SsnRn: '10000000000' - DdzFFzCqrhsp6YKqcPShov9twJSUVafhfLFS77XBtgcgybD4TnKXT1GnThaEVfSQvHhutjvwtxf2Ae9BaSvxbHvA8KXKkFsZsMnNvi2p: '10000000000' - DdzFFzCqrht5b8sXXzPzvsTayZyoy9VhREPe83n8pw5B5fDWBH79VL7XoVrcHsFzEKgaGD8wwFehEGNhzrrzqhe5XoN8F96AAu4d1Quh: '10000000000' - DdzFFzCqrht4UfD1oFbgrDDdB4HBGa6T19uqyWp5ukVeQH2fdsPNo1pfvHAnbr1WMvsjg4PpruGnBB3sXRH2pqc9NDEuPe1e7C1ryGVZ: '10000000000' - DdzFFzCqrht76xYGFRn9JWSbQoGr8nKeNGGopVaoWv67DzhbEhyZHSkoG34U7nVmNhPtx9gFyGFDjX3Vo3cw6DBFTWbhGggJmstrtv4C: '10000000000' - DdzFFzCqrht147RYeEX53ijQkdTP1r3JwYtXehUpuDzvkaey8BXQGECWycJojgMkzu2HxFMXwoHjds9ARnRNCS2WAhQuQqx6cTaxsJqW: '10000000000' - DdzFFzCqrhsvee3PjuwuWaiMt2vjhQzSWNk8PLKtqTsScTPeyT2qsFdGuFFiRhg3HacyeVJ8CWeNkyCbzKKrR5i9soVGidUYJjxyKrEB: '10000000000' - DdzFFzCqrht2hNoZusyjxGJPWQQzRw7QmmZL9DojQ9CSetv2EBot1XV1RaAwuECKsWEFtrwnLcfo6HzENqQAVk19B5gGgS3FcCqaYE1R: '10000000000' - DdzFFzCqrhsyuuABmjPmdAdLCpiA8J5W23uj9sJ1RQnM2D3TueQ3RFgk2EmsYxF8QUNA7E4vk4AAsaeD8W5PGGwyuHHCwG3R6bseVLT8: '10000000000' - DdzFFzCqrhsja25MAkqAEPQuTrNNiEPPwfKW5hUhbdN454iFuqtFF1uRN8VCsrKG7phPF1dKMLby5Z4SafstkEMSsAuk9uLUBkfAfGcV: '10000000000' - DdzFFzCqrht4grmqogVjdp6P5UTN6vfNotKuCFbPPT8Co1JKe7gAff9HuF9UmLzpypsdyXjrq98QV64WhMk8q6RiHLwbMn29pevPVbLQ: '10000000000' - DdzFFzCqrht2W3CUCMMEGMopZbRxgqJvbAvRWdrZ3vB9nUh85jfAzbztUGuUdkAZiNPvUPaiYuUj3EW8JzGtPCzaAL2tNg8zwKtzbHJ9: '10000000000' - DdzFFzCqrhseT74HR7Pakfdxf1q5Ya9FwDLigiTXCd5HfM8VCnZ9CFc9PUL563X9uNK12s3oefuuhDFMZjGf95Q64QSyvs8iRUQjLCv4: '10000000000' - DdzFFzCqrhssY4kLW1s88sEfi7TXMUpCv4FBZ3NASyTy9nWmWo3xJiAUHTGvLZ9uYrMptCaJQMbvhKVW4xrYU55YjAx5iir6QTrdYEcM: '10000000000' - DdzFFzCqrhskr59V5PhsihPEYqXWETFohYVuqk6fZsFDmTzLpSe29dQeDNSq3BtGqDeq2TEyXgfR7cLGqyR3HjXU7ezCpHFE6PaPtbGm: '10000000000' - DdzFFzCqrhsga2K5TgrGWRdfLpBtq8TWiz6sSvvps4LXmpkzTvRVWMqhEeWbjTSiTemeoKLfZ7JgQXgYbv8yLghGcLG6avvytMTVQqyP: '10000000000' - DdzFFzCqrhspRn8umM8KUxVBXr897ub5nJWvBziV3CK7KZ3A66mfgHbAVGrFDg77LvYgLtPSoE4drkHfd82VPJfCD7uqRFSCpJNWPqdG: '10000000000' - DdzFFzCqrht22FgBsNMKLQzEz7e13vFgJnY9asRZadUHh8rsymAM1W87vigUGa1avr5odr7VeyPfPRWHSWdtvjB7ZSceFzmiYCfgRoum: '10000000000' - DdzFFzCqrhshLgMEWfa84iaiph568skVh7zso4b4NH25eCkQc2czA4DGCodrUoogffXiCcmYsojZ17V4QuVym3ExVedxzKCepPSpneoq: '10000000000' - DdzFFzCqrhsvq9SMVfQpuaEQutU2fSCpmNso66oQ3YUYh1BXoYpMa3nytjCeiTg2kFNuzAyQhFmvxofQvsxNpGjLCXE4tZ3r8MCXQqFJ: '10000000000' - DdzFFzCqrhstdybP394yYvpoD35cMQUycokeFaU7v4Z26QCokWhHHKvKtqqaiWSjVSvs7PbULLuMn7PnPKhKeJuL9F2Kv9D1LxUJTJ3g: '10000000000' - DdzFFzCqrht9oy8naJFg1wwKZU6RyKGrbm81iHtige2mf8FjwhorMzyf26KgLeQfMpK3To1eh6LYujnJuvCyUAuVPigrQJmz3zg9fJJc: '10000000000' - DdzFFzCqrhsfDgGE8DiieXTXs3KEMTUiyPM58xrhpXbDgrifB2TW5yjHb6jh74bZuqPxRiZabpvj1L87EycsRyxHGS1L1JHNTRQbh9Ty: '10000000000' - DdzFFzCqrht1wtyWjNuDqdbrXr2dJmpaKG1iWrq2waWemcjQN5GRLfdx4ZnDLXfVQh5ieNs5U48JeB2qSForfNq6ktn6eYYX7x6f9d3k: '10000000000' - DdzFFzCqrht2oCEfURAN5k3pfYme6VVafLaER4yHHk2KqxCZM53aWo7o73sfAwugGEnUJ1e9bYtgyHEf4UxVLhyrBhUC8rXnja1nL9qy: '10000000000' - DdzFFzCqrhsttvN5SYbR57HbjLCvKM9UMcEDGL5WYBcgjCSyRyqWcJUM2pkPtcddkTHNSmkwP3uc9Btvhg6zytPCQCr56eL1i7B53Wxo: '10000000000' - DdzFFzCqrhsjbKxuDaCwuoi3k8SsDVzD5zvjjsNLp9C9Yk5XjhPk8cTWYzErtStoXRwMfHKCkMADJWikXkXgY1CP2mc1UpDP5dPENwFc: '10000000000' - DdzFFzCqrhtCM1Ltqvxh8SYXje84FqXPZCF4rqaGrwe9cs2hHW7kEwA7uzoJuQaPM2Xy4SkNCqitrvC1ia8cZvANWABpYyKRq5mN8wze: '10000000000' - DdzFFzCqrhsfy25BFvQotnd6zMXaC9QqWSV7HJa1SBEHxkiQHR5zCwdp25Qg2Nd54kVLfmHxUFKEJF5y2dUkHCqz8r4aaW8rSDejSjYm: '10000000000' - DdzFFzCqrhsyT41UPeRUU2BQ2wMHUSJXniDJSiqdXvN8tesCiBuUMqfq3f21SaKPywqCHa2o2KyTBbfWD8uJ6M79YSR3xa4aaJDdqqFV: '10000000000' - DdzFFzCqrht6unWrSK4wMHnYzbKs9YAxmHf4JHLe98gKFiQJMzCFZ4qRRJijbdRYksxRvHMrrx9VpQXFMDrgKh1sr3NocHUbTVAWBc6q: '10000000000' - DdzFFzCqrht6jA7nTeiT7JkH4KMN6EbgDT2tPswWznLCHNonybtwWw987HbwrMYtXRC1spSiqqHf9zr38Tvu6ZjsFnfRGCSf5nAcNqAC: '10000000000' - DdzFFzCqrhtAzpaeQoSftdDk6V5GQFCUCMYrTUL7yzwDs2t44hVweXxMYyoUto827zmp1ndmMfCkqHuaDgozpCxZLpU1AiuxVmtj7dqA: '10000000000' - DdzFFzCqrht2k9HVcXroFyigNLF6q29rnUqc87iMjzULiR5MrJPFqZiG9NYqim3LY7oy3Vva4BEo1nLpj2XMDLgwztibF3HAVTmtqRxQ: '10000000000' - DdzFFzCqrhsoSWFixq4B1ZxGp5dJRwcCVaLxKysvEsvsFoUr4vn6XLDdMExA7QjPm7XZDtYD6NU5gmx4JSNxw4cazoLfZ4YD2YhTdAKF: '10000000000' - DdzFFzCqrhsnHGn6bzS4USh4SSWt7TGFRXvr6to2UgCAC1PdwL2myVoZ4jM5Y6jSDvTziyoDEbm37djUR1br9tEQr4prwzQMSHsEapxt: '10000000000' - DdzFFzCqrht4pnJkQx8bzwztv143duEYyKD9BaRjg8nugjMWpE671ZG8rnU3ArfqsHbdasu5Zv5rhfvgfmwEi1eyxXzNfE6YJewGyD3s: '10000000000' - DdzFFzCqrht8SmwQCteG63pBGLzrmL4LnSQfoZQmPsRgLjBSiKgnicwPjvufCYEbXVubU2V9Q1g1JaiCSwGxvhYiBTxuJ8FNe6MXTsVt: '10000000000' - DdzFFzCqrht51jL8MpYciemXat45wWv7LuqPS2dY3emJYVrWFFyBvCv8r5KVuTwKA58SkiV9eWmWXVrT3Dq2zjEAW8unSZACWCPnVZPN: '10000000000' - DdzFFzCqrhtCPHSeVrhQGwiSa1mcDyUPb45WdkaEqKTUkS1SxuKhxyikLVP8fN213a3UTrABSuWSy9PenEutVj6ceELEFjBmHJViQztg: '10000000000' - DdzFFzCqrhtCQsAPnNfZsYJ8k6hanrwrf813Lbgyz15VVLziFZjuWJiTPRatgKrzMQdwraKvk5aeShudVbeyqGSXtp98QygS5a7eXzd6: '10000000000' - DdzFFzCqrht93kyKopqa6JkJbiJTacgq16krUoE115dATgU1FPXT4xmNc87TH4AtUgrrzFPvGkDzqtuz4L2eqb3fupBGFciy72Mwcucc: '10000000000' - DdzFFzCqrhsvso1dAhgEyJRGRrJDTTyBkhy281rX2166ywShZ1WG1Waok6xsJ6jBUwaH1QbMQbKYAArLhgpnLtgV6mqTwQD9nQvW11Fq: '10000000000' - DdzFFzCqrhshBx8veya32mipNzcFbMhgg3GAN4D2TfGf1gim49PSywrFWUsoGFcC3Uv1MYfh8tzsuTxKbxNVQEUbpKDv7ajXB6wLJkn7: '10000000000' - DdzFFzCqrhsz8UJE4nmYQtUnzU67kKzwq9AfLEG1eMc6KwNschhS1kr1BozeUwrsFtFxrquomCQt1SuUScnZv6xfJUk3GbHwXa4de8Cj: '10000000000' - DdzFFzCqrht1XrU8iDYgEKDxvBgWefRFc3fyiPRDxkKkJTBVkHKnqbfRGuAmKHJRdNEg7hdfYz5JtLYF4LhyFsSF8DJ9XEzae2qcZCso: '10000000000' - DdzFFzCqrhsnnRfpwZcmMViPBXekT1EgWLu5M6GR8uLBaizjLArHs55sw4zUrN5sAUNcYKqDBjL39bnfFbTD53iJKi7bHTgEpLrGJDuP: '10000000000' - DdzFFzCqrhsrofPrkxdJ2LyYnZoHfqrUdRGd8S8d1VJDePGJuYRK57Rz4dXcFNyCfAgwdJrNFzbgde5FT7XduZ7SrcjGeD6JQHr7Y3Hh: '10000000000' - DdzFFzCqrhsitf8wPy6UToPsP7wRysPMCb4ZroiuaTsYCcDcU3VEeCvR5muVw83GyzjX6PiPVKC43k96o78Rqi1EQRrQqfQGRUzsmNzd: '10000000000' - DdzFFzCqrhsrdxLCMeLWbKpg2kNK7nxHPc7Lo6pCkGRxSWdCr3ZQ3iru1TzJms1fyaDhDyrmkWHgPQahc39fWuNvBZgxxgxT8PsoV5Sa: '10000000000' - DdzFFzCqrhsm1dFRtiJ3mCP7ymy1XLTtf42egGdNJcPKMuzNQYytvvAq3BYVFaxzjypq6kpJnXRqBHmfY7KD1TUzjmYSe6DkxFioAgHw: '10000000000' - DdzFFzCqrht3UpUBseRATusNQNzqCU2dW43A8efBaBiuNsStxL36LgmMSRWhk3LAavKXXtav4Sa6mskHS6cSkr1xsAJCKVdGUKScpJW6: '10000000000' - DdzFFzCqrht9EDG89L7nL5xRa837Bzgd8ZNzWgyVZ6aQaDDubRhaCkZuCvrDT8yJSKcgerCPeZVcbep3Q9PAUL8RpuBjshzRQmhcaHCL: '10000000000' - DdzFFzCqrhtAZnJW1BygFYjQ4VFcvrhM1D188zNLCAVKctbpPURKrzB21gpQCUZqh5EoUAFbPGjTggmRqwTmY1Cwrk6pbQQgNJgZGpC3: '10000000000' - DdzFFzCqrhsikNDceYgYHAkWxuZKGLHtzhppTbh4JP6Z3NoRAJCTsLt6GPMz24J43bVxzUswtxYP6J8RHKP8yXwsLhMRfNfheSGiciR7: '10000000000' - DdzFFzCqrhsneHieee8wG7MV88xECMametFmnqqfgRK6UUc3WdXPBTc7zB2sz5dFcsgXQVeyARYCb1KTCMxQz5QnBEhF198hGWKcCuG1: '10000000000' - DdzFFzCqrhsgLXb6P8bdZZrPMYAobcQ2YtTdWRGVGkggW1mgtQqBZYn8wCxGqqbTmf5yFWAAXWvAw8FbLWUVKuNDcobBFY2wEHhYqdRG: '10000000000' - DdzFFzCqrhshK8w7NS3VwDXujDhyBNWCBVbTCBxXmrrxiWdpPQcfyHARb12JHXT8ZxjQ2jGZb657GfjniM7b7UgxirhHtpjF4BfSSrJf: '10000000000' - DdzFFzCqrht1rvbLnJ6wTDeTrkmhecufGuKz2c2FcNW7XqvknouWidJBuggDiYktq39i4LRUYjygdsjjmDHj3NPYWz5Wd57XA8n4sjjj: '10000000000' - DdzFFzCqrhsoYGPs5CBAZd9erisJJcy9ppqtFVxP86VYzqMTuSWSzEbQFdmP6X9LxEJ2Rg37rG6PDvuV4NPKaTx7EAabzUabjFUyTACb: '10000000000' - DdzFFzCqrht8Hx66mQdCm7mbdWHATNsAbRxn7Gvu4NSF9QCDmxiujhZcdZTWBZ6QSWMEB8zeBWe3v4JWJ6fb7ygY78UALHbyY6iUwxV2: '10000000000' - DdzFFzCqrhsfCUG4oGS7zjViF1Kq5i6R2tMUg24M9otSjbdFvniQ2DQEEEZjAQ3ajg7zMf4JJNdTGFQd3gWnVMEzi1d3EArqjsqi2S8E: '10000000000' - DdzFFzCqrhshMjK4UKScLNrirHEFoG947jyp6E7nAmLNXz9DM8UPC4AGeAzDRpVrwSMJj5aXXuh6CGYosAZG7ydm5ag62Cei1v8wVFQq: '10000000000' - DdzFFzCqrhsvikunnuxVpA5xNMoGVEEQY8i9ehdipCoQmxxC4sU5wbXxv9DvEQX1dhpRYuXVFca6V4didAT6QTVmZRGSSrtHT462gyxE: '10000000000' - DdzFFzCqrhsfpMvF4abFootCnqqGZTZLUGTUG1L3vMzZAeHKkB8Rs8b9iwer8zB6tcnsHXRLgenbdoV9CsV2bS7SjvxS6DdA3Rc9GJz3: '10000000000' - DdzFFzCqrhsq7ARArA1xzq5GhM9eytxFGX8hHybBg1zYuxjy5GVR1aK3QjrYXqqehr5TVLyPSfLNLSU9JL6GeHchYFdZP8NkLmUqnCkS: '10000000000' - DdzFFzCqrhseQ5wfpYVXPdDyKnCNaRx8n9BJ1jz8V1hJ6E7B3pXQMJgyhzuAHfzc61v3F7Fw94QcsELdLGBbv5K7qHRKYfgDcp8Foqx4: '10000000000' - DdzFFzCqrhsfsnw3pX9vTEuuJSfNpvhxZFXkSAtVMNxpqJocpgC588E1LPpBFsaZMBjmhVaU7tR4ieXkJhR9unhiyqkgffio71mRzhey: '10000000000' - DdzFFzCqrhsr15mNYiBhT8JDrPMJnsbjvSJmgyJDfvruMqkfF9pKKZ6hfyeNAW3NKtqT764muqKjqjzepJQwLE5bx6oJn7UmbTL8FRZE: '10000000000' - DdzFFzCqrhswjvnrbemRkNQRNTQT3rUDhScuNxVGsPpomZC7oc1guLiMFj7wupJiyDkfHqJq1fQSDFptPEkFuywLYgZxjK3L4CsWdjUZ: '10000000000' - DdzFFzCqrhsi7C5wvHSrewFeqh9DWKtL4EEtFmdyiHPoxkUz9Yo4XUQGVkQXsP1UaepoRNM6grQvj8syBgqRq8T6cozavgXQQrFzUwUk: '10000000000' - DdzFFzCqrhsk7aBFn9e6N4PZTGmA5U4onA3Ug3WJP36hpHZ8qHK29N3itSHGi59NZJ2SN44B8JEBwBp9PHsn8fyi15RTGUeegDEqBtq1: '10000000000' - DdzFFzCqrhsjvvGJeLuQZYrU3e9BGQq2xi2qTJoQdW5dC2QFDVAeSHJV4C58zQaEuRgZcnQLkymgvzfnmrpTtwhFjcNPd9K1PzbRM7Te: '10000000000' - DdzFFzCqrhsgdF5ewqKgZoefu8hYJ1NMkhrdszu71f7xKSGoQoox7PZFYs78GHuM3Q9sNiRSGZqArVLie9Gd3aS4pL9sD9ZJu9t8tBZV: '10000000000' - DdzFFzCqrht4pxhAijfxNNb8LiDjL5ut6LjvMRHyErYRc3ttfpBZRCoWJR5Yb5WTQTN3GXVRBhh6rBKm8H29AHvkvaif57pWNq7f8QNp: '10000000000' - DdzFFzCqrhtBWFa8BNP9TUVCAncfKs6Qh81RiYDwohQrKkaEGDBJYDap9FDgWK8FmksxpXBX4f8oag8i3V5PKC5kiFvggeT5euyJi2i7: '10000000000' - DdzFFzCqrht8vj34iTcz4CixanAkgudw2xeFaSW4wSf5pimtSMXdBA5bhshJ9xPKddPyUj6Wk9uigEMiuQWPYBjmKm3QdQHAPUfqEvjx: '10000000000' - DdzFFzCqrhsvGMTrYTi9FZoysTZcziExju3Srq58zwsPWxkbabCM1Cqa5JY8m4pEEj5tjneMtK8RPUxYTHkDKSv4mkWtDwWk9h8daUhr: '10000000000' - DdzFFzCqrhtAPDcnp5dLfw7DnPDSmH1c7ESSDEhnA9UpZgC7bH1jBfMbCUEYt5kHaTNRGXV8uMmCiPTRpP6pvnyjeqov7NjQkhJsdFya: '10000000000' - DdzFFzCqrhsecVteqJ6rfrHryNKEfJ1hfTA5wB9PHe1ny6Re895knu4ESKUMUq7KWqth3NTH843DpUAiTuv89SZcHGBJKTN46i5auXBJ: '10000000000' - DdzFFzCqrht6nBMK9KR8dpqLhAM52F3RCXVg1rN3GqKpS6SJmnTUEkfbE1wpE3QUcUvDpsuDz6saj3QX4oNWfj2xXBHsNEnYvEFPPgP1: '10000000000' - DdzFFzCqrhsuKMys2Mh73eYpLjbSv3AYrR9iuPNWEEuJLHsDATynafibZMBXXuA6D7rhdAzcfxrdwTWHBp5uJS5NyudhX5YvubQrQBT5: '10000000000' - DdzFFzCqrhsho3PU9uewV1wcVqbcjjYeWJUb9cC4MFcNPSpnQ6DuXmDNYRUJqTCHj5ZRJVzvyaGV8aNuNT2dba1QKoagyQEU5AVgzDdu: '10000000000' - DdzFFzCqrht8CYde41pumpqH8ATqC3V2UuBzPthLvuxyp9Z2oM8iHr8Uuedb3sDjAaf9cGQULffMdwnwqLwE2CSQUk9xbfeTnn74bBeD: '10000000000' - DdzFFzCqrhtA8S17spuytNxR1mv4Wh6MV5fFTEFWMP5NfSBDLuVmzvcobNa1LtsWv2A2EwKsn6EdfqdRtaxLiK6Z8yUpG7p78xTPn9p5: '10000000000' - DdzFFzCqrhsjGqV5p7N7ViTUdZ3zLw1TNsF4KkhbtVqqhFfTBxmKsodHzSz29X8KgnNPDdPu86g2qzWa3TfTcthNE4fqbKA7KvKeCSiE: '10000000000' - DdzFFzCqrhsvd37ZutmSWHe4MgNNDuuDMGVEgb7XBG9MkUnHBTPwvmZVfPZCQsMjDf1BMqFjVaJL5fH1sXC44B7TonUny86mbhXS7j3Q: '10000000000' - DdzFFzCqrhsf8vUNgN8sR1xhkBuMZrPcpxVJeU36edc2yhxRzvReTGCzhEJEERRvhNPSvtrzf5bVQZkTpdF7LJznPx44MBkSmp3sGDHV: '10000000000' - DdzFFzCqrhspw9dD3yHYECAqmamru9b4fNdMiQxBoB2FLRaVrVVC51LxTchE9nxq1XvvbjM9mY3fQwBTLkNt3Qi37q3H4vqqkc6nvi9H: '10000000000' - DdzFFzCqrhsvaG798uncErvGtbk12Y3SwYqunB1dZ9Zob3r1N4BkPxrXG3cgri6ddQoEYbtzW6ZpGhz2pZt7mXMseZDTTJHGBfwQQNW6: '10000000000' - DdzFFzCqrht9B8Q6p4LYDs3MitMyC3NzxUWshQHmBhZXDBrNzmRRk9xJmcw4Q2oNfAmbNiSX1zUDGWXc47suSMKaTH7fpQUWPjw3VhQt: '10000000000' - DdzFFzCqrhspDPBJXM22dRKbQSa1P6RqPm8E4QCwsgSXNTdmVCmykt2xCBtjp8Z61McvBWGR3ntsntxHNSQCkntYfFHFr7izD4eEVCw2: '10000000000' - DdzFFzCqrhsqWBezj3c1aT6tVzHJKJfFsuTXV5RNzCuQ11bR585jCLgz1BfwCG1U2BBJSZtQ8UxLSW8SpMwnVrvUjahbFnAy4vVM1XM4: '10000000000' - DdzFFzCqrht7KBByL6LVBYdyqMeuhJpuQasfQY9eRidhLqQ5x1oKvABdqgPpvbqfqgM2ALCufi31qJRHsWR3Y2ADNe5h7SLyPGRyJH1e: '10000000000' - DdzFFzCqrhtBNdqwfmYpDnrR8TpzgSeyUrviMj27RhzKrBskqaLphpaBkHNe2qhB43p1TgkNHa56Sa8RFRPpuAsqwQLXZFh74gqJAozS: '10000000000' - DdzFFzCqrhsi3wBPawwQrsu9erKoxqZeVsiHcKQTV15SUXvxcmvDevWM5A5k5UwbJizfxCCp3FBns3tsCwSagpXUP1En8UVvXdUwMibB: '10000000000' - DdzFFzCqrhseKSAbSy9gtkd3U8pwg5eTmaokXYN4rBUJhUtz3PJ6vPiMdLrkX5eerchXQCsHc68QEjaNg27NcgRwJ7Xj2ijr7VR8AZLv: '10000000000' - DdzFFzCqrhsik4ct93Gm9L8oVvJVasEaefrQKtgv2214i9oQqXnCFgRrLsGgJMvyxrg8zqpQnm6dz1ktBAC9cmTqPhoXBcgnddrofVBv: '10000000000' - DdzFFzCqrht4RikzEYS7VAWQmhDUXYGFaUtrBeR9SXSotEn4rFHnk6iB4kit3oAnHHwocmH3CkeRiVW1Ek6wg2dhKoe97tDX5sJwd5iv: '10000000000' - DdzFFzCqrhsoGuX4giemBGZCqidjDvaJci4FQTdkhKoyEpjAsjdRq2UmDf5KddeugzoQtU38PDqFEmowDZoyq8NpxKbR9GRLLZ2EiQwQ: '10000000000' - DdzFFzCqrhsuafWiUBoqLiRtvicCxUGjaFjCnBs8qG9ghxyRDd75KjndNAvNxs1diLLorheN6k9azFKcssZL9yrccysgmNYn42TrLhLM: '10000000000' - DdzFFzCqrht5E9ycEhjoAqPy3Rbn1RbDwPwQ6oadwqs631ySreScHSmzWKMfQEFpJ9yZoqeenViDMa9FJCYxvUpyM1CAZ8EWAViL56jw: '10000000000' - DdzFFzCqrhsf3KZvkpc18GgUjEZpWeCezNMdCpYVWzFEvhtnc3ofkTWvhtwk3BFWDmSZJTmwdGTRHHQyTVv9z3hZL9zsPPBuwFbQp7rv: '10000000000' - DdzFFzCqrhtBymcjBernduecHeRE5jL3crCWYb63DEu6uhKckg3tUdjv6J87GMDbPAcBgNGhw5KwpNRDQ1zsdDVKpjwhUeoiPtF4iSY2: '10000000000' - DdzFFzCqrhtB5K8KFPfrziDJQdn6dRrsAF2WAsypwHYMgyfkTMVuGiG2wDpMADgXxHGkDAABSx9Qf8zZr9s4JZrAvawASvZuPN5wEWdi: '10000000000' - DdzFFzCqrhtBQ9uJb3SJKTEUxozZUZderwG7PMoVkL1bSoBbkCZ3mfuVHtGemXZxkQbKEg7eU8ArEAtMSbk2HfRWycHY3hsXchnyTpPd: '10000000000' - DdzFFzCqrht8KddSbpWJWgQTG6gsCQXWmyi1dnRA9k58P29myQjErgoSazFf4xMUJ5HC6ZXE3A8Ef8gz4DkE2iLjLJiKp2JGohUU2RCb: '10000000000' - DdzFFzCqrht4Z7oVMF5FAbZFENnhUGo8HDwi3AtvBCewoAMguJMcusj2xkZ1G2KNaeN7e62vi8gbKcaURc7jVPHf3DK6N8gwA2rbyhBn: '10000000000' - DdzFFzCqrhsqdbMLcwq1ir9ttKk8QDJBuJbPzCGtCifRuq23K1k9KpkrdbuRWmsUb1nHJwHvEsECHf2Vo34cem7geb8nVemDuGzMUTJ7: '10000000000' - DdzFFzCqrht7U2Eys87vsZYbYwRTtjWvc1drULS4pk19QE4duecG8bKN9qPT92P4rkahCtr6MJj2zPk95aSN4f49HPd98KPxFtdTVKnS: '10000000000' - DdzFFzCqrht8eBsZcMSjVMXA9MPMzAqawGyBc73TkjzH53mNTF9zfyHUHPhZibmJSCjF2LY3w2XrQxZ7F3fKoKuH5BuKfhjRwx6eRMk1: '10000000000' - DdzFFzCqrhsdnRDN6ZLyNSzmdd59Esn2htSY2zqRZWkBEh2zA2vpkrXmWUb4RqPjSqPk4ccZHuJBZTN36gGk2HzQSVHKc1KzAv5yunhT: '10000000000' - DdzFFzCqrht6GTRsyLJdyHAUCnESamUmnvjncurQ6zd8U1vgt3tvkXFVntpLEynDi78sLZKpJVp9oGmmtKYhkTHDqdzEXi6JYqmiSSda: '10000000000' - DdzFFzCqrhsfB9FNhwvC9KEquS4eFQiVUpXdGrL4krwkXmQ49VszbYd7S3DJmSurHTozCjRCRyvsUn5TbRg5vK6Wod8em2YBum9a83pA: '10000000000' - DdzFFzCqrhsn3M1bzAvqPqA8yw9thMh3639y2c5iFR8aLvdAhKr1EhRFHY1ygjSz1PdEbmgs3Pn2ks1pep8qE2AkYbPXz71yEFyGq5Jk: '10000000000' - DdzFFzCqrht74ptLRT3UDR7refaNqtDFUe338o2FwgrDsYKYEhiUZaBALNm1xLxxh6iSrDGQkgYb1VtgCZkBGyekLSE2ebnXLEZ7mU8D: '10000000000' - DdzFFzCqrhsgXGomhLSrPnrezNzHAknpjuaWEgKVscbdM1JQepwEhap9CcLzqr96eBU6rfsxmJbDKjCjNNXy3pXmoS8494EFJnkZQa6j: '10000000000' - DdzFFzCqrhtDFEzUa2PcLpHQVQEjuytjfUC9WAGUkjtYnd5nCprVTmKfxhzhJd1jRkVh3aFALRBNgmf9pYKXoLvKe79x91UKCuPKz9xV: '10000000000' - DdzFFzCqrhsmhDuzuLRjzVQpnhTPy8d5Sv7SwhpuNqfctRotUu8tDS7d9ioBif66FBVDpNXdCpb82Zt3eZhvrzmER6wjCzLGQkpmmfYJ: '10000000000' - DdzFFzCqrhsmbgdPRJi2kNgjYELYFGC9jspHRezXXo5Ka9Zb5fvqAqaJdGSJcTnocRyURjHRbrW8pDv5C4h8AJoL6QeZ2R2ykH7YLvKu: '10000000000' - DdzFFzCqrht13CTSxXhUTBdqcm9PankB4vCbkPhK71tobVwkTn66TbQG4gCH5JPjiQJabxtfNWBjzJJFiAoZTeaiZvYqD5PbsHbnf2X5: '10000000000' - DdzFFzCqrht3T4RYwMSyioK8LWEMTSyxWngY51Et2Grj478dxeZbsqXtSbaawjJHz7xNMknuff9Evoyj5JAqdm7g3txwyzYmq1fi9HRn: '10000000000' - DdzFFzCqrht32VWaHYHhBpeA1freMs4Z3eXfoHNz6qrGHQwqQRPPprrj9gvECqTbS8TueJwsEbUvzXJZYpLBSBSxSH5bAphxvc9eTwrK: '10000000000' - DdzFFzCqrhsr1J4rtwSn72XjUPbKKHTbvm9hxuWqEm5jsojSiY1DNH1bpMmvoVRv6c19Sz5dCxbtF5XAn8ueF1617LD3NErxjRNbxc75: '10000000000' - DdzFFzCqrht7wF5KB4S7siCWk4izz3UJRnymjQBdPeaYp5utMdEUGM99DRkgharYPURB9cLtv3oWKG3DeCXELtCF5DpdhXQBv4Kv4Cir: '10000000000' - DdzFFzCqrhtAiKwbcUajTmuwa8hLyqJHgEioAK4iKyAaQrUGnKUdYVtrz7j83i8R5dXoPwLybYtin4twFEd7mPJCR5qKhu6uBJvKDxbh: '10000000000' - DdzFFzCqrhsthrBjqKzNbTkUdD1SoMNvVvf4cNN6Gh4u7uwcHJjHL2QzG5WEcekmuN6bgWa9y2eYombrMoaNRnhzknQyoURvgzTjVi8K: '10000000000' - DdzFFzCqrhtD22TCjJS1kdhcqeNSaCi5Kvb5Lvu2S7YWRSHAVaQ5SihumEfoMKkrfbqmS5iqHqBPFmh4stq9etTr5AodqWNtHMmTJZoR: '10000000000' - DdzFFzCqrhsyguE6CN59zezKjDFC1jSoCQDvn5g6q9EFXmrKdzFXWzV1pARV36XDTbDNQYSz5EFYEtCJZFGoezhMPDq8pkzeYMgWZeEa: '10000000000' - DdzFFzCqrhsnDM5SaEoP8yDF5wi2XAw2KLqYd5RzsUA2JEVr7KqTTQ2NVd43EC7mS93EZC5NycW1zrghHQLWvparLyafAyYNqnhwYEHF: '10000000000' - DdzFFzCqrhssVDCDxgZTPgPD3Y9WSLuqyfXRCSPqzkxtvFf77JDLMqhQDVHmz9r9fYryBMvg4b6MS58Cg9uz8tFtyZzwwQBNfAuJxqck: '10000000000' - DdzFFzCqrhsedHfrifMgyVUSVLgPW8N1QJQK3kfkRGSw68bNLcsp7TA8t2taoABwp2Uvdis2ssSfBq5k31GLf88HveRnKcg6YZ3j9iKU: '10000000000' - DdzFFzCqrhsnUZtisuaEMZvtT4PWPhhb7aSjTPSDf1QndHzcxAMBr97GrQXK95y4Bqmi82Tt1boVJAxURkBaeMsp3MPueNjizoF6s6iE: '10000000000' - DdzFFzCqrhsntNHzA9Ma6rtKWPQuHekuDB1rYu5aaKAvd5x1aiXouHipe9RDgdwKJQjo5rK3ErgZYrbiBP2yRErsqCRP8vURxHCTqx3k: '10000000000' - DdzFFzCqrhsqVUG4obH7CNynkBUoonCoAd4oVE4mSwixpjKjG4oWaHa5qTfvEjDitJ1wGYv8Mo7AW5GMFpp7JQSzjsav1bAE6jNoYfKs: '10000000000' - DdzFFzCqrhsjodeFggviQ3JoPgQ39buiwdQkk6bM9ik86PiKk2EyGTACCwdjqUyGHshqvteaZxuCyD1uQ2YXHyhjRxg7WYsNr39Bdbfp: '10000000000' - DdzFFzCqrht5MricGnFpFgPHaf1BeFcJ5v6aNAgXwi8jncyUy7ovcWNhUczguEinDYa2EpNtNa7VkHRdZurPhyNdgvF7tJjqeaPc4X7z: '10000000000' - DdzFFzCqrhsvr5Z5UhsAr74ZoWag4QhcGZ55vWqBtVkMDQy6pg12EEBhtEtzdCcXysP636unS78w46fmh9MwHJBNRd3s8AVMx5LyBGGi: '10000000000' - DdzFFzCqrhtCCWEGVB24pahVkjtBiUA8xhS9xqGj2YLjUnCW7iPs9zSHHEkdHiSvZzXq7dTD2U44tKSvxTTRpoUenC2PQ4g8dk1ggQkD: '10000000000' - DdzFFzCqrhtA4DvzBfGinwyYDH3djyYM3tNHkMxcvGVWL3uXxBMwNDaA18rq9aVGtgRBexG6uZ48xDDq1A5avKvFm1NwMZAJBsJ8dcpV: '10000000000' - DdzFFzCqrht3rxvH6rwC2rEHaUbtLebTe5RpgEjXB58owS6aqLpN6xmRg2gSKK5jT3m1taraaUMPDDngmG41K6BSazRheX5y429vJvpM: '10000000000' - DdzFFzCqrhsfXCNd1rPcDJFDSJf35aEY87T5gyNSbuem4zQZhLH1UxTATwa5Z3Yk2ojPjp5AmFAXFJDTuyncSnBd8ssTxjaEhcsRDjw2: '10000000000' - DdzFFzCqrht2kWBbE1yLNHVLGNdP6UWDqSg2U4GfSsn3TRJy6NS2FpggHmn1Az4E4GJcC4u6REJPVXtjptobb2UG6FKf3sf7w9yjwvJ6: '10000000000' - DdzFFzCqrhsiavT7TLS6sbVyn7xDedyQ4iKk3RuK8U53YLfDgdnMvuEjLhKTjjDRj8mwZ4GxxDGjkS3MXgqBmKK4oqwfnETYyVwN8Te3: '10000000000' - DdzFFzCqrht35KEh6KPSep1NAngHuaHqTrzDdJKrqwbM2buY9hNAzgaTw2onsr7Kyu6HkjhTpnft9NyywxzMwj6XUfSJeR3Ccib25hU6: '10000000000' - DdzFFzCqrhtBSroBoZ8ini2Sen7AAL5he7wefqUoF5oJZkrLRh87wiwXHHQRaQbwNT6CQN21TFwicLsLey2m4KXb5TKaCKAqx8cd2SrY: '10000000000' - DdzFFzCqrhssVuNLJYnqs2pk9cgoExcvymaijVmSQgWf8MDydSjr2tzKfycsH9jS2DuHWRQ2wr6pwecmMpMkLsb3p44kGT1QCm4S6pjY: '10000000000' - DdzFFzCqrhstzym611BFyakKbgCGjKTchb7eq5sPAPeZ5zAWe8MWQ8aCBUh75Bze2kuMzDMKoJbXCBBGiM8CfrjNf1RDf5uoxkcUBwHY: '10000000000' - DdzFFzCqrhtDB6tRV1PZhemDS3mrdKKLFGBXCsbxo7HJVyHJ9ei62hmcna6vwYGt3yd9sxrSTFJ9Mpkg7YtDQxKUETzXqnXy5y9CH2nc: '10000000000' - DdzFFzCqrht9FJbc2WiLVBt5WTh58t3SqZiQsiHjMzyHqqxQtBYvamG2XvCY1HMDVBNpNk3wdpAkwZmAuZn4GDUa7m6mPawntkqD8oMW: '10000000000' - DdzFFzCqrhsue2UvhSTVXFmQ4PkLAtz2BsTuxGZ8BMbtW7eau2BAGEXabyxeZHnp2QyH4JPRwJgxTUacGJ7yFpLjsKuLT183AKjceZsx: '10000000000' - DdzFFzCqrht27bMfZ8MJgTGwvbNq1uUwk5AUoRnvRE9VTso7QeZ8jP8tzoLhcrvjWsUYjAb6nR2zHaUxGcVVzUZoDDXM3b4nZU5SqwzV: '10000000000' - DdzFFzCqrhsfvWA3swTGsSyeTPrNNPQ2tyGz2cvzDWN7DTHpw2DesCF45YMRvczHckzYC5GjF56WiPn27mStLnwkyVRaxREbCdPZ6sqn: '10000000000' - DdzFFzCqrht17CyjGf1iGd4C93BWmvUUQPiUUV6uxnHpP5t25WSShWuGTnGNqt54mtsNnE4nyH1jUPjM7mTRz7bVzoMnLkLJ6XPiacp7: '10000000000' - DdzFFzCqrht4yMWp8VKn3wZfrBe6cZrzwuuPePBjtn3YjWNUe8dLKrE5B8djoGK6pVHwtaYKcZGsLcsyYTVE1REmu23gbWtRDFvKih3b: '10000000000' - DdzFFzCqrhtC3SSYgNQgXwg6pUBoVWtKdLCHUJA9sjmAeNMBT8o5wwUUuJCA1h2FEaUXMC6PoH7VS6SkREgmh2r9x3JweWGDUqC8WZnP: '10000000000' - DdzFFzCqrhszHozdh7ExhGLkTnc8bHzDFC5FwLEFBADTH7sLSLmKZBo5kKsDZzRdkyh4XmN3EsBkXMAszHfpMfAehj87W6hdPo28evAD: '10000000000' - DdzFFzCqrhsiupnwzg2dtkY3PVApcTg4Fzt5K8naJrrbkQrbYZ4XSiR7bvPW1kTZrR1kGDSTW3VqWr3pGSqRUn6k4s8mzFY6Ciw2H8Qe: '10000000000' - DdzFFzCqrhsnu5yxMyympCi6Xu5UiA9BMdf7N1RZ5rZidknBSKVBdkfSvP16KqbeuG3yxYvcsmDtSQb28P2TQnRzKPXQqvkhzMpcC4b8: '10000000000' - DdzFFzCqrhshTHrbfbxQ77EXcWnpiNvTgJEthxwJMDhfbCGxzPAaPrqLikn7kFT7FpNFHWyJTZCFpjz2NM2b6ELZH5ebKRFtCuFSytej: '10000000000' - DdzFFzCqrhsufFwxJGXf3ifThZvCSEF7dTEoqbmNABaosiFXpuDnRpY6wTWnWbJD5w3duPSeiJ869W5AySG6u77qKVSY8fsuGMXmJtC1: '10000000000' - DdzFFzCqrhsmBa6F4hZPLmbs2uPrhFHAAyiB4Zabh5KybAeMUf2QeWdWG5VwCd7tGtG4fFeWmTgN5ZfXDxdaV3XSe8xF4hjfpS2fAPoF: '10000000000' - DdzFFzCqrhswf8E7muMq2hWCq7bp6eZYp7zAeJZ5K3qz143ffknzU8ASPsL4dbPqTgnfQQ8evqGXwQmmAwasK1Qa8Dd2fEpFiUXU62As: '10000000000' - DdzFFzCqrhspYHyNvWJpEiCRNQtKNfVPxXngLatdktZkrG275Rw9cCog2qa4BtwsjcTjznjn6DZLWVkHaX2wRxe2ux6w5L1jMLhmPCar: '10000000000' - DdzFFzCqrhszHY9RnrwohyWQwh2nBZxtS9HSmPMmGHWEAdHa7yjAaHhvBYiKq8LHPmtWiPd3RmP8KaYNeA26nwqFhrWrpB3sHVPCdVCE: '10000000000' - DdzFFzCqrht2CjwUvdyhtaEfCpkWYtMvMUCbfWyFtNh2K4k2ZKPtnx6ttybVLKssa6RK2jdA8xW6DvYmT5aaomZYJHmyweBpHbthwBaz: '10000000000' - DdzFFzCqrhszuqMAoRFdhCT6JEjtXw9BW2RvenicjaA8Efd4WKWmRzbJudEiEmAXsFo19z7FFy3ZLkJP7JyuryfoQxXm6phQZysUrNAZ: '10000000000' - DdzFFzCqrhsqZAnQvqhGYDToPT5igTbrJoRoEL17cpEzdFUrLyb2UygQzsvbwhV6oNtbVTmyn1BJmo5xcidFmKQfwFVzZgxE653yGLF4: '10000000000' - DdzFFzCqrhsm1aZZ2UVgDBF3jtUpRKaWtYFSVzrnCywduAk15MGrp7z12zqGD57xxGgwXTqvFwpQCRsFZs8aduB8PgwvAfKFJ9K9bc8C: '10000000000' - DdzFFzCqrht1CtQ699FnjddzwQeot8jWkrSWJPjs26rE2295kpzvhFmSMzjBsWySVNrhMRHVXN53CfmuWMs523J9htfkzvhazDDgoBk6: '10000000000' - DdzFFzCqrht2dX88v2WiqHxjD6Tj4s9QzcS7CQVCHQBANyX9X62dzcfFwJ8jd2iMkMa6HUNWMxdDDcxag1skioC2TgjASwQkdWeHkZoz: '10000000000' - DdzFFzCqrht5tRXazUozUnXxkYSaGNVj7P3x5yuWenKcis316ZypGgYprNrvFDQnD93Wprv9qhrQEns4qktdsGvDTzcdUPpcCtDEoVT1: '10000000000' - DdzFFzCqrht2HzGmmJDG5Vmudu25cuCFnKkd8sNLurug17WM7gr9qKVpdkLTvUwGkqztKagJyHnTs4CTgrAQM2Gr4kr8HP4o3y9kLVpi: '10000000000' - DdzFFzCqrhtAewQPfHkqCg6wRe3nseiATEKtMQb3R1pSjKx18J7EZa6yNmUMvSYMqv81zFh5Bi4Hgqc7G5RFwbNf1eQSu7reQDVhfJCH: '10000000000' - DdzFFzCqrht2uJ1BNrNhkqjJ6tPwNXgQ2repfJsKAoaqjg7vXZugJtyAULYa6diowxwsyQLwGXHC3Lnw63DjmBqdPPhHBHhAKk4VUGu2: '10000000000' - DdzFFzCqrhsh64VWCZk9Z9ycxafDqpXLCAqVhuF3rV3Saftd1UNu7JM1iZFjbS58p5DWRSfbKSv54gwGvAZEEgSSgYmyeEf4d6KTQL5S: '10000000000' - DdzFFzCqrhtC2eYjcruwUvs7bwXsPwEhUHZbuQdJLSQodUaF4DoSJojFYFRn4y9VUTMyKbxBjZEwxqBaLUZ1g9Zy7aDCVrECH1frbzK8: '10000000000' - DdzFFzCqrhss3tYm3qU9Et2jcLYh7RDwt72cpvq6i8KTCtKY1e2wtp8BFJfsCuegzG6gm186o3g2dwpgKNyMmCPwvXBV1xrZkCJkXZUt: '10000000000' - DdzFFzCqrhshUvafQSrpnpd1ZzTD5CdHzqzB66QhpxifQCnT13WaSYxwbzb2KKEW8izuD8C6eU4u4XrCN8cSaPdHtbRrPuJZKutxSNoQ: '10000000000' - DdzFFzCqrhsmDoLuXNJfhMyZpT8VeCaT4hN1BCJBwha4pD1NxP55d7oMGxY56S3DN6QnqyeYyC3kiKCPNXsPr7u7EX6ZsedRap7HaJUb: '10000000000' - DdzFFzCqrht7R34pLS5NdR7ePiBtz16zfEVoyE4oaJMEuWDayAG3kydeZqD2yiNkTNvEQgHw5LJMjsqZyMHSPrrFuEkmHkdyQFNEz8Pq: '10000000000' - DdzFFzCqrht3Pu5M4iE9Hxvg9UiaMNnv9kSZmxggphBmmnM6nWL9ahfpRf3AYFVLiLcfvXgzApbUdYoypVgUTm6AFxXp8taipuwRwGtq: '10000000000' - DdzFFzCqrhsvcnDs668wvgqaC5jcejPgyWbHWncAc7fKrkhEFFAcX3WifLs7Sd3SthgbHS5RG14qRw1N6WWqtWYQc5BvJXG4CPrCnNrg: '10000000000' - DdzFFzCqrhsnRJvSWfELm4PBGNz7FVPEc6qRaNfKMa7sAGrcjCDPFEQDKujgn3sJ8ssqB1jL45NAhhRjFzpm54caiHugadsTrHBNB3wi: '10000000000' - DdzFFzCqrht1t1hJ3otDAB77eQZkv7Z28viJomZ8YpjQJnqHLq6ESaL3yUpbToCxmtrPuUognQev81D74SkYKRSKfVNNnz6s9PF1ARp4: '10000000000' - DdzFFzCqrhsuAxiyJCYRBYV9Wd7m2xSiFzt2CRF6LzN9b8VXEeV8kJQuFHXGWVpdeahVvWXZrFcBpB7CrMoWFxCN3t384WkMvGPdRfPa: '10000000000' - DdzFFzCqrhsw5HAYvVkxdzoqJ6B7iLCQc1PcdphC44G7Fgce2zYwUUFkbTJEtkaUbEB2iYFhGjkpM2jpXXbrU6v7Ey7NUZ3gJNUEv4Tb: '10000000000' - DdzFFzCqrhsgW7AJzGDev7mJMwPhnyhJTbj6oGuxGJNYSRLbLa4Hs7EKhhM3cLf8GRdZ15hNBx24DUuPBrrG3gXd2BkppaNPPC1tKaii: '10000000000' - DdzFFzCqrhstgD6mPUe3HyHTPWsaS5GYWX8SJxh3FpSPgjiCBn86B77M6DH5Rn5zh15oJA65PZMTEftFFWEUCvHTaXFccVeEYEifvYH4: '10000000000' - DdzFFzCqrhsxPd9VyNRMEz7ud22Ah5SGY3VKmTtUEYSqotDqoU8R3wGyMRwLbAiXD948K66WvdANz8xdoQNKNWUu3xNMbNbgky53Es4b: '10000000000' - DdzFFzCqrhsfsVn8fQPTdVRCzhPZBLq8zEojHmnppSPRAKPvcPfhXEUdH6uDh8AhGVKosG1YyLZnWHQh49BJSHDs3pkTKp1Z9xHn8ADq: '10000000000' - DdzFFzCqrhstgazfrV6PciQzC3gDoY9dLhzuCtbcUexWGqcM5V3Fs5E7XdoNrFkGV1KBgZDCF1vjyFiUwPvNPJ3TK3Aqgu4WmQ9PzpUL: '10000000000' - DdzFFzCqrht85VsHdJqCYJDmiDaaJjRNPk527QEktJJejERR4jcPEAxbjVQwTanR2dAPwWuPMPEancQSNv5seqjqvJAum6AJ7zWgevuo: '10000000000' - DdzFFzCqrhssyAHKKqNebKoM23WHDLCqhMjpHmcUvksjjkJzdY8Ft8Soexx1LDiP5ATbqEZbG76Ci5Ni2Dzx1AUBDR1HbRHB3LKhrUX6: '10000000000' - DdzFFzCqrhsj4U66gcp51kfva93ynUfX6dNnmMqC9BaGCr9MTha1i6y6hizZvNwsycKgwFkEggA3FaJdzrap3eRAiPnqwBGLJ3pjqsgx: '10000000000' - DdzFFzCqrhsmcjXnSs3Yu4EcGuenh4xBVretyA6XjDi7AbjYVp58DVEaSsLeK5sJ7Pg99JGgWXHHa4j4Nh1F87C9mA9fGF2AXJp6DGkr: '10000000000' - DdzFFzCqrhsvCRtWW2MwgoVC7NwZWC33gNiSP6ZZ8f7HMWwwAakYeisLQQ5xEDmmEfwmFmjW2hEqBaSXhiV4oEhYSo8EPza9FrknnmPD: '10000000000' - DdzFFzCqrhsgrGP6Nn5ywJjT14gfLasr9twyukvTRCuqaFSM8jv6955zn4moRtY2tAb4YcDEb6UydXxkmsZofpSbpdT8XjgwiAfCtMnJ: '10000000000' - DdzFFzCqrht66quyC86tAjoQeHvxfDEGnX9AhAbTYkxiVXZQmE329JLwtQ4ybF4GqXS177BuVHaJR6z5qTMgjRpZrBQqDV3NzgPBXjXg: '10000000000' - DdzFFzCqrhsynoQsqCixazQNK78GPzXonQwQoUoxukLB7LVCL9ZgJNVEd5RqHGAwk1AeKXQpnjY8fs73ANafFTjkg6u2tkWb4ekvatew: '10000000000' - DdzFFzCqrhsjfkSUMTiHKt3bv1yZvyWCvo1yPKb2BafXzwx2CfZYeSMz8LbKgwKvSAhQWKVpqmGSMp4n7GXh11NTRcNZFuPEHPNKk1zd: '10000000000' - DdzFFzCqrhtBeJnzCEy7mAdoRGobLWU835q8XGyvW7Z1mbSsoK5oz1ZneyWbBiFb8FAkRZL7fc7QazDxkeufA9bxH9DoWfAMD6NxnteW: '10000000000' - DdzFFzCqrhsnLWK6dUtD3Uh35xwxRdioGwXE1VfToPViz4gZj7JrEpy59DsfSPpwZGLh2oHH78LveaDTM8jCMoi5NocvsjspLtZW62zz: '10000000000' - DdzFFzCqrhsmiPJzTzzhJMPfNNMNoVSnBurFv1cHzxkvQJcmeoBTcLEpV2suVNbiYUNdnLLNEdxJLzohSNUmBfBEjAgV6wd9AAo6NAqi: '10000000000' - DdzFFzCqrhsxrerM57qVR4DRCV5GmdYXCd92ypHdV5KBLtit2aVXVFRTmEhuGSLBT216DroY1NUk8v2i9Jn7pWk9jQjN5U1vVA3v3RhV: '10000000000' - DdzFFzCqrhseL3qHzrGJcWPw1hQd3sq56kY86accLCwC7CxzR9HUnyhRWHzWxscQJZD1gL6obJwBD11FhLjMZEwkwrwvDUAS4Pmmfx9c: '10000000000' - DdzFFzCqrhtBeGgAgC5x6KPVrkWUki1DUwMTYqbnApyr143ZaxoazKynbyq2R7AB2twcKXuK4p7Y9LURSKfL5HFne7xBHT16LV81myLa: '10000000000' - DdzFFzCqrht4GPdNGsAPnK49wAi1F51YCs3hiQNGhMrtX2VUz78c8rJLgtY8RkLrLiFvptMx4iZBqeq5kXuEzVJoK7N3ccYpPJ8UEmW9: '10000000000' - DdzFFzCqrht81o3eJf52zrpqkLMg9XeXec3FiXWGKQHDnCc77BosGHLVzVy1pbpGh7vXcwuhsbqTZibYbKB3Ga8z96FkEz52pysncxkK: '10000000000' - DdzFFzCqrhsvYmMBFWAL5M93N4yKW4BhgADg3WSHf5ocqhEwUp3KoDATdZLszMFL1FWd961ByGVVDLHcMr7p351hNYTt8TALG5Gy1FWp: '10000000000' - DdzFFzCqrhsjHYggbP3jcvZnEjV3FmfCMS2XKeymB6NSeVQgp2UPQbcx8ic4raGxXHoSx2kAdxavZS7KdFkUj2G1pfcHJnLMZAywRBuk: '10000000000' - DdzFFzCqrhtBqLPeqdmnPBRwhQXGj74i2VtAb7Wi2PX3xJDVUdb8xxT89qSvjbGzwhGEWpehhVsyhuNn1XtMhCDNQXXt5yuvGZCzRxgD: '10000000000' - DdzFFzCqrhsnesabcE8wBzAPD7kqsotKpaG5HigJebLyDqzQrZiJsh5JyZZA3YsAuGnPQDBTJGCJ9ZnWoNfFQYZjD2w5u2pSraPEE6GV: '10000000000' - DdzFFzCqrhtBxTwHb5PicMkbp4XDLD76uDcoLgJ3M9Xm6fpkg6iTtkpBG4thYvovuVrhj73hqXSZhvHpcJjCBmzPEWpdqTjdgEaqRbJp: '10000000000' - DdzFFzCqrhswXm2SsmSMFEgSXxne7cCQxUP7HZxvwKV6cUvmeqLXhixhkVBGpiBEDmLo1SnFuL4wCGwudpMazKjfAKczZoH67HeN3hcT: '10000000000' - DdzFFzCqrhskCWEf93NNZyBZQXmVrCGsLcjWZMBuW2FpbaNyR5M4mF2RgFNaUfpfYdbvgQrYThRjrgapK65LLe5Ziwui4a1dcu8hkLPJ: '10000000000' - DdzFFzCqrhsjYQJRVELiMz7uHds5QQaRcYhzTzxraFvKfA86nF2F2E67LzJ2qGh7zgAs57k1x5fLxT271NRsDuMwyyDAonTnkfk8KbMo: '10000000000' - DdzFFzCqrhsjn7bwzzm5KTT11n9wzAsYqdf6vQvtjMYQs3EP1XzPSCLjAU947obPzaAgAWTQdnSrJYu3kvjPyg4QvwNViwDb5Ybichow: '10000000000' - DdzFFzCqrht7MaJGX27cFhYuRmyamLEJ84fZ51GUMVJ7Qf1GzCzYyz31nPRiRxHAsxaM47HuwqaDFBQmDF8CM6yV6hdijA9GLfCthDcy: '10000000000' - DdzFFzCqrhsm3iajZhtLy8SqA1N2dyKbat2x9Sm5ncvQ7Qynk7rYyFAZ2nRrGo2dcAA5aQMVTSxz5csKFTWto9mzYWfN7PViSYge665V: '10000000000' - DdzFFzCqrhsqiJTdP6xw1guQXyfc4ih22xsJAcZtAoxL9QYN4rcV5m1n3YrVopabXKpcwpb9HWsnS9mFEPiNAqAsh7ReiaZ3AcrKdAet: '10000000000' - DdzFFzCqrhstSbFSWPnTDeFubtefFSt1sbx6m3K983siRWfbu862Vw426FexoT3Rigasj3h82MmJbMj53qtQpK47ZjTcaj4gM8zdWRdz: '10000000000' - DdzFFzCqrhsszwvVhkDYyKjGLRLgHJgdLeNLnKpXpEhvRLCUdv2FpiJvztNt5FLgNDYAwGmnW1Nzxi4Uqj2mJs1KSTQdqfFkHWVPoPRN: '10000000000' - DdzFFzCqrht27hn5jgdjpKywH4Fb4cvZ4hgFAaMQLh5mEvpBGwMkArPhgLAYUsUK8Bj8SUfA4wX1btziBhQhQv7tU5SgC8NXBfVVY31v: '10000000000' - DdzFFzCqrhssEmDggFGe14YNQFcdYziJuWiRKfYADyWBHyeWYQcvE9xGShQDqg1XNg4LwJvPETqY39CABFVNBQiYQwMPhBgeeF4b8B8F: '10000000000' - DdzFFzCqrhsmkgAB5uD3BxBhnjpaQQaLn9xBwX3JU4bMivKxp1iaD3CF3DLKViTuhWFjDc2iUnb2qR7CSUTXzhDFbhCeE1fPeuYpg6n3: '10000000000' - DdzFFzCqrhsjY2waBGSMqHScGy9xKDcDqKtqxvG1um2cCqkQUS8uLFr7UyP3UF9nsbmmggeyjZLorMH6hGCB7cNQwvCUSKsCufokTnqX: '10000000000' - DdzFFzCqrhtCDC9iZL2oyBGnj3jxavaDxwNuTqHiLLhe18q5oozydzot26HqpQLCLfGaVHjzezjCs1WnLZbY3Kx7qia9LfcVXmbRKoXm: '10000000000' - DdzFFzCqrhsqwGgFeHaSHKpnXUwJoZzt82FMFtWcjHCnXML4Rew8w3jnGrgMC7j5F7njSmN8yT6gyWTTy2cZvFjXEspBYpTN5Y4J9S9Q: '10000000000' - DdzFFzCqrht5hGXeRiyrrLYN7v9VVRBcS1UmsrYHCxbooze8DEQFx23DEV3vhQxJbXGY5GTFkbHma5wTK6A7EvS6qNhCmwGhEKHnTo83: '10000000000' - DdzFFzCqrhspcAnUmFchepbFrAcTwc45XfZBWA1FfwCdqECCy1S6wBQB32s5s9cYiXfR7sXTSemPZVMLEYPEXSEc8YyWsDLNLx43x3tp: '10000000000' - DdzFFzCqrhsvGWuG71Qb6bp768uagkuvrz364Zw9tEnNwTiSLa6LS3quRpo2Rc8F8Hir6oLg8VLdmd3K8AvvFPbta55Ny71hnj7qitZR: '10000000000' - DdzFFzCqrhssVjUsGCDZuLPhPur5TaH7NURnKaNU2GdZQ4FAAtg1USouoi6xVieZVjHrSqmqoonYHS4s7v17A6eUcyiJWvtvfNo41Rwi: '10000000000' - DdzFFzCqrhssQnVVWihm8GVfU4HgRxL8FxQ26F8mqa1Wu2y1hpqrMJqQXe7c3Rt7JhGGMcnikTXwn9UBS2nMUU7hj6bmz9Zzofsut1zK: '10000000000' - DdzFFzCqrhsq7iUtW7oCUzB223FhkVxpDNMVvGvTQDkDvLbTw6yZHbE42vo2deMSTwX8hy3zn1WqBBhNXoznRWfVGyG9THtriRsxGM72: '10000000000' - DdzFFzCqrhsyw8tFEki4K2tmuTNz8vhKuHcpZ9drkM42CW98PGvxrim4YYuK5vzgx6otU7rqb1H7FNVJCcbr4CYyHDRVaAAm3YVsxhUZ: '10000000000' - DdzFFzCqrhsx2RZoAxRjeJhSgBy2uego8u4zvrt4BwKvJomgXxxGvsbBt6AyMKBiCRkWgmazUZLFonnCgjLd9bkzTMGVf4v7Yej8j2NE: '10000000000' - DdzFFzCqrhshSGZVKQL5guHqdzSxjc9vgJ97PJnfDgwoyEYFes2uuHrZZNGq3uNeoX6SKZYqj4iYaBScLthsrdWF4go5Fu2XMfkB2ovR: '10000000000' - DdzFFzCqrhsurXqRgFhHy7BJAKiQrGXTtNyEVXfyG5Av4hQu4CUDv7F4fHz3xFXfK8jU98G7edePyNRsVujXyPQioufcxtvLn5P3sGYV: '10000000000' - DdzFFzCqrht6AkX1i69XNiPhUDvJLPRC8mYQsZn81j1Tm8G1Mb6BRzKZYmiNnQHwxuw76ZxJEYDbsoGvtkFg245KPP876u9MtiPLNFVF: '10000000000' - DdzFFzCqrhsydVKugKbZeRSqR5HdSZ6JVopeCtFAxKqNHLTbCfQ1N3Xb5jW8y2mmXV7jMnVNboHAHhGbPK8HwNdaSdVgBcFsfz3uiJf3: '10000000000' - DdzFFzCqrhtD2jBGYMBaEfZGLWg82q2HPaD6jcitzJcSbR9yXabhpS9jv8JB9Z1V611Wc1cSqCiZBwfsTrLY5nwBaRpmhyZCyWfEG47R: '10000000000' - DdzFFzCqrht8Yd1tRytVhqR9j3tAbQxeUrGRMk46Tub3uZKaimVUR3W6vuZsFGx7fHhZxMfy1yYWiHTFLQmUdtW8UfutmjEauUWwuwTw: '10000000000' - DdzFFzCqrht64vuNJEfBn8KbquQn87HznHNyjg66Bpdv54t2VhY8Mk2EobgCLeekUJWEBhJGwyaXnzJCM31TFPPLKcJjPw6bnmkc37Fe: '10000000000' - DdzFFzCqrhsf54yAgsFscJNBzGRRbAkZ2d9H35DtV3yBp9iYhj3Wckqig1HiCJmR89RnMd2wU9wQdqek8hs5UBoiNV3ToM342yCVmmKp: '10000000000' - DdzFFzCqrhskDXMz7jA2ByZbZA72hsGUVQu8gGHTMysdQAs2irpfxL7mBxNhJJfwBD56C2aiP6xYiES54qXh8B9K7MXHUavGHephXfqk: '10000000000' - DdzFFzCqrhsoKzt6btX3WpKYiXrjGMypsM9q9V5PKb6Br4nJpeUCJZeR36HZ8MVCzkLfZMhLkD6S9rchnqXvNW8eh2NCDSdkdQpwSLvp: '10000000000' - DdzFFzCqrht7yM3iN4odBhJTUxmnNghgHnFjy52j1xhS7cbsLrWCSBZj943NjhZ8cN5thAENKjisxcM3sxzQe5ozzUnXreQdrxCyqqpe: '10000000000' - DdzFFzCqrhssntGk7U99LNgECjJ3rkkBhrDQt8oPEguhJyRrJZr98pqvut5Tq5oTAmZErwSd6JXJx4prx86TwmsoXHsoiHuR3CTWbh8G: '10000000000' - DdzFFzCqrhszk4sj7UBwRxG2p2xrdfH5Tz3jgq5w47gVoCxm4CbsLYcZV5vwByNzzPtkGpGBFJg16QGbpJhE7aLa9ehaxdphcy6TDAQR: '10000000000' - DdzFFzCqrht9hUY7JURPNekxprv7WMvhJmfurtZtRpZ8MUyDQnt3tT3WBh28Cct3dhQaaszeVEwgZCBV9nwQDtVhoNx12Me3ektSa8hD: '10000000000' - DdzFFzCqrhsyy9skP5uwnLjzfnHu1pv6nKRCq6DeomaAvyWA5TpkG2YpRMJPHUZTQLWZFoVGZdsvmWyWkH5Sr4juNp6qfoK7ZdRBNwDk: '10000000000' - DdzFFzCqrht2QLWpgK6PvohW8hz29ozDvBDWTycJpf6kBncreV4JTLVTFZwkp3gwD8LVSXQPG1cH98qwEi5ZCuq6FFE9Un5bbCDCi4vp: '10000000000' - DdzFFzCqrhsmKrqsoi5s9X1wyRTB2wsp6GVJ3hx7aaDEzsUDkf8obFy9bycMkSBh5YwCjznGLsPUaZjxFMg8bWfCpSAJyRZjeu4c4STZ: '10000000000' - DdzFFzCqrhstEYKKjXZ2GDJgEn4b3gKuvBEcMmyr8Rvmu1fQeM1M5j4vqBzjBp1GfHcYCt7w74ioMqjbFrdd45eDnxjejrAY9rZrswg2: '10000000000' - DdzFFzCqrhtD9MvJKybAe2d9483cMCKQ2EVJ3uTcHxTnWGTfVkVw13voccFsXRUNDMYQmizLDjyw7c6MGVnkEhiMTWC9APAyP4K4hq3q: '10000000000' - DdzFFzCqrhsxzEsbxo8Kym9BwtwTYmi82vhJoK7t95oJWF4vRBHQXCMc7RczDvPQPnodiT6ibtJnRvEMehJ2SDvVJ65X6vEQgbX2h3Fk: '10000000000' - DdzFFzCqrhsv4jgAPJiHq2G4JZe32Nuanx3MVzDAJbVrukmZ1FRmair17jxUqLDbwgdbD2ZH6rJq51zDnVLpoq8GavDkQLxhifoz4cPc: '10000000000' - DdzFFzCqrhstp13x87hraHqFD82JaTiekq6uYe4DtSunAkydnKEAVuwTwUxGtoD4MFQuUfV1NPXYW5jhWbWzsgRmQiW7FYJedipijJi3: '10000000000' - DdzFFzCqrhsxu7aKBxcZcDSS7wP6EHoFGBND7bd8WKc4WcFQyFf3umHjUnaz9pPHhMKLWdXEKJtsWPkxtMfjV376YHK8rfyT6ZKj5E8b: '10000000000' - DdzFFzCqrhsfo1L3f36fWZJrcHEQUSLq9C8AcKsuz5DbVRtqTxb4gvoaWm1zMQf3j28myqk4FPQiJ4GhErbunWxJySEou7uyVv5Zw6yx: '10000000000' - DdzFFzCqrhtBWMWh5GXmio3MPDNFXFRrEWcSSwjSA2cYqwqAyJpdyRgPWRgwAPYHpET3WMwfdD2Fzm9Ck39WN2w3yuKx2GVgWKs5fW4k: '10000000000' - DdzFFzCqrhsgvCcv6ivRqpdUGYDE4XVD3Y6crQ2PQMWz7oUZQ7toQL9rDdy1B54ZNi7K2Tu5Au9w1oQ2JNJ2zjyM7WuDjU3C15jZLqye: '10000000000' - DdzFFzCqrhsknvpDWkfBDc3NGwZ47Xj1ghjuUp7xAU64eXHe19p36mf3zbJgrDwKfjmGpt4V49Xpwg4TZPewn7dPPw51cZczTVtno6We: '10000000000' - DdzFFzCqrht1oCJ6DD9tnk3SdtLo9tXKLh7qsTBiQxePm4jSRqNPQPDUe9T1yGwXNUBDqPufEDtcdRPU2VzvAc5Bo9p7becfKRUWVTMs: '10000000000' - DdzFFzCqrhsqWhAMsdQtSAhJFxPT9bmTTQhFTpVwHoU8Fbm5NhFpoyJhuNKCskDfjUEApVzMi8W2YrvA1daAfTLh3xtDqi4X4iV8Ex4w: '10000000000' - DdzFFzCqrht8kkwGHWAx5VhxLfU1jE7Wrw1Wo8yEUFQ7ttGvbYhmRt4vYxo6oskfEXgpZBeBrqBYH5hcSmVH67rWVcG8rfxLnPvd5k57: '10000000000' - DdzFFzCqrht7ZkRDHpZQmX3RyTGGDDGdcoTycCYB1ZQKwtsEyJ1RfY2gGGdxNo2y8SHLWiZbJBqQACY8CAhWxWqDBvNToNJtmtqMrSpp: '10000000000' - DdzFFzCqrhskwSAWQDd5RoJ41FoYangx7fb9Hh2oF5qzLsnbu9PxCKwXrfFXWs9RC8JdJ5bUQxvnSaDobsW6wdvYAW5c94nQaX3riPoK: '10000000000' - DdzFFzCqrhtCYD7CJcsyiVsdnqTBfP4HqvNDTrpttMj6s3dSiVDo3MGDrgJLNY2xXA6QpXYurdZueUPSCD1fdfKKnHiCkoBewf5EFYmr: '10000000000' - DdzFFzCqrhseAnGg2w3PSU8E3b4LGpEtrPd2Dh3ZCraSCCi8nR4r19AgUX9as9Eeg6FTnQqfsjwtAWfY2TJYwuquxjFVg2kgHD6AnkgA: '10000000000' - DdzFFzCqrhsnap48uhewuKY3FbyLWEdui298UYGWrEVre2NtNn6SQ3VHWZZdqsnzFK8UKVG1FTDfEa7DSX6pREFQmcZwrfcMuL6vgmWZ: '10000000000' - DdzFFzCqrht2A46r8tVs8FQPx6UxDSffGDAY6VGHbZYfX73Y6T1vMS4H86nMGdYbuyrzcUAM9YqXmDZ9yBfApu59DQ4W7ZTNTNGDHRo7: '10000000000' - DdzFFzCqrhtA6sBCE4tGZmEZqn9NeGeehez5yEiAjn4Jothn1a1jAX3NHkmjfEyX6Hj3koMuhao9MZDRrmG2emYoJtBtH5sKNsNbFcS3: '10000000000' - DdzFFzCqrht57TmHQJULP9XgcGy92uyQyze4hk4voCgcqL4ErzV7ovW1UN78VhwDTJxCvR2BU4Z2GG9uND5ZajLPTnrjoFbEgKBP5QqQ: '10000000000' - DdzFFzCqrhsepducT53921t9cJKLegp8RxpGYMtPv6AHRxYLGKoCjnC2dUq4hDcPLdHiAaxaUen6hFjeVR1uGidLaUCaWsRz7JmhJQAb: '10000000000' - DdzFFzCqrht9NWjkCZZKeHXmyacs5UAKJdGh7b8XNzqaBXJpPyfSTns6jB2ZdcJ4LVpW2ADDYsvGM7AcaeSWf94wZYkNR2xLgsccCw3o: '10000000000' - DdzFFzCqrhtAGN5xSMNh8bNFaDX5a2J4sRjoKb6YXmc8c4yEVZhdXrpJnnyTUuA5jFBu3zSoy2y7M4N8BhJi78AGjwMNV3zR5tuNeKLA: '10000000000' - DdzFFzCqrhtCnBwH63XMs47ZDAYfCTLhWyRBLTM3dFaZG63ttsUjqyw7YRrNPpzzzTicx71qZvRmCUiPL9W1ZTkizXW4fnYdEdKkLptC: '10000000000' - DdzFFzCqrhtBAXGMA6949agEKHbZ86x4WvYMafmZtBUQNQbwkMzC1aTnX8FYxxkPCa5LbL23fhg7GARUdmbZ1bYnnm6x7ywKeqim81By: '10000000000' - DdzFFzCqrhshcui34R3te9gAdqFLbDUGRfgk4zLAThtj1pxHbZiYGdEY9VFtGJigE1xEAsDLq5Pk8E7sTsbEHBmwTzjdLiuFX7A88DWF: '10000000000' - DdzFFzCqrhszhrSkjuwWhSNzLAGvwm1D5nazBfL1s2ANZNjGiN1HAR3MjfN17o9eG62P4inFPTRqpdzEuY2qehuf1AsssUzPfpyAefLd: '10000000000' - DdzFFzCqrhsisFVP9iwkHQiQABnf4mCZYbKXh6ZU25x3j765tTuzhYXjfvrznPo7ENJTwPcdTKWQicBhjELz3N79CUtoGWxReX6fc1iQ: '10000000000' - DdzFFzCqrhsgjeoThwXNE2W9A15QdFVKWNghrriZjmyLCciTSgxTYsQTwqTPqTHdXvXjvx1vmgeyZhjKoJc9LCiTXKsZ8UYLEMp2BLFY: '10000000000' - DdzFFzCqrht4kvhaiiATFAYWtcJG5CRLur6TSNyuyVwC5LfzKVDFiYocPNYxyQU2suGxg8evbxtQtehmq7W7YDuYNvfqiZwruQQXDvBo: '10000000000' - DdzFFzCqrhssNwF4W7GbmXD2uxGC9LRdPj68oSQZRXcdPjh7DQzF6WRyKXrrR32LFjhdU9cRdkbBJ4bNptgW3Jfs5iTHrvw2u7nApxyj: '10000000000' - DdzFFzCqrht45Tb5r98EjYZuKdvp6N8NyBA5iHpczEA9W94aRRscUk7QENwgvL58kt8YsPwNTw1NAa38NxAVxjLWomoGJK3Dkg9APnWn: '10000000000' - DdzFFzCqrht9iFAFaHAtvGpqYF8FPET3ng49JktmYjfiBA6kXBtezMxuTaFzx8s7VQQKFteRam8waWVMwSF75HzGjjLspR1FY7qTh2cK: '10000000000' - DdzFFzCqrhsuQQctgQiRC2G8qHoL25USXtuFyMVxNkAovL5EfTVgabFaMNjjD4Ao8oP3ATUWWtZM4eAkzT7BKgDCwr2DB5nWaxtENLE2: '10000000000' - DdzFFzCqrht8mWkGbyctZecURYxaY2jK3HDub9z6fbWZNd1RM5CUvPiSAo4X8TYWr6JMVNZ9QbyuawnrQzfKcnCLqPDMmHR3VNSieKZ9: '1' - DdzFFzCqrhsrBHGSy5Xcp4gdi9jF6YeSR66PX3wVJ8MuBNuMy8JtLbgW3vy1AhGCV93w9NQ5dLbPwdGpJtuwvwhEQLFFgz1F1JjKe3r5: '1' - DdzFFzCqrht4xtYUhJxYmMANcaKrPaoEndbt8TQdYXgzeVX2F93aWS6dPJqDZgeUSLCRMZidycs26w7TpbodmfU25zNFwzEFpfegEhdr: '1' - DdzFFzCqrhsxZxjUKf2ih5FXPck8qXB2UQfMiGLWTJUHS7yKnJKEewnzJkBwh2VGSuFNa8jBrmobtve8rGHHHtseq2ZD6pvPAXSMKCB2: '1' - DdzFFzCqrhsymxqbEvQwoEoyGNUUnn91pCcxZSgCMDhLxnyGbdjnG48BdWApjEbFiqoYfP2nfPQyz2uiDYvSRdz4CGfwbCTNYJVzcuuW: '1' - DdzFFzCqrht4Cp5w8QSaMA2cF7kPpLddp1toCFTkY2mzdCss6D3DdhYTB1nRXCUhvfWvh9e4k6TPrrapXQKGePPkG1HAGiD8iDiW9ivZ: '1' - DdzFFzCqrht5drE1utizafRN2GUwZtMeaWVsXY9c5kYyro3Lnyf1GANgMfWc7WCErJVdQXbdNaAKSxmXTG6PNu2uNBidNjTz5XsAdYj7: '1' - DdzFFzCqrhshfTiHuQXZ9dLAeyFj4VWPPU7KiEjUXixwUiV1rn8vBSJmxHzapC31Ecz1FcUdMrsMxUTdcLzzWvTR5yGtJ8ouT4P5FMcK: '1' - DdzFFzCqrhsegMx1JjmgF3rL7Dpa4rL8Y4cvBUREcA7CNRgYRjrPexsQJSAYMB7VbA3XRyNsRF4P4vDzWP43vCnqtox9AEndXKtPT9Ss: '1' - DdzFFzCqrhtASNaEthFBpQJH7KADxgHzwJp3t1pdXK6hFgarpZBv9FDzzPu824MBTLcfkUQWrgdqfGZvsKuXTZFNsNgGH34vLbV3UnAZ: '1' - DdzFFzCqrhsv1XSxrFwtPZkKFjUC1Pkv6xGi7vAaMP4KptRFhMwRtTPcpKymUFyaTe27NoSto9RQyyqvBJqss5bZbex72SArXa6GAqeG: '1' - DdzFFzCqrhtB1J6VpL1r1nKVapAqkT2NypXUbRhG5vizekX94R9yygUxYG7skmiL8DxFbB2rCZdVpuCKja8zxhkgbEYkkzGKoT88VFmz: '1' - DdzFFzCqrhspWQrzyaMvPgKZYpzV938kPsucQ33RMGM8KBEWh4hFmXKa2Z1pfLWftznjS9kGgMDRYdAPcs7mfmFcwF6NPpkULRGqNCpi: '1' - DdzFFzCqrhsrdcBTYEPBMx5VFdvNhrvBMzScTw28ZcrCdtpqoWwcamfRqFJCZiaurP6m79fmQ5J579xPTkFXBdBzWZQuJyY5rucfJR1V: '1' - DdzFFzCqrhsiQbNzqp8AbYc2uS79Y7eiSnXPGbookN1RN5DN9LFEuuf7b16v3AcfHmj2PYVB15UuiP3rMBZtfSPM9HYREakyQfrKgsER: '1' - DdzFFzCqrht6qAJ28wEbJaAs1JuAZQik2qpwpywZB9bUQ2SAaiTDpSLWyvEsjxinkTAt9jaX5pdCWiNDHdkTwuZyrB7zggwGDdBWymt9: '1' - DdzFFzCqrhsjRLwW7b4V1gtA1URmwyvbTES1kboiXZ8zPsTMXXjsyXhKZymERbceCLVW5q82LzcwHib6Gu4t7cDxQ2V2CGueEqGfgiAK: '1' - DdzFFzCqrhsu9HpnmxnKNKdDwBggGevwNrgywxwFbU1GCUDJZZtJkDdMmcoEKWLEwJdHrYE3ZzMCpLecG3qRPToTCncLf7Qgq9J4jcs9: '1' - DdzFFzCqrht5mQX2CAFtRqh3igRvpDePkU7QEHbrtiYQefZagZEDaCjjPTAKktuF16hJpVEv3CEBDQNBqMxmcRxpAHZSudJygFfW9KpY: '1' - DdzFFzCqrhsyhrXzwHn5NcUdpafk6u4UmsUG3rwKotCgCN6VR6mTyasHyDcHA37fqaTpetm4WSPBFMck7DXbRoKkXTTqzQjBj7i6SUiR: '1' - DdzFFzCqrht9fJGbcYETEmsdUTZZKZStppKt75d2j9BFu8ZgawoC8dL3NDQ7t8MuuKZVvr41Hk51BxuempzPU87hDm5E72vz4gUoB4oT: '1' - DdzFFzCqrht7k6Moq1y4iRrmyVgEdDphyugSDUU77kkLyEcNVtc9mLWzEgk2XnKD5nEBFDPeiWFWLuEog85eQXNdRrJusAfLGEzDirpv: '1' - DdzFFzCqrhsrbC3CAx3MgskKNhQLuRngeovypdE2LNcz9aSNDj5yMpQYDWsSY23NSkCmCkTckY9Z9EPs1niP6ztuUjPSfWY6uCGFPjf9: '1' - DdzFFzCqrhsiA7iN2yxdhxTQNKGx79f96J1bqiGf3KKQvHRppETgik1KXQmJE6c2uUmG9ydPjkNgG5NKPaBeuuumvdfaiTW2DobfXF4d: '1' - DdzFFzCqrhsx41vheGcTWUidV6f6qEtshFnR3K7HVXtq2gN976U7yDJgRDxEiTzAeDgMJff486cGUcJCWeSd5tGj216iJW84kkZpjLJH: '1' - DdzFFzCqrhsrY3YHZiB4zBLw8WHWkeCfbh4CTRYKjxa5edhHjt2x4FttdoeNq8kcc2WgZjsbdWcBmqv6CyigiG7DcShZHJGScHAm4aJL: '1' - DdzFFzCqrhskvCaEZCKaeNxGELir8xnaUmSE1YUQD7FxktQEb2hdv5TxcYvJgVdvbiuD3hh8315iq37kWNDU9in9hHGzEUaSut6WdqrV: '1' - DdzFFzCqrht8uNnaVxNs8229RpG5DqG1VrcGzjSgNANyq7hBu1NHrsnWDz7HXzorLfyzKbFJnPuYpquAXejFRXqdJHbqgdzP3KJ7y43K: '1' - DdzFFzCqrhsqHPcyNxWzJMm9mKc5wM7bRZ1MQkiYgEuAXaByXezncXp4Ng6ZrTgV9AB79ZnqptfxkWiFBtaXyDstUJbPE7vKjodh8E4z: '1' - DdzFFzCqrhsdxeDPdaf2YSLSSZL53HqkaGrhutswmuBggiFzonZ3gwD4CypmQbWWPYzpEYRf798Wed8gvJXoWytqZFyT1ak4FJH4Mvic: '1' - DdzFFzCqrhszZuNUE2Lvnt3QLkxKHGNzYHCgkj4m2mi5N1Mov2WJQxwG8mmbHebT3n2Qrj3G34crVU7CVAWFoAyeauuEHdbJpH5Hcu9M: '1' - DdzFFzCqrht9WpwCR59FcNt6LADojUCgZ2xGbXAjRp6kwwy8UMN4jUHprFq9pMBNkoUrKbMqmCKYo8YZpffZJeAHAQSFhZ3Gd1JWito5: '1' - DdzFFzCqrhsmNfQkxdkcATtM8SHiArzDW9bak3uSVjFaAC3LT5m8FB1FDKtcRinA3dgEkiWacotmaXnhCaca5nXxAhGghnpQ4itCbfsj: '1' - DdzFFzCqrhsjEgXGbvtLtTAEmCE9U9LXHsLbuETHaKQkNQQcnZPqA5cqvsuNrsuwbzVw4VAecdE5QUbaDyUo9EocnzXzxgNhUv2h5Q4E: '1' - DdzFFzCqrhsnJRUTcfmAQKcuvh7Y7M9tJqMdh6YSXCANRHmtZu8AP1hXKiUNFbEzt8txLqVsoyGc2u45keLWrPngPksgNyF6sSpoVmKQ: '1' - DdzFFzCqrhsodAYc3nR4Jnq81C436WJfXTXf6PiZ6r8oRDqq5b28y9J8YGL5NqT7TN7vfbfcSdnL9GZbWQstWCuZUPsZam1EbPFuE3a2: '1' - DdzFFzCqrhseqxku84gVQNLxJSWDjGkcGUaMTWTJorgCwXwYQaiHGnaYH1AAjw5ecm93jPHA68mQB2RdY5VhvHcJa8NY9GXKU3UkB4xJ: '1' - DdzFFzCqrhsh712YhxvhnoBmGzkeFKf6pGnZKt1o5s7DnsqC2mbrcM792NEPZ2GGNPM2TLSaQCmX7qH242rv4fzjyALoVdWF8cSGQYfh: '1' - DdzFFzCqrht6PetGdiGHQ6Zai1QbksvZ5HBuUmMA1FGLsF6S9e4W2bu3vzbi6Q1sT6JbFpgNuBXvsMmxeCvNdyie7KJSmzAZdVpymdyt: '1' - DdzFFzCqrht7WN3gGyuqEEMPnpKmGwDXEDawoCb4BzuYz7nxPcdjwi77jwDoy3bQsN6Rhe7WvcKbHWsvcoUJ6w7i7PRQCy7ZQ1GTvv1u: '1' - DdzFFzCqrhso5WJ3g6xvXrM1cor1kn5Q7sVnujdoegsyqHKDSMfB4QK7ABa2SzWLjQrUDfgDF89isobuLFdubvhEU41cE2WHDD7tmSiv: '1' - DdzFFzCqrhtBkyFfaKMqjoRyB74TVbJHV5By8fK1rr8VuemPNCDNUPBR4gNZqatuqnXMkkgL1NDLWmonjSjfXPpZLrgF3EHtT1Vy1FVL: '1' - DdzFFzCqrht2oPToH8SAhh81F8FhucH7JngGqp2ZkBVNAD8xy5vtGAJNfbguu9HWGEuBhS9KPTBrrekcUaatfbJwDGbKcVYzzccqezP4: '1' - DdzFFzCqrhshYui7m9fwUuycoz9BVs7VMLzWryGy4zhrCVy26qiEGeohsNUfaN8gtVG42B88Ahv62xJ7aHGDkWkLucJikVrZ9YZbrCSq: '1' - DdzFFzCqrhse4sjw9nMvbkMwW88TMYc9VGRSQ1DmdEYMpiskwPB67mce7MML5scqegn9rpj4wkWLaWDBVpoinxxys9GebX4WxnBPWfg9: '1' - DdzFFzCqrhst1Zo3FEvMPoFdDZKPN339MgkHQJ59RD7mk9S8DkqkKQWGHFeXbJHBqBy9YJhgzE5xZ8PMEgkPsijKAqcjtJKTRbNPQxac: '1' - DdzFFzCqrht5hLsaHDaZ6vTWdwu8ZZ2txwmnAvNwTzo6GVNRk2qGYN6JWGGTxjG1hnXYWdLacoinnfmhUxbzwtjaH74rhCFAgdHDjvb3: '1' - DdzFFzCqrht3h9FmFR46Yc5kPAxw5uPgDofAiW6ZTmtaQe7RSEpdLFzidRhuDS6c3QbknTmeqtL5rhS7zdJoD1oLZfUQmfMt4hTJ5pi1: '1' - DdzFFzCqrhtBGvZLwFJFkBgduJi81RpxhQhHXGH9C5vJ1aVbjgi3BbNEZWnNVGhjAMNgUjG7AkNZnGGjjNgnbrPRNbZyJHmuQcLosGvm: '1' - DdzFFzCqrhtBqecSoPP7Lm7bP8DCuxa1vacZeK77iRNwEcRQSyZvshHbKkHfa9x5L9PYFRxZbMwdPRYVSQjCuMioPc7MBQsVCELnRBm6: '1' - DdzFFzCqrhskK1nkhBGqVEvyn5NiUVNVz21Scv8F347Mo2VQkKSkm8FTRrRgPXicurddXYSZXgDAPoBw93gAUwjpp5H92cWpjgrk5hBx: '1' - DdzFFzCqrhtAnRc8y355bthDX51XJRGB6v6T88NXDt1PkwUWed277Sn6UUmcWLs2MNS4NEmbTCxixWuyzGZ9YwzjabHrUvf5ekVCCrAB: '1' - DdzFFzCqrht7RrMXGCoJLgM2twa77ScRVjz3EQ8gM4fDBc4tUZQZezionySMo2MVUzAEi6f5HvF8S35pGTRiJ91CvKB4SUVvZR3LasB5: '1' - DdzFFzCqrhsg1NU1eJfZk95NsCGBwYZqr7UpGLnQuya386BqVixtvGTSAMsDYo8FYZ6NNNRukHdPsN8WiTm79g4ezexuGJTS3KyUDmZe: '1' - DdzFFzCqrhshj9ukQXuERwRcGDTaBrcbfiBvhWMGevKVu1644xmLZKZfP5nYiT2ufFzVYbu64iFRgFuz7DmA8XCfwwXvA6H6Cg4nCtBZ: '1' - DdzFFzCqrhswAbXVPVMg3iN6oPfTwKjDfNqxJZGDVmbds2n2vBWqN6iHnBvbMQ7PdXcohbSTA2UorQbjgerhVqSNba2ANJryEdWT6DKN: '1' - DdzFFzCqrht3NKh9EBsXuobmZdxZEW3upAchJTh5pLc7eFo7hbDWjq1ZxGq9BMikx8vS4nLj2nzb4tAu29e6BxyWcBg3QDnZZvHb3Mir: '1' - DdzFFzCqrht44FVTU9fAqUTX1SPHjwJpiveZHwZSCRTfCBF8LypfKnhU35MHrBbrSmRqBYcPqQ14DQURiuemXEjUAWB1kGsBTy5ogMNA: '1' - DdzFFzCqrhsvdf3ribBNGTyxzWbpx4dRzuJdTf2XN2cosn1hZrMZGUkuZDVJjxBDZwpkkZx2FZTSM9K3WZ4cG9Hava2sCnqTaaMF7WiA: '1' - DdzFFzCqrhswHAdygxamegXwAk8uDXwdmoTieQtGFKyaZYCcz4XwEqhv3Jeaf9LhC1owTTGwqW8vAS1ksLpt86m14sa9uQyoWHfuAGpx: '1' - DdzFFzCqrhsh4tPYUCCmsmL17qd4VtUrfANNiYrJvggwUF19E7G3L4sgHXDjN8f57TnD8UaAbLRXXCrtvaQyfYHSqigFqSwnG8qJZ7Zi: '1' - DdzFFzCqrhsjmnBuQuyignUBAP5x1jafDzYh74cxicPqDjpZHAs3S3n1TyGB4xXJ6qM7vHw7VFtBNyCgJyDQ2wvEndjtX7gJtVsg4Xfs: '1' - DdzFFzCqrht6doMmkszAjDy2EYs35DkEp7jif3MbrKvsf9bSsu3dbk8psw7ct5fJb7DqfC1qnnwgstK41eCAmxebxm6vGQQ9Wn3HtsLq: '1' - DdzFFzCqrhsoTrAEaBtWHu4fcR536ZUDvaZHBDrbWuRqzUJDWmWnAdtqbGwqhjH7trne4o2sdhsddcK2FBCLGvNZLYZY4mVZvSjs11Uy: '1' - DdzFFzCqrhsmx4tLP5Z5Qurna87W2qepys66yW6MM5US6zCZQMrT6anXUyhb1vd4njbgYxJSaktngVEfWuo9fW8mFvPXM3RT2FH34bho: '1' - DdzFFzCqrht7PimMYDpYb8vu8Gzz7EqKZwUXJ6SnjG42SFqpXgHEESiYDXPiN9n6MEW1KRPD1Tbx3XnvfLetJX3u3TecyFxmLvWCC2ae: '1' - DdzFFzCqrht69A9ZPSxmrV433vh2drezdj3PeudsFXwMLfMCrXMBtuqM6qp2Yrrhqt792sjrJVNQBiNTj9s3B8fGiVy4JphMMVUBz5VU: '1' - DdzFFzCqrhsrgczySAvGsQqQSHHgxKaSJbTnEZQ6UFmADNs29dTzDRdsyd4XjxfUtMpgNZbBey3wYxHdQeKXLVPS4Wx9e4uCmduNFeDG: '1' - DdzFFzCqrhsnqae5WsgHaN79wbVFrejXZzQ6RoK6Mpi9G43icHsXa8K9iCb71YxptrWzDpxyN2VAxm2xssdNUmESBr8WvVQChC6BTzx1: '1' - DdzFFzCqrhskrqJ8FKmxxY6BJAdw9VUdcLuYNKySvu4Px8AhE2VkCDXWBM5eMycL49nCLnk94NwstfuW7p22bEuctfrioeTV6x96k7qa: '1' - DdzFFzCqrhsxR14qWDod6aFJXo7iqXWHBqrrhXNrZp6H243uaBb7eYhg4e9py9Q3jhv5Nmyp6LkPHNSWFeUeJEEy2cb2gZfGWkP7cg77: '1' - DdzFFzCqrhss3xNNhiSLFVu15nu7xRX8T4bDSB3kggdZBiNtzX8ewuMuhUGomdrmCaG165U3VTFSUZNJuvxUAzdduq5P8zC8daKw7EYX: '1' - DdzFFzCqrhsedysVVpdN5UvmWx2Ho4cMMgJcLTVJwdd7HaMwTye2k9LnVcfY9a3jgM6J4e7io6YgKcbd4skqXtFj28RWwWRdfAEUouEX: '1' - DdzFFzCqrhsjt6KVNWZbxa4sub2fevcTUv4tDajZPsJBFXKUjW7wAWdc2p8y1uY5nKYuWsdHnNSrFde2JjLMkDqkKmRB2iFKHhHwuhub: '1' - DdzFFzCqrhtCLEnXQd9Ah2BmoxipMtru9YzV8HuYFGk6XGjxTSF5wJorF1DhcCQGxNho2kxmnKjGGRw2HhVfygYRJUYW52L9vVBztKoE: '1' - DdzFFzCqrhsiFESMpPL5ALB63KicWudnFbCALCgatDXGRDLFj6kGBL8E37snW6qNL9ChUvQzBhm4ojhgN71JDn28ii9XvgoqTykm5fcP: '1' - DdzFFzCqrhtBRhkjpQBr5Dn9r1JB86V2wqgYQTTstA4XWXUMQ7Nrio64rWSSs1XyyPGpDp6EytB534iZVmPdCeaNyH11CoHk79DAjQLz: '1' - DdzFFzCqrhtBYTSasGLK1jzm5HpEnZFq7QkwHexCY2qXUMRaDkB3U731DcjvFQzH4EgLvEyNGHqRwSmo8XKn1HRAHePMVni3eXqq6tgV: '1' - DdzFFzCqrhsoYs1agKRPzwuZgaRu8zsGqoUoEsEr4zSQTnovqe2qa9AHNjKmqGCJA6i5YVv2MYeDv9a5Ux1akckj4EiadDXSZwiFFuGm: '1' - DdzFFzCqrhsjR5McmAEa1nmX6VNddvyGm1boCw7GKhCtF8Wr12dpX6P6xm8NWXh27RvbDBgsdrUB7W5Uo64Q7CHb3LngpSja33wJaEjU: '1' - DdzFFzCqrhstfZLzr9CNy1p9DkxKv1g8dtuXgCctsTSHicfGHSetW83N3KY7qfZhT2Niena8PCKiAqdbU8u1QhzVP6dkzdK6RcnjWjWb: '1' - DdzFFzCqrhtD4dSWQknti8PJggXTo66ywwTPLU8zv22Qy31q5V7GFCEe4HZNaKig7hwTykjoZD8Z9cKZfRj8m6FwtcWpYTPLnG6saNo4: '1' - DdzFFzCqrhspvqNXxMsRAGuZrC1bMeMvaFERHZHT1kMq8bHzMCsQB3qKBAKz7r873eLYYNQEgB6XWfuCQxgfMwqRqpeg7dv6azCLKZT1: '1' - DdzFFzCqrht7pb9NnJCJj44FdPRgdeUc8PmgGJRzNP4z15YLXTCBAUp68whMjKYuer7Z6EWG515QY6CgrjhrrTtLDwTku7JjRiDwcHo5: '1' - DdzFFzCqrht8VQirMHtgxcY4AXWVh3YBUN5tVdbEXnZcVFxaoVPKX1wqtUaBhobaoeLfHbND68penZAX3PqDmVyVvfUXqksgHPPmhY8y: '1' - DdzFFzCqrht2XLh81uEVUVyNBoW8q8nEhLwxxpyUHAGPXF1yAHS9M5Mbm5DgAWcEKZ8Jnd22PUpiim7hPJ9wzzohWMXXyVdzmWbHAfe9: '1' - DdzFFzCqrht5gxffruELEz4gCUoeNxyk6DRVdmkS6PiX2Zxv3F48v6grxzVXzNaW74wyDE5eX5ErdDxj1jnQpHQ9hieKj2it6TQERsjH: '1' - DdzFFzCqrhsqAd75y7ieJ2nJAaJgWRnbw1qhZF2bXbygTHsvMkRcHq8Hw6TEodMJVPpiELcUw5wJdaP2aZ3yEC8vHCE9WpUwhFsJuoP5: '1' - DdzFFzCqrht2TMhhAMYEhSbTHDtbMWVKMgNiaQPy6XnNC77HywPNWMd8dyepR9H1p5Chr4cmEWNEhSPbH1eSjGW8d5j3ThJ4KqQyLmgf: '1' - DdzFFzCqrhsgDhBd2BNiVtYoHDQ6Gw43papt4QVihz4F3LqVadbUhyeX77B72etNhhitPVfA3w3BtLzcpWwS4gN96i67mc7zweRAvuRd: '1' - DdzFFzCqrhsfKJnaN6U5oQ455K9ugTSdp3rHEAgtuEGtgoPtAkPAWweXKJLcTTGMkfiwCpRjquUK9HAqLbpPjzzsF71DsgUE53kX2dD6: '1' - DdzFFzCqrhtA32AGBJnDM1JCyYvqXsxvBhwnry694koEBY27YESifEPCCBBEt7UTH95pDL238DNkgazeZCwDfEUn6YW2GTpvzDw9J5JF: '1' - DdzFFzCqrhtBTYY7mL4HnNoFpR4Yhuh9SaDbPGB6Vs71AvUFNAMkwCUGCSNzpxiE57XjWRste5QhrzBhfLB5WdtAR1kbBJ7B5Ejb6ZD5: '1' - DdzFFzCqrhtCraCNwTHxoCZeM4pEcfJPpF5DU2XKvorVtdN3U8PuHM2efNWLEmbvuFrkREDT9dBDkhczUqctP6rJ4ZNKxiYcMzrfx4yK: '1' - DdzFFzCqrhssQWcBX7GgNJ5nueGUa59JKWanrjsRTbeg5Ks2RjMB7nsbAgTbczw4de31X71KuiZv6zj18hAVq2UTmP9uKm2TeGkocsJ6: '1' - DdzFFzCqrhsxSdYvTsRjur3x1g23tXe41cSTn9mTBw9h76zc94KKohoRf3zhiG2EKSzpyPnGuLsN4f8e5x2pZSf59emBQaER8vrgT5KG: '1' - DdzFFzCqrhsiZKP4qWrrbuX7PovLEuGMFGpvnMfYWbsjLyfLqH5eAubSTpLvpS8N1XV1Xj5shZY5rtvdUW2zWtDz3DV6Mms1rSpzuf7B: '1' - DdzFFzCqrhst4ZXQBmZCSyinqjRf6zxVZirhoh5YcRA5mxigu8MrCubTuqQ8FsUJy3Sn4zzHAWrm8XgKQjnifKZZKhLfTQDDmjRTXv7t: '1' - DdzFFzCqrhsyP3PxMqF9oNVp5zMSitEoWWDpRrvvemT5cwfjjG55FafUwRkaUeTHvuvkUShtjuECycRLg28iTZHAV9xWdjK78tRGjkbn: '1' - DdzFFzCqrht7QZSiR1kWkoBvF4sfVdifesg7aXzMy4c9AqSCkcfw94HstiHFqxNDd6dcEDRBgum4in41HztJ1JDuRsauLXagfJ41pF2y: '1' +- DdzFFzCqrht74rkP7eNhMp9iaQ79JQZzHX6QxjoFoie4qAn5D2MESx3Rzpqtc9zX6ASEdDThwJyqjc2kjqHMFnoUnC79GmmNCB9Vfe6a: '10000000000' +- DdzFFzCqrhtD1LQ5wUyD3XB9wb3pV1YprcgwGwwyRoxcq4HRmrR5mPJyrgZn31dhYyWeGbu4q5UDHxBAoXjgqk5MuWsNsNVxTF8F2qWy: '10000000000' +- DdzFFzCqrht2WTfwxWQe6xBUfW3wn3c1jzSxhSXA3N7k5pqQSHU7HPKEzJWmThUoumXZfPmwzsuH2ScHJVWd5aoyMu3KbuNjYerW2USX: '10000000000' +- DdzFFzCqrhsmwHKki2LAsTmtgTVicRjvdnpnASuAQPAzkToBA24fe8F7VKJ7JvXr7nZK8kDUR55PmW2LE8L1PsoS8oQ5xot4UZSNDFxa: '10000000000' +- DdzFFzCqrht9v5GtAfmEentVJVifD6wMiBtYwF3CRsmNrj6poVazpQVzUA2wSqaA3qXxLu38nYjF6eCPbvfa5eXtgqMRgbJgS5RKktbn: '10000000000' +- DdzFFzCqrhsixN9C25gpSKwbuuDHUyx5CuX6mXpueiSeDL9xD8VSxTLReGzRYijPPVFibcSPasNbpQ4NC4sbGaoyDA6ui5TapZgvrRwH: '10000000000' +- DdzFFzCqrhsimUHRmSXdMESb5rg4cvWXuEA4yyWG9K9zbK9JG5wELWB1J9fPS8UcC9px3inKqiMhDxRezLKfqBmEPKNxi88VUCV12yae: '10000000000' +- DdzFFzCqrhseFRYgaXgzfzx6YP4UcfPRGmVFuHRmK46vbvxJKBv2G5PhDzgw51ncgWRPD1G5SpSe7njH3hANNNEmwZbHN5jmLERvwMFi: '10000000000' +- DdzFFzCqrhsoe4FmTx53t9PNeRwkk2r3tThWDG4iFSkDRZ62ukgPEJwQuhVeH4wy7PevtqZJ5ort511GS448vq9TVtzq6MF6xYXSRzQN: '10000000000' +- DdzFFzCqrhsmLgJ4SYYYP7NizMB15YhRnr3uB6etmFtKi96SLM18adj1bsD4uAo2W7A1qe3ermujVMrikw2W57uKdMSshL9R26qpMxzc: '10000000000' +- DdzFFzCqrht7bNPEP52S1fFTL3fuXPiT684iHQL7Jh8TSpZ1y3daCiswqDpTzNLnVqbjJL4nGQr6EKU5ag6hQh3Su7Br6MdByijkteCa: '10000000000' +- DdzFFzCqrhsfJHwdW8ST3auJpKqj1fR98ddQ2AhtcFVa86ygJ3mxGEeUt4x8Jj5fvnRPyuFbWcxmbY2cCm4w96HSPoL8GcogjfSqjfBG: '10000000000' +- DdzFFzCqrht8ZChkZpKVRjGvTjtAmMvtH7ctW2BpGiuvFSEYFtiTpekfwZbkLF2mkAMJe6vkzCWYUAV1pYpZHBzYSXd7SDE15JaomHmk: '10000000000' +- DdzFFzCqrhsr82KTijCUhB4X455iz3xfphVDfq7BkNyFxrZFNpMXxv5kpXCjBtwwtNPrg9989Y6eP5CaNbJXu5aw99eDYrqJhJxja4Ys: '10000000000' +- DdzFFzCqrhsn6eNkT8jVdSWL2HekJzWbWXC8MpYsFBD9ZzoyREGEMnSpKwnc85fRiQoDumcBSFkYZLoV9QhhYrACDuyLxkrVQKZAu6E9: '10000000000' +- DdzFFzCqrht7qfcesd7cGVWjR2g4Y4uzc1dN1N8Q4WSoRXrVagWuqRzXRnj6j3kBgKjK5wmGHy8iQ43ztHWq2muW3sBWSURaL639oD5E: '10000000000' +- DdzFFzCqrhsunU3RzkxFFi828WCCxmJ1TSY87pcWtV35nPVieK37sdw1NFSWwyBoySXB6E4Djijxmt3XAbtTVqG2vYAsnxjJeJm26RSd: '10000000000' +- DdzFFzCqrht2me1YG59MRZRYw3TrKEtaBe8K9gufXPsRqL2XZJoyLV2mGj8VUKKKtHNXtRhihRz1jETMSEiCJwaN3JvP79FUe7N1RshY: '10000000000' +- DdzFFzCqrhsxa7TVpBQF6fWUVVTPMw88FFPJJ4Q5iACr8Ywp2kXJbJj68TxsgT96GmwLZFUMxuT3ckmH1ydBWmq6FnzKpEj7rDyRc13k: '10000000000' +- DdzFFzCqrhsnd5fktRzjggYTBYqT8HXwpNgxQrLKn4hbbaBmoHt27Cp8wrkc8wXGLn7rQGdYfdFBHPE94kNKDQR6FRd1WB64imHz7dW6: '10000000000' +- DdzFFzCqrhsh53AKGP1M1VTYQPy2Pa2hSLQemEwZn9T31npUGWypjZhXNgC9npqpKY3QLYpLAFrSbFWAG7RqcBQ84wwk8PebQTJN7ZM3: '10000000000' +- DdzFFzCqrhtBoYfqGzYsP61ZM5Fsxy7CyXhSRykNwVJjoNeohNrWkbmCag6VqepW2KtcF8uiH4sXJSXFZ1xwp9NWZ3yy6fV2edfLTQ3L: '10000000000' +- DdzFFzCqrhsfCo8npHCT2yUTybE28nhT2r97hwZmw1ZVpb1YLP3yT6XfvHUMgQn5oUKmPaacW1TyDDLSpDEt2bAPxAFVHAKi4h5vanxK: '10000000000' +- DdzFFzCqrhskzPk1MGb1xo9BxzcCNHTfbN48xBupa9KbJ9n8tE9b1NF5mPncMfFQ1CGYhNreFbRcmfuk78XvNCudffUwcXxF9B6zmB1F: '10000000000' +- DdzFFzCqrht4LGyz2PunUcmySpAqDNcYbgTrVheNRVTJZZMAgCSmsvayYG4eLwU9PGX5fViKBywuyzfLgau4sCDesHbucPN96GwxEH1h: '10000000000' +- DdzFFzCqrhsfi1p3MtYG26TpgScRnkATR2fnjiJFLVeGrULFS3gjjj3ByULEC8ZxcXD7Av2rEQwm3vXz9oFXQ5X6K8NNprseWwrSz2af: '10000000000' +- DdzFFzCqrht9GXEcM8LaTRo15oysWd8c9RxhQa7MmPcFBBPKL8cJYczhojyDLuNzfZGKRgfYCeF32UmfVyuccgxWBYubGeXqmSpYgpk7: '10000000000' +- DdzFFzCqrht1x3AA2J4Ht7Z1a4xUtmBecTnsMxuDeAqhQLLbpB9vgJLjyhBAhHJQdRfPMXhDaD6ANtPdNhD4xKi67sHBe3LN2sy2JtPb: '10000000000' +- DdzFFzCqrhswSf3sKpjoN4YWAqBxeG8wYmuxZsdgRTxyF8PewXqm9Tymi2FrW5zF6dx86KytPWhZNwV3qPrAggS666uYMXbajkcFMWk8: '10000000000' +- DdzFFzCqrhsudVzxjFvbVFyreKSy5yWoFS7zf4U9fyft25FVV81qyQA4UHKJceGPf17sN6H2NchuLp3LWn9vAsmaHdFHd5ujH8rAJu2m: '10000000000' +- DdzFFzCqrhsp9rKHL1V1fdS2pdVmgpWKRe8Bmq533DzFSAaJcb5HrLEAmmsCfbb9fvJ9uz8NfGdWDj2CxetGuheMuK3aFeYbPsYRjXdL: '10000000000' +- DdzFFzCqrhsn62sWhrHnq7MMds6nunf2nUiJJY9Ewn5K6L4e3sbDAQmzU4jyq2aWcrDNXT2kHanTaPftBWsaMmaDhwMvjZWAWb8YH8kt: '10000000000' +- DdzFFzCqrhsmbbfJ2naGfSRvQwDWGwc5oYjg5LiJhGjyJp8Rv6RV2uPvVqPBBVLrxt9cct9oLN9kdthL3SuFybTkBV4udXrGiJPePWvL: '10000000000' +- DdzFFzCqrhsrRNcVNk9tAUPSsgWUfaFmZP4WJwKrBckucAGiMgH5SuzadfMVaoh1p5Y2ACPbT7PZZavZKxHjFgwDESHGh7mD1VHSsXHJ: '10000000000' +- DdzFFzCqrhsnZWFsD6XMrKfMzjhQGLPNSVgxjTfwCdnCJB5q2M9aEf7JupcknXvMRwGaeVTmWw1auhHFD9Y7WdQGBj5X4HnJf4eLfRhm: '10000000000' +- DdzFFzCqrht2X9Sjw2hQ4fsv5G9XKHVZferp3sQtqbaLFPiB3G8AyYrpBBbMdsD6ctbSR1GemGFHv82UztRoa7pCbRb15KkxatHnPPjC: '10000000000' +- DdzFFzCqrht1kyXPPNKR2FdwhXtdHDpW8eCwduqCegMxCHkQ5YVK6NdUcA3YEx8ZxqLxi4spe9weUMQjSify5hkdyaQN3xDbvU8fotiU: '10000000000' +- DdzFFzCqrht4eiEyj8WBvXks39GMsEf9pxq2zPJzySKfPFgMypSLuWuMqRmKjt45akL2gdGnpHd6EjQFkv8TVCkZ3AVdhj6ENtqdxZTE: '10000000000' +- DdzFFzCqrhsnK4ZbLydcbGh79N6ABcDdELfPmEwjLeNeK26dRr2GypwoTFJMgKcKE8vjM2sQ69Zrb8MfSoh6S7NdqCp2z1NkyVSMByKA: '10000000000' +- DdzFFzCqrhstvUSEM5Da4GteUs7AaLx3c7vvZstgxg2hpYBPmgcHNXQ5hLWyvF7Qx5wJM1DLfuc4K4WCkTVr4j1h3PpBTj96XrWZYLC5: '10000000000' +- DdzFFzCqrht2Lee3DjH6PXARBJ2f4mhycRcLxbPMfkytAg4mVJYLsasxhjYmRTApSwombQbiHR38PebXgnM1B9MAF7PzeG7ub7Q41WvR: '10000000000' +- DdzFFzCqrhskyjSxsuovAZusy8n54jndPa9Ri1YuAJt9pQzZAhcJzBu7FBc2W6KXxLkAA4sRkfjaqPcjRMFpAPJgHAayu5VDbZNQ2WpE: '10000000000' +- DdzFFzCqrhtCeiAvANjy6mtcF6YV7hLNp7pS7raiiCRvrFDYQJR9Jujnr9niAmqQ9NLgMNQdzfW154dzZGNiVF6YLkqZxQW1wXJz4DdP: '10000000000' +- DdzFFzCqrhskmdcf1AvMMoTwpLe99D942KHbU8duNxZujFx1Evwj4L5MYHXYvJVj7RTLLq82d8m1T8dNx3FrAUEj1Hf7GqaibWeazqqz: '10000000000' +- DdzFFzCqrht8LXg6C8gYrnNw2vM6NjQq54yYZcY4sxQohccgA4Ugzvn7XEuQswDS6TjTAEe32HxwHn1tYXQi6nNqdcTXyCK1xHoYri5K: '10000000000' +- DdzFFzCqrhsv24r2yWyW8rk7KC28gZAgyYWYZWPqxbu5F6KUeUToxi8gmuQzMS2YWkXeWFXipL3JpMerAWqVKY55SqDZDfSsBuvPPKFP: '10000000000' +- DdzFFzCqrhsqVCt4UUKacnHgz27FtJZUfvK1uUQXnKd3QVjjUy8z3CppouvYkuLfvK4LYeF3uXazAKsbmPGD11uDAnUhJ1hkxHZD5Z7h: '10000000000' +- DdzFFzCqrht5Jsq8pc6XZ7HszkS8GKdjWTLwx9yBGMCvUMm9B27t3pGGGstRHVpgEJ8ZwbK1831z4q9fLXR6jZ93DJoPUaaJzS3XyUvC: '10000000000' +- DdzFFzCqrhssADccjeDoHmGY8b46ikWGHMsaXpzhM5r3fc8D6rXjxMQv5r5XfosrXBiRiFnHFVdvKPoDRzGjk53xM42vrgmJFzrMKFCh: '10000000000' +- DdzFFzCqrhskDjCB6feTvqrNMDmtcDuFB9pa5Q91h6VTwUT6a7jccdmv8jEiHGioeCZgRV77BdBGRLcAbhPNpJN6AHQMd7fN6TDCNfBm: '10000000000' +- DdzFFzCqrhsvKsWhmmLFrteyGtaGjZUprgw9LHXpXLq2WR73iszWbzd9Rac8q122nXjbFxq5tCkJRkYXV1poT8JnuhaPToKEkfHyYgY4: '10000000000' +- DdzFFzCqrhshTqnGQ3vwT3usggSFkhcisYtw7CHkhZYWPKxw6YQUrmc5bRam5cjD7S9opQus9EfgxbViHVKGUAuHFktrtGgHCKpiTR3X: '10000000000' +- DdzFFzCqrht9mqjNjcUzMJQCCKuetEYNFduchRbFqTmRLe9ERsNChQsDziDEK1EeDeutehcU8LhYrQJQ3NkwWNLuNgSLo1ZZNStsyKMR: '10000000000' +- DdzFFzCqrht62RJx2nznFLa9PyBRGou8CQjWtd66ntzCzWmp1qJCG8Ls6BXQCDa1GTbT1PhLdfJ3fMexHBRs8RbqdwMJpVXzZSC9Sbgq: '10000000000' +- DdzFFzCqrhsfGPwQT4KQidEfEgxt23tAyZKmatiKxDivkaL7D2nwHtRureaxCN6TJ6aTKdg3YM6YL4e2RKrBbuKgfwcSJ2GCtt43fJgC: '10000000000' +- DdzFFzCqrhsq9gaTbqV4aJ9mWNAXjdpcCwLUCsruHn3PrUo4FadN8BZLKckU8RE2qkk4NgnQwjRwLnzvs9zkJJXqociz1TM7MDMWNMDN: '10000000000' +- DdzFFzCqrhtBgHtgDnvge3BqAyHsdQaaa2kNveMH4DwHeowNMYoSCsCxCEVHctpmbFQa7VyzQTApNZkgeuU5CAzUFPw58hqxKifeCk2h: '10000000000' +- DdzFFzCqrhsrjtD75C5JPZnPYc8ERSoXejiC9rLjaieUqDdwaizNa5QceGoVs4G1iyxsW6Xpd5TijRSbSKpi2XAtahfWEgk8ydLAfRic: '10000000000' +- DdzFFzCqrht3Nu1ynP945mofM4mXRxbQwzgRG8JjDYqnL5hjEbByEfWUTCgbEGrnDobdRf9R1xzJcXFJ4KZ71MgdWv8F5Ta4vYwdtzf2: '10000000000' +- DdzFFzCqrhskrYw9LBJmbaBdF3h4SeGggM8FVwoCdrhZ2uRTjmWmaQfyXSpegdqCgNLmEJiTFcPDjPMj7WZuCuSjHmCmFJaRpHer9x5z: '10000000000' +- DdzFFzCqrhseZminsKqmJgvt6Hq6jrv7VWQ5Uw31thiF4gPdVUrxvu3Gmcvt2EP9CHzC7S5pSgSJh7waBNZrjZEzVEpV3W5DjtFiqGDt: '10000000000' +- DdzFFzCqrhswqffexzb3aoNGiFnUrCiuREuK63J65toAzjpwD2cx1oCHLtBR5LR4MaAJSGRbn2uWwAC4g2wyjx4w2z7kJjEGuFCVqmSW: '10000000000' +- DdzFFzCqrhsnm9uBb8qarQZfSSYxYXjQ81TdcyswH4vgsHBjq1zov7nMy4ndTRS7Yuq54ne6Ds6rfyFUhdBRk2pJKYK6RoeUiGV1vwyk: '10000000000' +- DdzFFzCqrhsm1QSHAcAjK3Va4jZdDq1NvHCQjrqfEAqUBUki34yQvdeiKkZpGabFLVuvVbQJDk69YFTcwoCLbhLWi6vYWuzi93miau7v: '10000000000' +- DdzFFzCqrhsksQXvpRDVaovPGxirbBZcv3pxsb16fAEw3WbWu4fSLjvo5NLxk6jwizsBPG6jHzvwHn2DV6QnzbHHvQdLq2NNKDUukh74: '10000000000' +- DdzFFzCqrhtBmu3pCXv8rXFW9YuAFrrVBypDQ5GfEvuZHfsgLfeTBsnZUT5X4BqMhnLgoFFSnnC2FTz4PozcSYxqCCw89QETsn1DdnvV: '10000000000' +- DdzFFzCqrhsfhPP4rNa6k991fiUXpSp6thLbQkzSVZesnJeaJwFk8h3HJkWBJGRECokpTthCmuJr9qEqGtvCP8xLmmUnK6zt8kzhBykd: '10000000000' +- DdzFFzCqrht7cWB8GyXGv8VFHUGWyKSdp8LNXdzjLmhRpkkak2wAZDTeonN1pzkUU2YSQucvQ3XHtAzxPPoj7eNUXkV4sq4b9LKKYhXi: '10000000000' +- DdzFFzCqrhsxcnheSckLSjUyNWc1yZD9z7yudRfQGu7VBoEu45CPGmDE2Zo7a1KJVA6SinACVzoRfpsznH8SnxxUEgMpi5ALKUArpo2t: '10000000000' +- DdzFFzCqrhsyv2KBMBB66EJHkNS7w7Ei3ismZsK888BE8pDcbKWVrdpb9qmMDPb4RiSQ3s12cQ99QwAcyA6wEHU877t18igwJs4TDAnt: '10000000000' +- DdzFFzCqrht58Az971KU11U83wZ8ZcPRLT5M4u3iyjUyJnwthbA1pddekoczb97vxmuAsGAJdvGJmKmG4frEdBE7e7MmYp3CnXWyAtUe: '10000000000' +- DdzFFzCqrhsgFfKY5vePdM3QmjHb3GsUrKWMpLgo8GxPSy8fmCQNdUqjYm6oA6QTaSJa84wZZHvZu7V5xsNqrRxYjh6Nxb8SwypkURhX: '10000000000' +- DdzFFzCqrht3VHwMWTC2qwUy1uH3zQkCnHkX4XcJyiVU3YwQPWGMHxFGnNR6PPemgjWBvwPfAfNfypxbLhmJuR34ph8vVszVCMquLcv2: '10000000000' +- DdzFFzCqrhsmrxwxYLr4FesY4abQ6wYeYDbAn13teGi6gLcU1dsZD6uzvzF2QmGuBvmpyF2S7uotax69TzX7w2k95A9yf1FkBihYLEfE: '10000000000' +- DdzFFzCqrhtCNu3fevJ5tbxwWrk7nF8RZKwTwjtZgRtW5hZwACqRcfGe4xLVd6bXeJJxjhJi7ne3kKqtk7n2YkxM7CSEMDpDHuKUr2ya: '10000000000' +- DdzFFzCqrhtCsJdwUCsoo7Hj2exyA3nEqPzicMH8va7xqkHmgMgHvtJxzg1MKM9ntjzzvBAsUuZ5ictd59CxEmJ3kiKNJ6HHvdaVN4qQ: '10000000000' +- DdzFFzCqrhtAY1WSCqaYrrG3fKvyTM925RzwipCphUpekgSrDsjA4Ps7GJCqUjv37RjcyfKMQFfRQqrm142noSv4Gdwrzca1uFCEH4FN: '10000000000' +- DdzFFzCqrhsmEBikbsSNrU69MjNcumTY4yeErzt2MfNms3cEKNVJBU8cTDPoDwsZD2CUE7W8bCfQDsH6N5HCvDkJr5f3ZgeRbMyuiAZZ: '10000000000' +- DdzFFzCqrhsuNnToiZ163uiiBWQBzjiMVugy17F1n27KzyCmB5AKewPyzWqEFWU9Jtoghnm6Jr5rXnU9c4WDoD236iKZHK4re67s9twj: '10000000000' +- DdzFFzCqrhskns4CuEYywAcDBrWUU2mp3Gni2jkYUg8osrGKPyonz5oBNMMXicyWKiFpXDtearQHed2Z7qK19oNaezLKa8fAcjL6LGE7: '10000000000' +- DdzFFzCqrhst5k9WRKnFRpUK9b2cznh5b7NRkUynwiJRec9wdiBbyP5PUVJfVXn47NFmwLcuMV4nLyShBVNpnSWbj2juRjquxvKwVq55: '10000000000' +- DdzFFzCqrht7Un7iRMdZCjTZzxf29xKMiBLgs9YUyktmuk8qMwu6nSHQ5UUWf8k3VvP5NaY56XMJwnroswpJveV9T1YPpoEPLMnxS195: '10000000000' +- DdzFFzCqrhtAzxVLejkpxfh56FXiBz5PCUF6Ea4LnNc5PC9uSSjss7RFMErLdNCDiETPq5m5ZL36Wdw2MSmmu37vmAzwikzNzuVVT9vh: '10000000000' +- DdzFFzCqrhspAEmqDbk5XGWHD8FETFnoUAC7RNvBRnXZqnv4CusQ6oo9gKf5Z1hsiC5rnC6nzkwcE565ouA5MjGGJDD2JV4pqogJppwP: '10000000000' +- DdzFFzCqrht7Xw9GSxcBzSrKpxYniA1x8gb2KrHDF67NMzhLMyj7q7RqZjdTFdoVMRrC667vxjfDWVb5NVMEmqTSv8R9yLPkRAoCZbtd: '10000000000' +- DdzFFzCqrht8czQpERWB3T34hVP7V184HnUYsRR2U7tUYKvdrhrzswu9oFzNVz19ZFZy9tA44G8FmRmGrCCyxVeSLfxwqUQYMsHCB5UV: '10000000000' +- DdzFFzCqrht8kukQRhwF8ZS51Ac6ZWiyBex4yevB1phtcwcmXCrEWHdJpKAVRpWrs2WpToK7YzHXVqRS5yCb7FdRotyNJ8Wb3QoZjA7p: '10000000000' +- DdzFFzCqrhsrL2onj7RdwXZEBqgFpSHK2BcWx6DoDppJzd5Sszi938Ss3yiGnjH6jJVuPfTZ1m9QtxBPWQoFxdyoLjkt7gic5B1ZWdfN: '10000000000' +- DdzFFzCqrhsvpQsmdyRD91kuqvtxhdWMGE6XUQQf3vo2hdxN9vJ2w5RHvqoUqycdLoEskLom6bQVo8YG9Ys8dG81ssD7gWm7WAzwgcG9: '10000000000' +- DdzFFzCqrhtARo5aZWRwmgsHTGvQTUaMyNjcv6YRt2hRDebygBZcMBYuNwJNU8Vhtw9XuVy8cVR9fJQ4imXNAAxoETgmser875DtB7Qd: '10000000000' +- DdzFFzCqrht2phxeuGkxu36gUTDtWX6GniKuANNFa9SxhEjajWtPzc5rumfvSbdLw4NQUyoxSNsqi3RhJedtCchERvp3chrJhFnjzTDr: '10000000000' +- DdzFFzCqrht2cU4htvHMeBLiPgDDmLxopVi2Py14tmDhBfUYsZXTTsLs2Tjq9Ne5wUSQYHZWqE8n62GLQ2vgJ69jBCDpjZ7J321q3zWa: '10000000000' +- DdzFFzCqrht1FjxeaiwrMp3vP38SrAuvB21Kmaar2TYEWapNG1qdsheXXzU3N5PWrt5ZRsHMuy8fzmAxtxX4Y82EXu85VJhG8SAEc61K: '10000000000' +- DdzFFzCqrhsgR3ytMhHziYpg1sEG7cYzvicoHyd5kT9Mgi4nLzwc32fUCV7yMpSWcarAU31MtCurnpqFoSCVsabiBJ8A3HPvqGu7debf: '10000000000' +- DdzFFzCqrht9UWFKQUrmHZggsWCvc58aoTPBNPRYNpEaxxY358ddRYF2YXXdRpPfbMdnf6hqqK3QRxhtTxiWUZVBMddKDGVE4CuEsXeL: '10000000000' +- DdzFFzCqrhsgdRAMQ7JuP7jS8d7BukYHsjXK69FEpZAVquAJ5f3ksjNP69HjAdZufGp7Zfu6ieEwDBSSkxZTiHHWuL1uyJWVwH72okwa: '10000000000' +- DdzFFzCqrhszNccp96SsQZxkzqMBSs5Fwgqjt8mWE9LVmAeCuj4Kw2SvywfgPA5gTU1KYCkZ3G8e4i4SvodXPnnJmMEEAybFe4HPBAPz: '10000000000' +- DdzFFzCqrhsjMwjN9yzKfqxBsKBSf9wE4oH7JtcCfaPmugCyz7PGYNzRByA3vHxVA8RA8ud1mweqCyXqL3T6uNs7dSVCEQKFJmDYSJdX: '10000000000' +- DdzFFzCqrhskPrKFx6rw4VbGzY6g1kq5K7MTPzJVvDXz7DDNMgb4KsiaDLGHXErTETyX9jHr1t6Jq16dnyDS72hRXTLapduf1JDYATYq: '10000000000' +- DdzFFzCqrhtBGHMyjRhTdWkmVoTUPpbx3AUZiKG4C1ytVBUhmVutdXzcU9jcyUBwQ7hV2b9cZFrPh8bXZaEWUSWaV1atSEDwMjcwBD4i: '10000000000' +- DdzFFzCqrhso56Q6MoLicTf3xniWQFDUKAGAsnMBXEhqLWzCtiDHE3tMvLu2YhRAdfKd2WF9jVj9zJcan3hvijgytcV2vsFqioZ9ryG3: '10000000000' +- DdzFFzCqrhshTd4CpVK9NRWtcJ6A2qL11G4DG1A1eZ6yq73QvsbuccWVYrsZ4k2fu7qjsZjeher1FVQ3SpfgxkWV7fkjAHoKKmoUPiAD: '10000000000' +- DdzFFzCqrhsoez4kAFHpDrUXeRfGoi7yxEwjRiiNAAuYpgtpRJSiAHytKyr6TvKgoYjKJsE2gzjVkemz2mUm9P7KBEHt1PpZrwFTJvEB: '10000000000' +- DdzFFzCqrhtB5MddMzrtV3VMgzSu39iR7oNbJTUt4JcQbMNBHVpdHSn1UAMcS1Tg8CjryaSH9LjvReBLCMM6poEfUApkixb9uLeHfDST: '10000000000' +- DdzFFzCqrht6WiMPLcU5QNGvN6HwqWYTZxyge5SMweQF1MK5zibCKqgQjh3gvLotSwKcYnZfupUUrTr7RYHBdrhrV99uJUyVJBDvDibb: '10000000000' +- DdzFFzCqrhseumPpQeXsd85hrwrjVeiLd1xEn846veoYkTh9yiN5tu3v6tKzyRFAptZtTADaHcC4UmEkHMdwpBXHdNS3xccp2QPGbLYE: '10000000000' +- DdzFFzCqrhspHH6gW2PeSjuZYiEYGZTB8kzt47bz4iaZpNWvVseZxRQKq9iRXLZ7hKAhBLJN1LjdaXmorucGgBwH3YAeQs2GU29HMD7x: '10000000000' +- DdzFFzCqrhsqfET6V9bP9BFbqrfF8pPqW3yFu3yGi5fcpc8JsgTmkuAaKsRGMokSa7AGYGiTJpcbBiNYZc2rSkff8aECKHTR1ukryMjD: '10000000000' +- DdzFFzCqrhskxbuAH9yagoekt4HoTnqFJfTvniwZLn7ZABjp336jTeQe1wRzw4ftoKRETNzmkfQ57fLqnLPh1ASHg6h8GL4xXPUGnXYA: '10000000000' +- DdzFFzCqrhsxkiMYpysqZFwDESf5DuABcB6Lu6Ej99q9SF1y3xdVU2yzkQ22oigNudEW4GmEFHa28esrZvGszWRRGm2Qdo4WpakKWVUG: '10000000000' +- DdzFFzCqrhsiKjmRFtZ9r4LcZGXnHB3kf3667wfDYYcoJ5kgmjdEQebF6DLdk8rf81ByPWXsbUSqohPHegdhdvH3nyagnvPd8JEzT9Q9: '10000000000' +- DdzFFzCqrhsjKBHW3LGtau38Rjfc9zNJL9aGfDpryjpXPFeV8sKVRMDENaBJKDnnHmUMu64KXg7Xxvk7WkajUCA7ak1goaDTcc3SsnRn: '10000000000' +- DdzFFzCqrhsp6YKqcPShov9twJSUVafhfLFS77XBtgcgybD4TnKXT1GnThaEVfSQvHhutjvwtxf2Ae9BaSvxbHvA8KXKkFsZsMnNvi2p: '10000000000' +- DdzFFzCqrht5b8sXXzPzvsTayZyoy9VhREPe83n8pw5B5fDWBH79VL7XoVrcHsFzEKgaGD8wwFehEGNhzrrzqhe5XoN8F96AAu4d1Quh: '10000000000' +- DdzFFzCqrht4UfD1oFbgrDDdB4HBGa6T19uqyWp5ukVeQH2fdsPNo1pfvHAnbr1WMvsjg4PpruGnBB3sXRH2pqc9NDEuPe1e7C1ryGVZ: '10000000000' +- DdzFFzCqrht76xYGFRn9JWSbQoGr8nKeNGGopVaoWv67DzhbEhyZHSkoG34U7nVmNhPtx9gFyGFDjX3Vo3cw6DBFTWbhGggJmstrtv4C: '10000000000' +- DdzFFzCqrht147RYeEX53ijQkdTP1r3JwYtXehUpuDzvkaey8BXQGECWycJojgMkzu2HxFMXwoHjds9ARnRNCS2WAhQuQqx6cTaxsJqW: '10000000000' +- DdzFFzCqrhsvee3PjuwuWaiMt2vjhQzSWNk8PLKtqTsScTPeyT2qsFdGuFFiRhg3HacyeVJ8CWeNkyCbzKKrR5i9soVGidUYJjxyKrEB: '10000000000' +- DdzFFzCqrht2hNoZusyjxGJPWQQzRw7QmmZL9DojQ9CSetv2EBot1XV1RaAwuECKsWEFtrwnLcfo6HzENqQAVk19B5gGgS3FcCqaYE1R: '10000000000' +- DdzFFzCqrhsyuuABmjPmdAdLCpiA8J5W23uj9sJ1RQnM2D3TueQ3RFgk2EmsYxF8QUNA7E4vk4AAsaeD8W5PGGwyuHHCwG3R6bseVLT8: '10000000000' +- DdzFFzCqrhsja25MAkqAEPQuTrNNiEPPwfKW5hUhbdN454iFuqtFF1uRN8VCsrKG7phPF1dKMLby5Z4SafstkEMSsAuk9uLUBkfAfGcV: '10000000000' +- DdzFFzCqrht4grmqogVjdp6P5UTN6vfNotKuCFbPPT8Co1JKe7gAff9HuF9UmLzpypsdyXjrq98QV64WhMk8q6RiHLwbMn29pevPVbLQ: '10000000000' +- DdzFFzCqrht2W3CUCMMEGMopZbRxgqJvbAvRWdrZ3vB9nUh85jfAzbztUGuUdkAZiNPvUPaiYuUj3EW8JzGtPCzaAL2tNg8zwKtzbHJ9: '10000000000' +- DdzFFzCqrhseT74HR7Pakfdxf1q5Ya9FwDLigiTXCd5HfM8VCnZ9CFc9PUL563X9uNK12s3oefuuhDFMZjGf95Q64QSyvs8iRUQjLCv4: '10000000000' +- DdzFFzCqrhssY4kLW1s88sEfi7TXMUpCv4FBZ3NASyTy9nWmWo3xJiAUHTGvLZ9uYrMptCaJQMbvhKVW4xrYU55YjAx5iir6QTrdYEcM: '10000000000' +- DdzFFzCqrhskr59V5PhsihPEYqXWETFohYVuqk6fZsFDmTzLpSe29dQeDNSq3BtGqDeq2TEyXgfR7cLGqyR3HjXU7ezCpHFE6PaPtbGm: '10000000000' +- DdzFFzCqrhsga2K5TgrGWRdfLpBtq8TWiz6sSvvps4LXmpkzTvRVWMqhEeWbjTSiTemeoKLfZ7JgQXgYbv8yLghGcLG6avvytMTVQqyP: '10000000000' +- DdzFFzCqrhspRn8umM8KUxVBXr897ub5nJWvBziV3CK7KZ3A66mfgHbAVGrFDg77LvYgLtPSoE4drkHfd82VPJfCD7uqRFSCpJNWPqdG: '10000000000' +- DdzFFzCqrht22FgBsNMKLQzEz7e13vFgJnY9asRZadUHh8rsymAM1W87vigUGa1avr5odr7VeyPfPRWHSWdtvjB7ZSceFzmiYCfgRoum: '10000000000' +- DdzFFzCqrhshLgMEWfa84iaiph568skVh7zso4b4NH25eCkQc2czA4DGCodrUoogffXiCcmYsojZ17V4QuVym3ExVedxzKCepPSpneoq: '10000000000' +- DdzFFzCqrhsvq9SMVfQpuaEQutU2fSCpmNso66oQ3YUYh1BXoYpMa3nytjCeiTg2kFNuzAyQhFmvxofQvsxNpGjLCXE4tZ3r8MCXQqFJ: '10000000000' +- DdzFFzCqrhstdybP394yYvpoD35cMQUycokeFaU7v4Z26QCokWhHHKvKtqqaiWSjVSvs7PbULLuMn7PnPKhKeJuL9F2Kv9D1LxUJTJ3g: '10000000000' +- DdzFFzCqrht9oy8naJFg1wwKZU6RyKGrbm81iHtige2mf8FjwhorMzyf26KgLeQfMpK3To1eh6LYujnJuvCyUAuVPigrQJmz3zg9fJJc: '10000000000' +- DdzFFzCqrhsfDgGE8DiieXTXs3KEMTUiyPM58xrhpXbDgrifB2TW5yjHb6jh74bZuqPxRiZabpvj1L87EycsRyxHGS1L1JHNTRQbh9Ty: '10000000000' +- DdzFFzCqrht1wtyWjNuDqdbrXr2dJmpaKG1iWrq2waWemcjQN5GRLfdx4ZnDLXfVQh5ieNs5U48JeB2qSForfNq6ktn6eYYX7x6f9d3k: '10000000000' +- DdzFFzCqrht2oCEfURAN5k3pfYme6VVafLaER4yHHk2KqxCZM53aWo7o73sfAwugGEnUJ1e9bYtgyHEf4UxVLhyrBhUC8rXnja1nL9qy: '10000000000' +- DdzFFzCqrhsttvN5SYbR57HbjLCvKM9UMcEDGL5WYBcgjCSyRyqWcJUM2pkPtcddkTHNSmkwP3uc9Btvhg6zytPCQCr56eL1i7B53Wxo: '10000000000' +- DdzFFzCqrhsjbKxuDaCwuoi3k8SsDVzD5zvjjsNLp9C9Yk5XjhPk8cTWYzErtStoXRwMfHKCkMADJWikXkXgY1CP2mc1UpDP5dPENwFc: '10000000000' +- DdzFFzCqrhtCM1Ltqvxh8SYXje84FqXPZCF4rqaGrwe9cs2hHW7kEwA7uzoJuQaPM2Xy4SkNCqitrvC1ia8cZvANWABpYyKRq5mN8wze: '10000000000' +- DdzFFzCqrhsfy25BFvQotnd6zMXaC9QqWSV7HJa1SBEHxkiQHR5zCwdp25Qg2Nd54kVLfmHxUFKEJF5y2dUkHCqz8r4aaW8rSDejSjYm: '10000000000' +- DdzFFzCqrhsyT41UPeRUU2BQ2wMHUSJXniDJSiqdXvN8tesCiBuUMqfq3f21SaKPywqCHa2o2KyTBbfWD8uJ6M79YSR3xa4aaJDdqqFV: '10000000000' +- DdzFFzCqrht6unWrSK4wMHnYzbKs9YAxmHf4JHLe98gKFiQJMzCFZ4qRRJijbdRYksxRvHMrrx9VpQXFMDrgKh1sr3NocHUbTVAWBc6q: '10000000000' +- DdzFFzCqrht6jA7nTeiT7JkH4KMN6EbgDT2tPswWznLCHNonybtwWw987HbwrMYtXRC1spSiqqHf9zr38Tvu6ZjsFnfRGCSf5nAcNqAC: '10000000000' +- DdzFFzCqrhtAzpaeQoSftdDk6V5GQFCUCMYrTUL7yzwDs2t44hVweXxMYyoUto827zmp1ndmMfCkqHuaDgozpCxZLpU1AiuxVmtj7dqA: '10000000000' +- DdzFFzCqrht2k9HVcXroFyigNLF6q29rnUqc87iMjzULiR5MrJPFqZiG9NYqim3LY7oy3Vva4BEo1nLpj2XMDLgwztibF3HAVTmtqRxQ: '10000000000' +- DdzFFzCqrhsoSWFixq4B1ZxGp5dJRwcCVaLxKysvEsvsFoUr4vn6XLDdMExA7QjPm7XZDtYD6NU5gmx4JSNxw4cazoLfZ4YD2YhTdAKF: '10000000000' +- DdzFFzCqrhsnHGn6bzS4USh4SSWt7TGFRXvr6to2UgCAC1PdwL2myVoZ4jM5Y6jSDvTziyoDEbm37djUR1br9tEQr4prwzQMSHsEapxt: '10000000000' +- DdzFFzCqrht4pnJkQx8bzwztv143duEYyKD9BaRjg8nugjMWpE671ZG8rnU3ArfqsHbdasu5Zv5rhfvgfmwEi1eyxXzNfE6YJewGyD3s: '10000000000' +- DdzFFzCqrht8SmwQCteG63pBGLzrmL4LnSQfoZQmPsRgLjBSiKgnicwPjvufCYEbXVubU2V9Q1g1JaiCSwGxvhYiBTxuJ8FNe6MXTsVt: '10000000000' +- DdzFFzCqrht51jL8MpYciemXat45wWv7LuqPS2dY3emJYVrWFFyBvCv8r5KVuTwKA58SkiV9eWmWXVrT3Dq2zjEAW8unSZACWCPnVZPN: '10000000000' +- DdzFFzCqrhtCPHSeVrhQGwiSa1mcDyUPb45WdkaEqKTUkS1SxuKhxyikLVP8fN213a3UTrABSuWSy9PenEutVj6ceELEFjBmHJViQztg: '10000000000' +- DdzFFzCqrhtCQsAPnNfZsYJ8k6hanrwrf813Lbgyz15VVLziFZjuWJiTPRatgKrzMQdwraKvk5aeShudVbeyqGSXtp98QygS5a7eXzd6: '10000000000' +- DdzFFzCqrht93kyKopqa6JkJbiJTacgq16krUoE115dATgU1FPXT4xmNc87TH4AtUgrrzFPvGkDzqtuz4L2eqb3fupBGFciy72Mwcucc: '10000000000' +- DdzFFzCqrhsvso1dAhgEyJRGRrJDTTyBkhy281rX2166ywShZ1WG1Waok6xsJ6jBUwaH1QbMQbKYAArLhgpnLtgV6mqTwQD9nQvW11Fq: '10000000000' +- DdzFFzCqrhshBx8veya32mipNzcFbMhgg3GAN4D2TfGf1gim49PSywrFWUsoGFcC3Uv1MYfh8tzsuTxKbxNVQEUbpKDv7ajXB6wLJkn7: '10000000000' +- DdzFFzCqrhsz8UJE4nmYQtUnzU67kKzwq9AfLEG1eMc6KwNschhS1kr1BozeUwrsFtFxrquomCQt1SuUScnZv6xfJUk3GbHwXa4de8Cj: '10000000000' +- DdzFFzCqrht1XrU8iDYgEKDxvBgWefRFc3fyiPRDxkKkJTBVkHKnqbfRGuAmKHJRdNEg7hdfYz5JtLYF4LhyFsSF8DJ9XEzae2qcZCso: '10000000000' +- DdzFFzCqrhsnnRfpwZcmMViPBXekT1EgWLu5M6GR8uLBaizjLArHs55sw4zUrN5sAUNcYKqDBjL39bnfFbTD53iJKi7bHTgEpLrGJDuP: '10000000000' +- DdzFFzCqrhsrofPrkxdJ2LyYnZoHfqrUdRGd8S8d1VJDePGJuYRK57Rz4dXcFNyCfAgwdJrNFzbgde5FT7XduZ7SrcjGeD6JQHr7Y3Hh: '10000000000' +- DdzFFzCqrhsitf8wPy6UToPsP7wRysPMCb4ZroiuaTsYCcDcU3VEeCvR5muVw83GyzjX6PiPVKC43k96o78Rqi1EQRrQqfQGRUzsmNzd: '10000000000' +- DdzFFzCqrhsrdxLCMeLWbKpg2kNK7nxHPc7Lo6pCkGRxSWdCr3ZQ3iru1TzJms1fyaDhDyrmkWHgPQahc39fWuNvBZgxxgxT8PsoV5Sa: '10000000000' +- DdzFFzCqrhsm1dFRtiJ3mCP7ymy1XLTtf42egGdNJcPKMuzNQYytvvAq3BYVFaxzjypq6kpJnXRqBHmfY7KD1TUzjmYSe6DkxFioAgHw: '10000000000' +- DdzFFzCqrht3UpUBseRATusNQNzqCU2dW43A8efBaBiuNsStxL36LgmMSRWhk3LAavKXXtav4Sa6mskHS6cSkr1xsAJCKVdGUKScpJW6: '10000000000' +- DdzFFzCqrht9EDG89L7nL5xRa837Bzgd8ZNzWgyVZ6aQaDDubRhaCkZuCvrDT8yJSKcgerCPeZVcbep3Q9PAUL8RpuBjshzRQmhcaHCL: '10000000000' +- DdzFFzCqrhtAZnJW1BygFYjQ4VFcvrhM1D188zNLCAVKctbpPURKrzB21gpQCUZqh5EoUAFbPGjTggmRqwTmY1Cwrk6pbQQgNJgZGpC3: '10000000000' +- DdzFFzCqrhsikNDceYgYHAkWxuZKGLHtzhppTbh4JP6Z3NoRAJCTsLt6GPMz24J43bVxzUswtxYP6J8RHKP8yXwsLhMRfNfheSGiciR7: '10000000000' +- DdzFFzCqrhsneHieee8wG7MV88xECMametFmnqqfgRK6UUc3WdXPBTc7zB2sz5dFcsgXQVeyARYCb1KTCMxQz5QnBEhF198hGWKcCuG1: '10000000000' +- DdzFFzCqrhsgLXb6P8bdZZrPMYAobcQ2YtTdWRGVGkggW1mgtQqBZYn8wCxGqqbTmf5yFWAAXWvAw8FbLWUVKuNDcobBFY2wEHhYqdRG: '10000000000' +- DdzFFzCqrhshK8w7NS3VwDXujDhyBNWCBVbTCBxXmrrxiWdpPQcfyHARb12JHXT8ZxjQ2jGZb657GfjniM7b7UgxirhHtpjF4BfSSrJf: '10000000000' +- DdzFFzCqrht1rvbLnJ6wTDeTrkmhecufGuKz2c2FcNW7XqvknouWidJBuggDiYktq39i4LRUYjygdsjjmDHj3NPYWz5Wd57XA8n4sjjj: '10000000000' +- DdzFFzCqrhsoYGPs5CBAZd9erisJJcy9ppqtFVxP86VYzqMTuSWSzEbQFdmP6X9LxEJ2Rg37rG6PDvuV4NPKaTx7EAabzUabjFUyTACb: '10000000000' +- DdzFFzCqrht8Hx66mQdCm7mbdWHATNsAbRxn7Gvu4NSF9QCDmxiujhZcdZTWBZ6QSWMEB8zeBWe3v4JWJ6fb7ygY78UALHbyY6iUwxV2: '10000000000' +- DdzFFzCqrhsfCUG4oGS7zjViF1Kq5i6R2tMUg24M9otSjbdFvniQ2DQEEEZjAQ3ajg7zMf4JJNdTGFQd3gWnVMEzi1d3EArqjsqi2S8E: '10000000000' +- DdzFFzCqrhshMjK4UKScLNrirHEFoG947jyp6E7nAmLNXz9DM8UPC4AGeAzDRpVrwSMJj5aXXuh6CGYosAZG7ydm5ag62Cei1v8wVFQq: '10000000000' +- DdzFFzCqrhsvikunnuxVpA5xNMoGVEEQY8i9ehdipCoQmxxC4sU5wbXxv9DvEQX1dhpRYuXVFca6V4didAT6QTVmZRGSSrtHT462gyxE: '10000000000' +- DdzFFzCqrhsfpMvF4abFootCnqqGZTZLUGTUG1L3vMzZAeHKkB8Rs8b9iwer8zB6tcnsHXRLgenbdoV9CsV2bS7SjvxS6DdA3Rc9GJz3: '10000000000' +- DdzFFzCqrhsq7ARArA1xzq5GhM9eytxFGX8hHybBg1zYuxjy5GVR1aK3QjrYXqqehr5TVLyPSfLNLSU9JL6GeHchYFdZP8NkLmUqnCkS: '10000000000' +- DdzFFzCqrhseQ5wfpYVXPdDyKnCNaRx8n9BJ1jz8V1hJ6E7B3pXQMJgyhzuAHfzc61v3F7Fw94QcsELdLGBbv5K7qHRKYfgDcp8Foqx4: '10000000000' +- DdzFFzCqrhsfsnw3pX9vTEuuJSfNpvhxZFXkSAtVMNxpqJocpgC588E1LPpBFsaZMBjmhVaU7tR4ieXkJhR9unhiyqkgffio71mRzhey: '10000000000' +- DdzFFzCqrhsr15mNYiBhT8JDrPMJnsbjvSJmgyJDfvruMqkfF9pKKZ6hfyeNAW3NKtqT764muqKjqjzepJQwLE5bx6oJn7UmbTL8FRZE: '10000000000' +- DdzFFzCqrhswjvnrbemRkNQRNTQT3rUDhScuNxVGsPpomZC7oc1guLiMFj7wupJiyDkfHqJq1fQSDFptPEkFuywLYgZxjK3L4CsWdjUZ: '10000000000' +- DdzFFzCqrhsi7C5wvHSrewFeqh9DWKtL4EEtFmdyiHPoxkUz9Yo4XUQGVkQXsP1UaepoRNM6grQvj8syBgqRq8T6cozavgXQQrFzUwUk: '10000000000' +- DdzFFzCqrhsk7aBFn9e6N4PZTGmA5U4onA3Ug3WJP36hpHZ8qHK29N3itSHGi59NZJ2SN44B8JEBwBp9PHsn8fyi15RTGUeegDEqBtq1: '10000000000' +- DdzFFzCqrhsjvvGJeLuQZYrU3e9BGQq2xi2qTJoQdW5dC2QFDVAeSHJV4C58zQaEuRgZcnQLkymgvzfnmrpTtwhFjcNPd9K1PzbRM7Te: '10000000000' +- DdzFFzCqrhsgdF5ewqKgZoefu8hYJ1NMkhrdszu71f7xKSGoQoox7PZFYs78GHuM3Q9sNiRSGZqArVLie9Gd3aS4pL9sD9ZJu9t8tBZV: '10000000000' +- DdzFFzCqrht4pxhAijfxNNb8LiDjL5ut6LjvMRHyErYRc3ttfpBZRCoWJR5Yb5WTQTN3GXVRBhh6rBKm8H29AHvkvaif57pWNq7f8QNp: '10000000000' +- DdzFFzCqrhtBWFa8BNP9TUVCAncfKs6Qh81RiYDwohQrKkaEGDBJYDap9FDgWK8FmksxpXBX4f8oag8i3V5PKC5kiFvggeT5euyJi2i7: '10000000000' +- DdzFFzCqrht8vj34iTcz4CixanAkgudw2xeFaSW4wSf5pimtSMXdBA5bhshJ9xPKddPyUj6Wk9uigEMiuQWPYBjmKm3QdQHAPUfqEvjx: '10000000000' +- DdzFFzCqrhsvGMTrYTi9FZoysTZcziExju3Srq58zwsPWxkbabCM1Cqa5JY8m4pEEj5tjneMtK8RPUxYTHkDKSv4mkWtDwWk9h8daUhr: '10000000000' +- DdzFFzCqrhtAPDcnp5dLfw7DnPDSmH1c7ESSDEhnA9UpZgC7bH1jBfMbCUEYt5kHaTNRGXV8uMmCiPTRpP6pvnyjeqov7NjQkhJsdFya: '10000000000' +- DdzFFzCqrhsecVteqJ6rfrHryNKEfJ1hfTA5wB9PHe1ny6Re895knu4ESKUMUq7KWqth3NTH843DpUAiTuv89SZcHGBJKTN46i5auXBJ: '10000000000' +- DdzFFzCqrht6nBMK9KR8dpqLhAM52F3RCXVg1rN3GqKpS6SJmnTUEkfbE1wpE3QUcUvDpsuDz6saj3QX4oNWfj2xXBHsNEnYvEFPPgP1: '10000000000' +- DdzFFzCqrhsuKMys2Mh73eYpLjbSv3AYrR9iuPNWEEuJLHsDATynafibZMBXXuA6D7rhdAzcfxrdwTWHBp5uJS5NyudhX5YvubQrQBT5: '10000000000' +- DdzFFzCqrhsho3PU9uewV1wcVqbcjjYeWJUb9cC4MFcNPSpnQ6DuXmDNYRUJqTCHj5ZRJVzvyaGV8aNuNT2dba1QKoagyQEU5AVgzDdu: '10000000000' +- DdzFFzCqrht8CYde41pumpqH8ATqC3V2UuBzPthLvuxyp9Z2oM8iHr8Uuedb3sDjAaf9cGQULffMdwnwqLwE2CSQUk9xbfeTnn74bBeD: '10000000000' +- DdzFFzCqrhtA8S17spuytNxR1mv4Wh6MV5fFTEFWMP5NfSBDLuVmzvcobNa1LtsWv2A2EwKsn6EdfqdRtaxLiK6Z8yUpG7p78xTPn9p5: '10000000000' +- DdzFFzCqrhsjGqV5p7N7ViTUdZ3zLw1TNsF4KkhbtVqqhFfTBxmKsodHzSz29X8KgnNPDdPu86g2qzWa3TfTcthNE4fqbKA7KvKeCSiE: '10000000000' +- DdzFFzCqrhsvd37ZutmSWHe4MgNNDuuDMGVEgb7XBG9MkUnHBTPwvmZVfPZCQsMjDf1BMqFjVaJL5fH1sXC44B7TonUny86mbhXS7j3Q: '10000000000' +- DdzFFzCqrhsf8vUNgN8sR1xhkBuMZrPcpxVJeU36edc2yhxRzvReTGCzhEJEERRvhNPSvtrzf5bVQZkTpdF7LJznPx44MBkSmp3sGDHV: '10000000000' +- DdzFFzCqrhspw9dD3yHYECAqmamru9b4fNdMiQxBoB2FLRaVrVVC51LxTchE9nxq1XvvbjM9mY3fQwBTLkNt3Qi37q3H4vqqkc6nvi9H: '10000000000' +- DdzFFzCqrhsvaG798uncErvGtbk12Y3SwYqunB1dZ9Zob3r1N4BkPxrXG3cgri6ddQoEYbtzW6ZpGhz2pZt7mXMseZDTTJHGBfwQQNW6: '10000000000' +- DdzFFzCqrht9B8Q6p4LYDs3MitMyC3NzxUWshQHmBhZXDBrNzmRRk9xJmcw4Q2oNfAmbNiSX1zUDGWXc47suSMKaTH7fpQUWPjw3VhQt: '10000000000' +- DdzFFzCqrhspDPBJXM22dRKbQSa1P6RqPm8E4QCwsgSXNTdmVCmykt2xCBtjp8Z61McvBWGR3ntsntxHNSQCkntYfFHFr7izD4eEVCw2: '10000000000' +- DdzFFzCqrhsqWBezj3c1aT6tVzHJKJfFsuTXV5RNzCuQ11bR585jCLgz1BfwCG1U2BBJSZtQ8UxLSW8SpMwnVrvUjahbFnAy4vVM1XM4: '10000000000' +- DdzFFzCqrht7KBByL6LVBYdyqMeuhJpuQasfQY9eRidhLqQ5x1oKvABdqgPpvbqfqgM2ALCufi31qJRHsWR3Y2ADNe5h7SLyPGRyJH1e: '10000000000' +- DdzFFzCqrhtBNdqwfmYpDnrR8TpzgSeyUrviMj27RhzKrBskqaLphpaBkHNe2qhB43p1TgkNHa56Sa8RFRPpuAsqwQLXZFh74gqJAozS: '10000000000' +- DdzFFzCqrhsi3wBPawwQrsu9erKoxqZeVsiHcKQTV15SUXvxcmvDevWM5A5k5UwbJizfxCCp3FBns3tsCwSagpXUP1En8UVvXdUwMibB: '10000000000' +- DdzFFzCqrhseKSAbSy9gtkd3U8pwg5eTmaokXYN4rBUJhUtz3PJ6vPiMdLrkX5eerchXQCsHc68QEjaNg27NcgRwJ7Xj2ijr7VR8AZLv: '10000000000' +- DdzFFzCqrhsik4ct93Gm9L8oVvJVasEaefrQKtgv2214i9oQqXnCFgRrLsGgJMvyxrg8zqpQnm6dz1ktBAC9cmTqPhoXBcgnddrofVBv: '10000000000' +- DdzFFzCqrht4RikzEYS7VAWQmhDUXYGFaUtrBeR9SXSotEn4rFHnk6iB4kit3oAnHHwocmH3CkeRiVW1Ek6wg2dhKoe97tDX5sJwd5iv: '10000000000' +- DdzFFzCqrhsoGuX4giemBGZCqidjDvaJci4FQTdkhKoyEpjAsjdRq2UmDf5KddeugzoQtU38PDqFEmowDZoyq8NpxKbR9GRLLZ2EiQwQ: '10000000000' +- DdzFFzCqrhsuafWiUBoqLiRtvicCxUGjaFjCnBs8qG9ghxyRDd75KjndNAvNxs1diLLorheN6k9azFKcssZL9yrccysgmNYn42TrLhLM: '10000000000' +- DdzFFzCqrht5E9ycEhjoAqPy3Rbn1RbDwPwQ6oadwqs631ySreScHSmzWKMfQEFpJ9yZoqeenViDMa9FJCYxvUpyM1CAZ8EWAViL56jw: '10000000000' +- DdzFFzCqrhsf3KZvkpc18GgUjEZpWeCezNMdCpYVWzFEvhtnc3ofkTWvhtwk3BFWDmSZJTmwdGTRHHQyTVv9z3hZL9zsPPBuwFbQp7rv: '10000000000' +- DdzFFzCqrhtBymcjBernduecHeRE5jL3crCWYb63DEu6uhKckg3tUdjv6J87GMDbPAcBgNGhw5KwpNRDQ1zsdDVKpjwhUeoiPtF4iSY2: '10000000000' +- DdzFFzCqrhtB5K8KFPfrziDJQdn6dRrsAF2WAsypwHYMgyfkTMVuGiG2wDpMADgXxHGkDAABSx9Qf8zZr9s4JZrAvawASvZuPN5wEWdi: '10000000000' +- DdzFFzCqrhtBQ9uJb3SJKTEUxozZUZderwG7PMoVkL1bSoBbkCZ3mfuVHtGemXZxkQbKEg7eU8ArEAtMSbk2HfRWycHY3hsXchnyTpPd: '10000000000' +- DdzFFzCqrht8KddSbpWJWgQTG6gsCQXWmyi1dnRA9k58P29myQjErgoSazFf4xMUJ5HC6ZXE3A8Ef8gz4DkE2iLjLJiKp2JGohUU2RCb: '10000000000' +- DdzFFzCqrht4Z7oVMF5FAbZFENnhUGo8HDwi3AtvBCewoAMguJMcusj2xkZ1G2KNaeN7e62vi8gbKcaURc7jVPHf3DK6N8gwA2rbyhBn: '10000000000' +- DdzFFzCqrhsqdbMLcwq1ir9ttKk8QDJBuJbPzCGtCifRuq23K1k9KpkrdbuRWmsUb1nHJwHvEsECHf2Vo34cem7geb8nVemDuGzMUTJ7: '10000000000' +- DdzFFzCqrht7U2Eys87vsZYbYwRTtjWvc1drULS4pk19QE4duecG8bKN9qPT92P4rkahCtr6MJj2zPk95aSN4f49HPd98KPxFtdTVKnS: '10000000000' +- DdzFFzCqrht8eBsZcMSjVMXA9MPMzAqawGyBc73TkjzH53mNTF9zfyHUHPhZibmJSCjF2LY3w2XrQxZ7F3fKoKuH5BuKfhjRwx6eRMk1: '10000000000' +- DdzFFzCqrhsdnRDN6ZLyNSzmdd59Esn2htSY2zqRZWkBEh2zA2vpkrXmWUb4RqPjSqPk4ccZHuJBZTN36gGk2HzQSVHKc1KzAv5yunhT: '10000000000' +- DdzFFzCqrht6GTRsyLJdyHAUCnESamUmnvjncurQ6zd8U1vgt3tvkXFVntpLEynDi78sLZKpJVp9oGmmtKYhkTHDqdzEXi6JYqmiSSda: '10000000000' +- DdzFFzCqrhsfB9FNhwvC9KEquS4eFQiVUpXdGrL4krwkXmQ49VszbYd7S3DJmSurHTozCjRCRyvsUn5TbRg5vK6Wod8em2YBum9a83pA: '10000000000' +- DdzFFzCqrhsn3M1bzAvqPqA8yw9thMh3639y2c5iFR8aLvdAhKr1EhRFHY1ygjSz1PdEbmgs3Pn2ks1pep8qE2AkYbPXz71yEFyGq5Jk: '10000000000' +- DdzFFzCqrht74ptLRT3UDR7refaNqtDFUe338o2FwgrDsYKYEhiUZaBALNm1xLxxh6iSrDGQkgYb1VtgCZkBGyekLSE2ebnXLEZ7mU8D: '10000000000' +- DdzFFzCqrhsgXGomhLSrPnrezNzHAknpjuaWEgKVscbdM1JQepwEhap9CcLzqr96eBU6rfsxmJbDKjCjNNXy3pXmoS8494EFJnkZQa6j: '10000000000' +- DdzFFzCqrhtDFEzUa2PcLpHQVQEjuytjfUC9WAGUkjtYnd5nCprVTmKfxhzhJd1jRkVh3aFALRBNgmf9pYKXoLvKe79x91UKCuPKz9xV: '10000000000' +- DdzFFzCqrhsmhDuzuLRjzVQpnhTPy8d5Sv7SwhpuNqfctRotUu8tDS7d9ioBif66FBVDpNXdCpb82Zt3eZhvrzmER6wjCzLGQkpmmfYJ: '10000000000' +- DdzFFzCqrhsmbgdPRJi2kNgjYELYFGC9jspHRezXXo5Ka9Zb5fvqAqaJdGSJcTnocRyURjHRbrW8pDv5C4h8AJoL6QeZ2R2ykH7YLvKu: '10000000000' +- DdzFFzCqrht13CTSxXhUTBdqcm9PankB4vCbkPhK71tobVwkTn66TbQG4gCH5JPjiQJabxtfNWBjzJJFiAoZTeaiZvYqD5PbsHbnf2X5: '10000000000' +- DdzFFzCqrht3T4RYwMSyioK8LWEMTSyxWngY51Et2Grj478dxeZbsqXtSbaawjJHz7xNMknuff9Evoyj5JAqdm7g3txwyzYmq1fi9HRn: '10000000000' +- DdzFFzCqrht32VWaHYHhBpeA1freMs4Z3eXfoHNz6qrGHQwqQRPPprrj9gvECqTbS8TueJwsEbUvzXJZYpLBSBSxSH5bAphxvc9eTwrK: '10000000000' +- DdzFFzCqrhsr1J4rtwSn72XjUPbKKHTbvm9hxuWqEm5jsojSiY1DNH1bpMmvoVRv6c19Sz5dCxbtF5XAn8ueF1617LD3NErxjRNbxc75: '10000000000' +- DdzFFzCqrht7wF5KB4S7siCWk4izz3UJRnymjQBdPeaYp5utMdEUGM99DRkgharYPURB9cLtv3oWKG3DeCXELtCF5DpdhXQBv4Kv4Cir: '10000000000' +- DdzFFzCqrhtAiKwbcUajTmuwa8hLyqJHgEioAK4iKyAaQrUGnKUdYVtrz7j83i8R5dXoPwLybYtin4twFEd7mPJCR5qKhu6uBJvKDxbh: '10000000000' +- DdzFFzCqrhsthrBjqKzNbTkUdD1SoMNvVvf4cNN6Gh4u7uwcHJjHL2QzG5WEcekmuN6bgWa9y2eYombrMoaNRnhzknQyoURvgzTjVi8K: '10000000000' +- DdzFFzCqrhtD22TCjJS1kdhcqeNSaCi5Kvb5Lvu2S7YWRSHAVaQ5SihumEfoMKkrfbqmS5iqHqBPFmh4stq9etTr5AodqWNtHMmTJZoR: '10000000000' +- DdzFFzCqrhsyguE6CN59zezKjDFC1jSoCQDvn5g6q9EFXmrKdzFXWzV1pARV36XDTbDNQYSz5EFYEtCJZFGoezhMPDq8pkzeYMgWZeEa: '10000000000' +- DdzFFzCqrhsnDM5SaEoP8yDF5wi2XAw2KLqYd5RzsUA2JEVr7KqTTQ2NVd43EC7mS93EZC5NycW1zrghHQLWvparLyafAyYNqnhwYEHF: '10000000000' +- DdzFFzCqrhssVDCDxgZTPgPD3Y9WSLuqyfXRCSPqzkxtvFf77JDLMqhQDVHmz9r9fYryBMvg4b6MS58Cg9uz8tFtyZzwwQBNfAuJxqck: '10000000000' +- DdzFFzCqrhsedHfrifMgyVUSVLgPW8N1QJQK3kfkRGSw68bNLcsp7TA8t2taoABwp2Uvdis2ssSfBq5k31GLf88HveRnKcg6YZ3j9iKU: '10000000000' +- DdzFFzCqrhsnUZtisuaEMZvtT4PWPhhb7aSjTPSDf1QndHzcxAMBr97GrQXK95y4Bqmi82Tt1boVJAxURkBaeMsp3MPueNjizoF6s6iE: '10000000000' +- DdzFFzCqrhsntNHzA9Ma6rtKWPQuHekuDB1rYu5aaKAvd5x1aiXouHipe9RDgdwKJQjo5rK3ErgZYrbiBP2yRErsqCRP8vURxHCTqx3k: '10000000000' +- DdzFFzCqrhsqVUG4obH7CNynkBUoonCoAd4oVE4mSwixpjKjG4oWaHa5qTfvEjDitJ1wGYv8Mo7AW5GMFpp7JQSzjsav1bAE6jNoYfKs: '10000000000' +- DdzFFzCqrhsjodeFggviQ3JoPgQ39buiwdQkk6bM9ik86PiKk2EyGTACCwdjqUyGHshqvteaZxuCyD1uQ2YXHyhjRxg7WYsNr39Bdbfp: '10000000000' +- DdzFFzCqrht5MricGnFpFgPHaf1BeFcJ5v6aNAgXwi8jncyUy7ovcWNhUczguEinDYa2EpNtNa7VkHRdZurPhyNdgvF7tJjqeaPc4X7z: '10000000000' +- DdzFFzCqrhsvr5Z5UhsAr74ZoWag4QhcGZ55vWqBtVkMDQy6pg12EEBhtEtzdCcXysP636unS78w46fmh9MwHJBNRd3s8AVMx5LyBGGi: '10000000000' +- DdzFFzCqrhtCCWEGVB24pahVkjtBiUA8xhS9xqGj2YLjUnCW7iPs9zSHHEkdHiSvZzXq7dTD2U44tKSvxTTRpoUenC2PQ4g8dk1ggQkD: '10000000000' +- DdzFFzCqrhtA4DvzBfGinwyYDH3djyYM3tNHkMxcvGVWL3uXxBMwNDaA18rq9aVGtgRBexG6uZ48xDDq1A5avKvFm1NwMZAJBsJ8dcpV: '10000000000' +- DdzFFzCqrht3rxvH6rwC2rEHaUbtLebTe5RpgEjXB58owS6aqLpN6xmRg2gSKK5jT3m1taraaUMPDDngmG41K6BSazRheX5y429vJvpM: '10000000000' +- DdzFFzCqrhsfXCNd1rPcDJFDSJf35aEY87T5gyNSbuem4zQZhLH1UxTATwa5Z3Yk2ojPjp5AmFAXFJDTuyncSnBd8ssTxjaEhcsRDjw2: '10000000000' +- DdzFFzCqrht2kWBbE1yLNHVLGNdP6UWDqSg2U4GfSsn3TRJy6NS2FpggHmn1Az4E4GJcC4u6REJPVXtjptobb2UG6FKf3sf7w9yjwvJ6: '10000000000' +- DdzFFzCqrhsiavT7TLS6sbVyn7xDedyQ4iKk3RuK8U53YLfDgdnMvuEjLhKTjjDRj8mwZ4GxxDGjkS3MXgqBmKK4oqwfnETYyVwN8Te3: '10000000000' +- DdzFFzCqrht35KEh6KPSep1NAngHuaHqTrzDdJKrqwbM2buY9hNAzgaTw2onsr7Kyu6HkjhTpnft9NyywxzMwj6XUfSJeR3Ccib25hU6: '10000000000' +- DdzFFzCqrhtBSroBoZ8ini2Sen7AAL5he7wefqUoF5oJZkrLRh87wiwXHHQRaQbwNT6CQN21TFwicLsLey2m4KXb5TKaCKAqx8cd2SrY: '10000000000' +- DdzFFzCqrhssVuNLJYnqs2pk9cgoExcvymaijVmSQgWf8MDydSjr2tzKfycsH9jS2DuHWRQ2wr6pwecmMpMkLsb3p44kGT1QCm4S6pjY: '10000000000' +- DdzFFzCqrhstzym611BFyakKbgCGjKTchb7eq5sPAPeZ5zAWe8MWQ8aCBUh75Bze2kuMzDMKoJbXCBBGiM8CfrjNf1RDf5uoxkcUBwHY: '10000000000' +- DdzFFzCqrhtDB6tRV1PZhemDS3mrdKKLFGBXCsbxo7HJVyHJ9ei62hmcna6vwYGt3yd9sxrSTFJ9Mpkg7YtDQxKUETzXqnXy5y9CH2nc: '10000000000' +- DdzFFzCqrht9FJbc2WiLVBt5WTh58t3SqZiQsiHjMzyHqqxQtBYvamG2XvCY1HMDVBNpNk3wdpAkwZmAuZn4GDUa7m6mPawntkqD8oMW: '10000000000' +- DdzFFzCqrhsue2UvhSTVXFmQ4PkLAtz2BsTuxGZ8BMbtW7eau2BAGEXabyxeZHnp2QyH4JPRwJgxTUacGJ7yFpLjsKuLT183AKjceZsx: '10000000000' +- DdzFFzCqrht27bMfZ8MJgTGwvbNq1uUwk5AUoRnvRE9VTso7QeZ8jP8tzoLhcrvjWsUYjAb6nR2zHaUxGcVVzUZoDDXM3b4nZU5SqwzV: '10000000000' +- DdzFFzCqrhsfvWA3swTGsSyeTPrNNPQ2tyGz2cvzDWN7DTHpw2DesCF45YMRvczHckzYC5GjF56WiPn27mStLnwkyVRaxREbCdPZ6sqn: '10000000000' +- DdzFFzCqrht17CyjGf1iGd4C93BWmvUUQPiUUV6uxnHpP5t25WSShWuGTnGNqt54mtsNnE4nyH1jUPjM7mTRz7bVzoMnLkLJ6XPiacp7: '10000000000' +- DdzFFzCqrht4yMWp8VKn3wZfrBe6cZrzwuuPePBjtn3YjWNUe8dLKrE5B8djoGK6pVHwtaYKcZGsLcsyYTVE1REmu23gbWtRDFvKih3b: '10000000000' +- DdzFFzCqrhtC3SSYgNQgXwg6pUBoVWtKdLCHUJA9sjmAeNMBT8o5wwUUuJCA1h2FEaUXMC6PoH7VS6SkREgmh2r9x3JweWGDUqC8WZnP: '10000000000' +- DdzFFzCqrhszHozdh7ExhGLkTnc8bHzDFC5FwLEFBADTH7sLSLmKZBo5kKsDZzRdkyh4XmN3EsBkXMAszHfpMfAehj87W6hdPo28evAD: '10000000000' +- DdzFFzCqrhsiupnwzg2dtkY3PVApcTg4Fzt5K8naJrrbkQrbYZ4XSiR7bvPW1kTZrR1kGDSTW3VqWr3pGSqRUn6k4s8mzFY6Ciw2H8Qe: '10000000000' +- DdzFFzCqrhsnu5yxMyympCi6Xu5UiA9BMdf7N1RZ5rZidknBSKVBdkfSvP16KqbeuG3yxYvcsmDtSQb28P2TQnRzKPXQqvkhzMpcC4b8: '10000000000' +- DdzFFzCqrhshTHrbfbxQ77EXcWnpiNvTgJEthxwJMDhfbCGxzPAaPrqLikn7kFT7FpNFHWyJTZCFpjz2NM2b6ELZH5ebKRFtCuFSytej: '10000000000' +- DdzFFzCqrhsufFwxJGXf3ifThZvCSEF7dTEoqbmNABaosiFXpuDnRpY6wTWnWbJD5w3duPSeiJ869W5AySG6u77qKVSY8fsuGMXmJtC1: '10000000000' +- DdzFFzCqrhsmBa6F4hZPLmbs2uPrhFHAAyiB4Zabh5KybAeMUf2QeWdWG5VwCd7tGtG4fFeWmTgN5ZfXDxdaV3XSe8xF4hjfpS2fAPoF: '10000000000' +- DdzFFzCqrhswf8E7muMq2hWCq7bp6eZYp7zAeJZ5K3qz143ffknzU8ASPsL4dbPqTgnfQQ8evqGXwQmmAwasK1Qa8Dd2fEpFiUXU62As: '10000000000' +- DdzFFzCqrhspYHyNvWJpEiCRNQtKNfVPxXngLatdktZkrG275Rw9cCog2qa4BtwsjcTjznjn6DZLWVkHaX2wRxe2ux6w5L1jMLhmPCar: '10000000000' +- DdzFFzCqrhszHY9RnrwohyWQwh2nBZxtS9HSmPMmGHWEAdHa7yjAaHhvBYiKq8LHPmtWiPd3RmP8KaYNeA26nwqFhrWrpB3sHVPCdVCE: '10000000000' +- DdzFFzCqrht2CjwUvdyhtaEfCpkWYtMvMUCbfWyFtNh2K4k2ZKPtnx6ttybVLKssa6RK2jdA8xW6DvYmT5aaomZYJHmyweBpHbthwBaz: '10000000000' +- DdzFFzCqrhszuqMAoRFdhCT6JEjtXw9BW2RvenicjaA8Efd4WKWmRzbJudEiEmAXsFo19z7FFy3ZLkJP7JyuryfoQxXm6phQZysUrNAZ: '10000000000' +- DdzFFzCqrhsqZAnQvqhGYDToPT5igTbrJoRoEL17cpEzdFUrLyb2UygQzsvbwhV6oNtbVTmyn1BJmo5xcidFmKQfwFVzZgxE653yGLF4: '10000000000' +- DdzFFzCqrhsm1aZZ2UVgDBF3jtUpRKaWtYFSVzrnCywduAk15MGrp7z12zqGD57xxGgwXTqvFwpQCRsFZs8aduB8PgwvAfKFJ9K9bc8C: '10000000000' +- DdzFFzCqrht1CtQ699FnjddzwQeot8jWkrSWJPjs26rE2295kpzvhFmSMzjBsWySVNrhMRHVXN53CfmuWMs523J9htfkzvhazDDgoBk6: '10000000000' +- DdzFFzCqrht2dX88v2WiqHxjD6Tj4s9QzcS7CQVCHQBANyX9X62dzcfFwJ8jd2iMkMa6HUNWMxdDDcxag1skioC2TgjASwQkdWeHkZoz: '10000000000' +- DdzFFzCqrht5tRXazUozUnXxkYSaGNVj7P3x5yuWenKcis316ZypGgYprNrvFDQnD93Wprv9qhrQEns4qktdsGvDTzcdUPpcCtDEoVT1: '10000000000' +- DdzFFzCqrht2HzGmmJDG5Vmudu25cuCFnKkd8sNLurug17WM7gr9qKVpdkLTvUwGkqztKagJyHnTs4CTgrAQM2Gr4kr8HP4o3y9kLVpi: '10000000000' +- DdzFFzCqrhtAewQPfHkqCg6wRe3nseiATEKtMQb3R1pSjKx18J7EZa6yNmUMvSYMqv81zFh5Bi4Hgqc7G5RFwbNf1eQSu7reQDVhfJCH: '10000000000' +- DdzFFzCqrht2uJ1BNrNhkqjJ6tPwNXgQ2repfJsKAoaqjg7vXZugJtyAULYa6diowxwsyQLwGXHC3Lnw63DjmBqdPPhHBHhAKk4VUGu2: '10000000000' +- DdzFFzCqrhsh64VWCZk9Z9ycxafDqpXLCAqVhuF3rV3Saftd1UNu7JM1iZFjbS58p5DWRSfbKSv54gwGvAZEEgSSgYmyeEf4d6KTQL5S: '10000000000' +- DdzFFzCqrhtC2eYjcruwUvs7bwXsPwEhUHZbuQdJLSQodUaF4DoSJojFYFRn4y9VUTMyKbxBjZEwxqBaLUZ1g9Zy7aDCVrECH1frbzK8: '10000000000' +- DdzFFzCqrhss3tYm3qU9Et2jcLYh7RDwt72cpvq6i8KTCtKY1e2wtp8BFJfsCuegzG6gm186o3g2dwpgKNyMmCPwvXBV1xrZkCJkXZUt: '10000000000' +- DdzFFzCqrhshUvafQSrpnpd1ZzTD5CdHzqzB66QhpxifQCnT13WaSYxwbzb2KKEW8izuD8C6eU4u4XrCN8cSaPdHtbRrPuJZKutxSNoQ: '10000000000' +- DdzFFzCqrhsmDoLuXNJfhMyZpT8VeCaT4hN1BCJBwha4pD1NxP55d7oMGxY56S3DN6QnqyeYyC3kiKCPNXsPr7u7EX6ZsedRap7HaJUb: '10000000000' +- DdzFFzCqrht7R34pLS5NdR7ePiBtz16zfEVoyE4oaJMEuWDayAG3kydeZqD2yiNkTNvEQgHw5LJMjsqZyMHSPrrFuEkmHkdyQFNEz8Pq: '10000000000' +- DdzFFzCqrht3Pu5M4iE9Hxvg9UiaMNnv9kSZmxggphBmmnM6nWL9ahfpRf3AYFVLiLcfvXgzApbUdYoypVgUTm6AFxXp8taipuwRwGtq: '10000000000' +- DdzFFzCqrhsvcnDs668wvgqaC5jcejPgyWbHWncAc7fKrkhEFFAcX3WifLs7Sd3SthgbHS5RG14qRw1N6WWqtWYQc5BvJXG4CPrCnNrg: '10000000000' +- DdzFFzCqrhsnRJvSWfELm4PBGNz7FVPEc6qRaNfKMa7sAGrcjCDPFEQDKujgn3sJ8ssqB1jL45NAhhRjFzpm54caiHugadsTrHBNB3wi: '10000000000' +- DdzFFzCqrht1t1hJ3otDAB77eQZkv7Z28viJomZ8YpjQJnqHLq6ESaL3yUpbToCxmtrPuUognQev81D74SkYKRSKfVNNnz6s9PF1ARp4: '10000000000' +- DdzFFzCqrhsuAxiyJCYRBYV9Wd7m2xSiFzt2CRF6LzN9b8VXEeV8kJQuFHXGWVpdeahVvWXZrFcBpB7CrMoWFxCN3t384WkMvGPdRfPa: '10000000000' +- DdzFFzCqrhsw5HAYvVkxdzoqJ6B7iLCQc1PcdphC44G7Fgce2zYwUUFkbTJEtkaUbEB2iYFhGjkpM2jpXXbrU6v7Ey7NUZ3gJNUEv4Tb: '10000000000' +- DdzFFzCqrhsgW7AJzGDev7mJMwPhnyhJTbj6oGuxGJNYSRLbLa4Hs7EKhhM3cLf8GRdZ15hNBx24DUuPBrrG3gXd2BkppaNPPC1tKaii: '10000000000' +- DdzFFzCqrhstgD6mPUe3HyHTPWsaS5GYWX8SJxh3FpSPgjiCBn86B77M6DH5Rn5zh15oJA65PZMTEftFFWEUCvHTaXFccVeEYEifvYH4: '10000000000' +- DdzFFzCqrhsxPd9VyNRMEz7ud22Ah5SGY3VKmTtUEYSqotDqoU8R3wGyMRwLbAiXD948K66WvdANz8xdoQNKNWUu3xNMbNbgky53Es4b: '10000000000' +- DdzFFzCqrhsfsVn8fQPTdVRCzhPZBLq8zEojHmnppSPRAKPvcPfhXEUdH6uDh8AhGVKosG1YyLZnWHQh49BJSHDs3pkTKp1Z9xHn8ADq: '10000000000' +- DdzFFzCqrhstgazfrV6PciQzC3gDoY9dLhzuCtbcUexWGqcM5V3Fs5E7XdoNrFkGV1KBgZDCF1vjyFiUwPvNPJ3TK3Aqgu4WmQ9PzpUL: '10000000000' +- DdzFFzCqrht85VsHdJqCYJDmiDaaJjRNPk527QEktJJejERR4jcPEAxbjVQwTanR2dAPwWuPMPEancQSNv5seqjqvJAum6AJ7zWgevuo: '10000000000' +- DdzFFzCqrhssyAHKKqNebKoM23WHDLCqhMjpHmcUvksjjkJzdY8Ft8Soexx1LDiP5ATbqEZbG76Ci5Ni2Dzx1AUBDR1HbRHB3LKhrUX6: '10000000000' +- DdzFFzCqrhsj4U66gcp51kfva93ynUfX6dNnmMqC9BaGCr9MTha1i6y6hizZvNwsycKgwFkEggA3FaJdzrap3eRAiPnqwBGLJ3pjqsgx: '10000000000' +- DdzFFzCqrhsmcjXnSs3Yu4EcGuenh4xBVretyA6XjDi7AbjYVp58DVEaSsLeK5sJ7Pg99JGgWXHHa4j4Nh1F87C9mA9fGF2AXJp6DGkr: '10000000000' +- DdzFFzCqrhsvCRtWW2MwgoVC7NwZWC33gNiSP6ZZ8f7HMWwwAakYeisLQQ5xEDmmEfwmFmjW2hEqBaSXhiV4oEhYSo8EPza9FrknnmPD: '10000000000' +- DdzFFzCqrhsgrGP6Nn5ywJjT14gfLasr9twyukvTRCuqaFSM8jv6955zn4moRtY2tAb4YcDEb6UydXxkmsZofpSbpdT8XjgwiAfCtMnJ: '10000000000' +- DdzFFzCqrht66quyC86tAjoQeHvxfDEGnX9AhAbTYkxiVXZQmE329JLwtQ4ybF4GqXS177BuVHaJR6z5qTMgjRpZrBQqDV3NzgPBXjXg: '10000000000' +- DdzFFzCqrhsynoQsqCixazQNK78GPzXonQwQoUoxukLB7LVCL9ZgJNVEd5RqHGAwk1AeKXQpnjY8fs73ANafFTjkg6u2tkWb4ekvatew: '10000000000' +- DdzFFzCqrhsjfkSUMTiHKt3bv1yZvyWCvo1yPKb2BafXzwx2CfZYeSMz8LbKgwKvSAhQWKVpqmGSMp4n7GXh11NTRcNZFuPEHPNKk1zd: '10000000000' +- DdzFFzCqrhtBeJnzCEy7mAdoRGobLWU835q8XGyvW7Z1mbSsoK5oz1ZneyWbBiFb8FAkRZL7fc7QazDxkeufA9bxH9DoWfAMD6NxnteW: '10000000000' +- DdzFFzCqrhsnLWK6dUtD3Uh35xwxRdioGwXE1VfToPViz4gZj7JrEpy59DsfSPpwZGLh2oHH78LveaDTM8jCMoi5NocvsjspLtZW62zz: '10000000000' +- DdzFFzCqrhsmiPJzTzzhJMPfNNMNoVSnBurFv1cHzxkvQJcmeoBTcLEpV2suVNbiYUNdnLLNEdxJLzohSNUmBfBEjAgV6wd9AAo6NAqi: '10000000000' +- DdzFFzCqrhsxrerM57qVR4DRCV5GmdYXCd92ypHdV5KBLtit2aVXVFRTmEhuGSLBT216DroY1NUk8v2i9Jn7pWk9jQjN5U1vVA3v3RhV: '10000000000' +- DdzFFzCqrhseL3qHzrGJcWPw1hQd3sq56kY86accLCwC7CxzR9HUnyhRWHzWxscQJZD1gL6obJwBD11FhLjMZEwkwrwvDUAS4Pmmfx9c: '10000000000' +- DdzFFzCqrhtBeGgAgC5x6KPVrkWUki1DUwMTYqbnApyr143ZaxoazKynbyq2R7AB2twcKXuK4p7Y9LURSKfL5HFne7xBHT16LV81myLa: '10000000000' +- DdzFFzCqrht4GPdNGsAPnK49wAi1F51YCs3hiQNGhMrtX2VUz78c8rJLgtY8RkLrLiFvptMx4iZBqeq5kXuEzVJoK7N3ccYpPJ8UEmW9: '10000000000' +- DdzFFzCqrht81o3eJf52zrpqkLMg9XeXec3FiXWGKQHDnCc77BosGHLVzVy1pbpGh7vXcwuhsbqTZibYbKB3Ga8z96FkEz52pysncxkK: '10000000000' +- DdzFFzCqrhsvYmMBFWAL5M93N4yKW4BhgADg3WSHf5ocqhEwUp3KoDATdZLszMFL1FWd961ByGVVDLHcMr7p351hNYTt8TALG5Gy1FWp: '10000000000' +- DdzFFzCqrhsjHYggbP3jcvZnEjV3FmfCMS2XKeymB6NSeVQgp2UPQbcx8ic4raGxXHoSx2kAdxavZS7KdFkUj2G1pfcHJnLMZAywRBuk: '10000000000' +- DdzFFzCqrhtBqLPeqdmnPBRwhQXGj74i2VtAb7Wi2PX3xJDVUdb8xxT89qSvjbGzwhGEWpehhVsyhuNn1XtMhCDNQXXt5yuvGZCzRxgD: '10000000000' +- DdzFFzCqrhsnesabcE8wBzAPD7kqsotKpaG5HigJebLyDqzQrZiJsh5JyZZA3YsAuGnPQDBTJGCJ9ZnWoNfFQYZjD2w5u2pSraPEE6GV: '10000000000' +- DdzFFzCqrhtBxTwHb5PicMkbp4XDLD76uDcoLgJ3M9Xm6fpkg6iTtkpBG4thYvovuVrhj73hqXSZhvHpcJjCBmzPEWpdqTjdgEaqRbJp: '10000000000' +- DdzFFzCqrhswXm2SsmSMFEgSXxne7cCQxUP7HZxvwKV6cUvmeqLXhixhkVBGpiBEDmLo1SnFuL4wCGwudpMazKjfAKczZoH67HeN3hcT: '10000000000' +- DdzFFzCqrhskCWEf93NNZyBZQXmVrCGsLcjWZMBuW2FpbaNyR5M4mF2RgFNaUfpfYdbvgQrYThRjrgapK65LLe5Ziwui4a1dcu8hkLPJ: '10000000000' +- DdzFFzCqrhsjYQJRVELiMz7uHds5QQaRcYhzTzxraFvKfA86nF2F2E67LzJ2qGh7zgAs57k1x5fLxT271NRsDuMwyyDAonTnkfk8KbMo: '10000000000' +- DdzFFzCqrhsjn7bwzzm5KTT11n9wzAsYqdf6vQvtjMYQs3EP1XzPSCLjAU947obPzaAgAWTQdnSrJYu3kvjPyg4QvwNViwDb5Ybichow: '10000000000' +- DdzFFzCqrht7MaJGX27cFhYuRmyamLEJ84fZ51GUMVJ7Qf1GzCzYyz31nPRiRxHAsxaM47HuwqaDFBQmDF8CM6yV6hdijA9GLfCthDcy: '10000000000' +- DdzFFzCqrhsm3iajZhtLy8SqA1N2dyKbat2x9Sm5ncvQ7Qynk7rYyFAZ2nRrGo2dcAA5aQMVTSxz5csKFTWto9mzYWfN7PViSYge665V: '10000000000' +- DdzFFzCqrhsqiJTdP6xw1guQXyfc4ih22xsJAcZtAoxL9QYN4rcV5m1n3YrVopabXKpcwpb9HWsnS9mFEPiNAqAsh7ReiaZ3AcrKdAet: '10000000000' +- DdzFFzCqrhstSbFSWPnTDeFubtefFSt1sbx6m3K983siRWfbu862Vw426FexoT3Rigasj3h82MmJbMj53qtQpK47ZjTcaj4gM8zdWRdz: '10000000000' +- DdzFFzCqrhsszwvVhkDYyKjGLRLgHJgdLeNLnKpXpEhvRLCUdv2FpiJvztNt5FLgNDYAwGmnW1Nzxi4Uqj2mJs1KSTQdqfFkHWVPoPRN: '10000000000' +- DdzFFzCqrht27hn5jgdjpKywH4Fb4cvZ4hgFAaMQLh5mEvpBGwMkArPhgLAYUsUK8Bj8SUfA4wX1btziBhQhQv7tU5SgC8NXBfVVY31v: '10000000000' +- DdzFFzCqrhssEmDggFGe14YNQFcdYziJuWiRKfYADyWBHyeWYQcvE9xGShQDqg1XNg4LwJvPETqY39CABFVNBQiYQwMPhBgeeF4b8B8F: '10000000000' +- DdzFFzCqrhsmkgAB5uD3BxBhnjpaQQaLn9xBwX3JU4bMivKxp1iaD3CF3DLKViTuhWFjDc2iUnb2qR7CSUTXzhDFbhCeE1fPeuYpg6n3: '10000000000' +- DdzFFzCqrhsjY2waBGSMqHScGy9xKDcDqKtqxvG1um2cCqkQUS8uLFr7UyP3UF9nsbmmggeyjZLorMH6hGCB7cNQwvCUSKsCufokTnqX: '10000000000' +- DdzFFzCqrhtCDC9iZL2oyBGnj3jxavaDxwNuTqHiLLhe18q5oozydzot26HqpQLCLfGaVHjzezjCs1WnLZbY3Kx7qia9LfcVXmbRKoXm: '10000000000' +- DdzFFzCqrhsqwGgFeHaSHKpnXUwJoZzt82FMFtWcjHCnXML4Rew8w3jnGrgMC7j5F7njSmN8yT6gyWTTy2cZvFjXEspBYpTN5Y4J9S9Q: '10000000000' +- DdzFFzCqrht5hGXeRiyrrLYN7v9VVRBcS1UmsrYHCxbooze8DEQFx23DEV3vhQxJbXGY5GTFkbHma5wTK6A7EvS6qNhCmwGhEKHnTo83: '10000000000' +- DdzFFzCqrhspcAnUmFchepbFrAcTwc45XfZBWA1FfwCdqECCy1S6wBQB32s5s9cYiXfR7sXTSemPZVMLEYPEXSEc8YyWsDLNLx43x3tp: '10000000000' +- DdzFFzCqrhsvGWuG71Qb6bp768uagkuvrz364Zw9tEnNwTiSLa6LS3quRpo2Rc8F8Hir6oLg8VLdmd3K8AvvFPbta55Ny71hnj7qitZR: '10000000000' +- DdzFFzCqrhssVjUsGCDZuLPhPur5TaH7NURnKaNU2GdZQ4FAAtg1USouoi6xVieZVjHrSqmqoonYHS4s7v17A6eUcyiJWvtvfNo41Rwi: '10000000000' +- DdzFFzCqrhssQnVVWihm8GVfU4HgRxL8FxQ26F8mqa1Wu2y1hpqrMJqQXe7c3Rt7JhGGMcnikTXwn9UBS2nMUU7hj6bmz9Zzofsut1zK: '10000000000' +- DdzFFzCqrhsq7iUtW7oCUzB223FhkVxpDNMVvGvTQDkDvLbTw6yZHbE42vo2deMSTwX8hy3zn1WqBBhNXoznRWfVGyG9THtriRsxGM72: '10000000000' +- DdzFFzCqrhsyw8tFEki4K2tmuTNz8vhKuHcpZ9drkM42CW98PGvxrim4YYuK5vzgx6otU7rqb1H7FNVJCcbr4CYyHDRVaAAm3YVsxhUZ: '10000000000' +- DdzFFzCqrhsx2RZoAxRjeJhSgBy2uego8u4zvrt4BwKvJomgXxxGvsbBt6AyMKBiCRkWgmazUZLFonnCgjLd9bkzTMGVf4v7Yej8j2NE: '10000000000' +- DdzFFzCqrhshSGZVKQL5guHqdzSxjc9vgJ97PJnfDgwoyEYFes2uuHrZZNGq3uNeoX6SKZYqj4iYaBScLthsrdWF4go5Fu2XMfkB2ovR: '10000000000' +- DdzFFzCqrhsurXqRgFhHy7BJAKiQrGXTtNyEVXfyG5Av4hQu4CUDv7F4fHz3xFXfK8jU98G7edePyNRsVujXyPQioufcxtvLn5P3sGYV: '10000000000' +- DdzFFzCqrht6AkX1i69XNiPhUDvJLPRC8mYQsZn81j1Tm8G1Mb6BRzKZYmiNnQHwxuw76ZxJEYDbsoGvtkFg245KPP876u9MtiPLNFVF: '10000000000' +- DdzFFzCqrhsydVKugKbZeRSqR5HdSZ6JVopeCtFAxKqNHLTbCfQ1N3Xb5jW8y2mmXV7jMnVNboHAHhGbPK8HwNdaSdVgBcFsfz3uiJf3: '10000000000' +- DdzFFzCqrhtD2jBGYMBaEfZGLWg82q2HPaD6jcitzJcSbR9yXabhpS9jv8JB9Z1V611Wc1cSqCiZBwfsTrLY5nwBaRpmhyZCyWfEG47R: '10000000000' +- DdzFFzCqrht8Yd1tRytVhqR9j3tAbQxeUrGRMk46Tub3uZKaimVUR3W6vuZsFGx7fHhZxMfy1yYWiHTFLQmUdtW8UfutmjEauUWwuwTw: '10000000000' +- DdzFFzCqrht64vuNJEfBn8KbquQn87HznHNyjg66Bpdv54t2VhY8Mk2EobgCLeekUJWEBhJGwyaXnzJCM31TFPPLKcJjPw6bnmkc37Fe: '10000000000' +- DdzFFzCqrhsf54yAgsFscJNBzGRRbAkZ2d9H35DtV3yBp9iYhj3Wckqig1HiCJmR89RnMd2wU9wQdqek8hs5UBoiNV3ToM342yCVmmKp: '10000000000' +- DdzFFzCqrhskDXMz7jA2ByZbZA72hsGUVQu8gGHTMysdQAs2irpfxL7mBxNhJJfwBD56C2aiP6xYiES54qXh8B9K7MXHUavGHephXfqk: '10000000000' +- DdzFFzCqrhsoKzt6btX3WpKYiXrjGMypsM9q9V5PKb6Br4nJpeUCJZeR36HZ8MVCzkLfZMhLkD6S9rchnqXvNW8eh2NCDSdkdQpwSLvp: '10000000000' +- DdzFFzCqrht7yM3iN4odBhJTUxmnNghgHnFjy52j1xhS7cbsLrWCSBZj943NjhZ8cN5thAENKjisxcM3sxzQe5ozzUnXreQdrxCyqqpe: '10000000000' +- DdzFFzCqrhssntGk7U99LNgECjJ3rkkBhrDQt8oPEguhJyRrJZr98pqvut5Tq5oTAmZErwSd6JXJx4prx86TwmsoXHsoiHuR3CTWbh8G: '10000000000' +- DdzFFzCqrhszk4sj7UBwRxG2p2xrdfH5Tz3jgq5w47gVoCxm4CbsLYcZV5vwByNzzPtkGpGBFJg16QGbpJhE7aLa9ehaxdphcy6TDAQR: '10000000000' +- DdzFFzCqrht9hUY7JURPNekxprv7WMvhJmfurtZtRpZ8MUyDQnt3tT3WBh28Cct3dhQaaszeVEwgZCBV9nwQDtVhoNx12Me3ektSa8hD: '10000000000' +- DdzFFzCqrhsyy9skP5uwnLjzfnHu1pv6nKRCq6DeomaAvyWA5TpkG2YpRMJPHUZTQLWZFoVGZdsvmWyWkH5Sr4juNp6qfoK7ZdRBNwDk: '10000000000' +- DdzFFzCqrht2QLWpgK6PvohW8hz29ozDvBDWTycJpf6kBncreV4JTLVTFZwkp3gwD8LVSXQPG1cH98qwEi5ZCuq6FFE9Un5bbCDCi4vp: '10000000000' +- DdzFFzCqrhsmKrqsoi5s9X1wyRTB2wsp6GVJ3hx7aaDEzsUDkf8obFy9bycMkSBh5YwCjznGLsPUaZjxFMg8bWfCpSAJyRZjeu4c4STZ: '10000000000' +- DdzFFzCqrhstEYKKjXZ2GDJgEn4b3gKuvBEcMmyr8Rvmu1fQeM1M5j4vqBzjBp1GfHcYCt7w74ioMqjbFrdd45eDnxjejrAY9rZrswg2: '10000000000' +- DdzFFzCqrhtD9MvJKybAe2d9483cMCKQ2EVJ3uTcHxTnWGTfVkVw13voccFsXRUNDMYQmizLDjyw7c6MGVnkEhiMTWC9APAyP4K4hq3q: '10000000000' +- DdzFFzCqrhsxzEsbxo8Kym9BwtwTYmi82vhJoK7t95oJWF4vRBHQXCMc7RczDvPQPnodiT6ibtJnRvEMehJ2SDvVJ65X6vEQgbX2h3Fk: '10000000000' +- DdzFFzCqrhsv4jgAPJiHq2G4JZe32Nuanx3MVzDAJbVrukmZ1FRmair17jxUqLDbwgdbD2ZH6rJq51zDnVLpoq8GavDkQLxhifoz4cPc: '10000000000' +- DdzFFzCqrhstp13x87hraHqFD82JaTiekq6uYe4DtSunAkydnKEAVuwTwUxGtoD4MFQuUfV1NPXYW5jhWbWzsgRmQiW7FYJedipijJi3: '10000000000' +- DdzFFzCqrhsxu7aKBxcZcDSS7wP6EHoFGBND7bd8WKc4WcFQyFf3umHjUnaz9pPHhMKLWdXEKJtsWPkxtMfjV376YHK8rfyT6ZKj5E8b: '10000000000' +- DdzFFzCqrhsfo1L3f36fWZJrcHEQUSLq9C8AcKsuz5DbVRtqTxb4gvoaWm1zMQf3j28myqk4FPQiJ4GhErbunWxJySEou7uyVv5Zw6yx: '10000000000' +- DdzFFzCqrhtBWMWh5GXmio3MPDNFXFRrEWcSSwjSA2cYqwqAyJpdyRgPWRgwAPYHpET3WMwfdD2Fzm9Ck39WN2w3yuKx2GVgWKs5fW4k: '10000000000' +- DdzFFzCqrhsgvCcv6ivRqpdUGYDE4XVD3Y6crQ2PQMWz7oUZQ7toQL9rDdy1B54ZNi7K2Tu5Au9w1oQ2JNJ2zjyM7WuDjU3C15jZLqye: '10000000000' +- DdzFFzCqrhsknvpDWkfBDc3NGwZ47Xj1ghjuUp7xAU64eXHe19p36mf3zbJgrDwKfjmGpt4V49Xpwg4TZPewn7dPPw51cZczTVtno6We: '10000000000' +- DdzFFzCqrht1oCJ6DD9tnk3SdtLo9tXKLh7qsTBiQxePm4jSRqNPQPDUe9T1yGwXNUBDqPufEDtcdRPU2VzvAc5Bo9p7becfKRUWVTMs: '10000000000' +- DdzFFzCqrhsqWhAMsdQtSAhJFxPT9bmTTQhFTpVwHoU8Fbm5NhFpoyJhuNKCskDfjUEApVzMi8W2YrvA1daAfTLh3xtDqi4X4iV8Ex4w: '10000000000' +- DdzFFzCqrht8kkwGHWAx5VhxLfU1jE7Wrw1Wo8yEUFQ7ttGvbYhmRt4vYxo6oskfEXgpZBeBrqBYH5hcSmVH67rWVcG8rfxLnPvd5k57: '10000000000' +- DdzFFzCqrht7ZkRDHpZQmX3RyTGGDDGdcoTycCYB1ZQKwtsEyJ1RfY2gGGdxNo2y8SHLWiZbJBqQACY8CAhWxWqDBvNToNJtmtqMrSpp: '10000000000' +- DdzFFzCqrhskwSAWQDd5RoJ41FoYangx7fb9Hh2oF5qzLsnbu9PxCKwXrfFXWs9RC8JdJ5bUQxvnSaDobsW6wdvYAW5c94nQaX3riPoK: '10000000000' +- DdzFFzCqrhtCYD7CJcsyiVsdnqTBfP4HqvNDTrpttMj6s3dSiVDo3MGDrgJLNY2xXA6QpXYurdZueUPSCD1fdfKKnHiCkoBewf5EFYmr: '10000000000' +- DdzFFzCqrhseAnGg2w3PSU8E3b4LGpEtrPd2Dh3ZCraSCCi8nR4r19AgUX9as9Eeg6FTnQqfsjwtAWfY2TJYwuquxjFVg2kgHD6AnkgA: '10000000000' +- DdzFFzCqrhsnap48uhewuKY3FbyLWEdui298UYGWrEVre2NtNn6SQ3VHWZZdqsnzFK8UKVG1FTDfEa7DSX6pREFQmcZwrfcMuL6vgmWZ: '10000000000' +- DdzFFzCqrht2A46r8tVs8FQPx6UxDSffGDAY6VGHbZYfX73Y6T1vMS4H86nMGdYbuyrzcUAM9YqXmDZ9yBfApu59DQ4W7ZTNTNGDHRo7: '10000000000' +- DdzFFzCqrhtA6sBCE4tGZmEZqn9NeGeehez5yEiAjn4Jothn1a1jAX3NHkmjfEyX6Hj3koMuhao9MZDRrmG2emYoJtBtH5sKNsNbFcS3: '10000000000' +- DdzFFzCqrht57TmHQJULP9XgcGy92uyQyze4hk4voCgcqL4ErzV7ovW1UN78VhwDTJxCvR2BU4Z2GG9uND5ZajLPTnrjoFbEgKBP5QqQ: '10000000000' +- DdzFFzCqrhsepducT53921t9cJKLegp8RxpGYMtPv6AHRxYLGKoCjnC2dUq4hDcPLdHiAaxaUen6hFjeVR1uGidLaUCaWsRz7JmhJQAb: '10000000000' +- DdzFFzCqrht9NWjkCZZKeHXmyacs5UAKJdGh7b8XNzqaBXJpPyfSTns6jB2ZdcJ4LVpW2ADDYsvGM7AcaeSWf94wZYkNR2xLgsccCw3o: '10000000000' +- DdzFFzCqrhtAGN5xSMNh8bNFaDX5a2J4sRjoKb6YXmc8c4yEVZhdXrpJnnyTUuA5jFBu3zSoy2y7M4N8BhJi78AGjwMNV3zR5tuNeKLA: '10000000000' +- DdzFFzCqrhtCnBwH63XMs47ZDAYfCTLhWyRBLTM3dFaZG63ttsUjqyw7YRrNPpzzzTicx71qZvRmCUiPL9W1ZTkizXW4fnYdEdKkLptC: '10000000000' +- DdzFFzCqrhtBAXGMA6949agEKHbZ86x4WvYMafmZtBUQNQbwkMzC1aTnX8FYxxkPCa5LbL23fhg7GARUdmbZ1bYnnm6x7ywKeqim81By: '10000000000' +- DdzFFzCqrhshcui34R3te9gAdqFLbDUGRfgk4zLAThtj1pxHbZiYGdEY9VFtGJigE1xEAsDLq5Pk8E7sTsbEHBmwTzjdLiuFX7A88DWF: '10000000000' +- DdzFFzCqrhszhrSkjuwWhSNzLAGvwm1D5nazBfL1s2ANZNjGiN1HAR3MjfN17o9eG62P4inFPTRqpdzEuY2qehuf1AsssUzPfpyAefLd: '10000000000' +- DdzFFzCqrhsisFVP9iwkHQiQABnf4mCZYbKXh6ZU25x3j765tTuzhYXjfvrznPo7ENJTwPcdTKWQicBhjELz3N79CUtoGWxReX6fc1iQ: '10000000000' +- DdzFFzCqrhsgjeoThwXNE2W9A15QdFVKWNghrriZjmyLCciTSgxTYsQTwqTPqTHdXvXjvx1vmgeyZhjKoJc9LCiTXKsZ8UYLEMp2BLFY: '10000000000' +- DdzFFzCqrht4kvhaiiATFAYWtcJG5CRLur6TSNyuyVwC5LfzKVDFiYocPNYxyQU2suGxg8evbxtQtehmq7W7YDuYNvfqiZwruQQXDvBo: '10000000000' +- DdzFFzCqrhssNwF4W7GbmXD2uxGC9LRdPj68oSQZRXcdPjh7DQzF6WRyKXrrR32LFjhdU9cRdkbBJ4bNptgW3Jfs5iTHrvw2u7nApxyj: '10000000000' +- DdzFFzCqrht45Tb5r98EjYZuKdvp6N8NyBA5iHpczEA9W94aRRscUk7QENwgvL58kt8YsPwNTw1NAa38NxAVxjLWomoGJK3Dkg9APnWn: '10000000000' +- DdzFFzCqrht9iFAFaHAtvGpqYF8FPET3ng49JktmYjfiBA6kXBtezMxuTaFzx8s7VQQKFteRam8waWVMwSF75HzGjjLspR1FY7qTh2cK: '10000000000' +- DdzFFzCqrhsuQQctgQiRC2G8qHoL25USXtuFyMVxNkAovL5EfTVgabFaMNjjD4Ao8oP3ATUWWtZM4eAkzT7BKgDCwr2DB5nWaxtENLE2: '10000000000' +- DdzFFzCqrht8mWkGbyctZecURYxaY2jK3HDub9z6fbWZNd1RM5CUvPiSAo4X8TYWr6JMVNZ9QbyuawnrQzfKcnCLqPDMmHR3VNSieKZ9: '1' +- DdzFFzCqrhsrBHGSy5Xcp4gdi9jF6YeSR66PX3wVJ8MuBNuMy8JtLbgW3vy1AhGCV93w9NQ5dLbPwdGpJtuwvwhEQLFFgz1F1JjKe3r5: '1' +- DdzFFzCqrht4xtYUhJxYmMANcaKrPaoEndbt8TQdYXgzeVX2F93aWS6dPJqDZgeUSLCRMZidycs26w7TpbodmfU25zNFwzEFpfegEhdr: '1' +- DdzFFzCqrhsxZxjUKf2ih5FXPck8qXB2UQfMiGLWTJUHS7yKnJKEewnzJkBwh2VGSuFNa8jBrmobtve8rGHHHtseq2ZD6pvPAXSMKCB2: '1' +- DdzFFzCqrhsymxqbEvQwoEoyGNUUnn91pCcxZSgCMDhLxnyGbdjnG48BdWApjEbFiqoYfP2nfPQyz2uiDYvSRdz4CGfwbCTNYJVzcuuW: '1' +- DdzFFzCqrht4Cp5w8QSaMA2cF7kPpLddp1toCFTkY2mzdCss6D3DdhYTB1nRXCUhvfWvh9e4k6TPrrapXQKGePPkG1HAGiD8iDiW9ivZ: '1' +- DdzFFzCqrht5drE1utizafRN2GUwZtMeaWVsXY9c5kYyro3Lnyf1GANgMfWc7WCErJVdQXbdNaAKSxmXTG6PNu2uNBidNjTz5XsAdYj7: '1' +- DdzFFzCqrhshfTiHuQXZ9dLAeyFj4VWPPU7KiEjUXixwUiV1rn8vBSJmxHzapC31Ecz1FcUdMrsMxUTdcLzzWvTR5yGtJ8ouT4P5FMcK: '1' +- DdzFFzCqrhsegMx1JjmgF3rL7Dpa4rL8Y4cvBUREcA7CNRgYRjrPexsQJSAYMB7VbA3XRyNsRF4P4vDzWP43vCnqtox9AEndXKtPT9Ss: '1' +- DdzFFzCqrhtASNaEthFBpQJH7KADxgHzwJp3t1pdXK6hFgarpZBv9FDzzPu824MBTLcfkUQWrgdqfGZvsKuXTZFNsNgGH34vLbV3UnAZ: '1' +- DdzFFzCqrhsv1XSxrFwtPZkKFjUC1Pkv6xGi7vAaMP4KptRFhMwRtTPcpKymUFyaTe27NoSto9RQyyqvBJqss5bZbex72SArXa6GAqeG: '1' +- DdzFFzCqrhtB1J6VpL1r1nKVapAqkT2NypXUbRhG5vizekX94R9yygUxYG7skmiL8DxFbB2rCZdVpuCKja8zxhkgbEYkkzGKoT88VFmz: '1' +- DdzFFzCqrhspWQrzyaMvPgKZYpzV938kPsucQ33RMGM8KBEWh4hFmXKa2Z1pfLWftznjS9kGgMDRYdAPcs7mfmFcwF6NPpkULRGqNCpi: '1' +- DdzFFzCqrhsrdcBTYEPBMx5VFdvNhrvBMzScTw28ZcrCdtpqoWwcamfRqFJCZiaurP6m79fmQ5J579xPTkFXBdBzWZQuJyY5rucfJR1V: '1' +- DdzFFzCqrhsiQbNzqp8AbYc2uS79Y7eiSnXPGbookN1RN5DN9LFEuuf7b16v3AcfHmj2PYVB15UuiP3rMBZtfSPM9HYREakyQfrKgsER: '1' +- DdzFFzCqrht6qAJ28wEbJaAs1JuAZQik2qpwpywZB9bUQ2SAaiTDpSLWyvEsjxinkTAt9jaX5pdCWiNDHdkTwuZyrB7zggwGDdBWymt9: '1' +- DdzFFzCqrhsjRLwW7b4V1gtA1URmwyvbTES1kboiXZ8zPsTMXXjsyXhKZymERbceCLVW5q82LzcwHib6Gu4t7cDxQ2V2CGueEqGfgiAK: '1' +- DdzFFzCqrhsu9HpnmxnKNKdDwBggGevwNrgywxwFbU1GCUDJZZtJkDdMmcoEKWLEwJdHrYE3ZzMCpLecG3qRPToTCncLf7Qgq9J4jcs9: '1' +- DdzFFzCqrht5mQX2CAFtRqh3igRvpDePkU7QEHbrtiYQefZagZEDaCjjPTAKktuF16hJpVEv3CEBDQNBqMxmcRxpAHZSudJygFfW9KpY: '1' +- DdzFFzCqrhsyhrXzwHn5NcUdpafk6u4UmsUG3rwKotCgCN6VR6mTyasHyDcHA37fqaTpetm4WSPBFMck7DXbRoKkXTTqzQjBj7i6SUiR: '1' +- DdzFFzCqrht9fJGbcYETEmsdUTZZKZStppKt75d2j9BFu8ZgawoC8dL3NDQ7t8MuuKZVvr41Hk51BxuempzPU87hDm5E72vz4gUoB4oT: '1' +- DdzFFzCqrht7k6Moq1y4iRrmyVgEdDphyugSDUU77kkLyEcNVtc9mLWzEgk2XnKD5nEBFDPeiWFWLuEog85eQXNdRrJusAfLGEzDirpv: '1' +- DdzFFzCqrhsrbC3CAx3MgskKNhQLuRngeovypdE2LNcz9aSNDj5yMpQYDWsSY23NSkCmCkTckY9Z9EPs1niP6ztuUjPSfWY6uCGFPjf9: '1' +- DdzFFzCqrhsiA7iN2yxdhxTQNKGx79f96J1bqiGf3KKQvHRppETgik1KXQmJE6c2uUmG9ydPjkNgG5NKPaBeuuumvdfaiTW2DobfXF4d: '1' +- DdzFFzCqrhsx41vheGcTWUidV6f6qEtshFnR3K7HVXtq2gN976U7yDJgRDxEiTzAeDgMJff486cGUcJCWeSd5tGj216iJW84kkZpjLJH: '1' +- DdzFFzCqrhsrY3YHZiB4zBLw8WHWkeCfbh4CTRYKjxa5edhHjt2x4FttdoeNq8kcc2WgZjsbdWcBmqv6CyigiG7DcShZHJGScHAm4aJL: '1' +- DdzFFzCqrhskvCaEZCKaeNxGELir8xnaUmSE1YUQD7FxktQEb2hdv5TxcYvJgVdvbiuD3hh8315iq37kWNDU9in9hHGzEUaSut6WdqrV: '1' +- DdzFFzCqrht8uNnaVxNs8229RpG5DqG1VrcGzjSgNANyq7hBu1NHrsnWDz7HXzorLfyzKbFJnPuYpquAXejFRXqdJHbqgdzP3KJ7y43K: '1' +- DdzFFzCqrhsqHPcyNxWzJMm9mKc5wM7bRZ1MQkiYgEuAXaByXezncXp4Ng6ZrTgV9AB79ZnqptfxkWiFBtaXyDstUJbPE7vKjodh8E4z: '1' +- DdzFFzCqrhsdxeDPdaf2YSLSSZL53HqkaGrhutswmuBggiFzonZ3gwD4CypmQbWWPYzpEYRf798Wed8gvJXoWytqZFyT1ak4FJH4Mvic: '1' +- DdzFFzCqrhszZuNUE2Lvnt3QLkxKHGNzYHCgkj4m2mi5N1Mov2WJQxwG8mmbHebT3n2Qrj3G34crVU7CVAWFoAyeauuEHdbJpH5Hcu9M: '1' +- DdzFFzCqrht9WpwCR59FcNt6LADojUCgZ2xGbXAjRp6kwwy8UMN4jUHprFq9pMBNkoUrKbMqmCKYo8YZpffZJeAHAQSFhZ3Gd1JWito5: '1' +- DdzFFzCqrhsmNfQkxdkcATtM8SHiArzDW9bak3uSVjFaAC3LT5m8FB1FDKtcRinA3dgEkiWacotmaXnhCaca5nXxAhGghnpQ4itCbfsj: '1' +- DdzFFzCqrhsjEgXGbvtLtTAEmCE9U9LXHsLbuETHaKQkNQQcnZPqA5cqvsuNrsuwbzVw4VAecdE5QUbaDyUo9EocnzXzxgNhUv2h5Q4E: '1' +- DdzFFzCqrhsnJRUTcfmAQKcuvh7Y7M9tJqMdh6YSXCANRHmtZu8AP1hXKiUNFbEzt8txLqVsoyGc2u45keLWrPngPksgNyF6sSpoVmKQ: '1' +- DdzFFzCqrhsodAYc3nR4Jnq81C436WJfXTXf6PiZ6r8oRDqq5b28y9J8YGL5NqT7TN7vfbfcSdnL9GZbWQstWCuZUPsZam1EbPFuE3a2: '1' +- DdzFFzCqrhseqxku84gVQNLxJSWDjGkcGUaMTWTJorgCwXwYQaiHGnaYH1AAjw5ecm93jPHA68mQB2RdY5VhvHcJa8NY9GXKU3UkB4xJ: '1' +- DdzFFzCqrhsh712YhxvhnoBmGzkeFKf6pGnZKt1o5s7DnsqC2mbrcM792NEPZ2GGNPM2TLSaQCmX7qH242rv4fzjyALoVdWF8cSGQYfh: '1' +- DdzFFzCqrht6PetGdiGHQ6Zai1QbksvZ5HBuUmMA1FGLsF6S9e4W2bu3vzbi6Q1sT6JbFpgNuBXvsMmxeCvNdyie7KJSmzAZdVpymdyt: '1' +- DdzFFzCqrht7WN3gGyuqEEMPnpKmGwDXEDawoCb4BzuYz7nxPcdjwi77jwDoy3bQsN6Rhe7WvcKbHWsvcoUJ6w7i7PRQCy7ZQ1GTvv1u: '1' +- DdzFFzCqrhso5WJ3g6xvXrM1cor1kn5Q7sVnujdoegsyqHKDSMfB4QK7ABa2SzWLjQrUDfgDF89isobuLFdubvhEU41cE2WHDD7tmSiv: '1' +- DdzFFzCqrhtBkyFfaKMqjoRyB74TVbJHV5By8fK1rr8VuemPNCDNUPBR4gNZqatuqnXMkkgL1NDLWmonjSjfXPpZLrgF3EHtT1Vy1FVL: '1' +- DdzFFzCqrht2oPToH8SAhh81F8FhucH7JngGqp2ZkBVNAD8xy5vtGAJNfbguu9HWGEuBhS9KPTBrrekcUaatfbJwDGbKcVYzzccqezP4: '1' +- DdzFFzCqrhshYui7m9fwUuycoz9BVs7VMLzWryGy4zhrCVy26qiEGeohsNUfaN8gtVG42B88Ahv62xJ7aHGDkWkLucJikVrZ9YZbrCSq: '1' +- DdzFFzCqrhse4sjw9nMvbkMwW88TMYc9VGRSQ1DmdEYMpiskwPB67mce7MML5scqegn9rpj4wkWLaWDBVpoinxxys9GebX4WxnBPWfg9: '1' +- DdzFFzCqrhst1Zo3FEvMPoFdDZKPN339MgkHQJ59RD7mk9S8DkqkKQWGHFeXbJHBqBy9YJhgzE5xZ8PMEgkPsijKAqcjtJKTRbNPQxac: '1' +- DdzFFzCqrht5hLsaHDaZ6vTWdwu8ZZ2txwmnAvNwTzo6GVNRk2qGYN6JWGGTxjG1hnXYWdLacoinnfmhUxbzwtjaH74rhCFAgdHDjvb3: '1' +- DdzFFzCqrht3h9FmFR46Yc5kPAxw5uPgDofAiW6ZTmtaQe7RSEpdLFzidRhuDS6c3QbknTmeqtL5rhS7zdJoD1oLZfUQmfMt4hTJ5pi1: '1' +- DdzFFzCqrhtBGvZLwFJFkBgduJi81RpxhQhHXGH9C5vJ1aVbjgi3BbNEZWnNVGhjAMNgUjG7AkNZnGGjjNgnbrPRNbZyJHmuQcLosGvm: '1' +- DdzFFzCqrhtBqecSoPP7Lm7bP8DCuxa1vacZeK77iRNwEcRQSyZvshHbKkHfa9x5L9PYFRxZbMwdPRYVSQjCuMioPc7MBQsVCELnRBm6: '1' +- DdzFFzCqrhskK1nkhBGqVEvyn5NiUVNVz21Scv8F347Mo2VQkKSkm8FTRrRgPXicurddXYSZXgDAPoBw93gAUwjpp5H92cWpjgrk5hBx: '1' +- DdzFFzCqrhtAnRc8y355bthDX51XJRGB6v6T88NXDt1PkwUWed277Sn6UUmcWLs2MNS4NEmbTCxixWuyzGZ9YwzjabHrUvf5ekVCCrAB: '1' +- DdzFFzCqrht7RrMXGCoJLgM2twa77ScRVjz3EQ8gM4fDBc4tUZQZezionySMo2MVUzAEi6f5HvF8S35pGTRiJ91CvKB4SUVvZR3LasB5: '1' +- DdzFFzCqrhsg1NU1eJfZk95NsCGBwYZqr7UpGLnQuya386BqVixtvGTSAMsDYo8FYZ6NNNRukHdPsN8WiTm79g4ezexuGJTS3KyUDmZe: '1' +- DdzFFzCqrhshj9ukQXuERwRcGDTaBrcbfiBvhWMGevKVu1644xmLZKZfP5nYiT2ufFzVYbu64iFRgFuz7DmA8XCfwwXvA6H6Cg4nCtBZ: '1' +- DdzFFzCqrhswAbXVPVMg3iN6oPfTwKjDfNqxJZGDVmbds2n2vBWqN6iHnBvbMQ7PdXcohbSTA2UorQbjgerhVqSNba2ANJryEdWT6DKN: '1' +- DdzFFzCqrht3NKh9EBsXuobmZdxZEW3upAchJTh5pLc7eFo7hbDWjq1ZxGq9BMikx8vS4nLj2nzb4tAu29e6BxyWcBg3QDnZZvHb3Mir: '1' +- DdzFFzCqrht44FVTU9fAqUTX1SPHjwJpiveZHwZSCRTfCBF8LypfKnhU35MHrBbrSmRqBYcPqQ14DQURiuemXEjUAWB1kGsBTy5ogMNA: '1' +- DdzFFzCqrhsvdf3ribBNGTyxzWbpx4dRzuJdTf2XN2cosn1hZrMZGUkuZDVJjxBDZwpkkZx2FZTSM9K3WZ4cG9Hava2sCnqTaaMF7WiA: '1' +- DdzFFzCqrhswHAdygxamegXwAk8uDXwdmoTieQtGFKyaZYCcz4XwEqhv3Jeaf9LhC1owTTGwqW8vAS1ksLpt86m14sa9uQyoWHfuAGpx: '1' +- DdzFFzCqrhsh4tPYUCCmsmL17qd4VtUrfANNiYrJvggwUF19E7G3L4sgHXDjN8f57TnD8UaAbLRXXCrtvaQyfYHSqigFqSwnG8qJZ7Zi: '1' +- DdzFFzCqrhsjmnBuQuyignUBAP5x1jafDzYh74cxicPqDjpZHAs3S3n1TyGB4xXJ6qM7vHw7VFtBNyCgJyDQ2wvEndjtX7gJtVsg4Xfs: '1' +- DdzFFzCqrht6doMmkszAjDy2EYs35DkEp7jif3MbrKvsf9bSsu3dbk8psw7ct5fJb7DqfC1qnnwgstK41eCAmxebxm6vGQQ9Wn3HtsLq: '1' +- DdzFFzCqrhsoTrAEaBtWHu4fcR536ZUDvaZHBDrbWuRqzUJDWmWnAdtqbGwqhjH7trne4o2sdhsddcK2FBCLGvNZLYZY4mVZvSjs11Uy: '1' +- DdzFFzCqrhsmx4tLP5Z5Qurna87W2qepys66yW6MM5US6zCZQMrT6anXUyhb1vd4njbgYxJSaktngVEfWuo9fW8mFvPXM3RT2FH34bho: '1' +- DdzFFzCqrht7PimMYDpYb8vu8Gzz7EqKZwUXJ6SnjG42SFqpXgHEESiYDXPiN9n6MEW1KRPD1Tbx3XnvfLetJX3u3TecyFxmLvWCC2ae: '1' +- DdzFFzCqrht69A9ZPSxmrV433vh2drezdj3PeudsFXwMLfMCrXMBtuqM6qp2Yrrhqt792sjrJVNQBiNTj9s3B8fGiVy4JphMMVUBz5VU: '1' +- DdzFFzCqrhsrgczySAvGsQqQSHHgxKaSJbTnEZQ6UFmADNs29dTzDRdsyd4XjxfUtMpgNZbBey3wYxHdQeKXLVPS4Wx9e4uCmduNFeDG: '1' +- DdzFFzCqrhsnqae5WsgHaN79wbVFrejXZzQ6RoK6Mpi9G43icHsXa8K9iCb71YxptrWzDpxyN2VAxm2xssdNUmESBr8WvVQChC6BTzx1: '1' +- DdzFFzCqrhskrqJ8FKmxxY6BJAdw9VUdcLuYNKySvu4Px8AhE2VkCDXWBM5eMycL49nCLnk94NwstfuW7p22bEuctfrioeTV6x96k7qa: '1' +- DdzFFzCqrhsxR14qWDod6aFJXo7iqXWHBqrrhXNrZp6H243uaBb7eYhg4e9py9Q3jhv5Nmyp6LkPHNSWFeUeJEEy2cb2gZfGWkP7cg77: '1' +- DdzFFzCqrhss3xNNhiSLFVu15nu7xRX8T4bDSB3kggdZBiNtzX8ewuMuhUGomdrmCaG165U3VTFSUZNJuvxUAzdduq5P8zC8daKw7EYX: '1' +- DdzFFzCqrhsedysVVpdN5UvmWx2Ho4cMMgJcLTVJwdd7HaMwTye2k9LnVcfY9a3jgM6J4e7io6YgKcbd4skqXtFj28RWwWRdfAEUouEX: '1' +- DdzFFzCqrhsjt6KVNWZbxa4sub2fevcTUv4tDajZPsJBFXKUjW7wAWdc2p8y1uY5nKYuWsdHnNSrFde2JjLMkDqkKmRB2iFKHhHwuhub: '1' +- DdzFFzCqrhtCLEnXQd9Ah2BmoxipMtru9YzV8HuYFGk6XGjxTSF5wJorF1DhcCQGxNho2kxmnKjGGRw2HhVfygYRJUYW52L9vVBztKoE: '1' +- DdzFFzCqrhsiFESMpPL5ALB63KicWudnFbCALCgatDXGRDLFj6kGBL8E37snW6qNL9ChUvQzBhm4ojhgN71JDn28ii9XvgoqTykm5fcP: '1' +- DdzFFzCqrhtBRhkjpQBr5Dn9r1JB86V2wqgYQTTstA4XWXUMQ7Nrio64rWSSs1XyyPGpDp6EytB534iZVmPdCeaNyH11CoHk79DAjQLz: '1' +- DdzFFzCqrhtBYTSasGLK1jzm5HpEnZFq7QkwHexCY2qXUMRaDkB3U731DcjvFQzH4EgLvEyNGHqRwSmo8XKn1HRAHePMVni3eXqq6tgV: '1' +- DdzFFzCqrhsoYs1agKRPzwuZgaRu8zsGqoUoEsEr4zSQTnovqe2qa9AHNjKmqGCJA6i5YVv2MYeDv9a5Ux1akckj4EiadDXSZwiFFuGm: '1' +- DdzFFzCqrhsjR5McmAEa1nmX6VNddvyGm1boCw7GKhCtF8Wr12dpX6P6xm8NWXh27RvbDBgsdrUB7W5Uo64Q7CHb3LngpSja33wJaEjU: '1' +- DdzFFzCqrhstfZLzr9CNy1p9DkxKv1g8dtuXgCctsTSHicfGHSetW83N3KY7qfZhT2Niena8PCKiAqdbU8u1QhzVP6dkzdK6RcnjWjWb: '1' +- DdzFFzCqrhtD4dSWQknti8PJggXTo66ywwTPLU8zv22Qy31q5V7GFCEe4HZNaKig7hwTykjoZD8Z9cKZfRj8m6FwtcWpYTPLnG6saNo4: '1' +- DdzFFzCqrhspvqNXxMsRAGuZrC1bMeMvaFERHZHT1kMq8bHzMCsQB3qKBAKz7r873eLYYNQEgB6XWfuCQxgfMwqRqpeg7dv6azCLKZT1: '1' +- DdzFFzCqrht7pb9NnJCJj44FdPRgdeUc8PmgGJRzNP4z15YLXTCBAUp68whMjKYuer7Z6EWG515QY6CgrjhrrTtLDwTku7JjRiDwcHo5: '1' +- DdzFFzCqrht8VQirMHtgxcY4AXWVh3YBUN5tVdbEXnZcVFxaoVPKX1wqtUaBhobaoeLfHbND68penZAX3PqDmVyVvfUXqksgHPPmhY8y: '1' +- DdzFFzCqrht2XLh81uEVUVyNBoW8q8nEhLwxxpyUHAGPXF1yAHS9M5Mbm5DgAWcEKZ8Jnd22PUpiim7hPJ9wzzohWMXXyVdzmWbHAfe9: '1' +- DdzFFzCqrht5gxffruELEz4gCUoeNxyk6DRVdmkS6PiX2Zxv3F48v6grxzVXzNaW74wyDE5eX5ErdDxj1jnQpHQ9hieKj2it6TQERsjH: '1' +- DdzFFzCqrhsqAd75y7ieJ2nJAaJgWRnbw1qhZF2bXbygTHsvMkRcHq8Hw6TEodMJVPpiELcUw5wJdaP2aZ3yEC8vHCE9WpUwhFsJuoP5: '1' +- DdzFFzCqrht2TMhhAMYEhSbTHDtbMWVKMgNiaQPy6XnNC77HywPNWMd8dyepR9H1p5Chr4cmEWNEhSPbH1eSjGW8d5j3ThJ4KqQyLmgf: '1' +- DdzFFzCqrhsgDhBd2BNiVtYoHDQ6Gw43papt4QVihz4F3LqVadbUhyeX77B72etNhhitPVfA3w3BtLzcpWwS4gN96i67mc7zweRAvuRd: '1' +- DdzFFzCqrhsfKJnaN6U5oQ455K9ugTSdp3rHEAgtuEGtgoPtAkPAWweXKJLcTTGMkfiwCpRjquUK9HAqLbpPjzzsF71DsgUE53kX2dD6: '1' +- DdzFFzCqrhtA32AGBJnDM1JCyYvqXsxvBhwnry694koEBY27YESifEPCCBBEt7UTH95pDL238DNkgazeZCwDfEUn6YW2GTpvzDw9J5JF: '1' +- DdzFFzCqrhtBTYY7mL4HnNoFpR4Yhuh9SaDbPGB6Vs71AvUFNAMkwCUGCSNzpxiE57XjWRste5QhrzBhfLB5WdtAR1kbBJ7B5Ejb6ZD5: '1' +- DdzFFzCqrhtCraCNwTHxoCZeM4pEcfJPpF5DU2XKvorVtdN3U8PuHM2efNWLEmbvuFrkREDT9dBDkhczUqctP6rJ4ZNKxiYcMzrfx4yK: '1' +- DdzFFzCqrhssQWcBX7GgNJ5nueGUa59JKWanrjsRTbeg5Ks2RjMB7nsbAgTbczw4de31X71KuiZv6zj18hAVq2UTmP9uKm2TeGkocsJ6: '1' +- DdzFFzCqrhsxSdYvTsRjur3x1g23tXe41cSTn9mTBw9h76zc94KKohoRf3zhiG2EKSzpyPnGuLsN4f8e5x2pZSf59emBQaER8vrgT5KG: '1' +- DdzFFzCqrhsiZKP4qWrrbuX7PovLEuGMFGpvnMfYWbsjLyfLqH5eAubSTpLvpS8N1XV1Xj5shZY5rtvdUW2zWtDz3DV6Mms1rSpzuf7B: '1' +- DdzFFzCqrhst4ZXQBmZCSyinqjRf6zxVZirhoh5YcRA5mxigu8MrCubTuqQ8FsUJy3Sn4zzHAWrm8XgKQjnifKZZKhLfTQDDmjRTXv7t: '1' +- DdzFFzCqrhsyP3PxMqF9oNVp5zMSitEoWWDpRrvvemT5cwfjjG55FafUwRkaUeTHvuvkUShtjuECycRLg28iTZHAV9xWdjK78tRGjkbn: '1' +- DdzFFzCqrht7QZSiR1kWkoBvF4sfVdifesg7aXzMy4c9AqSCkcfw94HstiHFqxNDd6dcEDRBgum4in41HztJ1JDuRsauLXagfJ41pF2y: '1' # Legacy Funds (Trezor) # # (12 words) "walk", "license", "firm", "dwarf", "hundred", "pride", "ensure", "midnight", "unit", "keen", "warfare", "east" - Ae2tdPwUPEZ9W3XajXS7ypra9BBYkwfvTz1PinD1eSCxHCQjTmw99wBz39y: '100000000000' - Ae2tdPwUPEZEhg3LiSAMZmtosbQcAgSU4jvLhWSRyph8hwYqv9CzrFy6vQo: '100000000000' - Ae2tdPwUPEZ2zpcZVpVoBtGnncG3qSCMQGQ6M4pV2H2K5YyDhqZ7424GKyz: '100000000000' - Ae2tdPwUPEZ7tEnAvFtc3v7eP195XrS3pFgZSSCoa5S8oBFk6ztxVwmUcxA: '100000000000' - Ae2tdPwUPEZHanmRFbXA1f4pYrFRoBcDMG88CeV4Z57XpMUjqsc8jRz8GE3: '100000000000' - Ae2tdPwUPEZAyvGMHqdRfLcMuP6Ez6RgYjdyGUFBCeqzPqHbkn4wd3WQrgJ: '100000000000' - Ae2tdPwUPEZ2CdZbNdzsbu8yBU5ZK3XLEQa2pYwsZzgagKCMMdpRLKQKFfX: '100000000000' - Ae2tdPwUPEYzrrpt2NccDnv72v1noz2vTXt17UeHPtXuZztcqYM57ncCvfD: '100000000000' - Ae2tdPwUPEZFyBM66NYnCREpZy43gEpUKwyvYBdf8nK38N6VeKJoawNsVQC: '100000000000' - Ae2tdPwUPEZ7tNoEkK58MrWdR6q6unhSqDgXQvEc2XyRtNLgSWbCe3QZghK: '100000000000' +- Ae2tdPwUPEZ9W3XajXS7ypra9BBYkwfvTz1PinD1eSCxHCQjTmw99wBz39y: '100000000000' +- Ae2tdPwUPEZEhg3LiSAMZmtosbQcAgSU4jvLhWSRyph8hwYqv9CzrFy6vQo: '100000000000' +- Ae2tdPwUPEZ2zpcZVpVoBtGnncG3qSCMQGQ6M4pV2H2K5YyDhqZ7424GKyz: '100000000000' +- Ae2tdPwUPEZ7tEnAvFtc3v7eP195XrS3pFgZSSCoa5S8oBFk6ztxVwmUcxA: '100000000000' +- Ae2tdPwUPEZHanmRFbXA1f4pYrFRoBcDMG88CeV4Z57XpMUjqsc8jRz8GE3: '100000000000' +- Ae2tdPwUPEZAyvGMHqdRfLcMuP6Ez6RgYjdyGUFBCeqzPqHbkn4wd3WQrgJ: '100000000000' +- Ae2tdPwUPEZ2CdZbNdzsbu8yBU5ZK3XLEQa2pYwsZzgagKCMMdpRLKQKFfX: '100000000000' +- Ae2tdPwUPEYzrrpt2NccDnv72v1noz2vTXt17UeHPtXuZztcqYM57ncCvfD: '100000000000' +- Ae2tdPwUPEZFyBM66NYnCREpZy43gEpUKwyvYBdf8nK38N6VeKJoawNsVQC: '100000000000' +- Ae2tdPwUPEZ7tNoEkK58MrWdR6q6unhSqDgXQvEc2XyRtNLgSWbCe3QZghK: '100000000000' # Legacy Funds (Trezor) # # (18 words) "hen", "idea", "mimic", "frog", "second", "magnet", "egg", "indicate", "jar", "girl", "broccoli", "heart", "verify", "person", "present", "toe", "vibrant", "unable" - Ae2tdPwUPEYzx9hEnPZKT14SfPmsQvpwL46yPRFqzkqBPTDpwwDBiSQSe5H: '100000000000' - Ae2tdPwUPEZJYmMs1z8Gh2eGZZR3uBqgcQxBevA3rsvWft3U9d6a8dGkcZ8: '100000000000' - Ae2tdPwUPEYw6pDMLtHTxBq8LnYCbXeey8AkPeL9DNkibDz4i1SssCTH8R5: '100000000000' - Ae2tdPwUPEZ4wqGZtptW4LxngfZjdmCRaLrsdo3H31CqFkrKH5fxF3GAUdm: '100000000000' - Ae2tdPwUPEYxyHGuNmABqY4P7uzzGd6UWVeguwgUrF3tV9AEptExgAbb2Ds: '100000000000' - Ae2tdPwUPEZ9wCuUSgeHEC7jMhiHS8hXWx8w1Vtt9ZxrzYoKDPbTKhdPAfJ: '100000000000' - Ae2tdPwUPEZ8Vt43wsBaAzHnEdvjwPnjAoWLC1xeJeNeWAvvZnNDAMwZ22b: '100000000000' - Ae2tdPwUPEYx21tKjtE2WzQsmsxNdVZQxCCgojUxMFtmCYR9gqqwXhBPm57: '100000000000' - Ae2tdPwUPEYxVQrJm6PuWkjgNadiUV3YfC2sCmQFDZqwuzNFGj7Tgp8n1Bi: '100000000000' - Ae2tdPwUPEYwBbU6ghpjWkNw81wZ6LdyWdZVMdoScDPiSV5ZhwSJzkZqus3: '100000000000' +- Ae2tdPwUPEYzx9hEnPZKT14SfPmsQvpwL46yPRFqzkqBPTDpwwDBiSQSe5H: '100000000000' +- Ae2tdPwUPEZJYmMs1z8Gh2eGZZR3uBqgcQxBevA3rsvWft3U9d6a8dGkcZ8: '100000000000' +- Ae2tdPwUPEYw6pDMLtHTxBq8LnYCbXeey8AkPeL9DNkibDz4i1SssCTH8R5: '100000000000' +- Ae2tdPwUPEZ4wqGZtptW4LxngfZjdmCRaLrsdo3H31CqFkrKH5fxF3GAUdm: '100000000000' +- Ae2tdPwUPEYxyHGuNmABqY4P7uzzGd6UWVeguwgUrF3tV9AEptExgAbb2Ds: '100000000000' +- Ae2tdPwUPEZ9wCuUSgeHEC7jMhiHS8hXWx8w1Vtt9ZxrzYoKDPbTKhdPAfJ: '100000000000' +- Ae2tdPwUPEZ8Vt43wsBaAzHnEdvjwPnjAoWLC1xeJeNeWAvvZnNDAMwZ22b: '100000000000' +- Ae2tdPwUPEYx21tKjtE2WzQsmsxNdVZQxCCgojUxMFtmCYR9gqqwXhBPm57: '100000000000' +- Ae2tdPwUPEYxVQrJm6PuWkjgNadiUV3YfC2sCmQFDZqwuzNFGj7Tgp8n1Bi: '100000000000' +- Ae2tdPwUPEYwBbU6ghpjWkNw81wZ6LdyWdZVMdoScDPiSV5ZhwSJzkZqus3: '100000000000' # Legacy Funds (Trezor) # # (24 words) "slot", "young", "shoot", "surround", "equal", "trouble", "rice", "update", "rare", "dinosaur", "drastic", "kitten", "mom", "actress", "salon", "abuse", "happy", "satisfy" - Ae2tdPwUPEZBvaca39j3KRRikqY3AGFseAtgBLdnV8pDArUS5pqyMAzXUzY: '100000000000' - Ae2tdPwUPEZ4MemwEvUPeHWHckYjfYGiU7qyLCJ6MumaU5c64YVboeVBU4o: '100000000000' - Ae2tdPwUPEZHwVZCJ9ntZM6w5XJ2z9QtZKwkuPUMBusiVx5q31KpqGR9FcJ: '100000000000' - Ae2tdPwUPEYygErppRsoEqXEyPGxEFsKVoa2BFKMG3prWh6sFi8VSgW4h3k: '100000000000' - Ae2tdPwUPEZCWwt43jbnf3RjEBqixpjkzMdTB9cyt7zJjVnq8PTnF55rHQL: '100000000000' - Ae2tdPwUPEYzbmFy6Mbn1WjwtQJyj71Wqj27jz9QpPty1KoyJL3tQh4XBkW: '100000000000' - Ae2tdPwUPEZ4m5XyBU9c41sareSBsLMoSn97co3XMnaGtuQDCPRywXp6bt5: '100000000000' - Ae2tdPwUPEZNLXT48whvAoRTn9bMeZweHhPqG7xFDzCrKfzGu8Ku8myrRcj: '100000000000' - Ae2tdPwUPEZMpnbSJauTkyFvaxzmcxbz29h4ogiQemoMDEwun5tAEQnHaV2: '100000000000' - Ae2tdPwUPEZEaxZqj8oXrCPuA3Ehaa5fa9kPAgpdLmgoSeKipZEPWo5qeQF: '100000000000' +- Ae2tdPwUPEZBvaca39j3KRRikqY3AGFseAtgBLdnV8pDArUS5pqyMAzXUzY: '100000000000' +- Ae2tdPwUPEZ4MemwEvUPeHWHckYjfYGiU7qyLCJ6MumaU5c64YVboeVBU4o: '100000000000' +- Ae2tdPwUPEZHwVZCJ9ntZM6w5XJ2z9QtZKwkuPUMBusiVx5q31KpqGR9FcJ: '100000000000' +- Ae2tdPwUPEYygErppRsoEqXEyPGxEFsKVoa2BFKMG3prWh6sFi8VSgW4h3k: '100000000000' +- Ae2tdPwUPEZCWwt43jbnf3RjEBqixpjkzMdTB9cyt7zJjVnq8PTnF55rHQL: '100000000000' +- Ae2tdPwUPEYzbmFy6Mbn1WjwtQJyj71Wqj27jz9QpPty1KoyJL3tQh4XBkW: '100000000000' +- Ae2tdPwUPEZ4m5XyBU9c41sareSBsLMoSn97co3XMnaGtuQDCPRywXp6bt5: '100000000000' +- Ae2tdPwUPEZNLXT48whvAoRTn9bMeZweHhPqG7xFDzCrKfzGu8Ku8myrRcj: '100000000000' +- Ae2tdPwUPEZMpnbSJauTkyFvaxzmcxbz29h4ogiQemoMDEwun5tAEQnHaV2: '100000000000' +- Ae2tdPwUPEZEaxZqj8oXrCPuA3Ehaa5fa9kPAgpdLmgoSeKipZEPWo5qeQF: '100000000000' # Legacy Funds (Ledger) # # (12 words) "struggle", "section", "scissors", "siren", "garbage", "yellow", "maximum", "finger", "duty", "require", "mule", "earn" - "Ae2tdPwUPEZ4Gs4s2recjNjQHBKfuBTkeuqbHJJrC6CuyjGyUD44cCTq4sJ": '100000000000' - "Ae2tdPwUPEZ8ozZuJWsLVb7aEb5p9ntcja47B9i68GV3y9by1eY5C2y6WUT": '100000000000' - "Ae2tdPwUPEZJoUCoyoCxUAKAbn2vFo6nu6B7aTWL1Pv9MRKm8unG9ixLurg": '100000000000' - "Ae2tdPwUPEYwFNKLxqF8s31nbaNt5MZisVqsQ5qsiY763HY5wsBN3mSzPRa": '100000000000' - "Ae2tdPwUPEZ4ZXzzehKoWWC9QYVqJfEL9x63zjH6wyEJbNRsZ9eccR6nSpv": '100000000000' - "Ae2tdPwUPEYyX7ug8zm6K7nLWhgEEBo7Ewf1qALxkvqyHHSC5jMFzH418Q1": '100000000000' - "Ae2tdPwUPEZ95eCwDjNQjReRkeLZFv6kBs3vwaKPHJsw2cxXc3HaCD2jzqw": '100000000000' - "Ae2tdPwUPEZDHGbQ9sbLZuw3cfhcSzqqdK8Xj3dhAzmWZGeVgJhncu5LR9N": '100000000000' - "Ae2tdPwUPEYyDca1eVbeEea6CjihoMAgt6mPiNuC1hEpy5U2qQ1Tzt6E8q8": '100000000000' - "Ae2tdPwUPEZHRMjjXMT2icJXp5h2k2j3Ph6dB5iGRashA2QxHLgFZbHzdms": '100000000000' +- Ae2tdPwUPEZ4Gs4s2recjNjQHBKfuBTkeuqbHJJrC6CuyjGyUD44cCTq4sJ: '100000000000' +- Ae2tdPwUPEZ8ozZuJWsLVb7aEb5p9ntcja47B9i68GV3y9by1eY5C2y6WUT: '100000000000' +- Ae2tdPwUPEZJoUCoyoCxUAKAbn2vFo6nu6B7aTWL1Pv9MRKm8unG9ixLurg: '100000000000' +- Ae2tdPwUPEYwFNKLxqF8s31nbaNt5MZisVqsQ5qsiY763HY5wsBN3mSzPRa: '100000000000' +- Ae2tdPwUPEZ4ZXzzehKoWWC9QYVqJfEL9x63zjH6wyEJbNRsZ9eccR6nSpv: '100000000000' +- Ae2tdPwUPEYyX7ug8zm6K7nLWhgEEBo7Ewf1qALxkvqyHHSC5jMFzH418Q1: '100000000000' +- Ae2tdPwUPEZ95eCwDjNQjReRkeLZFv6kBs3vwaKPHJsw2cxXc3HaCD2jzqw: '100000000000' +- Ae2tdPwUPEZDHGbQ9sbLZuw3cfhcSzqqdK8Xj3dhAzmWZGeVgJhncu5LR9N: '100000000000' +- Ae2tdPwUPEYyDca1eVbeEea6CjihoMAgt6mPiNuC1hEpy5U2qQ1Tzt6E8q8: '100000000000' +- Ae2tdPwUPEZHRMjjXMT2icJXp5h2k2j3Ph6dB5iGRashA2QxHLgFZbHzdms: '100000000000' # Legacy Funds (Ledger) # # (18 words) "vague" , "wrist" , "poet" , "crazy" , "danger" , "dinner", "grace" , "home" , "naive" , "unfold" , "april" , "exile", "relief" , "rifle" , "ranch" , "tone" , "betray" , "wrong" - "Ae2tdPwUPEZMCGyPAK85FrcserPvzVZZUcbFk5TvDmL9LrUyq2KPYubPcru": '100000000000' - "Ae2tdPwUPEZ6drrnNd1KW3UoiU3U1ZK3mxSpQpFAdXzJHuwvDcYB7Wzxkp1": '100000000000' - "Ae2tdPwUPEZ7Jaw9qt1q2CjCcds6zpHMyzmPGDh9tBeyQG28AdRGHcaWYx7": '100000000000' - "Ae2tdPwUPEZ9SW4qxWkFoozTux5i7F9jVpHQFQUycQuNanSUScyMTYrnQXK": '100000000000' - "Ae2tdPwUPEZ6YegpN8XurGfWyKqkNHLgdbHpdohumKt5QpkNVJhw4FCSRdo": '100000000000' - "Ae2tdPwUPEZLgrXt3zJeHgFWM2stxRjdm6wWATSoUzJ1CmUxKqgbYQXR8cC": '100000000000' - "Ae2tdPwUPEZ6axGCfo5nCLn5hEoRo4yNmQKBzn12B2quPncgQRFP6JBZ2ex": '100000000000' - "Ae2tdPwUPEYzdHGmJDL9tEWXfzyshohvzyS3K9wmLc5qMrwRNFPQA611uzB": '100000000000' - "Ae2tdPwUPEYxLNQJXcT3XUh54BXn5w53pPe5EHMXo6qo47gpNM9QyJsaXz4": '100000000000' - "Ae2tdPwUPEYvq2fnzqs9EWxFF2j87nZzBAZZ7y3qoj5oTce1ZGvsc4potp3": '100000000000' +- Ae2tdPwUPEZMCGyPAK85FrcserPvzVZZUcbFk5TvDmL9LrUyq2KPYubPcru: '100000000000' +- Ae2tdPwUPEZ6drrnNd1KW3UoiU3U1ZK3mxSpQpFAdXzJHuwvDcYB7Wzxkp1: '100000000000' +- Ae2tdPwUPEZ7Jaw9qt1q2CjCcds6zpHMyzmPGDh9tBeyQG28AdRGHcaWYx7: '100000000000' +- Ae2tdPwUPEZ9SW4qxWkFoozTux5i7F9jVpHQFQUycQuNanSUScyMTYrnQXK: '100000000000' +- Ae2tdPwUPEZ6YegpN8XurGfWyKqkNHLgdbHpdohumKt5QpkNVJhw4FCSRdo: '100000000000' +- Ae2tdPwUPEZLgrXt3zJeHgFWM2stxRjdm6wWATSoUzJ1CmUxKqgbYQXR8cC: '100000000000' +- Ae2tdPwUPEZ6axGCfo5nCLn5hEoRo4yNmQKBzn12B2quPncgQRFP6JBZ2ex: '100000000000' +- Ae2tdPwUPEYzdHGmJDL9tEWXfzyshohvzyS3K9wmLc5qMrwRNFPQA611uzB: '100000000000' +- Ae2tdPwUPEYxLNQJXcT3XUh54BXn5w53pPe5EHMXo6qo47gpNM9QyJsaXz4: '100000000000' +- Ae2tdPwUPEYvq2fnzqs9EWxFF2j87nZzBAZZ7y3qoj5oTce1ZGvsc4potp3: '100000000000' # Legacy Funds (Ledger) # # (24 words) "recall" , "grace" , "sport" , "punch" , "exhibit" , "mad", "harbor" , "stand" , "obey" , "short" , "width" , "stem", "awkward" , "used" , "stairs" , "wool" , "ugly" , "trap", "season" , "stove" , "worth" , "toward" , "congress" , "jaguar" - "Ae2tdPwUPEZFvG914wGXtCsb9hCr9aKjJC2ZciLKSNRqAKtjnduH7XtPn78": '1000000000000' - "Ae2tdPwUPEZ8rVsdBE6EMZpac32MLzciY75MrwrPs8ikjf6MWYFJUHkGaw5": '1000000000000' - "Ae2tdPwUPEZADQdQy2cbHDwwFRYUcrfreiu82Ngm9Bxdw1pJqJFUnFoQmNL": '1000000000000' - "Ae2tdPwUPEZ3NULtb3fK6qtJYwJbVnmhDeWzoMbjzPbCsEC9MyB4foBABhz": '1000000000000' - "Ae2tdPwUPEZ3rGvPCdzCPrVRvzEfpUp8XnZ861nss3XfLun5wA3c3YMA41v": '1000000000000' - "Ae2tdPwUPEZ575pMY9TBJyPdrwGkq2kr49V9fuqRWpF6wM9JbuZLmxHDo2N": '1000000000000' - "Ae2tdPwUPEZFaVKwy9bcN81ZPVL8uHRfsrCj7ZZhbm2uqiwLrzsy9Bs1rBN": '1000000000000' - "Ae2tdPwUPEZ4K16qFm6qVRWTEGpq5TJiyt8ZojmRANTSpPDAWZuH2Ge85uB": '1000000000000' - "Ae2tdPwUPEZMMYd8JP9F16HJgCsDsPjUoERWoFzZugN4mNjhR9ZnFwPonCs": '1000000000000' - "Ae2tdPwUPEZ3anXo172NFuumSGjrvbk1pHK9LiF82nGmPKC52NMYR77V2dM": '1000000000000' - - -# "arctic", "decade", "pink", "easy", "jar", "index", "base", "bright", "vast", "ocean", "hard", "pizza" - DdzFFzCqrht5TM5GznWhJ3GTpKawtJuA295F8igwXQXyt2ih1TL1XKnZqRBQBoLpyYVKfNKgCXPBUYruUneC83KjGK6QNAoBSqRJovbG: '100000000000' - DdzFFzCqrhsj3hDxtjHA5Sbrf5Y5A2ExAgxeL1B7PEetoE8g7yBphmHYGDkKTBZtbVv7TjB8g7Q5rw1kvSjeJwxPXb82W8vw787uqMTz: '100000000000' - DdzFFzCqrht5J1FMoP4G4RPyVcKEn9C9jKNM9VqecQ9HQK391JqypjZm3uGuLupVzEXQcJTRfUoRn3UfuKpeNEjzFXtWA4uPMtZ5fxbY: '100000000000' - DdzFFzCqrht5R7SgpmD2TffGXEJ8CoP8HfvHFWt1DM7Rd9WQGyxungKWuCKy7PampAtbWiDvJoyR32V7jTev1KX4CfdEyHyfCbZj2mUF: '100000000000' - DdzFFzCqrhsiaJWtv3KgSyE1APe9v1jWcxaSyEPsGtBbrqiddWU8cfVrXamwLuyypo3Guv1xB9ZTzoqs2GzWJ6u5j679SkQzoUHnEdH8: '100000000000' - DdzFFzCqrhshSUSN6x57Gf4AeAWzkvA8Qpsz6xbXheGWhnsvsnQ6omxNwww6AtsMvF56NJ4KZ3DCeoYSU9G8pX2qbSMHWJGkTYy3K2oL: '100000000000' - DdzFFzCqrhsgKk79Wo42Dm6BszTkiQiJaADLvwB3Bc94wyrTb5EYm4WdBkNPversvLuRELokqW5VQkLBvVdDTofd1DHPaw6LGCoaQK8S: '100000000000' - DdzFFzCqrht3fc1oQvUoHXSLLGj3woXdUM8fgBBNAmSeQ7XxtxKwEcTAn1TdLY3S7Tu9gzLPEXVJChBRFDWvVUPWmijZnSbrddDdBB6j: '100000000000' - DdzFFzCqrhtC9sDX18jdj4zBUdLpmuTiszN2ZofWwVv4SXHA97frgMjPFKG6JzVYbyk1AVks1rVN4L3jg6yJCB1rLmFGakVRxsR9EuxY: '100000000000' - DdzFFzCqrht3jJoG2rsUSjNXyLSfSHPj72HgprsNWbjSEGx3Sn3R5qDkUZXEPwsfYTBpRgYCP7D4YuFqsG2F1cV4qDUb6PTwMtXUWd5g: '100000000000' -# "finish", "evoke", "alone", "town", "express", "wide", "pair", "story", "west", "safe", "news", "wrap" - DdzFFzCqrhsrpHvUPAeXYF9Fhza9tp8V7BqsouT16oXd5ZyeZSr1xf2wBrVgK2RRLLfyPqViawhF51eHUSp4ZunW17tptMYjsYegRKtX: '100000000000' - DdzFFzCqrhsuhKwzvsPXrk4p2hVnwnpSsfx6Bz8YDdPkPNXRK3syiwnZ9nUi3yYuSyaVbxx3cnXcKZJePaAYDW7Gir6Bi4oXUbU3R8W6: '100000000000' - DdzFFzCqrhtDAsADG8aFJ7czQaJhT4nZeVQ52ugZg44AJWqsESeX8YewxeMrNM65GfmFDH7ByBeFETUQSejyq9RkfGHEL21CDubd5SfS: '100000000000' - DdzFFzCqrhsrRn9QpkXseeeBP7DphvLpwpfoY2o1dTPhsvnkfrPGo8P19BK2p8vB8R54ZkFtvTE2D7gJ3kQLo8vTbQhX8CbsdGeiidAb: '100000000000' - DdzFFzCqrhsyZp5ktXWS8KzE73q189Aj7YUZXuxfCPZybrmwFWQZw5sSPQgRcZq1xBodta8u9HnAYa5UMkiDw2RpAkATUNtSTqm9c6en: '100000000000' - DdzFFzCqrhsvYScvLTuKan1LGWeASqhR7tH3TJgniMQ8wHKtpCTBowAqSVJNwvKV7Fchd7g73iesAyQbNk3RRwmjStoF9RpTd7cvRkCJ: '100000000000' - DdzFFzCqrhsgTJYs8RaBJDzyd9zG5WPZxCu6kgkSL7juEU2nNd9CiRbDuKFQmzigMAFtDe2uEuTbgpnTe81vmesDLh4XbCbEowH1MRjw: '100000000000' - DdzFFzCqrhsuCfwXNUmgU5eyJSdvLCH6LvMomQ65JX7uAvkaZ9hNkJ6xc7t1u4qpwpkJkSHpcWPGYTb8hBLCu6YPvxRFycQjvdvJT5mp: '100000000000' - DdzFFzCqrhsmtYhQLZxPFiZv6Uzgxx2eZZzPm187osgyZWKKjXsLbGdTUpqkKiFxBHMyG2hrNZhY9ZxdqGJgEmHidSSyjoCZ3aSfNnAm: '100000000000' - DdzFFzCqrhshdpXiZtGiZsSYAvmxdGD1wZoc8HVYW8pfLd9sQHAobJZ9riRLU2yUh4Pi3jnnvVJfAgyDdyxWmN8WE7LCBBStKQfCfca3: '100000000000' -# "fox", "now", "hello", "inmate", "era", "jealous", "cruel", "wreck", "dash", "supply", "book", "attend" - DdzFFzCqrhsuUXs45RkH7SyC2zXugtRW6f6FwAH6Nj8NpppsyR1NFSfGRMQFegpPdvEEXwHJXnVVmWC4J7CGBfc1EjzLZDd7fwcuiBrU: '100000000000' - DdzFFzCqrht1wQyixEJa24mnaSv4v5XSvK712p4Vav9ajdUSQuH1vdJefTJeLgRLmgS35HYtB6icd17Lyk3g7vrHEv6XHEQuaJZe4phJ: '100000000000' - DdzFFzCqrht782JAJPNgXEUf9u42goY2WFH4Abtu4KUKM3dJ4GSnHH5RWMQ6Ff27cq467VFwa6rPvEqMBw8zGNArCSKbKcFjukKVkDmE: '100000000000' - DdzFFzCqrhsmvpq9C2QDkKm8qGCPEKx5FapZ3b2j3z1LDCRJvGxyt7N5fs8asPZPFVwgSqBhfiYRZZ95qx8rnmCBQJWDRJgnoWQM63ja: '100000000000' - DdzFFzCqrht2B4h3cgpT1rJZcqnhB9DdyGXxzGG2YeqiJdnjC4ENwf4Vz2GtwLSvVum3ykhVm9HfcbwFdVJZibQaWLhfi9tacVwjgnMu: '100000000000' - DdzFFzCqrhszv9yR8BRkFfJ9x1V67S9g6fsDsvgg5Q9SHQjczBEmapSyxMF1WZxbAZGEHcDHkQPDxCnRD5GdTwkixMA58ENa6zHVT2xk: '100000000000' - DdzFFzCqrhsx1Tg16KGnNgYL74YjUJkbKXJfDsJmvwR7yWRohAeXWfZBiEuW1XAsGPBPJ3eeeQ5Us8PwoiHuxMK8xtf269JcaNY9fCNL: '100000000000' - DdzFFzCqrhtB9kXoB8hkqqDEVepjN7iLEbrZ4ev3Fzc2DtkwFDTx5yQUQ8HFWpa1SX6xa19zJoG638SwkXD2YRZ8BJmKzmPgezpPdG1Z: '100000000000' - DdzFFzCqrhspENibdKwdhJY29iCxe1FbkaRYTCpvGUKD7RDimWTSpge1TTr5vUEKAq2fUomK89rJ9Jm2zAxhPtwkT1qH3QBQwuMa6vXg: '100000000000' - DdzFFzCqrht3PXq2rbrSWPABrzcR2ii33duy2XrvNCHFnipHpUEFmA92dZQ19J2hyKmLPXx4zNwyfJbfxpeTek7HwPGNGbMqURLDXKAh: '100000000000' -# "must", "lock", "cereal", "water", "silver", "cake", "circle", "express", "sock", "arm", "chapter", "avoid" - DdzFFzCqrhsuvjFmqGSon18Cre43TkBapMjhXMiF55zYVXDSvBNmgFfuV5Sd3NK3zQ8ADJWwotoCC7R27xk7F3mV3Fqpx6YLenjPfmTT: '100000000000' - DdzFFzCqrhshH6MA2sFv95TwnruNgEc7EwMjJHaA6ey3mpXq3cNaF5gPVnwUfhyhHt8wDGN9BjJ1VnEYWSUnCKHwgkvDzzoRioB5eaVa: '100000000000' - DdzFFzCqrhse7GJDZdrDFr8rwkYwKqQ3AnDFDtKWWh4PKc9bjMZ41mumvpSPY5fTogmsqzV389Xt5SdwzALMHsEKsAQ9majAboxF4PKz: '100000000000' - DdzFFzCqrht1g1paWFHdY34u5AJvVy8ojNeRC9aSFRCDbMYZA57CH4UMQR9XxzmpH9bYJM65kuq3K7BPEkKAmLGG6szva2K3d4BVumo7: '100000000000' - DdzFFzCqrhsnXxtUvNRmvUstDgjcePy5wkwgA5X42qxY5iVNc9Fc9rZ372yB6TJ3ye4zCbrBhMsjo671HweGFMPHv1bKNJ5ecH4xxfPi: '100000000000' - DdzFFzCqrht7t6dt967aaCZU25KdhwQLWGnTXw9zbq7DCnEfsfhz8WjjTQFaZtiG45DUvDhn3wHVYXgFWcJMqycSoT9JvpdMUE2J84Pk: '100000000000' - DdzFFzCqrht2XhxfHjuSFL9fRKtc6iLYVwMMeyqMPvxTLtKcNhNyXGrU2hM3TPs7AqWaNtDtVPr6pjjrNfJPNAwcyAFfPCRN1igBSGne: '100000000000' - DdzFFzCqrht9UvbfWbC6jt5s4eNz1v38zADUSZnMQoccZFGevc44fAH3RcdrLtqbyaXNPLY9UoZWKu3oLnAPKYvPz7tV7ac9MPXHHdWw: '100000000000' - DdzFFzCqrht9K9NJskUq7LUC3xrAgdAqUFhXxY4dCZh2BFNXgDU7qPBqisum3UMYLSkBWEQUs8VsFiUmmFBoVrZ894PxAmuQgwnUMQWK: '100000000000' - DdzFFzCqrhspvhpBXZTCD3pKyXvSVntAQQTKYXDYb3KPb5bCKvfsXqsTKqVephRoPViAfPwdbDR1yq67BRvF3DabDGGSREkQ7QvqF2Ps: '100000000000' -# "give", "verb", "balcony", "hurdle", "pistol", "flee", "manage", "barely", "pulse", "episode", "speak", "school" - DdzFFzCqrhtBQwqcDSEtyMUAzvZPyGo7iasXiCJrS8GDwPXbphxVZf6Wc2kdNp17YLeMMj3rioijxNKxK32T3iTFohfhWZzfuAxoFeNy: '100000000000' - DdzFFzCqrht3W4KpoP8CUEiiXrdDjVXMoSWmuDrErMcbQRTeYWkPPkzuBf7mGNy8sHS7QD4bhxGnY6DagY2rd7PoN44yyCfB8ELp6cP5: '100000000000' - DdzFFzCqrhsoX6VN5s61mmoX9UoQmpmmrLx2vpvF6oVby33urnyTipUpWUvq4kcKPE7YsPjWpxKUdwkSexqDCaHE4TFbXAMPPmysbZAt: '100000000000' - DdzFFzCqrht2LtZmni99CDoNL5NZd51DL4KzukJgzCkJv4uGSMqZsn98h8C8EFg8CN6P9esADw1HmYkcwhUQ8iQGLR6Yp8vK8u3PQpvS: '100000000000' - DdzFFzCqrhsmXKnXnNqMjXTvQ7ppteSc3Qg6YxhhZjx3QzXpmF3PcrLyfSzp8augogfNKaX6dzqApAcp3CFy1B4WkHTfetDg27KDs1NS: '100000000000' - DdzFFzCqrhssT43cdYzXE2A9qSo9GviGqS16LveBG7k49ph3f2mfUbpfoTP7PMy5EbuLiPbXHWmF98DBQEL6JqCoGEYjXcZpKnvJFs8N: '100000000000' - DdzFFzCqrhsiNy9NZEoFSYrttjT1acFxZQjSayt3rppQfNFzCrEE8NQYDa5ktMZTq3MDhTtjAXL7Ua1rWYJSFzChUmcUWAGHv2tUSW4y: '100000000000' - DdzFFzCqrhsmb7utbmSRfK5hL5i9Fq7mPmcpoSSEDqKZqSewSMYtqJvafpef1x4zxAjrSWU8zcv29g6tUPgH7BZAzpzcp8NAw1ip5v62: '100000000000' - DdzFFzCqrhtAG9sL7jX2QfKvgHsLwV7G5mWa2mLJsbmaC5QrHzkatn2SABHKNMfcoPERQqUwWHGmrhJTEDxLQVvTJFFTptTKeUoLVSZC: '100000000000' - DdzFFzCqrhtB7BvDH31vkTyMaAdiP1fUFA8KGAG6FkTQQETgxrVWgixRzsyHaJ1Wg5FFPULXRa1JQo7LbeafGwguWe6QkAqResgBPbf4: '100000000000' -# "divert", "entire", "urge", "banner", "repair", "mechanic", "muffin", "illness", "genre", "intact", "coin", "boss" - DdzFFzCqrht4QogR1CAGxFTib5LunkacDu9yPncCXFg9YG56sv8dUtcpTFkn7PgDCGsdWSCyvXzwwLfa7zU1AWp6fNuPhHsRZGqyAqXc: '100000000000' - DdzFFzCqrhtBhnkPNQbCBnZzUMGQTZ4U5KiHmdf7vfYro2DEVvoHA39GLaCAtmEwhmS4BJ6L9FBiDY3WGB9u3qzMctBvwTrmgtXK9KWZ: '100000000000' - DdzFFzCqrht2qoGkJbAvSoWmftXfW4AKicxQJbz9gBBgBfaoUEW7aaFSHgk5MAEPiEfdantMNmB3YhggrdGSNQajVQixr8gZn2NFkYXB: '100000000000' - DdzFFzCqrhsjNsnvXCxjqED2NQoN67qHPKXuX1Q8uw1z421ph1kqbwFitByMU9MxpzuBHhU9EqCKJSa6ZTpxn9sxWcixcCEgJKiWtwcb: '100000000000' - DdzFFzCqrht7eewmhd5drGkiQPZ8RPTebW2diqNas8zNLZFw5xRamwFwftbSjFz8zCsPoZJzWckqDfC7giYu5Z8sik1DeT4Ld84LToM7: '100000000000' - DdzFFzCqrhtD7EDyMHr8BTSoJtrx9LbJA9aYX8CFhqoSMKY8PZjGZnMJVY2EaWgW36cvcvejWi9t7f6r8c6w2BjesHHYfXAWBd7PRHu1: '100000000000' - DdzFFzCqrhsfxq5TbeLihjwYQhAKHahtRdBKZNgEUeJ7xe68RTU2U7d2NmtCpeNG9UgMaR5zjsuAbpAgUSbb3VTJMTwkLxoq2v9fzrb9: '100000000000' - DdzFFzCqrhtAV5NrHQps6M5sRnfDXgQnPxqbxiXVaSrAjXg7rHLjC1JfTpFcMM67rvzjrfHHWjBuSMVnA5ZVx79zqJ4gcDyZirfe7V8X: '100000000000' - DdzFFzCqrhsioiAtUjCJs4aRcmAn31ghqmsLxqrrk4eu8ZxM9zqVG1wGTab7npn7zfhpgB3MzjF4Xdhr3iTRRxQGN18LhpkxvyZwA5NH: '100000000000' - DdzFFzCqrht84M49omXJT2wUystJu1Y7AVJvhgBYLRTZndNNvp8kxBkBSmszji78FzAcHfWmHayZpKPzH96QctEfjNQj6KmEgAWNCwWD: '100000000000' -# "pink", "radio", "various", "frame", "argue", "draft", "sun", "speak", "club", "salute", "thank", "price" - DdzFFzCqrht57eZDhmXBWEQpZCxVEegTgmbDNGn2ETJEjwtQJD3HappzpBEDVJEWz7Np8CeGGm1MPaHBrN1f2ET4vBm3BmxytCATtow6: '100000000000' - DdzFFzCqrht4KjpLrJohdK2qqf3ABPLzF6AwWqPA5jfQAVSPfokxM9rzm6nr9tdd6WSacyaUBDDUpnUyYN5dvVJi8dLXUozZa1xC4vLp: '100000000000' - DdzFFzCqrhskqh2LiGzRYFBVPhBwqzqedC3KCMNZegxXB2EzWKhdfryCZeKjrMGx5a51YEjKgcHtuXw2hBT4SZUsKqoYykvdZN9xfr9J: '100000000000' - DdzFFzCqrht7LeAGngeyj9hpG5ZRjdDhU3NzCtEsEpQmmKmAMq1NH18uN5zfZaVccPyRBZqmsRi13eH5Pk1aKkhiwHwH6m1kq248Ddjj: '100000000000' - DdzFFzCqrht36BqnLDbxFKHXHpR8zree4a5qw7hR9oT3gzygGsrMxShQ41JevQiTgobv8YaNVCiQhXr9c2rycfYHnV6w3pARbXJ8JTci: '100000000000' - DdzFFzCqrhspgHBe9eUmcDt4o9WCsFM6GunqnWjMfNScEQasrmikoCe7N15KREgb8zfVc72S65oNHwgMgmibN9S4KVaNCakFWBLJpUDp: '100000000000' - DdzFFzCqrhssHyhhWC4XpRrbz4v834gYSvZbNsPMSFdZKRzgp8zYWue4jxPeX4eevMt48jSidw5Yr7hCfruZHFMKvLJcAiP34dvqnNgJ: '100000000000' - DdzFFzCqrht7cRsCug1zdvgQXNA8Xd3u8RtQTUQNpXWT5hZvBaT5eQeA5y33BT9oKifrFiDACmqjZY5EzMG2ru5XXRH9fmjLp7MFsFby: '100000000000' - DdzFFzCqrhskfjCZMpoK1pmHja9bPc4bpnhCPrxyQHAebwmunyy5heefMNFSQwXDRgFsxh19zJViYtSfWiWCRURbcLFF1MXWMQsPuUGr: '100000000000' - DdzFFzCqrhse3jqmUbLtaCGk6smPESyVz9DvTEs5aQjvPraHWbNaBRUXe2AMCwqHGb6dixbCgVeTGZsQWhfDz8sN34D4PrzXyTXofHDx: '100000000000' -# "all", "beef", "link", "funny", "swing", "duck", "sweet", "swallow", "slow", "shield", "weekend", "open" - DdzFFzCqrhssUnqD4WScMCzs6i2DFs9xoVDDtdkiswVR91MfFvzP4XE6HKGidaPvx5YFdXddQ2qfEko2gpL2enrXSJvrHx15f6ek4nQx: '100000000000' - DdzFFzCqrhsrFW7cw8d4iwUABgVdzCUjDfRa7d59bMJ8ySKoGnit3MZSmjobCdb3MDDmhwUBmLcrgc9DYHNd9A6Vugh74XZU275SXiyt: '100000000000' - DdzFFzCqrhsrgynva2wmP9ZMtR9VVCDVMC4nmUgz3YfdrM6csPKU5VLzW366NN971QAiSeMnKR1XjWPQ79BMzBh2mTKBRm4hP2vNcmhT: '100000000000' - DdzFFzCqrhsgAiK5F2axtBqRcsujv7vdr2R184ojg4UWe3W7FXYnWmqsCHwJWpY3P993CTVPwoh9p15215pQhXRP7xRtY39kcCvaCJrA: '100000000000' - DdzFFzCqrhtBSxx2SGmR4UoJ1RUKiEzcyetmU9KXn95eB7aE2BE1WY9YsfkjvQXx1wAbCWUrk7bMbcPH5Cxm7EnfRoTSHuDzqu4DcQSv: '100000000000' - DdzFFzCqrhsnMtZDbJ5e5Nk8QgU87Kny15LtDMxcbRA5gwksCVmS3G7jb81rk9sRhrpeHDpNmvBpPB2dwg8aqTwDZba5RkLZroLRXjY9: '100000000000' - DdzFFzCqrhsuyAfgk1e1KwCqC9WYPdoGXbHQRkZiHXgxwiESVShHQ5j6FhV4G3EmW2bRZFY3EmNdzye93aRkXVw7P2GzBxYkSt8Ninat: '100000000000' - DdzFFzCqrht2JE47Cpy7TWnnFDeGypCxJ8myjG4HCZRr88ZAsLL3sJuVa1yBpZBRkRuaEqhUB9T82qvgD5jGzWCqk1SjWVRHrpVcXra9: '100000000000' - DdzFFzCqrhsmDbBNsGTm83q69zu3RPYkuREcT2XXv8vEiyJgZhmNf777AJ5oxjCLKXf5kANFKEtiyboEdCiiNG2uDDU3WCkU6CNRKNVk: '100000000000' - DdzFFzCqrhss7raQK4JXu4abQnULTsoP7JiEVDZcnZ72bzhFYcoAY23j3fwt17mPMnFcn9PhoGVEnZZV3GnkTrDoZ1gJmnKRPuZVoAL9: '100000000000' -# "green", "friend", "captain", "entry", "utility", "lake", "blur", "matrix", "will", "prefer", "breeze", "shed" - DdzFFzCqrhsyF4quuYiAXmp1vfiFhhbcxXniypiSiE7tnBraPczHxcfBP5B4yBCyeaYJKwG2N7U5ujjoTrvvJCfXJaHLbfWg1nnm5ajb: '100000000000' - DdzFFzCqrhsyiAAwKP1fAhs5wihZ6dSEPf1oE2YG91C5vDWS3zwnXA8GUVHeoa2Vr7Y1ibHneWA5TxR7bQvZT5MSM4RMYVbBNbkBduWx: '100000000000' - DdzFFzCqrhsj39Ged8WpW8WTTfXn9GPdQmS9CjL4ooCmB1dgBQABFjiX3tm7oZ6qT8UWyjenG1M3j9DFqPTgXkWTBsyfiqL83hMXJuDu: '100000000000' - DdzFFzCqrhswiRMQc9sB3uW4CFNgMKc2PovFhMJm7F1A3gmTfWJgf16deq97qsF6f2gGiGjyaWdGAwnVztma4m5XzeoMUJnj7sk7vbj5: '100000000000' - DdzFFzCqrht58AUUmjsBjCXk7XYkT2cAX4K6AyfZPZkD2rRAKaqFEFy9QaYhQ2CDYaHZ8DAtbKXGFFnqzS8khah7CWcWZHyrDo8eYiQS: '100000000000' - DdzFFzCqrhsrK1QzPNAeMgGrCE3zUFs4GmDHhHHRev8cackbf3mbuiGTpX6C1r2fpzWjtwaBDMhcUcYPiBF2w6A3dw7br4HuSxLho42L: '100000000000' - DdzFFzCqrhsjDZirn7o8PeZrrwkcMcB4hmTHCg9t48rwZLQMvwn5hsX19yqvnVzGbfMjZ1UN4tHGbLeoXSnioTv3CYbvnE3Sn61TGuQA: '100000000000' - DdzFFzCqrht4rqa7rBzrbXRmUDvEghRBC8XqxLtvsDaz4uVrQ3zs9gtgiw2Qg6qWk6ijanwM3pnPk46jEJJAktHDhQrgNk3iTh9BkzPL: '100000000000' - DdzFFzCqrhsybR9KyLbQjDymLz3iUZMHjyniAgiPLSJwmnRcA6JVyH34fAZZkvX6fNVQkxiZoU2i4FfN96NucWqL8bMCnQDHncSJd6oN: '100000000000' - DdzFFzCqrhsjpQsHgvWQTaVZx7EgQ1VgngEXcoPCm8AAyoitQR2GRuue2JUoSvbaoEPpsoUSQqA3NR9gVMKYjNivG9XimFPgeDMy71yo: '100000000000' -# "reveal", "jazz", "equal", "salmon", "first", "decline", "liquid", "wolf", "powder", "account", "elbow", "figure" - DdzFFzCqrhsyiTnBicudK3xgsfurYhZaGbUu44bPyY3pLqDJdqf6pBePqtVhkkYnATNq49VQP1v1RgcFTfXjC2XZV1X4YYFdNBfeeNDf: '100000000000' - DdzFFzCqrhtAnCLaX6TVTUKyBEhchKz7CsqApuZX2AXsWV5DuAm9MPcH9mmgFCBSJawVTXvQrLp1g2kLdmWLNHLt989LdZ47bfAfcDdV: '100000000000' - DdzFFzCqrhsiAEyhnR6iqQfYoT8mDFJZPrp8HGmSmExU2VrdYzrdSHumSgrEB6enotFApCKYwLNojgWFgPeSizLdKxQAwAbNicAdEpMi: '100000000000' - DdzFFzCqrhtC1ABHDxF8wjtP2tqEQXM6kNYEfteNMZ9hHpzejZtWGaFibGXjfJ2RkqQSqd92n2qCggNHkFAcgrCKD8yezPZ4VJYwxzVZ: '100000000000' - DdzFFzCqrhtAfgScY4gYasbf2XCqFygcDThwphvj8cp7UfYxuJv3BaGGk37i6yNkZEGTAHTWbyruQEBSNGKWrYCmxvY3LUEWprNhyrrK: '100000000000' - DdzFFzCqrht457hNzoa6trXPNq3GYP9v8nzdBedReoMxYZ2zxWjRTtfUbcviPsYtiQ7sNou8p7jvLzQZT3v7D9PSjd5ypa2c26cmC7CE: '100000000000' - DdzFFzCqrhshQDFiDeweJFq9L7hbtFMedMtjTcstJTpNUprfGfMyXorEaSdFgsAC16AmWGQ3ZkoMNrJtniGWSQMfBMrrejjzPg4B4Jxd: '100000000000' - DdzFFzCqrhspbiLg2qHfmJvJFjQTiXgbwdzYFHE9zWuXWkaBCK1ox8kG3oUSaRT7ZZXo2nmt9uA2Q7u6PtBUQzwNoZrswajApr7wMCMX: '100000000000' - DdzFFzCqrht7PwCwS3E688NQuud8oLNYLP9nYXqqipvXnm1xc5HtddL64fLtfuVeUiRUZDx3JftfvCQi44WC8h8L4uaEHfcTf74hM9WC: '100000000000' - DdzFFzCqrhsmen6yqDxHMrDwPppTdkwy2KY2VwxvXqFLXWaii9s57YTqFh7xeUN685e4DL2YxjmoSrQGramxgaA4EwKLYBhG4LErDCN5: '100000000000' -# "olympic", "uncover", "stone", "tiger", "oppose", "icon", "property", "heart", "mean", "interest", "account", "head" - DdzFFzCqrhsvdXAz1SJakLthTSFRZUFtN8kLRMuf9jwRKgH91DLnmKnGWWar8xJhsSLS1fnV46WfQR51nJ8TUT9vAsWzhQJXRM7H1hwS: '100000000000' - DdzFFzCqrht2DtsCFb3XBfpMjbwVRsFgWpYw8G6PQ58yZ4P5FeczYCJJgXgnPgE1oovbngLXcq5kEK7EzzNvBf6fe1HhpmPyC1sdHQkL: '100000000000' - DdzFFzCqrhsv3BrjfGXmu6skF8PKRpWL9zjHqD6bhFPHbFF68vG8GzofiwNBnhwaYNX3eQch253KFPXm3xhuNNvU1U337HPdQjhbCC54: '100000000000' - DdzFFzCqrhsqb6h9YtTRB5p7dJNEhCHt6GnCjvdr51LoMc836NgPepYHu8vXAuLNrbxmMW3rz4LxzG57pB9CbiuFqbztt1ZMVH5p7KD3: '100000000000' - DdzFFzCqrht7WSNSBcjzaZKWnwpGLQZRWrHCPx9cAtR5FPrWesYRowz2UZSjpr7gC9BfT2A42JmnmNDVv9VrLvJZbThfVxrW4i4vbLzB: '100000000000' - DdzFFzCqrhsf6JHsDi2eaixZbvARSNms43kSYwP8segyCE7vPmxCF616aLx9zSB1rD75SpsKo1AsBnz7SoGnLU9viravqZMGwpTQHq3d: '100000000000' - DdzFFzCqrht8HsQRv3b79px7C68r2gewt7Ej2LeV1rB4nzhYwhDdrgxGvzXeoJiPkgYRCj4nCcKU3MheLfMvR7aL6oxc9VmViyJMMNpz: '100000000000' - DdzFFzCqrhst1pvkm5Fyvo926mcLxEhd8VRBaetNZCYyiEZnLmV8euYvEYQxvYgzoW4b2ceZqb9zWXYeDcMwaSuj69Pd6LGeuorFVT4B: '100000000000' - DdzFFzCqrhsriKxiH15F7CZTvwFDmBwTQMxdbZaomXhE75Zcg4TH14BqxUh8ztnEDEeLx5AAeZHNt1aDp5UeL9112PCXRp1RJGiiWY12: '100000000000' - DdzFFzCqrhsy74X8fHcNx9C5owuY1FFA2a4Rf9KCwZPiSiKgNWpK4Nm3sXoN8kQF9nKFoLQcom3YJoFeda6D8woAJKFrkDPcnYpSBrsy: '100000000000' -# "poverty", "hungry", "depart", "shift", "proud", "wrap", "voice", "throw", "spoon", "this", "system", "flee" - DdzFFzCqrhsoMYShvsYzCTW2DpA6vdQ4HZaDa32hp4ZA8wLLgdxzn3hjTFufb4XA9rGaq9XdmHTSHweL8mCUjgyVZgSu9MGS1xPgpyZi: '100000000000' - DdzFFzCqrhsmV7MBQZxxFUoDE3W76ni53TzC4tdhmGsZRMzK33JmBbZrxp5u54PEYk5ikPHhfEDMH4ragbdVCUufeiU2v8N57GQseWXq: '100000000000' - DdzFFzCqrht5hU1bKC1krwBPwRfbdCdKtHqorVjUtXenrnngZTabPLNMLsgixvMho1hcwJF3YNVj8Y2wuGKApmpXgbmdm7iSzoT8vgdr: '100000000000' - DdzFFzCqrht8mYdcrigMUgwZgCZzwisotuAK5CU4LgY9uaCawGFU3wKaqsXCLo3m17GZLgeCF5ypDMNHJAbPZKoZxH8kEo7rBUTeMTZk: '100000000000' - DdzFFzCqrht1173DMt1FrRyzFSzSetP6GpyH8Qf1dFPmzEf9uU8dWpmk8P2q1Fxfge3UCBpYQbuZbw4PV3q5kaPZMquuL3g1msPZnJby: '100000000000' - DdzFFzCqrhswjgRpUTisLAKNdGwebL1ghfRR4qD1RkWYE2n7AgHAQbjz3ARu3FoUBWaM7fcA6xn1g1PuZZwZgK4XysndxSnvuf5WYLzw: '100000000000' - DdzFFzCqrhseRdRAWJKDWHgSHya5oXpvzNgjChT7JvvFBUtTbqVkZ7NS3GRJMB1Tts57EErJNgv89jxy5iJX3xQcr5z5NcHo43arp1MT: '100000000000' - DdzFFzCqrhsxRLLh2j7DpWu2EycxeWsUKgC8UJNkB81caHN3FWn2Fh7eN7K7VVjCagEWcCqAzn7LGJPqXzHzbMk4Pa2VxYwy2KLYDQgM: '100000000000' - DdzFFzCqrhsvSrFJ3Ue2aVzfkSaMF7zy1VXYrNvF8PguZhzhFwbQoyL6nqurv3rMpvD3CxSS6wU9qhpnMqgysk9Cb5pTuhgL3r8C6yRL: '100000000000' - DdzFFzCqrhsgRiVjpHSfcD9q5qLvJssnwmJ6WVQQwHfRRrxiuwpUkGVDmAP6XXfgaYVGqAyANZmUJa6aTV7m6hBYApBCHhzEWqJhmeki: '100000000000' -# "tattoo", "crop", "genuine", "impact", "govern", "banana", "hope", "bamboo", "junior", "pride", "best", "skirt" - DdzFFzCqrhsrJdmtGJacDT3FniJ1LXtnxgdKEXm65mDhub2DDWxDXZCZNZ38SHJEAvRLrMZ46ES6tXBwfCKswTYq9BnJxXAKiGPP8gGE: '100000000000' - DdzFFzCqrhtAkyz34omL7tXaWvrHPBqR34cS9hVujo62Uyj7eubAePLDRTsfrAmEVBxHq8GV6ADybhCC8idDRyhCvxuW7uZBSFapfAKo: '100000000000' - DdzFFzCqrht5ZoCC7ZLVEK1KDvfVkTvkRkGQaCBmBMsP7z3Mnm1w3an3hVAteXpNJPjujEn5ZfWh6Ei1G8v2Ak3X2LohiA1nyGxbRiKn: '100000000000' - DdzFFzCqrhsidUFoGAPCnjxK2cgn7UdWjGFRLbFjjdWnzPGKvskC23NF7VvWpuw9nB2U5XgMEtmDkZxsLmC475zSXcRAAFQQRjQWAH89: '100000000000' - DdzFFzCqrhtATtiyKvxKUdJDiCwN8M7Xx1AgLUV1eJcCGEJgaTQn6mxWfqz6FhDF3uA61KBK37Eg7Vi3xXrTNk399zD5GdJsmyEmYJVq: '100000000000' - DdzFFzCqrhsk7YpKzvC1M2PUdhSXFCezLXAZEP2THzjMQ9hmf3XxsFrv2dn56sAygQ1n7tKjKRzsSF74Lo6LfXzr1Lo1ahDUst2CtgJw: '100000000000' - DdzFFzCqrhsiCgr7CZiyWH6W6tyjtvtgioRozyXxbZiJRWeoFbDjnYoWJHewAzG5KzShpziKPB4HwkePga4vC3U9UfRmJnt7Qe6MwBcR: '100000000000' - DdzFFzCqrhsgdPsjZ5m4caLfiVYnkr8YWtkYMwRVhUZ4eP2Jf5AfxyMUKN9hfi9pYQN3T1kUKJ6DWYQWGn8a2GhtH7WjJrD3d1ZLwRDA: '100000000000' - DdzFFzCqrhsxaar8kBmcyRyFX52rEh62UCDT5K7ygP9Zd86E2DVj5oPzyt9sYwdWanRVJpo9z9JuebxBqBoLoSiB1fSPW7R4gvBxsdpF: '100000000000' - DdzFFzCqrhswDdTbDRGPoLV543U3f6uQ3HPSaCb2cEhJtTXxnTTz6Dkr8YmdmxB9zLem2gm3nLnP9dmhoiLzABBTr9JYd2xuQmzzm7Fw: '100000000000' -# "model", "hundred", "exact", "control", "random", "cross", "burst", "fame", "ladder", "bleak", "car", "virus" - DdzFFzCqrhsonkkxuu5cjVich3NJ9paVDNssBxCgWgCSV8eK7ZQkaJE7fnbMkBvgsxFDVo6L64FAVpWKoaVT5cjMQm6de5wDD4Z8cNVy: '100000000000' - DdzFFzCqrhsjTdHd7rTBC43Fic5kYmcT78SrgQ6Cn51c6vpf8t1c5S7LcnLJnjRVeVVEz4ykMhKPcmGhKmzA6uZkUP4aTkJtCfTJ5LoD: '100000000000' - DdzFFzCqrhsunDv3V1z11dvdjGLb46Bkfbpqc9tqxJCxDraPeFNi6Kz3KckrQqfJ2TmWifdu67X6Ai9hzkALpEbn3v9q2BasmmRnaGri: '100000000000' - DdzFFzCqrhsforRn635ApD9XFg24kRkhgLakJn69cvZGeg3Hr36BHKD8pJB1hqpfa6uKQnnEJ3TiGnNm9bvAtXsYEHcwcty44dqm7Jen: '100000000000' - DdzFFzCqrht91SEEmwLJpadLebAKdnxJ2rwSWcJnDP3qSn5jEXHNd2xzfzNsfvoT6AK5CENUHV5Cusi5fsM7RBYqKmWLy6ShDXoifCAU: '100000000000' - DdzFFzCqrhsmT5CSkBW5WCjk1taagdZ1mxmqBhbugNymrQWEwVRCS3rsyH6i8wmEzAWSxGCGMDVEAQbgDB2NLf89EVrkoRRMc6m8xvDv: '100000000000' - DdzFFzCqrht2u4XjNkia2UodGYJrGfEGVcWPG3maWE18CtJ7ZoSYFdz8sJg8kb5tGzJKagr9DzWrq5MTru9MeRPxvVSuePU3XdFsc18c: '100000000000' - DdzFFzCqrhsgUJnGmaj7M43tYXhL6K69MrzwWdvJaPQeCjcM2GXgJgsZ7qqD9KERPPzzq1ifD2idguomjXaBmFRZbv7FBE1KyDuUc4s6: '100000000000' - DdzFFzCqrhszegz1idFqU1qhtnVoByyaynPMJ8LiBY2bfbt1t2prS9P6T8Dg9QBgAGDfyFDAtCcbjSEt7rjtUjkkFN9fFBsXQZM4mgC2: '100000000000' - DdzFFzCqrht6hfSPjqHQR5MT3EfUshXNPNXHrUvZtiWSDWT5ypCXweSxYrFqkuCpLqHAUEuyhe4FyJ7TRx1nPwUtMAZwb42Z8chjjoF3: '100000000000' -# "ripple", "lazy", "void", "zoo", "social", "plunge", "badge", "jungle", "similar", "draft", "lawn", "execute" - DdzFFzCqrht6GHvq82ALWW2Qtjgz4VJdVtQUEzkQvTh1eQ5JZdrkejuzjWPqCM9hkPHv4v9bhZfqfszHNX3XUkes9H1fypootkBSVCrN: '100000000000' - DdzFFzCqrhsfNtk6jYMKvxx5RQFtmuAygL1ZAKkhxBysZxD3RhrHJeupZNzo1KaWQoKjTf2Cd4ueHrmur6XHCAs9w9x7BH18ccDxtQxs: '100000000000' - DdzFFzCqrhtBRPp4B9CdceqEFeL4uoCxhyWTyyUqfZ2U51hvo4MHWe28Zk3VwintLh1tvXk6hP4jc98qcKDxJVk4AZn3fjN5uhELYn6Z: '100000000000' - DdzFFzCqrhsqAM93CqysJRayLqex8TvZVS1LtTwShCUEWN33raksC5n4Jz2xujaPz3MjHqDbpGfcCC3ATSVAfM6BWo8ak8r7WNbMauMG: '100000000000' - DdzFFzCqrhtBMojc5VESzeJ8tYVNktLXTxoxrS8yuGgY336o3QQGvEJbMcKsbJfggUSMdvz9ZbnbRGoEicn3QcrsjdfyTf2xa4rff1p8: '100000000000' - DdzFFzCqrht3Tu5czKRrWA6arGmTwk9ngNjBps8Gw3khHUkTPAtDpte4BYMxE4NrMndNPEAg1x7rMZCBQtKoLgBS13LtRqnozyA71MFQ: '100000000000' - DdzFFzCqrhswM3h6D6cuY4Smwir2SW6qPiGQP5hFS63qCSQLYkDqSFtkd9YXEZBAN6LhHU699XrX9KhDyhsSCZ1B7YaSseuUEkEoDd3j: '100000000000' - DdzFFzCqrhsqdy2UgVgpZcbEhdU6bkjY8pb8McWsgUq3MyXoXXfwzKrRC7Ha9UoVUyx1tpSfXLoWhsgdmhAt8rmQJcbR9L6xNUiQxbHV: '100000000000' - DdzFFzCqrhsuGxWEdM3r8aS5tx1pzF8TFW8krVxGVJtSvUKAc6JGWye8RwGQQ49jmhMLdLdazrzqxsXGSVUeCVLpw28DPTE8bcUqZNkj: '100000000000' - DdzFFzCqrht8bzmHHCZmA6yn1U6utfX6qPuZm4t9wuFWR4mpA8XtBjQw3LSgScWUwXasscTetedRF2CrguEnM15yfBT1FaFS16wZGok9: '100000000000' -# "guide", "penalty", "erupt", "plate", "benefit", "moon", "motion", "sing", "envelope", "range", "midnight", "spell" - DdzFFzCqrhsv9NPjstKN2ucUp9zpN9S1qCRfS8geWXVY6DNSruj95UpohYxV66MnHw2un3QgL5gBaUQPHrRpFUtWkXpuU5iy3PPCnMmV: '100000000000' - DdzFFzCqrhsgHWks4Zmu8YfjnUgTY92bL4KJKopf8CuPuHeqZG8R7hm1PLZT2eJdoSCVkdAJYGvMxjM2Nz1wDV581u7hh6RnhJdpCxmm: '100000000000' - DdzFFzCqrhskpEHqhFfYYcQv4An5bVBZmEEWHUM1s6SbocstXfSUqqhPmPmbQUUamvssKuLrWip76zoAohmRcxG5Y5yeixGPPULFa7Aq: '100000000000' - DdzFFzCqrhsm9bB8qYkfKTmLweiv7saHCtTgvmjk1wbapktgnUwCiEntRgaZpcEiBNHttMRURnTK8cURzjfnpwcJuKc2QteDHRtHrc45: '100000000000' - DdzFFzCqrhsgu18fzX1oKxEPutnGsSQAh6wf7A974T9mgsaLrCvKmqnUp3y73kw7pVuJfYJWtB8XQnTQKGJrNNuwjuJmtJ2UFqoAQpn9: '100000000000' - DdzFFzCqrhshz5SZ8FJWckBeUQywicwbUJMrmRSE8TwoCLscPTxzgSrrrmrgKdWXf2xdQeoAfAfNyJLQ9Sh7XSZfwww96eWhGzFmZrC6: '100000000000' - DdzFFzCqrht2ncLwKpXDRbRXr7wgvURkFmqCujbTozRzukDC69H8ue8ZxKKfftYawN82LUZ1dB68Sv7sLjouJUQyfSznToc69g47Fyac: '100000000000' - DdzFFzCqrhsjsZjAVx9u75DMW9h7daAWhL7V6e4YtaQEz7f7XMAge14rt2m4rbDA9DpMp5YmzAhy7bjsMRb8s9obEUwyTT2EWTni9k19: '100000000000' - DdzFFzCqrhsoWc2K4SiFsM3BgbfS8fru4t6NzXR2FGbeoU9MhdQWXdmKn5SCEGCfGLfGehoqsx9fDJSZia55hBopYoRoJ1SdUjN213cb: '100000000000' - DdzFFzCqrht9FRFEqbyENDVSvKhbzwxGEW9hGP9MfdYvx56PWKpWPPevNSL1asq7c6dJCMjzRrzgAipaLcUE5vixV718zuwKoH5BkJaz: '100000000000' -# "bulb", "normal", "curious", "leg", "essence", "chronic", "envelope", "cannon", "comfort", "spare", "private", "uniform" - DdzFFzCqrht6Y9KnEi9jh35Fm7GjWqWrW5Cc2Wgt4rSJM2gBC5hmE8tPbCm5ywjfQ8aEHP25VDmCFcTHfMk1G9w8GCZMHQBSGGVUwWw3: '100000000000' - DdzFFzCqrhsnKVE9AAHaoQbPYjXCiEbyMz6uzHCAMx7hK1K2tzfroQGp5dS2C68Gy28vMLvcVu6F664Qw9iChsVoFWL7hqeMp83U5TCP: '100000000000' - DdzFFzCqrhsjPeuAtJF87FUXQBUKssugSf5rsYEUoXTNcJ93msNs9riEyAmzu7YVgQdxwmjmqfhbNTQZ469SfWc2V8Ert3KCcSYTjVD6: '100000000000' - DdzFFzCqrhsm5bgZv4SFZ5vC2JELPadbMWSdj6BP13LH4Z7R6uMHVv2Q3Wvxbf6kdJUCk5S5ecmM1A6xLwKvuDjTAUjX3VD4ViEnYan4: '100000000000' - DdzFFzCqrhsnAzD36uvr7rHLhU8GaRuNkNhX1MpKtFBmHYkTvUqGrjjab9s2EviesFvat7HL5tx36XovBkgFBrobRh2fGCMH1CZ9EWmF: '100000000000' - DdzFFzCqrhsz3nJePTVEyEt62Aopr4npWnwSTxruNwsFsVjAHHWeijiZkW2G5wACy3DTdsBGxb8WzahS3c164Qep2Cm5HfzGrZthamLx: '100000000000' - DdzFFzCqrhshhEsU9gYh8uUf9nxYDNSJYojJ9gaDHTtAYwr5nswEdpDDyZ2kkGvndVXxdENYNbUyyW9pzCrvrf9gSrbUWdnuE7XE4AcG: '100000000000' - DdzFFzCqrhsmaGrdAfo9qovx4Fv4fnF7JMFyT1kWavyPVsLTCjRcCXvCxoKYeTqP4rTsXyVNUD6UqZQEDNxGNV86ZbjiJPB5rNP2rtoa: '100000000000' - DdzFFzCqrht2e8WbaAcCM3GKzZBD82rh3cxyRs6eUyhW2GgpNdK3keuk1QeVhADoQs7GG6w7jgiVycKsWQ42NyRqQogtCdBhgurTuoXf: '100000000000' - DdzFFzCqrhszNkS3hGcKJH8VQ7FuLU6Yeuxd3DZ7nF8xT91YioDf4kzxvEYUfCA3hxQqkD4GZY8rA4sY4BHW5GhtQn58tMsd82B78DdL: '100000000000' -# "tongue", "cabin", "enact", "square", "feature", "prevent", "journey", "pigeon", "valid", "unable", "drum", "opera" - DdzFFzCqrht1EW838ajWUqZjmvz3xo96xPF1WonDDrTGbq1RuHjYgAuEmYsJS6QUe5Kys76u6S6xwmgG8rerQKh8AW1gfoEHEKQA2YEQ: '100000000000' - DdzFFzCqrht3f5dsciyPRVyKy2woNhXdtp4MegSw8wYNw6cpQZQDt9a4Xn4RL6dBiovb6nSEGFMDLnAc4UoC48oBZEQyBJcHekLc7si5: '100000000000' - DdzFFzCqrhsoSkMuK7u2ToM2rGWgseVpGvpL9VGwPqHyAqSfg8LLy9tsLfZQHp2cJjPTSoyWJh4bMSCAq7dx9oEKXH1pZMi5YAAb3JgP: '100000000000' - DdzFFzCqrhsughEFvccCa7mRD9RQZoL88h3RTc4WZ7SoNfUbiEofBgJB8yRGoTKgP62BSpew9JZfLtSsfXSqKzfLkLGqVaqrHNQWpCMQ: '100000000000' - DdzFFzCqrhsxN3xy6B6b66zHZVsrJQDFdYo6Lw8WTAqS8bNJ2msLU5oqUmcviinqxoNGBfSX6rrq1ba9KANPZ62Jzd7jPnrxUASkbSEX: '100000000000' - DdzFFzCqrhsiXmakPg2y18FAbQFKHeHtZX8VZNd4XkEx5WUm4hy8pAhSgfb5ut8cDV1sE2Q9aVBFrRk3D7iojXkWucCR5qA4F5Xp9HtR: '100000000000' - DdzFFzCqrhsyzSxVuScVv2zdymnpAfKRuUEJ4aMvWfkPBBwFGUpUy8pGcEAPoZT6rCpUxcXJjpUFMZJxfGhTLVi7DxhBQn9WciHyUemc: '100000000000' - DdzFFzCqrhsx7ybPGKPrGo6HEvvJEwh8MaEbqmhKzq3kmWdN1eRRfsF5r6x2N1xVP5EucvLgMCULCWJ5UxsYNeEnVACu9U23J1uXi5rD: '100000000000' - DdzFFzCqrhsuCzSZjeuoACKcbeqFdCn8wnsLfWahoTsxEiQjvtnurMKHeA5Uovdovy2eyzL1dG41La2AYew3Sz7qGsydFbbYRidmHzKc: '100000000000' - DdzFFzCqrhshZhZXSqdg9LJ6L5ucgfosECYZswKNZTwFZi8xQWiCmrXnUrpkZxioyNUd3cy98B8tLXHWaSkJXWBb8PvAGhLUAkMPfLsR: '100000000000' -# "assist", "pact", "vessel", "spot", "fine", "fine", "crouch", "body", "gown", "allow", "hair", "universe" - DdzFFzCqrhsu65W1ihdfX2QRRZTnSzYSi2qCaZLv5nya6sVR4XNWeLHFr5XePhNKasPjorBzqW8qch4KNQNbPdJWLBDrshq6EwbXznJm: '100000000000' - DdzFFzCqrhstvbwMaERaLV1pnPuM6og8hgnPewkMVkrmhNkgnTB5rgbt9bEPYds14ZV6dgXVVhS57YLbaGrDjn1ZCiU9SF83Q7dXt4jA: '100000000000' - DdzFFzCqrht8mTWFtdmmwHhHC9TWBhMevmXpPjFSefWayVyBxH3eNAd5q9WDWQy8krtzKymrxCXBLL59CvM6LmYDrtPcHJy3DK8vwwUL: '100000000000' - DdzFFzCqrhsvoEZRtPAhpbMvZnx8ky7FqJdPJmKgpyBf27pXaK3WvrrLeBGjM1aR1qjQqaaviABTVP1wsJAfB4ZCZcXCU9RfrdZqWvt4: '100000000000' - DdzFFzCqrhswxeRiuBVPCJSnWG4oe6vkN4eEjHstqHUTuC1QeKzjCn3jN3qP9Gxu2hXAb7vgLk6nKBYfCKmpCe5q6muM4MPjQ19WUBMu: '100000000000' - DdzFFzCqrhsubCguPahemcTZtmNoZDcwP6nJMFoEj3hkk6yuYeK2EknkZqLjMnkSsLGrMcqdbsKiCU5SPHUyK8Gc38McSRBpBJrQ581y: '100000000000' - DdzFFzCqrht6HR6fCfV34AUyvR3YyriyhpAMLpdcPj9rYd8xkRLH7U6xtdPGLtaXHExV66C4Ets31i8Hnq5NrrkJ7urSj8MUtEBcZMKX: '100000000000' - DdzFFzCqrhsqkj4dLvYnxEktx6oWSS4du8MNyZfFrj7kajyQ7sXY5KqVeCqpVij1kQ1SBJbZH5FvWo7xRWYWwQUeGjFyCCZuRNgqE2xh: '100000000000' - DdzFFzCqrhsiuqpSe6YrZyioZi3BGCGVx531UBP9h3LbTppppb65fwG7R55TJG42M3z91LZgZzqaqyAGqD1kBjz4b5JtqR99QMNMmE73: '100000000000' - DdzFFzCqrhstgeTg3vnEmbERQFuSbrQ4B1HZvo29bCXo7xkBjs16GYKRNbWG7hG2sSdosjGk5eyMhfiBye8H3fp2pyVs3Mr69CSPkkxB: '100000000000' -# "tape", "glue", "rate", "squirrel", "jeans", "canoe", "bicycle", "sausage", "lunar", "pair", "fit", "ice" - DdzFFzCqrhskQMk1v4faf9q3RLouube1N6jaw6tEn3sE2YUmDDQUjnAQr2i5GdUuKsVfJTSKkB8dXvPS5zAdp5Vvu1nNBvzJUBZBHWfJ: '100000000000' - DdzFFzCqrht41wzTkjmzB88BcAhYFb6iVSMETpC5ZvTES5RQJvfG9eGMwPSLFQRXi6uotWKaReTsZyUXwS1LNdycV5CFPWzuLQtAGgLh: '100000000000' - DdzFFzCqrhseKzWFXhjHPhPM7E3tBfCzLQ5ncpwzqJuH33prMjBEwJStzkMDRAE2upsBXdcn5iPCQe6qy9Z9vBpv6U2PUY5ZxeNdP5PF: '100000000000' - DdzFFzCqrhsfBp2xYs2xqAvawVVjZGrExgsEeTqhje1C6yFQxQhgHNavZKL33XpRrG1J8SJAiMtsqQnCBcpSdgkYDEHvfU6hxESboxtp: '100000000000' - DdzFFzCqrhsr89fgkp69qpxL43ymQt2YNfwA45cTMHu2oviPQTwyJisize6qSiDrLV6CtAvkkERJN7B8gpaSSdKRs7FqDkcuqjn137wH: '100000000000' - DdzFFzCqrhtBYPNBfhVxkvWzaBdZBtNKPR1gLk6ph3sJVVC7djbQsfJRps1vWsdj7Ng9aCYTF7ZvdfVzF7YKKF8oXE2mF4HGHz6kNgft: '100000000000' - DdzFFzCqrhtAyzeg1JJPsj2RGJhh8CYzjApC5aGhxZ45fgPGK3rUPE1bdxzREeZXkEvbVBnaw2h2yzBJn7gkb6vWboeBaD1D491gDkM6: '100000000000' - DdzFFzCqrhskpfrsyafEcXqaos4Xh6Kj7yXTQfwN3FvofwQhbMq43UPzQLLmQBQ7LtkYuJvVybRcMLZgrhwVaJ3tVZqLnq3Mot6GMatW: '100000000000' - DdzFFzCqrhshCqg6rq8wZXZ5GnnSiZkSZCtUwaagL46wxp3M157jzMbF1q4XhDrfzZmc58WxXwa8AC9uSb1wD8befSZM5dQJYrmDCoic: '100000000000' - DdzFFzCqrhtCVAF3SiP645MiyAwRvbaq34FryjaK6sxjFPR6P94P91ZPR6wE9nSGeuyjMwJeZpz1jT3HLnuo9f6XszNdFTTnEv2gyy6K: '100000000000' -# "chronic", "soda", "history", "famous", "owner", "print", "student", "wool", "pulse", "sound", "melt", "gate" - DdzFFzCqrhsiaRM8xydosGBPRJuuzzX7yxeHAcHdGwWiqHzyqe738ytj5pNXtxfHPDYWD2g684hNaxJipt36Pa9WsGHiLJk884oCrwu4: '100000000000' - DdzFFzCqrhtApeShHWGcxv2Wr9qwbm42XL5Xe2rekV2fH5v9tRZXdV4Mb2KSDh2U83yuNSoJdGDwPKmfjWPoKWhd3TtWvpx1WABqR56p: '100000000000' - DdzFFzCqrhsveWJGTgC1ifyEvBBTQmuFRfL41tGxGKQCVnAGQtdU6rocaiPQvvw1ssQDtLhQD4pA8QVDqBTQ5MPaBBricDrBMFGkUnqe: '100000000000' - DdzFFzCqrhsy9HENZRDdEzGfhXj3rkR5CWtkW4TjUYVYAh4T3bZUg8trAUiaHtkdJbVAd3YDX2YEMqFDSvPUXisDC39NpU3c7ktL6YyL: '100000000000' - DdzFFzCqrhsv36gadfxGKDSx1MpWcmVAVTQpPANTbf2LujHux2Py2H9KoEY1YxHSauXxiwRiiCwpVr5A8eXoov9C4zZYDdw68A5MV3Cx: '100000000000' - DdzFFzCqrht4eq39dq3RU2uSppUdhBuF8HtSgK9d593XDL6rYZop3BPYUdZktSpYA8yif2cMHFDqYFmFKuPkAaQW1PNhuaeucqCroozh: '100000000000' - DdzFFzCqrhsm3qRzxcPFMQ8Lg62xPCEdMH1pgJrh6gQsPU6uDY95mxAn82Wp9Aktjs3igYRnoRy5XAbv8cbbQg1pdJpsBMqbuQVfFR8M: '100000000000' - DdzFFzCqrhtBvpeuo7sprBafj1ueThBVV8xCEL7GevccZv9RJBCShzi9PF3qTssk5PkDwKxLxrESFaFCTpz1ZLa6Kf2vD9cNsvycfbQ1: '100000000000' - DdzFFzCqrhsqy43jB34f8b1bpJUQyobkhmk9wbuFeZRjgpwRpM3qr9CCsgncDyUpedSEgzkY8UXVMLSH4GxcQ4SKrqLpDW4Ko69mqBMT: '100000000000' - DdzFFzCqrhsqzemHP17k8LZMtmaHcsBwgFLy3LP6pZ6wjPRs8omh5AcsjBczXEqsf413f1JDw8tFGHwhx8QuDut6Nh2kFQx81XhZtAmX: '100000000000' -# "exist", "arrest", "north", "tunnel", "height", "style", "announce", "real", "uncover", "sphere", "sorry", "sudden" - DdzFFzCqrhst9BUTdGX8sF54S9aw5jSBXSDAEUma77UrFjoDx2yKPEuVhWDMxpk6MWBMDhefBG65zQGCcfXjEf8AyAptQ5sWyee2Kwvo: '100000000000' - DdzFFzCqrht4bPKFXEERy8MT1BcDmC4npEfiSPQL227ptkLVdHqy3dTGrU5ADtKzSN3MFwzyAni62bp2ZV8n5ZDjzHdm1cxAihmYySXu: '100000000000' - DdzFFzCqrhsiYyLaNVE2uhcqLmbdYQnThLiC6euJdrpyWWguLEdkhmeWGdxDx5Xaicn2w2fJKz81KMq49euSesUhvwUx6F427db7jprr: '100000000000' - DdzFFzCqrhssdaJHLMpSjwmUFZGH58ShswVMeMDoQRucHiDYGvhMrczymfti5QwB6FzfYhXK4X5qbdKXUvzEzsZYdr1rdZqfJaWzXktp: '100000000000' - DdzFFzCqrhsmn8PvGHjxS1C9FhyFzwNBRhXpZF2C7q1pkLFf9yHFCVRHnVAF5qpH5pVpBNdiEvNWhsQzUbMksodhnAEXYt58o4tK916A: '100000000000' - DdzFFzCqrht9yCckWrvTSynq5ZVETP3tvvLCMHfEDH8DqQj6H2aQsPw9KBjeAoSGvp2SAen2graUiAvTj42o1HXbqyR1xbauTRqo5Xuk: '100000000000' - DdzFFzCqrhsgHhQcRMrm3RPbBUwrvnanGbcchXgMHeQ64bqEJwdi9g69nS1U9UFvmB5nBDqRUjjdCbZSeY8XPM8tY4tVLuyLsGX6CRir: '100000000000' - DdzFFzCqrhsjfhfdSnS8XYcn4tTw8u5Y6SEYygK6RvJHC1uamWGuDNLYgwQNWnC91LFtSxX2R1yY87A6tYNEhFKQKF1HmX14xAt1XRxe: '100000000000' - DdzFFzCqrhsrT81z6mn6MTdLNt28sBUmnosC2rYCjQejM6tRDV8AKHqEbxGc4LQhK2ggScFrQ5za15P6LEAyXf3p8P6h8cjAJvhHw5MF: '100000000000' - DdzFFzCqrhsjdEjd2YipWNbt6jKF8j3THaW3Hj7WMGuXXsaWfDjvk2f32dgb8Njtj2wa18AGMKuU4EswggKuZ4zBiZahq24S6hyzCwis: '100000000000' -# "celery", "slim", "stone", "hand", "inmate", "enrich", "stem", "ice", "glass", "fault", "pig", "island" - DdzFFzCqrht4nV96FhGCupGNWmaCxuEtAmFeBesEW68cjy3RpLggYCZFrLPy7ykuHu6vKN3LidtEwSdtv2wSUFAadwTEmksjf1Sbi3LW: '100000000000' - DdzFFzCqrhsho5PGAWinxtac4QJxPQrYzRdK2PXV8gBUrF6i39U3MJgaGCogwynj1e8xYoTWVmPhCHsHG257Qihhu8hQTABUxtGirzbM: '100000000000' - DdzFFzCqrhsqokHp8w9JSAiQ7zCujVoC7C9ozRYkS8ogkYuwnbCTwqZNxCg2upu3eiA3CZjrgwBCarEibjYTj6BNWHwC48RKTKb8Ysis: '100000000000' - DdzFFzCqrhstWZnLR1tsxXSrWfNjRxbetZDQkJ5SB3hXsd6zEnordufxSpqdAQ4d2d6fFUU9GMPgeYpsAwaEgwYpkbGYpe9zZcV483Wd: '100000000000' - DdzFFzCqrhsytaiYTPHCkxnR6Ppet5MoETkLW7LGv6VkUAspR5iExDbjrGmR6kQWF8BisMphv6QuMrGLNPjVpfw8sbzxcgA7UB46LQLo: '100000000000' - DdzFFzCqrht36H4ECYgqwMpkpoYZH2Vco4jqrvagZJ3t76p8wtuUizatFvExcfydawjX8QtvPNrLkCgxoaokw9J9RCxPYQzj5ESTZ1J7: '100000000000' - DdzFFzCqrhsu4MBuLV8qG3GAD3zTXFqSLpaXpyFwvvhhi8JPmxA5WPF16UqLvKBewkH8wawggbRUUihgiZta86wAnHGN6yvwET6CGxFN: '100000000000' - DdzFFzCqrhsp7uHHYqrH4PEqkY1FMkXyL4eRwQSWUTMAUbH3aR2SMvYV8LmVtgjhAyWJUHh2Fmr8PrtDmjcFtNp5A1mRp7PmWkmt4xVP: '100000000000' - DdzFFzCqrhssoQazfcZfswz9GQcEmJLzdBhkzf8c8d93DybhsjEJ8J8yZzHxsaDAi5nWEjFcJTv41Zjrsy4Rmy1cgJ92RvjHK4WfgNuU: '100000000000' - DdzFFzCqrht73JH3X3pHv8JpamtLcTtxpCr5hvcPU42fGFz8jG8XR1wNfEa9hp3ZMFCr5AJLih6168iuKGVGTbCsMiiAt7pTbbeyZ1HV: '100000000000' -# "ancient", "update", "number", "oil", "degree", "virtual", "stairs", "reunion", "question", "toilet", "disagree", "deliver" - DdzFFzCqrhsrebKm7sFGGe5F3bfLJd7gaUt1JRt54D5GLWRCq8bE458dMdf53gTTueVYHYe7sv1GAFCaDNohWuWftqbsXtKUJVfQGphS: '100000000000' - DdzFFzCqrhtByw2NWvLn2yu4uyaqwBCPYNU9goY2WwNvrFJg5GjAKFHQyMnnNuoX7m4ZtheRWxrae9oUTP3E6XeVgkBDatcC9aMfs3iT: '100000000000' - DdzFFzCqrhso1L6xw4jTsBudSBBReMS8t5aKMLwDLKmz3vUAnCb5EksNTPjQdQgzBDjR7btkEwCtaA4yZuGPpoAmwL9EP814gTus3Nze: '100000000000' - DdzFFzCqrhsqKSLoD8ZcA9VNkNTnaZRCVesUnajTp766soeaz44t3KTve9pD4JTdpEseVpHyQVFfJZZwBqCYzqDkKEGGPcWp9JBEh1vQ: '100000000000' - DdzFFzCqrhsf3GKBLMweuuwwinX4hutK5P4Vet7op58hVZu6HXc4dShBrrn3wTqRHxUhbXx12NvDs2L6JukkKXgK8iSpb2PJFaN4ABzG: '100000000000' - DdzFFzCqrhszAprdFXZxuGGMYq81F7y8A73qc3rkyD3aDi6xej6TVHfD6d3KUQpu485zCQQUpRVWzBrb2fCwbFrRomN7b5Xpzv4U3eg6: '100000000000' - DdzFFzCqrhsx5LWMerjwfnZzKA3gVfdYCScV5UadAzszwhrag57eo3hdxLXHoXXiGXvre3npCiVzqK2TNwk7o6LGfLyb1jrNLpw6gE3H: '100000000000' - DdzFFzCqrht3nAENaMizh84Ve7yEput2HNsMQNWd5x2noTXNPEw9uuxdUa8b5y63PtxX9gjhJyEKLtRRPSqVQCJPnXyAxyK5tfQP8fNh: '100000000000' - DdzFFzCqrhsu87pssBC19mrrhTMhRjrp36fEVqCp4HbTVXEjSwoZYetxG8bqjzMXHCnPPfX8z7k8Lv9VQyCpJFUXfHU4NeB9uEnQRhkB: '100000000000' - DdzFFzCqrhskRrWY38HPw8yfYEjp91wVNUzRQ76qcM4UkQjY1kBKhfRjip4ieiQYXLFyoxfEqPkbPZ5WbGkB3CZhScPvPjPppc3PZkWD: '100000000000' -# "surge", "inherit", "gown", "witness", "true", "fame", "couch", "artwork", "orchard", "tunnel", "toss", "mom" - DdzFFzCqrhtA6YZj6oSVtqoSXrkUiHsRv9kpdxbohtZzxfvGaMUoYP7VWWdsczheYVfLt9VW5r4XFMscjcZcb2UGw8ykB2vFyxbQckQg: '100000000000' - DdzFFzCqrht9z4VHBohf7kASug9YRebqhLuWkz5NLADUR1YckG6CznWEvjPs2itEY7kG26vuDchGMvkwcF7NWyFxdkkUqHWhYi6h3NTz: '100000000000' - DdzFFzCqrhstM1aY9uaj2Jo54ivAePvGWYZpefwh6tovQWeMUSkauQ4q6UF5NUwukjzfF8XBNMR2tJhD7bc4E45kBvmKfaR4FnRiZ6LL: '100000000000' - DdzFFzCqrht44eVXvmjvLtuBHvDNEfD4fNTE23HDu2cRZWN3NLfkzpBapjReXMwpJEvT15kx1r2RTjkAz7LnuqAbAKaoBwG6g9krLWw7: '100000000000' - DdzFFzCqrhsggd6EwdqkEUBdSjbiALquH6mC2AmwDNNLkAdNY29sGx7HE27H3C7BJ7H1UF1CBob64fJiF9Zkqb53fc6Sox1KEH3YBQJF: '100000000000' - DdzFFzCqrhszudUhGSJkkLCJ586obG6P9DeXeweYG1fMfujcpf9BvqKU8d1ur72ZSfWfkM3v5JxWMExAw6Zv5AA5qJxaLDDF4PytWQ3U: '100000000000' - DdzFFzCqrhsymccaaCAmMmG6JxkoYaCY15F9VSFv8zDxWrdEA8jP2SZXMUwUEdYWhEJubuy1unRdpvUeMXFSL4tqY75QXUW24yfGvy6r: '100000000000' - DdzFFzCqrhsrbJp9CJL4N4RbS9WkAmWtX2Zco4xQ3HPqARe7th5UDF2XEJEoLc7cgYEGzPDoK3EDjSQGiEBzChwwsEjPGhwvwzDPkqnP: '100000000000' - DdzFFzCqrhsfocoG1xmGoaHJXhga6dmQtZ5mgBg7P8xf4swuWMJW2FZJxSrvx8TpAyuKhub45Ys7az9BgqZNRsx8kzZQSsQe5hGjXREm: '100000000000' - DdzFFzCqrhseNSpmQJVXqRrjwCMhfzdGcLMLNvXZgAyuCfYHjwq5A2UUBqibD4M2me62GdfD7sL6qBQCkEos6VSgcYMJjg8uSXiqXGpT: '100000000000' -# "oblige", "room", "table", "auto", "build", "very", "street", "margin", "faculty", "purpose", "shoe", "prison" - DdzFFzCqrhtBFw7EgiMNyUnKrYjYd9B6urwCN3WTTRpvAufSbgDmmoS98K331mof79YKfkVR1sVnf1ATPAJHH61AMYJQhx3keV9cK27R: '100000000000' - DdzFFzCqrhsjfM4ZyRU75YACkZ3fkW5pCy5YJydpCFqRDJatDh3fVjuxR8X4vENkLCVjKndZdwBsgErbi5t7ZG5pQ9jaLxyQtSvHFwLL: '100000000000' - DdzFFzCqrhspVTt8n3DxK6LkLveXermCBWPj5eKphpccFszTFS4mD9G2bz7hk4GczgTVuwkTNDPim7EaXfTXxAvanuPS3PDmMoe1RJ91: '100000000000' - DdzFFzCqrhsfzeTD8yxSDVbaMUgEkbQuUrZEdpqwdQjHpuPfDvpntaiBcqEE8TkJpG9gpbH8ar84nusQrB7iAbqb4yXCKDU5PKWaev6x: '100000000000' - DdzFFzCqrht6J3dL5pfC9f3cewkJTdXsCofBLj2sWVutDGKCKYci3fA2ATqtgyzahakBLjVbPTHEMCBkHFvxw9z1eDVmc4Z87bL3A3Kf: '100000000000' - DdzFFzCqrht5i39FiCMKxSV5AFN5nBeJ2MbupM8bTSg9KNcHv2XHBRZnxwPGFtgH2QpKGbEuVc9CUweu3Zx6KrGfm2dRPGiVFm5CpNiL: '100000000000' - DdzFFzCqrht8BN1iUe87rbf4vXq3b91P3wEX6cH4UyuSCJBpmhomgJZvXFAMG6ENW4nhW2oThPccnHhbPWMieaBbChzEgZ9dERgahnFu: '100000000000' - DdzFFzCqrhssae3NuNKnVvzmpM1a9fZMn4AuK77N9i8SaV8XgcKYfxCmN4HWWXxDEFjcxMkpESN12TpSEteGKWtPKoKEuSkqh1K7bf9d: '100000000000' - DdzFFzCqrht7DQte1tjKsEV53eH86em44gNDwDtJTiPwcupUEZeWDfBCM58JArVLCuS89jBCdUjpZ5cV5MTg55n2c6Zn6UiTi6aXXScF: '100000000000' - DdzFFzCqrhsusvfZkGxf29gy6t1uyrG2ihyak3iwemGjiXujtyetE7NaLg5cUE2kaakyYWYfpX5QRCBzBjMAWoHnxn9bydngLzqxhcto: '100000000000' -# "theory", "afraid", "tell", "depth", "issue", "cover", "pass", "vacant", "poet", "fury", "fortune", "cruise" - DdzFFzCqrht6vJoBt2bhDjUCUaCLfiXSah4qGtvHJaMn1L9gqH2SaffNwkitTiyu3z89DeVuFD4CbD6FBE1pSMCVY5osmU72d1yWo9g8: '100000000000' - DdzFFzCqrhszjskyvy6H3oBE3CAmViTtkDphHzPtjbut9bMPxrZaAoAvjJpuvhN1zfQkZHSweTdsi4BuyXrPQ22rCf5Bhea7ZopzgTbU: '100000000000' - DdzFFzCqrhtAkMhss378ZA33eDMwzT55PQHCnfe7FYuRMqwbYqhqTXH9QfnxPLaCkJkKAKaHboLQ1Ufxu7awexHRKQHTAbQLFunmeJ2W: '100000000000' - DdzFFzCqrht92AZbrR8SWu694B7uDiaecYzVg5z8udHZgL2jYsVCRgigrhjrsz6zouhH8D7RX6KEKp15zdAKtCjwwy6j5JA3EFtXnA4Y: '100000000000' - DdzFFzCqrhsoyT3rnz36eiX9eYxAVgrymp9z48sjJxntBV34EZxrhvExRoiYVbk7fdnQ7BuviNvvqpNmCB3hBtjJmj8A42pHgHiyzFYg: '100000000000' - DdzFFzCqrhtBjTmB5m5qsm8K1srWJAG9Kdt9F5e2w2XR141pXivAiL15u2VHok77mVHwo8RiBX2Ya8Qkde9bziHZGv6CxMJ8n9CQQESP: '100000000000' - DdzFFzCqrhspjaMkcHj6hChprqoRzxRAT58u919ZS8sLrWP3EN5FLxYNVm7pJ9VL5SGyp6QGV1UfjxymH2snUAQztf2VGhRSb3gMM8fE: '100000000000' - DdzFFzCqrhsuPxVHBrCzjYZEZ5KyMoyDzY8kiamuus3jWBvSm4EbZ9xFo8Dsf5cfXzq7ssWWWvu97q7YQWSeR7rMtfYXy96KVwH4i4o8: '100000000000' - DdzFFzCqrhsebh2FZt7cP8aSgDMf2o8iMBFfEpAbkVDRg6fUrrAQDBK53qQ87LUBnD6CB3KotdxV45KyHDnwv25pzXychWsUCMKALGZk: '100000000000' - DdzFFzCqrhsmys32gydWhvhaVMxKm4jLY8T5GcYjcAKrvizenswfKvhcxGi8fTMvwqUVBAhTePxaj4tCV6qzhrmTUgk9Ge5d4G9aFiy2: '100000000000' -# "clay", "mix", "capable", "student", "scissors", "ugly", "prefer", "change", "adjust", "push", "cake", "harsh" - DdzFFzCqrht71ZWyLH6Nt8dRB1vK37nGfoihNhSzw24xCVJ9WsLmEphVR2aup36PY3ckFDApZH6vVagVZgDWEhdyg9AVX88idWCm9Sj5: '100000000000' - DdzFFzCqrhtAPzJgttZb3LFYfsAVJN91vWB5qh9YBWHiwjg9uMqHX4PPsKW2QRMHVGyiAvRMwLr2t8QtkAfJa4g4XMieGzUFgpCavtVw: '100000000000' - DdzFFzCqrhshw6x9EqMayfUij859txSoSYHQa2qqZUrwYMNiSj6wrm5iJUWBh1oAMmeUnsNQcvSBP1n6H6hiWTNWFLjnTobtnUErCxN3: '100000000000' - DdzFFzCqrht5uDzi746DnPGCQ3Aq42hwSZbYg1fXMke5DERTPGhDD1VnirqzUC5oRJrDRKZMBC78bAAvyUSjHtLpud3tytzjUzbjq3rh: '100000000000' - DdzFFzCqrhsime3ux2vxCULpsTCAQjpQKxQFaW8BG6x4Nzi3GowBMpyo4TNsKd7EiZwVMBU3PfMupk5UMttwZgVr8XcGRGVNKz9sJkhX: '100000000000' - DdzFFzCqrhsxJ5JKBLVyoVCYHcEPDzoui5i9bTi3pWYMQAbyr1XqwEKVyDddwTXAhv4htUk31fGtmo47crfA7t2LszWzAQkDVbemiyto: '100000000000' - DdzFFzCqrhsmKhjdNpqX2WaD23zAnhmwYsPEip1NMXzRTXo4LgoURoa1S1qxR6NmTq1QY4E2zDo3anWpGjgnQ1t4Yx6jfs6befm7optE: '100000000000' - DdzFFzCqrhsyHw9BWhX5PmxzAyFVfybZrGpFgLMKrJF6GRPv2KYQn7jgXriU88oMrV4ARYJP7DDLmZgotivuHdbVDXvcp5vU9hMDvHAv: '100000000000' - DdzFFzCqrhskyMbptmV625ae221NrzVHoZCYKV5qqsDgusXxY8sPvJDmnAPLqtwtHmsPs6T3zXkmyXSpD648mmSjTZSZxKimXrtw2Um8: '100000000000' - DdzFFzCqrhsivpXNEmP7ZqNXReNPR57doCHNeWyrKtT5tqPF6bNfZnD8Tsb571y5KgWjKbvQ4sXscQPPEoFToADRUCyCJh8ejACSyZDR: '100000000000' -# "shift", "sunny", "brick", "supreme", "tank", "duck", "garment", "feature", "cloud", "canyon", "harbor", "nut" - DdzFFzCqrhshgzsD4r5KPuGZP4LpTYjY2xWRZTJ7G1oQYSGmzA7EoV3W4kXSWSChryj4E64dG8YkXd4skazjWjkcpFk3DDLTLbUApWn4: '100000000000' - DdzFFzCqrhsg1H5j5z4fgWqWxEsjRYEtUipcQmycJqEcjhiQ1JuZ75bDnva9XJ3V2r3XGUsid72rkgHBD1HossFYRxDyjgYD8FNdAtbP: '100000000000' - DdzFFzCqrhsw2aLZysp2j3g8RgybjfgDqq69GZ7SuwS8QtAnKs5zBdUVTpnmztrW5jAQCpLRWKTK91n7uYEQiVxBoCnET7FSxBQLnPFt: '100000000000' - DdzFFzCqrhshheEVbxKXs4mrSQx61LbTv3NALLi2BkY1uKvMFn64feev1RifahxpZ56w9pbLaWuSTHqzrZEZTXAPbk1T3JYE66axAHcf: '100000000000' - DdzFFzCqrhsuFUh87hptKqiKLRR7Z494cJosQ9kSA3DSq8sLudxfTUyEZfUXvetkFDtvJKCJXi2EGLFWdQ1adNX3PjjGhgMfA7eLZLq4: '100000000000' - DdzFFzCqrhse1dJXxMGtvpEkAj7KcodwGN9dp3qsmYvgiDSJoigiUykaR6tkqeZsE2LWNNADFSkdpCFJQe8DrgDsy7LDXt6Rup9eZ9mp: '100000000000' - DdzFFzCqrhtC6PSbZaMaXSAgvo971uvLGEQQ2Mx5bkaryDYB63uutqvsZJfAqxaBEcjWibTNLoXaCKKEzvYiP1tmoEdgqr3ocTPP79gA: '100000000000' - DdzFFzCqrhsfoxYEgtp4nNJUW7NV5GW2QnYE5XNU7aVk1Wp7CjtxnMFaV3jiQHXwS1XF94jWn6n41tCBmuTj9fJiexAqNHukQhhoEuXv: '100000000000' - DdzFFzCqrht9SEZiFkHxAqyo6UwY3Mo4q13dBZrzUk74DLcDoJMJagy8EUsd92EMd72nYqqBDYtm5FC7ihJVvutmeDMwrMfEfyBB9qDX: '100000000000' - DdzFFzCqrht2UjaBXn8kSu3xHhrJLBTvvNjjStCGsubbPJHib1nMLVokcLGK53cEvisuwhAaNdPCHbinD9ELYS2ddZvoQLcLBZaHSjc6: '100000000000' -# "delay", "exhibit", "social", "wood", "plate", "donate", "differ", "knock", "dignity", "sport", "cost", "visual" - DdzFFzCqrhsgTJYFraVxVhV9QJJatNikDgjkNxMbSqkiRRn3bZQwAaQZhNiBkJrBv8p9Ms7y2jBLNxR1YbUHMrh7FHzkGzFDV3SRpA8q: '100000000000' - DdzFFzCqrht1U45cCUrm8bsM93gqkT6t8drPeS9Hp7psrhceEER8kngKk8ZfHcxw1F3V5ZTk1DB1ZswKH1Ty4xViqckFe5bCgnbvimtS: '100000000000' - DdzFFzCqrhsx4v3EEhCbHLbsv4oHBrM9BkJUwQqCkSd2C4VZV3qe5SAHmqrngkBqog4YB9JvcHaVZXX6jWnZKsGCfHJ11WGmKQB956Ec: '100000000000' - DdzFFzCqrht4PnuBRmCV55uZY8MgDQWtRNPpFFjMwnQgvm7Td9ZfWX5YA6TQCVUprcpCVHvggRuMALvz8WMLjy1dU5pdEewdKRxxf86f: '100000000000' - DdzFFzCqrhskJg9VnyFZzbdvHL1zPauGxEbqX82TZ6LtD1KvDUCDY496wnSAmCHBxQ4rKwBVWc72qTWFuozWiEV5xdUgqutuWcGGB6qs: '100000000000' - DdzFFzCqrhsm3ymTTjrkHFZnHdcLwbTGtkcmv9W4GmGjZydSDAUh5dwnLj6FFfXqinQg2MnpjvVDfNKEK28zaVHaTgG5EYbbFPDor971: '100000000000' - DdzFFzCqrht8XXFJSkg5FpjzTjvEgcanCjsWxPZeQFSdhwjtdXSmxN3oADnSSzHns4HyH6tkxrEcaMYpYpPa5DBXWrnVkaRoMiBAdZVs: '100000000000' - DdzFFzCqrhtAjxVGbcYvP6SK7r42C5iWNE9gz1yHLEhMDj8kmEaaVyL8yH6A4sqEkyqLqdGvD8HUFxQUcVGtzEr15QEHabY8TsErbQKP: '100000000000' - DdzFFzCqrhsdvjyeD8dopUpmCMPnif8VZXVLgW8KLUoVEZYrB3noXnibKwP3GZsBVZTZAxksb4WBrBBLUiv4XGRiYMZkNtBEBRKVHzQG: '100000000000' - DdzFFzCqrht14sAeB9ErJbz2aW2SwLekBPkm411UDaKHoDpNsZf7U7ddJmTxFqfeXFs4UhwcYzLzBc2L34dxtsHqKzQsVumtAUdPwdto: '100000000000' -# "banner", "expand", "fringe", "kiss", "laugh", "muffin", "maximum", "program", "hurdle", "gorilla", "spray", "prepare" - DdzFFzCqrhspgqqqhiEKCxcE4uKkhG68qMmRqWqERbrZrt8DSKsGeUdA1fiqEhxjA7nh563x3arSftiznjasoEChGHYwfMMJxT9kvDwM: '100000000000' - DdzFFzCqrhsuteMNG6kTVgRHpQTbc6qxicZB5to9mbDTVeE5rt4WyCgJ9AJ7D7oXFgGM3kNs94jUDx9iWHGocry77DtN44j84KJ7MuV7: '100000000000' - DdzFFzCqrht3tQFfScPr9a4p8KsxYdzrDY5upr4mEcrmWaDkxqYnVcRjC8AabojAbCm7xEZbQPtdzZUWZRrFve5LY4HfsDV6PHhkKYEb: '100000000000' - DdzFFzCqrht5NCk6JCi9C2yzUQ8EABwkP6NekyAcvq6Dy6iQQ1obiXTpu1omW5p3h436W6PqiqmKCXsaaLyCGa4zaeP3HgtQdRVGPyyW: '100000000000' - DdzFFzCqrhsegqFLh5p2m5f1E9DgV4zYkLD9Vua5M8sywqYjwtDXTqi9HMjbF1xhnPAWksngEv1jj8B2Db4trtnQNi6yepJPpu6p8xaa: '100000000000' - DdzFFzCqrhsqPtXsi9Zn8uata1pvR8j6C7cZ9SJCorWjUsL6XG8XFWPooyeCP3JAn3R5MekSETGGVLyyBDAJN2DsXXrPojGfE7vZ3CpE: '100000000000' - DdzFFzCqrhszN3ThU4DkZL5ZiQtBerpyPN2ajtcEctDGeV7x55rigdPAKr2hvs9DiMV8EntV7nABeHNMNEZYpPqTnYoAf4sJSoKw6ALr: '100000000000' - DdzFFzCqrhsogHAxvYdHo3kzMTFAzMqXWzUp4f2GTGahLkStP6Yfm7T5N1e3h1DNNhkzgtYBPifiRjA4n7DYa8YPrcn5GWCkBbscMYbx: '100000000000' - DdzFFzCqrhsz2cZ7NN2JuwVAxUgF6VGFNLBHDQRYymMb6bpUwRM5vcYkHqvf1dRf7kHhh7xwViGideH28ontY87NkWAYedQtPmDs4Qnn: '100000000000' - DdzFFzCqrhsnAn2UiEjPYR6EbhETRGAA7Pbtr3DRdgWgzURD4iy1ciUqCHXNAJKtU2vD6h3fW3JFTFYxwTZps5bTZG1NvkL5Q7XkfX1N: '100000000000' -# "together", "sorry", "amazing", "loyal", "civil", "rely", "success", "range", "adult", "truly", "trade", "tip" - DdzFFzCqrht1cDfX6cVfYuK5q7RTCwattixFjdR11vxJgBnk4b2Fo4nNRFWmVAsTkb2XPkcb7zafwAPmVc44Ff9yNSfKdt5LyxA3zeYt: '100000000000' - DdzFFzCqrhtAsM7ec1Q79KN5HJwxfD5ZpEDzDjsDrdgazr6nz5kvWvyqWWAuuFUwshhJqvKHPZbbWsqSFBy9Y3tkPRQk2czYa69JzQSJ: '100000000000' - DdzFFzCqrht3Mt6Q3iAy9eTy9qZfZVVKGE7jejkeV6BfJS1AD5hpjtHDZRH5XzFV35aD8YDaKraYwWVzTZ4H8FxgCwqWCpyVfAfSyXTV: '100000000000' - DdzFFzCqrhsgHACZ7YZ2KdXj1v55refKj4BbGGGytahQvytEogJ14byAzFrBYWo6GosDak3npUH41dkUaV8f8iNHMsQRT7snPhC17PSy: '100000000000' - DdzFFzCqrhsjxFrHP6ynjGdg1FwhtcJNPHRQ2hkqv7dL1ZEtYYAa16KgL3Mm1tFod46YUdmWvFaWib3yaGgnKStCGQhhMVnTKZupNMnw: '100000000000' - DdzFFzCqrhskQdm6LtmQDD9t7J1TBTDVnCuopEWDx2WhcaN1TNjZJSNa2uu3VN6jpaFejFTUkTDzHfeUihkbxbk5w4A6KPATbgUn9Scb: '100000000000' - DdzFFzCqrhsq8GeLkWw54ww6oRx6GDw6VXNBH5joZAt89FcsW7FLZTfauhBagkLxQ29fEC2KUibhQdnnNL6wiD921srAfyHK4Mn46YF3: '100000000000' - DdzFFzCqrht5CEUKcBErFxVKnV4tuuuGxfL3yH9oScHsZkHEp7ZkSSziDE6MxFwdNKrQ9TzVEPuAwwLU1EhEEw1bBjcyhPgDSMc4QaAA: '100000000000' - DdzFFzCqrhsvMES8UtB5f8JL8WLHGdPrFcTv6bmUkqK7iEAoE3NbcnnCwVX8BuLyeMLZtuWi1YiUkc9ERiTYDZZDXQxenY5XQG1wT29E: '100000000000' - DdzFFzCqrhstBSoA3mpa5RBZ6TseQ1bnkvBeug9arVZsviGgCY6cSTrRg78NJ7gAcs71AYNrc4yVTpSi12GXcs5CuvHPYz3ptxEBbean: '100000000000' -# "secret", "like", "type", "honey", "average", "sword", "rookie", "mass", "blade", "myth", "double", "salmon" - DdzFFzCqrhsq3UxakcFtKdFriXGwzRyBghBp6njmD5nAnpQ91ubcjxm2pGX7DW6ZnHupAHDaU5qQKN6esRRYG6k943qaK3X8iiMd6ru2: '100000000000' - DdzFFzCqrhskvjfPki1rtQUm2G5e9BEqCzPK6Le99XQ94CGxUBqf1yHJbLMuEnGjyK7rW4RNqvfv1zzrTnQQW8rXU23DHMWtei5oadFq: '100000000000' - DdzFFzCqrhsfmKR8aCiwWVTUE8aWApRaAFNsqBPiPepkbLPQ7e29nLoy2WPGN7zkP9fmmXgPUVkXYaJRQ1cQXa6PdwerzFym8V8iD5ys: '100000000000' - DdzFFzCqrhsxWD9Npxa1AJryBy14aaeYpq89qdNEFjwiuWm4U4C5WJgjsbUgQF6mHQvWirt5gW9f4osKp5VPJYzcjVKyeiCRWs8Qp7Lc: '100000000000' - DdzFFzCqrhspGf59ii12bMaVPUer3zViQ4mAD2T4arK7GwftjrG5HmTRVpmRADwpFe7zktWFBt1nkxqznnLMiJr8KVSXhcak6p38Sw2D: '100000000000' - DdzFFzCqrhssPTdEzqQ3FR45czq9AChvpstgdAAb3w2qVG1XNz1Ev4cGwCZERPyNRhKbPdq36puHDYLjFAhuQMTMJXcvpeeMMFd7tdN8: '100000000000' - DdzFFzCqrht2cH3go3Bz4YYXXND7ASQXAdSgq5h1Sx2hy5BJgFEH1NkSJCX9XnuCfb9MExnaiVRw1Bk6GYXq5GFo86J9akvxeatD5L4m: '100000000000' - DdzFFzCqrht5KFdAHE2Ly9haU65WpFQDckd5XgH2YLpSttX2tJgceGiUfeyTL1QfPAwUgiiTsaHxfAmaCUdW7sBnfA35MNsmpoBJqQ1S: '100000000000' - DdzFFzCqrhsjEH72Jf1d1H2mTpHBRzKzTy9rWkNhxtniNVCaoGSQxSLkJ9aM3UvkGLcseiuvHDeUe2wgWVFfNUjHMrPAN7efFDKu9HYA: '100000000000' - DdzFFzCqrhsdxnxLx1kz62Hv2T3PQWrGSzq9tPmqdu1J37pZbyatxYLu6iEomoi3b7RdZ3EYHAYG71ydt41gV3dMbrmYgnavK8qz1R56: '100000000000' -# "buddy", "assault", "armed", "whale", "bid", "unfair", "zone", "minimum", "fat", "employ", "front", "lizard" - DdzFFzCqrhsw26CfnwSSgjPJkCsMC8u6eRmBoem6d1L7nSKV2wtyAYV3hqfTXcnvLeeS6fdVn3bBcJegcHuaCQihenQvHBB7C1z5jVSF: '100000000000' - DdzFFzCqrht2kUc6LtTMRAfhS81S7GHMcg8uMWca8zeZM2KS4fZnbtSeGj8Y3Aqz8QGdhKiawTcEieTp1RQy8DUeB6myGCcGKeohcwFy: '100000000000' - DdzFFzCqrhsvFagd5L4yJMCC5b2NaDyQ6i7jc2wFWzQu5kkZ44oLqz9Egye2k694iBuuwT6rRUUdMWYv1KVzqG6SeSv7rKgWZNFx3Muz: '100000000000' - DdzFFzCqrhstQfMVyRgzLeXfethXexEXUbmCQdNLYPpGWvg1zQWfh7wDEGy4QaTeeMbQ44RZvnWZ1So7yzzyT5UBF6cseZiUvWo9SPV4: '100000000000' - DdzFFzCqrht5n8w9UUgxpA6BbnzGPzWob6xcCmJtsNCQoyhR5RrGQndz13qATgrn3pQ5zmyu8UijyuGqbAzEB9RfGe1V2KSCcjCwVgyE: '100000000000' - DdzFFzCqrhsqmM3a6jUkdTdWx77WGbveL2vXjXr1edMKgDpPVgN7piVBcTTFF3vorbhoJjktnp88SYDG6U6HiHTxVHy3XYDKcvQdS8rp: '100000000000' - DdzFFzCqrht3WDVGybgYuzdJzrJMseMJ8Kau5qk5phLPGPom7b6aQ3YgCF65o8RjhtffTmLAk2pvrsnwdNfrusRkqeFyQ7ZWfHmY7e1A: '100000000000' - DdzFFzCqrhseYnuqkz3GJTeBbk81yDiEaENtjmbpmjKpufte5KmMBXhpoeHGNKkZ5rRg5Gu1fkT3frwLhWy9wem62YyWfZ7tfzTVzPpv: '100000000000' - DdzFFzCqrht6bNvuYSfPN4jahmSB1Uq6G3UuvawUC5BPcdxoT9ASH92NV3VkxzQFpCx2swnqY2tyJ7siAgZM54V2S6EEah1Qsd1n5qmu: '100000000000' - DdzFFzCqrhsqsX2poXx1YgSd1s2ezQtmzstWJ1dXCEKCAz11LwG1wUKP8RNBPSPcqQ4mPwW899KZNWeLHJP5HuEonTL7USphJoaAozAi: '100000000000' -# "verb", "blossom", "kiwi", "butter", "express", "other", "shoulder", "hold", "enter", "beyond", "special", "devote" - DdzFFzCqrhstimY6SK92qRmHf841S59MZXiypJh2oe9J5pFgnGkkfT5b48y1M4GgsCkZ6qYtTqJZA5vNd4wtGhmnwc7B1sNiRh3U7Rwn: '100000000000' - DdzFFzCqrhtBZLXzf2ev6kWwkjHjdQAYuiou3Ew3YZaFYMayfPLo2gMRs23R6dCHMDbdXNes85CmeLbXy66xo2s94rnAiGHDTje9CrH9: '100000000000' - DdzFFzCqrhsx1uqRpmhnXXd5AVioyDFiCxG6E5oSP5wDqESc49sSgkvxLBPZWb2pgXd982yoKjJMg41UqMCrSUjz4mXEhbHRMuUkAiTn: '100000000000' - DdzFFzCqrhsx814uitj7SrP3cFiunmghewArXvuUFGdekaVKUNf2ibKCDC7MWWqSvviazZLFS36JKTYH4h9KV4cfwPJ1B6x8YzWprxrT: '100000000000' - DdzFFzCqrhtD3U1gBCqLH1oTm3woUnRc9QuGucApBQfrR9Wb2Vom7eEZREL7r7qcPjyA7gmYEP6qMByLQQJR6HdZeU3BXhdCpjh8BZkS: '100000000000' - DdzFFzCqrht5vQCL9uJLZbrcUNHjPveH69TAj8HMx6gAcnbfAA18yd8GbmTLqj16j7encGSexZgy1my9Jh9k7sjkUJGfCpWkaGy3RESa: '100000000000' - DdzFFzCqrhsfdjfkngqhpt4jWALub9s31U1iGFzKYAiwZd2iLpSVdywEdhU7YWkN4bBhQYGu3knBU4fUT6GwhWg75CKLb5WF8dtLyJXQ: '100000000000' - DdzFFzCqrhsyYfBwQ2CK2aFg5sS1S1CnqkYWiUvTf4bL6aKZTb7DTgvsus5jLaW8sQPbbLCZUFJqjKh3Exg9vGMfgEjFewkjcgSqxpce: '100000000000' - DdzFFzCqrhsirqaDrY3GEHudjBKKbin1YFxhxsFPpfaQkJoh4gKJmuWZTk8yVPSENhA6jdVW9AdXrudBWXr4zeiZtmbPqTGzzPXHrJ5T: '100000000000' - DdzFFzCqrht3FErm1LHLUtvQPzrE61TPoWg3dvCaPRiTQ5dEGJkiZxR9eKqx9knhFkYBj7fmGYaHVkX89xvtkprepfiCB7hc79oWfqao: '100000000000' -# "exhibit", "install", "act", "craft", "grain", "soap", "coral", "jaguar", "echo", "midnight", "ride", "raise" - DdzFFzCqrhtDCtieR9HLGjPc3mvo6njY8kBwzQD6kQhf55zP8c6kcFz2B1S49KkxVymxtyLpE74zfcMCuSUTpesYPnWMrN2otyToYxRM: '100000000000' - DdzFFzCqrhsxFsmvzPJCLvV3UYHtR8xKZC2JLJugTQ8rMjDj5jAzoRdG3Z5dHzEk69N7z6r8bYLn3TV9Lbh99UiqbLAA9SvVeEapmJ2e: '100000000000' - DdzFFzCqrhsfEhPt2rUx5u37jUchKeNcE9EFKVUxNxCbRUHQFtwVcVJKrbmckmdhdtMpRHbvBpt6wW1ug1JzccS4Kn53FLH7iPhASp8q: '100000000000' - DdzFFzCqrhsr8kEgE5ceq2riNbJEm9jEeXU77CfFQ4bhkNjVEbea4RDVsMEbrpBA5xftjWK8wKugdxpPbMbW5vh8bjNPVvstP6L2MKBT: '100000000000' - DdzFFzCqrhspYmmcQ9WUEmmr5hiFpdRspPbWp4MD95E6knR1TnmW9KasGAXSmA5QkF7GkPPCXrUCVHUvP2ayVWCiT9QFqyrEUJPCNYQj: '100000000000' - DdzFFzCqrht8vv4HdEPw7kdn5rDd5CLUXfU2M8nCv2oaeSVvyi1fuzScUZy7sKg8igjmphPedJwrUraatb991z8QYX7BU2aM3ApivGBx: '100000000000' - DdzFFzCqrhshJv2hh6tQu35TGhj8CQpNHKCvEJYrdthkwUkX1CfmT3ASAFrHS1eEKxgxeeJKNciziGzNNLHcTAvZFyxMS9TmdstvHEEv: '100000000000' - DdzFFzCqrhsjp3PvdWZpcpsjjPJQFWosszkn4dVxVom9ib35B8BUgSj7UHSeUeVk9hDTSY5zVRJvGCBWwRDDS6XyPXNBKhrVUBF7rUUy: '100000000000' - DdzFFzCqrhszS9FxeU1gK1veSwiAazL5i6PJqxL79bzxFtik6oUvXhCaMRWk6Liznjef5FyvfqMJtd531ZkARDcAsE9wEUCywC3um2Ka: '100000000000' - DdzFFzCqrht2Hmtw1WRzqgnRHLHc21erPB53aJwab67UAaHay89fMiJqQ89TB4e149dCRNDsqacvYm14yLVRSPEbPAkF4D6qTziYEf34: '100000000000' -# "credit", "raw", "dinosaur", "target", "sustain", "permit", "regret", "strong", "abandon", "guard", "expand", "science" - DdzFFzCqrhskmq1rWnPEH8AUWqJuBXtRMRrz12QkRjWFS1eb6zkq3EsjmXn8WyU6AZHWWk6SLzre72qqsFmfUyASHHWjCophUNQtZqEp: '100000000000' - DdzFFzCqrhsvzDsvN9Sv5ASJo9ALQaHCpTr359qMhybZHJja74anQDiRSkFWrcN5CvsreedBeewJNNnAjBTYsKWy4dMT1zrX1uCGp5GW: '100000000000' - DdzFFzCqrhse4U322kYnW4K9V3p5DoE6Z6oYNLsyfztQn6kbNxvpyrkixCoGB4VFZzFuHAMCjE5ueCPSHPbz3JZPG4iUTZUu1SVyo9qM: '100000000000' - DdzFFzCqrht4uV7aS42kcmGAW5SGNenww7QJCa97Lez9wwPGqT7mADBUFrCUjX82ftf4hCVDENqumXfVKPpgErRMaynt3nweu4bbeMbv: '100000000000' - DdzFFzCqrht6o6uoFEtsNDPFRFhR4DmgSGmCYaDHAzcuV6PtyrZkPJN6AMbiBE6BkBGR4aioUYdwFVBgxuTsPYGjypZ1kAtXnjXQQEL7: '100000000000' - DdzFFzCqrhsjFqjm7WR5ZxnCgX4rUcCtK6AKTtfxZ2nq6mG6mh9JiTjVdQw5UZtaW37b8RUZcaH3nzES2jme2bLiiWxLQ4rYmW5tMJgf: '100000000000' - DdzFFzCqrhskK2z1eVbDqzMpxcMCa6VbCwoX21Gq4SJYkgAYJuUGbV3YYfy4qDfAoxKcnGbZw3dFxG1hmX7ciYP9NSoci7gWjtzxZLQB: '100000000000' - DdzFFzCqrhsp1VCERc9JF2Z3zxCmuFqCb6unSA37mRhfDtoMwityiMu94y9bAjdrfw82eLCG2Gma8LurTmt7VS8hPh8viSmuhrhGQYrk: '100000000000' - DdzFFzCqrhskq2aGJFn1ktTs7QxEkGR6fUyEX4tnGkMqm6b6oRaU4ecjS9pmALGpGQE3roBPdJcitu7ek89WCvDmPc8BrUwandzXrjb7: '100000000000' - DdzFFzCqrhtACHAaVWPhDNEpQELtgxC1hKJhvmPMJxDmgW4GSNBPfTJfQTUZusdAcR9raHgFa7Rc4GjpYdEfY2adAAXu5UtzrQDhgmnu: '100000000000' -# "timber", "grid", "cement", "resemble", "engage", "sugar", "february", "regular", "print", "timber", "produce", "pizza" - DdzFFzCqrhsuFkk97VQXq6LZD1SxEHvu9QAZCghaEnqugvvJEVismR5unpPpoAphVXSSarBSB7CQNd4PdtgkuyrQsW8hWTZXBgudX5FN: '100000000000' - DdzFFzCqrhsmn928sFHooNxxqNhfN6YVxyhVT774MrJpCwVRFHaf6wG5SCbv9NwRyRdFoeWEcD7fX8XiGmSnCgosU3HEmi6iGizEDjvo: '100000000000' - DdzFFzCqrht9Rx81VgehV84mqJiyWkNkhP2n9Jr6LEvGtXCPeDsX5zM86JJELau1XqRRvGZLTA8Ybsu4bim2kCrSykXiw4yHPeQ6zhJW: '100000000000' - DdzFFzCqrhszsGjmn6TztgRLBLogNcLSQDnhaQXqHhCv6J1CBVSuaB43jKVp5NcyBPYdw5ScNaDdHUMsLEtbGWnhym42zUEkMg66r8UY: '100000000000' - DdzFFzCqrhsp1fdrEw9nkeR72wNPiRw75ayiUtGyiCvn5T1XZnhM9cd3A42uX4gGsfXHtXMsJ7WUMgphAT9aX1Cct8bbYbBnsGqtbpgM: '100000000000' - DdzFFzCqrhswseYvnMZtSrdXQd1B1oL35mC9eUKGZvvESmBDSx7EUAH2xoAHtKv3T8bUz9GcD5aDqMg25tHpBx8mhDyTbN7vxRSPUGQw: '100000000000' - DdzFFzCqrhsmGC46MxTWh11T95Z3MhMG5m5S51z6Eatq5VGA7b7wEgH7VJ99uVgyFsUx3T212neZbS7WZQxoeFMNLMoPHC4PvJDyKuLZ: '100000000000' - DdzFFzCqrhsuv7nZw6AKfE621zCeggTMT1nAckJbp931rgnHxj4cUG4KfxLg4MfJsvNm9ZNcRAjeU4yH6HrF6MoQpMFJQKCRG7ymXtEJ: '100000000000' - DdzFFzCqrhswyrxiuXDhMYvTpmUwowm7nBjSBaq2sVogFF5KMYLfniumZGV5GSKmTnE3HDUEcg17SFsB7FXSsCTB31JEEtwpCS2EhoW3: '100000000000' - DdzFFzCqrhsscwofDdwRdoug4Yj43xVMTRqSc87Af8vWvyPL8ctmY3YBZbHNf7pkKv7rYezPYak8gFqhCof37ZVR1JM5QpQMqsM1j1Gb: '100000000000' -# "solution", "dice", "symbol", "ignore", "gauge", "exist", "also", "mention", "west", "pet", "rule", "first" - DdzFFzCqrht35BG5VRCEb7jrS8Zm5eMfFNo6HwtGr2cx6FGDdZYZMAnmaSyh9yvMdKzpSEJsWcBrQPTXqkLLh7Kr2sxr8sY1PJCtMNq4: '100000000000' - DdzFFzCqrhsqcNVurMcLit9T2ZCtGaThHqDtjiQk8XbUwTWwpzELWb7kL5m8pxaunQFxeB6QQGgeo48gcmqxw7SZY8Eg9XYD5cZ5uKVW: '100000000000' - DdzFFzCqrhtCQeGBhZT34bctGEd3DY86M5nYAFomdnaBLHMizEbNNcbqTpywmHazqob734QzFU9FLVkEPWjxBoxeAFioQvHHSJsGpkbY: '100000000000' - DdzFFzCqrht3EWhQFghHH1TPiKPTj286dcAq2QhNSjPe34ZqZo4HYcnUJDQFapAbBvXqnS5rDBJXwZqSLVf6t4FtfeBDxaXtNvzdT7SW: '100000000000' - DdzFFzCqrhsdq1PHyUk3DcdR7kf54QpXLGpJT5hYcDLRcxaWhvNVrCsqu6GKZt5RPjbV1Q31cBDCsVVMqg2xiwk93kSXwnQAn8w3LK3K: '100000000000' - DdzFFzCqrht4bPYAu3rPj9dNH584Ms7pBfPPEQ8cSLouZ5vMyt9k4Z8f2iyATEq1kqp3n8Rgbw3iFiLxVWS1HiZSuZ3ogUHzrZjf73Uq: '100000000000' - DdzFFzCqrhsm8HcYs4oSAFqbNqE4dmvtwjZXgaBHJJPNeW8M35PC6tMwnzcvP8k93YvUNChnYPzSNvsivXbWfYEDFFPLWpf3EUxyAQRd: '100000000000' - DdzFFzCqrhspqVPRJJ82goLXmwUWgav3VKes4QR3wpJgBfF75UV5Z57gSrvb8Sikk98X2FK7j9rFVts2Nz78pL8sFEQDyKtywyJz3CUM: '100000000000' - DdzFFzCqrhsoedW1ZV9sRi6fiDP3fijjdwBScYQL9LHmjttTW3qeACHKHmAUqzmTjggcxt9gcz4mMxFNYGJkhia22aaUTyJQqHfRbJBY: '100000000000' - DdzFFzCqrht1mTMgt8AYo1RiZYPHE1KZ6mN2DvEPper57SgFWHyqozbXoDPwfqcqg7j1PKhU2Fz6Ts1kKvtTy3adQBM2qzLpN5NnMLPg: '100000000000' -# "tuition", "cost", "tattoo", "vicious", "vast", "doctor", "prevent", "asthma", "barely", "orphan", "close", "bus" - DdzFFzCqrhsko6ir4rSwzXDvTMGD4hsijQxvQYw3Xb6pftKLnY41j4Eie5T4qHeKSBFdxNDEyCpbY9Dzjy7FFstDsAUdTe63JEAYccvD: '100000000000' - DdzFFzCqrhtBWQZs4fZiv3ZH2awqci59MkYCoS5VXK2hSZuGLHnHvPLn1nNPgRf1eyZW1F3uKHBZcphbh1G4PRzDsxpxLF55h2Y6Ds3Y: '100000000000' - DdzFFzCqrhshm6GhHtsgLgYj8Ww76zZe4DV5teHjAfrtezrZnzLHeneZDU9iFujyJ5N4QT9yzBX8RKDHKQn2DWp2mY5CN7t96Ym2su7S: '100000000000' - DdzFFzCqrhsyt33EA24bfsxWeQeRmxqkKCPsq4SXmDfsV8mwEcMeveXsaJpXUXBn3Fjrt1vDtvaECjWspxKo4ZcW9juBLhzEYx9HenLY: '100000000000' - DdzFFzCqrhsqF7uoaT7xgeMp9sAf6nTYecmdsQWxZdFNyDCmczaUn4wCQLMJfxALrCvwZmJpkVn6ig1mM6LFX6jcQRsMi9MyRSjM9tur: '100000000000' - DdzFFzCqrhsftvhD4KEfsa5PXhtEXf1K3AwtJnT4jXDMMgEEAD7gVsK6YKb5M8Phk6cZsuFnoBoDBHdBtGJngSumT6DS1iZD9xSbbFSK: '100000000000' - DdzFFzCqrhsePcXjw3jMJtXX59Q7LTTeMqXjRNas1Hcg6xEqAbL13HoWTv3fLJoXQ537GiQrM17WLPyVEBSfJiWJ4qRTdLZhUnoTwZmQ: '100000000000' - DdzFFzCqrht598xTNcbgJnUvKz8L298hdPYdx3QuJiC9MvszQQs3WNSi4KDk6cWjzZTuZNJcMRKmKNHpeBeGoSBhyjnnQWNJoxxhqxt9: '100000000000' - DdzFFzCqrhsuci83wQjAuydNm37t9qrmPf2a15kCbnnwTo6j33ZfU8YmK9ekc1n5A5cGcCgAkXZeXMz4R9hMnm5qWvP3GFBjv5hbXs3W: '100000000000' - DdzFFzCqrhsvTaSoS3EK7hc6EVjVYFA2jyKLsb7Hwy96Q2dvJ3nnhdS5Fayxqmp6nrg1rCVr7RAojgNnTYHX2CBZ46zFxCmgs4wwkLqC: '100000000000' -# "puppy", "crew", "glide", "feature", "bottom", "stumble", "prefer", "hidden", "extra", "north", "bleak", "shoulder" - DdzFFzCqrht4y1H2dmZjKLicsPaGKiV3nbgPDy9quTkibDWyDxkHJdyQoCjEsNYwTa6MVT1jCpdzmULarPWWDAHgRXLiRDmB3ELhWrbt: '100000000000' - DdzFFzCqrhtBMJt9hwoGbvwPvfJBQCUMkkmh612kbdAsuW2b3P1y5Tmd6Dm1FYYhbVitQsxVeV7ErfPKPYCP5eZ2GKmeqawNWsVjG7qb: '100000000000' - DdzFFzCqrht4FThHVnPfHeNa9nHgk6hiH5oRyvKB7oPCF4JTcrkAGWucFiPvsu6ghq9egZNpLvFvcGgjd8a4CgNw3fv5PAsjc2eF1Mu5: '100000000000' - DdzFFzCqrhsuK1xmMjeNjp8iNhNmDRLmVSRJddNMCnarR2Q1S6QhZH1CrKAoQA3uTRcu2uUVB18jFuscFVan9wfVLv9nMiHzvzb6EGiU: '100000000000' - DdzFFzCqrht7xu1ThbvWAGihXyoAZSfdRZbZaEvoVoTQ218tzjLCVVAWdmKEnvEXnDtSvS5gKJ26LR94aXjwpkZefGhZPipiu6xoQVBS: '100000000000' - DdzFFzCqrht6h8wFKpA4QZjACXa5ULSNnSMP5JjeviGB3JiFvqHiScsA1EMMERBUF2z8FsEv1y8iFCqCLx2o8iG7vNRf4Ego78Eid68v: '100000000000' - DdzFFzCqrhsz55qcBZWT48xn18Stbms8KdULWBh147jwTStQ8K4ECj3BYB8uSnegDZ2EzZQKkcpstuqPS68zZiAUNJPqFN24mEMoLtAp: '100000000000' - DdzFFzCqrhso1S2dBxNyzg3UhRzPqW9jAwN1Uy8GVZPKMXXLsSaFw5hq4MRSunJQ45gDbsFAQFwF3ZcwFfozPpkaeHYVwFZEL8bA8bhe: '100000000000' - DdzFFzCqrhtAev96FEZw8pZVRUFEPJThZ27Gtm9mDWVCt43RXo57FMuF9ZFYztyQ9QJM5KqGd1BQyzdos4gdaYbyzoLXtGxJGYVYoJAv: '100000000000' - DdzFFzCqrhsecM4JhNsDQBu9iS64LGGFMrGJrZRA3WDDa51bAVtY9VDRSacwP3nNURxtCbFXpFPGaMJnCRknTYyupWt28uUN3hbakW1T: '100000000000' -# "innocent", "unfold", "combine", "gas", "custom", "luggage", "cricket", "thing", "speak", "bubble", "pitch", "festival" - DdzFFzCqrhsf3RjyaGJ3ctLEdfZMr8SpHnbGTUzEXxw1V8uENw4N8BGEXnpJhVMnYoKyiYvvHQaNNhpoo4ZpVt5gy8oXiu2ur96RUSF7: '100000000000' - DdzFFzCqrhszhC9dk1PDjBNeqCwrkkZroQrmoXhn3i3hhsBdmx7fi2uSYFs28VGjurXxeF4Ve1PAYVa8MpSZ4iDy3t3pjKf1y3YrNBoV: '100000000000' - DdzFFzCqrht5ukJkfXpPgoQHWxXJP3PUjXLg126hSLWyz7DDubuFAsVoWGvpXhcET3B8RVk6pT3ffH4TWP166Z7RhDbawDKWUVmcCaDd: '100000000000' - DdzFFzCqrhsqyxfVji35rFdco7BBvRa2zPVHwX7GYP6ruYsnS5ebhrqoZFPAg75rXVEE15UJgEyMxKcbaknM5kvfmvYMMs4ubQgEm2sJ: '100000000000' - DdzFFzCqrht8N7Svk2Vc9wuCkWTk2WvET1iRxwkakR31UWDp6y6Bz8sJtjSRGjBWbjiaMGu67iS16nSpMMXZ25b4aUZ2BYfdzYeSgsek: '100000000000' - DdzFFzCqrhsqSZrmAQtW27JsZXzCZKekUBEeNhtorW2TcKg29MG1xQkuzif6mJGycsWBiyv3YKw7G5tpM3UvhhopuwPx5tuuFPNXNWDz: '100000000000' - DdzFFzCqrht8cxT4gBj5g4FZ1Nih5PRfe12mv4J8m1PpDd4LofMihn96oCfbhyh2gZmBrERwptJUD3wgVYhjMuK6z8QsxnpELRgtJbmj: '100000000000' - DdzFFzCqrhsrhPc7AgutQv9g8TUF6UQNXMDFqq1Ak3pQvK2cwrdg5924TW449hhwxFC8HcgSiJFDwsHtW7hc44XpKr8VNMaVkMho8Qpc: '100000000000' - DdzFFzCqrhtAHYHESKJ8qwYy5QKyGMHBsN5hKKzLDpPZo4YDDHqnbE2KGMy4m98JEvGWRbQZ4K6Lmpnu4jiwKgeiv8Xb3Y1k21GkQNyT: '100000000000' - DdzFFzCqrhshWphRtzfuCWYLJjgUxdH25WE8wtM5tSC5oQvSEHmBhXEYvp7oPtsn7NPsVF3vpkFgNVkNzkAzz7dSnVpGcK6DDR5vjYLB: '100000000000' -# "gospel", "garlic", "midnight", "enemy", "legal", "speed", "sleep", "discover", "enlist", "camp", "metal", "chunk" - DdzFFzCqrht9gED4v9iCwctdj1GmJByGLZSESFXCmW2LBS6uMJAzMmmgph25zphKiTaMy2Sd9qBSVYMDy4FiMQgNHjgWnQSZSWynTF2W: '100000000000' - DdzFFzCqrhswGabYQ8k3qENLQu9zDw5wzeCaj4TqKgoUSdCaBGCdFWTQmvwn9zexmk13AVzus5GvQRZew49PxRAc15KAXzvkU5w3XjK6: '100000000000' - DdzFFzCqrhtBKUS6RG2zETFgi8Aw5KxgXpgaiiCs7hMeKmouHSaQi9Jpyn9N1N3rZUJUi7jsDCkuBDdtsaz6ZT2Smz1WxbriWodvp4oU: '100000000000' - DdzFFzCqrhsrFpZrnR8p5nDAp5w8PVk6CHWDfZNF2G83erd6y64TK8bmHHfSXXiXZAmN2xYbruEPFSoh9XFziSWTdpUNn38UShYNwidG: '100000000000' - DdzFFzCqrhsoFMCcVAtQ2xgPLqV53CpgcAZjxTLkrqzrkGpRVwU21gqeu9zUi4PyxBdfEL8gHdPsSF7DhLuU7cseB4hVbjv4eX6EWZLe: '100000000000' - DdzFFzCqrht3hR8rWXM6RTp2yTAMk981YZdenZQGWpyiPwXRRCaCWqJzk13kfaP9LnLrPY34cSjEe6mnKQDvRwyWyannc5MFB9wSE4wB: '100000000000' - DdzFFzCqrhsqQ3S4M4GrJ6xzSD3HhA6XpEjUzRE5dKmfmaWvdamGzZYq9h7ZSDM32zr4Mja38zso8qFhJiM1oCTckjnDEsUDxS2MGX4e: '100000000000' - DdzFFzCqrhspJvB8ZbSgbQk4kkr84N28BVieeGDHQ3mSxreLQaMdWSk8M5Nt2qXdQ75Cpj2VBgXmupkoRjGbdr5vYHnhD5mduhdZA2a7: '100000000000' - DdzFFzCqrhsm34xyD3JT9kebupvpZMGNvp9gsFfChjGPMZ6Jfqj6jVRFV7wWbvVDhLtcPQrzvkNDgy9mNkfzZGntfGgLdHmdkHC2VjPD: '100000000000' - DdzFFzCqrhsuXrMEpjhkHrWAhi1AwYEAzWjS8nkFSBTsFxoUSyX4rVExeZYJBrsXH5WtBBXBbQfSL5JKdgD9PezWqU97AbhZnLWiu2wc: '100000000000' -# "lyrics", "lend", "volume", "cruise", "engage", "relief", "memory", "wine", "board", "scorpion", "educate", "differ" - DdzFFzCqrhssp3cHWwX3dbpmbT6q7NM9NMHrLBXXBPpGcM7YiNxCNCWttAWspZuhMMvvtJhSHj7Sz5GopKGqBVNB4s4wcEaFNXoG9Wt6: '100000000000' - DdzFFzCqrhsuZGbagphdmToSyBfShaBenxrGqb6AyG6afNZgVianCQPF2xTdrqHGMQFSrXgUSA4G6745reAdUAiHapeXW95yGsR7ZdSJ: '100000000000' - DdzFFzCqrhtCyezYjfeok8vQc1nhaEXt9nES1LcmVM5f37cLERJtzP4Dyw9sNrBH5q8FgqKajVFX8cD2jqNHn34rpPDPRcV3NdJHzXrG: '100000000000' - DdzFFzCqrht12QSQENL6dgBqh11eNWHziyAgoYfjs34P75iAV8iFyLGiuLPKehqw4f1r9M2sayNxxJ6QpCeY27EFQtkwJ1xvyLqBsx8P: '100000000000' - DdzFFzCqrhsjmVaxFq3LqaebaWp6Q6vzf1Pf3JLe1sX2iUkAAkzbF6EP6A22gWfN6dDjU4eMWB5YfyGNQ5xX16WMG1MqFja9hv2gyAqv: '100000000000' - DdzFFzCqrht3s6trpmevq8wY32vjMe9feXVJR73VvfrbzVd5qM8iTLyDVKYfynoTsv3VjgwMLGEu9ZPeUFLHHzQPec6kYUYt2b1Tb28R: '100000000000' - DdzFFzCqrht73tSGrXM34JSxYSnYfaaXeYXPc6d6iNeExruHXVmZW8hjExmNqAy2WatVFyenpQBZhFf8YePrexqmN87Cc8gUeuH5b5Ds: '100000000000' - DdzFFzCqrhskgLs1wihXSPNNF3oVJPc3GvFhsgiThv2nohxqBjVWhxPqoNSsRdDyQACLqwuG2rA32gLVM2W9K6Fbn1k1APs7PpRmJuUQ: '100000000000' - DdzFFzCqrhsmnVwuUHTkYbUGDTHkdGXKxP4UZbfkDUVC5P5RTTXYPs6tEGBeFTmkvZ1JT4Qvr91WZt3ACnxYXKh7zDQkDqa1XAehEU9u: '100000000000' - DdzFFzCqrht75PZoF7J1LGF67Z7DzdPUuxx5hDohvcv5abfBySf9Tf11BQ768m8QVoNRzhs7GsAmHZgjME93YLjwhN5SJ1eUoKQNH91m: '100000000000' -# "law", "same", "wrist", "cotton", "outer", "debris", "put", "other", "wife", "father", "collect", "chef" - DdzFFzCqrhsithh7MYQH3AVcAEtm4BaQP81SZzrdYEXguf2otCZb6PMrLo2fYDfCEvozwX6bugzXF7BB5U5kQ5gueeMQXHjjWGV4hCSQ: '100000000000' - DdzFFzCqrhsuUAmP5L5UH5yP3UmxfSdUNRAAr7dRz7T4EzK1x9y2PyLBexj88AM2xnvX8hFCtGtcTdHvkzrzjScwYR3odJgXomks5tZ6: '100000000000' - DdzFFzCqrhtBcj6beVnGkn3X886MS3X4HsCvztkxzibwD3zqm4EFDfUbbESeVT5Q97GryFhrgMBFrnTT2CTsPChabvXbnYfi5DAfUrip: '100000000000' - DdzFFzCqrht2C8t9xzvyso8WdFc99MBaxQTa2KiFanCNhjMwuU7XhfSSdiM13KpP9r4ZLJLvCmZAngh9FpxYjgTdmzCK3roAxJNMD5qU: '100000000000' - DdzFFzCqrhseH7ZxVicLqNLFRS6tHi63aYDBygFHWX7kiPi4WJjZLozmTnyPnn36QvzwLn8J2D3ZpffUUiuPh5MHVU77kAM1gJRZTUwt: '100000000000' - DdzFFzCqrhsvs8BUJkUjkezzNbPkW1UbvvtHQv4pRsJFn9swkWe7VNuYbCGZpL7APXp5wUNfQoypDjvGFtTQ1GttA6yhDEYBKUMCMGpp: '100000000000' - DdzFFzCqrht1Sdu3bWsFMW6CATc3RA8etJnh1cW9yqt6PtymxnSMkywKn7pemzgwAixjPfQtsPde2D7K5tB6EhZiWx2TakFWnRPa6Ry6: '100000000000' - DdzFFzCqrhszNktP2h3X4SM3Fsgj7fsi5mg2wRpEABjvQbUBz4kr7zUBJR4UNRj8BNR3xBcrqRHPVMwqB2ZM3ypiXbVmQrTXWDxRr5C4: '100000000000' - DdzFFzCqrht4nAThDbLoesmynPijtqvF2E1qPWXTqUvxdBxnZDSYNWQKR15zmpMyqPppYXgJszUa2w7v8Pe4iJNuFE9vhL8BaWvv2h8X: '100000000000' - DdzFFzCqrhszqtLSk9Vn2GhHkJpzhKWgigLSEf2a29EuuaoFLT9naACVqRMbo2sUPQetxj7XyuQtDcNzkYvJm3cEazBk4YPnRhfudJU2: '100000000000' -# "february", "expand", "decline", "sort", "pull", "silk", "average", "update", "spatial", "betray", "remind", "hero" - DdzFFzCqrhsobennBPaegJ9DS7vmpLHsHaMRSzjpkHcGET3xgk46WPsBZPLj8muG5uE3RYHg3ta12ApWDuqb7M1pVqRQr9PDjvjfW4zD: '100000000000' - DdzFFzCqrhsi2LJqKjzjx2dPYoVeNkZSY6xU3ExFSCMAqjRxhsjRqChk83SgnRR9U9PNkUM1fUQGsHPWwE88RDoCEpXBKswnanCFRF4s: '100000000000' - DdzFFzCqrhsvNLeV88Sca18ngaoXZMj5AKrAuiArrZPBCjvMpmM46TjpHwwgLe7jkYF83MyimCyyBrg2DZ3tNwTUyPh4arAanUXPxoyj: '100000000000' - DdzFFzCqrhtDDEXJUVpwk3hY7Qoov9qZ8opjoVfJUDXiN34Z6GtaKTsKDJugfrNshAW89f95jvKtrUeKeXMedehNcukU4uBoZmmdvm79: '100000000000' - DdzFFzCqrht8okn63zWJeU3YXfAMvWhVR5xX3waQdayPRznMzJSoFZ6VexxywugCGKJk8rmrF7jCGPmpg1J1yPBYM2aaXMpqyAnSMhGa: '100000000000' - DdzFFzCqrhsh8HnjvhZHNGLRDLQyNPoWVBsWJNGEwrUzjaxjP4mz4ky8qQfU5zHpjsHRENK6UwRApkhYaE5Yix5R4z4YKvi1NejavrYB: '100000000000' - DdzFFzCqrhsg2t5zWdHhi4YC3CdDw5WrH641V263P43ic6Bjvvm1W251SdaHXEphYdmYo4Sufd1aBo2YexVMWqSG7pShg2NBdXCw3qez: '100000000000' - DdzFFzCqrhsmW4eK2tgHhwv3VUUHY9G64nSEVLohbwKEMBvRTr1Xv3KaBHNVSFD3NYXWh3Pu35cdRJgww3siyaPfQsnt3jpCiQPgcxzX: '100000000000' - DdzFFzCqrhskCNPjm9y7NuURa34Lu3yNNBb352nucX1CgN2AMMEjZVzcGmPqd8J11c9ZN5fAY655bsPRb7ZRR2MijKTJBpZpbyf9VauJ: '100000000000' - DdzFFzCqrhsn4wGL1xBJgNBjDx5f1ZDnZ5hdzLwKufQ7pTt37VCu5DCo3QKKXWair2SkgVsp5nRmSLnd89hYCHv4foJdD9mKR85JDMF9: '100000000000' -# "security", "hill", "flight", "improve", "rotate", "language", "home", "carbon", "boil", "enhance", "pulse", "pill" - DdzFFzCqrhszHW4NZjXiLozNvPfAShzZFPGoVxkqQRDynKcX8AN3vTsaMvioYGGNaQ3CB1jjGWdVUyQQ3psxPJo2hqPysgGC95ZG7KCV: '100000000000' - DdzFFzCqrhtAxyD6YE2oQeWUxhTT87a3cYrSQuyySHqMq3PcLB4zc8iBaVKJFvibvtNhUHZVrxXoRRvEzEFXoykeLBJQkkvDKCYsPB7e: '100000000000' - DdzFFzCqrht3p5bxND6yegJRgsq54ozEsPPMXUoJFesuDSiGSEs9gNuAQ7Mdj68YKayNqNbsBPD2iXubR1Gm3AWmP8ysoBgE8e28ZZ6K: '100000000000' - DdzFFzCqrht8Tt3RDcCQMeYnmv26JV3SpXSoHeuSoZGQYLz2PFqv4nc2MsUM4G4MLcavwbZK4Nt3KeGhwHZ6bceasgU3h5CoF15cLog4: '100000000000' - DdzFFzCqrhsi3hDdrT2qt7FyREyj9opL3qyxyZGhx7yqcsQMJk1KRsyVbm9fuuckcxJojmKi5Bf3hUARymuYmKKirYVDJWpYuZRycuYa: '100000000000' - DdzFFzCqrht4p2xyooBkGxduQ9Twyzk9poePc8tSaTRaV8pJ474tZJHRUsoVXFJd3NuNWDnn6nWtEcaD5kXSmn1A6urVQSHy2voSrPsj: '100000000000' - DdzFFzCqrhsuMmJM2URCSETY8GMe4kYiDdrjGv8R8LKynQWcqNf5KTJ51Bff873w14RuWitzwz9wGQZh2jEh4dDvEow97tK1Ds6tZU7q: '100000000000' - DdzFFzCqrht2eyyngsrqLW1zRVWZo1Ap2XQTJW23EQQVNnngjQx7BvCTEQHDdpnuRSTXnCkmqx8T1rQrNPAa9kugM5cfuNmvSUoBp5CL: '100000000000' - DdzFFzCqrht8sJAdGeKLFEragNooh1JoJFANmxJwXGXeBgAkxLApJVcRJbWkU5fh4aEdqwtJVFibvHZG6nRivKK57Ws6suw6H29bocam: '100000000000' - DdzFFzCqrhshNbqqjHqmwbuBMA6LNG7LFS1CiWdcotPWokBLjHxzCW6d2jW5WvCfVsie2oyx7HrnGWQacyvV2D7u4FS5LfiUr1gdfNXy: '100000000000' -# "inside", "fancy", "sea", "blouse", "estate", "chest", "early", "office", "woman", "license", "obey", "helmet" - DdzFFzCqrht5u2qAJnrPfjTw6GQLRbAyX4ToJrXd5f5iTtTRT8Qvuf7Mwnu9qvE6sRKBWqy1jc2mXKAzRwkx2CXtiAUTZzdD124X1EsS: '100000000000' - DdzFFzCqrht1e3sfnY8C5qm8BtTZ7JgeJewWXj6AseZwa8pBXc8s59gkcPfjMXdTncnXA2QhHoYcBdrbB4Wevt7AZJPEEf2ahGqTKmBR: '100000000000' - DdzFFzCqrhsduBmKoiyV5JMptPcsx92vEjEP1XB83vFZ9PuJHwL4LbT1YUahftueutWrd7sCxm95WoyvXVKz4mR2kw5XjXHMKvtz1wNY: '100000000000' - DdzFFzCqrht1dQaTmtvXDRftmxo9eAE5AKP3gH9rtsqNdCKkLWYWkswhBXSJKp2HoWmwJc2o7bEYk3xLUVMHfxia1eJKnEX5Li2aZVWB: '100000000000' - DdzFFzCqrht4KnDKouTA9vbkDTEG4BHbYQK3wEYKu4HdZaSLsY9Ahk6NQaAMvRBZH1k41ndaCdJMWFeFEXhRjmALEqkJQM9mPZH3mypV: '100000000000' - DdzFFzCqrht7ReDSccYqFgHS3n7SsxSXupaV6EbDANTHxzNXDQfeKR52Yybqu5SEbJeCgzEzTmPuSUf5MdJ845KDAszaEuvkX4paDSH3: '100000000000' - DdzFFzCqrht3ZBz7b9mXXDpWPornBjmdBFD9kUuGDPcH5iwteStxgykjV4F6vE15ZPcPrDKLVsdMuFXUrL1sjM9ZqCEewjGxdDphXqYX: '100000000000' - DdzFFzCqrhskCKLa5Jxu6EgcqGAg4bQ65GqT8dfirk4bQwbid7sU9bZBRqXPDQNZdCr3xN7d2EwKmB5Z46MRZQc4yHi86YS21Ve1JfBU: '100000000000' - DdzFFzCqrhsscBVBBosRRqdzV9bZLLhw2HRWwJPnPccbnWesthDRmYzgFvSYpmxxGfFwhb5ZoMhLenmWnurrUxrrsRQKEZw67m319eFa: '100000000000' - DdzFFzCqrhsugi59n2nGhmcffPZUP3fn2R3YBkiuUjYEipfRYsmg9LdZCh7kzLbahK8yxq4R2U75LV5MZXEdCsR5ZWiXWnoSNnreEPm9: '100000000000' -# "course", "toe", "sentence", "defense", "because", "trip", "hockey", "abandon", "essay", "give", "deputy", "insect" - DdzFFzCqrhspMZg6QHJ9Qi1HWxwsKKfsYwhv1QAFSFYopirBFTgA8C24h1XsSrAJ5vY4vm4nRSF7YCLdjcGYcCnocAPtpLdA39P3zqKk: '100000000000' - DdzFFzCqrhsu5AuJ2K94J1DZVpE12wK1g3QhFXekPqNHXTtoaWoe9CJjBwEakoJNL75TUPkVe5EroKEx9CFXU1nZBsBRZRAgvKZ3wZBs: '100000000000' - DdzFFzCqrhsy1cnk1fixDdwwwvVapurcTdFMMT1cd2rshSZ7Lm24eE4gqsC1CkBotNpzumaqgSk4azFZ54XhitsLYjiiffdi2KDoDxFz: '100000000000' - DdzFFzCqrht8JenNkJeSvk5Rf896wJKS114RsmvYm6YBkvLzg2cDgxue1myB5ExAf2yFQkp1tV76wFQTCTcxvXwzGAB9UnGVcvcVbALm: '100000000000' - DdzFFzCqrhsfoPMc4WkrD2WnPE9PcVEDgCkKk65dCqALi3rAodXB3Vqq2TkXW26cNXeSXvzobPB31WArwxB6fFArViPAkvAzz31ge3hP: '100000000000' - DdzFFzCqrhsr3ndNijDuvAvZLUWKRfpqoaUuVf2g22gtqqmmDQk3eAL7aRZ3bik2yZGGruZYw7yzwbbawEhcKmozaDf2pMt8iFzCQTQD: '100000000000' - DdzFFzCqrhsoDAv22hhbouwKscBNRRnh2mBcUwHBcfLH17uxN4tfsQWJDpwpna96SsUYUk9p4qJoX63ApmPq9hwrJohFiQMHAYzFoPU1: '100000000000' - DdzFFzCqrhsjD8ifeVpNo6Me5hyTsRPgB5K7JZ5GJqPeemqCgBQTcg5wew1GkZfojYGUu8KtWSVXCo5fYn6VjC3jsCYNvamTdHfVLp13: '100000000000' - DdzFFzCqrht3ncXQfqXbjMzuGtQhfsCdHuX1FbFDXn8seoFJpuEbTZKBUujyYmxiSgXafqkrkKwHeZtLbzp15BwrngZS9qzbMTnMsfjA: '100000000000' - DdzFFzCqrhskFgBrTWsyX3tVzybbwDJHXmLRo4ZKA1Xh2xyaqitGvHWzhoXrjcXbsd9yY1Yz7oXvCj3QwC2QWjbAikFu1H72nN6rPKFL: '100000000000' -# "sister", "slogan", "hour", "build", "squeeze", "favorite", "inject", "smart", "slim", "near", "tired", "blind" - DdzFFzCqrht8aFzSNnc8NHzADWNufedzf2EcJCAzK1pHiWXPPfN85EKx5Ze1sohdDwQXvcbu4Eu38QNdYTwgQ1SPscU2AMYqH3xN5SsN: '100000000000' - DdzFFzCqrhtBd7BmyTGMUQVbCuicqF4MoB8itzgFQyeKQxr1uu7C3KVJ9G5xdQ1cp3URRDMQKtoKWyyU18ALzaqwLnnRaXskACYbYHw8: '100000000000' - DdzFFzCqrhseDfLmPMXexSYHT5BcuqrCaLaj7Utv89HSHEXM6JJhnj5AJCEJLPaihW28LaY5x7bGfDzk3bTzYEnXZAeWvHbCrigaHpp5: '100000000000' - DdzFFzCqrhsqDaw44Zg3FDLkXJW7RiTSSwH3KhfSZKREuQ3DkRc2ybmTDSckMm8632uWHishffQU2cg7VnMJW4o7w4LYpWxfnTe4HDfn: '100000000000' - DdzFFzCqrht6RqwmevaghJLgy3jzL6WVhokmij3LesHpCLzCjKFNoqFwDqYapAY9yaxwWdPMPxyKPqtnuYxXLxAMnproe1vbgGAEYm9W: '100000000000' - DdzFFzCqrht5n2AygCgM6WUYdahf2pDj1FM63w4zkPuuHQyY2xyeZsZVugmTiuRhoRFQZtp2zc4HTyEUM6WycDwzM7PqD3WBbHUMepi5: '100000000000' - DdzFFzCqrhsrbaaoa39zNKrgikG3oU7VirBumeBNHaSFC8KYVpcPBLcK7MXoyvdA5TedJ5VMV7f4PL6KpPXn3uv3wzA7FxsRaiYbwnLA: '100000000000' - DdzFFzCqrht7xzE2W2G4fzDaW4LhjDhLtmwkebh5txAMtmASqijb4DQmngnNFAmsFg4tc1F9KwJsLHw7daqivU298o9MCUS1Nz3H37FK: '100000000000' - DdzFFzCqrht87hXb2121ZpurC6DTq2rX5FXf8MDzr6n2sgjAukmTQSir2VJZPfZRiqyKke18SsZbNUzfLTmB2DQ976YhbhpBmXvrnyVZ: '100000000000' - DdzFFzCqrhsnKFXnVRkWWdwiuvJMLhbzoGvh438MrFW3hVGKuwD9zrZBEK6KN9EoM7L9Z6x5q9eWUftDMb17vbdynURoMpyqMr6sj73L: '100000000000' -# "upper", "mouse", "spray", "wrong", "food", "affair", "before", "object", "mention", "then", "ask", "solution" - DdzFFzCqrhtCYz1ZSzuXUDxumhL9jVTbCLNeRXMhe6fcbdxH4K4X64c6dtbPhqeouDpxpjtMdhP8L3GawDwNQdfLfHhaSxehTzxw9g9d: '100000000000' - DdzFFzCqrhsiMd7DsqPa8Dtjv4y9hVUAKoZARSQL1Kv7k4KBWorMKZtEkEGXtBthhq3Bis1k3oNmyyVngGKxZvEwuCCjmeqbVZfUn965: '100000000000' - DdzFFzCqrhsjB9y6Jpsnrni4HA81ZnsjFwTP6261yCfa3FDdMUA3F52joWZihrZNVtJAtNzn7rFUEUXkThnJcYxGGygupndZFd2d2ZR5: '100000000000' - DdzFFzCqrhsg84vsepmwRoYqu6mwiafT2LgQcdD9GTHSWCZ93pEyUGboG9rjEghPdkLZU2GwERD4PU9TR9ZaEzuKQ3ghRWJ5kj9iqK3h: '100000000000' - DdzFFzCqrhshUzE8cruj5JWmYakNzg63P9FWD2B489A1GwBRM1e8fsqk7fCVR6nb5mTYJrrjAdqMw8JcjafbhdYAGsG5CFf9P5Ust8hX: '100000000000' - DdzFFzCqrhseTr3SeFrLf2trTfAen97FhGp1w5ruErzF9Zhkt28CeUHbMnppvCubLAxpBRi46MJJDt6BHttogo22ccNzhCUCykJmKaq3: '100000000000' - DdzFFzCqrhsiHAUy6W5aJe6PJEk5S6ZnSjSDocM4kK6Yr9H4NgqPProyvZu33K2FnrTYWF3hqVwWcpioeGzCYHXaEVGn72xkaMmJKUA1: '100000000000' - DdzFFzCqrht2JtTkwghp9gtdyFjQQSS6CcsiZ5KjDqMr8WXuim5K12h3A4CExaSqqLG75qxsGKF6vUVJwVqwmuZJxmBDRd4rSccj3vZp: '100000000000' - DdzFFzCqrhsn81Bif4S4TvArGbSuFiUDjmMudN4jcWecbLV1ELMz1VRjPVDTjipRz1MxcgKcdYMLo4ZS9QgKz1YWFJqKqVzpj7or24ga: '100000000000' - DdzFFzCqrht7K7s4BhN8Q79CGFXi6f3bZ6z9dEMiTpNSc2zSC27hLUqf6ZK6KtNHbsxBfSW9iVcWK2R2Wn1NdEZW7GLk9xLVPYX5UXSc: '100000000000' -# "video", "fall", "run", "engine", "wheat", "baby", "december", "issue", "vehicle", "between", "reopen", "wink" - DdzFFzCqrht6Q65AVXCpoG3F1jzktnwc9xDkXeHw6pQt5wMMUik4Wj1NdRfRVmhyCubT88vCjYbVZDaZ1LuTocf1VkJeSoEvBhCV577h: '100000000000' - DdzFFzCqrhsygQoj4xwJv5LfeWaefUSm5a25iZL6iLotro4KCvW25uKpuspxY19oVZrQQrWLTwG9krC2zBu2eBAQ3Vj1QJi78kzRxhps: '100000000000' - DdzFFzCqrhsr2ceCax8aJ48gHNYughZx9YT3Vh3KdmM5T1zv25BoZ2M5NNHXrMfX4w2HBnF7yQLzdXCe86XnABoonahWMtuedDLGrgmQ: '100000000000' - DdzFFzCqrhstjXnHbw5ivuEjLxxM5orLACAtQMR6JW5YT1aeAAS4nbFUX3VnXcyhT2Tv26ofxCCRzx1HV65K8Ttz757C3bh766hQi6js: '100000000000' - DdzFFzCqrhskyhURJWsNsjWYNUxnYb2cZGZcAfLRB2QvHuuaQcC8KdtikSwJwow8fZMLgmAqvYv2JeV9XZTrR2oWyYUswuQn3AbypaR1: '100000000000' - DdzFFzCqrhsrxDiKst3RAgLE8L5b2RCHXfe2rshMDCgcY1qhXgp8cSfrmBt82ueuRbmpeZpqyS6uZoFF8Ga2qu3DcD63q3eYh5ZP6RXB: '100000000000' - DdzFFzCqrht7L4XNRPyf6UbCU7THasU41YZJ4mJuDrTobBBg8g9PCzBcJ2DavVDz3DVP8LmsaSWCG5BkkMomRunQJDRYK7YHJh8X3LKu: '100000000000' - DdzFFzCqrhsxQGZSRbGbTP5EgMEoCg5FxKDwAeUZek5QpVKMvEhgYodz2ucvzRzBjZh7vQiT3uDFR2uzp5YiQatKRdkeudRE7U26Pi1G: '100000000000' - DdzFFzCqrhsmk7Fzyfm89Yb35PA3osmkLie7BFdwqyGsko7wQSCJd8qyk2ZNDZT5EiJJ6scgNRok86jizRGQiKsLcbUdji8mNb9eCq6S: '100000000000' - DdzFFzCqrhseXFuFSSPZRK749ZLP7Bq1aD6hqz2wpQgUg5c8f315VBVuYL6fLuk14T6E5b2tATCPhNoy2b8gzyxUaC5fhBXFDxMuMTBh: '100000000000' -# "nuclear", "glide", "invest", "speed", "essence", "friend", "clog", "hamster", "service", "crisp", "weasel", "pigeon" - DdzFFzCqrhsreXyoKhFgZDdiu537ovwixw3D1zkqsG9wzUJPjhb4KvppugKZRCyeaEEVNKNom6DRzRXD5iLfrxENUFkH6hP8dcZddcaL: '100000000000' - DdzFFzCqrhsq7gpp8qXHzQUuWQYZr4ETQ2L1T8SPUiwSftsPgoFdS8TRLWBpgYzU2HaB2rcRVmta4uWd3XT4bmSKSYBCbRgEb5sAvSg2: '100000000000' - DdzFFzCqrht67GhRFmxLNzFRRr1vyanuTbmeh66ioHxhbiZWEmJDs9V2WJsdyfvRf6NhETLzcF43bUnd98cgfeUyv44PxCdqnXJnTsGj: '100000000000' - DdzFFzCqrhstx7L6UY5wZtuDVZQkndMWAmokSKcgZMudqDX3MMnGyZhy1J6RnWrYdGPU9YeJhUc33gCRuu5EE5dgERCiu2ebUXdRipGW: '100000000000' - DdzFFzCqrhszuv7rHKgyuUAYhnGrtH5y7XdWhV64fgfeJSFny7Ytj5dPKLbF75TDGtvd5NXbEdPDrAtbadY4oHw5CB3B63Fbt8CvXhNg: '100000000000' - DdzFFzCqrhso9cmx6G4y3cxKjYHKktTNHVQ1AW91RntyVAA1Co64puNeoAKN5udYyDrRc5Sf7oD8aSpsapnwFD7K5ptRGnALNGaTBnvF: '100000000000' - DdzFFzCqrhsxTWZMDFRbUNJw752A8qFMLZXSDVbtxm4mwDJFZo8dMeCYAN64BMYmq5ZvwiKSNFAEM3M8gjYyvtjRwxqh28GJqiZ7SuXr: '100000000000' - DdzFFzCqrhsgcV7HvRC2ccD5fDwr5BodgSouKZzfso5kqyGPU38f8Pe2wm8JnQCGkD3JpUPCQTtG7ExJZKmT5DCuUkv8Rvutm4KPVTp5: '100000000000' - DdzFFzCqrhsgTD2ozBXhkfdS9KL2xJPGhi4wSnBFPWYFpVoo8jCBZMkbxbhPN6EnxFvhrJzfwBXqnqR5891wwfSy3qkKHsJJX4B78TEZ: '100000000000' - DdzFFzCqrhspWNxXjAWCBbiQkeBiBMiGJpz1vUthRcoFhmKrBidcBR9gqQBzU13iS2DwWFsCtYJkTh5XGyEVr8SRxZ5B779njrX8o8Aj: '100000000000' -# "stumble", "either", "orbit", "bundle", "pepper", "total", "radio", "spatial", "umbrella", "explain", "exercise", "science" - DdzFFzCqrhstLwTVCQhuyL4h8b4FP7KApykt4QAjwD4wpoXhUqJ5Uu9DGG3cT2bgjih3c8QjvFnmtSUg53vZtZvmxVcWa9GPxWeTUmBu: '100000000000' - DdzFFzCqrhtCeDtgG6wDBEACTRJRWXrWidgpnJJj1JeY2aZd3ssevtZXuwVSbRLSRhUCHAoE22CH9TSRxgevqyY37X7FnMQJvZrzaaFM: '100000000000' - DdzFFzCqrht8BGBTenpg6FNtYb4iJd82b1d8eNpoCFe2gNewFRZy37BmhLr8fMz8AXVveuavmbpja3cC9rZidJ2rzGG9Fu1GGKg2ivVM: '100000000000' - DdzFFzCqrhshWdbKro6b24uC7vYuVPLZ6btQbE84xoW4ZafZbyuAsZLnadHShGhuaJ1geeiH318gAns3So9hbz83Fn3HcD1877Hg3qPP: '100000000000' - DdzFFzCqrhsdqAnHuL33afabJ99YKS9xFkMGcHLBBFkmTWM8YJswTApxUFZCU1f81xs9RMU1hJk1b1X9UqbzF7de7UnnMoJCGQaQNFit: '100000000000' - DdzFFzCqrht3ouyQW1UL7uqaL1mc5GsCQdivs8m8PDmghKphNL2mPjB6TYRUVZkmiZC34ttS8aq35aAUkeVxikpEBNpBjUxPCvWdYEaG: '100000000000' - DdzFFzCqrhswpxXZm1yVcTk4xiVSkjw2HeBbGtPqK8PE9ETbXKBkBo6uobqRA6fENt8XiZ5TPoyWnkHsTvpCQ3C2jvg8FnAsgo3pHzcf: '100000000000' - DdzFFzCqrhtAABG8CSJHtdqBbRkyeRfpS96g3zLc5fhLQcDAcbRYFt3G8Y6uhrwoHMUTyWooUa6VeEM4bCLpD6y3nvWjc2tSDzAZAuo3: '100000000000' - DdzFFzCqrhssTWme7rjdx54rTfz9KEeef59ghJHksxcPL1c9dsDeNuqhF1cXBSYJVNQR82wDFx6jtUhYDKprC7Ru7vJeZhPzroJvJ6Ug: '100000000000' - DdzFFzCqrhsuNKHnBS7rFUf7sNDBzDFQhxSX7zudomuQVoSUXb8u4ooTVKSEtd3Ue8qTba3EJLUcAMVJMqLp49pEfwkHYms959gcMx92: '100000000000' -# "slam", "entry", "nation", "frog", "advice", "process", "cycle", "lawsuit", "scrub", "strategy", "shrimp", "push" - DdzFFzCqrht6SMHNTsHsBJXbsA9AU19TTJCy8VJoBVE9FcK25zhq7opUvPs1roHtiNhdL99DasqT8yBMd3eqaFn33LNYJYQDYu4wq666: '100000000000' - DdzFFzCqrht9MJ1VfVugY1tYdaZuSn1stggZTAZVruQ2P5NW5osCWLGbkX6XVr2bmmJrNFqN8eMtm6onopdANk5K8C8y7AG3RStfpAie: '100000000000' - DdzFFzCqrht8hncXkj6aJ5k9aQnL79b3SuTbmSVXLjC5W8Zk5RznV2WQpvKy4BZKrdSQd7DAWGSSWY2UHkLMTv231ZFzLVL2b6YZJuaE: '100000000000' - DdzFFzCqrhsg1g7uBuUWDDLxVrevbFkw8C7neo9jsU6dh1d1oRZ8Xw6dFmL7zzEG8PnndWAZbbEqMr4ipaweW71skFJpskmqPc67nQtZ: '100000000000' - DdzFFzCqrhssqqTmU3zzS1KxQbRPb5URNf8XUbsdXDujQjhNXb2K8LbeeJPD5f9vhCiRe2r4BYNriFRjbsavFTVSe5i86zH2Rs6twWzr: '100000000000' - DdzFFzCqrhsz2Yz2xcn4mG3ZTY9XPGjfSPDRKGycps24ZJcjd4fkf4CbGZstbLEpiNbpuwNsT6vBK8mVXvrk2wC4AnM6m3NKzQx4mGiq: '100000000000' - DdzFFzCqrhtARWeGotFeY1BrUA9g9pDzLfJmN7VEB6Bd4i8r8KQC5ijgihYVPiqsw5ZMj98C9wbuEchxf6pBYiD6WDgZCo6MSksV6uK7: '100000000000' - DdzFFzCqrhshhonGcBv2dbEKsCPWnv2dcpFY1GfZwnGEY3c5aFCu231ZWd4PSy1da5WrWhgGFzLSc4Sa88WLmx7AwGKyzmbMMhVhbzwt: '100000000000' - DdzFFzCqrhstZUb3muPTBBMMtvdCtaGaffpBphWfPSRpfiuWtU57QxaSwEcsXwUygN5PCNnsum4EEat7zGH83fSCiyz1JzZZVg2gunHm: '100000000000' - DdzFFzCqrhshEDcRtbXHoD7yddStcC4R5upihoWXMY1Lt3cYRfk8zn7WHrrEgms4GwR3B1hP8Hdt1BmRfWtq7NG1VN8X5m5nzp2hYwMz: '100000000000' -# "ecology", "female", "item", "crime", "remember", "denial", "swallow", "forward", "call", "vehicle", "glue", "hello" - DdzFFzCqrhsoxAj134nTLUQQML8Yjdyye6HAGpsQjtM4V1KpCu7eNH89XMqGJkTTQPXMdjTkeF47BXedjf4MfQhDDdyZ6KvRCREXBfcs: '100000000000' - DdzFFzCqrhtA8gCxis2ok7VmUAcUf6Lg1itbvvau9NTzicFot1gN6SGVmGLksB8EZDtgZfv2aX8XUrpK8u5AyK65eJrH3MaKui1XB4NV: '100000000000' - DdzFFzCqrht3AbCSwur2UZDNzXfcRYJvGjFwVWpmW7WWhrAUUDoJrt9R1WjzdmPq1GyGALMnnFQa8kxQCSQPjtA5uJ7GaCTT9W9BPwir: '100000000000' - DdzFFzCqrhsuopMfCzNikpQKnDgbe6e15Eb6CKGdm5nFmNwT3GarAjRVcE1KER4grMDq3A1i6HDF4kTJxJRpQdogzMj5TRKuukVDshWr: '100000000000' - DdzFFzCqrhsjFQTt9miGQCMFjNcqb82egFSVTXL1x3EvmMENZ9PH6y4gK3uvgM34nZsgvHDa9ZAbVoYya8C6HEVoSMJiyGeocpuT1Mcb: '100000000000' - DdzFFzCqrhtAKBD25eMMUS2Vow4eghk58nYwfif5JP5pdQkAD7yuzmzMJaN3gJSYWNJqFJikoMepdwWFtauAUayHuYhEemHKCY7fDcSH: '100000000000' - DdzFFzCqrhsqxHdeT6WQxjLgwKvMpiUsTePQopSdodAVjbotG8Y21FKaxTBjd1uzKTMhRzHuVG3yHJbbxFoZpT9eK3QQ6hGFzeZbimWY: '100000000000' - DdzFFzCqrhso71omgseidDjnQibyiZH2maGbPzKfoRuH7B4mXuCqT5FENHiyDL8qvuuviScbtjcfie9ejM8kywsBwLs2ShZkST47HWyA: '100000000000' - DdzFFzCqrhse2wXHgsdG2Qd3aJgUAXza6j2DBtwTfmjBnSBh1VxK3u6S1E6qQDZrX7bfLuNissUmeAFQSgVMWKCupXb2KKPDFUPEcZqW: '100000000000' - DdzFFzCqrhstGqU3NQnutrPccuL4nwYfShPmayGJuEa7sGokS6UCovzbA3sm4EAxBPaBF3iPSqvF1FQH5rrVbSQ6siRStX4CgbZSXPCF: '100000000000' -# "spin", "dinosaur", "honey", "abuse", "exit", "coffee", "ethics", "denial", "proof", "hour", "number", "annual" - DdzFFzCqrht88Zc1gLdusPtk6WNABbaaBiTz8681cJ8VXwy4dLdaHSJcBY6px7NSjJ3fevJLSaE1q3eZGNhjR4o7rc8RH4oEpFL7B4Qs: '100000000000' - DdzFFzCqrht9rVFmiPYEVZTAsgF8cuqsD5vsSTTT7NZyfYQdMdPWnXXyxpZepdoQf4AxmjhtGRAu1r9Uf7SprNJTwUPtLGRXrsegr2py: '100000000000' - DdzFFzCqrhtBY2YrGRC2DFHhLRegn1Gi7aDuJbR3wVS97YpaV3Rc1SxvKRGNjwVQkzBXo6AQv5UpskGFtmFABRN2LjfDUTpmYHcAU6ck: '100000000000' - DdzFFzCqrhsuKN4keaM7FaGh3GvD62BzV7f3NRJ3NjkVpPMxcuEDZeDRsPxiKm12vKY8hcoAAgKBvF79M6Gne7AJG1sJ4kP47VqPQyFp: '100000000000' - DdzFFzCqrhsfZXJQ6wuXPxobyaykc9WKeDWM4mVzkzmaCj2ZWgUnMHQDjEsCGM49fskEuSxsSQ1Ft1gzqpxFK2PacHSkzQvCCbWVZGZV: '100000000000' - DdzFFzCqrht3Yho2v1aAZvNFA7n3C9dRpvPj6jd7MWWXNvg4K1FkhPXLRkeyp9EBQbfHucBKda2tWy87DUrMZHj2MMrjbHc7bqYZKSwA: '100000000000' - DdzFFzCqrhsfek215p9sn1KaZ5eeYnE8M1JN4ijCXs4Y8QFt7mVZf5bZxpMW2ne8ESCU8twRwmyfJGD4YvUo7pmMBEDTkxWZt9Hsm5Cv: '100000000000' - DdzFFzCqrhtApZdLq7QavRUv3yhstvAUBBnqKogfCsSSQv2Xmuffp43shQt4EXcrVEXbBxLnqwUeA7qXwBGvQLu2t8jYZ1syq9qzg3ub: '100000000000' - DdzFFzCqrht8cSRbfuJ2CjKdzGjWn7337xoiLW7b15r84A7dirUxsqpLNesyJwtBjQduNQxF8hK8VnFaup3AVogtedukS6NhNHd3cn8e: '100000000000' - DdzFFzCqrhsijhdyfNuk6YWkW6P9xtT6qKnM7yNj587d4rPhmLwtn2geu1w2CN9GaScuqwmVyc9WYSYEnQG9mpVC4jwzL4Ttkf1DbYdp: '100000000000' -# "power", "age", "slush", "tube", "island", "void", "old", "option", "lobster", "vendor", "typical", "cushion" - DdzFFzCqrhtCtC8CA3ubpopY5Jn1KW4Wj8EmQfxo7mbiTi6Tb93zCE1L8V1AGrF6U7mY3MqPGAshauE4yPtsydAVhrrSSnVQvoRqeDnC: '100000000000' - DdzFFzCqrhsruE4E1Jno9WVQ77i598VZ2SemdfbiiDX2qHKmszQdegMHfqVFoKXEpaXXk9CN68wVa2NYhVZkpMMZihkiCzBzNcjfV4Ai: '100000000000' - DdzFFzCqrhss7WeV2Ax9RSwjF2UbiL3YrZrxk4gnLqvBpj28xJDyotVUKiGNph4CgGXF5KeoJgrfmkWpArt6bEEZZCBgQnyo8tLuAQYj: '100000000000' - DdzFFzCqrht8k86spcvSjiPBntvLNka99aHhZeckFobRGbpciXkJzLeBcnorPVUMxiJ2Lun96essWGkD8C4XkgoJiFdBZKkiAAqdsXHo: '100000000000' - DdzFFzCqrhsvDcQuSCVE8icer8zxdtQrTR2kgGV2NwVrT4iSyhXBDgmEXofpgByrQTxx73BttjsM77TzVxpfZTUUhsGjjkHd4oxGEQ2j: '100000000000' - DdzFFzCqrhspLBxBUc7N7RCVs1n1mVHhUGjd4sUkR7czgxWVmfxizFkCN4H32MTMSLSah9AGEDzrFvV1hz5a9NiVDc7iVEAJDdaA4RHn: '100000000000' - DdzFFzCqrhtD2aZNiRmwwWMD5KtSfV4K72djBmVr9ckD1RAQw7PPm9HYDRb5yZiZkhb3zrAVfXyHfG4SzEaN7MkY12Z19FEBe4rNHpzn: '100000000000' - DdzFFzCqrhstFTfQ4whUJSMFHSHGnQ9XywzKXNoXo9awSpWZKu4ujUn6SCyKFAz1wdJcX77bXABsgEespXqKo7dbdGof6Tu2THeUimAE: '100000000000' - DdzFFzCqrhtBUTPtDvD8Akuhp5T7J9NmpYeDhJeDWE6myJUwB1vLg1ftyHoddCo5EgpmAcBEwvC9Jkb3JEL3M9eJA1zmjM1Rc7jqwCGV: '100000000000' - DdzFFzCqrhsfcGeyPDw5tn1cvkTrcAWZEB8FnzLjxPHnseLzqp6iKjYt8ZfYjeD5AyGRKuLiF3VuGpJi9MMk2K9jMZPHxuEQNKAKqiTS: '100000000000' -# "drill", "orphan", "hero", "throw", "stand", "ecology", "hat", "gauge", "antique", "hotel", "pistol", "rice" - DdzFFzCqrhsgZ2XfLjWdqs1DBP6iD5EftmwwnqYenXjtLWm3NiUTnCX5tivVSJfPabEB2v5UWRJ7w6xYpvPZFu3anCa8kDBwZhSEmQm7: '100000000000' - DdzFFzCqrht9HMM8Ju3sKNFJ9SDFaE8fY4P2mvW2oNCkYDmxuAFJfpZ7ZQawfH13B6F35q96e323KcyRTXDMYNWeSVKyQQB4txFW9529: '100000000000' - DdzFFzCqrhsyRyBo52ruuxBUeogukmBWFHxvpc9EJmtidXhYZZcA2xHb3QiztLPB5U6RhbjdJNHuWdUEQcXRRdtasgS6SrddyM73aodu: '100000000000' - DdzFFzCqrhsyQMi4f2CzPMdvMWj3xfrPyG1vQsKDrZ2RxuXffji4Mw9ntg9t7T6uoNqzENzKK3t36Rv8jGbdjZDnfHdNsBZa25SgR6Dy: '100000000000' - DdzFFzCqrhshsbfGrn7h7AhzHRubspv8faJJNFmGw1GZaSdUsMYN1aQM69FjReT6fnaaMDhHbRa45j22Cji5u9YZrxcsrn3hWB3K7fuX: '100000000000' - DdzFFzCqrht67ZkDD3fv91tGUPtUNQ5ALjCDJudgqGXTX7TRMTvz2SqT156vPrPZJbQ3SRetVBk3R9KWs6QGPhvRZjpuQ64e8warHoix: '100000000000' - DdzFFzCqrht9oQ6Sefw3BsYG4fWnftowNz1JriCn7zV1zx8dqqd3sTShno9EfhZAPSX1W8tBRMySEtmonKtTm3K2Pk883p5wTQJxv3Ky: '100000000000' - DdzFFzCqrhsjNT5kanxnF22UG6fRojRB5sGXjuMEyy9GDz13aXpbT7wdUgx8ChdHThVwwBLvmXweQQVyR79KTvmY3fPEhXmQ9JdNgSRK: '100000000000' - DdzFFzCqrhsg2meWxvZAoqXtDn8i67BLhFfz6MjZJd1CXfyBV1XwY8JopEr7LBEruqqFqBD9UogzEvN3Nz5RqAdL8LUoiMjgSAMLokZi: '100000000000' - DdzFFzCqrht34u8WkcZWsY1sZ5oqGLEPani1AKeHZDfrXUAPf6ZpTWfMjCWAgWq3zdECWZ6JQxbwaUdrLPKwSMDC9dmPF3j6EEsAZhr2: '100000000000' -# "present", "trophy", "digital", "salad", "kick", "apart", "airport", "stuff", "prosper", "peace", "drive", "adjust" - DdzFFzCqrhsxtMtsJU3DkzrCUJ5rUnqRj5zET7DSTyfFptYRps4v6EEpvkqvYje4WrWdZmuR6BAKYvZSDu5r15xixoBQinVGMCRyRSP1: '100000000000' - DdzFFzCqrht2NDSR5FjTGUguVM8bsHxbAAjWL9hK8cPv6x76MqwvFzFduFxsPvhk1Wihss5nPWg7jX3Jtw7a9pQar5DQJdEPLbubW7AK: '100000000000' - DdzFFzCqrhsn5YM1sUjML62hvuAqtFbmZfXyrWBHTx3ibYQQL2sx7XL3LPVfi4Htb9i5QTLBDdVRf2p4yUYVuLu4Sb1Vq5ekVNDCdRUV: '100000000000' - DdzFFzCqrhstjRCW8CMTRsQtm2js3eNY8g6Himv9wRq2nGqHGcxrjjnJWg8sfv6n9XmgH2HUtdn74ECXAo46Pquba6ARDL3FWnhpNtZq: '100000000000' - DdzFFzCqrhshgLViiP5Ri669Pi7DWr4dJaWP3JWR63uKxUJPBkhSczY5hsmDBF5psF6Qztbm5ZEvuqwtzu6xD19KuHW2v47ao8cz7HQ8: '100000000000' - DdzFFzCqrhswp48YcybJsKQjSoHU1d633kAvp1e2b8mTe1zWNfqkTR13uivbBEKwoUW9wZXzvJsu2AQRN7QCnxf86PboJYSfKCTziEFm: '100000000000' - DdzFFzCqrhszfK9mSNKmkz59BQqrrw7QaCjh3RePKQLMfptzaWMhH93PvDZpUVrL6k3Rpju13HpPvtTQ6PGj38aMFTQW6dgZ9FnnV2KA: '100000000000' - DdzFFzCqrht41ppXhcQH9LiWms8TacShaaa9aKF9PDGNcLmYcRaZWTKQWLtaEH93A56YbMBTYExiRs1dcNWQJ4gBwvV9Rnz3HtZu7zDr: '100000000000' - DdzFFzCqrhsh9Q4etAbbGNGsDQ8PWDDywgaZcULNeuYDeozumxWS2iT8WTCWHeoNedBZrgevcVxjjRiyqndxHpQEZJ33tsbiLciPND1W: '100000000000' - DdzFFzCqrhspRdmyRj9vHsSiERi3mxuJt3fNbdLuXwofUR69cqSk86EZqrkVyQgsxXXsouwgvHSLrbeS4wivsTnPF2ZcrinspBjVqLQC: '100000000000' -# "fluid", "brave", "disease", "rough", "surge", "city", "ignore", "speed", "borrow", "print", "pause", "smile" - DdzFFzCqrhsricu1G19ztma1NfZre4cMtj8teA7qxVXyJZRtJCqQqEAUgsCdAj6NoHFCMJtSquenLg8HrT1q4XrVngKobLeN8TNizEqG: '100000000000' - DdzFFzCqrhstwetBwgiVZsTGFeJWHn1PG5vPGZEU52a2ECkGd8x7yxyBKwMjbnjRSd7M2KsDYj4JDPDzeZFXqRGzpjBc7APj5nKCsFW1: '100000000000' - DdzFFzCqrhsrweSHCw4eG5M9HLeabUjomKhVpMyPQu751b27Q6G2sYwkb8YjeCtE6mTPHxdemBpyi1Rg9XwQvfje1YbHDvZPLE5Pj13W: '100000000000' - DdzFFzCqrht774BLMpeBxqUmUPVw8hc5FvwTabDYq5zGYrMCzQLVnsevFFg4FrArwmMEQ6jTuTnPjYzSS2R4KcdWqhCugH2MJ7HtwAx8: '100000000000' - DdzFFzCqrht335VM94gwfV5V6wbPyV3DziLGmDBcDdChsvEqtn7pXaSR5q5DEEGpsK3fgizpoHNFNUFLFKimteAfiZzR8hH4rPveHeHT: '100000000000' - DdzFFzCqrhsu6yUWUgdrrX33z8PsAizZhSS83CMxT7BRJNk7GrCQhUvJGyxojQsUftZxwtac6uujAaGerMdxacQZcVto95YUvduw4ZxE: '100000000000' - DdzFFzCqrht1cYp4zCqsUxFTMGiiuseKicKMYYQjcMyo3Lnn7rWFqEReyuWhR36mC7dErgUP9umgmj2hS3Dd1wXcFGSeUZ8ssYvDxX9x: '100000000000' - DdzFFzCqrht6Sxt4d1p4joo64HqTmNhXRrpbi2A1nVMyZDwAGhY59XXNKghG33wuDVxbGYJYRXD3FzJUi45qm4aALNXSDLRfDe2go6nA: '100000000000' - DdzFFzCqrht8gsu8hjZyo6ig1znmnxihU8fwK4LRbpMfSf4HkwuXdEwGgkVgbsWk7jiyNRcYmfvqCUw6cEcap58Vai9wsgyZDS8ttg3A: '100000000000' - DdzFFzCqrhsfJpvLcHBZfGzUL8fyGNB3rSMDHWVsKbbSdRhLt4NbqoY3nufQBMRzpCtNTZcGFiWHpoRqKY7fLXGJ9D3aS5RmdW1Aw6ee: '100000000000' -# "begin", "decorate", "smart", "mesh", "cannon", "gas", "toe", "model", "vacant", "survey", "victory", "cat" - DdzFFzCqrhsfQ1Ksa5Pqifh2mLqZhwxxDf6pknCgSwSLdGVWMeBcLwNPBzpT3yS24vF3EbiQwnxpqKmjcyfmmYJtap72XR8YsRaZL9TQ: '100000000000' - DdzFFzCqrhswAFhUif2wtB5ZieXzKVV77xkkejzM27g9QWnX942Lwqgp2hY9uUdcffZhS2TU5gYnAmYQAF4wC1ccz3hv4dSHktfMDuSj: '100000000000' - DdzFFzCqrht4gzeTABzgcMEHf4Kfw74FcUGLJhrbbaSAaw5zC5euhuTxtFPx5Y6XLDAjFPWtaZmKjsvCz6C6UyLQTTEWUu3W9xTmGw8X: '100000000000' - DdzFFzCqrht6W2ZaCijsjKAf1cLLkVKWiusmEjirYLAJ74X4a6eGSBa9y5tGDxYHYNs2t6BZ47LZ8k4LzjT1qHh3g6WVREp4Uz7v61bt: '100000000000' - DdzFFzCqrhssH8NAvZAGxj4gME9Cjp86DpNoH3KtpLDYdMMJTJMvcS1YgQFXURBbzKf7yQaGb46JKJWRfAgwSqExHwehWAG1cj1WbYHx: '100000000000' - DdzFFzCqrhtA9CPR9ybbU4Ya3yDhxwhonvWU96AqypXzq47LC4ke1omoo8uoqGSd6XL43do7njy8empxtvazToGUSSQsUjrSCBpKTj1v: '100000000000' - DdzFFzCqrhsneb6wahYrepbDMGEop9Xrp6LUiiD2o2GHfCSVtCNxYxJJXqw5iW3Hta6poasNr2CJX8mUinRurbdRnF2PCBDAAqiTiCoR: '100000000000' - DdzFFzCqrhsq7QfyHaRfHte89XAtYGog36uvbUbSP7AwZCXcqdg5EoUYtHEUyBSwemH4VT3v22xui9pJnYvE1dFVEqXyjMoQb19Cb7Y4: '100000000000' - DdzFFzCqrhsh4puDVySVKZsLDgUpqtf14yBsQbuEbr6VZ4j8xET7PzKYHtKQMnp6jzSGM3gshAivQhotU9KTSVPBhYHGhbfHZrw2teCa: '100000000000' - DdzFFzCqrht3D8ajpqRwofh4jEABV7rQQdRKQDKboZ88sZqfmYHVYCiq67jR4BkpZ7GkGnwkTdVikgHzU3hNAzfJDPd5LdWNfLPJLyXV: '100000000000' -# "liberty", "sunny", "impact", "source", "foil", "arrive", "inch", "find", "obtain", "wet", "uncover", "huge" - DdzFFzCqrhsofubXZFZoD9jXoQTQAf15ZHXtKSYkg5ASPCBtJ6fowQV8Zn145PwnqjsHb96y1USEEYvfzqHwX9jpsRJYhEM9f4T5NeUS: '100000000000' - DdzFFzCqrhsmBK5csecqbvVW7F9m2CB8PFWaqEckNwTf4cw8LYp9ywz5VWVebCPhLLzsKUvXvUPCBD3T42yDr4H7fujLsB8GBMvQ48f2: '100000000000' - DdzFFzCqrhseJ8oNov4FDoHsMube8TPRguHXnzJkqwvCXFEhY1rwHf9TbCxrXLni9RpMXSJsYrdg9eqvWw8GxkvGsHy6kZS96dArYUpP: '100000000000' - DdzFFzCqrht786QiJDAbM57AXmuY8mxFUY3hiwKfSzd6DPhx7HbWwSJU5AfHrYCdKfktDVkNRCE6LH2ABR9t1sfuAyk2Gfw3QVyuEpAF: '100000000000' - DdzFFzCqrhskdyo7sWSbC4u1baaSDvs3i8jgSFPEz5b8LSWSZgYR4s4g3hcCt4hfhVMHQec7VjP1kT6WcDPgmEDy72mm7RatDYKswqXo: '100000000000' - DdzFFzCqrht2CbY7YRP8TzfupL1hDGnhTpfzt8eqKzutzkUn6YFVNAzMg6xiaQHGT3TDuEkbsH44j2GykynhP7SAcLrmRX7hZiHvEtP3: '100000000000' - DdzFFzCqrhsqhXkMqahoV8KxH3MGZ9ttFt3BQ51egE3fZSBPpjuzAqcd67uYFFPgyLww1E1T76rnFDVPWk5SoK3pk6hMGcwkAxwzVaxx: '100000000000' - DdzFFzCqrhszV7peSPWBiz3VJQc5sss6CjaLK14ErvotFeKyYUrUjQhBsjsjYZwPCnzurcMqbedXdo7ouv7PExwfC1qqVDuYEuNiCggu: '100000000000' - DdzFFzCqrhsujF7a7XyirMJuYh3VFXRitBRHpbSgfSiNpck7cTNmeft3oAiNpeRcSBaUfM1ndSptMBNFrxcrEYcPbHhwV2TV7BJ3wLWV: '100000000000' - DdzFFzCqrht9DGXbSN7fHYxqK2SPm8CBL7s5mzKR4aRFNFJZVND8fHLymBnkvv61tFibtkLKQmaFtMM2A5NZFXi7zbDpieEqqcFMdFFu: '100000000000' -# "own", "pilot", "advance", "stock", "pizza", "over", "february", "cheese", "invite", "hello", "tell", "distance" - DdzFFzCqrht3TgMjouHLWkAxFcuCxk8wx1XoG4p3gHCR1cdRZAtVmDqgSaLN1rPwiKzMBLR12GZhreFCdfBmdvr7tcagUMp2pUyEBo66: '100000000000' - DdzFFzCqrht9zNDXrxDkztkQoKPNqAnW2SsMXLUbGyvEnamF9ytYkAP9RcJSjpCk8imtx37dWiMNfrXKZAStpmNKDXswvd7TskbmJ5iH: '100000000000' - DdzFFzCqrhswUHvMPNgFVSpd1U5xpt4J74msDF51DhFCTNud7bhUt3d7ZfzupkgU2axa53igLU129Pk87DjFK3VJBWyFY1HzwGzGCk6p: '100000000000' - DdzFFzCqrhtA3WXZPaUNZBoAchGS6sbTkkmAZeUt8YaMKPxBTCh4Y3HhfsAeNV7aEHRbKdrbUSPVmtk2aQiAiPDvCJW3Hx44NpVKS3fC: '100000000000' - DdzFFzCqrhssNLTLnp45TsHmjgpxhEE497KCEqjXGTvP2YNuAZ4hR7SLDM3swmCiTo5ed92TkQyS5b3Vyy5ABq6JxeNp4222YdZTDSQG: '100000000000' - DdzFFzCqrht3N3YQ43u8jJTkSxQteg6DxqwX6ADWbLVeXtDHdc2TtQfXSvWqEK33JKp6Mz5dnJBYu7i22PoYupoKsspav1QDksMn9WJ8: '100000000000' - DdzFFzCqrhsjctXVagGk3vDSkjrYRxYZNm2tJJwHzeMeSTAiQQdJ2RK6qEojGPemKwJVVWmnLXndzjYiWMuJvtGnz2pkqYSfa5UiiwMP: '100000000000' - DdzFFzCqrht7bhjZErXHxigm8TW3gjBQJNnQ3nr9tqYeBFqNkhsbE7rkm5DmqmXavNvkVGMYfcemhotpX6F634kkoXgJxBxmoqT3Dp9f: '100000000000' - DdzFFzCqrht4fZ7bWmAaQV7JkgSEMvEuym5taFqDXqYn6GAiQTrbSqs8XFiU6W2rGje7cqYMNd9hJMbKhj46LBKWwJQsXRNJhPhBYUr1: '100000000000' - DdzFFzCqrht1cZxgpaEKkGj6Hvijf5ZEvHkLNBjhTRsR3noM9y7Haj68pXag49J9Pj7SsQrSgY4aNXyQRK9w1vnPybGU9LEMobe2Wh9n: '100000000000' -# "alert", "satoshi", "two", "limit", "bag", "soldier", "hair", "scatter", "zebra", "rural", "dizzy", "cry" - DdzFFzCqrhstgcXvdfkUk6HxcAtTs1Ys4WwxKPHiQM118enibwVLH8aPNY8TCBoKTh1g6m6D4Vq5dx3d9Jk7JmUekrH1ofxFBqkB4eNa: '100000000000' - DdzFFzCqrhsoTcUtzM18LjEuNvHApod1apAyMkYeiaGgL6ArYL6Enx6z6LvDAiQrB8hUnjUYdoMBAguKbbPkUwb8UZnwGuD7aQ2ZyBL5: '100000000000' - DdzFFzCqrhsmDxRBj7avPbTGGABQphJPDyPZotcXteNYcooSKfxZ5jyT6iDBZYAu9a6W6fPPWW62bXzXRWenEhqVEkXccrzDE6PX8UCF: '100000000000' - DdzFFzCqrhskPhD7hk8Q91J2zNcmW9R4ybLpvrEU9URW9oANULhAh3StYxeHWRTuZh97RE3BioLLzUdAVMupFCeR3JTnnTg2btm33LVE: '100000000000' - DdzFFzCqrhse7FaWK8CNGENKpywSPfnbLVDtC4zK2MAKXYQ6UuGrF6rA96AjQ6SvQ9dEmUgkDwP3WffUE2NctGtrjo1rk2Yg832vjS3v: '100000000000' - DdzFFzCqrht67ksABwmf7pFKBR4KunDk1VCRvDj2XeLwKZvubmpjSd9xLxyBsJdjetGgvL4HRQkZXu7m3TAQG4cbkNeeoUHyxtkkXwep: '100000000000' - DdzFFzCqrhses5fkMvvzWuUtkBGhdWaX7HFbSZfWWvDg7whKjPGG8wrxYqNRe7cceZ4YVbFuQ9SVQAYDerAoAiVEuGB4jxYQ428ibfVx: '100000000000' - DdzFFzCqrhsnov55muSAXAEwocLzwMX9ArDTKTaHXztteiYfpPYBQDanGTUkGb5wMGQETtS2tEripCgrKToDZRNbAxY1iLNsJTtGXMqS: '100000000000' - DdzFFzCqrhsj1KHd92eaHYMWusaMDShyefqD9j84rgdbwct9j1AB5kiDn8nbj7sQUB2REgAgQhXSdPt7musZf8xJuqmYBMXgJPxArCd4: '100000000000' - DdzFFzCqrht1et62EbBABXtP9qHeV2pRaEU9cyqguBsxzbLJBsNUb5rmstfutHzvEYujaysyjiCFGvakczvCTLc8hLTGsm7vBrfSE5Gg: '100000000000' -# "phone", "food", "they", "nose", "cross", "music", "core", "leisure", "menu", "curve", "bike", "rate" - DdzFFzCqrht1cDmt7js3nsDrjobR8zFKiS5v1aYpNefvxCY8hsccq9YKkMZBp7yGxVQNLgxenRmXLa6eNVMU8EfmHBkCiDjPR2i3Cg77: '100000000000' - DdzFFzCqrhsetQSZMV8r8GcknBKvT3iMUD5szcYEkik7vkHYnDVMdjzZuPDqLFbCVEic3zLSEdum4kovmCfcLoBDETqN84YhJqKBxMES: '100000000000' - DdzFFzCqrhsh2jrDHdnhY9UZvnNrg9DNtuGUUrJNP1SDf29xm7w9fD2LVVcxYhAHbygZdcPrqLuUAdEnKDwCC14YARk8kRmDAuewPWo8: '100000000000' - DdzFFzCqrhsxSZz71Xe1ER1MTk8JZCohNTzRCDrx2gv1n7ZhPxenu8eFkk8nEdgkpmYWj4DPeH2icwHNipHLyDdtv11hEmx1HUZ8REqm: '100000000000' - DdzFFzCqrhsvdgurD6tgyCgTKzGnn542CRKEbJzKec6kc6cbmBH4E4wZngLyk1YLyxSrFdPbCUud3EncEQSQM7dLUSHPiDDxNikrDqoQ: '100000000000' - DdzFFzCqrhsshqdyoZ4rEBhLwCjwtLMnVcZW8qGwqkwE4zx1MWRp2cUPrp7q86gUAYyrZdJ2QUH4Yk5orfYgEoeeqRk2NSLvBo1MH5jq: '100000000000' - DdzFFzCqrht4jbeQLqNafwxfXoQXba8kRjz54BFGE7NFHNSoGioAFEZT1Dr1ikDyc9DyVXz6rNePZLaJUpTVHkLqwV12YswT6aQqxTSF: '100000000000' - DdzFFzCqrhshnp81eRN5fZXuViBAtJ4fFRsWBQEVnRp5U6NWbkNAHRMnbR3uEDCeJnhBoMfzzqyHbSG4a8QMPa3hEPoznv1ivjQHxYVm: '100000000000' - DdzFFzCqrhtCpt8VLw58giEDbveGi5AyYaADcU12HhZ4TzZX2AzqVYsXA7APHDR9Z7CNPUYb4x7CFrYiDmBUXRXpkHy1f7zqrTtaiWmY: '100000000000' - DdzFFzCqrhsxyz68spbiaPoHwXBKxoD5ZbUpscwgu3waU7nLBXNfkzLTy8JfEqMz3qhX2wHqPapfxCo26qdySs28MTp9pZPy3TTeTgwd: '100000000000' -# "truly", "wagon", "soup", "submit", "tail", "first", "push", "split", "concert", "work", "source", "cart" - DdzFFzCqrhsxLSS4VZTqcDDMawN12zMKyJzwLYq8Z4RjCM7Fm61JXHCiic1pfaf4hppMeZPiw2M3rQjiC2t4d74aXoDse8ta5Z3updzj: '100000000000' - DdzFFzCqrhsfbEcs76dGUaYEJCorLheaQcy4Wv5ATGYTff321GZZWd2nJ9SedhTV2eNnmNhcpSe34LVaVaN4sEu3AUYGzM7cpma2pQ5e: '100000000000' - DdzFFzCqrhso6PQiCqtH18UaK4CgAYKuvvTQ2R12o4jZ1miVtmBKTh5nLTM9ny6Fe679UZh6msXA64rEHSobVi8oieig3Qqag2ywRJmC: '100000000000' - DdzFFzCqrhsw7HNhZ78mFEec3zRgJfZuhzyTtwAMqqP8Mr73pEFLqTgAk8qGTM4EnGoc44vvkkJRgJCSwLqFxsjePCbPKPBAeGund9Fz: '100000000000' - DdzFFzCqrhstHsGLQsQhYRe2CB7BDNtfsqnuTdaD11zu7w2XugfMfXmJuMgMX7vBZr5pc9mwwpaAbQ77QM7LjJP6h2uhrYHBNxbv2zEt: '100000000000' - DdzFFzCqrhstP1y7D5nGi1TXkPkrAv5rypvHtZE8YkD3r9fseTeD7Lc3EBMyRG2Z1o66u3bTpfm7Lp49LnhyBBGECyp6L72RouxFfF8d: '100000000000' - DdzFFzCqrht8b23Vxk4XvUMDpqMiAr9eLuF1e9k1RzTCXNSNGEfZuqzJnuHeFwVnRy7vTxoNquj64ywoY8xaT4wEYPmt1QbvbQ2Prdam: '100000000000' - DdzFFzCqrhsz1oyrwS3HQ8nAeK9yhPvC5vYrEE8jqmkixv4aKq1NudSn6giyNQQKuM3FhBGwMiJHhm6kYtMr7JQho1oGiKw5YAsAPrDi: '100000000000' - DdzFFzCqrhsmWNTz3GNGH4okFgGcxRzBG94NiMnF5GzoaZk4LUMjT487DvRLvCJCAqrQe8X1RNeP7kX9NBieR5mqkmgbWxVd3uTQJkrx: '100000000000' - DdzFFzCqrht7SbejtNAHvDRzqqipzjqFGXucGWZw2bPE9QrmAMEba4hzh6t1n64RJMDDbbSN5wE3ybEk2mLwFUmBPHoDoyoFGverPenQ: '100000000000' -# "symbol", "stage", "umbrella", "high", "sand", "tilt", "slight", "open", "kitten", "oil", "fade", "minor" - DdzFFzCqrhshvYUKNEbqNUyKbPhFiUjrG2wHucpw7t1ZP8Yk6YSGgrKe8U5hYmPUCMutkAM5UG6Mxw8TDs9tYBzsutEEXgS8L2gaBQiL: '100000000000' - DdzFFzCqrht8hnLivYANprN4uhMqLAbVAvpkx547i4UHfiDAeMQ8623wbqc4teWU2zM6XBPhys66yChZPLqiLiL1Bx2LzcUBWirRmTra: '100000000000' - DdzFFzCqrht3ShwB3C6aeVBQStc8oRo8mpqdCr4TmrzADwrz3ko26aqscvEUuFWE3JhwtKERy5Q9ihUYAK6AaiDXcV5yYt3e59ovZStd: '100000000000' - DdzFFzCqrhsebz3EtfjTYr7ZEEnQcpHG2V6Gs7zjo3FLD2YyEk2KWFDQ42LNczHZJAD3GtjRx6hxNA4zTPbEDxGakJKP7TKnUfCfTwgh: '100000000000' - DdzFFzCqrhsnUAt4kNHFcnZ6DWiHT9pbfMsBsn4SxUsWK8Snf8aDbskmKG95gLgyJQGkP76yedHhgEDw5ssRWeTThpss4YH7AvjJxea6: '100000000000' - DdzFFzCqrhsjP4JFevxikr6zU8TpZSjnoBcG81iu2JoGrrwAgvNgdYeVYGKFzq93FCsqeBfmTR1ktyPQoF3V7kAcaxj8aD6Rtuwr9HoS: '100000000000' - DdzFFzCqrhsrkt8MJdarX1ryE5DpYF8qLKdw7Pnz6S44yseEaByVsJDq8nDbgoJyNFNZGXKbXiaYqaLHEymWWgJT2Derz6zCRWgJ5VVV: '100000000000' - DdzFFzCqrhsuaHCL3YetjZv4gbVtuiTydkk8bxYdS3QD38HdXv7QPu3i2Na4pegcUEhpvGvZrRJWd1EwZyaWwEtx2iT3D9yeboMWZ8fm: '100000000000' - DdzFFzCqrhsspuoR5bGh7TGk7qpmrFYbSF13bibwZRaZA6fC1343UNC96H3fF4EjWr4yYxs93hyiB4FP4oET3DkdkKkwFthFrzcSfyTB: '100000000000' - DdzFFzCqrht7ZSUtTzHASGtimVWkSEayKwAWdWS9ybTVyE9TjAixq5Rjw5NwE7BpaUqRmzNBmqQKeQahsEHJpU266tmJkx2cDWCrYpQZ: '100000000000' -# "tumble", "grit", "dumb", "game", "raccoon", "giggle", "valley", "audit", "army", "mandate", "around", "basket" - DdzFFzCqrhskbcDjS3TkPMLcfbqFN28uzoHXVbpAaEJRk3H5TKXWZkDqcQPsLA5EQKiTNDWqCEWFQMnPU99yeZgQxtn5bja48LtPwUn5: '100000000000' - DdzFFzCqrht8isJrdTLQbE1qVCmoe4DY9uZsGiC6V9cJvxdvZBTLbmnx2wA7u8LMCiMDRDQZ67PJc6qgATvdjDmdvyAroAvmcJoXcbJX: '100000000000' - DdzFFzCqrhsmSLni517VQDeKgi6NioEP3qdfh1q7EH3cxStiSsrQnnW2kYw1VzML2PBS7AuNwUaMZAAM3LfPSp1tX6UsaLAo2QTZG1uc: '100000000000' - DdzFFzCqrhsxiFDvynFQEdNbwEjoxUwoYc88GC1aQUWpqorusBy1dyST6rX54cF33afGANNScdoYBtBd9TgZbmREuih9VqGrVFDqcVKH: '100000000000' - DdzFFzCqrht61w95SBc4hCcYuZmd8mbmQ2X34xRjr7bvVGtfUXVBHy7HpAfzfYDxaaLNJHbr6tWby5xAqWnMospUxi2Hn5TFJ8k1u4hX: '100000000000' - DdzFFzCqrhsrUmUNUR7fpRgSwHVJk3S61sfBpdiacCBmfiYvwKMdZocyVhUxdMa4Q1Nub4cQuKrdhkhqQXFqHtcbpsjVfXaVn8is57S2: '100000000000' - DdzFFzCqrht1VoBf6Qh2cg2yWa72rJAmRSrKvJzvRT8fyN9vZzk9eFEF1S1tg3dMmKYj6hpjABP14gd6jqph8GsQzxNfkY4AmYVSnpXo: '100000000000' - DdzFFzCqrht8gn3ATia2Nm3frGzNm5wJPSL3k4r9S33hgXWhBX7Kei8Yhwd99LtsfddYLV49bHid2QuVWv24eMBrQW72CiHmLH9wx77s: '100000000000' - DdzFFzCqrhsh6qkNtSLLVybmaTFP8TxxxehP2P6mX4zLx2fp9yjBoDrLEP6UfgmpWNu4Xmx3XfpePoq8Z3xnybM9XcJsSR1CWsrXwxzU: '100000000000' - DdzFFzCqrhst8Uw7gByKmaC9iWiJcdX6JXPBvKeY6H5cLgNovWX2bHrJpJn1ZFoB57AS6HDDz26EyBd1EW5SJus9js89LEjJaTmj6tbH: '100000000000' -# "owner", "foil", "vivid", "cloth", "bright", "hurry", "nerve", "help", "sister", "jaguar", "teach", "loyal" - DdzFFzCqrht674UZJL5dJvsbRJPTERWPdcNKqhyw6WY2rQhg1bked72hyEhKtV5jQy69NwTj8512955M1oKkMv5pNzxd6UJrKsfXW7a1: '100000000000' - DdzFFzCqrht5bgPw6xdXnB92xuCvUyJku17s6qZNZrVG7vJZ9ytGR3fhvwNSnS5rTUpJtJBnywJPWNionHhwugusHHnkDH2pnDv3dZGY: '100000000000' - DdzFFzCqrht1WUNQWNky85reojZbvftJJE6BEwJoxHdh8A7hkJCz6YNEU1Tubvkdm6tKm9UoWZzjLsLybPHZd75mNmFBzsxv6hsjQ8TS: '100000000000' - DdzFFzCqrht1sa38YvhKjmC8X7PksuxUPLJoMa4J6iZLHTVcTUPmug37aiTvNSKz1wecw3H9eBJAyW4iQY99ChvH6xYa4yk5GbpQC4jU: '100000000000' - DdzFFzCqrhshKv1mrTmmVvMmv8RPVeF4F7BwuUMsQmMzh85mhUcG3LuGvKoNUeyScoX7B6AxQVwMJxmGyi4gcaiHdUgP1pzKubSKDJ35: '100000000000' - DdzFFzCqrhtB3isMxmMqEinxsNuZFDUjEc8YiYPauQ6Wk1i7dBZNaREeELYdTPma27DC74wPwNHgUEx3ddA1UqzfGPm7LJsQ3aXeKyCU: '100000000000' - DdzFFzCqrhsj5EJP8ixwzFQ2NAj2wz5DgBWqPqBRwXacK4D3v9QXomrVVupMvUnLWP7xMVJxTcQeXfGkxp2WCFwkgueHCnR8fzAP7wkS: '100000000000' - DdzFFzCqrhsqmAPKepyznWeoPeheeWUmWcv2TL4hpRRT8hFajT3d96BE7n4WhK1weN18YR18M9onrTVqHdQVLvaLFf64PFDh1Cd4ouBn: '100000000000' - DdzFFzCqrhtBe52zEhFjdGAsv7LkaYaX81Ho5yygUD8hLnhwxwoSiL2DyhU7YF4qyfcPfu6e8ZyViyhv279QbQMTVwqwt4Kd88Drmt1V: '100000000000' - DdzFFzCqrhtBMoPC1cJbMPYeLLHay9qazoAqHmi6fAtgVkedcoWvUrkuANyzRwmL4oCuo5SsUwbLCvUTLyPKJv8bN1kd31Gan5hihJUQ: '100000000000' -# "slender", "topple", "urban", "axis", "swamp", "guess", "dizzy", "correct", "visit", "valve", "ivory", "citizen" - DdzFFzCqrht439benSkBHLrLHaicWnug6otuF8bLngSDYKpQZk4yg9tDhRuawuB8hWACk11qAULoGu9vM8UPqoYCdzmjRU5SYBGNe3wj: '100000000000' - DdzFFzCqrhsvn3VAfc7C5ntUjZr7HDgmCREuiJdmy7YBDqWS6mYrmdRRZsc3FVcyA1xJLoNzjtkuhBqrFwpQLVTMe2AQBXZhT5RBMrED: '100000000000' - DdzFFzCqrht1AD6wnMCZQYRXN7yPmnPFyn4ckJXcvfiwkxqJY21C9uimHr5YGuEtsaV7LT6vWtYMubo2PsgSDzbjkhs2pVgcEgqPb1R4: '100000000000' - DdzFFzCqrhsyZKJcjPdnL4yFT5iaVAHTbNwuVGwR4s9FUZoRZRtnky3WaDuvxtPdw5WDJXxtnf1ZxHvvVaemvH4E8qvif5w4L3FMyq71: '100000000000' - DdzFFzCqrht26W3mvKYkUrYr4aRXumECNhKYJ6oni4VhrfEsFRT8ibVgoeMp5EGqjf1SLojTcejx5dPXbxienJLsjaaeBLAjGLFVQGXG: '100000000000' - DdzFFzCqrhskRMcqPxXszeaaa3e3GeGm8svQEKMXzGGaFrxkkGeUmQqLzga4yG3NU6ST2REG6dvA4puebdrRF7Pb2LGFiCsTTPSSCWX3: '100000000000' - DdzFFzCqrhsiRDd2Yg7sRQvzXzGV1KH7ud3Mayof939zqkmY7mBKPDVVczmVLhZAWs26BLg3D9jDqacJZLq285mWSKVFdjCVCT9bUs4i: '100000000000' - DdzFFzCqrht5fwqThtNT4fw6zXctvuHhq4M9wjPVHYqdHDae1h1NwiZ9D3xoeQALXLEdp4rQRAtMK2sYBWTxSN7tuHLNyZ5UUr23aMCW: '100000000000' - DdzFFzCqrht7ZPByhWy3JoK6VWHNH4XF6sjV5MVvtx1v9a2eVLiUSUce1HSX16dSbS3LYYeh8uQMPW27fuG1P7kv8HprM7ebX86m1Tdg: '100000000000' - DdzFFzCqrhsqCo1nbUfeKbuwBS8MRSAfagH5jN32GhF5tizgs3cTSoHhEDtXjWmRXw8Bu49CLQ3pZ6pvwk2oCDACX5fefMcU8vKMQzTw: '100000000000' -# "humble", "song", "wrap", "future", "cinnamon", "accuse", "bright", "speed", "inhale", "alien", "theory", "main" - DdzFFzCqrht8JyqFHBZGvCmizKmfH16WePzznmEFozMByVHVnmAbU69U4VmoxSeBxzyJG1rtcdKkSMjuzoJNe3VXnMkUVDzGvQcYTkGj: '100000000000' - DdzFFzCqrhswufamdszJtBM6RjHjdeKxMuRWFb2YmRaUKGvVY7e9rLdvzXAY79HEiJqDT5V4oLEX8w3JExkAT8XuF2ZjFHXNJY8rvUFq: '100000000000' - DdzFFzCqrhskfDsd7cWp7yv6LUwcb8C5DCDSdJ6W3VVMyJzZ3RdsfQBbcGhcMVqzz6ZbbwoZn5P4c76fzKjUMm7kWFNRRtYB9gSNtiom: '100000000000' - DdzFFzCqrhsgMJmbPNm8trUEtaSvF7MRorHnNL73PzuCL9uauuUUN7K5oHsop6eXjtDPywmBsokBiHz1zQyf6GGz1L7nDfmYn9gsUrNQ: '100000000000' - DdzFFzCqrhsoXKATuRMKD8rih8rwiRbs5aJuhpVLYCVYvafwgcpwjNnid7NRBeu4k68EVhvL1QEA18xbAWDW8kn9uJSsoTjwQMDNUeE9: '100000000000' - DdzFFzCqrhsot5S3cdu1tojRcN7cwidbvpdiWscrBGvvegZ28d88JvR6CyAceDCoZhw48X2R24XgVLkTbtZq6TkCUEDtXRhSt9WEmykx: '100000000000' - DdzFFzCqrhtCQkRpBXwvzLQHmJqPBzoVngbyFGRG7D1cQ74QhKCo5f9TSUF7gXXZ6E5aDQjm5BihSwvufNCZ1WZ6nabQ9Fhnt9M9CdZF: '100000000000' - DdzFFzCqrhsgP42mxaHtCFnubPXFeDwZuY2PPL2DcZxc5swphMBNrFq3i3FPAzq9CbRWKYFZrYQgxkSXNHo4zhpV5e3rTgyQ5SkWdKNS: '100000000000' - DdzFFzCqrht5aik8mrKuZVVuNtq79aC8mn42CMYtd8C1qTJTCthKqisf5N52mxDv7AbLekF3mCxYcPuHwDXYL8SH5fmQzPLsY2xJ5ynv: '100000000000' - DdzFFzCqrhsvmoPxZCuCx3ZCXmSpEeAoZtmXzwg2SLUiiXqNkNRmPjCXorfmUrhsiYTBKqo57AiRQMoVxrJdgXFxr6UDYmeGbn8oRmmr: '100000000000' -# "purity", "latin", "danger", "dutch", "avocado", "endless", "off", "scissors", "junk", "biology", "dial", "glue" - DdzFFzCqrhswZ4zGD7XBhJhhafGzTz4nCttX6kMtDdzugabPrcaac35qbKNau3LV4Qvk4zKU7NLXBYE9Yo9wbNkQwHMYjYkx3BpiyX7t: '100000000000' - DdzFFzCqrht6jLpBnpFJkUQy9fnmVzETWPfXt1dPwJxvzWWJBQDTTBsHN3HBWU81tZhmATnXR34GmYAjYr1AmaF7h2jt9htTmFJvNTMU: '100000000000' - DdzFFzCqrhtAxyonZvFvDfbDpXnzYV4Hva5S8g5sHDdA1d5PKeTjpkD2HY53S7YPL8og3h3xxK6Z4T9NqgbNx56PkjWTV673jnb8foGX: '100000000000' - DdzFFzCqrht1otrMqMYaaa2DR1mywJMLx2mLcBtv7Agcr25ez2yeW5Az8URR3a5GQqjqyAcMLcpkHsJLrcY9mHfLGkNZZXGzHJQeHMUV: '100000000000' - DdzFFzCqrhtBAjiiCzh4jvK6DjacJM2kq9ig5K7gm1EfGq8CxYkVJJGQSjFhsY41GjEr2Ed5e6MTJcCWhnaC7YWU87VQrwffBRqtJrSU: '100000000000' - DdzFFzCqrhsuQJwWwhu6Vxpic7WZHWq6sY3vcHh6DuftyLYmRSqfgMjgsEAfTewQx2qzASm84hXsQBtweAAHuceJSuq8J71pQ1Phe9Zy: '100000000000' - DdzFFzCqrhsye2oD2kUWBVMp1tf4BCGCs59fRrH95ujZzBktXhQsqKW4STScunHzpo8ynrK17NvhGMEL7SKz1Ahs1ACqUNdNeZgdpJuA: '100000000000' - DdzFFzCqrht2PHXFLM3Q4SiZx5fRAPFz3KjuMJZGxifbormZCwBwzyz3iChnntXRDosXTBuDcnkCbpNnLfVqZ7QBs1BSVxPexFKKkWhC: '100000000000' - DdzFFzCqrht8R7cPMGDB6Dc9j6iWJiPqddfNehZn4Hm7qVZd5ZsuP7fkDAc6QJhKj2UYmHW2CugNfszTdtXNXt1GfobUJAZicnFDektu: '100000000000' - DdzFFzCqrhstRWBbLghUCXd5Gnz6hYCQ3UBkzDdGwHRg7xduF91Y3uP7XvkNtN3HS8AXUvfB4zTN6p9a5i4AUWshgTGevpGvaUvGQauE: '100000000000' -# "lazy", "aunt", "obvious", "pave", "abuse", "loan", "coral", "orchard", "fat", "tone", "knock", "tired" - DdzFFzCqrhsnrMBKUQPpDT7FuEx7GE4wR6rfeeZTfZXZM2rbiG6gctLxBjbG6hf9w4KbSsSFWBrZUsS69jJhnBDwDTPAMXmonZTEaaJ9: '100000000000' - DdzFFzCqrht5AHhMMbfzKf2shQcgSqdoWq9g2aZfbvMERPGjMqUru1J2LwUzDmkeQoWJ7gMSyfVWeKy1DQ3SxfToGjsWCX2Rc7wh7wwQ: '100000000000' - DdzFFzCqrht4x4UcjeNeUKLETyexLqRaJZCibBDPCTrChEi17DeoX4DskREg9Yt5SpXwRKB2MRFaM6THKDwDMWsNZJcDhp7xjjDPXBJq: '100000000000' - DdzFFzCqrhsqLja7ksswD4V54MUPjWuVKbB2WmvhNvLpJjYLsoRLhHhmVYKp8B6TjPdm3jStFhpvFuHGqgfKYsiwersy7c5YawyU9XLp: '100000000000' - DdzFFzCqrhtC2RFhDpTrKMVhUyDkoqB6rbn5XWm23EFRNHxiMYpRVn6oHNUudLkDnVBhsE3VoTraucUK7gEEozNzu1aniXoRZPNr3TV6: '100000000000' - DdzFFzCqrhsztPvaC9obe4uPPeReoe8Yz7LGbEvgoUMURW2t26ZKvCKQHRYwa9q3qmea1Wq6Wez7N4wMxKstZvhUSMKGq2mu35YQSncp: '100000000000' - DdzFFzCqrhsmEdDDkWxW24xZv4miGsG89AP2TNgC2r7EEAxtaDi3ueEFveigv7V9ZL8Z3aDcuZ5jni6q3Ww9DZ3th7PA3bvpGz7JbNpu: '100000000000' - DdzFFzCqrhsky1fpTgvjfyfiH5oUWprVjckb398MjDj8bK13wcRhz7H9BbEsjCNj3Rc3xJnLkDNSkMcY5QQoAznRC8uPwfhXkk4HMhAi: '100000000000' - DdzFFzCqrhshFQU8vJQnDd5xgC7b2uEZX1RPibumRJSEdsBUQgWS4PGhokHc6XBM4h7tLiGirAhMVVwgJUpTxBtxoKbp3pXtCBnHKq3h: '100000000000' - DdzFFzCqrhsqvYYfAtrwybXyrZ2XfGpEDN3WTMyH2BsgehC6GWTvs5CvQW1eekvdPWDQU6HLbfETVDugNbeNRYbfKUJzyLjuVVDtmWRt: '100000000000' -# "fantasy", "kit", "luxury", "combine", "bus", "hospital", "hybrid", "stool", "cousin", "gauge", "grid", "audit" - DdzFFzCqrhseP24Yu7xxXQjuKzhQyCiKb8edL1qHVaV3K4fUgEAvHdeYAXgpGup6EeY15pGvVfFfkfBSRncse5pFijhLy6tGX97Muj4i: '100000000000' - DdzFFzCqrhsusXwj2sxaEXmzz7wAy7ngdF3pjnm1f8U58VcxXRPG6Zg3zsU5xTpUwsQzKTcXj14KCffdy9hUmo5dUisyZgGXWiyfoptt: '100000000000' - DdzFFzCqrht53feJEW3NDHkikGTpkGHoSqpwF24kWSEiFd7P6ceFeD2fptSJQ94yiCzh9FgqH8AdNk3gczsBVv6ADDvJSsqyiKxjd3vS: '100000000000' - DdzFFzCqrhst4iBUkfT3Pj5xA6vqb8e17LhFHyKkLiVyUxGc7vLkYSktaJbC6F36j9d1xN5vX2hkgRHzMaN2xkaGzw62WFnRFVauoNb4: '100000000000' - DdzFFzCqrht8P2ybUJw33prwqPWbkdcbhHNy5QhsfBosrV7toU3R56kFjhNyhdK7gZDHWojsKgZztJeGidTxh81wLHDKXxBwqj9QBcyv: '100000000000' - DdzFFzCqrht6NaQ9QkkRx6UrqFLquWd6gGicBcu2BxWS2bP9cXmhJ1Jsm822Ljtq1ir13R5nZETVGZNRtHjZGbddCywVmk615kJQuLcc: '100000000000' - DdzFFzCqrht7ncG7G1AuvaYpLn5E6zrwja12rW2WatbR5QMRaLJvoCKU4QLct2MFVe9VGYbRPDtJBfP7E7PapKuoKMyU1qz79fD6PR8G: '100000000000' - DdzFFzCqrht4N1sj7JjkVgdLnL8zRLG1RSF4RmoUoRS5g3JaMXcQfTMXz7fgxJQUULK3oUcgS6j5ZyszEqFZtRBoYCZ4Zcm5SfkFAyJe: '100000000000' - DdzFFzCqrhsxSdPSYTEWC28j8gi3qWDXxn5VgHa9XWWrYPja6V4xBmob8svGQho5AHFWCPNHcT7XHPBEeYcVtaMHybNGgzYbe2jaiTiw: '100000000000' - DdzFFzCqrhsjJfTgS7pG4CNtR6zCJhVHFaqCzhfY7jY3Cf8CxLqdvL2QRMcuAaRZG5ABLXAcB674a4LVWTbM1wXJ3ADz9Tg7PHoEbfuX: '100000000000' -# "dentist", "inmate", "sun", "town", "fame", "cable", "sport", "depth", "scissors", "rude", "yard", "harbor" - DdzFFzCqrht5QL2ZCjRu3vsp36PReVKRqjGr4UqNU3i454psdD9hiLMC6JbhSncwjyFBNjwZiBWCUyY7ty6iwpCUBT7oyk5Q3PkrrhQs: '100000000000' - DdzFFzCqrht9zucT19Ym69mPEorJo8XnbCafwr8r4DGGJpezxMDeWASyZhQNc5vmMvE7wm5VX39E9oeC9VknNYbt6cZSeHn5pkWT6oFu: '100000000000' - DdzFFzCqrhsxU6yHdTZSq7ybgPcRdqgLgiZ66Etya1G7oGRAonUGiPugqfYu69M5QzTMMvZZLPnybSvjWAy2BYwBk9WNdyNBrQNSQSMw: '100000000000' - DdzFFzCqrhskb8geC1uij7PH7g4f5DNkYxcfpPksiKFmhZPvivukH8UiqoqtCn8Bm4zjMM6tE4BZ9UVpFvWmJqNkZSeyoi6XnRAseYrv: '100000000000' - DdzFFzCqrhtDGHTDogrmCeUYB45ADfe7jsUD3sX9ZTep8TsVefuxjBA2nDSZ7wD3h6RyfZZXJJxJssN4x25zH28s7qiF1Hn8vKc6bbxX: '100000000000' - DdzFFzCqrht8AbMx3Y8KcapH2zc5eqKtaY38ifkS9cUjzZtyFT2bNTMWVuJQwLQmJ2Q5pL4DZQau6bqjH7N2EttF3bdmyWVYs311ue1a: '100000000000' - DdzFFzCqrhswKhHP8yVXgyS8Tv54T3aNHjvVgoYigggyoiMD6847ro7zanHEVsKHgjtBi12b4pAYH86uELcSKLeKFfqhsgDrCXJ3mUh5: '100000000000' - DdzFFzCqrht3mSSgh6tPYh6hTqnWwne8QTHmuDVwExYnVmeNESsfS9o1ps3YqZ8zDTmCBLm36kya8kAknxv65FHq1mzuXEeh1xru4uvy: '100000000000' - DdzFFzCqrhsyENFC6AjpwnanwvCVYFEHjDuP1pRaLSKHiAMs9u32W7vsUChmK22p5AXT2ExmgXPfAUVaDVBGuTPzM9nAPPjSzJ5cKcUC: '100000000000' - DdzFFzCqrht5LzM3ujWHNuo54Tw8psAzq6LAYmfGsbyUGwQePcKK1oEb9qF5MCAmoWtaNaQSnUiT2oEs48UkG8TRrj58hfC1MaAPNEyk: '100000000000' -# "bright", "item", "flame", "august", "consider", "rifle", "stereo", "end", "very", "bright", "matrix", "mom" - DdzFFzCqrhske3AMwb4scPsfK3Zy2TtD9Ero7R89482cKfvow1oCmC5eovgrykPrPbU6twceG4ChNS6jzxSYgUG8CUov9XzJwpzfJi3F: '100000000000' - DdzFFzCqrhsvq9iJqPVr1qMsPFT4DUzD2TuWK9F4WE9B9GWZWaad3Evw9VbdTsEkEebS4YaDiaB4tSiaZupk7mqPhaiSLJTPrY9Tevzm: '100000000000' - DdzFFzCqrhtBXs6wxxRnJBfr6PM3fQxx5gn8jVMzzS9DYhdiTsZ8wZwvBTazaYZuVoov2U5Ljr1Epaz41td7UDgD2iMxMAV3rqbZ7P8W: '100000000000' - DdzFFzCqrhtA1aAZb5ewZvR2LbkjcQjSAPGqGwkZwQ9XQKJRwTUVCeZYcNrNXi5T47SxRHQ27bJCa1fJkvi9rX2Dr1ozucSDMSYY9bxX: '100000000000' - DdzFFzCqrhsnCnZxEgwwXu4WKKSNADuPnrid5sUzZKiEx9b6KGPuksyM2gffmFN7Ar4EuB7sggome2ymbkNZYCfd6H4rw7e2hwNHQJcF: '100000000000' - DdzFFzCqrhstxaRYq8wHTYkjBhaZLJBDLGRZDM9RnrVvbvWT21SogEkoG1mAoQsEHwY19ypQ3EiQa7fynmHvYUUZkmHtD9RGYi1KhCCf: '100000000000' - DdzFFzCqrht2w1AnP5nUVdHNn6D3TUKP3dw6bAijbK1vzUzD7sXVPothRffWVSXAh7w9UjjLcMzCznNmv2JH5zsK4hmSpX9pGRx5jys5: '100000000000' - DdzFFzCqrhtABvmYEZptEVcw6gxyTd62k6fhPLtpP1Tr6CnJEc6dintCNuZes4KxH4Zhmm3TSZRVUWLwYKxZ1K4ijzuZvXCfkPigRy8t: '100000000000' - DdzFFzCqrht8qGErRZP9pdNtioCn9Y6cRDNXsu4UyrfzxnEzCnEVPjcDoKZKQEvaoNHv9PXm19geUXujR3zWMQ1QqQ7Jp6X8HfTYbGNC: '100000000000' - DdzFFzCqrhsovhRtApboKb3prBCub2m2fTDcJ3CMbc8UzFbifNQqrBSh4gbehxPjqLGYdAaWShfUYDKCHCpQSYPqHWSbmcQJKuh3D8sz: '100000000000' -# "today", "pattern", "bacon", "version", "differ", "pony", "universe", "snack", "weird", "toddler", "belt", "door" - DdzFFzCqrhsxoTxVUtpWvdxki4gQ17RUQWrXYHbL6YagHqVQnsVW2v5XTnhxFnYriPVS9Ar6LgNJ1iL3R5Aia1bpJypnR2nkA9WHbSGm: '100000000000' - DdzFFzCqrhsnhKt2MWvXBt2429LxvnkwJ79kmrG5WiM9Mkc5wDQNPrj8nMwFcZiRTPnGE47tKUg3TwA2Yq9vovpMSHRTysn1rt2SbJnH: '100000000000' - DdzFFzCqrhsjKkvakS7dVrShF4wz2orNBSMJMGpeyYNkN3kvN99gFJAhhVhFxVExHxXnmhTkJtcHWrRpY3xm3DAjC67t2CiCcmhyxyKy: '100000000000' - DdzFFzCqrht6Yy7op4YtaarvDjZtnQqF3kaidEdSaGqz5WrqhNx5x8jirBwjTFM9tcg6phXwkMdAoj3DoPWrQAC8hQ3rRUDQPZcxFh9K: '100000000000' - DdzFFzCqrhsunHKPAoacUVWLjX6SdGeHMymcN98WjRigakuNumCJeyCoDaYts13YS48tTkGYaP8ii7aTv3DvMaaHg2c6UBsTrzSB59Xn: '100000000000' - DdzFFzCqrhsmLc9QdkGQ9Dwtv6MwinCXpEpAeMz7Uc8giDk34Ud9Y5iTL31kajUbVTGNJ7g6vF57mwhoEx26U21DHyZe5kPWjVKw57Eg: '100000000000' - DdzFFzCqrht8F8ECWdQPVEZM4z6zkiMnfdVAjHwsSSGFyKfTe9NWDYfv9iLUcftptXYuj2jSKJ4YU3VpaGfKaxNsS3aaorervsgSLUy5: '100000000000' - DdzFFzCqrhsr821ubDTtA2N42NY2zBcNb78csH75ThSxhKVYGWjGu5kxJqBQkrpvtNXmSHawPDgnvtuWCpYCtmxKTJK5QArd5ztGXSd1: '100000000000' - DdzFFzCqrhssQMjAmz66DvcAfSMfPJxQSfNd8cA9vuknPoin5zS6QJ3ApW86EPhvJ4RzzkYooEWw2XWM2KRhqe5pqLF7ZZL5YUFzqupY: '100000000000' - DdzFFzCqrhsn5WhR7z3AGj5p7jZmr9YdAzojZYQL5s4ug5XFtZet5NodNbF2NuKpYki4GhYk7bM4ehhnCFrSzhveUosXbrF24XqJGFV1: '100000000000' -# "veteran", "omit", "knife", "wrist", "truth", "agree", "rhythm", "world", "dynamic", "duty", "saddle", "dove" - DdzFFzCqrhsvnmPSFn5k5NyjzQbbUuXsdvBrwrzirDNJz9T1m1fYc6dXaa6RkHxfbtpiHoiUiYM5VFDUfFRuBP9FD3UehuofKujo3EWF: '100000000000' - DdzFFzCqrhssFCusazWHXUZ7khgSfSNbXDUTrR9u1tc62Pmk6cy5PtYoPqXAY4wXnAZccHVvJQduPBQ7Xj3BmYUaQjAtACiyS9STsWRW: '100000000000' - DdzFFzCqrhsuX4Ju7VST1WP5jvWamxTkRb1ghrJwSedFhBXiZtdj6EYAGW5CdGwF9NeRV9g1GS4ttYso7soU1BvYp97BL1bJdrHZG7Pb: '100000000000' - DdzFFzCqrhswvTyXzhkrufxNkSMQY2sUqt7THjne3wqUmqNgRsUVXefxHGZ4mUq2FjpSKngah8Kgnoboxh2f3HsTXPi9xsvjnXxiJDLb: '100000000000' - DdzFFzCqrhseBfUQzpJanYhPqpBQdYYsoJuRrSxAi8fQbL4Sm2UtLjNRbm7T9Hc1vKj8BB7e3M7F3eLRQUFNRMqwjgJfJ4ANnFSoRVhU: '100000000000' - DdzFFzCqrhsxTE6PwWFgKnEbQo9NJvBPCSoTobkaJmQRXJdwhiJu6sXGn8oLQhfXsvUjskXetp4phZN6GPsiYW2CSNebvbkdiiWS7bm7: '100000000000' - DdzFFzCqrhsrQpCCp4LgSTqkw6PPKH1bkjQ6KAznmSK7izVDaRd9c4WsMQfKonRU1WSX3GeSzQw8YrSLcZckFiaKrdfGaKg5ps7CBzph: '100000000000' - DdzFFzCqrhssA5bm1sZwM5waYSF8gzKAqfKcPHmcDDztCSyVPLSRT97YcpC9wH3ieVmbcEft6huGCHNKT4JWGuVU5RdyVmN1Byj7JV3S: '100000000000' - DdzFFzCqrht4wQ9tURQwpDzMHFkxzthYn5GmgQujS4GFYLfXSCCmujY6rKkW65oKMDhDv3MxrwE564CdEpRCX9TthjxzRpH9K6GgjbMF: '100000000000' - DdzFFzCqrht4S2sfyY8nsiLJa1L1LeKVK7Smd53zYBhwwDz3XsnaZot7QNUrmG8TsfL1DAQccQ16fMJYDvLoQMQMv3i6q3CZL7KQzaCR: '100000000000' -# "hat", "city", "disease", "patrol", "answer", "select", "vibrant", "tag", "dose", "rebuild", "length", "sting" - DdzFFzCqrhsrHg2753KenwVkzJJKJCTLad3fydBmQaDyy9Z5AVwG4fTLHR7dAPm1Q4dw21vekUTb8RdFkgmviRZarBiUqxF3AqcFwuL9: '100000000000' - DdzFFzCqrhsnoygDdz5s3jHhZB4aUAGEQKHPJcbAAuEzcY4M1iSRh2tcH8r1Gm4QXEPrhtfq9bXjaEhxxrsQRDxwpNZfjiK1Qk7ahkMu: '100000000000' - DdzFFzCqrht2Q922m9WpwHYxStkPMHRH6T3yCW4TXPBMuTJhr5zGncVygCURWNgdrgKBqsNojqK5VWPpDkr7rsGF1jdWrreweamKqFT6: '100000000000' - DdzFFzCqrht8zHHSqsSqGVUYzS7XN1ZxAaKbFh3A58a3Mh2f1MDff4jHRmBe3kgqTHkr2fo4ootgite76yMqEoJqRd1EqoEf66FPDbFr: '100000000000' - DdzFFzCqrhsmajz6R4cJmAmsiNdS2DTz8xBiiHufwwBziWFJFD12B8EsvhJrjTo4o497CZozESxaSp1j9RsxFKUdhTXeBgBWUdBdT63D: '100000000000' - DdzFFzCqrhskspMSGoJsEBYtrthZpoKgnMALXkn1xvj6FLngpveHxH9Xz8cjNGdPLUVvYMXg1AMLAGYGBa4FqNn1Fg3J1spJsVbNwwkM: '100000000000' - DdzFFzCqrht7JdNAPQCq89zpLY8dJ4eKEBZmfRW4qR5QHnJgnd4sXHYmotehGRG3riec6dDQWVx9PTtNy7wmDCL1y86WpyPfjejwe6cg: '100000000000' - DdzFFzCqrhtCSH1pouAatoNeF4MtVHc6m9XNDQwXVTiBYsZTxJoSrCmBncAe51t4TZ1kmtZGoCLXkSUL2SvVdc82ne7bw8y15GDrVt2y: '100000000000' - DdzFFzCqrhtA2vGMiYJss5afhtUN63EdLJk1mxnvsXzhygZgajKzEVxURZpu3EikvVAppnAxgg4nfRJxypREE9iGjdM6qx5cHj5Jpejw: '100000000000' - DdzFFzCqrht3pM6bqHYcJRsYmiLD7NkTnty5AUVtiUmnUiGrpg5Rt5xwmsntBe2HDrsrKteSTSDbfoydXALXk89Kzdp9JobQbp9J1VvP: '100000000000' -# "liberty", "lens", "entry", "marriage", "bean", "camp", "phone", "charge", "alcohol", "boil", "plate", "banner" - DdzFFzCqrhsr27QaZfATYvsqjV98vMFEgvffD4tRsPefxJi8MHHoFQMEJ1ZV2msWyCgYb5Etgh4KV2Sh7YL3FgwJHuXLuVTYv1acdKnY: '100000000000' - DdzFFzCqrhtBb7mNhy3LowyiKRjci48zwuUqXGzZgvDSLt6mWWdgw82zmLprfhmLK3pS3JXYSJMPfndcUHBPWWNmyuS53nmhNF55CqLq: '100000000000' - DdzFFzCqrhsnB7u8SrdGTMgf3PVRUyz9gzsK3YCaDEP8G4rytti9REugshq2CCstwpTkg5iKguR39K61vTkxeHqZNaSqPB1ZATsuhoTj: '100000000000' - DdzFFzCqrht2Bhpc4Ba6nT8R3zAaiU14vhJRSSHgtbGYWziqUMiJ6FnDisdhVtfyUqyfzsPvUjYWGk37xHxqDCz26427wXCpAN5j2w9C: '100000000000' - DdzFFzCqrhtCV7RYuxXAwLnAu2rkmcVKasbuTzSbjwbQPxHzP3KSbVudmTKgBpRfnzM3CVs6p4nBeegnqD5KC7v1oXjfw4rEVNQg4gVC: '100000000000' - DdzFFzCqrhsuuY2n9bbyPKxT4ZqqDVyAvFqEnRnjabaDPDPNQrxPruZEGUVtprsQtTFs4h7kGisCeF97Wi1GSaaa15EFSneM9QM2k6qe: '100000000000' - DdzFFzCqrht6j1wgApngbzBXbnpFVQfPg4JQ2b5C8U8pG5M9cWo5v8rAVo1nDGMPphyfDVPjS5rc4sxb5y7MXNjb4xsDjEZ4UwqvbSYn: '100000000000' - DdzFFzCqrhssKmUtBsrjbWL1iT8oSeD13MXh7yrkVmecAYv7pUYfNSr6XRT7qQWcWHJxaYYuPwt2exac1PBTpZV65zapvbnMLzu8wmd6: '100000000000' - DdzFFzCqrhspPtL3MfMcHeSZ4wQUvac6SPGNCiEHrXbqfzQ748Ne1ZUMmBUzVkN8RTZXqGwTPdMXY7qnWRUmBGoS577wqvint733qRNK: '100000000000' - DdzFFzCqrhsr86UF6Y9WhdAY1dFyv3dkwhGBGwNwNx19wvPugGAyDEDwmyQgVTNfCHGZM4FdLSWQzwfXo5DxDRNLyizsX3DHqhCzucAM: '100000000000' -# "talk", "glory", "minute", "include", "flag", "stuff", "laugh", "auction", "benefit", "escape", "confirm", "task" - DdzFFzCqrhtCEPtsXCc19jpjRZX1yL3Bfp6FfP333DZ4w5R6dCS1CkCAM3eQrF2dsrNs9YaanbhBoYoZXabrKccYDqxiqwDCeXjCAy6z: '100000000000' - DdzFFzCqrhsuJ4KGXPeq3D77Fh4qgz8XKkJwmfG84fEhcftKyDVGzfrpPsp883F39aS2DFAjACLUVDKuxARh3TjnRk8hbah9YLbJ1VFA: '100000000000' - DdzFFzCqrhsfPshhTyx3fsWoDA4JpYgAeUZYaAgwumDqF3E5is8hpD3qQJspe5SrktkZpkp4ACSJvz6AEHEGqA933H6SBCBAdhS2qHTs: '100000000000' - DdzFFzCqrhsid645qK4Emgvho21JkCkMXNNsjeYDnGxSFtuy3VVm6BSvGuWSqWptkz7iu9E929FaWVtnX7Gv58Re1TESYNkhTcrFBnBY: '100000000000' - DdzFFzCqrhtAny6YTDBw9BqR6B8EjhYXk4f1FYLGBBqHktdetgAT3MPKtgBVHw8uw4DK6Das5Ya4TkbmNqwgqr7R8L4H352YsSfL3X7B: '100000000000' - DdzFFzCqrht8qqQVBVJ2mcZgqahX1BQ1393XV7ZUzZw2gzqWy17nRdrCvPLhrxULWFuxXmtdYYp939BSUuAvSWsFvL7ymkeZbvdMEcnE: '100000000000' - DdzFFzCqrht2q2XaYTfDdAzG69xZjdFtYj14EJTkUdJPTkFPtDNzKuQGjrbNwgYi63GrYCLcKq5syU5iUcFBHDSYUVJtu1bLaDVg2i1P: '100000000000' - DdzFFzCqrhsfHLcUKMopeMSVjbUU1waXdYzdvsoBEnoQGQ7481AMZ2SjbMhfqaELD3baKuR9UgtpEHPtdP4PYBNcAH5qL8fsvEMzrYzz: '100000000000' - DdzFFzCqrhsoBY58ytmcdEPBpcNsNZSZWxmc4tUajwtn1f7BLYWjuRsZCj7aYq1ijesCTVJKQ3hNSSzRzYV8YehCZQmbNN3VREzDQYuU: '100000000000' - DdzFFzCqrht92ihcWZLduFG3k4KiGgmQoGhSBEPExHDCh2NbSqvra7GNix2RjYfWX2otBy1iv8CYQQb4g1MrtSW3CT9Fj7fg4pmuf7Pb: '100000000000' -# "joy", "convince", "reunion", "increase", "core", "venue", "palm", "scan", "wish", "vault", "until", "rice" - DdzFFzCqrhsehNKvbiX1iEthbn4sT1nucdcrAEeJLnMs9B8SnGCaQNvq2Dafs4SikXnRPc1hdH9CuEKRNN999jd6Uo6umqeZd7pcLGYH: '100000000000' - DdzFFzCqrhtBVnrSLcUGj7wH7iyf1bHrtnrHcoaUWg9YQf88NC5xoDpwuxEm4huiLhNN8ti8ptX2GzxC2GxNnWT8oXx8snLCcbvZgdMX: '100000000000' - DdzFFzCqrhsqmv1XXKrBZAR6fQdjA9DdHW1pfgkPmrak7qSmbvZTA2XwXfPZnc8XimHLLiA3Car9K59StccqNXBqyBcsjUxtQRSHyrER: '100000000000' - DdzFFzCqrhsqzdSBWXQkUJ1mJWxUbPgXo3vFnTfA7A6G1FbFTeaCgp41PD4cSbr7YGdy3Xe5imXGRnds6mTeecC1WTVyqBiE4A71FJAP: '100000000000' - DdzFFzCqrhstAu5KnBxgNCTT5XJdYQ3XYwGmsp6nuGoPXtj2wPGY9vLEzvsAYw2hmkei7EBpPEaEE4jw6fnJGFgQeyZj7A9EFUxRF9aA: '100000000000' - DdzFFzCqrhsqiQdYJSpcLAPXpS3ENoiQKbXRemTrZL9fUvFxWGzqtViSihqhNEBJFqQpTU9AWw81M2vCrLyDNV7Q3wu6MgnZkSk78u2f: '100000000000' - DdzFFzCqrht1BE19pzkzzPFojKNvgUHLrEQZUqDYi5GSnyoAu5n6pgUbhAbEtdY455QEMbLQU7sPKgL46hRf3Aydr2uw3v2NycVsnc9c: '100000000000' - DdzFFzCqrht9YiSBaGY3xNtoKxzRjwxGAqVVaX2LcdUxvPvwsbmC8mKaVDaCWpbsaMCxL5zZgcgd6XcykbV6Rp5DEH2UZ3t9kVkL8pvr: '100000000000' - DdzFFzCqrht7icQSvUaNXxLMbS11ouxKytJf6ZetARe8Df1fzoSA2jYAUtmmcBUs7b6Dnbg1Q5RhYWsbk8GksMvpfVA2MCxc3C7fAe2y: '100000000000' - DdzFFzCqrhsdwyL5Xdjz18heotupQcqGcaYwiEq4m5CPVN1Fu7x7kbx7FRdgvVbh8rsAJcoDc5cGj73ZNiyQxmBL7tXBMWu3f2y71QKY: '100000000000' -# "walk", "hybrid", "game", "vanish", "mushroom", "win", "observe", "crush", "core", "lamp", "mirror", "twenty" - DdzFFzCqrht8ZUn39jnjtfCFQsShGLvnvogzrHV4mhBSwUabMduz6p9mKLtkVWrSJWGFJsgFWp9QwscFNHf3mcUQxot13HV4tbr6cAv1: '100000000000' - DdzFFzCqrhsmD9xRHRAPvmsBmTMq4MxF2Ezj85zrbxYLsktrXeYmeMbdtdje9TKFcrrq63bX8mAG6cX6PYdPVhzSXamrkRkefGGp4ao5: '100000000000' - DdzFFzCqrhsrXidYNscXZFyKmEcfsoFzpgn7ktHcUHfqVX3xMFLTx6hbYAF4q4sb76E7LDUpHxB5kuAkqx9jyCe1WaURB9eSVdU1uSuJ: '100000000000' - DdzFFzCqrhsm14cAPAMCk77kG7Gwu6YsRqhaJsPsybZnq7yru9YX7fT1VgSgrbTzkP3zBQdq4otjBMc8ecPbNh6MWt8k8ZXiTgh8gmFi: '100000000000' - DdzFFzCqrhsqqgKJTCJqRHH4EvDMBt8N2JGTqD98qZWS8vKoYzKYNVsgc2YvenK2thiwoyJHGPKWBRZ216mpgJXq43zQxt7bZ3QEqKhv: '100000000000' - DdzFFzCqrhsidJNqfDQLNiRVprzRhpxvt9B6dtn1hzqyCKhqchnKLhjLEu3ESVzEKGrc5EAiHHY7rrP2zFaSVmkce1DNUkEhFVBy5KuX: '100000000000' - DdzFFzCqrht1QZdEH3vdXTYrboyKzhh6Cn5r3pxkN3TYoN7oiTasyiR5q4XX7qF67o4zCMYnafDgDczehqw2KipxR7boRku5Nw2y794P: '100000000000' - DdzFFzCqrhsiMhkHeXDNRHZzkBNzzGssqgFqFae9VrZ9fV7USUN4ogD4G4DQAyYiAg3tdZ4D2vR3tWPWwTsQWrjSJiCyjBkSzbirDvo1: '100000000000' - DdzFFzCqrhspRmwRiwjJF9ZHvmNi4FGYCMEATFiytAm8uweRJFUY8pm89NSdGAQWG3XarirFoK9XXaHPGuDrzuUREdkNkz5DkyTFtBaH: '100000000000' - DdzFFzCqrhsejoW2qcdB81U6LNuhVae3hWX221V1yx22EjyjGMrW4FcWJwPnBx6iUwZQCrCGkQmh1K3Vivjj7MMgD4QY8C9KMBe4QVYF: '100000000000' -# "hold", "joy", "grit", "great", "quote", "retreat", "famous", "wreck", "busy", "faint", "wish", "fetch" - DdzFFzCqrhsqie1ffztHbz3DbGSTeqYQDqZMQk7Cy65oMqm6zXWAHRSeJnboMr1txHtcLyRF9wFuzzk6SiT2C8DJVupN3ip5VrhHKij1: '100000000000' - DdzFFzCqrhsiVXMXwGUwvKkgwrJg5Bm9GR58hE4Soxpy9SgtkWBPrG3WT4bocxExNTHYVy2KLz4CGMf2DMBDL1v4SXiouKCio4LMNoqv: '100000000000' - DdzFFzCqrht7hxr41HJ4zu7TFL6ZN2Rr5Sz9zPshdKboXgoeb5UdMMFqPsqrxtkCmnT2mSVUuPi3RxdqWpvrZnyq2mRodcDxMHvsjnTa: '100000000000' - DdzFFzCqrhstfrqD9djhFjphQwE1wy4vSzfNJAXppHSPGxbw9cfPGHD37qmVxS3icC6BuAg9z8pqSVnhVjRbxv3gnE1tjLfGSh9ZmqNn: '100000000000' - DdzFFzCqrhtCBca8t28wWgHPLXrqVbRjpMGo6ntAQbBVmesnUkU9VnXpfpiHmv3xgu7QT3MxoDzgvM22hAYWb5dWBjNy4ZPe4tnqVPfH: '100000000000' - DdzFFzCqrht3P8aqQNHnGFvJVsjYBTMWyYHeCt5KnsB1yNBika7kPsjBQpAbeA9TZZRuRc7fcB1vY4ZkPNiRRL76wL6CDvVLTwgitikt: '100000000000' - DdzFFzCqrhsyL9J4HTGVY9nojxhrdf8rSTrWod38VoXYRHtUXMhFK92Y4bmHsYgpvVqKk4wUjJpzHAEBmHbAN8bxKZHKCcz759hou868: '100000000000' - DdzFFzCqrhsnnzeUWi4xQu88SM5Bn2dZWFPQCEzdexgoWWRkck3k8s5orNA9WLQr1dGnWmekMeLKDkspBnEZetuZBCa6tXCvGQGng62L: '100000000000' - DdzFFzCqrhtBoz6w9wwEnxoMzUp7Vr6S9XwpHQJWrib4vJU7SEwPbhyKf7JJr8ZnDfqUe8rbySddMGgHNUHFWZNAW1sFoapmF4ncN8Zx: '100000000000' - DdzFFzCqrhtCw9zL7n6dtmgeTvqcrUnYySoWwwKgacRevPY5sxT4MbjBzVXe8LLZd2exFWZdLdmtJ9bVNZq5bqdeXKay8SeY5311J4qx: '100000000000' -# "future", "obscure", "glow", "valid", "wear", "boy", "exercise", "member", "shoe", "add", "country", "spatial" - DdzFFzCqrht96nPuZyMinb3AUuoh9XLtWaQXX5vBogv3CxRCu1jAGLAH8Ls2Jk3Q6LfXZvJ2jYzkDxB4VsRbqhFrvLJpb5ZPUX8N1qBY: '100000000000' - DdzFFzCqrhspDHCaRX8fhK2tPg8V3Ttdfqqv6LCfnL1rKx8XiMPvHTCxghSAZwMr316jRrtuy15evxdtNd4wCsy3wLHGiK8ALLCuga9L: '100000000000' - DdzFFzCqrht6SqeTkLsu4BCz1p1iPiANnCP8spSZA9vQWunUqKHzXQwqCBkYHvJ8T5cvRC5zAhyFp1HbTBsvYZtHTdBCk1DSPnMFpgeF: '100000000000' - DdzFFzCqrhspimnLiNraenn7vZTB2qJQySoJa9jdLzjiiHECUTqdfv12X5JDc2N1jP8cHHMBsgBR9uMameBuWgGkQEmvgERCctUHuLaK: '100000000000' - DdzFFzCqrhsviVcEcCKBXwfTVFV3J5gSzA8nJzgNgxLeoHRGEua187Gkyt6ZkypavHgRjd66kdx7KUbNKU3PfC9C33e7NEHU1Dx48ht2: '100000000000' - DdzFFzCqrhsgoVMKe6GN7HN4feWzFwoasfQqsGytg9mg6Ex2zjvVendKrLKHTgzVu2d6AF2K1zShYUHVCz37kXVcJvnLgqmTvrUKrUWb: '100000000000' - DdzFFzCqrht4RpH7D7toLDRT2QKrx6m91TGWh5Dw26KrCXqxvY5PVRFvbh9nqhPm6BN1bGohWDj1yheWUsucETLqSdet7bfivwetpzR6: '100000000000' - DdzFFzCqrhsywbCUoqj5sXi9xK5Enut1xZmDHEFYNnJt2gh7Tsydi2zLDEEgpkL9oorNJ85BQ82M2kGTtBv8qwZPFDmoNKMmMPF7W5iH: '100000000000' - DdzFFzCqrht8VvHj7E8pKYfcY4gAf1vzFZcTr1YnYVPJgHanv83pc4CzPb2E9y7AmzrJCJa6BN7eDXXEjAasUiprmUTVURkKHjSJuZ2S: '100000000000' - DdzFFzCqrhsxZY2sW89zcsKNFvaTuG5tb3nsCnzdfWDuc5vCbqh8986GRyK17Yd6DpQ7P4FufmUBGQH6phKHk5vh2QD8qREErqtNRVer: '100000000000' -# "tooth", "option", "satisfy", "patrol", "amateur", "height", "above", "air", "struggle", "reform", "speed", "mom" - DdzFFzCqrhseTob4UBFTJ14S7tfetxzZGmf2DsS57LXuDib7mX8JCUqpmyDfYqoyyKRDTvLByZkxS9GQp61YYz5zPmTtkLwjyaYpidEH: '100000000000' - DdzFFzCqrhsrQ6HrGAhhvqsvDTLbriJqnqHTAR9p9bcWr9C8m6Z8zRAzAVxVcDMCzp6dBkwf4yu7fEJXVLNv2KVAMZXbUb9MNz8ZA6AU: '100000000000' - DdzFFzCqrht9upMHEsV7LkJp9dFFiQ6R4ciArrR8rGbjbThvNSuTeTPWTCsj6j8BT5Bkts7yuUjE9gLpDpoLDVhSFTxw4Ge7y2DhpmHd: '100000000000' - DdzFFzCqrhsxZSWpmJTfXPjUFzq9YFz1NakSHam6fayRXF7gEZYv6JfWvHCRk7UbFjD3fjVdG7ukvg1eT56XfJNySZzu1Njt2ZiLitmw: '100000000000' - DdzFFzCqrht3Gv5U1Ekwt2gcmCdyZG7XYrD4TQi3fEPYZGBneUKMiT7WFWCieKA152VRj74hf7QqLwjDjcfM75vHTfqSnT5fJRkVhdhz: '100000000000' - DdzFFzCqrhtAkkHcqmn53L15oPmvuh6ycm75QGAmhNNDaR273UjDCAw27b8KSydHX7bGoypUyoiR66ug7PQk8eimg58G5jfU9JHFoW6J: '100000000000' - DdzFFzCqrhsrHfuXELg6C3Q3jYsWavU2QXCXQ9VLGFkPnYX1CopJ42i17epaT7KmKYvTPfRrFmM12wcwqRoM3VipUj254sqcTai6tWQo: '100000000000' - DdzFFzCqrht8Au8vc1g5UWEem4Nwvc7PWXnvcmXcqhLWhGixABtU6SYjq3Yk5MjYrms243cZwiNbqBgTjjo4jCbKak5byyqaMXmBViiq: '100000000000' - DdzFFzCqrhsnUNZ5DWVetCaseiviJ7KmX3dpLmJdRyBAWDmPSAxkepSVTW9zuxHpQvvDMvp16TKtMzoDVoqjiDSFLFggx5S149dZKcZm: '100000000000' - DdzFFzCqrhsexrE141shQ9GSabDFGuhgW5H8TR2U7kmSP7A9F8e5hWYtUDbaHew2eKr3iBbfxRJBGXMmykYwULo3AHrGCb7HZjWmjN7i: '100000000000' -# "word", "cruel", "plate", "hedgehog", "flavor", "judge", "device", "tuna", "amateur", "walk", "open", "reduce" - DdzFFzCqrhstpwMupeBgNya9wmGkh9bYsyrZb6bz9v8a4orynopWp3mNhh4XZoFRxPHgJ3cTjCEHu88CZkdUiopxBdeptZ3SvkhSEGx2: '100000000000' - DdzFFzCqrhtCfoX5ssz6TcuiYPXpxSZRkcZzBe4tm13m1r2J8xXMUDpt6eCZRZyeus4DSWkxZxsp3za1MbWukuDKMk7DbNEBNATHgZrD: '100000000000' - DdzFFzCqrhsuj3A5C3vQD2JFmCCpQybhYNpnWf8XgAidkoiepPhLqEDE3n133STaeA4Gi52GGVbM8N3WLWDv9eg3YbWMTuCbMuLrFKpK: '100000000000' - DdzFFzCqrht66Pd5cbKxe2B6tSssiWuiEYukctVVXib6VzpJtFbPJ6H59b44zPcdFjqj8nWzXGcQG3j7w7kVxzRfWGPjaeuhN3oSswdv: '100000000000' - DdzFFzCqrhstemddBkQ4FdLJ1zw2RheCnfVzuhdA5mZxMpjkehpVAZcerhxShuYfEghytuxvb2xBXx2CyUBKuirN4HAL9VpLN2sTe1CL: '100000000000' - DdzFFzCqrht7ECrWLALfcNFpY15t9uFKRXBg9XnTeL1CZKaeVaYcozYPLPCUJPFCafshs6Ut4KsoDkcFz1szWK5ETmpbmP2nKuRbz33D: '100000000000' - DdzFFzCqrhtA81Nd4nvEy3Yed2AMazNJZAdxWeYZ9Y5GV2ixiQnEA2ZTByMNQQEdGwEtqUjEmHjsS712TFBUt7rwkx3mz7pVwBqaXXDi: '100000000000' - DdzFFzCqrhtAhTNyzGV9vCXAvyaWd47XMcUEmWnUhFQaWfmRwM1xa6d34YdBvZdbCXgnMhy43tVRp3kb1ojsBFvhYYBS8JJfQcGZLfRa: '100000000000' - DdzFFzCqrhsjau1oTu4CtgwQVe68CCELCrYX48v92kQbSQvX9mV2sMtX1pfruYUivfmMmuhDV2URXs9Zii8rBvjQJvizEVQZhkebcVPz: '100000000000' - DdzFFzCqrhsr3hg61iDP2sR67k77WpjJ93Q6Jg1jW7rwuG8SoJSRfkyciBdPD46FtUTC3LMk53LgYNogYLDRvAMzoiu2FgVkE3ssFALg: '100000000000' -# "right", "energy", "oxygen", "eager", "more", "direct", "yard", "easy", "luxury", "auto", "knife", "loop" - DdzFFzCqrhsmGKjNiAn4rUfE2w6eU7PB331snS4mVNoJtN1F5Yp1EFuVJC1yCbqK9V133C3DEVWfQKLo5crfDv8w1XwXRevMrJve5AQs: '100000000000' - DdzFFzCqrhshyFfBWD6xzdLaFE7nP7cVmXJBxqZfC1ACTPDzKwbFZQFPr6v7JKUxBSN2XVQSaEXNLhWPYvovL9idPcY7njZPYVn4sc9N: '100000000000' - DdzFFzCqrhtAZHCrJBX2Wg4ivSes4rSo6App4SaEXLMdqNgFFb6zeD8APtx6TSPddgoZHMNpcVttpfAmL8AYu8xvycpoKyJX8Z5WJ9iB: '100000000000' - DdzFFzCqrht2nE3pu7fiuu7CYxDtfCy1pnPyRSvEqiRpQjgw3AuRHuUqwMnt69HfFD13WNQVB92EPFvCxBRthP93SmuJw6Y1CmiYffBF: '100000000000' - DdzFFzCqrht2FP8YFs5YkNf2Aqo3wYXRQRZT6C5ydQ1gHeGUiQDojMSwj5fZXiHNgjZLwSoPU4d3ryD3NRVHwVTUV6E2Ajf1PonncbJK: '100000000000' - DdzFFzCqrht1mSKrFd7zbreqbyA7CbECQMSUMwd53usRCL7cmjkweprK4m45boob2hpjKLnRjq9BWd2JkfAfXcbox6iWgTQzLDWy4sai: '100000000000' - DdzFFzCqrhsieTqw5jZwYoG5ibkuJXbPhdQHsoGzTxMC8fEacK65rgTkZrsMdjNrxbJCg51XNe2Z1DTfgbRhdY7bGv39Sgva5dn7R6Js: '100000000000' - DdzFFzCqrhsfysRg51kA4FxFWm279ZY7646jhxvFjF8EeFSb2RBZaTHD4qEUoVLA89gEska3fr6K934P1SUh5jRbfTmemAX8oXZe79h2: '100000000000' - DdzFFzCqrhsewZh2mPZTTgxEJa65UuMZFTfMVYZdgkNu9z3zgL8psq2Sx3iGVtWbvHPpW5rDFgtqkjA7FJeEz6QT2JJ1mANMffvfsNwp: '100000000000' - DdzFFzCqrhsnDWzJ6eLMBiC3yNAjFTnUwuWTswT71SLMJew1YdVCmdcsQNE46fYC1AT4zj1zMPMH5mBNH8hyQRDB31mD4erEzsRQmZg9: '100000000000' -# "huge", "race", "host", "involve", "win", "interest", "salad", "box", "fatal", "cherry", "cage", "pioneer" - DdzFFzCqrhszjaKta1B5LawWmwHzep2gUFLPcY2nTMmrKnBva2gM7sVPdAZ5K9quRmPMAv25SjXR72QZYsM2d6npyvD2tYbKkedQrB5J: '100000000000' - DdzFFzCqrhsidhXsAkgn75ZW5hBm7GU3rVx9vpHUERVozN2imdF7YD5KrRjAxyqMvSpanC1qk4MTRABBnQUp6wUTA7Cxq1kfpb1H59Ec: '100000000000' - DdzFFzCqrhsqKffUrbcrUQd3TYKQHNDYmGUG52yHJC6Bpj2xGiS1SmibXbkRPAfLCB7t7WkkChJ9UNYjR671KShb6yg2UmqcJDVYuMRa: '100000000000' - DdzFFzCqrhsz6oPnwmPFD9Q71EXCp6UjqPHT7DhsDa9BQiCdDQQrnMF6kvX9ZkN3xDcv2fkZa4FsWepL3KJK7KgCjDu5HgC69LbptprW: '100000000000' - DdzFFzCqrht5v5msg4HLVFPLtT7ndyAS51uCxgvSVvTSyGrLUFPiHPJE8CCLgr7eHp3BYN7FPQyz5z26jKeXA385K4Mu7MfeoQTHxafH: '100000000000' - DdzFFzCqrht2qEERrHHQEteoBBrohrGhUDsqoC2XJmVGiueaYYgKozTN2bR5VtzDUUzBepmMYdn7NWJFBoQ6rGumqDpsX24gxJ5b3MJ5: '100000000000' - DdzFFzCqrhsrWSBJW2xC7B3DLfTB82sa1gc5pyfyLewSDc7edF1w1LUv6xMyWFeLV223ZEttxF3M3EcPYbP9qYKxxBAjHYr7xoZ7Swhz: '100000000000' - DdzFFzCqrhsuVim8EiNU3tsX415aJZ2UVvYTxqVEi29WSY3QknwwiLptKB9pUC3gnJSxbjCcsJoxcxT367aoCe26BWQ3PrvxXnCNCeaC: '100000000000' - DdzFFzCqrhswFzx7cwCX3c5jDPye8aWJ1h9h15rMvV4CXstDCyJFvLWhgvyBWjktKbvyk2u1MHVWt3F159jT4c9foHAYR2pzCJq2yJG9: '100000000000' - DdzFFzCqrht13bfVTveGynbJjCdfvbFWYbALziEvVzdCeuMWboEvyQg9KQ4xfBick9arDwaHSCSmsPvRaqVsMAkiYhJoxUTSRQa3fut3: '100000000000' -# "phrase", "rapid", "fine", "neglect", "already", "nut", "note", "chair", "mushroom", "rack", "ivory", "riot" - DdzFFzCqrhtBsYvva6meVRXmcJiqdoDeXuwMF95bFcF6Xm1Bis1b53fbHxYu6XW1HrrpLNZuR4Awcpkd9pWjcmEarJCyUmBgr3hzqg2C: '100000000000' - DdzFFzCqrhsgiYV6v7koQ6Na8pyoQ5cJPr5Qpf4rSaBbPTnprk8c1pbJBmX8L2XDp1QgS5zV4dwLkezAzXKRPjqJNCvkdzWB2pto6fTX: '100000000000' - DdzFFzCqrht6bncAcUv2Xkc8H3C1Ac4HbUZwFz5BvX4p66zdPNtyVug8A1eisRwVYpmYRuZi1fBYmG91NqGModmdTCGuJKjsTKyN5Cbr: '100000000000' - DdzFFzCqrhseipkRqSWnEFo8okC2kJqBrNSyLHrooSry2ig9JsWCNp9XGWS9j4ifMD6pJEeiHfYqqpipJoQF5exiKhmLCXaR1HfbpwHK: '100000000000' - DdzFFzCqrhtBWSfB52qb4R426ammhF7nQtLPaFGFHjVH2ZLtrcx9CEZq4AdHwwa9XtkLrrKF43BsUTyeqVaxBRi3WJbvdfsgBytFtMSR: '100000000000' - DdzFFzCqrhsftBgnzPrVcKLsVyjrPq8QLJPgSUUqK3diVQ7tcufY8v59kDb3WJtVs1ouQUtSDo3Cn4GspMx7mxtFaVDH41x2TvjZoBL5: '100000000000' - DdzFFzCqrhsmAN5s6AB2iPnA1Gs7SF78ZSKYCjxtNjx8NxgaJXG3fqK293UbVybEUb2bTPFN2BzPuUydU6ygNDp3XcHEPZGnXy6SjDRX: '100000000000' - DdzFFzCqrhsnCT29uT5DV4cCqBpyWDNQqeAQ5BcqG61hB7ttdkLyjYQ2gMwV28zd4sxvGpnLKHH161EuSZi1D95YnJ7FsEhwSYrCMxLK: '100000000000' - DdzFFzCqrht9BkyJ6xmEzVgy2A3MYkWyC5CcHdRFg6P9d6DPedLTJfAuaMBzTuhUdY3uTHmynzrNYeZcPNWMr685mS6aMEp9WzQxctbX: '100000000000' - DdzFFzCqrhsjH8ZrptUx3Lqn6a4KHT1CEs7Kc8qYJPnR8JM52VDe2By569R8gYd82VGTmmkNPMSGjwp4CS7VfKkcjSvR14sfgbGPyquN: '100000000000' -# "ivory", "citizen", "rule", "scare", "angle", "method", "bounce", "caution", "noble", "pottery", "plunge", "resource" - DdzFFzCqrhtD11vYVXP6x3DBujPSbd8bjiwUwuPPRyPbJqdTbYTFvRq2az9WBUXPp9YxWa4To2tGdqmUWrm9xjRMRiPfydDbYWnUjcGA: '100000000000' - DdzFFzCqrht3eWRupXFoukzrNo4tXApqbMH56KsxYBC6HDMSJ3XKxLugg626agrbiu5TBqXfjr8fdryhrkBsHwXyckkMxqMwEAU5iv8u: '100000000000' - DdzFFzCqrhsjEQgHeZLBcKVVHoN8tkZVXXyQSK8xchmSGUegSDQmq69mdRL7hPcfqfNGh7FrUibX9UHAaCXjpQxRg2L6CQqN8Q1WjMCG: '100000000000' - DdzFFzCqrhsmnWXeLsNdoNZcphmnUhTD94XcjfCDoV27DfYmVA6umVGfarH25fG5CYW5dDUB4hmzm5ZySrNgYstZ94umfJrjXxDVUr6V: '100000000000' - DdzFFzCqrhsqWrNWvtTwi16EY2xxjwmELa8gB94fwkzk2g6vDiTB6T6exyvhcxsKKRnFWeTPJquuJqeqMmmF5oTcMpcqyb7W4L3HgaYE: '100000000000' - DdzFFzCqrhsmazcxguukyfBwAstmuDZvtZvRSQtYexveR2BrC1ZB5TCscAr74EGcthbbGSaTrui3VjpmRXzHw9GU3j78p3AaQUkTcnPN: '100000000000' - DdzFFzCqrhtAA64GN6rvcr2wMQPstST774T3iePwyRD93Av9GxJBBcA6mKmKwdt51xpjjWf1NFo3LyYwhh6AnLDE2yt4ubZkNatTtm3t: '100000000000' - DdzFFzCqrhskiMixCwBP5xXjJd2LV41gKwFe2qMWWbznenBxgJ6hRwGGP2yToXwznwc6anGrVixm2SchpHzwG6NDDc3UN2CJq6YBSfaS: '100000000000' - DdzFFzCqrhstXqSybDkiKY3QHdFAV6sWdkK6PV3Qh46s37SxSjtLJdTk1g9oSGH4ZLYUye1anZLRpbeVdtTY5SiEZFatxZgZeuUjHtPJ: '100000000000' - DdzFFzCqrhskR6kYqddQP6m1nxm6HtMnFkFkMRVKoCyNSQCkAbM3nmtekHZxHE1YdWWbV28dH6sdJHtGtXS8akcBFtqrbMQTdjeixEhq: '100000000000' -# "behave", "attitude", "glide", "else", "have", "moon", "settle", "minute", "provide", "trade", "negative", "nothing" - DdzFFzCqrhsePBoa7AM18nPP67xoBRtYeox6PxhQLhzBCxBNBSvxSbSbiKGe9cCEVcpHya9igKFktyGnxRAnpczHbdt5qQvEMNXj9eML: '100000000000' - DdzFFzCqrhtCSo68dDjR7AhgiUVUs2AFhpsL3PDppYZgJjKV9d4ST656e1HAjYixdvasGu4eKP4cbLTUe1X2YSoHs5pPJMTg9isJAa6T: '100000000000' - DdzFFzCqrhssveYPKz2V8eBJT7DSx3cP1eDzMJzyo1WARiD79y8B7L42Rp7XjmzcdgL1hsda4JVHghm1jQj2xHZrSN3Mjw9RiPBuWori: '100000000000' - DdzFFzCqrht6mgbjQnSiz42d23v1esngXkuqWSTGbChgmRkGCQcP96VmhddYbzXVTZtZoXyZuvvQMCMkmpfo7RC53iR2pHqMg7tVs51i: '100000000000' - DdzFFzCqrhskHLdDjF3jvVD41NAdGqGL6bZa8pgNuKmTYbRtGWTV2YdWkGE5ATuqXSjTYYFDvbok73d2zDnnuUmoZosJSFSUChpbi7Zz: '100000000000' - DdzFFzCqrhtCgDcuE4AHFYesG1XSDS5hELrctspWMjZZ6zc6f16wDj8aEMKZBtXT5d6VoT3VqmguMV1rqDZ3Hwo4ZzmsQHiE7VVDuHw7: '100000000000' - DdzFFzCqrhsoazkWATWjoRtbLHJcciH3G39PWnXTRvwksCxo2Y5AK5rvcs1dfQXu3yejWrBEmotHowNmPtLTfx3DaRCfjv2xjdXwwk7b: '100000000000' - DdzFFzCqrhsrC22jQo6rfgVGZKUutJPW5e2vKTHC2c5nn3jGTw1DBEK78MWwHXHq5KVDWTQ69wf9yqWV64da8QnM6ke6iY1uAM4aX6yT: '100000000000' - DdzFFzCqrht9RtDuLeCZW77XGxTYVByen9JBxaj96uKKccCqEPmvzfvHCYS6ucFDYYBhAEqFqg3ejWtkgsZBwTUA4rSthRbgqkg2c5Vm: '100000000000' - DdzFFzCqrhstpgnjboHWpndAvU96xaDFfzabrG7ZxEHx5J9h7RsckBSiAGFryeyRV6VfPWxMJC8fbsvoZjrpw6fRD49bYnUJiJxiu4WW: '100000000000' -# "diary", "chunk", "total", "cruise", "they", "curious", "foil", "actress", "wish", "universe", "grape", "kind" - DdzFFzCqrhsrNfLGtBDszf4zgw1LLfXEfeG7p1xq3ubgyysppojYWSD1S3ks1y871PTGQPUJhr9e3ynWBJqY38Qno15PjRLzPAP1mjsv: '100000000000' - DdzFFzCqrht7YUutvA8M2dJDRpTkrS954ufZx6bAYZGfx1zd7vB6hH5viuyRRMbrKjAzuKLPPNj2ztsPDzdFFKSaV2m1bk3DrKXaxpEm: '100000000000' - DdzFFzCqrhsiSV5SKmQVBgNMG1SJBn4hEU38MLHPDu2c1kfDMg56UJXG6EV8pUmTyKdQXLJYd4ce3T4Cm5R35JXF28HQP1NmFcfGWGk9: '100000000000' - DdzFFzCqrht6vqywvNZ3XYGEPg5pxBVDGrwd9KCL3SgXETnJYYgctjzEJGg2owhDMyvcje3CPydJRux87DGhceJ6RpsCpYR9V4U7vN7i: '100000000000' - DdzFFzCqrhsiz8vGAPQGQPhoXxcou8AWR8Yavr6zXBtHj5faW91tCSthdRkrnzDj4nR5x8r5ZNhbU2y9kLqCXgwGF8W9EAm5dB2p2nj5: '100000000000' - DdzFFzCqrhsnmJ3aUSkKX2YB1B1uhtdAkqEnhMgNSkaDYcmjmxCt7Yk6gJCRZS1m8AZrPSQFTVkCTvEXw9JfXLzgLdbW96odBWhfrifW: '100000000000' - DdzFFzCqrhsuPALKSafpg9uN2qLUvWTykAg9UXxqkfStE6hky3ER8dDrs4tasek5aoPKhjzwmrU91CcAo3LRZGQZCnD12v8jVQJjCRA9: '100000000000' - DdzFFzCqrhsezMDDoc4EFs6FSp1qQE4cxH9yfHZJHTNgEJyUFYEY49EkBJp7z6LEdufKZncG7waj3jSqizW6duQsksvyLmcn6F8o5sHE: '100000000000' - DdzFFzCqrhshBC2drNiVTAPUc3zc6sH72WVquMjbsCButxbU5hoqLm4MDDY2E5GuvCYqyDV5FCeo2yb9mUC7xmWTRXoC3EM9ypCR2tMV: '100000000000' - DdzFFzCqrht1gsp4NTMiMsCromT23af8CvheNnPppMNQjwXHXDNMG8Tm2CbZw8VtLpjTTjgWw5zwSuPYXF3g4fXDtpzsSuogPHKBXmd3: '100000000000' -# "mushroom", "print", "dish", "slim", "agent", "tube", "expand", "actor", "layer", "idea", "example", "quarter" - DdzFFzCqrhsiipcZJdaUjteUWzYaC3is3rawtS96o7mi2c8CKLCsmCGUen168uVxpjtL4TrrShdErMqyFzKdSmWCBcDYEgVH5Uym18hQ: '100000000000' - DdzFFzCqrhsfQcxQTStfPAvrDbXzBb9UY8DRiPjkxmhXEhaQvt5QBayaweSmbrgmtaqPNJucwA3sqDtGq1JZmJpR74EdhZsv2VRnY2f9: '100000000000' - DdzFFzCqrhtAiqawiEAobxWuo4yRKzYL6CF3EpSYX7ip1kHh5iRj74bAn6ngXsXTQMtdsinVhr7hKqsXkqEGfKrKnX1iazWnVvpiseFV: '100000000000' - DdzFFzCqrht6g5GdQotde1CSpSCQ3nQX3PtnBqPWHoxTTufi9pwPQa1QhEpDGXo4mqsv8cgEn1rmj2hxxJ593HNEAmdyi5KiGJzWPWc8: '100000000000' - DdzFFzCqrht2Bk7Wm38FXUoi8tMYmn7eytAKynW2sSGxoEKjC12tEkrgP8VTqwEPxS5Gxazv6UQtBUAYqLM8gCG5D61HPX8sHoH7BYXB: '100000000000' - DdzFFzCqrhsizfHhnqMrFdGSm3BDZtoHHPzCPbNGixV1nzWDYy9xfCdg1miwYsBDwFiM6frVcENrQx9KZtQqYfwgxEc34dkTx8tva3RH: '100000000000' - DdzFFzCqrhsmikVEKgvrgvDcJ2b2wS5ygpCCB5nX6Bih4DBT5G4UeeYs4T1NSsDGQ4k8zejxnV5zCGksBvMZ5zztcLoyNWvZAzr7Ymg2: '100000000000' - DdzFFzCqrhtCYjdYEeZtDEHq5zCZo4hbDxgtP8t4CUyPSDLFQYXbMgJKrwXHL96hrjE8fHLfLQE6EnmBNAz3zjERywxQnxkFmDeUrEra: '100000000000' - DdzFFzCqrht9PPqthaDdnnYtqNL1wNDQDwucsmGCnfKTNgz62bQEUwDCE2D6tXrn9mT1tdesPQfVoTPxtKGqvWhmNWVCRc6Aq5LudDAr: '100000000000' - DdzFFzCqrhsxUttsj4AwiQKbLdFEswoPGBPji8XaLUHzwW3w7kD1SLonudsTPxeDUWRnJtSgKwfYMD7ihXFTvZC68VC5pSXGojzU7fpi: '100000000000' -# "riot", "sport", "access", "grid", "destroy", "chronic", "evil", "doll", "sibling", "blanket", "seed", "goose" - DdzFFzCqrhsz5Aiu9F3ngXYzX4w2Kg1ZmrxH4FP4RtEQNj8sSoBp8zG5Hs9k2QwsrVeiu52fwRBhu5SvyPKRZWxRi4sqkwqC1yA1zbgg: '100000000000' - DdzFFzCqrht2ydUJho3y4Ae1HqhSLFwq9moKxLDQW4dHixA6v2XGrrT4KqcGNNjk3cN1N1Ectc2qs9JViabnQ5vQ8cuosCCBa9eKmznZ: '100000000000' - DdzFFzCqrhtBGsakVjnfBeMAAP2w1R4PVRXdfaVNwz5f96MhxTBoMsF3qk3hghpSp3CAXpwRkjUdf5cVAEm34AuEDMopVPeJTWz6YAAY: '100000000000' - DdzFFzCqrht7vHs8w41ehNKoLjQ81YaBeR4rqdQNFpL5dW4cspLzMPgnfLJ7FpoBB94io62wNz7XcyxEjjQrUiYGrc5bQeVNm3E4NCGc: '100000000000' - DdzFFzCqrhsmboHF6ECHkopHPfZnNe1CTMzo2anHdry2F19aojkAiUrSqxqLijE9ADxRRFBc8eJXveCVQNQ69UKUFvvWqh3irvo9Uj7E: '100000000000' - DdzFFzCqrhtC4sak5k7Ur17e7Stfs3WXHfD4Wun6YYHyNuKZ73YUpfbWPy42vz6V767m9uh3YwsV72CxMMd73sHZGBudBukygar5a65H: '100000000000' - DdzFFzCqrhtBvNo9S5pMDYfEmWBknyHgQfbgnmvC7Cfvn1D5JFvh72FoK4MJ4L5ZJnVpbfsnEYXjiJSdvbb3ZWWUbrVoyzRGdUA2i6o9: '100000000000' - DdzFFzCqrhstE8D9dQTxod5Atxz5cRnUVnURp2yWSgUHDtPTDh25kBq9w3PDF1MicztsM7ywdQExi5TsMcFaqSvgwvUFPMY8sQNcy6ua: '100000000000' - DdzFFzCqrhsg5zSxwqDMn2dyYoRTzF9bPgyJjLXwR6MdecedFLoQ3JBqPGB1C89gd5pDR9n68UDzG7jPKawcz6mX21hA5iWiDT4UpfCC: '100000000000' - DdzFFzCqrht8NtBkvoWbWenp6rghioPNPX55NvjsyXtRAocDnPTaLN1WyREEga7KQBqUWBzCEBkYamnFbiXb2qYF5ZRHKg3FvtFt9xBV: '100000000000' -# "pyramid", "song", "photo", "filter", "subway", "rich", "broken", "anchor", "blur", "lecture", "liar", "hope" - DdzFFzCqrhtAYNzJvKZueNn4kegSUbBCVSSMkH7DiAucbJeN86mRs3MWa4hzzn2fiPHhNXook4YT6ZxnQ99EvmuL4DkMRU1dPF6bRJ9s: '100000000000' - DdzFFzCqrhsdso2Acs3ZWRZsvSiacqTb9RJCTd2tqKtN5jJUwJHAo9mCih1SVpMoZvPvQTLvryjfK7S4k4nopra3CdXYerEAS8sXTiQs: '100000000000' - DdzFFzCqrhsk2LUttfUUtw9K3sbFgexo61H1UaRakYKarUT9BqC4NdCK51wxdeTAf2nWrpvk5aeD454HkwJzWZS4f1SDJnUqjwJdAwU1: '100000000000' - DdzFFzCqrhstL5nEaax7t1kpHKPzXS2jcMEPf3PYB11fJmyjRNvzj9d5a38BdD78VSCUFJrPUxoVyCmgVxqogi7FdBcjDkYP1QBZcQTr: '100000000000' - DdzFFzCqrht4WPKUCjXhWAfibm5Wo2bGsc1QwsDcZBbuNU1Rc61t5cx5Y1df7YrSteNdJNAMLimMfnHT1idmfGKA3vSrC54NjWZENFqr: '100000000000' - DdzFFzCqrhsjuiPr5P2WFmJzdQn8LiqixgNhfBqWSzQgpkjWZem5iYC6m9roZUUuoNTfRWEbhP5X3RqmsC3u7zgw9kUHnd42cZjyVPmx: '100000000000' - DdzFFzCqrhsh7q154dg5ieHsvdjW8pbAQ7mJLJo464mSPn1kccyNXT4yhwfN9YBSitVUiRGs4cw8wiy4PUunn7ssmtRxwU7nfwxBhyKU: '100000000000' - DdzFFzCqrhtC6WPsuyhqtVPmWEz3MdT2uDk6JW8gVEb2J4Nsi928Zmox9uKmEVXpzw42NhprGXRLiAgQTALRU8x3btiUdmnAYWXY4k4r: '100000000000' - DdzFFzCqrhsstkWYNBD3fpeP8xSXyQHzKySdNfSZVsPqQ1jjL8Du7YVBwB8bPqd8RJP9M5c6S3pav3Ys6fueage6Vf5MWGGmgvTZGKbA: '100000000000' - DdzFFzCqrhtDEKPFcpmBG8EXTgXKdUHFALzy9yBzasahChmSxyXFnUMch2LBFDgB6k2u4TtRbE4zPCc7vokG3vMZkJoxNaMVHaoZwV6Q: '100000000000' -# "sort", "crouch", "seven", "exile", "extend", "evoke", "summer", "oppose", "fork", "result", "plate", "goat" - DdzFFzCqrht1QvSXSVcFCPE7dm9eaVB56eMRUeKadtnREkHC6jN3WR19gWFscoAvd4tT9HB1GGhYUrdVj7yBYvh5Vg3G38Qd5jwAqFY4: '100000000000' - DdzFFzCqrhsu37FVmDNLAngSqp2fZoX474mzrXYHGM3bDeqsG3nyuu2rLW1bhndHG1XL9NoPikGXb57vdsiFGD5rvfXCTXyPNAUnM86B: '100000000000' - DdzFFzCqrhszt8RBxLWN8raBaqDR8hTW91qeohZ7KfcR4bWXe7t7CYZYmQGR4qzZ8qc5WzoqxVRzPEcTSi9Naz1SZNavMEXVGm92wmV7: '100000000000' - DdzFFzCqrhsxYoxRtXRHu1G8QjF42oLdYtUvjTUar19DTr1c15rWhfMhVaumw5G1T7suC7UGbjPSHzwNbEwrDzpVBRzkM2xUioKEr8WJ: '100000000000' - DdzFFzCqrhsfbYrsF3zrvznBw8aN2Rb1nQiaotFDhaJzXTTcW6EnMN8KuNqV6NRMPkZ31eps3PQ93FxdWXm4wdC6PDXQVaQ4N6R7nHmp: '100000000000' - DdzFFzCqrhspPG75WPd8Ff7SfSHHUj1ThjyX4TTrNdSRfR3Rf5tYc3KCHCsPTGz4bmZcQh2yYVFvZ3a97K8pm2xaYgcD97o7C4xjHh5m: '100000000000' - DdzFFzCqrht1M1m7hBpVHLTx5J1UPk8G6JEmjBpoHiQNpZDf9vFjTtJYHhvw7WvUHFEogWefTzPdeNgyMAfG99axy3bpAer5hdkMwywJ: '100000000000' - DdzFFzCqrht5yEbfJY72VZHKbizsKmAfWErHKmQ7X2SCwBAbWJys2SqZqwsLwek8xYZqFDyCP2j22NaxzwPojehgqdCqPrBLvAMa7A8U: '100000000000' - DdzFFzCqrhsxQBAhsAKjiohg5X29WKhDgByq1iRfBEY4zS6RtBxskJqfEdHr3b6xEQrYS4FZ2V42z453V4cPoPUnk9t5Wnz779RKyVPq: '100000000000' - DdzFFzCqrhstorkTmRLeMuVgDGYCMdS5cCjNVqkockyTNe8VDU2fHLFFoy5vZDkZCgYSXhj1xQD5Dsjy6m28EELmaA75WfcnWJqURKN4: '100000000000' -# "safe", "wrap", "order", "affair", "fiber", "walnut", "skill", "timber", "rookie", "ghost", "spot", "napkin" - DdzFFzCqrhsm8CuhbBL8Gbaey66LTHPUnZAFxzwPmLGfisT7d65Xj4NMYKMRtdVHeF95gicTCbkj953KGxTnsrfMnJHKjv6eFnSPeNVg: '100000000000' - DdzFFzCqrhswSDgiie3Grt8pfU89fDmnK9M21Y4fH6YD62vv4nMV7X36BFdjqz26sYuZoTYbKCZXWGsBCroZdbj93Ggsa7JmfoyBSnf7: '100000000000' - DdzFFzCqrhsr2e1v3shpmm6akAoXe3moXZ8gqVgft8f8nKhHGvbw61nJ58bTP8meMzfK6CRLydqBFmgiyhm9nRLytto8idY4NWVYwY4R: '100000000000' - DdzFFzCqrhsq9ksjqtNkiTMCQRefFRpFZymKYR5KY9K3dx1iuMDLfnxbcCjttmApQS3VqBw44kRcVYZqcKkmDLX6BQSSdJpJsjrd1F4i: '100000000000' - DdzFFzCqrhspPos2BJmUkkG9kWTb1N5mrqkWxt3xtiKJLAZfkgYB8pe8JWmDwfZEmAcAfHYdBFfQX5f7eH85vmNGwVXNFYYMi8et5RWK: '100000000000' - DdzFFzCqrht4zmwguWjWYscg1J2Amgdi51qFbj3jZxZuVFtWbZj7KhkwSVmaj16CuaCaQ8mUvn9BH295Tj59hMksNSvUPLrtPE2J3Q8A: '100000000000' - DdzFFzCqrhsjrzU9wpS4MKuGPwtdGvBMqLwAArAQhDoZdhF1TyTPzVPiVfnZsXEhK3Rg2HByeMYbLs7CxhNZQEbeWiTMZgQ6S5nKvvge: '100000000000' - DdzFFzCqrht5Ks8m1aUaucNsgjnH4W35JWue68wtiYfmRtsuhLZ9F29qTFKJf8PXU2RpczMmf4C4sMVFtSMSpgz1bfgxk8HtEYDeHbKh: '100000000000' - DdzFFzCqrhsgyL5jMQK7VQkkm434yEi7XDiZriD8YhWtX1bWXD1qr5w7Kr4Abeo6QrzDPzNDgYgxzhvCYNFjtKV321gevYvSWCxF1bcg: '100000000000' - DdzFFzCqrht5NXVz2Pt3kcdsW3Q5qtRZCK1wfKZoV7am7P9yD4wnj9rHgzm7nMpeLtuZYrUdpioQh3Bi9tLGAuvHrK2uCztxff8k6Bi8: '100000000000' -# "jaguar", "bitter", "merry", "destroy", "frozen", "dune", "embody", "pull", "cradle", "peasant", "sail", "whisper" - DdzFFzCqrhsj1TXEZ9wx3gfT3UvNJjijfQPe9Qmcbt6PxEmmbeCU7i7rR2QkbPei8CyGvipmax8NfxesAXmzSCMV76ozUDdzjw3Qdimo: '100000000000' - DdzFFzCqrhsdpJZHrVp8pv13Lvz4TxNrhTPqyt1Hnpad2GzhRikEHaon3XRfLZpr6973nJn668ebtPUgL9FpSZEH8UiYzXnKmz44iaNA: '100000000000' - DdzFFzCqrhsen5WXkaCV1EPz8U8Gkhn9nP3K5iJbLJKFAzGgnfDydXuASTJzpm4CeHujWMKqh48P2Fg5CasgQuM9LezhPeQhpsr6y9GQ: '100000000000' - DdzFFzCqrhsqyT7BNaHpE58gLaBwjPgQe8TT7gyx2mj8f6YzD5ZEnu4LFTK91aiLUDzfUQzpU9t1AxV1MvVpftNvt6YWoFu9rLeMvQYF: '100000000000' - DdzFFzCqrht5w7Dv7kVW1ivoCvRKh3A4Ju8cccPGpNNX43FcSybrVXWyrNXYFSut7q7ogQaJXeJ7ycEm71oZ9T1Tv1zv78VXdPNCf6A2: '100000000000' - DdzFFzCqrht76Tkn6QzYeFSPRx55Qmoqz9yeCKV8RjLGueNdDaiQBPyAHhsZdaJLXiovZzyYx7MjMHaDF3iGnv2aA3He4debEgAGrK9C: '100000000000' - DdzFFzCqrht77LAUt13bNaQD3xrkUDWZTkdwHEyUzd1WJyoZpdJV7bME78s7xcVF9j7PNjBis2SbRDDSASrcKo4ZS1yix7shKKPmnVcZ: '100000000000' - DdzFFzCqrhsdu9QdfAi2BmXcmdV1DA4zHKsEtWdeti32jpKzQC9dUpGqy4A5WPWgoNSvwhmFceVj8BTVna1Fq3jmjS3NbyAqseACNhqm: '100000000000' - DdzFFzCqrht53PjyZUcneCYf9CGnHxnpc8fbsqjhVRNu8zx9onVDX5rS623SfAJ4enUZseRsFehCYXoTiMFnZrrXk9daNs87EMVPupzs: '100000000000' - DdzFFzCqrhsdwALkqZUNTYvqq1cM1HDP9iXzWfEwJktgnutkDDzhEKRYa5u6DLf2Qbgo8bSEhNjrjVAFRK5CrHH9tvxhSDoV3u3xG1P7: '100000000000' +- Ae2tdPwUPEZFvG914wGXtCsb9hCr9aKjJC2ZciLKSNRqAKtjnduH7XtPn78: '1000000000000' +- Ae2tdPwUPEZ8rVsdBE6EMZpac32MLzciY75MrwrPs8ikjf6MWYFJUHkGaw5: '1000000000000' +- Ae2tdPwUPEZADQdQy2cbHDwwFRYUcrfreiu82Ngm9Bxdw1pJqJFUnFoQmNL: '1000000000000' +- Ae2tdPwUPEZ3NULtb3fK6qtJYwJbVnmhDeWzoMbjzPbCsEC9MyB4foBABhz: '1000000000000' +- Ae2tdPwUPEZ3rGvPCdzCPrVRvzEfpUp8XnZ861nss3XfLun5wA3c3YMA41v: '1000000000000' +- Ae2tdPwUPEZ575pMY9TBJyPdrwGkq2kr49V9fuqRWpF6wM9JbuZLmxHDo2N: '1000000000000' +- Ae2tdPwUPEZFaVKwy9bcN81ZPVL8uHRfsrCj7ZZhbm2uqiwLrzsy9Bs1rBN: '1000000000000' +- Ae2tdPwUPEZ4K16qFm6qVRWTEGpq5TJiyt8ZojmRANTSpPDAWZuH2Ge85uB: '1000000000000' +- Ae2tdPwUPEZMMYd8JP9F16HJgCsDsPjUoERWoFzZugN4mNjhR9ZnFwPonCs: '1000000000000' +- Ae2tdPwUPEZ3anXo172NFuumSGjrvbk1pHK9LiF82nGmPKC52NMYR77V2dM: '1000000000000' diff --git a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml index 5c07ebdb666..0f496bc9936 100644 --- a/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/shelley-genesis.yaml @@ -53,6 +53,6 @@ slotLength: 0.2 maxKESEvolutions: 90 securityParam: 10 systemStart: "2020-06-19T16:07:37.740128433Z" -initialFunds: [] +initialFunds: {} # For the Byron;Shelley test setup, funds have to be migrated from byron # using manually submitted transactions. The initialFunds field is ignored. From 876321a523511197bcdc755ee3968cbd920e9eec Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 16:38:37 +0200 Subject: [PATCH 74/86] add more debug & info logs during for more visibility during migration As users / monitorers, we were quite blind to what exactly happens during a migration. Nothing was logged beyond the API calls (which don't have much information in INFO). Now we get proper log with the distribution before and after migration, as well as, in DEBUG, the complete migration plan. That's better for debbugging :) --- lib/core/src/Cardano/Wallet.hs | 27 ++++++++++++++++++- .../src/Cardano/Wallet/Primitive/Types.hs | 15 ++++++----- 2 files changed, 35 insertions(+), 7 deletions(-) diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index 5bc8e5c145d..b502d419438 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -1284,6 +1284,7 @@ estimateFeeForDelegation ctx wid = db & \DBLayer{..} -> do selectCoinsForMigration :: forall ctx s t k. ( HasTransactionLayer t k ctx + , HasLogger WalletLog ctx , HasDBLayer s k ctx ) => ctx @@ -1298,6 +1299,7 @@ selectCoinsForMigration ctx wid = do selectCoinsForMigrationFromUTxO :: forall ctx t k. ( HasTransactionLayer t k ctx + , HasLogger WalletLog ctx ) => ctx -> W.UTxO @@ -1310,11 +1312,22 @@ selectCoinsForMigrationFromUTxO ctx utxo txp wid = do let feeOptions = (feeOpts tl Nothing feePolicy) { dustThreshold = Coin $ ceiling a } let selOptions = coinSelOpts tl (txp ^. #getTxMaxSize) + let previousDistribution = W.computeUtxoStatistics W.log10 utxo + liftIO $ traceWith tr $ MsgMigrationUTxOBefore previousDistribution case depleteUTxO feeOptions (idealBatchSize selOptions) utxo of - cs | not (null cs) -> pure cs + cs | not (null cs) -> do + let resultDistribution = W.computeStatistics getCoins W.log10 cs + liftIO $ traceWith tr $ MsgMigrationUTxOAfter resultDistribution + liftIO $ traceWith tr $ MsgMigrationResult cs + pure cs _ -> throwE (ErrSelectForMigrationEmptyWallet wid) where tl = ctx ^. transactionLayer @t @k + tr = ctx ^. logger + + getCoins :: CoinSelection -> [Word64] + getCoins CoinSelection{change,outputs} = + (getCoin <$> change) ++ (getCoin . coin <$> outputs) -- | Estimate fee for 'selectCoinsForPayment'. estimateFeeForPayment @@ -2254,6 +2267,9 @@ data WalletLog | MsgPaymentCoinSelectionStart W.UTxO W.TxParameters (NonEmpty TxOut) | MsgPaymentCoinSelection CoinSelection | MsgPaymentCoinSelectionAdjusted CoinSelection + | MsgMigrationUTxOBefore UTxOStatistics + | MsgMigrationUTxOAfter UTxOStatistics + | MsgMigrationResult [CoinSelection] | MsgRewardBalanceQuery BlockHeader | MsgRewardBalanceResult (Either ErrFetchRewards (Quantity "lovelace" Word64)) | MsgRewardBalanceNoSuchWallet ErrNoSuchWallet @@ -2312,6 +2328,12 @@ instance ToText WalletLog where "Coins selected for payment: \n" <> pretty sel MsgPaymentCoinSelectionAdjusted sel -> "Coins after fee adjustment: \n" <> pretty sel + MsgMigrationUTxOBefore summary -> + "About to migrate the following distribution: \n" <> pretty summary + MsgMigrationUTxOAfter summary -> + "Expected distribution after complete migration: \n" <> pretty summary + MsgMigrationResult cs -> + "Migration plan: \n" <> pretty (blockListF cs) MsgRewardBalanceQuery bh -> "Updating the reward balance for block " <> pretty bh MsgRewardBalanceResult (Right amt) -> @@ -2343,6 +2365,9 @@ instance HasSeverityAnnotation WalletLog where MsgPaymentCoinSelectionStart{} -> Debug MsgPaymentCoinSelection _ -> Debug MsgPaymentCoinSelectionAdjusted _ -> Debug + MsgMigrationUTxOBefore _ -> Info + MsgMigrationUTxOAfter _ -> Info + MsgMigrationResult _ -> Debug MsgIsStakeKeyRegistered _ -> Info MsgRewardBalanceQuery _ -> Debug MsgRewardBalanceResult (Right _) -> Debug diff --git a/lib/core/src/Cardano/Wallet/Primitive/Types.hs b/lib/core/src/Cardano/Wallet/Primitive/Types.hs index f8b562b77a7..c5e8ac7dec3 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Types.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Types.hs @@ -87,6 +87,7 @@ module Cardano.Wallet.Primitive.Types , HistogramBar (..) , BoundType , computeUtxoStatistics + , computeStatistics , log10 -- * Network Parameters @@ -1271,13 +1272,15 @@ log10 = Log10 -- | Compute UtxoStatistics from UTxOs computeUtxoStatistics :: BoundType -> UTxO -> UTxOStatistics -computeUtxoStatistics btype utxos = - (F.fold foldStatistics (getCoins utxos)) btype +computeUtxoStatistics btype = + computeStatistics (pure . getCoin . coin) btype . Map.elems . getUTxO + +-- | A more generic function for computing UTxO statistics on some other type of +-- data that maps to UTxO's values. +computeStatistics :: (a -> [Word64]) -> BoundType -> [a] -> UTxOStatistics +computeStatistics getCoins btype utxos = + (F.fold foldStatistics (mconcat $ getCoins <$> utxos)) btype where - getCoins :: UTxO -> [Word64] - getCoins = - map (getCoin . coin) . Map.elems . getUTxO - foldStatistics :: F.Fold Word64 (BoundType -> UTxOStatistics) foldStatistics = UTxOStatistics <$> foldBuckets (generateBounds btype) From 596613074cafd8ea6651bbfae9761bcdaeff3545 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 16:44:52 +0200 Subject: [PATCH 75/86] nuke blatant lurking bug in the migration algorithm... sitting there for months So, what this little thing did was to interrupt the ENTIRE migration if one selection in the batch ended up being full of dust. That's wrong, because that might just be bad luck and there could be (as it is right now in integration tests) many coins to still process! --- .../src/Cardano/Wallet/Primitive/CoinSelection/Migration.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/CoinSelection/Migration.hs b/lib/core/src/Cardano/Wallet/Primitive/CoinSelection/Migration.hs index a273602260b..93f08b4b07a 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/CoinSelection/Migration.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/CoinSelection/Migration.hs @@ -88,7 +88,7 @@ depleteUTxO feeOpts batchSize utxo = if null batch then pure [] else case adjustForFee (mkCoinSelection batch) of - Nothing -> pure [] + Nothing -> migrate Just coinSel -> do rest <- migrate pure (coinSel:rest) From 9a685ccf0b28372113a343d9d1800abdff49a61d Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 17:32:37 +0200 Subject: [PATCH 76/86] add 'leftovers' to api migration information This gives slightly more information about the final amount that one can expect on a resulting wallet. The leftovers are those little dust coins that haven't been included in the migration because they were judge too expensive to have. This means, that in practices, we have: new balance = original balance - migration cost - leftovers, and after migration, the balance of the original wallet is exactly 'leftovers'. --- lib/core/src/Cardano/Wallet.hs | 16 ++++- lib/core/src/Cardano/Wallet/Api/Server.hs | 20 +++--- lib/core/src/Cardano/Wallet/Api/Types.hs | 3 +- .../Wallet/Api/ApiWalletMigrationInfo.json | 62 +++++++++++++++---- .../test/unit/Cardano/Wallet/Api/TypesSpec.hs | 2 + specifications/api/swagger.yaml | 8 ++- 6 files changed, 85 insertions(+), 26 deletions(-) diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index b502d419438..5bb2a9fa496 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -1290,7 +1290,10 @@ selectCoinsForMigration => ctx -> WalletId -- ^ The source wallet ID. - -> ExceptT ErrSelectForMigration IO [CoinSelection] + -> ExceptT ErrSelectForMigration IO + ( [CoinSelection] + , Quantity "lovelace" Natural + ) selectCoinsForMigration ctx wid = do (utxo, txp, _) <- withExceptT ErrSelectForMigrationNoSuchWallet $ selectCoinsSetup @ctx @s @k ctx wid @@ -1306,7 +1309,10 @@ selectCoinsForMigrationFromUTxO -> W.TxParameters -> WalletId -- ^ The source wallet ID. - -> ExceptT ErrSelectForMigration IO [CoinSelection] + -> ExceptT ErrSelectForMigration IO + ( [CoinSelection] + , Quantity "lovelace" Natural + ) selectCoinsForMigrationFromUTxO ctx utxo txp wid = do let feePolicy@(LinearFee (Quantity a) _ _) = txp ^. #getFeePolicy let feeOptions = (feeOpts tl Nothing feePolicy) @@ -1319,7 +1325,11 @@ selectCoinsForMigrationFromUTxO ctx utxo txp wid = do let resultDistribution = W.computeStatistics getCoins W.log10 cs liftIO $ traceWith tr $ MsgMigrationUTxOAfter resultDistribution liftIO $ traceWith tr $ MsgMigrationResult cs - pure cs + let leftovers = + W.balance utxo + - + fromIntegral (W.balance' $ concatMap inputs cs) + pure (cs, Quantity leftovers) _ -> throwE (ErrSelectForMigrationEmptyWallet wid) where tl = ctx ^. transactionLayer @t @k diff --git a/lib/core/src/Cardano/Wallet/Api/Server.hs b/lib/core/src/Cardano/Wallet/Api/Server.hs index 283857d3c30..1b6335d01ba 100644 --- a/lib/core/src/Cardano/Wallet/Api/Server.hs +++ b/lib/core/src/Cardano/Wallet/Api/Server.hs @@ -1409,20 +1409,20 @@ getMigrationInfo -- ^ Source wallet -> Handler ApiWalletMigrationInfo getMigrationInfo ctx (ApiT wid) = do - infoFromSelections <$> getSelections + (cs, leftovers) <- getSelections + let migrationCost = costFromSelections cs + pure $ ApiWalletMigrationInfo{migrationCost,leftovers} where - infoFromSelections :: [CoinSelection] -> ApiWalletMigrationInfo - infoFromSelections = - ApiWalletMigrationInfo - . Quantity - . fromIntegral - . sum - . fmap selectionFee + costFromSelections :: [CoinSelection] -> Quantity "lovelace" Natural + costFromSelections = Quantity + . fromIntegral + . sum + . fmap selectionFee selectionFee :: CoinSelection -> Word64 selectionFee s = inputBalance s - changeBalance s - getSelections :: Handler [CoinSelection] + getSelections :: Handler ([CoinSelection], Quantity "lovelace" Natural) getSelections = withWorkerCtx ctx wid liftE liftE $ \wrk -> liftHandler $ W.selectCoinsForMigration @_ @s @t @k wrk wid @@ -1443,7 +1443,7 @@ migrateWallet ctx (ApiT wid) migrateData = do migration <- do withWorkerCtx ctx wid liftE liftE $ \wrk -> liftHandler $ do - cs <- W.selectCoinsForMigration @_ @_ @t wrk wid + (cs, _) <- W.selectCoinsForMigration @_ @_ @t wrk wid pure $ assignMigrationAddresses addrs cs forM migration $ \cs -> do diff --git a/lib/core/src/Cardano/Wallet/Api/Types.hs b/lib/core/src/Cardano/Wallet/Api/Types.hs index dd4e5fd0fcd..95a6d0069c7 100644 --- a/lib/core/src/Cardano/Wallet/Api/Types.hs +++ b/lib/core/src/Cardano/Wallet/Api/Types.hs @@ -616,8 +616,9 @@ newtype ApiPutAddressesData (n :: NetworkDiscriminant) = ApiPutAddressesData { addresses :: [(ApiT Address, Proxy n)] } deriving (Eq, Generic, Show) -newtype ApiWalletMigrationInfo = ApiWalletMigrationInfo +data ApiWalletMigrationInfo = ApiWalletMigrationInfo { migrationCost :: Quantity "lovelace" Natural + , leftovers :: Quantity "lovelace" Natural } deriving (Eq, Generic, Show) newtype ApiWithdrawRewards = ApiWithdrawRewards Bool diff --git a/lib/core/test/data/Cardano/Wallet/Api/ApiWalletMigrationInfo.json b/lib/core/test/data/Cardano/Wallet/Api/ApiWalletMigrationInfo.json index 30d8388f55f..db4d5f5bb91 100644 --- a/lib/core/test/data/Cardano/Wallet/Api/ApiWalletMigrationInfo.json +++ b/lib/core/test/data/Cardano/Wallet/Api/ApiWalletMigrationInfo.json @@ -1,63 +1,103 @@ { - "seed": -2798250740542455911, + "seed": 3318246633761769919, "samples": [ { + "leftovers": { + "quantity": 61, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 53, + "quantity": 25, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 167, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 151, + "quantity": 119, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 230, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 155, + "quantity": 205, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 16, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 226, + "quantity": 194, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 172, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 136, + "quantity": 145, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 190, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 246, + "quantity": 237, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 154, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 193, + "quantity": 113, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 187, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 3, + "quantity": 54, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 242, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 109, + "quantity": 136, "unit": "lovelace" } }, { + "leftovers": { + "quantity": 175, + "unit": "lovelace" + }, "migration_cost": { - "quantity": 233, + "quantity": 161, "unit": "lovelace" } } diff --git a/lib/core/test/unit/Cardano/Wallet/Api/TypesSpec.hs b/lib/core/test/unit/Cardano/Wallet/Api/TypesSpec.hs index fb804e77d92..76764a2d4a0 100644 --- a/lib/core/test/unit/Cardano/Wallet/Api/TypesSpec.hs +++ b/lib/core/test/unit/Cardano/Wallet/Api/TypesSpec.hs @@ -602,6 +602,8 @@ spec = do x' = ApiWalletMigrationInfo { migrationCost = migrationCost (x :: ApiWalletMigrationInfo) + , leftovers = + leftovers (x :: ApiWalletMigrationInfo) } in x' === x .&&. show x' === show x diff --git a/specifications/api/swagger.yaml b/specifications/api/swagger.yaml index eb279429454..fb682bf96f1 100644 --- a/specifications/api/swagger.yaml +++ b/specifications/api/swagger.yaml @@ -1026,8 +1026,14 @@ components: type: object required: - migration_cost + - leftovers properties: - migration_cost: *amount + migration_cost: + <<: *amount + description: Total amount which will be paid as fees for the migration. + leftovers: + <<: *amount + description: Leftovers dust coins which won't be migrated nor spent as fees. ApiWalletPassphrase: &ApiWalletPassphrase type: object From c96a5bb70ff139d541984ff2a02de4d7db454c79 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 17:34:15 +0200 Subject: [PATCH 77/86] re-enable 'big wallet' migration test, now that everything is fixed. --- .../Integration/Scenario/API/Shelley/Migrations.hs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs index bb6285d01c3..eb281e5ac45 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/Migrations.hs @@ -49,7 +49,7 @@ import Data.Text import Data.Word ( Word64 ) import Test.Hspec - ( SpecWith, describe, pendingWith, shouldBe, shouldSatisfy ) + ( SpecWith, describe, shouldBe, shouldSatisfy ) import Test.Hspec.Extra ( it ) import Test.Integration.Framework.DSL @@ -169,7 +169,6 @@ spec = do it "SHELLEY_MIGRATE_01_big_wallet - \ \ migrate a big wallet requiring more than one tx" $ \ctx -> do - pendingWith "see note below." -- NOTE -- Special mnemonic for which 200 shelley funds are attached to in the @@ -210,6 +209,7 @@ spec = do , expectField #migrationCost (.> Quantity 0) ] let expectedFee = getFromResponse (#migrationCost . #getQuantity) rFee + let leftovers = getFromResponse (#leftovers . #getQuantity) rFee -- Migrate to a new empty wallet wNew <- emptyWallet ctx @@ -226,15 +226,11 @@ spec = do Default payloadMigrate >>= flip verify [ expectResponseCode @IO HTTP.status202 - -- TODO: There's now only 3 transactions generated whereas it was 7 - -- before the HFC combinator. I don't quite see why the hard-fork - -- would change that. As a result, the final balance of the migrated - -- wallet is far less than what it should be. - , expectField id ((`shouldBe` 3). length) + , expectField id ((`shouldBe` 9) . length) ] -- Check that funds become available in the target wallet: - let expectedBalance = originalBalance - expectedFee + let expectedBalance = originalBalance - expectedFee - leftovers eventually "wallet balance = expectedBalance" $ do request @ApiWallet ctx (Link.getWallet @'Shelley wNew) From f26697da839016609ee89b90c76d1e54770a74f1 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 20:34:08 +0200 Subject: [PATCH 78/86] tweak fee estimation on migrations so that it assumes worst case scenario for addresses. See note in code. --- .../src/Cardano/Wallet/Byron/Api/Server.hs | 4 +- lib/core/src/Cardano/Wallet.hs | 41 ++++++++++++++++--- lib/core/src/Cardano/Wallet/Api/Server.hs | 10 +++-- .../src/Cardano/Wallet/Jormungandr.hs | 2 + .../Cardano/Wallet/Jormungandr/Api/Server.hs | 11 ++--- lib/jormungandr/test/integration/Main.hs | 4 ++ .../src/Cardano/Wallet/Shelley/Api/Server.hs | 6 +-- 7 files changed, 59 insertions(+), 19 deletions(-) diff --git a/lib/byron/src/Cardano/Wallet/Byron/Api/Server.hs b/lib/byron/src/Cardano/Wallet/Byron/Api/Server.hs index 3d83f1f24c9..7448a710ff6 100644 --- a/lib/byron/src/Cardano/Wallet/Byron/Api/Server.hs +++ b/lib/byron/src/Cardano/Wallet/Byron/Api/Server.hs @@ -272,8 +272,8 @@ server byron icarus ntp = byronMigrations :: Server (ByronMigrations n) byronMigrations = (\wid -> withLegacyLayer wid - (byron , getMigrationInfo byron wid) - (icarus, getMigrationInfo icarus wid) + (byron , getMigrationInfo @_ @_ @_ @n byron wid) + (icarus, getMigrationInfo @_ @_ @_ @n icarus wid) ) :<|> (\wid m -> withLegacyLayer wid (byron , migrateWallet byron wid m) diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index 5bb2a9fa496..45925c5fcf7 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -213,7 +213,7 @@ import Cardano.Wallet.Primitive.AddressDerivation , preparePassphrase ) import Cardano.Wallet.Primitive.AddressDerivation.Byron - ( ByronKey ) + ( ByronKey, unsafeMkByronKeyFromMasterKey ) import Cardano.Wallet.Primitive.AddressDerivation.Icarus ( IcarusKey ) import Cardano.Wallet.Primitive.AddressDiscovery @@ -310,6 +310,8 @@ import Cardano.Wallet.Transaction , ErrValidateSelection , TransactionLayer (..) ) +import Cardano.Wallet.Unsafe + ( unsafeXPrv ) import Control.Exception ( Exception ) import Control.Monad @@ -388,6 +390,7 @@ import qualified Cardano.Wallet.Primitive.AddressDiscovery.Random as Rnd import qualified Cardano.Wallet.Primitive.AddressDiscovery.Sequential as Seq import qualified Cardano.Wallet.Primitive.CoinSelection.Random as CoinSelection import qualified Cardano.Wallet.Primitive.Types as W +import qualified Data.ByteString as BS import qualified Data.List as L import qualified Data.List.NonEmpty as NE import qualified Data.Map as Map @@ -1282,10 +1285,11 @@ estimateFeeForDelegation ctx wid = db & \DBLayer{..} -> do -- transactions will have the effect of migrating all funds from the given -- source wallet to the specified target wallet. selectCoinsForMigration - :: forall ctx s t k. + :: forall ctx s t k n. ( HasTransactionLayer t k ctx , HasLogger WalletLog ctx , HasDBLayer s k ctx + , PaymentAddress n ByronKey ) => ctx -> WalletId @@ -1297,12 +1301,13 @@ selectCoinsForMigration selectCoinsForMigration ctx wid = do (utxo, txp, _) <- withExceptT ErrSelectForMigrationNoSuchWallet $ selectCoinsSetup @ctx @s @k ctx wid - selectCoinsForMigrationFromUTxO @ctx @t @k ctx utxo txp wid + selectCoinsForMigrationFromUTxO @ctx @t @k @n ctx utxo txp wid selectCoinsForMigrationFromUTxO - :: forall ctx t k. + :: forall ctx t k n. ( HasTransactionLayer t k ctx , HasLogger WalletLog ctx + , PaymentAddress n ByronKey ) => ctx -> W.UTxO @@ -1315,8 +1320,13 @@ selectCoinsForMigrationFromUTxO ) selectCoinsForMigrationFromUTxO ctx utxo txp wid = do let feePolicy@(LinearFee (Quantity a) _ _) = txp ^. #getFeePolicy - let feeOptions = (feeOpts tl Nothing feePolicy) - { dustThreshold = Coin $ ceiling a } + let feeOptions = FeeOptions + { estimateFee = minimumFee tl feePolicy Nothing . worstCase + , dustThreshold = Coin $ ceiling a + , onDanglingChange = if allowUnbalancedTx tl + then SaveMoney + else PayAndBalance + } let selOptions = coinSelOpts tl (txp ^. #getTxMaxSize) let previousDistribution = W.computeUtxoStatistics W.log10 utxo liftIO $ traceWith tr $ MsgMigrationUTxOBefore previousDistribution @@ -1339,6 +1349,25 @@ selectCoinsForMigrationFromUTxO ctx utxo txp wid = do getCoins CoinSelection{change,outputs} = (getCoin <$> change) ++ (getCoin . coin <$> outputs) + -- When performing a selection for migration, at this stage, we do not know + -- exactly to which address we're going to assign which change. It could be + -- an Icarus address, a Byron address or anything else. But, depending on + -- the address, we get to pay more-or-less as fees! + -- + -- Therefore, we assume the worse, which are byron payment addresses, this + -- will create __slightly__ overpriced selections but.. meh. + worstCase :: CoinSelection -> CoinSelection + worstCase cs = cs + { change = mempty + , outputs = TxOut worstCaseAddress <$> change cs + } + where + worstCaseAddress :: Address + worstCaseAddress = paymentAddress @n @ByronKey $ publicKey $ + unsafeMkByronKeyFromMasterKey + (minBound, minBound) + (unsafeXPrv $ BS.replicate 128 0) + -- | Estimate fee for 'selectCoinsForPayment'. estimateFeeForPayment :: forall ctx s t k e. diff --git a/lib/core/src/Cardano/Wallet/Api/Server.hs b/lib/core/src/Cardano/Wallet/Api/Server.hs index 1b6335d01ba..7e38776d08e 100644 --- a/lib/core/src/Cardano/Wallet/Api/Server.hs +++ b/lib/core/src/Cardano/Wallet/Api/Server.hs @@ -1402,7 +1402,9 @@ quitStakePool ctx (ApiT wid) body = do -------------------------------------------------------------------------------} getMigrationInfo - :: forall s t k. () + :: forall s t k n. + ( PaymentAddress n ByronKey + ) => ApiLayer s t k -- ^ Source wallet context -> ApiT WalletId @@ -1424,13 +1426,14 @@ getMigrationInfo ctx (ApiT wid) = do getSelections :: Handler ([CoinSelection], Quantity "lovelace" Natural) getSelections = withWorkerCtx ctx wid liftE liftE $ \wrk -> liftHandler $ - W.selectCoinsForMigration @_ @s @t @k wrk wid + W.selectCoinsForMigration @_ @s @t @k @n wrk wid migrateWallet :: forall s t k n p. ( IsOwned s k , HardDerivation k , Bounded (Index (AddressIndexDerivationType k) 'AddressK) + , PaymentAddress n ByronKey ) => ApiLayer s t k -- ^ Source wallet context @@ -1443,7 +1446,7 @@ migrateWallet ctx (ApiT wid) migrateData = do migration <- do withWorkerCtx ctx wid liftE liftE $ \wrk -> liftHandler $ do - (cs, _) <- W.selectCoinsForMigration @_ @_ @t wrk wid + (cs, _) <- W.selectCoinsForMigration @_ @_ @t @_ @n wrk wid pure $ assignMigrationAddresses addrs cs forM migration $ \cs -> do @@ -1489,6 +1492,7 @@ assignMigrationAddresses addrs selections = accumulate sel (txs, addrsAvailable) = first (\addrsSelected -> makeTx sel addrsSelected : txs) (splitAt (length $ change sel) addrsAvailable) + makeTx :: CoinSelection -> [Address] -> UnsignedTx makeTx sel addrsSelected = UnsignedTx (NE.fromList (sel ^. #inputs)) diff --git a/lib/jormungandr/src/Cardano/Wallet/Jormungandr.hs b/lib/jormungandr/src/Cardano/Wallet/Jormungandr.hs index 4053f4d2420..108fd134b9a 100644 --- a/lib/jormungandr/src/Cardano/Wallet/Jormungandr.hs +++ b/lib/jormungandr/src/Cardano/Wallet/Jormungandr.hs @@ -104,6 +104,7 @@ import Cardano.Wallet.Primitive.AddressDerivation , Depth (..) , NetworkDiscriminant (..) , NetworkDiscriminantVal + , PaymentAddress , PersistPrivateKey , WalletKey , networkDiscriminantVal @@ -202,6 +203,7 @@ serveWallet , EncodeStakeAddress n , EncodeAddress n , DelegationAddress n JormungandrKey + , PaymentAddress n ByronKey ) => Tracers IO -- ^ Logging config. diff --git a/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Api/Server.hs b/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Api/Server.hs index 53923ab7f38..373a6d4b14d 100644 --- a/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Api/Server.hs +++ b/lib/jormungandr/src/Cardano/Wallet/Jormungandr/Api/Server.hs @@ -90,7 +90,7 @@ import Cardano.Wallet.Api.Server import Cardano.Wallet.Api.Types ( ApiErrorCode (..), ApiT (..), SomeByronWalletPostData (..) ) import Cardano.Wallet.Primitive.AddressDerivation - ( DelegationAddress (..), NetworkDiscriminant (..) ) + ( DelegationAddress (..), NetworkDiscriminant (..), PaymentAddress ) import Cardano.Wallet.Primitive.AddressDerivation.Byron ( ByronKey ) import Cardano.Wallet.Primitive.AddressDerivation.Icarus @@ -128,6 +128,7 @@ server , jormungandr ~ ApiLayer (SeqState n JormungandrKey) t JormungandrKey , DelegationAddress n JormungandrKey , Buildable (ErrValidateSelection t) + , PaymentAddress n ByronKey ) => byron -> icarus @@ -261,12 +262,12 @@ server byron icarus jormungandr spl ntp = byronMigrations :: Server (ByronMigrations n) byronMigrations = (\wid -> withLegacyLayer wid - (byron , getMigrationInfo byron wid) - (icarus, getMigrationInfo icarus wid) + (byron , getMigrationInfo @_ @_ @_ @n byron wid) + (icarus, getMigrationInfo @_ @_ @_ @n icarus wid) ) :<|> (\wid m -> withLegacyLayer wid - (byron , migrateWallet byron wid m) - (icarus, migrateWallet icarus wid m) + (byron , migrateWallet @_ @_ @_ @n byron wid m) + (icarus, migrateWallet @_ @_ @_ @n icarus wid m) ) network :: Server Network diff --git a/lib/jormungandr/test/integration/Main.hs b/lib/jormungandr/test/integration/Main.hs index 3773ab863c1..69918a69da1 100644 --- a/lib/jormungandr/test/integration/Main.hs +++ b/lib/jormungandr/test/integration/Main.hs @@ -47,7 +47,10 @@ import Cardano.Wallet.Primitive.AddressDerivation ( DelegationAddress (..) , NetworkDiscriminant (..) , NetworkDiscriminantVal (..) + , PaymentAddress ) +import Cardano.Wallet.Primitive.AddressDerivation.Byron + ( ByronKey ) import Cardano.Wallet.Primitive.AddressDerivation.Jormungandr ( JormungandrKey ) import Cardano.Wallet.Primitive.Fee @@ -173,6 +176,7 @@ specWithServer , EncodeAddress n , EncodeStakeAddress n , DelegationAddress n JormungandrKey + , PaymentAddress n ByronKey ) => Trace IO Text -> SpecWith (Port "node", FeePolicy, Context Jormungandr) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Api/Server.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Api/Server.hs index dd12bec1354..ca06c41d70e 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Api/Server.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Api/Server.hs @@ -180,7 +180,7 @@ server byron icarus shelley spl ntp = shelleyMigrations :: Server (ShelleyMigrations n) shelleyMigrations = - getMigrationInfo shelley + getMigrationInfo @_ @_ @_ @n shelley :<|> migrateWallet shelley stakePools :: Server (StakePools n ApiStakePool) @@ -300,8 +300,8 @@ server byron icarus shelley spl ntp = byronMigrations :: Server (ByronMigrations n) byronMigrations = (\wid -> withLegacyLayer wid - (byron , getMigrationInfo byron wid) - (icarus, getMigrationInfo icarus wid) + (byron , getMigrationInfo @_ @_ @_ @n byron wid) + (icarus, getMigrationInfo @_ @_ @_ @n icarus wid) ) :<|> (\wid m -> withLegacyLayer wid (byron , migrateWallet byron wid m) From f8b34da50bac9413fdb825f6527f725390254143 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 20:40:46 +0200 Subject: [PATCH 79/86] align Byron migration scenarios with recent changes done on their Shelley equivalent (leftovers) --- .../Scenario/API/Byron/Migrations.hs | 23 +- .../cardano-node-shelley/byron-genesis.yaml | 300 ------------------ 2 files changed, 13 insertions(+), 310 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Migrations.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Migrations.hs index 6756e3a18b1..fe41852dcd0 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Migrations.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Byron/Migrations.hs @@ -210,10 +210,10 @@ spec = do it "BYRON_MIGRATE_01 - \ \ migrate a big wallet requiring more than one tx" $ \ctx -> do -- NOTE - -- Special mnemonic for which 500 legacy funds are attached to in the + -- Special mnemonic for which 200 legacy funds are attached to in the -- genesis file. -- - -- Out of these 500 coins, 100 of them are of 1 Lovelace and are + -- Out of these 200 coins, 100 of them are of 1 Lovelace and are -- expected to be treated as dust. The rest are all worth: -- 10,000,000,000 lovelace. let mnemonics = @@ -229,14 +229,15 @@ spec = do } |] (_, wOld) <- unsafeRequest @ApiByronWallet ctx (Link.postWallet @'Byron) payloadRestore - eventually "wallet balance greater than 0" $ do - request @ApiByronWallet ctx + originalBalance <- eventually "wallet balance greater than 0" $ do + r <- request @ApiByronWallet ctx (Link.getWallet @'Byron wOld) Default - Empty >>= flip verify + Empty + verify r [ expectField (#balance . #available) (.> Quantity 0) ] - let originalBalance = view (#balance . #available . #getQuantity) wOld + return $ getFromResponse (#balance . #available . #getQuantity) r -- Calculate the expected migration fee: rFee <- request @ApiWalletMigrationInfo ctx @@ -248,6 +249,7 @@ spec = do , expectField #migrationCost (.> Quantity 0) ] let expectedFee = getFromResponse (#migrationCost . #getQuantity) rFee + let leftovers = getFromResponse (#leftovers . #getQuantity) rFee -- Migrate to a new empty wallet wNew <- emptyWallet ctx @@ -264,11 +266,11 @@ spec = do Default payloadMigrate >>= flip verify [ expectResponseCode @IO HTTP.status202 - , expectField id ((`shouldBe` 2). length) + , expectField id ((`shouldBe` 17). length) ] -- Check that funds become available in the target wallet: - let expectedBalance = originalBalance - expectedFee + let expectedBalance = originalBalance - expectedFee - leftovers eventually "wallet balance = expectedBalance" $ do request @ApiWallet ctx (Link.getWallet @'Shelley wNew) @@ -288,7 +290,7 @@ spec = do Empty >>= flip verify [ expectField #distribution - ((`shouldBe` (Just 400)) . Map.lookup 10_000_000_000) + ((`shouldBe` (Just 100)) . Map.lookup 10_000_000_000) ] it "BYRON_MIGRATE_01 - \ @@ -485,6 +487,7 @@ spec = do , expectField #migrationCost (.> Quantity 0) ] let expectedFee = getFromResponse (#migrationCost . #getQuantity) r0 + let leftovers = getFromResponse (#leftovers . #getQuantity) r0 -- Perform a migration from the source wallet to the target wallet: r1 <- request @[ApiTransaction n] ctx @@ -500,7 +503,7 @@ spec = do ] -- Check that funds become available in the target wallet: - let expectedBalance = originalBalance - expectedFee + let expectedBalance = originalBalance - expectedFee - leftovers eventually "Wallet has expectedBalance" $ do r2 <- request @ApiWallet ctx (Link.getWallet @'Shelley targetWallet) Default Empty diff --git a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml index 009ece93ecd..c6c7d84b871 100644 --- a/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml +++ b/lib/shelley/test/data/cardano-node-shelley/byron-genesis.yaml @@ -2280,306 +2280,6 @@ nonAvvmBalances: - DdzFFzCqrhsjMwjN9yzKfqxBsKBSf9wE4oH7JtcCfaPmugCyz7PGYNzRByA3vHxVA8RA8ud1mweqCyXqL3T6uNs7dSVCEQKFJmDYSJdX: '10000000000' - DdzFFzCqrhskPrKFx6rw4VbGzY6g1kq5K7MTPzJVvDXz7DDNMgb4KsiaDLGHXErTETyX9jHr1t6Jq16dnyDS72hRXTLapduf1JDYATYq: '10000000000' - DdzFFzCqrhtBGHMyjRhTdWkmVoTUPpbx3AUZiKG4C1ytVBUhmVutdXzcU9jcyUBwQ7hV2b9cZFrPh8bXZaEWUSWaV1atSEDwMjcwBD4i: '10000000000' -- DdzFFzCqrhso56Q6MoLicTf3xniWQFDUKAGAsnMBXEhqLWzCtiDHE3tMvLu2YhRAdfKd2WF9jVj9zJcan3hvijgytcV2vsFqioZ9ryG3: '10000000000' -- DdzFFzCqrhshTd4CpVK9NRWtcJ6A2qL11G4DG1A1eZ6yq73QvsbuccWVYrsZ4k2fu7qjsZjeher1FVQ3SpfgxkWV7fkjAHoKKmoUPiAD: '10000000000' -- DdzFFzCqrhsoez4kAFHpDrUXeRfGoi7yxEwjRiiNAAuYpgtpRJSiAHytKyr6TvKgoYjKJsE2gzjVkemz2mUm9P7KBEHt1PpZrwFTJvEB: '10000000000' -- DdzFFzCqrhtB5MddMzrtV3VMgzSu39iR7oNbJTUt4JcQbMNBHVpdHSn1UAMcS1Tg8CjryaSH9LjvReBLCMM6poEfUApkixb9uLeHfDST: '10000000000' -- DdzFFzCqrht6WiMPLcU5QNGvN6HwqWYTZxyge5SMweQF1MK5zibCKqgQjh3gvLotSwKcYnZfupUUrTr7RYHBdrhrV99uJUyVJBDvDibb: '10000000000' -- DdzFFzCqrhseumPpQeXsd85hrwrjVeiLd1xEn846veoYkTh9yiN5tu3v6tKzyRFAptZtTADaHcC4UmEkHMdwpBXHdNS3xccp2QPGbLYE: '10000000000' -- DdzFFzCqrhspHH6gW2PeSjuZYiEYGZTB8kzt47bz4iaZpNWvVseZxRQKq9iRXLZ7hKAhBLJN1LjdaXmorucGgBwH3YAeQs2GU29HMD7x: '10000000000' -- DdzFFzCqrhsqfET6V9bP9BFbqrfF8pPqW3yFu3yGi5fcpc8JsgTmkuAaKsRGMokSa7AGYGiTJpcbBiNYZc2rSkff8aECKHTR1ukryMjD: '10000000000' -- DdzFFzCqrhskxbuAH9yagoekt4HoTnqFJfTvniwZLn7ZABjp336jTeQe1wRzw4ftoKRETNzmkfQ57fLqnLPh1ASHg6h8GL4xXPUGnXYA: '10000000000' -- DdzFFzCqrhsxkiMYpysqZFwDESf5DuABcB6Lu6Ej99q9SF1y3xdVU2yzkQ22oigNudEW4GmEFHa28esrZvGszWRRGm2Qdo4WpakKWVUG: '10000000000' -- DdzFFzCqrhsiKjmRFtZ9r4LcZGXnHB3kf3667wfDYYcoJ5kgmjdEQebF6DLdk8rf81ByPWXsbUSqohPHegdhdvH3nyagnvPd8JEzT9Q9: '10000000000' -- DdzFFzCqrhsjKBHW3LGtau38Rjfc9zNJL9aGfDpryjpXPFeV8sKVRMDENaBJKDnnHmUMu64KXg7Xxvk7WkajUCA7ak1goaDTcc3SsnRn: '10000000000' -- DdzFFzCqrhsp6YKqcPShov9twJSUVafhfLFS77XBtgcgybD4TnKXT1GnThaEVfSQvHhutjvwtxf2Ae9BaSvxbHvA8KXKkFsZsMnNvi2p: '10000000000' -- DdzFFzCqrht5b8sXXzPzvsTayZyoy9VhREPe83n8pw5B5fDWBH79VL7XoVrcHsFzEKgaGD8wwFehEGNhzrrzqhe5XoN8F96AAu4d1Quh: '10000000000' -- DdzFFzCqrht4UfD1oFbgrDDdB4HBGa6T19uqyWp5ukVeQH2fdsPNo1pfvHAnbr1WMvsjg4PpruGnBB3sXRH2pqc9NDEuPe1e7C1ryGVZ: '10000000000' -- DdzFFzCqrht76xYGFRn9JWSbQoGr8nKeNGGopVaoWv67DzhbEhyZHSkoG34U7nVmNhPtx9gFyGFDjX3Vo3cw6DBFTWbhGggJmstrtv4C: '10000000000' -- DdzFFzCqrht147RYeEX53ijQkdTP1r3JwYtXehUpuDzvkaey8BXQGECWycJojgMkzu2HxFMXwoHjds9ARnRNCS2WAhQuQqx6cTaxsJqW: '10000000000' -- DdzFFzCqrhsvee3PjuwuWaiMt2vjhQzSWNk8PLKtqTsScTPeyT2qsFdGuFFiRhg3HacyeVJ8CWeNkyCbzKKrR5i9soVGidUYJjxyKrEB: '10000000000' -- DdzFFzCqrht2hNoZusyjxGJPWQQzRw7QmmZL9DojQ9CSetv2EBot1XV1RaAwuECKsWEFtrwnLcfo6HzENqQAVk19B5gGgS3FcCqaYE1R: '10000000000' -- DdzFFzCqrhsyuuABmjPmdAdLCpiA8J5W23uj9sJ1RQnM2D3TueQ3RFgk2EmsYxF8QUNA7E4vk4AAsaeD8W5PGGwyuHHCwG3R6bseVLT8: '10000000000' -- DdzFFzCqrhsja25MAkqAEPQuTrNNiEPPwfKW5hUhbdN454iFuqtFF1uRN8VCsrKG7phPF1dKMLby5Z4SafstkEMSsAuk9uLUBkfAfGcV: '10000000000' -- DdzFFzCqrht4grmqogVjdp6P5UTN6vfNotKuCFbPPT8Co1JKe7gAff9HuF9UmLzpypsdyXjrq98QV64WhMk8q6RiHLwbMn29pevPVbLQ: '10000000000' -- DdzFFzCqrht2W3CUCMMEGMopZbRxgqJvbAvRWdrZ3vB9nUh85jfAzbztUGuUdkAZiNPvUPaiYuUj3EW8JzGtPCzaAL2tNg8zwKtzbHJ9: '10000000000' -- DdzFFzCqrhseT74HR7Pakfdxf1q5Ya9FwDLigiTXCd5HfM8VCnZ9CFc9PUL563X9uNK12s3oefuuhDFMZjGf95Q64QSyvs8iRUQjLCv4: '10000000000' -- DdzFFzCqrhssY4kLW1s88sEfi7TXMUpCv4FBZ3NASyTy9nWmWo3xJiAUHTGvLZ9uYrMptCaJQMbvhKVW4xrYU55YjAx5iir6QTrdYEcM: '10000000000' -- DdzFFzCqrhskr59V5PhsihPEYqXWETFohYVuqk6fZsFDmTzLpSe29dQeDNSq3BtGqDeq2TEyXgfR7cLGqyR3HjXU7ezCpHFE6PaPtbGm: '10000000000' -- DdzFFzCqrhsga2K5TgrGWRdfLpBtq8TWiz6sSvvps4LXmpkzTvRVWMqhEeWbjTSiTemeoKLfZ7JgQXgYbv8yLghGcLG6avvytMTVQqyP: '10000000000' -- DdzFFzCqrhspRn8umM8KUxVBXr897ub5nJWvBziV3CK7KZ3A66mfgHbAVGrFDg77LvYgLtPSoE4drkHfd82VPJfCD7uqRFSCpJNWPqdG: '10000000000' -- DdzFFzCqrht22FgBsNMKLQzEz7e13vFgJnY9asRZadUHh8rsymAM1W87vigUGa1avr5odr7VeyPfPRWHSWdtvjB7ZSceFzmiYCfgRoum: '10000000000' -- DdzFFzCqrhshLgMEWfa84iaiph568skVh7zso4b4NH25eCkQc2czA4DGCodrUoogffXiCcmYsojZ17V4QuVym3ExVedxzKCepPSpneoq: '10000000000' -- DdzFFzCqrhsvq9SMVfQpuaEQutU2fSCpmNso66oQ3YUYh1BXoYpMa3nytjCeiTg2kFNuzAyQhFmvxofQvsxNpGjLCXE4tZ3r8MCXQqFJ: '10000000000' -- DdzFFzCqrhstdybP394yYvpoD35cMQUycokeFaU7v4Z26QCokWhHHKvKtqqaiWSjVSvs7PbULLuMn7PnPKhKeJuL9F2Kv9D1LxUJTJ3g: '10000000000' -- DdzFFzCqrht9oy8naJFg1wwKZU6RyKGrbm81iHtige2mf8FjwhorMzyf26KgLeQfMpK3To1eh6LYujnJuvCyUAuVPigrQJmz3zg9fJJc: '10000000000' -- DdzFFzCqrhsfDgGE8DiieXTXs3KEMTUiyPM58xrhpXbDgrifB2TW5yjHb6jh74bZuqPxRiZabpvj1L87EycsRyxHGS1L1JHNTRQbh9Ty: '10000000000' -- DdzFFzCqrht1wtyWjNuDqdbrXr2dJmpaKG1iWrq2waWemcjQN5GRLfdx4ZnDLXfVQh5ieNs5U48JeB2qSForfNq6ktn6eYYX7x6f9d3k: '10000000000' -- DdzFFzCqrht2oCEfURAN5k3pfYme6VVafLaER4yHHk2KqxCZM53aWo7o73sfAwugGEnUJ1e9bYtgyHEf4UxVLhyrBhUC8rXnja1nL9qy: '10000000000' -- DdzFFzCqrhsttvN5SYbR57HbjLCvKM9UMcEDGL5WYBcgjCSyRyqWcJUM2pkPtcddkTHNSmkwP3uc9Btvhg6zytPCQCr56eL1i7B53Wxo: '10000000000' -- DdzFFzCqrhsjbKxuDaCwuoi3k8SsDVzD5zvjjsNLp9C9Yk5XjhPk8cTWYzErtStoXRwMfHKCkMADJWikXkXgY1CP2mc1UpDP5dPENwFc: '10000000000' -- DdzFFzCqrhtCM1Ltqvxh8SYXje84FqXPZCF4rqaGrwe9cs2hHW7kEwA7uzoJuQaPM2Xy4SkNCqitrvC1ia8cZvANWABpYyKRq5mN8wze: '10000000000' -- DdzFFzCqrhsfy25BFvQotnd6zMXaC9QqWSV7HJa1SBEHxkiQHR5zCwdp25Qg2Nd54kVLfmHxUFKEJF5y2dUkHCqz8r4aaW8rSDejSjYm: '10000000000' -- DdzFFzCqrhsyT41UPeRUU2BQ2wMHUSJXniDJSiqdXvN8tesCiBuUMqfq3f21SaKPywqCHa2o2KyTBbfWD8uJ6M79YSR3xa4aaJDdqqFV: '10000000000' -- DdzFFzCqrht6unWrSK4wMHnYzbKs9YAxmHf4JHLe98gKFiQJMzCFZ4qRRJijbdRYksxRvHMrrx9VpQXFMDrgKh1sr3NocHUbTVAWBc6q: '10000000000' -- DdzFFzCqrht6jA7nTeiT7JkH4KMN6EbgDT2tPswWznLCHNonybtwWw987HbwrMYtXRC1spSiqqHf9zr38Tvu6ZjsFnfRGCSf5nAcNqAC: '10000000000' -- DdzFFzCqrhtAzpaeQoSftdDk6V5GQFCUCMYrTUL7yzwDs2t44hVweXxMYyoUto827zmp1ndmMfCkqHuaDgozpCxZLpU1AiuxVmtj7dqA: '10000000000' -- DdzFFzCqrht2k9HVcXroFyigNLF6q29rnUqc87iMjzULiR5MrJPFqZiG9NYqim3LY7oy3Vva4BEo1nLpj2XMDLgwztibF3HAVTmtqRxQ: '10000000000' -- DdzFFzCqrhsoSWFixq4B1ZxGp5dJRwcCVaLxKysvEsvsFoUr4vn6XLDdMExA7QjPm7XZDtYD6NU5gmx4JSNxw4cazoLfZ4YD2YhTdAKF: '10000000000' -- DdzFFzCqrhsnHGn6bzS4USh4SSWt7TGFRXvr6to2UgCAC1PdwL2myVoZ4jM5Y6jSDvTziyoDEbm37djUR1br9tEQr4prwzQMSHsEapxt: '10000000000' -- DdzFFzCqrht4pnJkQx8bzwztv143duEYyKD9BaRjg8nugjMWpE671ZG8rnU3ArfqsHbdasu5Zv5rhfvgfmwEi1eyxXzNfE6YJewGyD3s: '10000000000' -- DdzFFzCqrht8SmwQCteG63pBGLzrmL4LnSQfoZQmPsRgLjBSiKgnicwPjvufCYEbXVubU2V9Q1g1JaiCSwGxvhYiBTxuJ8FNe6MXTsVt: '10000000000' -- DdzFFzCqrht51jL8MpYciemXat45wWv7LuqPS2dY3emJYVrWFFyBvCv8r5KVuTwKA58SkiV9eWmWXVrT3Dq2zjEAW8unSZACWCPnVZPN: '10000000000' -- DdzFFzCqrhtCPHSeVrhQGwiSa1mcDyUPb45WdkaEqKTUkS1SxuKhxyikLVP8fN213a3UTrABSuWSy9PenEutVj6ceELEFjBmHJViQztg: '10000000000' -- DdzFFzCqrhtCQsAPnNfZsYJ8k6hanrwrf813Lbgyz15VVLziFZjuWJiTPRatgKrzMQdwraKvk5aeShudVbeyqGSXtp98QygS5a7eXzd6: '10000000000' -- DdzFFzCqrht93kyKopqa6JkJbiJTacgq16krUoE115dATgU1FPXT4xmNc87TH4AtUgrrzFPvGkDzqtuz4L2eqb3fupBGFciy72Mwcucc: '10000000000' -- DdzFFzCqrhsvso1dAhgEyJRGRrJDTTyBkhy281rX2166ywShZ1WG1Waok6xsJ6jBUwaH1QbMQbKYAArLhgpnLtgV6mqTwQD9nQvW11Fq: '10000000000' -- DdzFFzCqrhshBx8veya32mipNzcFbMhgg3GAN4D2TfGf1gim49PSywrFWUsoGFcC3Uv1MYfh8tzsuTxKbxNVQEUbpKDv7ajXB6wLJkn7: '10000000000' -- DdzFFzCqrhsz8UJE4nmYQtUnzU67kKzwq9AfLEG1eMc6KwNschhS1kr1BozeUwrsFtFxrquomCQt1SuUScnZv6xfJUk3GbHwXa4de8Cj: '10000000000' -- DdzFFzCqrht1XrU8iDYgEKDxvBgWefRFc3fyiPRDxkKkJTBVkHKnqbfRGuAmKHJRdNEg7hdfYz5JtLYF4LhyFsSF8DJ9XEzae2qcZCso: '10000000000' -- DdzFFzCqrhsnnRfpwZcmMViPBXekT1EgWLu5M6GR8uLBaizjLArHs55sw4zUrN5sAUNcYKqDBjL39bnfFbTD53iJKi7bHTgEpLrGJDuP: '10000000000' -- DdzFFzCqrhsrofPrkxdJ2LyYnZoHfqrUdRGd8S8d1VJDePGJuYRK57Rz4dXcFNyCfAgwdJrNFzbgde5FT7XduZ7SrcjGeD6JQHr7Y3Hh: '10000000000' -- DdzFFzCqrhsitf8wPy6UToPsP7wRysPMCb4ZroiuaTsYCcDcU3VEeCvR5muVw83GyzjX6PiPVKC43k96o78Rqi1EQRrQqfQGRUzsmNzd: '10000000000' -- DdzFFzCqrhsrdxLCMeLWbKpg2kNK7nxHPc7Lo6pCkGRxSWdCr3ZQ3iru1TzJms1fyaDhDyrmkWHgPQahc39fWuNvBZgxxgxT8PsoV5Sa: '10000000000' -- DdzFFzCqrhsm1dFRtiJ3mCP7ymy1XLTtf42egGdNJcPKMuzNQYytvvAq3BYVFaxzjypq6kpJnXRqBHmfY7KD1TUzjmYSe6DkxFioAgHw: '10000000000' -- DdzFFzCqrht3UpUBseRATusNQNzqCU2dW43A8efBaBiuNsStxL36LgmMSRWhk3LAavKXXtav4Sa6mskHS6cSkr1xsAJCKVdGUKScpJW6: '10000000000' -- DdzFFzCqrht9EDG89L7nL5xRa837Bzgd8ZNzWgyVZ6aQaDDubRhaCkZuCvrDT8yJSKcgerCPeZVcbep3Q9PAUL8RpuBjshzRQmhcaHCL: '10000000000' -- DdzFFzCqrhtAZnJW1BygFYjQ4VFcvrhM1D188zNLCAVKctbpPURKrzB21gpQCUZqh5EoUAFbPGjTggmRqwTmY1Cwrk6pbQQgNJgZGpC3: '10000000000' -- DdzFFzCqrhsikNDceYgYHAkWxuZKGLHtzhppTbh4JP6Z3NoRAJCTsLt6GPMz24J43bVxzUswtxYP6J8RHKP8yXwsLhMRfNfheSGiciR7: '10000000000' -- DdzFFzCqrhsneHieee8wG7MV88xECMametFmnqqfgRK6UUc3WdXPBTc7zB2sz5dFcsgXQVeyARYCb1KTCMxQz5QnBEhF198hGWKcCuG1: '10000000000' -- DdzFFzCqrhsgLXb6P8bdZZrPMYAobcQ2YtTdWRGVGkggW1mgtQqBZYn8wCxGqqbTmf5yFWAAXWvAw8FbLWUVKuNDcobBFY2wEHhYqdRG: '10000000000' -- DdzFFzCqrhshK8w7NS3VwDXujDhyBNWCBVbTCBxXmrrxiWdpPQcfyHARb12JHXT8ZxjQ2jGZb657GfjniM7b7UgxirhHtpjF4BfSSrJf: '10000000000' -- DdzFFzCqrht1rvbLnJ6wTDeTrkmhecufGuKz2c2FcNW7XqvknouWidJBuggDiYktq39i4LRUYjygdsjjmDHj3NPYWz5Wd57XA8n4sjjj: '10000000000' -- DdzFFzCqrhsoYGPs5CBAZd9erisJJcy9ppqtFVxP86VYzqMTuSWSzEbQFdmP6X9LxEJ2Rg37rG6PDvuV4NPKaTx7EAabzUabjFUyTACb: '10000000000' -- DdzFFzCqrht8Hx66mQdCm7mbdWHATNsAbRxn7Gvu4NSF9QCDmxiujhZcdZTWBZ6QSWMEB8zeBWe3v4JWJ6fb7ygY78UALHbyY6iUwxV2: '10000000000' -- DdzFFzCqrhsfCUG4oGS7zjViF1Kq5i6R2tMUg24M9otSjbdFvniQ2DQEEEZjAQ3ajg7zMf4JJNdTGFQd3gWnVMEzi1d3EArqjsqi2S8E: '10000000000' -- DdzFFzCqrhshMjK4UKScLNrirHEFoG947jyp6E7nAmLNXz9DM8UPC4AGeAzDRpVrwSMJj5aXXuh6CGYosAZG7ydm5ag62Cei1v8wVFQq: '10000000000' -- DdzFFzCqrhsvikunnuxVpA5xNMoGVEEQY8i9ehdipCoQmxxC4sU5wbXxv9DvEQX1dhpRYuXVFca6V4didAT6QTVmZRGSSrtHT462gyxE: '10000000000' -- DdzFFzCqrhsfpMvF4abFootCnqqGZTZLUGTUG1L3vMzZAeHKkB8Rs8b9iwer8zB6tcnsHXRLgenbdoV9CsV2bS7SjvxS6DdA3Rc9GJz3: '10000000000' -- DdzFFzCqrhsq7ARArA1xzq5GhM9eytxFGX8hHybBg1zYuxjy5GVR1aK3QjrYXqqehr5TVLyPSfLNLSU9JL6GeHchYFdZP8NkLmUqnCkS: '10000000000' -- DdzFFzCqrhseQ5wfpYVXPdDyKnCNaRx8n9BJ1jz8V1hJ6E7B3pXQMJgyhzuAHfzc61v3F7Fw94QcsELdLGBbv5K7qHRKYfgDcp8Foqx4: '10000000000' -- DdzFFzCqrhsfsnw3pX9vTEuuJSfNpvhxZFXkSAtVMNxpqJocpgC588E1LPpBFsaZMBjmhVaU7tR4ieXkJhR9unhiyqkgffio71mRzhey: '10000000000' -- DdzFFzCqrhsr15mNYiBhT8JDrPMJnsbjvSJmgyJDfvruMqkfF9pKKZ6hfyeNAW3NKtqT764muqKjqjzepJQwLE5bx6oJn7UmbTL8FRZE: '10000000000' -- DdzFFzCqrhswjvnrbemRkNQRNTQT3rUDhScuNxVGsPpomZC7oc1guLiMFj7wupJiyDkfHqJq1fQSDFptPEkFuywLYgZxjK3L4CsWdjUZ: '10000000000' -- DdzFFzCqrhsi7C5wvHSrewFeqh9DWKtL4EEtFmdyiHPoxkUz9Yo4XUQGVkQXsP1UaepoRNM6grQvj8syBgqRq8T6cozavgXQQrFzUwUk: '10000000000' -- DdzFFzCqrhsk7aBFn9e6N4PZTGmA5U4onA3Ug3WJP36hpHZ8qHK29N3itSHGi59NZJ2SN44B8JEBwBp9PHsn8fyi15RTGUeegDEqBtq1: '10000000000' -- DdzFFzCqrhsjvvGJeLuQZYrU3e9BGQq2xi2qTJoQdW5dC2QFDVAeSHJV4C58zQaEuRgZcnQLkymgvzfnmrpTtwhFjcNPd9K1PzbRM7Te: '10000000000' -- DdzFFzCqrhsgdF5ewqKgZoefu8hYJ1NMkhrdszu71f7xKSGoQoox7PZFYs78GHuM3Q9sNiRSGZqArVLie9Gd3aS4pL9sD9ZJu9t8tBZV: '10000000000' -- DdzFFzCqrht4pxhAijfxNNb8LiDjL5ut6LjvMRHyErYRc3ttfpBZRCoWJR5Yb5WTQTN3GXVRBhh6rBKm8H29AHvkvaif57pWNq7f8QNp: '10000000000' -- DdzFFzCqrhtBWFa8BNP9TUVCAncfKs6Qh81RiYDwohQrKkaEGDBJYDap9FDgWK8FmksxpXBX4f8oag8i3V5PKC5kiFvggeT5euyJi2i7: '10000000000' -- DdzFFzCqrht8vj34iTcz4CixanAkgudw2xeFaSW4wSf5pimtSMXdBA5bhshJ9xPKddPyUj6Wk9uigEMiuQWPYBjmKm3QdQHAPUfqEvjx: '10000000000' -- DdzFFzCqrhsvGMTrYTi9FZoysTZcziExju3Srq58zwsPWxkbabCM1Cqa5JY8m4pEEj5tjneMtK8RPUxYTHkDKSv4mkWtDwWk9h8daUhr: '10000000000' -- DdzFFzCqrhtAPDcnp5dLfw7DnPDSmH1c7ESSDEhnA9UpZgC7bH1jBfMbCUEYt5kHaTNRGXV8uMmCiPTRpP6pvnyjeqov7NjQkhJsdFya: '10000000000' -- DdzFFzCqrhsecVteqJ6rfrHryNKEfJ1hfTA5wB9PHe1ny6Re895knu4ESKUMUq7KWqth3NTH843DpUAiTuv89SZcHGBJKTN46i5auXBJ: '10000000000' -- DdzFFzCqrht6nBMK9KR8dpqLhAM52F3RCXVg1rN3GqKpS6SJmnTUEkfbE1wpE3QUcUvDpsuDz6saj3QX4oNWfj2xXBHsNEnYvEFPPgP1: '10000000000' -- DdzFFzCqrhsuKMys2Mh73eYpLjbSv3AYrR9iuPNWEEuJLHsDATynafibZMBXXuA6D7rhdAzcfxrdwTWHBp5uJS5NyudhX5YvubQrQBT5: '10000000000' -- DdzFFzCqrhsho3PU9uewV1wcVqbcjjYeWJUb9cC4MFcNPSpnQ6DuXmDNYRUJqTCHj5ZRJVzvyaGV8aNuNT2dba1QKoagyQEU5AVgzDdu: '10000000000' -- DdzFFzCqrht8CYde41pumpqH8ATqC3V2UuBzPthLvuxyp9Z2oM8iHr8Uuedb3sDjAaf9cGQULffMdwnwqLwE2CSQUk9xbfeTnn74bBeD: '10000000000' -- DdzFFzCqrhtA8S17spuytNxR1mv4Wh6MV5fFTEFWMP5NfSBDLuVmzvcobNa1LtsWv2A2EwKsn6EdfqdRtaxLiK6Z8yUpG7p78xTPn9p5: '10000000000' -- DdzFFzCqrhsjGqV5p7N7ViTUdZ3zLw1TNsF4KkhbtVqqhFfTBxmKsodHzSz29X8KgnNPDdPu86g2qzWa3TfTcthNE4fqbKA7KvKeCSiE: '10000000000' -- DdzFFzCqrhsvd37ZutmSWHe4MgNNDuuDMGVEgb7XBG9MkUnHBTPwvmZVfPZCQsMjDf1BMqFjVaJL5fH1sXC44B7TonUny86mbhXS7j3Q: '10000000000' -- DdzFFzCqrhsf8vUNgN8sR1xhkBuMZrPcpxVJeU36edc2yhxRzvReTGCzhEJEERRvhNPSvtrzf5bVQZkTpdF7LJznPx44MBkSmp3sGDHV: '10000000000' -- DdzFFzCqrhspw9dD3yHYECAqmamru9b4fNdMiQxBoB2FLRaVrVVC51LxTchE9nxq1XvvbjM9mY3fQwBTLkNt3Qi37q3H4vqqkc6nvi9H: '10000000000' -- DdzFFzCqrhsvaG798uncErvGtbk12Y3SwYqunB1dZ9Zob3r1N4BkPxrXG3cgri6ddQoEYbtzW6ZpGhz2pZt7mXMseZDTTJHGBfwQQNW6: '10000000000' -- DdzFFzCqrht9B8Q6p4LYDs3MitMyC3NzxUWshQHmBhZXDBrNzmRRk9xJmcw4Q2oNfAmbNiSX1zUDGWXc47suSMKaTH7fpQUWPjw3VhQt: '10000000000' -- DdzFFzCqrhspDPBJXM22dRKbQSa1P6RqPm8E4QCwsgSXNTdmVCmykt2xCBtjp8Z61McvBWGR3ntsntxHNSQCkntYfFHFr7izD4eEVCw2: '10000000000' -- DdzFFzCqrhsqWBezj3c1aT6tVzHJKJfFsuTXV5RNzCuQ11bR585jCLgz1BfwCG1U2BBJSZtQ8UxLSW8SpMwnVrvUjahbFnAy4vVM1XM4: '10000000000' -- DdzFFzCqrht7KBByL6LVBYdyqMeuhJpuQasfQY9eRidhLqQ5x1oKvABdqgPpvbqfqgM2ALCufi31qJRHsWR3Y2ADNe5h7SLyPGRyJH1e: '10000000000' -- DdzFFzCqrhtBNdqwfmYpDnrR8TpzgSeyUrviMj27RhzKrBskqaLphpaBkHNe2qhB43p1TgkNHa56Sa8RFRPpuAsqwQLXZFh74gqJAozS: '10000000000' -- DdzFFzCqrhsi3wBPawwQrsu9erKoxqZeVsiHcKQTV15SUXvxcmvDevWM5A5k5UwbJizfxCCp3FBns3tsCwSagpXUP1En8UVvXdUwMibB: '10000000000' -- DdzFFzCqrhseKSAbSy9gtkd3U8pwg5eTmaokXYN4rBUJhUtz3PJ6vPiMdLrkX5eerchXQCsHc68QEjaNg27NcgRwJ7Xj2ijr7VR8AZLv: '10000000000' -- DdzFFzCqrhsik4ct93Gm9L8oVvJVasEaefrQKtgv2214i9oQqXnCFgRrLsGgJMvyxrg8zqpQnm6dz1ktBAC9cmTqPhoXBcgnddrofVBv: '10000000000' -- DdzFFzCqrht4RikzEYS7VAWQmhDUXYGFaUtrBeR9SXSotEn4rFHnk6iB4kit3oAnHHwocmH3CkeRiVW1Ek6wg2dhKoe97tDX5sJwd5iv: '10000000000' -- DdzFFzCqrhsoGuX4giemBGZCqidjDvaJci4FQTdkhKoyEpjAsjdRq2UmDf5KddeugzoQtU38PDqFEmowDZoyq8NpxKbR9GRLLZ2EiQwQ: '10000000000' -- DdzFFzCqrhsuafWiUBoqLiRtvicCxUGjaFjCnBs8qG9ghxyRDd75KjndNAvNxs1diLLorheN6k9azFKcssZL9yrccysgmNYn42TrLhLM: '10000000000' -- DdzFFzCqrht5E9ycEhjoAqPy3Rbn1RbDwPwQ6oadwqs631ySreScHSmzWKMfQEFpJ9yZoqeenViDMa9FJCYxvUpyM1CAZ8EWAViL56jw: '10000000000' -- DdzFFzCqrhsf3KZvkpc18GgUjEZpWeCezNMdCpYVWzFEvhtnc3ofkTWvhtwk3BFWDmSZJTmwdGTRHHQyTVv9z3hZL9zsPPBuwFbQp7rv: '10000000000' -- DdzFFzCqrhtBymcjBernduecHeRE5jL3crCWYb63DEu6uhKckg3tUdjv6J87GMDbPAcBgNGhw5KwpNRDQ1zsdDVKpjwhUeoiPtF4iSY2: '10000000000' -- DdzFFzCqrhtB5K8KFPfrziDJQdn6dRrsAF2WAsypwHYMgyfkTMVuGiG2wDpMADgXxHGkDAABSx9Qf8zZr9s4JZrAvawASvZuPN5wEWdi: '10000000000' -- DdzFFzCqrhtBQ9uJb3SJKTEUxozZUZderwG7PMoVkL1bSoBbkCZ3mfuVHtGemXZxkQbKEg7eU8ArEAtMSbk2HfRWycHY3hsXchnyTpPd: '10000000000' -- DdzFFzCqrht8KddSbpWJWgQTG6gsCQXWmyi1dnRA9k58P29myQjErgoSazFf4xMUJ5HC6ZXE3A8Ef8gz4DkE2iLjLJiKp2JGohUU2RCb: '10000000000' -- DdzFFzCqrht4Z7oVMF5FAbZFENnhUGo8HDwi3AtvBCewoAMguJMcusj2xkZ1G2KNaeN7e62vi8gbKcaURc7jVPHf3DK6N8gwA2rbyhBn: '10000000000' -- DdzFFzCqrhsqdbMLcwq1ir9ttKk8QDJBuJbPzCGtCifRuq23K1k9KpkrdbuRWmsUb1nHJwHvEsECHf2Vo34cem7geb8nVemDuGzMUTJ7: '10000000000' -- DdzFFzCqrht7U2Eys87vsZYbYwRTtjWvc1drULS4pk19QE4duecG8bKN9qPT92P4rkahCtr6MJj2zPk95aSN4f49HPd98KPxFtdTVKnS: '10000000000' -- DdzFFzCqrht8eBsZcMSjVMXA9MPMzAqawGyBc73TkjzH53mNTF9zfyHUHPhZibmJSCjF2LY3w2XrQxZ7F3fKoKuH5BuKfhjRwx6eRMk1: '10000000000' -- DdzFFzCqrhsdnRDN6ZLyNSzmdd59Esn2htSY2zqRZWkBEh2zA2vpkrXmWUb4RqPjSqPk4ccZHuJBZTN36gGk2HzQSVHKc1KzAv5yunhT: '10000000000' -- DdzFFzCqrht6GTRsyLJdyHAUCnESamUmnvjncurQ6zd8U1vgt3tvkXFVntpLEynDi78sLZKpJVp9oGmmtKYhkTHDqdzEXi6JYqmiSSda: '10000000000' -- DdzFFzCqrhsfB9FNhwvC9KEquS4eFQiVUpXdGrL4krwkXmQ49VszbYd7S3DJmSurHTozCjRCRyvsUn5TbRg5vK6Wod8em2YBum9a83pA: '10000000000' -- DdzFFzCqrhsn3M1bzAvqPqA8yw9thMh3639y2c5iFR8aLvdAhKr1EhRFHY1ygjSz1PdEbmgs3Pn2ks1pep8qE2AkYbPXz71yEFyGq5Jk: '10000000000' -- DdzFFzCqrht74ptLRT3UDR7refaNqtDFUe338o2FwgrDsYKYEhiUZaBALNm1xLxxh6iSrDGQkgYb1VtgCZkBGyekLSE2ebnXLEZ7mU8D: '10000000000' -- DdzFFzCqrhsgXGomhLSrPnrezNzHAknpjuaWEgKVscbdM1JQepwEhap9CcLzqr96eBU6rfsxmJbDKjCjNNXy3pXmoS8494EFJnkZQa6j: '10000000000' -- DdzFFzCqrhtDFEzUa2PcLpHQVQEjuytjfUC9WAGUkjtYnd5nCprVTmKfxhzhJd1jRkVh3aFALRBNgmf9pYKXoLvKe79x91UKCuPKz9xV: '10000000000' -- DdzFFzCqrhsmhDuzuLRjzVQpnhTPy8d5Sv7SwhpuNqfctRotUu8tDS7d9ioBif66FBVDpNXdCpb82Zt3eZhvrzmER6wjCzLGQkpmmfYJ: '10000000000' -- DdzFFzCqrhsmbgdPRJi2kNgjYELYFGC9jspHRezXXo5Ka9Zb5fvqAqaJdGSJcTnocRyURjHRbrW8pDv5C4h8AJoL6QeZ2R2ykH7YLvKu: '10000000000' -- DdzFFzCqrht13CTSxXhUTBdqcm9PankB4vCbkPhK71tobVwkTn66TbQG4gCH5JPjiQJabxtfNWBjzJJFiAoZTeaiZvYqD5PbsHbnf2X5: '10000000000' -- DdzFFzCqrht3T4RYwMSyioK8LWEMTSyxWngY51Et2Grj478dxeZbsqXtSbaawjJHz7xNMknuff9Evoyj5JAqdm7g3txwyzYmq1fi9HRn: '10000000000' -- DdzFFzCqrht32VWaHYHhBpeA1freMs4Z3eXfoHNz6qrGHQwqQRPPprrj9gvECqTbS8TueJwsEbUvzXJZYpLBSBSxSH5bAphxvc9eTwrK: '10000000000' -- DdzFFzCqrhsr1J4rtwSn72XjUPbKKHTbvm9hxuWqEm5jsojSiY1DNH1bpMmvoVRv6c19Sz5dCxbtF5XAn8ueF1617LD3NErxjRNbxc75: '10000000000' -- DdzFFzCqrht7wF5KB4S7siCWk4izz3UJRnymjQBdPeaYp5utMdEUGM99DRkgharYPURB9cLtv3oWKG3DeCXELtCF5DpdhXQBv4Kv4Cir: '10000000000' -- DdzFFzCqrhtAiKwbcUajTmuwa8hLyqJHgEioAK4iKyAaQrUGnKUdYVtrz7j83i8R5dXoPwLybYtin4twFEd7mPJCR5qKhu6uBJvKDxbh: '10000000000' -- DdzFFzCqrhsthrBjqKzNbTkUdD1SoMNvVvf4cNN6Gh4u7uwcHJjHL2QzG5WEcekmuN6bgWa9y2eYombrMoaNRnhzknQyoURvgzTjVi8K: '10000000000' -- DdzFFzCqrhtD22TCjJS1kdhcqeNSaCi5Kvb5Lvu2S7YWRSHAVaQ5SihumEfoMKkrfbqmS5iqHqBPFmh4stq9etTr5AodqWNtHMmTJZoR: '10000000000' -- DdzFFzCqrhsyguE6CN59zezKjDFC1jSoCQDvn5g6q9EFXmrKdzFXWzV1pARV36XDTbDNQYSz5EFYEtCJZFGoezhMPDq8pkzeYMgWZeEa: '10000000000' -- DdzFFzCqrhsnDM5SaEoP8yDF5wi2XAw2KLqYd5RzsUA2JEVr7KqTTQ2NVd43EC7mS93EZC5NycW1zrghHQLWvparLyafAyYNqnhwYEHF: '10000000000' -- DdzFFzCqrhssVDCDxgZTPgPD3Y9WSLuqyfXRCSPqzkxtvFf77JDLMqhQDVHmz9r9fYryBMvg4b6MS58Cg9uz8tFtyZzwwQBNfAuJxqck: '10000000000' -- DdzFFzCqrhsedHfrifMgyVUSVLgPW8N1QJQK3kfkRGSw68bNLcsp7TA8t2taoABwp2Uvdis2ssSfBq5k31GLf88HveRnKcg6YZ3j9iKU: '10000000000' -- DdzFFzCqrhsnUZtisuaEMZvtT4PWPhhb7aSjTPSDf1QndHzcxAMBr97GrQXK95y4Bqmi82Tt1boVJAxURkBaeMsp3MPueNjizoF6s6iE: '10000000000' -- DdzFFzCqrhsntNHzA9Ma6rtKWPQuHekuDB1rYu5aaKAvd5x1aiXouHipe9RDgdwKJQjo5rK3ErgZYrbiBP2yRErsqCRP8vURxHCTqx3k: '10000000000' -- DdzFFzCqrhsqVUG4obH7CNynkBUoonCoAd4oVE4mSwixpjKjG4oWaHa5qTfvEjDitJ1wGYv8Mo7AW5GMFpp7JQSzjsav1bAE6jNoYfKs: '10000000000' -- DdzFFzCqrhsjodeFggviQ3JoPgQ39buiwdQkk6bM9ik86PiKk2EyGTACCwdjqUyGHshqvteaZxuCyD1uQ2YXHyhjRxg7WYsNr39Bdbfp: '10000000000' -- DdzFFzCqrht5MricGnFpFgPHaf1BeFcJ5v6aNAgXwi8jncyUy7ovcWNhUczguEinDYa2EpNtNa7VkHRdZurPhyNdgvF7tJjqeaPc4X7z: '10000000000' -- DdzFFzCqrhsvr5Z5UhsAr74ZoWag4QhcGZ55vWqBtVkMDQy6pg12EEBhtEtzdCcXysP636unS78w46fmh9MwHJBNRd3s8AVMx5LyBGGi: '10000000000' -- DdzFFzCqrhtCCWEGVB24pahVkjtBiUA8xhS9xqGj2YLjUnCW7iPs9zSHHEkdHiSvZzXq7dTD2U44tKSvxTTRpoUenC2PQ4g8dk1ggQkD: '10000000000' -- DdzFFzCqrhtA4DvzBfGinwyYDH3djyYM3tNHkMxcvGVWL3uXxBMwNDaA18rq9aVGtgRBexG6uZ48xDDq1A5avKvFm1NwMZAJBsJ8dcpV: '10000000000' -- DdzFFzCqrht3rxvH6rwC2rEHaUbtLebTe5RpgEjXB58owS6aqLpN6xmRg2gSKK5jT3m1taraaUMPDDngmG41K6BSazRheX5y429vJvpM: '10000000000' -- DdzFFzCqrhsfXCNd1rPcDJFDSJf35aEY87T5gyNSbuem4zQZhLH1UxTATwa5Z3Yk2ojPjp5AmFAXFJDTuyncSnBd8ssTxjaEhcsRDjw2: '10000000000' -- DdzFFzCqrht2kWBbE1yLNHVLGNdP6UWDqSg2U4GfSsn3TRJy6NS2FpggHmn1Az4E4GJcC4u6REJPVXtjptobb2UG6FKf3sf7w9yjwvJ6: '10000000000' -- DdzFFzCqrhsiavT7TLS6sbVyn7xDedyQ4iKk3RuK8U53YLfDgdnMvuEjLhKTjjDRj8mwZ4GxxDGjkS3MXgqBmKK4oqwfnETYyVwN8Te3: '10000000000' -- DdzFFzCqrht35KEh6KPSep1NAngHuaHqTrzDdJKrqwbM2buY9hNAzgaTw2onsr7Kyu6HkjhTpnft9NyywxzMwj6XUfSJeR3Ccib25hU6: '10000000000' -- DdzFFzCqrhtBSroBoZ8ini2Sen7AAL5he7wefqUoF5oJZkrLRh87wiwXHHQRaQbwNT6CQN21TFwicLsLey2m4KXb5TKaCKAqx8cd2SrY: '10000000000' -- DdzFFzCqrhssVuNLJYnqs2pk9cgoExcvymaijVmSQgWf8MDydSjr2tzKfycsH9jS2DuHWRQ2wr6pwecmMpMkLsb3p44kGT1QCm4S6pjY: '10000000000' -- DdzFFzCqrhstzym611BFyakKbgCGjKTchb7eq5sPAPeZ5zAWe8MWQ8aCBUh75Bze2kuMzDMKoJbXCBBGiM8CfrjNf1RDf5uoxkcUBwHY: '10000000000' -- DdzFFzCqrhtDB6tRV1PZhemDS3mrdKKLFGBXCsbxo7HJVyHJ9ei62hmcna6vwYGt3yd9sxrSTFJ9Mpkg7YtDQxKUETzXqnXy5y9CH2nc: '10000000000' -- DdzFFzCqrht9FJbc2WiLVBt5WTh58t3SqZiQsiHjMzyHqqxQtBYvamG2XvCY1HMDVBNpNk3wdpAkwZmAuZn4GDUa7m6mPawntkqD8oMW: '10000000000' -- DdzFFzCqrhsue2UvhSTVXFmQ4PkLAtz2BsTuxGZ8BMbtW7eau2BAGEXabyxeZHnp2QyH4JPRwJgxTUacGJ7yFpLjsKuLT183AKjceZsx: '10000000000' -- DdzFFzCqrht27bMfZ8MJgTGwvbNq1uUwk5AUoRnvRE9VTso7QeZ8jP8tzoLhcrvjWsUYjAb6nR2zHaUxGcVVzUZoDDXM3b4nZU5SqwzV: '10000000000' -- DdzFFzCqrhsfvWA3swTGsSyeTPrNNPQ2tyGz2cvzDWN7DTHpw2DesCF45YMRvczHckzYC5GjF56WiPn27mStLnwkyVRaxREbCdPZ6sqn: '10000000000' -- DdzFFzCqrht17CyjGf1iGd4C93BWmvUUQPiUUV6uxnHpP5t25WSShWuGTnGNqt54mtsNnE4nyH1jUPjM7mTRz7bVzoMnLkLJ6XPiacp7: '10000000000' -- DdzFFzCqrht4yMWp8VKn3wZfrBe6cZrzwuuPePBjtn3YjWNUe8dLKrE5B8djoGK6pVHwtaYKcZGsLcsyYTVE1REmu23gbWtRDFvKih3b: '10000000000' -- DdzFFzCqrhtC3SSYgNQgXwg6pUBoVWtKdLCHUJA9sjmAeNMBT8o5wwUUuJCA1h2FEaUXMC6PoH7VS6SkREgmh2r9x3JweWGDUqC8WZnP: '10000000000' -- DdzFFzCqrhszHozdh7ExhGLkTnc8bHzDFC5FwLEFBADTH7sLSLmKZBo5kKsDZzRdkyh4XmN3EsBkXMAszHfpMfAehj87W6hdPo28evAD: '10000000000' -- DdzFFzCqrhsiupnwzg2dtkY3PVApcTg4Fzt5K8naJrrbkQrbYZ4XSiR7bvPW1kTZrR1kGDSTW3VqWr3pGSqRUn6k4s8mzFY6Ciw2H8Qe: '10000000000' -- DdzFFzCqrhsnu5yxMyympCi6Xu5UiA9BMdf7N1RZ5rZidknBSKVBdkfSvP16KqbeuG3yxYvcsmDtSQb28P2TQnRzKPXQqvkhzMpcC4b8: '10000000000' -- DdzFFzCqrhshTHrbfbxQ77EXcWnpiNvTgJEthxwJMDhfbCGxzPAaPrqLikn7kFT7FpNFHWyJTZCFpjz2NM2b6ELZH5ebKRFtCuFSytej: '10000000000' -- DdzFFzCqrhsufFwxJGXf3ifThZvCSEF7dTEoqbmNABaosiFXpuDnRpY6wTWnWbJD5w3duPSeiJ869W5AySG6u77qKVSY8fsuGMXmJtC1: '10000000000' -- DdzFFzCqrhsmBa6F4hZPLmbs2uPrhFHAAyiB4Zabh5KybAeMUf2QeWdWG5VwCd7tGtG4fFeWmTgN5ZfXDxdaV3XSe8xF4hjfpS2fAPoF: '10000000000' -- DdzFFzCqrhswf8E7muMq2hWCq7bp6eZYp7zAeJZ5K3qz143ffknzU8ASPsL4dbPqTgnfQQ8evqGXwQmmAwasK1Qa8Dd2fEpFiUXU62As: '10000000000' -- DdzFFzCqrhspYHyNvWJpEiCRNQtKNfVPxXngLatdktZkrG275Rw9cCog2qa4BtwsjcTjznjn6DZLWVkHaX2wRxe2ux6w5L1jMLhmPCar: '10000000000' -- DdzFFzCqrhszHY9RnrwohyWQwh2nBZxtS9HSmPMmGHWEAdHa7yjAaHhvBYiKq8LHPmtWiPd3RmP8KaYNeA26nwqFhrWrpB3sHVPCdVCE: '10000000000' -- DdzFFzCqrht2CjwUvdyhtaEfCpkWYtMvMUCbfWyFtNh2K4k2ZKPtnx6ttybVLKssa6RK2jdA8xW6DvYmT5aaomZYJHmyweBpHbthwBaz: '10000000000' -- DdzFFzCqrhszuqMAoRFdhCT6JEjtXw9BW2RvenicjaA8Efd4WKWmRzbJudEiEmAXsFo19z7FFy3ZLkJP7JyuryfoQxXm6phQZysUrNAZ: '10000000000' -- DdzFFzCqrhsqZAnQvqhGYDToPT5igTbrJoRoEL17cpEzdFUrLyb2UygQzsvbwhV6oNtbVTmyn1BJmo5xcidFmKQfwFVzZgxE653yGLF4: '10000000000' -- DdzFFzCqrhsm1aZZ2UVgDBF3jtUpRKaWtYFSVzrnCywduAk15MGrp7z12zqGD57xxGgwXTqvFwpQCRsFZs8aduB8PgwvAfKFJ9K9bc8C: '10000000000' -- DdzFFzCqrht1CtQ699FnjddzwQeot8jWkrSWJPjs26rE2295kpzvhFmSMzjBsWySVNrhMRHVXN53CfmuWMs523J9htfkzvhazDDgoBk6: '10000000000' -- DdzFFzCqrht2dX88v2WiqHxjD6Tj4s9QzcS7CQVCHQBANyX9X62dzcfFwJ8jd2iMkMa6HUNWMxdDDcxag1skioC2TgjASwQkdWeHkZoz: '10000000000' -- DdzFFzCqrht5tRXazUozUnXxkYSaGNVj7P3x5yuWenKcis316ZypGgYprNrvFDQnD93Wprv9qhrQEns4qktdsGvDTzcdUPpcCtDEoVT1: '10000000000' -- DdzFFzCqrht2HzGmmJDG5Vmudu25cuCFnKkd8sNLurug17WM7gr9qKVpdkLTvUwGkqztKagJyHnTs4CTgrAQM2Gr4kr8HP4o3y9kLVpi: '10000000000' -- DdzFFzCqrhtAewQPfHkqCg6wRe3nseiATEKtMQb3R1pSjKx18J7EZa6yNmUMvSYMqv81zFh5Bi4Hgqc7G5RFwbNf1eQSu7reQDVhfJCH: '10000000000' -- DdzFFzCqrht2uJ1BNrNhkqjJ6tPwNXgQ2repfJsKAoaqjg7vXZugJtyAULYa6diowxwsyQLwGXHC3Lnw63DjmBqdPPhHBHhAKk4VUGu2: '10000000000' -- DdzFFzCqrhsh64VWCZk9Z9ycxafDqpXLCAqVhuF3rV3Saftd1UNu7JM1iZFjbS58p5DWRSfbKSv54gwGvAZEEgSSgYmyeEf4d6KTQL5S: '10000000000' -- DdzFFzCqrhtC2eYjcruwUvs7bwXsPwEhUHZbuQdJLSQodUaF4DoSJojFYFRn4y9VUTMyKbxBjZEwxqBaLUZ1g9Zy7aDCVrECH1frbzK8: '10000000000' -- DdzFFzCqrhss3tYm3qU9Et2jcLYh7RDwt72cpvq6i8KTCtKY1e2wtp8BFJfsCuegzG6gm186o3g2dwpgKNyMmCPwvXBV1xrZkCJkXZUt: '10000000000' -- DdzFFzCqrhshUvafQSrpnpd1ZzTD5CdHzqzB66QhpxifQCnT13WaSYxwbzb2KKEW8izuD8C6eU4u4XrCN8cSaPdHtbRrPuJZKutxSNoQ: '10000000000' -- DdzFFzCqrhsmDoLuXNJfhMyZpT8VeCaT4hN1BCJBwha4pD1NxP55d7oMGxY56S3DN6QnqyeYyC3kiKCPNXsPr7u7EX6ZsedRap7HaJUb: '10000000000' -- DdzFFzCqrht7R34pLS5NdR7ePiBtz16zfEVoyE4oaJMEuWDayAG3kydeZqD2yiNkTNvEQgHw5LJMjsqZyMHSPrrFuEkmHkdyQFNEz8Pq: '10000000000' -- DdzFFzCqrht3Pu5M4iE9Hxvg9UiaMNnv9kSZmxggphBmmnM6nWL9ahfpRf3AYFVLiLcfvXgzApbUdYoypVgUTm6AFxXp8taipuwRwGtq: '10000000000' -- DdzFFzCqrhsvcnDs668wvgqaC5jcejPgyWbHWncAc7fKrkhEFFAcX3WifLs7Sd3SthgbHS5RG14qRw1N6WWqtWYQc5BvJXG4CPrCnNrg: '10000000000' -- DdzFFzCqrhsnRJvSWfELm4PBGNz7FVPEc6qRaNfKMa7sAGrcjCDPFEQDKujgn3sJ8ssqB1jL45NAhhRjFzpm54caiHugadsTrHBNB3wi: '10000000000' -- DdzFFzCqrht1t1hJ3otDAB77eQZkv7Z28viJomZ8YpjQJnqHLq6ESaL3yUpbToCxmtrPuUognQev81D74SkYKRSKfVNNnz6s9PF1ARp4: '10000000000' -- DdzFFzCqrhsuAxiyJCYRBYV9Wd7m2xSiFzt2CRF6LzN9b8VXEeV8kJQuFHXGWVpdeahVvWXZrFcBpB7CrMoWFxCN3t384WkMvGPdRfPa: '10000000000' -- DdzFFzCqrhsw5HAYvVkxdzoqJ6B7iLCQc1PcdphC44G7Fgce2zYwUUFkbTJEtkaUbEB2iYFhGjkpM2jpXXbrU6v7Ey7NUZ3gJNUEv4Tb: '10000000000' -- DdzFFzCqrhsgW7AJzGDev7mJMwPhnyhJTbj6oGuxGJNYSRLbLa4Hs7EKhhM3cLf8GRdZ15hNBx24DUuPBrrG3gXd2BkppaNPPC1tKaii: '10000000000' -- DdzFFzCqrhstgD6mPUe3HyHTPWsaS5GYWX8SJxh3FpSPgjiCBn86B77M6DH5Rn5zh15oJA65PZMTEftFFWEUCvHTaXFccVeEYEifvYH4: '10000000000' -- DdzFFzCqrhsxPd9VyNRMEz7ud22Ah5SGY3VKmTtUEYSqotDqoU8R3wGyMRwLbAiXD948K66WvdANz8xdoQNKNWUu3xNMbNbgky53Es4b: '10000000000' -- DdzFFzCqrhsfsVn8fQPTdVRCzhPZBLq8zEojHmnppSPRAKPvcPfhXEUdH6uDh8AhGVKosG1YyLZnWHQh49BJSHDs3pkTKp1Z9xHn8ADq: '10000000000' -- DdzFFzCqrhstgazfrV6PciQzC3gDoY9dLhzuCtbcUexWGqcM5V3Fs5E7XdoNrFkGV1KBgZDCF1vjyFiUwPvNPJ3TK3Aqgu4WmQ9PzpUL: '10000000000' -- DdzFFzCqrht85VsHdJqCYJDmiDaaJjRNPk527QEktJJejERR4jcPEAxbjVQwTanR2dAPwWuPMPEancQSNv5seqjqvJAum6AJ7zWgevuo: '10000000000' -- DdzFFzCqrhssyAHKKqNebKoM23WHDLCqhMjpHmcUvksjjkJzdY8Ft8Soexx1LDiP5ATbqEZbG76Ci5Ni2Dzx1AUBDR1HbRHB3LKhrUX6: '10000000000' -- DdzFFzCqrhsj4U66gcp51kfva93ynUfX6dNnmMqC9BaGCr9MTha1i6y6hizZvNwsycKgwFkEggA3FaJdzrap3eRAiPnqwBGLJ3pjqsgx: '10000000000' -- DdzFFzCqrhsmcjXnSs3Yu4EcGuenh4xBVretyA6XjDi7AbjYVp58DVEaSsLeK5sJ7Pg99JGgWXHHa4j4Nh1F87C9mA9fGF2AXJp6DGkr: '10000000000' -- DdzFFzCqrhsvCRtWW2MwgoVC7NwZWC33gNiSP6ZZ8f7HMWwwAakYeisLQQ5xEDmmEfwmFmjW2hEqBaSXhiV4oEhYSo8EPza9FrknnmPD: '10000000000' -- DdzFFzCqrhsgrGP6Nn5ywJjT14gfLasr9twyukvTRCuqaFSM8jv6955zn4moRtY2tAb4YcDEb6UydXxkmsZofpSbpdT8XjgwiAfCtMnJ: '10000000000' -- DdzFFzCqrht66quyC86tAjoQeHvxfDEGnX9AhAbTYkxiVXZQmE329JLwtQ4ybF4GqXS177BuVHaJR6z5qTMgjRpZrBQqDV3NzgPBXjXg: '10000000000' -- DdzFFzCqrhsynoQsqCixazQNK78GPzXonQwQoUoxukLB7LVCL9ZgJNVEd5RqHGAwk1AeKXQpnjY8fs73ANafFTjkg6u2tkWb4ekvatew: '10000000000' -- DdzFFzCqrhsjfkSUMTiHKt3bv1yZvyWCvo1yPKb2BafXzwx2CfZYeSMz8LbKgwKvSAhQWKVpqmGSMp4n7GXh11NTRcNZFuPEHPNKk1zd: '10000000000' -- DdzFFzCqrhtBeJnzCEy7mAdoRGobLWU835q8XGyvW7Z1mbSsoK5oz1ZneyWbBiFb8FAkRZL7fc7QazDxkeufA9bxH9DoWfAMD6NxnteW: '10000000000' -- DdzFFzCqrhsnLWK6dUtD3Uh35xwxRdioGwXE1VfToPViz4gZj7JrEpy59DsfSPpwZGLh2oHH78LveaDTM8jCMoi5NocvsjspLtZW62zz: '10000000000' -- DdzFFzCqrhsmiPJzTzzhJMPfNNMNoVSnBurFv1cHzxkvQJcmeoBTcLEpV2suVNbiYUNdnLLNEdxJLzohSNUmBfBEjAgV6wd9AAo6NAqi: '10000000000' -- DdzFFzCqrhsxrerM57qVR4DRCV5GmdYXCd92ypHdV5KBLtit2aVXVFRTmEhuGSLBT216DroY1NUk8v2i9Jn7pWk9jQjN5U1vVA3v3RhV: '10000000000' -- DdzFFzCqrhseL3qHzrGJcWPw1hQd3sq56kY86accLCwC7CxzR9HUnyhRWHzWxscQJZD1gL6obJwBD11FhLjMZEwkwrwvDUAS4Pmmfx9c: '10000000000' -- DdzFFzCqrhtBeGgAgC5x6KPVrkWUki1DUwMTYqbnApyr143ZaxoazKynbyq2R7AB2twcKXuK4p7Y9LURSKfL5HFne7xBHT16LV81myLa: '10000000000' -- DdzFFzCqrht4GPdNGsAPnK49wAi1F51YCs3hiQNGhMrtX2VUz78c8rJLgtY8RkLrLiFvptMx4iZBqeq5kXuEzVJoK7N3ccYpPJ8UEmW9: '10000000000' -- DdzFFzCqrht81o3eJf52zrpqkLMg9XeXec3FiXWGKQHDnCc77BosGHLVzVy1pbpGh7vXcwuhsbqTZibYbKB3Ga8z96FkEz52pysncxkK: '10000000000' -- DdzFFzCqrhsvYmMBFWAL5M93N4yKW4BhgADg3WSHf5ocqhEwUp3KoDATdZLszMFL1FWd961ByGVVDLHcMr7p351hNYTt8TALG5Gy1FWp: '10000000000' -- DdzFFzCqrhsjHYggbP3jcvZnEjV3FmfCMS2XKeymB6NSeVQgp2UPQbcx8ic4raGxXHoSx2kAdxavZS7KdFkUj2G1pfcHJnLMZAywRBuk: '10000000000' -- DdzFFzCqrhtBqLPeqdmnPBRwhQXGj74i2VtAb7Wi2PX3xJDVUdb8xxT89qSvjbGzwhGEWpehhVsyhuNn1XtMhCDNQXXt5yuvGZCzRxgD: '10000000000' -- DdzFFzCqrhsnesabcE8wBzAPD7kqsotKpaG5HigJebLyDqzQrZiJsh5JyZZA3YsAuGnPQDBTJGCJ9ZnWoNfFQYZjD2w5u2pSraPEE6GV: '10000000000' -- DdzFFzCqrhtBxTwHb5PicMkbp4XDLD76uDcoLgJ3M9Xm6fpkg6iTtkpBG4thYvovuVrhj73hqXSZhvHpcJjCBmzPEWpdqTjdgEaqRbJp: '10000000000' -- DdzFFzCqrhswXm2SsmSMFEgSXxne7cCQxUP7HZxvwKV6cUvmeqLXhixhkVBGpiBEDmLo1SnFuL4wCGwudpMazKjfAKczZoH67HeN3hcT: '10000000000' -- DdzFFzCqrhskCWEf93NNZyBZQXmVrCGsLcjWZMBuW2FpbaNyR5M4mF2RgFNaUfpfYdbvgQrYThRjrgapK65LLe5Ziwui4a1dcu8hkLPJ: '10000000000' -- DdzFFzCqrhsjYQJRVELiMz7uHds5QQaRcYhzTzxraFvKfA86nF2F2E67LzJ2qGh7zgAs57k1x5fLxT271NRsDuMwyyDAonTnkfk8KbMo: '10000000000' -- DdzFFzCqrhsjn7bwzzm5KTT11n9wzAsYqdf6vQvtjMYQs3EP1XzPSCLjAU947obPzaAgAWTQdnSrJYu3kvjPyg4QvwNViwDb5Ybichow: '10000000000' -- DdzFFzCqrht7MaJGX27cFhYuRmyamLEJ84fZ51GUMVJ7Qf1GzCzYyz31nPRiRxHAsxaM47HuwqaDFBQmDF8CM6yV6hdijA9GLfCthDcy: '10000000000' -- DdzFFzCqrhsm3iajZhtLy8SqA1N2dyKbat2x9Sm5ncvQ7Qynk7rYyFAZ2nRrGo2dcAA5aQMVTSxz5csKFTWto9mzYWfN7PViSYge665V: '10000000000' -- DdzFFzCqrhsqiJTdP6xw1guQXyfc4ih22xsJAcZtAoxL9QYN4rcV5m1n3YrVopabXKpcwpb9HWsnS9mFEPiNAqAsh7ReiaZ3AcrKdAet: '10000000000' -- DdzFFzCqrhstSbFSWPnTDeFubtefFSt1sbx6m3K983siRWfbu862Vw426FexoT3Rigasj3h82MmJbMj53qtQpK47ZjTcaj4gM8zdWRdz: '10000000000' -- DdzFFzCqrhsszwvVhkDYyKjGLRLgHJgdLeNLnKpXpEhvRLCUdv2FpiJvztNt5FLgNDYAwGmnW1Nzxi4Uqj2mJs1KSTQdqfFkHWVPoPRN: '10000000000' -- DdzFFzCqrht27hn5jgdjpKywH4Fb4cvZ4hgFAaMQLh5mEvpBGwMkArPhgLAYUsUK8Bj8SUfA4wX1btziBhQhQv7tU5SgC8NXBfVVY31v: '10000000000' -- DdzFFzCqrhssEmDggFGe14YNQFcdYziJuWiRKfYADyWBHyeWYQcvE9xGShQDqg1XNg4LwJvPETqY39CABFVNBQiYQwMPhBgeeF4b8B8F: '10000000000' -- DdzFFzCqrhsmkgAB5uD3BxBhnjpaQQaLn9xBwX3JU4bMivKxp1iaD3CF3DLKViTuhWFjDc2iUnb2qR7CSUTXzhDFbhCeE1fPeuYpg6n3: '10000000000' -- DdzFFzCqrhsjY2waBGSMqHScGy9xKDcDqKtqxvG1um2cCqkQUS8uLFr7UyP3UF9nsbmmggeyjZLorMH6hGCB7cNQwvCUSKsCufokTnqX: '10000000000' -- DdzFFzCqrhtCDC9iZL2oyBGnj3jxavaDxwNuTqHiLLhe18q5oozydzot26HqpQLCLfGaVHjzezjCs1WnLZbY3Kx7qia9LfcVXmbRKoXm: '10000000000' -- DdzFFzCqrhsqwGgFeHaSHKpnXUwJoZzt82FMFtWcjHCnXML4Rew8w3jnGrgMC7j5F7njSmN8yT6gyWTTy2cZvFjXEspBYpTN5Y4J9S9Q: '10000000000' -- DdzFFzCqrht5hGXeRiyrrLYN7v9VVRBcS1UmsrYHCxbooze8DEQFx23DEV3vhQxJbXGY5GTFkbHma5wTK6A7EvS6qNhCmwGhEKHnTo83: '10000000000' -- DdzFFzCqrhspcAnUmFchepbFrAcTwc45XfZBWA1FfwCdqECCy1S6wBQB32s5s9cYiXfR7sXTSemPZVMLEYPEXSEc8YyWsDLNLx43x3tp: '10000000000' -- DdzFFzCqrhsvGWuG71Qb6bp768uagkuvrz364Zw9tEnNwTiSLa6LS3quRpo2Rc8F8Hir6oLg8VLdmd3K8AvvFPbta55Ny71hnj7qitZR: '10000000000' -- DdzFFzCqrhssVjUsGCDZuLPhPur5TaH7NURnKaNU2GdZQ4FAAtg1USouoi6xVieZVjHrSqmqoonYHS4s7v17A6eUcyiJWvtvfNo41Rwi: '10000000000' -- DdzFFzCqrhssQnVVWihm8GVfU4HgRxL8FxQ26F8mqa1Wu2y1hpqrMJqQXe7c3Rt7JhGGMcnikTXwn9UBS2nMUU7hj6bmz9Zzofsut1zK: '10000000000' -- DdzFFzCqrhsq7iUtW7oCUzB223FhkVxpDNMVvGvTQDkDvLbTw6yZHbE42vo2deMSTwX8hy3zn1WqBBhNXoznRWfVGyG9THtriRsxGM72: '10000000000' -- DdzFFzCqrhsyw8tFEki4K2tmuTNz8vhKuHcpZ9drkM42CW98PGvxrim4YYuK5vzgx6otU7rqb1H7FNVJCcbr4CYyHDRVaAAm3YVsxhUZ: '10000000000' -- DdzFFzCqrhsx2RZoAxRjeJhSgBy2uego8u4zvrt4BwKvJomgXxxGvsbBt6AyMKBiCRkWgmazUZLFonnCgjLd9bkzTMGVf4v7Yej8j2NE: '10000000000' -- DdzFFzCqrhshSGZVKQL5guHqdzSxjc9vgJ97PJnfDgwoyEYFes2uuHrZZNGq3uNeoX6SKZYqj4iYaBScLthsrdWF4go5Fu2XMfkB2ovR: '10000000000' -- DdzFFzCqrhsurXqRgFhHy7BJAKiQrGXTtNyEVXfyG5Av4hQu4CUDv7F4fHz3xFXfK8jU98G7edePyNRsVujXyPQioufcxtvLn5P3sGYV: '10000000000' -- DdzFFzCqrht6AkX1i69XNiPhUDvJLPRC8mYQsZn81j1Tm8G1Mb6BRzKZYmiNnQHwxuw76ZxJEYDbsoGvtkFg245KPP876u9MtiPLNFVF: '10000000000' -- DdzFFzCqrhsydVKugKbZeRSqR5HdSZ6JVopeCtFAxKqNHLTbCfQ1N3Xb5jW8y2mmXV7jMnVNboHAHhGbPK8HwNdaSdVgBcFsfz3uiJf3: '10000000000' -- DdzFFzCqrhtD2jBGYMBaEfZGLWg82q2HPaD6jcitzJcSbR9yXabhpS9jv8JB9Z1V611Wc1cSqCiZBwfsTrLY5nwBaRpmhyZCyWfEG47R: '10000000000' -- DdzFFzCqrht8Yd1tRytVhqR9j3tAbQxeUrGRMk46Tub3uZKaimVUR3W6vuZsFGx7fHhZxMfy1yYWiHTFLQmUdtW8UfutmjEauUWwuwTw: '10000000000' -- DdzFFzCqrht64vuNJEfBn8KbquQn87HznHNyjg66Bpdv54t2VhY8Mk2EobgCLeekUJWEBhJGwyaXnzJCM31TFPPLKcJjPw6bnmkc37Fe: '10000000000' -- DdzFFzCqrhsf54yAgsFscJNBzGRRbAkZ2d9H35DtV3yBp9iYhj3Wckqig1HiCJmR89RnMd2wU9wQdqek8hs5UBoiNV3ToM342yCVmmKp: '10000000000' -- DdzFFzCqrhskDXMz7jA2ByZbZA72hsGUVQu8gGHTMysdQAs2irpfxL7mBxNhJJfwBD56C2aiP6xYiES54qXh8B9K7MXHUavGHephXfqk: '10000000000' -- DdzFFzCqrhsoKzt6btX3WpKYiXrjGMypsM9q9V5PKb6Br4nJpeUCJZeR36HZ8MVCzkLfZMhLkD6S9rchnqXvNW8eh2NCDSdkdQpwSLvp: '10000000000' -- DdzFFzCqrht7yM3iN4odBhJTUxmnNghgHnFjy52j1xhS7cbsLrWCSBZj943NjhZ8cN5thAENKjisxcM3sxzQe5ozzUnXreQdrxCyqqpe: '10000000000' -- DdzFFzCqrhssntGk7U99LNgECjJ3rkkBhrDQt8oPEguhJyRrJZr98pqvut5Tq5oTAmZErwSd6JXJx4prx86TwmsoXHsoiHuR3CTWbh8G: '10000000000' -- DdzFFzCqrhszk4sj7UBwRxG2p2xrdfH5Tz3jgq5w47gVoCxm4CbsLYcZV5vwByNzzPtkGpGBFJg16QGbpJhE7aLa9ehaxdphcy6TDAQR: '10000000000' -- DdzFFzCqrht9hUY7JURPNekxprv7WMvhJmfurtZtRpZ8MUyDQnt3tT3WBh28Cct3dhQaaszeVEwgZCBV9nwQDtVhoNx12Me3ektSa8hD: '10000000000' -- DdzFFzCqrhsyy9skP5uwnLjzfnHu1pv6nKRCq6DeomaAvyWA5TpkG2YpRMJPHUZTQLWZFoVGZdsvmWyWkH5Sr4juNp6qfoK7ZdRBNwDk: '10000000000' -- DdzFFzCqrht2QLWpgK6PvohW8hz29ozDvBDWTycJpf6kBncreV4JTLVTFZwkp3gwD8LVSXQPG1cH98qwEi5ZCuq6FFE9Un5bbCDCi4vp: '10000000000' -- DdzFFzCqrhsmKrqsoi5s9X1wyRTB2wsp6GVJ3hx7aaDEzsUDkf8obFy9bycMkSBh5YwCjznGLsPUaZjxFMg8bWfCpSAJyRZjeu4c4STZ: '10000000000' -- DdzFFzCqrhstEYKKjXZ2GDJgEn4b3gKuvBEcMmyr8Rvmu1fQeM1M5j4vqBzjBp1GfHcYCt7w74ioMqjbFrdd45eDnxjejrAY9rZrswg2: '10000000000' -- DdzFFzCqrhtD9MvJKybAe2d9483cMCKQ2EVJ3uTcHxTnWGTfVkVw13voccFsXRUNDMYQmizLDjyw7c6MGVnkEhiMTWC9APAyP4K4hq3q: '10000000000' -- DdzFFzCqrhsxzEsbxo8Kym9BwtwTYmi82vhJoK7t95oJWF4vRBHQXCMc7RczDvPQPnodiT6ibtJnRvEMehJ2SDvVJ65X6vEQgbX2h3Fk: '10000000000' -- DdzFFzCqrhsv4jgAPJiHq2G4JZe32Nuanx3MVzDAJbVrukmZ1FRmair17jxUqLDbwgdbD2ZH6rJq51zDnVLpoq8GavDkQLxhifoz4cPc: '10000000000' -- DdzFFzCqrhstp13x87hraHqFD82JaTiekq6uYe4DtSunAkydnKEAVuwTwUxGtoD4MFQuUfV1NPXYW5jhWbWzsgRmQiW7FYJedipijJi3: '10000000000' -- DdzFFzCqrhsxu7aKBxcZcDSS7wP6EHoFGBND7bd8WKc4WcFQyFf3umHjUnaz9pPHhMKLWdXEKJtsWPkxtMfjV376YHK8rfyT6ZKj5E8b: '10000000000' -- DdzFFzCqrhsfo1L3f36fWZJrcHEQUSLq9C8AcKsuz5DbVRtqTxb4gvoaWm1zMQf3j28myqk4FPQiJ4GhErbunWxJySEou7uyVv5Zw6yx: '10000000000' -- DdzFFzCqrhtBWMWh5GXmio3MPDNFXFRrEWcSSwjSA2cYqwqAyJpdyRgPWRgwAPYHpET3WMwfdD2Fzm9Ck39WN2w3yuKx2GVgWKs5fW4k: '10000000000' -- DdzFFzCqrhsgvCcv6ivRqpdUGYDE4XVD3Y6crQ2PQMWz7oUZQ7toQL9rDdy1B54ZNi7K2Tu5Au9w1oQ2JNJ2zjyM7WuDjU3C15jZLqye: '10000000000' -- DdzFFzCqrhsknvpDWkfBDc3NGwZ47Xj1ghjuUp7xAU64eXHe19p36mf3zbJgrDwKfjmGpt4V49Xpwg4TZPewn7dPPw51cZczTVtno6We: '10000000000' -- DdzFFzCqrht1oCJ6DD9tnk3SdtLo9tXKLh7qsTBiQxePm4jSRqNPQPDUe9T1yGwXNUBDqPufEDtcdRPU2VzvAc5Bo9p7becfKRUWVTMs: '10000000000' -- DdzFFzCqrhsqWhAMsdQtSAhJFxPT9bmTTQhFTpVwHoU8Fbm5NhFpoyJhuNKCskDfjUEApVzMi8W2YrvA1daAfTLh3xtDqi4X4iV8Ex4w: '10000000000' -- DdzFFzCqrht8kkwGHWAx5VhxLfU1jE7Wrw1Wo8yEUFQ7ttGvbYhmRt4vYxo6oskfEXgpZBeBrqBYH5hcSmVH67rWVcG8rfxLnPvd5k57: '10000000000' -- DdzFFzCqrht7ZkRDHpZQmX3RyTGGDDGdcoTycCYB1ZQKwtsEyJ1RfY2gGGdxNo2y8SHLWiZbJBqQACY8CAhWxWqDBvNToNJtmtqMrSpp: '10000000000' -- DdzFFzCqrhskwSAWQDd5RoJ41FoYangx7fb9Hh2oF5qzLsnbu9PxCKwXrfFXWs9RC8JdJ5bUQxvnSaDobsW6wdvYAW5c94nQaX3riPoK: '10000000000' -- DdzFFzCqrhtCYD7CJcsyiVsdnqTBfP4HqvNDTrpttMj6s3dSiVDo3MGDrgJLNY2xXA6QpXYurdZueUPSCD1fdfKKnHiCkoBewf5EFYmr: '10000000000' -- DdzFFzCqrhseAnGg2w3PSU8E3b4LGpEtrPd2Dh3ZCraSCCi8nR4r19AgUX9as9Eeg6FTnQqfsjwtAWfY2TJYwuquxjFVg2kgHD6AnkgA: '10000000000' -- DdzFFzCqrhsnap48uhewuKY3FbyLWEdui298UYGWrEVre2NtNn6SQ3VHWZZdqsnzFK8UKVG1FTDfEa7DSX6pREFQmcZwrfcMuL6vgmWZ: '10000000000' -- DdzFFzCqrht2A46r8tVs8FQPx6UxDSffGDAY6VGHbZYfX73Y6T1vMS4H86nMGdYbuyrzcUAM9YqXmDZ9yBfApu59DQ4W7ZTNTNGDHRo7: '10000000000' -- DdzFFzCqrhtA6sBCE4tGZmEZqn9NeGeehez5yEiAjn4Jothn1a1jAX3NHkmjfEyX6Hj3koMuhao9MZDRrmG2emYoJtBtH5sKNsNbFcS3: '10000000000' -- DdzFFzCqrht57TmHQJULP9XgcGy92uyQyze4hk4voCgcqL4ErzV7ovW1UN78VhwDTJxCvR2BU4Z2GG9uND5ZajLPTnrjoFbEgKBP5QqQ: '10000000000' -- DdzFFzCqrhsepducT53921t9cJKLegp8RxpGYMtPv6AHRxYLGKoCjnC2dUq4hDcPLdHiAaxaUen6hFjeVR1uGidLaUCaWsRz7JmhJQAb: '10000000000' -- DdzFFzCqrht9NWjkCZZKeHXmyacs5UAKJdGh7b8XNzqaBXJpPyfSTns6jB2ZdcJ4LVpW2ADDYsvGM7AcaeSWf94wZYkNR2xLgsccCw3o: '10000000000' -- DdzFFzCqrhtAGN5xSMNh8bNFaDX5a2J4sRjoKb6YXmc8c4yEVZhdXrpJnnyTUuA5jFBu3zSoy2y7M4N8BhJi78AGjwMNV3zR5tuNeKLA: '10000000000' -- DdzFFzCqrhtCnBwH63XMs47ZDAYfCTLhWyRBLTM3dFaZG63ttsUjqyw7YRrNPpzzzTicx71qZvRmCUiPL9W1ZTkizXW4fnYdEdKkLptC: '10000000000' -- DdzFFzCqrhtBAXGMA6949agEKHbZ86x4WvYMafmZtBUQNQbwkMzC1aTnX8FYxxkPCa5LbL23fhg7GARUdmbZ1bYnnm6x7ywKeqim81By: '10000000000' -- DdzFFzCqrhshcui34R3te9gAdqFLbDUGRfgk4zLAThtj1pxHbZiYGdEY9VFtGJigE1xEAsDLq5Pk8E7sTsbEHBmwTzjdLiuFX7A88DWF: '10000000000' -- DdzFFzCqrhszhrSkjuwWhSNzLAGvwm1D5nazBfL1s2ANZNjGiN1HAR3MjfN17o9eG62P4inFPTRqpdzEuY2qehuf1AsssUzPfpyAefLd: '10000000000' -- DdzFFzCqrhsisFVP9iwkHQiQABnf4mCZYbKXh6ZU25x3j765tTuzhYXjfvrznPo7ENJTwPcdTKWQicBhjELz3N79CUtoGWxReX6fc1iQ: '10000000000' -- DdzFFzCqrhsgjeoThwXNE2W9A15QdFVKWNghrriZjmyLCciTSgxTYsQTwqTPqTHdXvXjvx1vmgeyZhjKoJc9LCiTXKsZ8UYLEMp2BLFY: '10000000000' -- DdzFFzCqrht4kvhaiiATFAYWtcJG5CRLur6TSNyuyVwC5LfzKVDFiYocPNYxyQU2suGxg8evbxtQtehmq7W7YDuYNvfqiZwruQQXDvBo: '10000000000' -- DdzFFzCqrhssNwF4W7GbmXD2uxGC9LRdPj68oSQZRXcdPjh7DQzF6WRyKXrrR32LFjhdU9cRdkbBJ4bNptgW3Jfs5iTHrvw2u7nApxyj: '10000000000' -- DdzFFzCqrht45Tb5r98EjYZuKdvp6N8NyBA5iHpczEA9W94aRRscUk7QENwgvL58kt8YsPwNTw1NAa38NxAVxjLWomoGJK3Dkg9APnWn: '10000000000' -- DdzFFzCqrht9iFAFaHAtvGpqYF8FPET3ng49JktmYjfiBA6kXBtezMxuTaFzx8s7VQQKFteRam8waWVMwSF75HzGjjLspR1FY7qTh2cK: '10000000000' -- DdzFFzCqrhsuQQctgQiRC2G8qHoL25USXtuFyMVxNkAovL5EfTVgabFaMNjjD4Ao8oP3ATUWWtZM4eAkzT7BKgDCwr2DB5nWaxtENLE2: '10000000000' - DdzFFzCqrht8mWkGbyctZecURYxaY2jK3HDub9z6fbWZNd1RM5CUvPiSAo4X8TYWr6JMVNZ9QbyuawnrQzfKcnCLqPDMmHR3VNSieKZ9: '1' - DdzFFzCqrhsrBHGSy5Xcp4gdi9jF6YeSR66PX3wVJ8MuBNuMy8JtLbgW3vy1AhGCV93w9NQ5dLbPwdGpJtuwvwhEQLFFgz1F1JjKe3r5: '1' - DdzFFzCqrht4xtYUhJxYmMANcaKrPaoEndbt8TQdYXgzeVX2F93aWS6dPJqDZgeUSLCRMZidycs26w7TpbodmfU25zNFwzEFpfegEhdr: '1' From 11f35b4162bfe5b464a915c68276484c83f10c5a Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 20:41:41 +0200 Subject: [PATCH 80/86] turn on integration scenarios using Byron wallets (and requiring bootstrap witnesses) --- lib/shelley/test/integration/Main.hs | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 4c27eccdc5e..5db9b901f6a 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -106,12 +106,10 @@ import Test.Integration.Framework.DSL import qualified Cardano.Wallet.Api.Link as Link import qualified Data.Aeson as Aeson import qualified Data.Text as T --- TODO: enable when byron transactions/addresses supported in the cardano-node --- import qualified Test.Integration.Scenario.API.Byron.Addresses as ByronAddresses --- import qualified Test.Integration.Scenario.API.Byron.Migrations as ByronMigrations --- import qualified Test.Integration.Byron.Scenario.API.Transactions as ByronTransactions --- import qualified Test.Integration.Scenario.API.Byron.Transactions as ByronTransactionsCommon --- import qualified Test.Integration.Scenario.API.Byron.HWWallets as ByronHWWallets +import qualified Test.Integration.Scenario.API.Byron.Addresses as ByronAddresses +import qualified Test.Integration.Scenario.API.Byron.HWWallets as ByronHWWallets +import qualified Test.Integration.Scenario.API.Byron.Migrations as ByronMigrations +import qualified Test.Integration.Scenario.API.Byron.Transactions as ByronTransactions import qualified Test.Integration.Scenario.API.Byron.Wallets as ByronWallets import qualified Test.Integration.Scenario.API.Network as Network import qualified Test.Integration.Scenario.API.Shelley.Addresses as Addresses @@ -142,14 +140,18 @@ main = withUtf8Encoding $ withTracers $ \tracers -> do specWithServer tracers $ do describe "API Specifications" $ do Addresses.spec @n + ByronAddresses.spec @n + Wallets.spec @n ByronWallets.spec @n + HWWallets.spec @n Migrations.spec @n + ByronMigrations.spec @n Transactions.spec @n - Wallets.spec @n - HWWallets.spec @n Network.spec Network_.spec StakePools.spec @n + ByronTransactions.spec @n + ByronHWWallets.spec @n describe "CLI Specifications" $ do AddressesCLI.spec @n TransactionsCLI.spec @n From 7ab39b1cf24fe4066034223a64a395d8c159d728 Mon Sep 17 00:00:00 2001 From: Pawel Jakubas Date: Fri, 24 Jul 2020 15:55:33 +0200 Subject: [PATCH 81/86] make feeOpt dependent on minimum utxo --- lib/core/src/Cardano/Wallet.hs | 37 +++++++++++-------- .../Cardano/Wallet/Shelley/TransactionSpec.hs | 2 +- 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/lib/core/src/Cardano/Wallet.hs b/lib/core/src/Cardano/Wallet.hs index 45925c5fcf7..bd5b7512cdb 100644 --- a/lib/core/src/Cardano/Wallet.hs +++ b/lib/core/src/Cardano/Wallet.hs @@ -1140,10 +1140,11 @@ feeOpts :: TransactionLayer t k -> Maybe DelegationAction -> FeePolicy + -> W.Coin -> FeeOptions -feeOpts tl action feePolicy = FeeOptions +feeOpts tl action feePolicy minUtxo = FeeOptions { estimateFee = minimumFee tl feePolicy action - , dustThreshold = minBound + , dustThreshold = minUtxo , onDanglingChange = if allowUnbalancedTx tl then SaveMoney else PayAndBalance } @@ -1166,7 +1167,8 @@ selectCoinsForPayment selectCoinsForPayment ctx wid recipients withdrawal = do (utxo, txp, minUtxo) <- withExceptT ErrSelectForPaymentNoSuchWallet $ selectCoinsSetup @ctx @s @k ctx wid - cs <- selectCoinsForPaymentFromUTxO @ctx @t @k @e ctx utxo txp recipients withdrawal + cs <- + selectCoinsForPaymentFromUTxO @ctx @t @k @e ctx utxo txp minUtxo recipients withdrawal withExceptT ErrSelectForPaymentMinimumUTxOValue $ except $ guardCoinSelection minUtxo cs pure cs @@ -1195,16 +1197,17 @@ selectCoinsForPaymentFromUTxO => ctx -> W.UTxO -> W.TxParameters + -> W.Coin -> NonEmpty TxOut -> Quantity "lovelace" Word64 -> ExceptT (ErrSelectForPayment e) IO CoinSelection -selectCoinsForPaymentFromUTxO ctx utxo txp recipients withdrawal = do +selectCoinsForPaymentFromUTxO ctx utxo txp minUtxo recipients withdrawal = do lift . traceWith tr $ MsgPaymentCoinSelectionStart utxo txp recipients (sel, utxo') <- withExceptT ErrSelectForPaymentCoinSelection $ do let opts = coinSelOpts tl (txp ^. #getTxMaxSize) CoinSelection.random opts recipients withdrawal utxo lift . traceWith tr $ MsgPaymentCoinSelection sel - let feePolicy = feeOpts tl Nothing (txp ^. #getFeePolicy) + let feePolicy = feeOpts tl Nothing (txp ^. #getFeePolicy) minUtxo withExceptT ErrSelectForPaymentFee $ do balancedSel <- adjustForFee feePolicy utxo' sel lift . traceWith tr $ MsgPaymentCoinSelectionAdjusted balancedSel @@ -1226,9 +1229,9 @@ selectCoinsForDelegation -> DelegationAction -> ExceptT ErrSelectForDelegation IO CoinSelection selectCoinsForDelegation ctx wid action = do - (utxo, txp, _) <- withExceptT ErrSelectForDelegationNoSuchWallet $ + (utxo, txp, minUtxo) <- withExceptT ErrSelectForDelegationNoSuchWallet $ selectCoinsSetup @ctx @s @k ctx wid - selectCoinsForDelegationFromUTxO @_ @t @k ctx utxo txp action + selectCoinsForDelegationFromUTxO @_ @t @k ctx utxo txp minUtxo action selectCoinsForDelegationFromUTxO :: forall ctx t k. @@ -1238,10 +1241,11 @@ selectCoinsForDelegationFromUTxO => ctx -> W.UTxO -> W.TxParameters + -> W.Coin -> DelegationAction -> ExceptT ErrSelectForDelegation IO CoinSelection -selectCoinsForDelegationFromUTxO ctx utxo txp action = do - let feePolicy = feeOpts tl (Just action) (txp ^. #getFeePolicy) +selectCoinsForDelegationFromUTxO ctx utxo txp minUtxo action = do + let feePolicy = feeOpts tl (Just action) (txp ^. #getFeePolicy) minUtxo let sel = initDelegationSelection tl (txp ^. #getFeePolicy) action withExceptT ErrSelectForDelegationFee $ do balancedSel <- adjustForFee feePolicy utxo sel @@ -1262,7 +1266,7 @@ estimateFeeForDelegation -> WalletId -> ExceptT ErrSelectForDelegation IO FeeEstimation estimateFeeForDelegation ctx wid = db & \DBLayer{..} -> do - (utxo, txp, _) <- withExceptT ErrSelectForDelegationNoSuchWallet + (utxo, txp, minUtxo) <- withExceptT ErrSelectForDelegationNoSuchWallet $ selectCoinsSetup @ctx @s @k ctx wid isKeyReg <- mapExceptT atomically @@ -1271,7 +1275,7 @@ estimateFeeForDelegation ctx wid = db & \DBLayer{..} -> do let action = if isKeyReg then Join pid else RegisterKeyAndJoin pid let selectCoins = - selectCoinsForDelegationFromUTxO @_ @t @k ctx utxo txp action + selectCoinsForDelegationFromUTxO @_ @t @k ctx utxo txp minUtxo action estimateFeeForCoinSelection $ Fee . feeBalance <$> selectCoins where db = ctx ^. dbLayer @s @k @@ -1299,9 +1303,9 @@ selectCoinsForMigration , Quantity "lovelace" Natural ) selectCoinsForMigration ctx wid = do - (utxo, txp, _) <- withExceptT ErrSelectForMigrationNoSuchWallet $ + (utxo, txp, minUtxo) <- withExceptT ErrSelectForMigrationNoSuchWallet $ selectCoinsSetup @ctx @s @k ctx wid - selectCoinsForMigrationFromUTxO @ctx @t @k @n ctx utxo txp wid + selectCoinsForMigrationFromUTxO @ctx @t @k @n ctx utxo txp minUtxo wid selectCoinsForMigrationFromUTxO :: forall ctx t k n. @@ -1312,17 +1316,18 @@ selectCoinsForMigrationFromUTxO => ctx -> W.UTxO -> W.TxParameters + -> W.Coin -> WalletId -- ^ The source wallet ID. -> ExceptT ErrSelectForMigration IO ( [CoinSelection] , Quantity "lovelace" Natural ) -selectCoinsForMigrationFromUTxO ctx utxo txp wid = do +selectCoinsForMigrationFromUTxO ctx utxo txp minUtxo wid = do let feePolicy@(LinearFee (Quantity a) _ _) = txp ^. #getFeePolicy let feeOptions = FeeOptions { estimateFee = minimumFee tl feePolicy Nothing . worstCase - , dustThreshold = Coin $ ceiling a + , dustThreshold = max (Coin $ ceiling a) minUtxo , onDanglingChange = if allowUnbalancedTx tl then SaveMoney else PayAndBalance @@ -1386,7 +1391,7 @@ estimateFeeForPayment ctx wid recipients withdrawal = do selectCoinsSetup @ctx @s @k ctx wid let selectCoins = - selectCoinsForPaymentFromUTxO @ctx @t @k @e ctx utxo txp recipients withdrawal + selectCoinsForPaymentFromUTxO @ctx @t @k @e ctx utxo txp minUtxo recipients withdrawal cs <- selectCoins `catchE` handleNotSuccessfulCoinSelection withExceptT ErrSelectForPaymentMinimumUTxOValue $ except $ diff --git a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs index fe833b3c213..8d0a4297d80 100644 --- a/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs +++ b/lib/shelley/test/unit/Cardano/Wallet/Shelley/TransactionSpec.hs @@ -238,7 +238,7 @@ testCoinSelOpts :: CoinSelectionOptions () testCoinSelOpts = coinSelOpts testTxLayer (Quantity 4096) testFeeOpts :: FeeOptions -testFeeOpts = feeOpts testTxLayer Nothing feePolicy +testFeeOpts = feeOpts testTxLayer Nothing feePolicy (Coin 0) where feePolicy = LinearFee (Quantity 155381) (Quantity 44) (Quantity 0) From dc9e571314093a479c9b2ac731014b28e9115e64 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 18:19:28 +0200 Subject: [PATCH 82/86] add non-null dust & property reflecting it for 'rebalanceSelection' This fails now, since 'rebalanceSelection' completely disregard any form of dust threshold. --- lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs b/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs index e426f8df477..1a3193b528b 100644 --- a/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs +++ b/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs @@ -507,8 +507,9 @@ propDivvyFeeInvariantEmptyList (fee, outs) = prop_rebalanceSelection :: CoinSelection -> OnDanglingChange + -> Coin -> Property -prop_rebalanceSelection sel onDangling = do +prop_rebalanceSelection sel onDangling threshold = do let (sel', fee') = rebalanceSelection opts sel let selectionIsBalanced = case onDangling of @@ -520,10 +521,14 @@ prop_rebalanceSelection sel onDangling = do let equalityModuloChange = sel { change = [] } == sel' { change = [] } + let noDust = + all (>= threshold) (change sel') + conjoin [ fee' == Fee 0 ==> selectionIsBalanced , selectionIsBalanced ==> not (null (inputs sel')) , selectionIsBalanced ==> isValidSelection sel' + , property noDust , property equalityModuloChange ] & counterexample (unlines @@ -560,7 +565,7 @@ prop_rebalanceSelection sel onDangling = do size = fromIntegral $ length $ show cs in Fee (100000 + 100 * size) - , dustThreshold = minBound + , dustThreshold = threshold , onDanglingChange = onDangling } From ec9ea5d169ee19817a648c06087a8dfdc1edd4da Mon Sep 17 00:00:00 2001 From: KtorZ Date: Fri, 24 Jul 2020 19:24:06 +0200 Subject: [PATCH 83/86] acknowledge dust threshold in fee balancing I greatly simplified the function as well, it probably handles slightly worse some edge-cases but it's probably for the best in terms of maintenance burden. --- lib/core/src/Cardano/Wallet/Primitive/Fee.hs | 92 +++++++++---------- .../unit/Cardano/Wallet/Primitive/FeeSpec.hs | 46 ++++++++-- 2 files changed, 77 insertions(+), 61 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Fee.hs b/lib/core/src/Cardano/Wallet/Primitive/Fee.hs index 7f3f6492ae1..95be946c91d 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Fee.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Fee.hs @@ -235,64 +235,46 @@ rebalanceSelection opts s -- context of delegation / de-registration. -- -- A transaction would have initially no inputs. - | null (inputs s) = - (s, Fee φ_original) + | null (inputs s') = + (s', Fee fee) -- selection is now balanced, nothing to do. - | φ_original == δ_original = - (s, Fee 0) + | fee == delta = + (s', Fee 0) -- some fee left to pay, but we've depleted all change outputs - | φ_original > δ_original && null (change s) = - (s, Fee (φ_original - δ_original)) + | fee > delta && null (change s') = + (s', Fee (fee - delta)) -- some fee left to pay, and we've haven't depleted all change yet - | φ_original > δ_original && not (null (change s)) = do - let chgs' = removeDust (Coin 0) - $ map reduceSingleChange - $ divvyFee (Fee $ φ_original - δ_original) (change s) - rebalanceSelection opts (s { change = chgs' }) + | fee > delta && not (null (change s')) = do + let chgs' = map reduceSingleChange + $ divvyFee (Fee $ fee - delta) (change s') + rebalanceSelection opts (s' { change = chgs' }) - -- we've left too much, but adding a change output would be more - -- expensive than not having it. Here we have two choices: - -- - -- a) If the node allows unbalanced transaction, we can stop here and do - -- nothing. We'll leave slightly more than what's needed for fees, but - -- having an extra change output isn't worth it anyway. - -- - -- b) If we __must__ balance the transaction, then we can choose to pay - -- the extra cost by adding the change output and pick a new input to - -- pay for the fee. - | φ_dangling >= δ_original && φ_dangling > δ_dangling = + -- there's more left than requested, we either quit here or demand another + -- input. + | otherwise = case onDanglingChange opts of SaveMoney -> - (s, Fee 0) + (s', Fee 0) PayAndBalance -> - (sDangling, Fee (φ_dangling - δ_dangling)) - - -- So, we can simply add the change output, and iterate. - | otherwise = - rebalanceSelection opts sDangling + (s', Fee fee) where + s' = s { change = coalesceDust (dustThreshold opts) (change s) } + -- The original requested fee amount - Fee φ_original = estimateFee opts s + Fee fee = estimateFee opts s' + -- The initial amount left for fee (i.e. inputs - outputs), with a minimum -- of 0 in case there are more output than inputs. This is possible when -- there are other elements apart from normal outputs like a deposit. - δ_original - | inputBalance s >= (outputBalance s + changeBalance s) = - inputBalance s - (outputBalance s + changeBalance s) + delta + | inputBalance s' >= (outputBalance s' + changeBalance s') = + inputBalance s' - (outputBalance s' + changeBalance s') | otherwise = 0 - -- The new amount left after balancing (i.e. φ_original) - Fee φ_dangling = estimateFee opts sDangling - -- The new requested fee after adding the output. - δ_dangling = φ_original -- by construction of the change output - - extraChng = Coin (δ_original - φ_original) - sDangling = s { change = splitChange extraChng (change s) } - -- | Reduce single change output by a given fee amount. If fees are too big for -- a single coin, returns a `Coin 0`. reduceSingleChange :: (Fee, Coin) -> Coin @@ -326,20 +308,28 @@ divvyFee (Fee f0) outs = go f0 [] outs in go (f - fOut) ((Fee fOut, Coin out):xs) q --- | Remove coins that are below a given threshold. Note that we can't simply --- "remove" coins from the list because this could create an unbalanced --- transaction. Therefore, we want `removeDust` to have the following property: +-- | Remove coins that are below a given threshold. It'll try two strategies: +-- +-- 1. Try to coalesce dust coins with other non-dust coins. +-- 2. If the result is a single coin still smaller than the threshold, it'll +-- return an empty list. -- -- ∀δ≥0. sum coins == sum (removeDust δcoins) -- -removeDust :: Coin -> [Coin] -> [Coin] -removeDust threshold coins = - let - filtered = L.filter (> threshold) coins - diff = balance coins - balance filtered - where balance = L.foldl' (\total (Coin c) -> c + total) 0 - in - splitChange (Coin diff) filtered +coalesceDust :: Coin -> [Coin] -> [Coin] +coalesceDust threshold coins + | balance coins < getCoin threshold = + [] + | otherwise = + let + filtered = L.filter (> threshold) coins + diff = balance coins - balance filtered + in + splitChange (Coin diff) filtered + +balance :: [Coin] -> Word64 +balance = L.foldl' (\total (Coin c) -> c + total) 0 + -- Equally split the extra change obtained when picking new inputs across all -- other change. Note that, it may create an extra change output if: diff --git a/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs b/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs index 1a3193b528b..129714b3106 100644 --- a/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs +++ b/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs @@ -183,7 +183,7 @@ spec = do }) (Right $ FeeOutput { csInps = [20,20,20] , csOuts = [14,18,19] - , csChngs = [4,1,1] + , csChngs = [4,2] }) -- Cannot cover fee, no extra inputs @@ -522,7 +522,7 @@ prop_rebalanceSelection sel onDangling threshold = do sel { change = [] } == sel' { change = [] } let noDust = - all (>= threshold) (change sel') + all (>= threshold') (change sel') conjoin [ fee' == Fee 0 ==> selectionIsBalanced @@ -556,16 +556,42 @@ prop_rebalanceSelection sel onDangling threshold = do - fromIntegral (outputBalance s + changeBalance s) + -- NOTE: We only allow non-null dust threshold if 'onDangling' is + -- set to 'SaveMoney'. + threshold' = + case onDangling of + SaveMoney -> + threshold + + PayAndBalance -> + Coin 0 + opts = FeeOptions - -- NOTE - -- Dummy fee policy but, following a similar rule as the fee policy on - -- Byron / Shelley (bigger transaction cost more) with sensible values. { estimateFee = \cs -> - let - size = fromIntegral $ length $ show cs - in - Fee (100000 + 100 * size) - , dustThreshold = threshold + case onDangling of + -- NOTE + -- Dummy fee policy but, following a similar rule as the fee + -- policy on Byron / Shelley (bigger transaction cost more) with + -- sensible values. + SaveMoney -> + let + size = fromIntegral $ length $ show cs + in + Fee (100000 + 100 * size) + + -- NOTE + -- Dummy fee policy but, following a similar rule as the fee + -- policy on Jormungandr. More inputs/outputs cost more. + PayAndBalance -> + let + ios = fromIntegral + $ length (inputs cs) + + length (outputs cs) + + length (change cs) + in + Fee (100000 + 100 * ios) + + , dustThreshold = threshold' , onDanglingChange = onDangling } From 70235f092b23f6963503bea8b87244f5eea207c3 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Sat, 25 Jul 2020 12:17:51 +0200 Subject: [PATCH 84/86] revert refactor on 'rebalanceSelection' and coalesce dust AFTER rebalancing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit What we loose from this might be exact balancing in some cases (when the transaction is exactly balanced but coalescing dust may remove one or more change output and change the fee). So we might hit problems with some edge-cases on Jörmungandr but things should be fine on cardano-node where we might occasionally pay a little bit more than necessary... --- lib/core/src/Cardano/Wallet/Primitive/Fee.hs | 71 ++++++++++++------- .../unit/Cardano/Wallet/Primitive/FeeSpec.hs | 13 ++-- 2 files changed, 55 insertions(+), 29 deletions(-) diff --git a/lib/core/src/Cardano/Wallet/Primitive/Fee.hs b/lib/core/src/Cardano/Wallet/Primitive/Fee.hs index 95be946c91d..1280117f395 100644 --- a/lib/core/src/Cardano/Wallet/Primitive/Fee.hs +++ b/lib/core/src/Cardano/Wallet/Primitive/Fee.hs @@ -30,6 +30,7 @@ module Cardano.Wallet.Primitive.Fee , OnDanglingChange(..) , adjustForFee , rebalanceSelection + , coalesceDust ) where import Prelude @@ -174,7 +175,9 @@ senderPaysFee opt utxo sel = evalStateT (go sel) utxo where -- the upper bound. We could do some binary search and try to -- re-distribute excess across changes until fee becomes bigger. if remFee == Fee 0 - then pure coinSel' + then pure $ coinSel' + { change = coalesceDust (dustThreshold opt) (change coinSel') + } else do -- Otherwise, we need an extra entries from the available utxo to -- cover what's left. Note that this entry may increase our change @@ -235,46 +238,64 @@ rebalanceSelection opts s -- context of delegation / de-registration. -- -- A transaction would have initially no inputs. - | null (inputs s') = - (s', Fee fee) + | null (inputs s) = + (s, Fee φ_original) -- selection is now balanced, nothing to do. - | fee == delta = - (s', Fee 0) + | φ_original == δ_original = + (s, Fee 0) -- some fee left to pay, but we've depleted all change outputs - | fee > delta && null (change s') = - (s', Fee (fee - delta)) + | φ_original > δ_original && null (change s) = + (s, Fee (φ_original - δ_original)) -- some fee left to pay, and we've haven't depleted all change yet - | fee > delta && not (null (change s')) = do - let chgs' = map reduceSingleChange - $ divvyFee (Fee $ fee - delta) (change s') - rebalanceSelection opts (s' { change = chgs' }) + | φ_original > δ_original && not (null (change s)) = do + let chgs' = coalesceDust (Coin 0) + $ map reduceSingleChange + $ divvyFee (Fee $ φ_original - δ_original) (change s) + rebalanceSelection opts (s { change = chgs' }) - -- there's more left than requested, we either quit here or demand another - -- input. - | otherwise = + -- we've left too much, but adding a change output would be more + -- expensive than not having it. Here we have two choices: + -- + -- a) If the node allows unbalanced transaction, we can stop here and do + -- nothing. We'll leave slightly more than what's needed for fees, but + -- having an extra change output isn't worth it anyway. + -- + -- b) If we __must__ balance the transaction, then we can choose to pay + -- the extra cost by adding the change output and pick a new input to + -- pay for the fee. + | φ_dangling >= δ_original && φ_dangling > δ_dangling = case onDanglingChange opts of SaveMoney -> - (s', Fee 0) + (s, Fee 0) PayAndBalance -> - (s', Fee fee) - where - s' = s { change = coalesceDust (dustThreshold opts) (change s) } + (sDangling, Fee (φ_dangling - δ_dangling)) + -- So, we can simply add the change output, and iterate. + | otherwise = + rebalanceSelection opts sDangling + where -- The original requested fee amount - Fee fee = estimateFee opts s' - + Fee φ_original = estimateFee opts s -- The initial amount left for fee (i.e. inputs - outputs), with a minimum -- of 0 in case there are more output than inputs. This is possible when -- there are other elements apart from normal outputs like a deposit. - delta - | inputBalance s' >= (outputBalance s' + changeBalance s') = - inputBalance s' - (outputBalance s' + changeBalance s') + δ_original + | inputBalance s >= (outputBalance s + changeBalance s) = + inputBalance s - (outputBalance s + changeBalance s) | otherwise = 0 + -- The new amount left after balancing (i.e. φ_original) + Fee φ_dangling = estimateFee opts sDangling + -- The new requested fee after adding the output. + δ_dangling = φ_original -- by construction of the change output + + extraChng = Coin (δ_original - φ_original) + sDangling = s { change = splitChange extraChng (change s) } + -- | Reduce single change output by a given fee amount. If fees are too big for -- a single coin, returns a `Coin 0`. reduceSingleChange :: (Fee, Coin) -> Coin @@ -311,11 +332,11 @@ divvyFee (Fee f0) outs = go f0 [] outs -- | Remove coins that are below a given threshold. It'll try two strategies: -- -- 1. Try to coalesce dust coins with other non-dust coins. --- 2. If the result is a single coin still smaller than the threshold, it'll --- return an empty list. -- -- ∀δ≥0. sum coins == sum (removeDust δcoins) -- +-- 2. If the result is a single coin still smaller than the threshold, it'll +-- return an empty list. coalesceDust :: Coin -> [Coin] -> [Coin] coalesceDust threshold coins | balance coins < getCoin threshold = diff --git a/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs b/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs index 129714b3106..8832c25ca22 100644 --- a/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs +++ b/lib/core/test/unit/Cardano/Wallet/Primitive/FeeSpec.hs @@ -27,6 +27,7 @@ import Cardano.Wallet.Primitive.Fee , FeeOptions (..) , OnDanglingChange (..) , adjustForFee + , coalesceDust , divvyFee , rebalanceSelection ) @@ -40,7 +41,7 @@ import Cardano.Wallet.Primitive.Types , UTxO (..) ) import Control.Arrow - ( left ) + ( first, left ) import Control.Monad.IO.Class ( liftIO ) import Control.Monad.Trans.Except @@ -183,7 +184,7 @@ spec = do }) (Right $ FeeOutput { csInps = [20,20,20] , csOuts = [14,18,19] - , csChngs = [4,2] + , csChngs = [6] }) -- Cannot cover fee, no extra inputs @@ -510,7 +511,7 @@ prop_rebalanceSelection -> Coin -> Property prop_rebalanceSelection sel onDangling threshold = do - let (sel', fee') = rebalanceSelection opts sel + let (sel', fee') = first withCoalescedDust $ rebalanceSelection opts sel let selectionIsBalanced = case onDangling of PayAndBalance -> @@ -522,7 +523,7 @@ prop_rebalanceSelection sel onDangling threshold = do sel { change = [] } == sel' { change = [] } let noDust = - all (>= threshold') (change sel') + all (> threshold') (change sel') conjoin [ fee' == Fee 0 ==> selectionIsBalanced @@ -556,6 +557,10 @@ prop_rebalanceSelection sel onDangling threshold = do - fromIntegral (outputBalance s + changeBalance s) + withCoalescedDust :: CoinSelection -> CoinSelection + withCoalescedDust cs = + cs { change = coalesceDust threshold' (change cs) } + -- NOTE: We only allow non-null dust threshold if 'onDangling' is -- set to 'SaveMoney'. threshold' = From bca0b7a124eab16e1be886a637269ebd7d125088 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Sat, 25 Jul 2020 17:08:39 +0200 Subject: [PATCH 85/86] adjust pool pool retirement configuration and retire first pool when it's safe Retiring at epoch 1 causes some race condition with the cluster setup. Indeed, we now know to wait for the hard fork to begin and it sometimes happen that it's already too late to submit the certificate for a retirement in epoch 1. Therefore, retirement now happens a bit later. Also, I've bumped the retirement at epoch '1_000' to '100_000' because we are actually reaching epoch 1_000 pretty early in the test suite and even up to 10k epochs! --- .../src/Test/Integration/Scenario/API/Shelley/StakePools.hs | 2 +- lib/shelley/test/integration/Main.hs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs index 030b881d080..2137b7ae543 100644 --- a/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs +++ b/lib/core-integration/src/Test/Integration/Scenario/API/Shelley/StakePools.hs @@ -603,7 +603,7 @@ spec = do let expectedRetirementEpochs = Set.fromList [ Nothing - , Just 1_000 + , Just 100_000 , Just 1_000_000 ] diff --git a/lib/shelley/test/integration/Main.hs b/lib/shelley/test/integration/Main.hs index 5db9b901f6a..2938c4e2df4 100644 --- a/lib/shelley/test/integration/Main.hs +++ b/lib/shelley/test/integration/Main.hs @@ -165,9 +165,9 @@ testPoolConfigs = [ -- This pool should never retire: PoolConfig {retirementEpoch = Nothing} -- This pool should retire almost immediately: - , PoolConfig {retirementEpoch = Just 1} + , PoolConfig {retirementEpoch = Just 3} -- This pool should retire, but not within the duration of a test run: - , PoolConfig {retirementEpoch = Just 1_000} + , PoolConfig {retirementEpoch = Just 100_000} -- This pool should retire, but not within the duration of a test run: , PoolConfig {retirementEpoch = Just 1_000_000} ] From 4eb4bf3dd0237ad32e6bb41ebc24cc52976cd943 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Sat, 25 Jul 2020 18:03:07 +0200 Subject: [PATCH 86/86] use correct pool id instead of arbitrary one and fix new file names from 1.17.0 --- lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs index 2a2c8d55536..df956698548 100644 --- a/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs +++ b/lib/shelley/src/Cardano/Wallet/Shelley/Launch.hs @@ -1284,21 +1284,21 @@ operators = unsafePerformIO $ newMVar ] ) , ( PoolId $ unsafeFromHex - "5a7b67c7dcfa8c4c25796bea05bcdfca01590c8c7612cc537c97012bed0dec36" + "bb114cb37d75fa05260328c235a3dae295a33d0ba674a5eb1e3e568e" , Aeson.object - [ "type" .= Aeson.String "Node operator verification key" + [ "type" .= Aeson.String "StakePoolVerificationKey_ed25519" , "description" .= Aeson.String "Stake Pool Operator Verification Key" , "cborHex" .= Aeson.String "58203263e07605b9fc0100eb520d317f472ae12989fbf27fc71f46310bc0f24f2970" ] , Aeson.object - [ "type" .= Aeson.String "Node operator signing key" + [ "type" .= Aeson.String "StakePoolSigningKey_ed25519" , "description" .= Aeson.String "Stake Pool Operator Signing Key" , "cborHex" .= Aeson.String "58208f50de27d74325eaf57767d70277210b31eb97cdc3033f632a9791a3677a64d2" ] , Aeson.object - [ "type" .= Aeson.String "Node operational certificate issue counter" + [ "type" .= Aeson.String "NodeOperationalCertificateIssueCounter" , "description" .= Aeson.String "Next certificate issue number: 0" , "cborHex" .= Aeson.String "820058203263e07605b9fc0100eb520d317f472ae12989fbf27fc71f46310bc0f24f2970"