diff --git a/.github/workflows/lint-test.yaml b/.github/workflows/lint-test.yaml
index 99cf2031f1986..3badfd14bb702 100644
--- a/.github/workflows/lint-test.yaml
+++ b/.github/workflows/lint-test.yaml
@@ -45,7 +45,7 @@ jobs:
- uses: taiki-e/install-action@v1.5.6
with:
tool: nextest
- - run: cargo nextest run --profile ci --workspace --exclude smoke-test --exclude backup-cli --exclude testcases --retries 3 --no-fail-fast
+ - run: cargo nextest run --profile ci --workspace --exclude smoke-test --exclude backup-cli --exclude testcases --exclude forge --retries 3 --no-fail-fast
rust-smoke-test:
runs-on: furuensu
diff --git a/CODEOWNERS b/CODEOWNERS
index 78a70f6d72323..e69147d43f081 100644
--- a/CODEOWNERS
+++ b/CODEOWNERS
@@ -20,6 +20,9 @@
/aptos-move/parallel-executor/ @gelash @zekun000
/aptos-move/vm-genesis/ @davidiw @movekevin
+# Owner for logger config
+/config/src/config/logger_config.rs @markuze
+
# Owners for the `/consensus` directory and all its subdirectories.
/consensus/ @zekun000
@@ -48,6 +51,10 @@
/crates/aptos-rosetta @gregnazario
/crates/aptos-rosetta-cli @gregnazario
+# Owners for the `telemetry` related crates.
+/crates/aptos-telemetry @ibalajiarun @geekflyer
+/crates/aptos-telemetry-service @ibalajiarun @geekflyer
+
# Owners for the `/dashboards` directory and all its subdirectories.
/dashboards/ @aptos-labs/prod-eng
diff --git a/Cargo.lock b/Cargo.lock
index c40eef75cf58f..365e1418c06d0 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -139,7 +139,7 @@ dependencies = [
[[package]]
name = "aptos"
-version = "0.3.4"
+version = "0.3.6"
dependencies = [
"anyhow",
"aptos-bitvec",
@@ -150,6 +150,7 @@ dependencies = [
"aptos-gas",
"aptos-genesis",
"aptos-github-client",
+ "aptos-global-constants",
"aptos-keygen",
"aptos-logger",
"aptos-module-verifier",
@@ -188,6 +189,7 @@ dependencies = [
"tokio",
"tokio-util 0.7.3",
"toml",
+ "vm-genesis",
"walkdir",
]
@@ -216,6 +218,7 @@ dependencies = [
"aptos-api-types",
"aptos-config",
"aptos-crypto",
+ "aptos-gas",
"aptos-logger",
"aptos-mempool",
"aptos-metrics-core",
@@ -452,6 +455,7 @@ dependencies = [
"anyhow",
"aptos-config",
"aptos-crypto",
+ "aptos-global-constants",
"aptos-infallible",
"aptos-keygen",
"aptos-logger",
@@ -496,46 +500,29 @@ version = "0.1.0"
dependencies = [
"anyhow",
"aptos-api",
- "aptos-api-test-context",
"aptos-api-types",
"aptos-bitvec",
"aptos-config",
- "aptos-crypto",
- "aptos-genesis",
- "aptos-global-constants",
"aptos-logger",
"aptos-mempool",
"aptos-metrics-core",
- "aptos-proptest-helpers",
"aptos-protos",
- "aptos-sdk",
- "aptos-secure-storage",
- "aptos-temppath",
"aptos-types",
"aptos-vm",
- "aptosdb",
"base64 0.13.0",
"bytes 1.2.1",
"chrono",
- "executor",
- "executor-types",
"fail 0.5.0",
- "framework",
"futures",
- "goldenfile",
"hex",
"hyper",
- "mempool-notifications",
"move-deps",
"once_cell",
"prost 0.10.4",
- "rand 0.7.3",
- "regex",
"serde 1.0.144",
"serde_json",
"storage-interface",
"tokio",
- "vm-validator",
]
[[package]]
@@ -606,14 +593,21 @@ dependencies = [
name = "aptos-gas"
version = "0.1.0"
dependencies = [
+ "anyhow",
+ "aptos-global-constants",
"aptos-types",
+ "bcs",
+ "clap 3.2.17",
"framework",
"gas-algebra-ext",
"move-binary-format",
"move-core-types",
+ "move-model",
"move-stdlib",
"move-table-extension",
"move-vm-types",
+ "package-builder",
+ "tempfile",
]
[[package]]
@@ -684,12 +678,14 @@ dependencies = [
"diesel_migrations",
"field_count",
"futures",
+ "hex",
"once_cell",
"reqwest",
"reqwest-middleware",
"reqwest-retry",
"serde 1.0.144",
"serde_json",
+ "sha2 0.9.9",
"storage-interface",
"tokio",
"url",
@@ -763,6 +759,7 @@ dependencies = [
"serde_json",
"strum",
"strum_macros",
+ "tokio",
"tracing",
"tracing-subscriber",
]
@@ -1033,10 +1030,12 @@ dependencies = [
"anyhow",
"aptos-api-types",
"aptos-crypto",
+ "aptos-infallible",
"aptos-logger",
"aptos-types",
"bcs",
"bytes 1.2.1",
+ "futures",
"hex",
"move-deps",
"poem-openapi",
@@ -1071,6 +1070,7 @@ dependencies = [
"anyhow",
"aptos-config",
"aptos-crypto",
+ "aptos-global-constants",
"aptos-logger",
"aptos-node",
"aptos-rest-client",
@@ -1089,6 +1089,7 @@ dependencies = [
"reqwest",
"serde 1.0.144",
"serde_json",
+ "serde_yaml 0.8.26",
"tokio",
"url",
"warp",
@@ -1116,6 +1117,7 @@ version = "0.0.3"
dependencies = [
"anyhow",
"aptos-crypto",
+ "aptos-global-constants",
"aptos-rest-client",
"aptos-types",
"bcs",
@@ -1187,45 +1189,6 @@ dependencies = [
"thiserror",
]
-[[package]]
-name = "aptos-sf-indexer"
-version = "0.0.1"
-dependencies = [
- "anyhow",
- "aptos-crypto",
- "aptos-logger",
- "aptos-metrics-core",
- "aptos-protos",
- "aptos-rest-client",
- "aptos-types",
- "async-stream",
- "async-trait",
- "bigdecimal",
- "bytes 1.2.1",
- "chrono",
- "clap 3.2.17",
- "diesel",
- "diesel_migrations",
- "field_count",
- "futures",
- "http",
- "hyper",
- "inspection-service",
- "once_cell",
- "pbjson",
- "prost 0.10.4",
- "prost-types 0.10.1",
- "reqwest",
- "reqwest-middleware",
- "reqwest-retry",
- "serde 1.0.144",
- "serde_json",
- "tokio",
- "tokio-retry",
- "tonic 0.7.2",
- "url",
-]
-
[[package]]
name = "aptos-state-view"
version = "0.1.0"
@@ -1270,9 +1233,11 @@ dependencies = [
"serde_json",
"state-sync-driver",
"sysinfo",
+ "thiserror",
"tokio",
"tokio-retry",
"tokio-stream",
+ "url",
"uuid",
]
@@ -1288,13 +1253,16 @@ dependencies = [
"aptos-logger",
"aptos-rest-client",
"aptos-types",
+ "base64 0.13.0",
"bcs",
"chrono",
"clap 3.2.17",
"flate2",
"gcp-bigquery-client",
"hex",
+ "httpmock",
"jsonwebtoken",
+ "prometheus",
"rand 0.7.3",
"rand_core 0.5.1",
"reqwest",
@@ -1304,6 +1272,7 @@ dependencies = [
"serde_yaml 0.8.26",
"thiserror",
"tokio",
+ "tracing",
"url",
"warp",
]
@@ -1695,7 +1664,7 @@ version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ab006897723d9352f63e2b13047177c3982d8d79709d713ce7747a8f19fd1b0"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"concurrent-queue",
"futures-lite",
"libc",
@@ -1734,7 +1703,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "02111fd8655a613c25069ea89fc8d9bb89331fa77486eb3bc059ee757cfa481c"
dependencies = [
"async-io",
- "autocfg",
+ "autocfg 1.1.0",
"blocking",
"cfg-if",
"event-listener",
@@ -1827,6 +1796,15 @@ dependencies = [
"winapi 0.3.9",
]
+[[package]]
+name = "autocfg"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78"
+dependencies = [
+ "autocfg 1.1.0",
+]
+
[[package]]
name = "autocfg"
version = "1.1.0"
@@ -1864,9 +1842,9 @@ dependencies = [
[[package]]
name = "axum-core"
-version = "0.2.7"
+version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4f44a0e6200e9d11a1cdc989e4b358f6e3d354fbf48478f345a17f4e43f8635"
+checksum = "d9f0c0a60006f2a293d82d571f635042a72edf927539b7685bd62d361963839b"
dependencies = [
"async-trait",
"bytes 1.2.1",
@@ -1874,6 +1852,8 @@ dependencies = [
"http",
"http-body",
"mime",
+ "tower-layer",
+ "tower-service",
]
[[package]]
@@ -2018,7 +1998,7 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1374191e2dd25f9ae02e3aa95041ed5d747fc77b3c102b49fe2dd9a8117a6244"
dependencies = [
- "num-bigint 0.2.6",
+ "num-bigint 0.2.3",
"num-integer",
"num-traits 0.2.15",
"serde 1.0.144",
@@ -2196,7 +2176,7 @@ checksum = "c1ad822118d20d2c234f427000d5acc36eabe1e29a348c89b63dd60b13f28e5d"
[[package]]
name = "bytecode-interpreter-crypto"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"curve25519-dalek-fiat",
@@ -2377,7 +2357,7 @@ version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6995bbe186456c36307f8ea36be3eefe42f49d106896414e18efc4fb2f846b5"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
]
[[package]]
@@ -2606,6 +2586,7 @@ dependencies = [
"itertools",
"mirai-annotations",
"proptest",
+ "rayon",
"serde 1.0.144",
"serde_json",
"short-hex-str",
@@ -2632,8 +2613,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e57ff02e8ad8e06ab9731d5dc72dc23bef9200778eae1a89d555d8c42e5d4a86"
dependencies = [
"prost 0.11.0",
- "prost-types 0.11.1",
- "tonic 0.8.0",
+ "prost-types",
+ "tonic",
"tracing-core",
]
@@ -2649,13 +2630,13 @@ dependencies = [
"futures",
"hdrhistogram",
"humantime 2.1.0",
- "prost-types 0.11.1",
+ "prost-types",
"serde 1.0.144",
"serde_json",
"thread_local",
"tokio",
"tokio-stream",
- "tonic 0.8.0",
+ "tonic",
"tracing",
"tracing-core",
"tracing-subscriber",
@@ -2864,7 +2845,7 @@ version = "0.9.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "045ebe27666471bb549370b4b0b3e51b07f56325befa4284db65fc89c02511b1"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"cfg-if",
"crossbeam-utils",
"memoffset",
@@ -3200,15 +3181,17 @@ checksum = "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690"
[[package]]
name = "diesel"
-version = "1.4.8"
-source = "git+https://github.com/aptos-labs/diesel?branch=1.4.x#1346b2087fb11ba2feca1153a88a598a17da0d38"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01e2adfd0a7a81070ed7beec0c62636458926326c16fedb77796d41e447b282d"
dependencies = [
"bigdecimal",
"bitflags",
"byteorder",
"chrono",
"diesel_derives",
- "num-bigint 0.2.6",
+ "itoa 1.0.3",
+ "num-bigint 0.2.3",
"num-integer",
"num-traits 0.2.15",
"pq-sys",
@@ -3218,10 +3201,11 @@ dependencies = [
[[package]]
name = "diesel_derives"
-version = "1.4.1"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3"
+checksum = "22a7ab9d7967e6a1a247ea38aedf88ab808b4ac0c159576bc71866ab8f9f9250"
dependencies = [
+ "proc-macro-error",
"proc-macro2 1.0.43",
"quote 1.0.21",
"syn 1.0.99",
@@ -3229,10 +3213,11 @@ dependencies = [
[[package]]
name = "diesel_migrations"
-version = "1.4.0"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c"
+checksum = "e9ae22beef5e9d6fab9225ddb073c1c6c1a7a6ded5019d5da11d1e5c5adc34e2"
dependencies = [
+ "diesel",
"migrations_internals",
"migrations_macros",
]
@@ -3363,6 +3348,7 @@ dependencies = [
"itertools",
"language-e2e-tests",
"move-deps",
+ "package-builder",
"project-root",
"proptest",
"rand 0.7.3",
@@ -3794,8 +3780,10 @@ version = "0.0.0"
dependencies = [
"again",
"anyhow",
+ "aptos",
"aptos-config",
"aptos-genesis",
+ "aptos-global-constants",
"aptos-infallible",
"aptos-logger",
"aptos-rest-client",
@@ -3814,6 +3802,7 @@ dependencies = [
"hyper-tls",
"inspection-service",
"itertools",
+ "json-patch",
"k8s-openapi",
"kube",
"num_cpus",
@@ -3841,6 +3830,7 @@ name = "forge-cli"
version = "0.0.0"
dependencies = [
"anyhow",
+ "aptos-global-constants",
"aptos-logger",
"aptos-rest-client",
"aptos-sdk",
@@ -4675,7 +4665,7 @@ version = "1.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"hashbrown",
]
@@ -4847,6 +4837,17 @@ dependencies = [
"wasm-bindgen",
]
+[[package]]
+name = "json-patch"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f995a3c8f2bc3dd52a18a583e90f9ec109c047fa1603a853e46bcda14d2e279d"
+dependencies = [
+ "serde 1.0.144",
+ "serde_json",
+ "treediff",
+]
+
[[package]]
name = "jsonpath_lib"
version = "0.2.6"
@@ -4911,6 +4912,7 @@ dependencies = [
"hyper",
"hyper-timeout",
"hyper-tls",
+ "json-patch",
"jsonpath_lib",
"k8s-openapi",
"log",
@@ -5019,6 +5021,7 @@ dependencies = [
"move-deps",
"proptest",
"serde 1.0.144",
+ "vm-genesis",
]
[[package]]
@@ -5315,7 +5318,7 @@ version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
]
[[package]]
@@ -5344,23 +5347,23 @@ dependencies = [
[[package]]
name = "migrations_internals"
-version = "1.4.1"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b4fc84e4af020b837029e017966f86a1c2d5e83e64b589963d5047525995860"
+checksum = "c493c09323068c01e54c685f7da41a9ccf9219735c3766fbfd6099806ea08fbc"
dependencies = [
- "diesel",
+ "serde 1.0.144",
+ "toml",
]
[[package]]
name = "migrations_macros"
-version = "1.4.2"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9753f12909fd8d923f75ae5c3258cae1ed3c8ec052e1b38c93c21a6d157f789c"
+checksum = "8a8ff27a350511de30cdabb77147501c36ef02e0451d957abea2f30caffb2b58"
dependencies = [
"migrations_internals",
"proc-macro2 1.0.43",
"quote 1.0.21",
- "syn 1.0.99",
]
[[package]]
@@ -5470,7 +5473,7 @@ checksum = "5474f8732dc7e0635ae9df6595bcd39cd30e3cfe8479850d4fa3e69306c19712"
[[package]]
name = "move-abigen"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5487,7 +5490,7 @@ dependencies = [
[[package]]
name = "move-binary-format"
version = "0.0.3"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-core-types",
@@ -5502,12 +5505,12 @@ dependencies = [
[[package]]
name = "move-borrow-graph"
version = "0.0.1"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
[[package]]
name = "move-bytecode-source-map"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5522,7 +5525,7 @@ dependencies = [
[[package]]
name = "move-bytecode-utils"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-binary-format",
@@ -5534,7 +5537,7 @@ dependencies = [
[[package]]
name = "move-bytecode-verifier"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-binary-format",
@@ -5546,7 +5549,7 @@ dependencies = [
[[package]]
name = "move-bytecode-viewer"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"clap 3.2.17",
@@ -5563,7 +5566,7 @@ dependencies = [
[[package]]
name = "move-cli"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5609,7 +5612,7 @@ dependencies = [
[[package]]
name = "move-command-line-common"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"difference",
@@ -5626,7 +5629,7 @@ dependencies = [
[[package]]
name = "move-compiler"
version = "0.0.1"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5655,7 +5658,7 @@ dependencies = [
[[package]]
name = "move-core-types"
version = "0.0.4"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5672,7 +5675,7 @@ dependencies = [
[[package]]
name = "move-coverage"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5726,7 +5729,7 @@ dependencies = [
[[package]]
name = "move-disassembler"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"clap 3.2.17",
@@ -5744,7 +5747,7 @@ dependencies = [
[[package]]
name = "move-docgen"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"codespan",
@@ -5762,7 +5765,7 @@ dependencies = [
[[package]]
name = "move-errmapgen"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5788,7 +5791,7 @@ dependencies = [
[[package]]
name = "move-ir-compiler"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5807,7 +5810,7 @@ dependencies = [
[[package]]
name = "move-ir-to-bytecode"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"codespan-reporting",
@@ -5826,7 +5829,7 @@ dependencies = [
[[package]]
name = "move-ir-to-bytecode-syntax"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"hex",
@@ -5839,7 +5842,7 @@ dependencies = [
[[package]]
name = "move-ir-types"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"hex",
@@ -5853,7 +5856,7 @@ dependencies = [
[[package]]
name = "move-model"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"codespan",
@@ -5879,7 +5882,7 @@ dependencies = [
[[package]]
name = "move-package"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -5915,7 +5918,7 @@ dependencies = [
[[package]]
name = "move-prover"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"async-trait",
@@ -5952,7 +5955,7 @@ dependencies = [
[[package]]
name = "move-prover-boogie-backend"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"async-trait",
@@ -5980,7 +5983,7 @@ dependencies = [
[[package]]
name = "move-prover-test-utils"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-command-line-common",
@@ -5991,7 +5994,7 @@ dependencies = [
[[package]]
name = "move-read-write-set-types"
version = "0.0.3"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-binary-format",
@@ -6002,7 +6005,7 @@ dependencies = [
[[package]]
name = "move-resource-viewer"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -6017,7 +6020,7 @@ dependencies = [
[[package]]
name = "move-stackless-bytecode"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"codespan",
"codespan-reporting",
@@ -6044,7 +6047,7 @@ dependencies = [
[[package]]
name = "move-stackless-bytecode-interpreter"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bytecode-interpreter-crypto",
@@ -6062,7 +6065,7 @@ dependencies = [
[[package]]
name = "move-stdlib"
version = "0.1.1"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"log",
@@ -6084,7 +6087,7 @@ dependencies = [
[[package]]
name = "move-symbol-pool"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"once_cell",
"serde 1.0.144",
@@ -6093,7 +6096,7 @@ dependencies = [
[[package]]
name = "move-table-extension"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"bcs",
@@ -6110,7 +6113,7 @@ dependencies = [
[[package]]
name = "move-transactional-test-runner"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"clap 3.2.17",
@@ -6141,7 +6144,7 @@ dependencies = [
[[package]]
name = "move-unit-test"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"better_any",
@@ -6172,7 +6175,7 @@ dependencies = [
[[package]]
name = "move-vm-runtime"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"better_any",
"fail 0.4.0",
@@ -6189,7 +6192,7 @@ dependencies = [
[[package]]
name = "move-vm-test-utils"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-binary-format",
@@ -6203,7 +6206,7 @@ dependencies = [
[[package]]
name = "move-vm-types"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"bcs",
"move-binary-format",
@@ -6424,7 +6427,9 @@ dependencies = [
"aptos-infallible",
"aptos-logger",
"aptos-metrics-core",
+ "cfg-if",
"once_cell",
+ "procfs",
"prometheus",
"sysinfo",
]
@@ -6481,11 +6486,11 @@ dependencies = [
[[package]]
name = "num-bigint"
-version = "0.2.6"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304"
+checksum = "f9c3f34cdd24f334cb265d9bf8bfa8a241920d026916785747a92f0e55541a1a"
dependencies = [
- "autocfg",
+ "autocfg 0.1.8",
"num-integer",
"num-traits 0.2.15",
]
@@ -6496,7 +6501,7 @@ version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"num-integer",
"num-traits 0.2.15",
]
@@ -6527,7 +6532,7 @@ version = "0.1.45"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"num-traits 0.2.15",
]
@@ -6537,7 +6542,7 @@ version = "0.1.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"num-integer",
"num-traits 0.2.15",
]
@@ -6548,7 +6553,7 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"num-bigint 0.4.3",
"num-integer",
"num-traits 0.2.15",
@@ -6569,7 +6574,7 @@ version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
]
[[package]]
@@ -6671,7 +6676,7 @@ version = "0.9.75"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5f9bd0c2710541a3cda73d6f9ac4f1b240de4ae261065d309dbe73d9dceb42f"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"cc",
"libc",
"pkg-config",
@@ -6725,6 +6730,18 @@ dependencies = [
"winapi 0.3.9",
]
+[[package]]
+name = "package-builder"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "framework",
+ "itertools",
+ "move-command-line-common",
+ "move-package",
+ "tempfile",
+]
+
[[package]]
name = "parking"
version = "2.0.0"
@@ -7164,7 +7181,7 @@ version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "899b00b9c8ab553c743b3e11e87c5c7d423b2a2de229ba95b24a756344748011"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"cfg-if",
"libc",
"log",
@@ -7341,6 +7358,21 @@ dependencies = [
"unicode-ident",
]
+[[package]]
+name = "procfs"
+version = "0.14.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2dfb6451c91904606a1abe93e83a8ec851f45827fa84273f256ade45dc095818"
+dependencies = [
+ "bitflags",
+ "byteorder",
+ "chrono",
+ "flate2",
+ "hex",
+ "lazy_static 1.4.0",
+ "rustix",
+]
+
[[package]]
name = "project-root"
version = "0.2.2"
@@ -7463,16 +7495,6 @@ dependencies = [
"syn 1.0.99",
]
-[[package]]
-name = "prost-types"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68"
-dependencies = [
- "bytes 1.2.1",
- "prost 0.10.4",
-]
-
[[package]]
name = "prost-types"
version = "0.11.1"
@@ -7708,7 +7730,7 @@ version = "1.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"crossbeam-deque",
"either",
"rayon-core",
@@ -7729,7 +7751,7 @@ dependencies = [
[[package]]
name = "read-write-set"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-binary-format",
@@ -7744,7 +7766,7 @@ dependencies = [
[[package]]
name = "read-write-set-dynamic"
version = "0.1.0"
-source = "git+https://github.com/bobchainer/move?rev=c73b6b22#c73b6b228fbe4f3ffdc2f7411fa9a5712c2eaa0f"
+source = "git+https://github.com/Mamoru-Foundation/move?branch=main#df00eacf475cc788cc51f53d4fd59eb5ef32d297"
dependencies = [
"anyhow",
"move-binary-format",
@@ -8678,7 +8700,7 @@ version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
]
[[package]]
@@ -9187,6 +9209,7 @@ version = "0.0.0"
dependencies = [
"anyhow",
"aptos",
+ "aptos-global-constants",
"aptos-logger",
"aptos-rest-client",
"aptos-sdk",
@@ -9345,7 +9368,7 @@ version = "1.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89797afd69d206ccd11fb0ea560a44bbb87731d020670e79416d442919257d42"
dependencies = [
- "autocfg",
+ "autocfg 1.1.0",
"bytes 1.2.1",
"libc",
"memchr",
@@ -9512,42 +9535,6 @@ dependencies = [
"serde 1.0.144",
]
-[[package]]
-name = "tonic"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5be9d60db39854b30b835107500cf0aca0b0d14d6e1c3de124217c23a29c2ddb"
-dependencies = [
- "async-stream",
- "async-trait",
- "axum",
- "base64 0.13.0",
- "bytes 1.2.1",
- "flate2",
- "futures-core",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
- "hyper-timeout",
- "percent-encoding",
- "pin-project",
- "prost 0.10.4",
- "prost-derive 0.10.1",
- "rustls-native-certs",
- "rustls-pemfile 1.0.1",
- "tokio",
- "tokio-rustls 0.23.4",
- "tokio-stream",
- "tokio-util 0.7.3",
- "tower",
- "tower-layer",
- "tower-service",
- "tracing",
- "tracing-futures",
-]
-
[[package]]
name = "tonic"
version = "0.8.0"
@@ -9709,6 +9696,7 @@ name = "transaction-emitter"
version = "0.0.0"
dependencies = [
"anyhow",
+ "aptos-global-constants",
"aptos-logger",
"aptos-sdk",
"clap 3.2.17",
@@ -9729,6 +9717,7 @@ dependencies = [
"aptos",
"aptos-config",
"aptos-crypto",
+ "aptos-global-constants",
"aptos-infallible",
"aptos-logger",
"aptos-rest-client",
@@ -9745,6 +9734,15 @@ dependencies = [
"url",
]
+[[package]]
+name = "treediff"
+version = "3.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "761e8d5ad7ce14bb82b7e61ccc0ca961005a275a060b9644a2431aa11553c2ff"
+dependencies = [
+ "serde_json",
+]
+
[[package]]
name = "try-lock"
version = "0.2.3"
diff --git a/Cargo.toml b/Cargo.toml
index 5c5adbe86c4be..e514eb905d672 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -23,6 +23,7 @@ members = [
"aptos-move/move-deps",
"aptos-move/move-examples",
"aptos-move/mvhashmap",
+ "aptos-move/package-builder",
"aptos-move/parallel-executor",
"aptos-move/vm-genesis",
"aptos-move/writeset-transaction-generator",
@@ -74,8 +75,6 @@ members = [
"crates/transaction-emitter-lib",
"ecosystem/node-checker",
"ecosystem/node-checker/fn-check-client",
- "ecosystem/sf-indexer/aptos-sf-indexer",
- "ecosystem/sf-indexer/firehose-stream",
"execution/db-bootstrapper",
"execution/executor",
"execution/executor-benchmark",
@@ -128,10 +127,7 @@ members = [
"vm-validator",
]
-exclude =[
- "crates/aptos-protos",
- "ecosystem/sf-indexer/aptos-substreams",
-]
+exclude = ["crates/aptos-protos", "ecosystem/sf-indexer"]
# NOTE: default-members is the complete list of binaries that form the "production Aptos codebase". These members should
# never include crates that require fuzzing features or test features. These are the crates we want built with no extra
@@ -183,35 +179,44 @@ debug = true
[patch.crates-io]
rocksdb = { git = 'https://github.com/aptos-labs/rust-rocksdb' }
serde-reflection = { git = "https://github.com/aptos-labs/serde-reflection", rev = "839aed62a20ddccf043c08961cfe74875741ccba" }
-diesel = { git = "https://github.com/aptos-labs/diesel", branch = "1.4.x" }
# Replacing original dependences of "move-language/move"
[patch."https://github.com/move-language/move"]
-move-abigen = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-binary-format = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-bytecode-utils = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-bytecode-verifier = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-cli = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-command-line-common = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-compiler = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-core-types = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-docgen = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-errmapgen = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-ir-compiler = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-model = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-package = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-prover = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-prover-boogie-backend = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-prover-test-utils = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-resource-viewer = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-stackless-bytecode-interpreter = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-stdlib = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-symbol-pool = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-table-extension = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-transactional-test-runner = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-unit-test = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-vm-runtime = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-vm-test-utils = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-move-vm-types = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-read-write-set = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
-read-write-set-dynamic = { git = "https://github.com/bobchainer/move", rev = "c73b6b22" }
+move-abigen = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-binary-format = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-bytecode-utils = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-bytecode-verifier = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-bytecode-source-map = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-cli = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-command-line-common = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-compiler = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-coverage = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-core-types = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-disassembler = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-docgen = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-errmapgen = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-ir-compiler = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-model = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-package = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-prover = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-prover-boogie-backend = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-prover-test-utils = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-resource-viewer = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-stackless-bytecode-interpreter = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-ir-to-bytecode = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-ir-to-bytecode-syntax = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-ir-types = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-stdlib = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-symbol-pool = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-table-extension = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-transactional-test-runner = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-unit-test = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-vm-runtime = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-vm-test-utils = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-vm-types = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+read-write-set = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+read-write-set-dynamic = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+
+[patch."https://github.com/aptos-labs/move"]
+move-command-line-common = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
+move-package = { git = "https://github.com/Mamoru-Foundation/move", branch = "main" }
diff --git a/api/Cargo.toml b/api/Cargo.toml
index 1e5545668703f..9454f84582594 100644
--- a/api/Cargo.toml
+++ b/api/Cargo.toml
@@ -31,6 +31,7 @@ url = "2.2.2"
aptos-api-types = { path = "./types", package = "aptos-api-types" }
aptos-config = { path = "../config" }
aptos-crypto = { path = "../crates/aptos-crypto" }
+aptos-gas = { path = "../aptos-move/aptos-gas" }
aptos-logger = { path = "../crates/aptos-logger" }
aptos-mempool = { path = "../mempool" }
aptos-metrics-core = { path = "../crates/aptos-metrics-core" }
@@ -43,6 +44,7 @@ storage-interface = { path = "../storage/storage-interface" }
[dev-dependencies]
aptos-api-test-context = { path = "./test-context", package = "aptos-api-test-context" }
+aptos-gas = { path = "../aptos-move/aptos-gas", features = ["testing"] }
aptos-proptest-helpers = { path = "../crates/aptos-proptest-helpers" }
aptos-sdk = { path = "../sdk" }
percent-encoding = "2.1.0"
diff --git a/api/doc/.version b/api/doc/.version
index 9084fa2f716a7..26aaba0e86632 100644
--- a/api/doc/.version
+++ b/api/doc/.version
@@ -1 +1 @@
-1.1.0
+1.2.0
diff --git a/api/doc/CHANGELOG.md b/api/doc/CHANGELOG.md
index bd29aae7f0bd8..85dd679aa4eb0 100644
--- a/api/doc/CHANGELOG.md
+++ b/api/doc/CHANGELOG.md
@@ -4,6 +4,11 @@ All notable changes to the Aptos Node API will be captured in this file. This ch
**Note**: The Aptos Node API does not follow semantic version while we are in active development. Instead, breaking changes will be announced with each devnet cut. Once we launch our mainnet, the API will follow semantic versioning closely.
+## Unreleased
+- **[Breaking Changes]** Following the deprecation notice from the previous release, the following breaking changes have landed in this release. Please see the notes from last release for information on the new endpoints you must migrate to:
+ - The `/events/{event_key}` endpoint has been removed.
+ - The `key` field in the `Event` struct has been removed.
+
## 1.1.0 (2022-09-08)
- A new endpoint has been added for getting events: `/accounts/{address}/events/{creation_number}`. If you would make a request to `/events/{event_key}` like in `Example A` below, you would use the new endpoint like in `Example B`. See [#4012](https://github.com/aptos-labs/aptos-core/pull/4012) for more information on this change.
- **[Deprecated]** The `/events/{event_key}` endpoint is now deprecated. In the next release it will be removed entirely. You must migrate to the new endpoint, `/accounts/{address}/events/{creation_number}`, by then.
diff --git a/api/doc/spec.json b/api/doc/spec.json
index e149212563357..441ee1a888e10 100644
--- a/api/doc/spec.json
+++ b/api/doc/spec.json
@@ -3,7 +3,7 @@
"info": {
"title": "Aptos Node API",
"description": "The Aptos Node API is a RESTful API for client applications to interact with the Aptos blockchain.",
- "version": "1.1.0",
+ "version": "1.2.0",
"contact": {
"name": "Aptos Labs",
"url": "https://github.com/aptos-labs/aptos-core"
@@ -1909,7 +1909,7 @@
"Blocks"
],
"summary": "Get blocks by height",
- "description": "This endpoint allows you to get the transactions in a block\nand the corresponding block information.\n\nIf the block is pruned, it will return a 410",
+ "description": "This endpoint allows you to get the transactions in a block\nand the corresponding block information.\n\nTransactions are limited by max default transactions size. If not all transactions\nare present, the user will need to query for the rest of the transactions via the\nget transactions API.\n\nIf the block is pruned, it will return a 410",
"parameters": [
{
"name": "block_height",
@@ -2438,7 +2438,7 @@
"Blocks"
],
"summary": "Get blocks by version",
- "description": "This endpoint allows you to get the transactions in a block\nand the corresponding block information given a version in the block.\n\nIf the block has been pruned, it will return a 410",
+ "description": "This endpoint allows you to get the transactions in a block\nand the corresponding block information given a version in the block.\n\nTransactions are limited by max default transactions size. If not all transactions\nare present, the user will need to query for the rest of the transactions via the\nget transactions API.\n\nIf the block has been pruned, it will return a 410",
"parameters": [
{
"name": "version",
@@ -2961,550 +2961,6 @@
"operationId": "get_block_by_version"
}
},
- "/events/{event_key}": {
- "get": {
- "tags": [
- "Events"
- ],
- "summary": "Get events by event key",
- "description": "This endpoint allows you to get a list of events of a specific type\nas identified by its event key, which is a globally unique ID.",
- "parameters": [
- {
- "name": "event_key",
- "schema": {
- "$ref": "#/components/schemas/EventKey"
- },
- "in": "path",
- "description": "Event key to retrieve events by",
- "required": true,
- "deprecated": false,
- "explode": true
- },
- {
- "name": "start",
- "schema": {
- "$ref": "#/components/schemas/U64"
- },
- "in": "query",
- "description": "Starting sequence number of events.\n\nIf unspecified, by default will retrieve the most recent events",
- "required": false,
- "deprecated": false,
- "explode": true
- },
- {
- "name": "limit",
- "schema": {
- "type": "integer",
- "format": "uint16"
- },
- "in": "query",
- "description": "Max number of events to retrieve.\n\nIf unspecified, defaults to default page size",
- "required": false,
- "deprecated": false,
- "explode": true
- }
- ],
- "responses": {
- "200": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "type": "array",
- "items": {
- "$ref": "#/components/schemas/VersionedEvent"
- }
- }
- },
- "application/x-bcs": {
- "schema": {
- "type": "array",
- "items": {
- "type": "integer",
- "format": "uint8"
- }
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "required": true,
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- },
- "400": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AptosError"
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- },
- "403": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AptosError"
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- },
- "404": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AptosError"
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- },
- "410": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AptosError"
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- },
- "500": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AptosError"
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- },
- "503": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/AptosError"
- }
- }
- },
- "headers": {
- "X-APTOS-CHAIN-ID": {
- "description": "Chain ID of the current chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint8"
- }
- },
- "X-APTOS-LEDGER-VERSION": {
- "description": "Current ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-OLDEST-VERSION": {
- "description": "Oldest non-pruned ledger version of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-LEDGER-TIMESTAMPUSEC": {
- "description": "Current timestamp of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-EPOCH": {
- "description": "Current epoch of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-BLOCK-HEIGHT": {
- "description": "Current block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- },
- "X-APTOS-OLDEST-BLOCK-HEIGHT": {
- "description": "Oldest non-pruned block height of the chain",
- "deprecated": false,
- "schema": {
- "type": "integer",
- "format": "uint64"
- }
- }
- }
- }
- },
- "deprecated": true,
- "operationId": "get_events_by_event_key"
- }
- },
"/accounts/{address}/events/{creation_number}": {
"get": {
"tags": [
@@ -9855,6 +9311,30 @@
],
"summary": "Simulate transaction",
"description": "The output of the transaction will have the exact transaction outputs and events that running\nan actual signed transaction would have. However, it will not have the associated state\nhashes, as they are not updated in storage. This can be used to estimate the maximum gas\nunits for a submitted transaction.\n\nTo use this, you must:\n- Create a SignedTransaction with a zero-padded signature.\n- Submit a SubmitTransactionRequest containing a UserTransactionRequest containing that signature.\n\nTo use this endpoint with BCS, you must submit a SignedTransaction\nencoded as BCS. See SignedTransaction in types/src/transaction/mod.rs.",
+ "parameters": [
+ {
+ "name": "estimate_max_gas_amount",
+ "schema": {
+ "type": "boolean"
+ },
+ "in": "query",
+ "description": "If set to true, the max gas value in the transaction will be ignored\nand the maximum possible gas will be used",
+ "required": false,
+ "deprecated": false,
+ "explode": true
+ },
+ {
+ "name": "estimate_gas_unit_price",
+ "schema": {
+ "type": "boolean"
+ },
+ "in": "query",
+ "description": "If set to true, the gas unit price in the transaction will be ignored\nand the estimated value will be used",
+ "required": false,
+ "deprecated": false,
+ "explode": true
+ }
+ ],
"requestBody": {
"content": {
"application/json": {
@@ -11603,16 +11083,12 @@
"type": "object",
"description": "An event from a transaction",
"required": [
- "key",
"guid",
"sequence_number",
"type",
"data"
],
"properties": {
- "key": {
- "$ref": "#/components/schemas/EventKey"
- },
"guid": {
"$ref": "#/components/schemas/EventGuid"
},
@@ -11642,12 +11118,6 @@
}
}
},
- "EventKey": {
- "type": "string",
- "format": "hex",
- "description": "Event key is a global index for an event stream.\n\nIt is hex-encoded BCS bytes of `EventHandle` `guid` field value, which is\na combination of a `uint64` creation number and account address (without\ntrimming leading zeros).\n\nFor example, event key `0x000000000000000088fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1` is combined by the following 2 parts:\n 1. `0000000000000000`: `uint64` representation of `0`.\n 2. `88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1`: 32 bytes of account address.\n",
- "example": "0x000000000000000088fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1 "
- },
"GasEstimation": {
"type": "object",
"description": "Struct holding the outputs of the estimate gas API",
@@ -12835,7 +12305,6 @@
"description": "An event from a transaction with a version",
"required": [
"version",
- "key",
"guid",
"sequence_number",
"type",
@@ -12845,9 +12314,6 @@
"version": {
"$ref": "#/components/schemas/U64"
},
- "key": {
- "$ref": "#/components/schemas/EventKey"
- },
"guid": {
"$ref": "#/components/schemas/EventGuid"
},
@@ -13154,4 +12620,4 @@
"externalDocs": {
"url": "https://github.com/aptos-labs/aptos-core"
}
-}
\ No newline at end of file
+}
diff --git a/api/doc/spec.yaml b/api/doc/spec.yaml
index a0f9bed2ee311..2fc95f8925050 100644
--- a/api/doc/spec.yaml
+++ b/api/doc/spec.yaml
@@ -3,7 +3,7 @@ info:
title: Aptos Node API
description: The Aptos Node API is a RESTful API for client applications to interact
with the Aptos blockchain.
- version: 1.1.0
+ version: 1.2.0
contact:
name: Aptos Labs
url: https://github.com/aptos-labs/aptos-core
@@ -1409,6 +1409,10 @@ paths:
This endpoint allows you to get the transactions in a block
and the corresponding block information.
+ Transactions are limited by max default transactions size. If not all transactions
+ are present, the user will need to query for the rest of the transactions via the
+ get transactions API.
+
If the block is pruned, it will return a 410
parameters:
- name: block_height
@@ -1798,6 +1802,10 @@ paths:
This endpoint allows you to get the transactions in a block
and the corresponding block information given a version in the block.
+ Transactions are limited by max default transactions size. If not all transactions
+ are present, the user will need to query for the rest of the transactions via the
+ get transactions API.
+
If the block has been pruned, it will return a 410
parameters:
- name: version
@@ -2178,407 +2186,6 @@ paths:
type: integer
format: uint64
operationId: get_block_by_version
- /events/{event_key}:
- get:
- tags:
- - Events
- summary: Get events by event key
- description: |-
- This endpoint allows you to get a list of events of a specific type
- as identified by its event key, which is a globally unique ID.
- parameters:
- - name: event_key
- schema:
- $ref: '#/components/schemas/EventKey'
- in: path
- description: Event key to retrieve events by
- required: true
- deprecated: false
- explode: true
- - name: start
- schema:
- $ref: '#/components/schemas/U64'
- in: query
- description: |-
- Starting sequence number of events.
-
- If unspecified, by default will retrieve the most recent events
- required: false
- deprecated: false
- explode: true
- - name: limit
- schema:
- type: integer
- format: uint16
- in: query
- description: |-
- Max number of events to retrieve.
-
- If unspecified, defaults to default page size
- required: false
- deprecated: false
- explode: true
- responses:
- '200':
- description: ''
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/VersionedEvent'
- application/x-bcs:
- schema:
- type: array
- items:
- type: integer
- format: uint8
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- required: true
- deprecated: false
- schema:
- type: integer
- format: uint64
- '400':
- description: ''
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AptosError'
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- '403':
- description: ''
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AptosError'
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- '404':
- description: ''
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AptosError'
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- '410':
- description: ''
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AptosError'
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- '500':
- description: ''
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AptosError'
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- '503':
- description: ''
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AptosError'
- headers:
- X-APTOS-CHAIN-ID:
- description: Chain ID of the current chain
- deprecated: false
- schema:
- type: integer
- format: uint8
- X-APTOS-LEDGER-VERSION:
- description: Current ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-OLDEST-VERSION:
- description: Oldest non-pruned ledger version of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-LEDGER-TIMESTAMPUSEC:
- description: Current timestamp of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-EPOCH:
- description: Current epoch of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-BLOCK-HEIGHT:
- description: Current block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- X-APTOS-OLDEST-BLOCK-HEIGHT:
- description: Oldest non-pruned block height of the chain
- deprecated: false
- schema:
- type: integer
- format: uint64
- deprecated: true
- operationId: get_events_by_event_key
/accounts/{address}/events/{creation_number}:
get:
tags:
@@ -7301,6 +6908,27 @@ paths:
To use this endpoint with BCS, you must submit a SignedTransaction
encoded as BCS. See SignedTransaction in types/src/transaction/mod.rs.
+ parameters:
+ - name: estimate_max_gas_amount
+ schema:
+ type: boolean
+ in: query
+ description: |-
+ If set to true, the max gas value in the transaction will be ignored
+ and the maximum possible gas will be used
+ required: false
+ deprecated: false
+ explode: true
+ - name: estimate_gas_unit_price
+ schema:
+ type: boolean
+ in: query
+ description: |-
+ If set to true, the gas unit price in the transaction will be ignored
+ and the estimated value will be used
+ required: false
+ deprecated: false
+ explode: true
requestBody:
content:
application/json:
@@ -8612,14 +8240,11 @@ components:
type: object
description: An event from a transaction
required:
- - key
- guid
- sequence_number
- type
- data
properties:
- key:
- $ref: '#/components/schemas/EventKey'
guid:
$ref: '#/components/schemas/EventGuid'
sequence_number:
@@ -8638,20 +8263,6 @@ components:
$ref: '#/components/schemas/U64'
account_address:
$ref: '#/components/schemas/Address'
- EventKey:
- type: string
- format: hex
- description: |
- Event key is a global index for an event stream.
-
- It is hex-encoded BCS bytes of `EventHandle` `guid` field value, which is
- a combination of a `uint64` creation number and account address (without
- trimming leading zeros).
-
- For example, event key `0x000000000000000088fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1` is combined by the following 2 parts:
- 1. `0000000000000000`: `uint64` representation of `0`.
- 2. `88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1`: 32 bytes of account address.
- example: '0x000000000000000088fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1 '
GasEstimation:
type: object
description: Struct holding the outputs of the estimate gas API
@@ -9563,7 +9174,6 @@ components:
description: An event from a transaction with a version
required:
- version
- - key
- guid
- sequence_number
- type
@@ -9571,8 +9181,6 @@ components:
properties:
version:
$ref: '#/components/schemas/U64'
- key:
- $ref: '#/components/schemas/EventKey'
guid:
$ref: '#/components/schemas/EventGuid'
sequence_number:
@@ -9750,3 +9358,4 @@ components:
$ref: '#/components/schemas/DecodedTableData'
externalDocs:
url: https://github.com/aptos-labs/aptos-core
+
diff --git a/api/goldens/aptos_api__tests__events_test__test_get_events.json b/api/goldens/aptos_api__tests__events_test__test_get_events.json
index 6bf586dc1390a..ae7ac2a2ff1c3 100644
--- a/api/goldens/aptos_api__tests__events_test__test_get_events.json
+++ b/api/goldens/aptos_api__tests__events_test__test_get_events.json
@@ -1,7 +1,6 @@
[
{
"version": "0",
- "key": "0x0000000000000000000000000000000000000000000000000000000000000000000000000a550c18",
"guid": {
"creation_number": "0",
"account_address": "0xa550c18"
diff --git a/api/goldens/aptos_api__tests__events_test__test_get_events_by_account_event_handle.json b/api/goldens/aptos_api__tests__events_test__test_get_events_by_account_event_handle.json
index 1cf57894da375..71f9f4fa4ce52 100644
--- a/api/goldens/aptos_api__tests__events_test__test_get_events_by_account_event_handle.json
+++ b/api/goldens/aptos_api__tests__events_test__test_get_events_by_account_event_handle.json
@@ -1,7 +1,6 @@
[
{
"version": "0",
- "key": "0x02000000000000000000000000000000000000000000000000000000000000000000000000000001",
"guid": {
"creation_number": "2",
"account_address": "0x1"
diff --git a/api/goldens/aptos_api__tests__events_test__test_get_events_by_invalid_account_event_handle_field_type.json b/api/goldens/aptos_api__tests__events_test__test_get_events_by_invalid_account_event_handle_field_type.json
index 23d88c62b7725..50f7949a30c94 100644
--- a/api/goldens/aptos_api__tests__events_test__test_get_events_by_invalid_account_event_handle_field_type.json
+++ b/api/goldens/aptos_api__tests__events_test__test_get_events_by_invalid_account_event_handle_field_type.json
@@ -1,5 +1,5 @@
{
- "message": "Deserialization error, field(epoch) type is not a EventHandle struct",
+ "message": "Deserialization error, field(epoch) type is not a EventHandle struct: unexpected end of input",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_string.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_string.json
index d704c094e291c..ab77d1b219b22 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_string.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_string.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: parse arguments[0] failed, expect string
, caused by error: invalid account address \"invalid\"",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_type.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_type.json
index d704c094e291c..d134b25412201 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_type.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_address_type.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: parse arguments[0] failed, expect string, caused by error: invalid type: integer `1`, expected a string",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_data_type.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_data_type.json
index d704c094e291c..94ed68a74eb78 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_data_type.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_data_type.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: parse arguments[0] failed, expect string, caused by error: invalid type: boolean `true`, expected a string",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_u64_string.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_u64_string.json
index d704c094e291c..ab77d1b219b22 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_u64_string.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_argument_u64_string.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: parse arguments[0] failed, expect string, caused by error: invalid account address \"invalid\"",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_id.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_id.json
index f654a3e791785..bf818b54528d6 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_id.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_id.json
@@ -1,5 +1,5 @@
{
- "message": "parse request payload error: failed to parse \"string(EntryFunctionId)\": invalid entry function id \"invalid\" (occurred while parsing \"EntryFunctionPayload\") (occurred while parsing \"TransactionPayload\") (occurred while parsing \"UserTransactionRequestInner\") (occurred while parsing \"EncodeSubmissionRequest\")",
+ "message": "parse request payload error: failed to parse \"string(EntryFunctionId)\": Invalid entry function ID invalid (occurred while parsing \"EntryFunctionPayload\") (occurred while parsing \"TransactionPayload\") (occurred while parsing \"UserTransactionRequestInner\") (occurred while parsing \"EncodeSubmissionRequest\")",
"error_code": "web_framework_error",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_name.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_name.json
index d704c094e291c..7c52a7c2cf27d 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_name.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_function_name.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: could not find entry function by 0x1::account::invalid",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_address.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_address.json
index d704c094e291c..842086e83a9cc 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_address.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_address.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: Module ModuleId { address: 0000000000000000000000000000000000000000000000000000002342342342, name: Identifier(\"Invalid\") } can't be found",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_name.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_name.json
index d704c094e291c..3bc334b4aa3c8 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_name.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_invalid_entry_function_module_name.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: Module ModuleId { address: 0000000000000000000000000000000000000000000000000000000000000001, name: Identifier(\"invalid\") } can't be found",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__invalid_post_request_test__test_missing_entry_function_arguments.json b/api/goldens/aptos_api__tests__invalid_post_request_test__test_missing_entry_function_arguments.json
index d704c094e291c..c65162f36d08b 100644
--- a/api/goldens/aptos_api__tests__invalid_post_request_test__test_missing_entry_function_arguments.json
+++ b/api/goldens/aptos_api__tests__invalid_post_request_test__test_missing_entry_function_arguments.json
@@ -1,5 +1,5 @@
{
- "message": "The given transaction is invalid",
+ "message": "The given transaction is invalid: Failed to parse transaction payload: parse arguments[0] failed, expect string, caused by error: invalid account address \"0\"",
"error_code": "invalid_input",
"vm_error_code": null
}
diff --git a/api/goldens/aptos_api__tests__transactions_test__test_create_signing_message_rejects_payload_too_large_json_body.json b/api/goldens/aptos_api__tests__transactions_test__test_create_signing_message_rejects_payload_too_large_json_body.json
new file mode 100644
index 0000000000000..d5b14339e25bd
--- /dev/null
+++ b/api/goldens/aptos_api__tests__transactions_test__test_create_signing_message_rejects_payload_too_large_json_body.json
@@ -0,0 +1,5 @@
+{
+ "message": "payload too large",
+ "error_code": "web_framework_error",
+ "vm_error_code": null
+}
diff --git a/api/goldens/aptos_api__tests__transactions_test__test_gas_estimation.json b/api/goldens/aptos_api__tests__transactions_test__test_gas_estimation.json
new file mode 100644
index 0000000000000..0c7b04d451a1d
--- /dev/null
+++ b/api/goldens/aptos_api__tests__transactions_test__test_gas_estimation.json
@@ -0,0 +1,3 @@
+{
+ "gas_estimate": 0
+}
diff --git a/api/goldens/aptos_api__tests__transactions_test__test_get_transactions_output_genesis_transaction.json b/api/goldens/aptos_api__tests__transactions_test__test_get_transactions_output_genesis_transaction.json
new file mode 100644
index 0000000000000..90057ba6e841c
--- /dev/null
+++ b/api/goldens/aptos_api__tests__transactions_test__test_get_transactions_output_genesis_transaction.json
@@ -0,0 +1,28833 @@
+[
+ {
+ "version": "0",
+ "hash": "",
+ "state_change_hash": "",
+ "event_root_hash": "",
+ "state_checkpoint_hash": "",
+ "gas_used": "0",
+ "success": true,
+ "vm_status": "Executed successfully",
+ "accumulator_root_hash": "",
+ "changes": [
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c010006020604030a30043a0605403607765e08d4012006f4011410880287010a8f03060c950392010da704020000000100020003070000040001000005020100000602030000070104000008000100020607030100010a080800020b070a010002080b0c01000506070608060207080005000206080005010101080002070a050605010502060a0900060900010304070a050605010302010302070a0900030109000361636c056572726f7206766563746f720341434c036164640f6173736572745f636f6e7461696e7308636f6e7461696e7305656d7074790672656d6f7665046c69737410696e76616c69645f617267756d656e7408696e6465785f6f6600000000000000000000000000000000000000000000000000000000000000010308000000000000000003080100000000000000126170746f733a3a6d657461646174615f7630730200000000000000000845434f4e5441494e255468652041434c20616c726561647920636f6e7461696e732074686520616464726573732e01000000000000000c454e4f545f434f4e5441494e255468652041434c20646f6573206e6f7420636f6e7461696e2074686520616464726573732e000201090a050001000005150a000f000e010c030c020b022e0b0338002003100b000107001106270b000f000b014406020101000001080b000b01110203070701110627020201000001050b0010000e01380002030100000103400600000000000000001200020401000009180a000f000e010c030c020b022e0b0338010c050c040b0403120b000107011106270b000f000b0538020102000000",
+ "abi": {
+ "address": "0x1",
+ "name": "acl",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "add",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::acl::ACL",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "assert_contains",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::acl::ACL",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "contains",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::acl::ACL",
+ "address"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "0x1::acl::ACL"
+ ]
+ },
+ {
+ "name": "remove",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::acl::ACL",
+ "address"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "ACL",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "list",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d01000c020c08031428043c0605421b075d800108dd012006fd010a108702740afb02090c8403370dbb03040fbf03020001000200030004000500060007060004090700000800010106000a020300000b01000100050a04050100010d06070100020e080800030f0700010003000400060001090001080001060800010608010001080101060900010a0201030c636f707961626c655f616e7903616e7903626373056572726f720866726f6d5f62637306737472696e6709747970655f696e666f03416e79047061636b06537472696e6709747970655f6e616d6506756e7061636b046461746108746f5f627974657310696e76616c69645f617267756d656e740a66726f6d5f6279746573000000000000000000000000000000000000000000000000000000000000000103080100000000000000126170746f733a3a6d657461646174615f7630600101000000000000000e45545950455f4d49534d415443484754686520747970652070726f766964656420666f722060756e7061636b60206973206e6f74207468652073616d652061732077617320676976656e20666f7220607061636b602e0002020a08010c0a0200010000040538000e0038011200020101000004030b0010000202010000040e38000e0010001421030907001105270e0010011438020200000001000000",
+ "abi": {
+ "address": "0x1",
+ "name": "any",
+ "friends": [
+ "0x1::copyable_any"
+ ],
+ "exposed_functions": [
+ {
+ "name": "pack",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "T0"
+ ],
+ "return": [
+ "0x1::any::Any"
+ ]
+ },
+ {
+ "name": "type_name",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::any::Any"
+ ],
+ "return": [
+ "&0x1::string::String"
+ ]
+ },
+ {
+ "name": "unpack",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::any::Any"
+ ],
+ "return": [
+ "T0"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Any",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "type_name",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "data",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b0500000006010002030206050807070f0d081c200c3c04000000010001010001060900010a020362637308746f5f627974657300000000000000000000000000000000000000000000000000000000000000010001020000",
+ "abi": {
+ "address": "0x1",
+ "name": "bcs",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&T0"
+ ],
+ "return": [
+ "vector"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c010012021222033466049a0104059e01b50107d302950508e807200688089a0310a20b91050ab310450cf810b2090daa1a1400000001000200030004000500060007000800090600000a0700000b0600000c0e00000d0700050f070003200701000001210700000e00010000100203000011040300001205030000130607000014080300001509010000160a030000170b030000180c03000019030d00001a030d00001b030d00022c111100022d111100022e111100082f160101000630180300043118090007321b1c0100101013140208040804010102060802060a080500020506080203060802060802060a080501060802010a080503060c060c0802010503060c08020a0a0203060c0a020a0a0204050a08050a0a0202010804040303060805060800010800010805010309060801060802060a08010103030303060803010801010802030804030a080502060a090006090002030a080501060c090101010101010101010b070a080203050303030a0805060802070a0802080403010a0201090004636f64650c636f707961626c655f616e79056572726f72066f7074696f6e067369676e657206737472696e671073797374656d5f616464726573736573047574696c06766563746f720e4d6f64756c654d657461646174610a5061636b6167654465700f5061636b6167654d657461646174610f5061636b61676552656769737472790d55706772616465506f6c6963791c63616e5f6368616e67655f757067726164655f706f6c6963795f746f06537472696e6711636865636b5f636f6578697374656e636512636865636b5f646570656e64656e6369657313636865636b5f7570677261646162696c697479106765745f6d6f64756c655f6e616d65730a696e697469616c697a651a69735f706f6c6963795f6578656d707465645f616464726573730f7075626c6973685f7061636b616765137075626c6973685f7061636b6167655f74786e0f726571756573745f7075626c69736818757067726164655f706f6c6963795f61726269747261727915757067726164655f706f6c6963795f636f6d70617418757067726164655f706f6c6963795f696d6d757461626c65046e616d6506736f757263650a736f757263655f6d617009657874656e73696f6e064f7074696f6e03416e79076163636f756e740c7061636b6167655f6e616d650e757067726164655f706f6c6963790e757067726164655f6e756d6265720d736f757263655f646967657374086d616e6966657374076d6f64756c65730464657073087061636b6167657306706f6c6963790e616c72656164795f657869737473096e6f745f666f756e6410696e76616c69645f617267756d656e7408636f6e7461696e73166173736572745f6170746f735f6672616d65776f726b0a616464726573735f6f660a66726f6d5f62797465730000000000000000000000000000000000000000000000000000000000000001030807000000000000000308060000000000000003080400000000000000030801000000000000000308050000000000000003080200000000000000030803000000000000000520000000000000000000000000000000000000000000000000000000000000000105200000000000000000000000000000000000000000000000000000000000000002052000000000000000000000000000000000000000000000000000000000000000030520000000000000000000000000000000000000000000000000000000000000000405200000000000000000000000000000000000000000000000000000000000000005052000000000000000000000000000000000000000000000000000000000000000060520000000000000000000000000000000000000000000000000000000000000000705200000000000000000000000000000000000000000000000000000000000000008052000000000000000000000000000000000000000000000000000000000000000090520000000000000000000000000000000000000000000000000000000000000000a126170746f733a3a6d657461646174615f7630fc0407010000000000000012454d4f44554c455f4e414d455f434c415348685061636b61676520636f6e7461696e73206475706c6963617465206d6f64756c65206e616d65732077697468206578697374696e67206d6f64756c6573207075626c6973656420696e206f74686572207061636b61676573206f6e2074686973206164647265737302000000000000001245555047524144455f494d4d555441424c452343616e6e6f74207570677261646520616e20696d6d757461626c65207061636b61676503000000000000001645555047524144455f5745414b45525f504f4c4943593143616e6e6f7420646f776e67726164652061207061636b6167652773207570677261646162696c69747920706f6c69637904000000000000000f454d4f44554c455f4d495353494e473d43616e6e6f742064656c6574652061206d6f64756c65207468617420776173207075626c697368656420696e207468652073616d65207061636b616765050000000000000014455041434b4147455f4445505f4d495353494e473a446570656e64656e637920636f756c64206e6f74206265207265736f6c76656420746f20616e79207075626c6973686564207061636b6167652e060000000000000012454445505f5745414b45525f504f4c494359314120646570656e64656e63792063616e6e6f7420686176652061207765616b6572207570677261646520706f6c6963792e07000000000000001f454445505f4152424954524152595f4e4f545f53414d455f41444452455353434120646570656e64656e637920746f20616e206061726269747261727960207061636b616765206d757374206265206f6e207468652073616d6520616464726573732e0002041c08051d0a021e0a021f0b0601080701020222052308050202081c08052408042503260805270a02280a0800290a08011f0b060108070302012a0a08020402012b020001000003080e001000140e011000142502010000000e390600000000000000000c020a020a001001410f23030905340a0010010a02420f0c050600000000000000000c030a030a014110230316052d0a010a0342100c040a0510020b042203280b00010b05010b01010703110d270b03060100000000000000160c0305100b05010b02060100000000000000160c0205020b00010b01010202000001031297010a0110030c040600000000000000000c060a0441130c090a060a0923030d0592010a040a0642130c020a021004142903031f0b01010b04010b02010704110e270a0210041411060325052c0b02010b06060100000000000000160c0605080a021004142b030c0a0600000000000000000c070a0a100541140c08090c050a070a0823033e0584010a0a10050a0742140c030a031006140a0210071421034c057d0b0a010a0310081000140a0110081000142603630b01010b04010b03010b02010701110f270b03100814110a21036a05780b021004140a002103770b01010b04010700110f27057a0b0201080c050584010b03010b07060100000000000000160c0705390b05038d010b01010b04010704110e270b06060100000000000000160c0605080b01010b040102030000001540110c0c030a0010081000140e031000142303140b00010b01010b02010705110f270a001008140b01100814110003230b00010b02010706110f270b0011040c050600000000000000000c040a040e05411023032e053d0a020e050a044210380003380b02010702270b04060100000000000000160c0405280b02010204000000171c401000000000000000000c020600000000000000000c010a010a001001410f23030b05180d020a0010010a01420f10021444100b01060100000000000000160c0105040b00010b0202050000010309180b0011110a0111120c030a03290320030a05100b010b024014010000000000000012032d0305170b01010b032a030f050b0244140206000000195e0a0007072103050508080c01050c0a000708210c010b01030f0512080c0205160a000709210c020b020319051c080c0305200a00070a210c030b0303230526080c04052a0a00070b210c040b04032d0530080c0505340a00070c210c050b050337053a080c06053e0a00070d210c060b0603410544080c0705480a00070e210c070b07034b054e080c0805520a00070f210c080b0803550558080c09055c0b000710210c090b090207010001031a6d0a0011120c050a052903200308050d0b004014000000000000000012032d03050f0b00010a050e0111020e0111040c090a052a030f050c0b0a0b2e41140c080a080c070600000000000000000c060600000000000000000c0d0a060a08230328054f0a0b0a060c040c030b032e0b0442140c0a0a0a1006140e0110061421033a05470a0a100914060100000000000000160c0d0b0a0e010e0911030a060c07054a0b0a0e0911010b06060100000000000000160c0605230b0d0d010f09150e011008140c0c0a070b0823035c05620b010b0b0b0743141505650b0b0b0144140b050b090b020e0c100014110902080104010303060b000b0138010b02110702090002000a010000030331001204020b010000030331011204020c01000003033102120402040002050000020601000300020001010201020200",
+ "abi": {
+ "address": "0x1",
+ "name": "code",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "can_change_upgrade_policy_to",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "0x1::code::UpgradePolicy",
+ "0x1::code::UpgradePolicy"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "publish_package",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "0x1::code::PackageMetadata",
+ "vector>"
+ ],
+ "return": []
+ },
+ {
+ "name": "publish_package_txn",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector",
+ "vector>"
+ ],
+ "return": []
+ },
+ {
+ "name": "upgrade_policy_arbitrary",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "0x1::code::UpgradePolicy"
+ ]
+ },
+ {
+ "name": "upgrade_policy_compat",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "0x1::code::UpgradePolicy"
+ ]
+ },
+ {
+ "name": "upgrade_policy_immutable",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "0x1::code::UpgradePolicy"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "ModuleMetadata",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "name",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "source",
+ "type": "vector"
+ },
+ {
+ "name": "source_map",
+ "type": "vector"
+ },
+ {
+ "name": "extension",
+ "type": "0x1::option::Option<0x1::copyable_any::Any>"
+ }
+ ]
+ },
+ {
+ "name": "PackageDep",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "account",
+ "type": "address"
+ },
+ {
+ "name": "package_name",
+ "type": "0x1::string::String"
+ }
+ ]
+ },
+ {
+ "name": "PackageMetadata",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "name",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "upgrade_policy",
+ "type": "0x1::code::UpgradePolicy"
+ },
+ {
+ "name": "upgrade_number",
+ "type": "u64"
+ },
+ {
+ "name": "source_digest",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "manifest",
+ "type": "vector"
+ },
+ {
+ "name": "modules",
+ "type": "vector<0x1::code::ModuleMetadata>"
+ },
+ {
+ "name": "deps",
+ "type": "vector<0x1::code::PackageDep>"
+ },
+ {
+ "name": "extension",
+ "type": "0x1::option::Option<0x1::copyable_any::Any>"
+ }
+ ]
+ },
+ {
+ "name": "PackageRegistry",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store",
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "packages",
+ "type": "vector<0x1::code::PackageMetadata>"
+ }
+ ]
+ },
+ {
+ "name": "UpgradePolicy",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "policy",
+ "type": "u8"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000f010014021448035caf02048b032c05b703df02079606d90708ef0d20068f0e980110a70ff3060a9a164b0be5160c0cf116a2080d931f140ea71f120fb91f0400020003000400050006000700080009000a000b000c05010001000d04010001000e08010001000f0801000100100600001105010001001205010001001308000014060007230700042e0701000005370400033a04010601094407000015000100001602030100001704010100001805010100001901020100001a01060100001b07010100001c08010100001d09010100001e0a010100001f0b01010000200c0b010000210d0b010000220e01010000240f100100002511100100002612010000270f100100002802130100002901130100002a14010100002b150b0100002c01160100002d12010100002f0117010000300116010000311801010000321201010000331903010000341a0b01000035010b0100083e120100023f030300024003030004411f1301000442202101000543220100094501240100094625020002470303000348280101060649120200024a030300054b2a1e00044c1c2b0100044d012b0100054e220100014f020101000150122e010604511f310100055232330005533213000554350100121c041c221e231e0b1c021c251c2827141c0f1c2c1e2d1e1e1c2f1c3027302f311e2c332d331d1c061c282f02060c010001050103020b01010900060b00010900030503060b00010900010202050b01010900010b00010900010b05010900010b06010900010b0101090002070b010109000301070b010109000205060b0501090005060c080908090201030b000109000b050109000b0601090006060c0809080902010101060c010102070b010109000b010109000203060b06010900010809010b0a010403060c050301060b0101090002060c030107010109000303070b0a01080b07080b01080b01060b0a01090001070b0a010900010709000207080b0402070b030109000b0101090001080d0106080d01070b0301090001080402070b0c0109000900060b0a01080b0208090809050b02010900020401010b0a01090002070b0a01080b07080b02050b03010900010b0c010900010808040b0a0104060b0a01080b06080b04010609000106080b01040305070b0a01080b07080b0107080b0205070b030109000a6170746f735f636f696e0767656e6573697304636f696e076163636f756e74056572726f72056576656e74066f7074696f6e136f7074696f6e616c5f61676772656761746f72067369676e657206737472696e671073797374656d5f61646472657373657309747970655f696e666f0e4275726e4361706162696c69747904436f696e08436f696e496e666f09436f696e53746f72650c4465706f7369744576656e7410467265657a654361706162696c6974790e4d696e744361706162696c6974790c537570706c79436f6e6669670d57697468647261774576656e7415616c6c6f775f737570706c795f75706772616465730762616c616e6365046275726e096275726e5f66726f6d0c636f696e5f6164647265737308646563696d616c73076465706f7369741064657374726f795f6275726e5f6361701264657374726f795f667265657a655f6361701064657374726f795f6d696e745f6361700c64657374726f795f7a65726f07657874726163740b657874726163745f616c6c11667265657a655f636f696e5f73746f726506537472696e670a696e697469616c697a6513696e697469616c697a655f696e7465726e616c18696e697469616c697a655f737570706c795f636f6e66696725696e697469616c697a655f776974685f706172616c6c656c697a61626c655f737570706c791569735f6163636f756e745f726567697374657265641369735f636f696e5f696e697469616c697a6564056d65726765046d696e74046e616d65087265676973746572064f7074696f6e06737570706c790673796d626f6c087472616e736665720e757067726164655f737570706c790576616c7565087769746864726177047a65726f0b64756d6d795f6669656c64124f7074696f6e616c41676772656761746f720666726f7a656e0e6465706f7369745f6576656e74730b4576656e7448616e646c650f77697468647261775f6576656e747306616d6f756e740e616c6c6f775f7570677261646573166173736572745f6170746f735f6672616d65776f726b096e6f745f666f756e6410696e76616c69645f617267756d656e740769735f736f6d650a626f72726f775f6d7574037375620854797065496e666f07747970655f6f660f6163636f756e745f61646472657373117065726d697373696f6e5f64656e6965640a656d69745f6576656e740a616464726573735f6f660e616c72656164795f657869737473036e657704736f6d65046e6f6e65036164640d72656769737465725f636f696e106e65775f6576656e745f68616e646c6506626f72726f7704726561641169735f706172616c6c656c697a61626c65067377697463680000000000000000000000000000000000000000000000000000000000000001030801000000000000000308020000000000000003080300000000000000030804000000000000000308050000000000000003080b000000000000000308070000000000000003080a0000000000000003080600000000000000030809000000000000000410ffffffffffffffffffffffffffffffff05200000000000000000000000000000000000000000000000000000000000000001126170746f733a3a6d657461646174615f7630de060a01000000000000001b45434f494e5f494e464f5f414444524553535f4d49534d415443486541646472657373206f66206163636f756e74207768696368206973207573656420746f20696e697469616c697a65206120636f696e2060436f696e547970656020646f65736e2774206d6174636820746865206465706c6f796572206f66206d6f64756c6502000000000000001c45434f494e5f494e464f5f414c52454144595f5055424c49534845442b60436f696e547970656020697320616c726561647920696e697469616c697a6564206173206120636f696e03000000000000001845434f494e5f494e464f5f4e4f545f5055424c49534845442c60436f696e5479706560206861736e2774206265656e20696e697469616c697a6564206173206120636f696e04000000000000001d45434f494e5f53544f52455f414c52454144595f5055424c4953484544394163636f756e7420616c7265616479206861732060436f696e53746f726560207265676973746572656420666f722060436f696e547970656005000000000000001945434f494e5f53544f52455f4e4f545f5055424c4953484544344163636f756e74206861736e277420726567697374657265642060436f696e53746f72656020666f722060436f696e547970656006000000000000001545494e53554646494349454e545f42414c414e4345284e6f7420656e6f75676820636f696e7320746f20636f6d706c657465207472616e73616374696f6e07000000000000001d454445535452554354494f4e5f4f465f4e4f4e5a45524f5f544f4b454e1d43616e6e6f742064657374726f79206e6f6e2d7a65726f20636f696e73090000000000000011455a45524f5f434f494e5f414d4f554e541a436f696e20616d6f756e742063616e6e6f74206265207a65726f0a00000000000000074546524f5a454e3b436f696e53746f72652069732066726f7a656e2e20436f696e732063616e6e6f74206265206465706f7369746564206f722077697468647261776e0b000000000000002245434f494e5f535550504c595f555047524144455f4e4f545f535550504f525445444543616e6e6f7420757067726164652074686520746f74616c20737570706c79206f6620636f696e7320746f20646966666572656e7420696d706c656d656e746174696f6e2e000201360101020133030202042c08093008091a022f0b0a01080b030204020b010109003801390b0c0108043b0b0c0108080402013c03050201360106020136010702013d010802013c03031c011c021c001c051c061c00010001071b0a0b00111f070b2a070f000c020b010b0215020101000103010c0a003800030607041120270b003d0037003701140202010001021d1e0b003a010c020a0206000000000000000024030a070911212738013c0236020c030a032e38020313051b0b0338030c040b040b02351124051d0b03010203010002020323140a0106000000000000000021030505080b0201020b003c000c030b0336000b0138040c040b040b0238050204000000240538060c000e001126020501000102010538013d02370314020601000103261f0a003800030607041120270b003c000c020a023704142003130b020107071127270a0236050e01370114120438070b0236000b013808020701000001040b003a0301020801000001040b003a0401020901000001040b003a0501020a010000030b0b003a010c010b0106000000000000000021030a0706112127020b01000001160a003701140a0126030b0b000107081121270a003701140a01170b003601150b013901020c010000030b0a003701140c010600000000000000000b003601150b013901020d0104010326080b003c000c02080b02360415020e01000001080b000b010b020b030b04093809020f00000029360a0011290c0a38010a0a21030c0b000107001121270b0a3b022003150b00010701112a270b010c090b020c080b030c070b04031e0524070a0b05112b380a0c060526380b0c060b090b080b070b0639020c0b0b000b0b3f02093903093904093905021003000001070a00111f0b000912072d070211030000010a0a00111f0b000b010b020b030b04083809021201000001030b003b000213010000010338013b020214010000010e0a003701140e01370114160b003601150b013a01010215010001022c1d0a000600000000000000002103050507380c0238013c0236020c020a022e3802031005180b0238030c030b030a0035112e051a0b02010b003901021601000102010538013d0237061402170100002d1b0a0011290c010a01380020030c0b00010703112a270b01380d0600000000000000003901090a00380e0a00380f39000c020b000b023f00021801000102301838013d0237020c010a013802030805120b0138100c020b0211320c030b0338110c0005160b010138120c000b00021901000102010538013d02370714021a010401030b080b000b0238130c030b010b033814021b0104020207342d0b0011290c0138010a0121030a0700112127070b2a07100014031207051127270b013c0236020c020a022e3802031b052a0b0238030c030a032e113320032405270b03113405290b0301052c0b0201021c01000001040b00370114021d0100010336200b0011290c020a023800030907041120270b023c000c030a033704142003160b030107071127270a0336080a01120838150b0336000b013804021e01000001030600000000000000003901020700030001000203020203010302020002010303011c021c031c041c051c061c071c081c091c0000000100",
+ "abi": {
+ "address": "0x1",
+ "name": "coin",
+ "friends": [
+ "0x1::aptos_coin",
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "allow_supply_upgrades",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "bool"
+ ],
+ "return": []
+ },
+ {
+ "name": "balance",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "burn",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::coin::Coin",
+ "&0x1::coin::BurnCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "burn_from",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "address",
+ "u64",
+ "&0x1::coin::BurnCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "decimals",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "u8"
+ ]
+ },
+ {
+ "name": "deposit",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "address",
+ "0x1::coin::Coin"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_burn_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::coin::BurnCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_freeze_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::coin::FreezeCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_mint_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::coin::MintCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_zero",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::coin::Coin"
+ ],
+ "return": []
+ },
+ {
+ "name": "extract",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::coin::Coin",
+ "u64"
+ ],
+ "return": [
+ "0x1::coin::Coin"
+ ]
+ },
+ {
+ "name": "extract_all",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::coin::Coin"
+ ],
+ "return": [
+ "0x1::coin::Coin"
+ ]
+ },
+ {
+ "name": "freeze_coin_store",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "address",
+ "&0x1::coin::FreezeCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "0x1::string::String",
+ "0x1::string::String",
+ "u8",
+ "bool"
+ ],
+ "return": [
+ "0x1::coin::BurnCapability",
+ "0x1::coin::FreezeCapability",
+ "0x1::coin::MintCapability"
+ ]
+ },
+ {
+ "name": "initialize_supply_config",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize_with_parallelizable_supply",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "0x1::string::String",
+ "0x1::string::String",
+ "u8",
+ "bool"
+ ],
+ "return": [
+ "0x1::coin::BurnCapability",
+ "0x1::coin::FreezeCapability",
+ "0x1::coin::MintCapability"
+ ]
+ },
+ {
+ "name": "is_account_registered",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_coin_initialized",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "merge",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::coin::Coin",
+ "0x1::coin::Coin"
+ ],
+ "return": []
+ },
+ {
+ "name": "mint",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "u64",
+ "&0x1::coin::MintCapability"
+ ],
+ "return": [
+ "0x1::coin::Coin"
+ ]
+ },
+ {
+ "name": "name",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::string::String"
+ ]
+ },
+ {
+ "name": "register",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "supply",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::option::Option"
+ ]
+ },
+ {
+ "name": "symbol",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::string::String"
+ ]
+ },
+ {
+ "name": "transfer",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "address",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "upgrade_supply",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "value",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::coin::Coin"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "withdraw",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": [
+ "0x1::coin::Coin"
+ ]
+ },
+ {
+ "name": "zero",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::coin::Coin"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "BurnCapability",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "dummy_field",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "Coin",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "value",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "CoinInfo",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "name",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "symbol",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "decimals",
+ "type": "u8"
+ },
+ {
+ "name": "supply",
+ "type": "0x1::option::Option<0x1::optional_aggregator::OptionalAggregator>"
+ }
+ ]
+ },
+ {
+ "name": "CoinStore",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "coin",
+ "type": "0x1::coin::Coin"
+ },
+ {
+ "name": "frozen",
+ "type": "bool"
+ },
+ {
+ "name": "deposit_events",
+ "type": "0x1::event::EventHandle<0x1::coin::DepositEvent>"
+ },
+ {
+ "name": "withdraw_events",
+ "type": "0x1::event::EventHandle<0x1::coin::WithdrawEvent>"
+ }
+ ]
+ },
+ {
+ "name": "DepositEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "amount",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "FreezeCapability",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "dummy_field",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "MintCapability",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "dummy_field",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "SupplyConfig",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "allow_upgrades",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "WithdrawEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "amount",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c010002020208030a2805322307557408c9012006e9010a10f30198010a8b030d0c98037e0d9604060f9c040200010002060000030700000400010000050203000006040500000704060000080708000009040300000a090500000b0906000205070301080002050301080101060800010301050206080006080101010106080100076163636f756e740467756964044755494402494406637265617465096372656174655f69640c6372656174696f6e5f6e756d0f63726561746f725f616464726573730565715f69640269640f69645f6372656174696f6e5f6e756d1269645f63726561746f725f616464726573730461646472000000000000000000000000000000000000000000000000000000000000000103080000000000000000126170746f733a3a6d657461646174615f763083010100000000000000001d45475549445f47454e455241544f525f4e4f545f5055424c49534845445b475549442067656e657261746f72206d757374206265207075626c6973686564206168656164206f66206669727374207573616765206f6620606372656174655f776974685f6361706162696c697479602066756e6374696f6e2e00020109080101020206030c0500030000050d0a01140c020a02060100000000000000160b01150b020b001201120002010100000a040b010b00120102020100000a050b00100010011402030100000a050b00100010021402040100000a050b0010000b012102050100000a040b0010001402060100000a040b0010011402070100000a040b0010021402000001000101000000",
+ "abi": {
+ "address": "0x1",
+ "name": "guid",
+ "friends": [
+ "0x1::account"
+ ],
+ "exposed_functions": [
+ {
+ "name": "create",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address",
+ "&mut u64"
+ ],
+ "return": [
+ "0x1::guid::GUID"
+ ]
+ },
+ {
+ "name": "create_id",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "0x1::guid::ID"
+ ]
+ },
+ {
+ "name": "creation_num",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::guid::GUID"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "creator_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::guid::GUID"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "eq_id",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::guid::GUID",
+ "&0x1::guid::ID"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "id",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::guid::GUID"
+ ],
+ "return": [
+ "0x1::guid::ID"
+ ]
+ },
+ {
+ "name": "id_creation_num",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::guid::ID"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "id_creator_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::guid::ID"
+ ],
+ "return": [
+ "address"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "GUID",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "id",
+ "type": "0x1::guid::ID"
+ }
+ ]
+ },
+ {
+ "name": "ID",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "creation_num",
+ "type": "u64"
+ },
+ {
+ "name": "addr",
+ "type": "address"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000601000203020a050c03070f170826200c4608000000010000000002000000010a02046861736808736861325f32353608736861335f3235360000000000000000000000000000000000000000000000000000000000000001000102000101020000",
+ "abi": {
+ "address": "0x1",
+ "name": "hash",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "sha2_256",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "sha3_256",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "vector"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000801000203020b040d02050f09071835084d200c6d0f0f7c04000200030001000004000201000101010a0201050109000004636f64650c6761735f7363686564756c65047574696c12616464726573735f66726f6d5f62797465730a66726f6d5f627974657300000000000000000000000000000000000000000000000000000000000000010001000003030b00380002010302000000000100",
+ "abi": {
+ "address": "0x1",
+ "name": "util",
+ "friends": [
+ "0x1::code",
+ "0x1::gas_schedule"
+ ],
+ "exposed_functions": [
+ {
+ "name": "address_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "from_bytes",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "T0"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d010014021418032c7d04a9010e05b7016e07a502a60608cb082006eb086210cd09c8020a950c2f0cc40cb0030df40f0e0f821002000100020003000400050006000700080009000a000b0800000c0600000d0600031004010601042307010000000e000100000f020100001103010000120104000013010400001405010000150501000824070100062508090002260404000427010a0100062808040004290b0a0100032a0d040106062b0e0100052c010400072d040100052e010400052f0101000930110100023104040003321201010608330701000134071301060a040c040d0c150c170c17141514080c050303050a030a020300010c03060c070b030108010801010302060c03040107080008010b04010301060c01050101010b0401090001090001080101060b03010900020b0401030a030207080005010203060c050302070b030109000900010b0301090001080202070800030767656e6573697305626c6f636b076163636f756e74056572726f72056576656e74066f7074696f6e0f7265636f6e66696775726174696f6e057374616b650d73746174655f73746f726167651073797374656d5f6164647265737365730974696d657374616d700d426c6f636b5265736f757263650d4e6577426c6f636b4576656e741855706461746545706f6368496e74657276616c4576656e740e626c6f636b5f70726f6c6f67756518656d69745f67656e657369735f626c6f636b5f6576656e740b4576656e7448616e646c6514656d69745f6e65775f626c6f636b5f6576656e74186765745f63757272656e745f626c6f636b5f686569676874176765745f65706f63685f696e74657276616c5f736563730a696e697469616c697a651f7570646174655f65706f63685f696e74657276616c5f6d6963726f73656373066865696768740e65706f63685f696e74657276616c106e65775f626c6f636b5f6576656e74731c7570646174655f65706f63685f696e74657276616c5f6576656e747304686173680565706f636805726f756e641b70726576696f75735f626c6f636b5f766f7465735f6269747665630870726f706f736572176661696c65645f70726f706f7365725f696e64696365731174696d655f6d6963726f7365636f6e6473126f6c645f65706f63685f696e74657276616c126e65775f65706f63685f696e74657276616c064f7074696f6e096173736572745f766d1a69735f63757272656e745f65706f63685f76616c696461746f72117065726d697373696f6e5f64656e696564046e6f6e65136765745f76616c696461746f725f696e64657804736f6d6507636f756e7465721d7570646174655f706572666f726d616e63655f737461746973746963730d63757272656e745f65706f63680c6f6e5f6e65775f626c6f636b196c6173745f7265636f6e66696775726174696f6e5f74696d650b7265636f6e666967757265127570646174655f676c6f62616c5f74696d6510696e76616c69645f617267756d656e740a656d69745f6576656e74166173736572745f6170746f735f6672616d65776f726b106e65775f6576656e745f68616e646c6500000000000000000000000000000000000000000000000000000000000000010308020000000000000003080100000000000000030803000000000000000520000000000000000000000000000000000000000000000000000000000000000005200000000000000000000000000000000000000000000000000000000000000001126170746f733a3a6d657461646174615f7630b30203010000000000000031454e554d5f4e45575f424c4f434b5f4556454e54535f444f45535f4e4f545f4d415443485f424c4f434b5f48454947485447546865206e756d626572206f66206e657720626c6f636b206576656e747320646f6573206e6f7420657175616c207468652063757272656e7420626c6f636b206865696768742e02000000000000001145494e56414c49445f50524f504f5345525c416e20696e76616c69642070726f706f736572207761732070726f76696465642e204578706563746564207468652070726f706f73657220746f2062652074686520564d206f7220616e206163746976652076616c696461746f722e030000000000000014455a45524f5f45504f43485f494e54455256414c1b45706f636820696e74657276616c2063616e6e6f7420626520302e00020416031703180b03010801190b030108020102081a051b031c0316031d0a021e051f0a03200302020221032203000000010006470e0011070a040703210307050a080c08050d0a0411080c080b080312070011092738000c0b0a040703220319051d0a04110b38010c0b07042a000c090a09100038020a090f01150b010b020b030a091001140b060b040a050a0712010c0a0e000a090f000b0a11020b0b0b05110e110f11100b071111170b09100214260345054611120201000001000f1107042a000c010e000b010f0007030600000000000000000600000000000000000600000000000000004010000000000000000007034004000000000000000006000000000000000012011102020200000001190b000e021003140e0210041411130a012e38020e021005142103150b010107011114270b010b023803020301000100010507042b00100114020401000100010707042b001002140640420f00000000001a020503000001150a0011160a0106000000000000000024030b0b000107021114270a000600000000000000000b010a0038040b00380512002d00020601000100151b0b0011160a01060000000000000000240309070211142707042a000c020a021002140c030a010a020f02150b020f060b030b0112023806020002000000010105010701030003000000",
+ "abi": {
+ "address": "0x1",
+ "name": "block",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "get_current_block_height",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_epoch_interval_secs",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "update_epoch_interval_microsecs",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "BlockResource",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "height",
+ "type": "u64"
+ },
+ {
+ "name": "epoch_interval",
+ "type": "u64"
+ },
+ {
+ "name": "new_block_events",
+ "type": "0x1::event::EventHandle<0x1::block::NewBlockEvent>"
+ },
+ {
+ "name": "update_epoch_interval_events",
+ "type": "0x1::event::EventHandle<0x1::block::UpdateEpochIntervalEvent>"
+ }
+ ]
+ },
+ {
+ "name": "NewBlockEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "hash",
+ "type": "address"
+ },
+ {
+ "name": "epoch",
+ "type": "u64"
+ },
+ {
+ "name": "round",
+ "type": "u64"
+ },
+ {
+ "name": "height",
+ "type": "u64"
+ },
+ {
+ "name": "previous_block_votes_bitvec",
+ "type": "vector"
+ },
+ {
+ "name": "proposer",
+ "type": "address"
+ },
+ {
+ "name": "failed_proposer_indices",
+ "type": "vector"
+ },
+ {
+ "name": "time_microseconds",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "UpdateEpochIntervalEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "old_epoch_interval",
+ "type": "u64"
+ },
+ {
+ "name": "new_epoch_interval",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000601000203020b050d0507121e0830200c5008000000010001010000020101000106090000056465627567057072696e74117072696e745f737461636b5f74726163650000000000000000000000000000000000000000000000000000000000000001000102000101020000",
+ "abi": {
+ "address": "0x1",
+ "name": "debug",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "print",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&T0"
+ ],
+ "return": []
+ },
+ {
+ "name": "print_stack_trace",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": []
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b05000000070100020302410543060749b7010880022006a00282010ca203ab010000000100000000020000000003010000000400000000050000000006000000000700000000080000000009000000000a000000000b000000000c000000000d000000010302030300056572726f720761626f727465640e616c72656164795f6578697374730963616e6f6e6963616c08696e7465726e616c10696e76616c69645f617267756d656e740d696e76616c69645f7374617465096e6f745f666f756e640f6e6f745f696d706c656d656e7465640c6f75745f6f665f72616e6765117065726d697373696f6e5f64656e696564127265736f757263655f6578686175737465640f756e61757468656e746963617465640b756e617661696c61626c650000000000000000000000000000000000000000000000000000000000000001030807000000000000000308080000000000000003080a0000000000000003080b0000000000000003080100000000000000030803000000000000000308060000000000000003080c000000000000000308020000000000000003080500000000000000030809000000000000000308040000000000000003080d0000000000000000010000020407000b0011020201010000020407010b001102020201000002060b0031102f0b01160203010000020407030b0011020204010000020407040b0011020205010000020407050b0011020206010000020407060b0011020207010000020407070b0011020208010000020407080b0011020209010000020407090b001102020a0100000204070a0b001102020b0100000204070b0b001102020c0100000204070c0b0011020200",
+ "abi": {
+ "address": "0x1",
+ "name": "error",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "aborted",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "already_exists",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "canonical",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "internal",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "invalid_argument",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "invalid_state",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "not_found",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "not_implemented",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "out_of_range",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "permission_denied",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "resource_exhausted",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "unauthenticated",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "unavailable",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d01000602060a03102a043a04053e30076e7908e701200a8702080b8f02020c9102660df702040efb02040fff020200010002000300040401060102080600000500010106000602030106000704030106000300050106000906020106000a07030106010b090a01000606050801060b000109000103010b000109000002070b00010900090001060801010801030a0203090001090001060900010a02076163636f756e74056576656e740362637304677569640b4576656e7448616e646c6507636f756e7465720e64657374726f795f68616e646c650a656d69745f6576656e740447554944106e65775f6576656e745f68616e646c651477726974655f746f5f6576656e745f73746f726508746f5f62797465730000000000000000000000000000000000000000000000000000000000000001000202050303080100080001000003040b00370014020101000003050b003a000101020201000003110a00370138000a003700140b0138010a00370014060100000000000000160b00360015020301000003030b003701020403000003040600000000000000000b00390002050002000000000100080108000000",
+ "abi": {
+ "address": "0x1",
+ "name": "event",
+ "friends": [
+ "0x1::account"
+ ],
+ "exposed_functions": [
+ {
+ "name": "counter",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::event::EventHandle"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "destroy_handle",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "0x1::event::EventHandle"
+ ],
+ "return": []
+ },
+ {
+ "name": "emit_event",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&mut 0x1::event::EventHandle",
+ "T0"
+ ],
+ "return": []
+ },
+ {
+ "name": "guid",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::event::EventHandle"
+ ],
+ "return": [
+ "&0x1::guid::GUID"
+ ]
+ },
+ {
+ "name": "new_event_handle",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "0x1::guid::GUID"
+ ],
+ "return": [
+ "0x1::event::EventHandle"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "EventHandle",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "fields": [
+ {
+ "name": "counter",
+ "type": "u64"
+ },
+ {
+ "name": "guid",
+ "type": "0x1::guid::GUID"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d01001a021a7a039401b80304cc0450059c058f0607ab0b9e1708c9222006e922ea0110d3249c0b0aef2fa0020c8f32821e0d9150440fd550060003000400050006000700080009000a000b000c000d000e000f0010060000110800001206000013060000140600001506000016060000170c000018060000190600001a0600001b0600001c0800001d0600001e0600001f0f000020070000210800002208000023060004250401000102260800072f0701000004500501000109560b00067004010601039f01070003a0010700002400010000270201000028030101000029040100002a050600002b070100002c080100002d090600002e0a080000300b0c0000310d0e000032060f000033040600003404040000350406000036100600003704040000381104000039040600003a041200003b041300003c040600003d040600003e0a0100003f11010000400a010000410a010000421401000043150100004404160000451701000046170100004717010000480101000049000100004a180100004b190100004c170100004d1a0100004e170100004f1a010000511b0100005200010000531c0100005419010000551d010000571e010000580601000059000100005a181f00088e010a0400045900220100048f01240601000590010606000791012516010004920126010100099301012700099401280f000695012a0101060c96012c1601000497012f2201000798012b300100079901013001000b9a01010600099b012806000a9c010a0100049d0101220100019e010a3b010603a10147480003a201494a0009a30128160007a4014f2b01000ca501502b010004a4015322010005a60106060009a701280f0004a8015b22010009a90128060004aa015e01010033213421360637213a293b2b3c213d063e063a374221433a433c4329433d433e433f433743404341434243434344364b3b453a404706480e3a44020e49213a3d3a3e3a3c3a423a3f4c213a414e213a4302060c0300020608070b1401081502070a0900070a09000105050303030303010302060c080701080705070b140108150303030301060c02060a081005010b160103030506080c080f0108100203030106080c010608070403030303030a020a020a0204060c03050505060c0a020a020a020a02010102060c05020608070304060c050a020a02020608070502060c0b170108150203060807020b1601030a030306081105060818010b140108150205060807010815010b140109000a0b1601030b16010301081803030507080c0708120301060b1401090001060b1601090002070b140109000b140109000108180106081801080002070b19010900090001090001060a0900030304040503060b170108150b1401081503030203060b17010900010b1601090002060804060a08040108040501030303030106080f070b1601030b1601030b160103030303060812040818030507080c01080307020a08100a08100a08100404060c150b140108150b190108000b190108080b1901080a0b1901080e0b190108030b190108050b190108020b1901080d0b190108130b190108060b14010815060c0b140108150b140108150305050b190108090b1901080b05010809010b1901090001080b01080801080a01080e01080501080201080d010813010806010203081a0a020b1601081b010a0201081a020a0206081a010b1601081b01081b0201030c0507080c080f070a08100818030307080c07080f07081203030708180b1601030b16010307080c08100708120401070b1601090002070a0900031e0708110507080c080f050608180708110506081808180303030303030308100a0810070810050307080c07080c06081006081007080f0307081107081203050b1401081507080c02070b140109000306081a0a020b1601081b0a0207080c07080f0107080c03050507080c030507080c0b14010815040a020a0207080c07080f0803030307080407080403030708110906080403030303030307080c06080f01070b140109000308180708120403050b1401081506080702050b1401090005010b140108150507080c0305626c6f636b0767656e657369730f7265636f6e66696775726174696f6e057374616b65076163636f756e740a6170746f735f636f696e08626c73313233383104636f696e056572726f72056576656e74066f7074696f6e067369676e65720e7374616b696e675f636f6e6669671073797374656d5f6164647265737365730974696d657374616d7006766563746f720d4164645374616b654576656e74154170746f73436f696e4361706162696c69746965731644697374726962757465526577617264734576656e7413496e6372656173654c6f636b75704576656e741e496e646976696475616c56616c696461746f72506572666f726d616e6365154a6f696e56616c696461746f725365744576656e74164c6561766556616c696461746f725365744576656e740f4f776e65724361706162696c69747914526561637469766174655374616b654576656e741f526567697374657256616c696461746f7243616e6469646174654576656e7417526f74617465436f6e73656e7375734b65794576656e74105365744f70657261746f724576656e74095374616b65506f6f6c10556e6c6f636b5374616b654576656e74265570646174654e6574776f726b416e6446756c6c6e6f64654164647265737365734576656e740f56616c696461746f72436f6e6669670d56616c696461746f72496e666f1456616c696461746f72506572666f726d616e63650c56616c696461746f725365741257697468647261775374616b654576656e74096164645f7374616b6504436f696e094170746f73436f696e126164645f7374616b655f776974685f63617006617070656e64186173736572745f7374616b655f706f6f6c5f6578697374731863616c63756c6174655f726577617264735f616d6f756e74116465706f7369745f6f776e65725f6361701164657374726f795f6f776e65725f63617012646973747269627574655f7265776172647311657874726163745f6f776e65725f636170064f7074696f6e0e66696e645f76616c696461746f721767656e65726174655f76616c696461746f725f696e666f216765745f63757272656e745f65706f63685f70726f706f73616c5f636f756e74731e6765745f63757272656e745f65706f63685f766f74696e675f706f776572136765745f64656c6567617465645f766f7465720f6765745f6c6f636b75705f736563731b6765745f6e6578745f65706f63685f766f74696e675f706f7765720c6765745f6f70657261746f72166765745f6f776e65645f706f6f6c5f61646472657373196765745f72656d61696e696e675f6c6f636b75705f73656373096765745f7374616b65146765745f76616c696461746f725f636f6e666967136765745f76616c696461746f725f696e646578136765745f76616c696461746f725f73746174650f696e6372656173655f6c6f636b757018696e6372656173655f6c6f636b75705f776974685f6361700a696e697469616c697a6510696e697469616c697a655f6f776e657216696e697469616c697a655f7374616b655f6f776e657214696e697469616c697a655f76616c696461746f721a69735f63757272656e745f65706f63685f76616c696461746f72126a6f696e5f76616c696461746f725f7365741b6a6f696e5f76616c696461746f725f7365745f696e7465726e616c136c656176655f76616c696461746f725f7365740c6f6e5f6e65775f65706f636810726561637469766174655f7374616b6519726561637469766174655f7374616b655f776974685f63617014726f746174655f636f6e73656e7375735f6b6579137365745f64656c6567617465645f766f7465721c7365745f64656c6567617465645f766f7465725f776974685f6361700c7365745f6f70657261746f72157365745f6f70657261746f725f776974685f6361700e4d696e744361706162696c6974791973746f72655f6170746f735f636f696e5f6d696e745f63617006756e6c6f636b0f756e6c6f636b5f776974685f636170257570646174655f6e6574776f726b5f616e645f66756c6c6e6f64655f6164647265737365731d7570646174655f706572666f726d616e63655f737461746973746963730d5374616b696e67436f6e666967117570646174655f7374616b655f706f6f6c1c7570646174655f766f74696e675f706f7765725f696e6372656173650877697468647261771177697468647261775f776974685f6361700c706f6f6c5f616464726573730c616d6f756e745f6164646564086d696e745f6361700e726577617264735f616d6f756e74156f6c645f6c6f636b65645f756e74696c5f73656373156e65775f6c6f636b65645f756e74696c5f73656373147375636365737366756c5f70726f706f73616c73106661696c65645f70726f706f73616c7306616d6f756e74146f6c645f636f6e73656e7375735f7075626b6579146e65775f636f6e73656e7375735f7075626b65790c6f6c645f6f70657261746f720c6e65775f6f70657261746f720661637469766508696e6163746976650e70656e64696e675f6163746976651070656e64696e675f696e616374697665116c6f636b65645f756e74696c5f73656373106f70657261746f725f616464726573730f64656c6567617465645f766f7465721b696e697469616c697a655f76616c696461746f725f6576656e74730b4576656e7448616e646c65137365745f6f70657261746f725f6576656e7473106164645f7374616b655f6576656e747317726561637469766174655f7374616b655f6576656e74731b726f746174655f636f6e73656e7375735f6b65795f6576656e74732c7570646174655f6e6574776f726b5f616e645f66756c6c6e6f64655f6164647265737365735f6576656e747316696e6372656173655f6c6f636b75705f6576656e7473196a6f696e5f76616c696461746f725f7365745f6576656e747319646973747269627574655f726577617264735f6576656e747313756e6c6f636b5f7374616b655f6576656e74731577697468647261775f7374616b655f6576656e74731a6c656176655f76616c696461746f725f7365745f6576656e74730f616d6f756e745f756e6c6f636b6564156f6c645f6e6574776f726b5f616464726573736573156e65775f6e6574776f726b5f616464726573736573166f6c645f66756c6c6e6f64655f616464726573736573166e65775f66756c6c6e6f64655f61646472657373657310636f6e73656e7375735f7075626b6579116e6574776f726b5f6164647265737365731266756c6c6e6f64655f6164647265737365730f76616c696461746f725f696e64657804616464720c766f74696e675f706f77657206636f6e6669670a76616c696461746f727310636f6e73656e7375735f736368656d65116163746976655f76616c696461746f727312746f74616c5f766f74696e675f706f77657213746f74616c5f6a6f696e696e675f706f77657210616d6f756e745f77697468647261776e0a616464726573735f6f660576616c756510696e76616c69645f617267756d656e740769735f736f6d65056d6572676503676574126765745f72657175697265645f7374616b650a656d69745f6576656e740869735f656d707479046d696e7404736f6d65046e6f6e650b6e6f775f7365636f6e64731d6765745f726563757272696e675f6c6f636b75705f6475726174696f6e166173736572745f6170746f735f6672616d65776f726b047a65726f106e65775f6576656e745f68616e646c651150726f6f664f66506f7373657373696f6e105075626c69634b657957697468506f501e70726f6f665f6f665f706f7373657373696f6e5f66726f6d5f62797465731e7075626c69635f6b65795f66726f6d5f62797465735f776974685f706f701e6765745f616c6c6f775f76616c696461746f725f7365745f6368616e676507657874726163740b737761705f72656d6f7665096e6f745f666f756e640f6765745f7265776172645f726174650b657874726163745f616c6c1f6765745f766f74696e675f706f7765725f696e6372656173655f6c696d6974076465706f73697400000000000000000000000000000000000000000000000000000000000000010308060000000000000003080a0000000000000003080f00000000000000030810000000000000000308080000000000000003080d000000000000000308010000000000000003080c000000000000000308070000000000000003080b0000000000000003080e0000000000000003080900000000000000030814000000000000000308050000000000000003080400000000000000030803000000000000000308120000000000000003081300000000000000030802000000000000000308000001000000000005200000000000000000000000000000000000000000000000000000000000000001126170746f733a3a6d657461646174615f7630870b13010000000000000014454c4f434b5f54494d455f544f4f5f53484f5254274c6f636b757020706572696f642069732073686f72746572207468616e2072657175697265642e0200000000000000154557495448445241575f4e4f545f414c4c4f574544305769746864726177206e6f7420616c6c6f7765642c20746865207374616b65206973207374696c6c206c6f636b65642e0300000000000000114556414c494441544f525f434f4e4649471f56616c696461746f7220436f6e666967206e6f74207075626c69736865642e04000000000000000e455354414b455f544f4f5f4c4f57274e6f7420656e6f756768207374616b6520746f206a6f696e2076616c696461746f72207365742e05000000000000000f455354414b455f544f4f5f4849474825546f6f206d756368207374616b6520746f206a6f696e2076616c696461746f72207365742e06000000000000001945414c52454144595f4143544956455f56414c494441544f52344163636f756e7420697320616c726561647920612076616c696461746f72206f722070656e64696e672076616c696461746f722e07000000000000000e454e4f545f56414c494441544f521b4163636f756e74206973206e6f7420612076616c696461746f722e08000000000000000f454c4153545f56414c494441544f521c43616e27742072656d6f7665206c6173742076616c696461746f722e090000000000000012455354414b455f455843454544535f4d415824546f74616c207374616b652065786365656473206d6178696d756d20616c6c6f7765642e0a000000000000001345414c52454144595f52454749535445524544374163636f756e7420697320616c7265616479207265676973746572656420617320612076616c696461746f722063616e6469646174652e0b0000000000000015454e4f5f434f494e535f544f5f57495448445241573b4e6f20636f696e7320696e20696e61637469766520737461746520746f2077697468647261772066726f6d2073706563696669656420706f6f6c2e0c000000000000000d454e4f545f4f50455241544f52344163636f756e7420646f6573206e6f74206861766520746865207269676874206f70657261746f72206361706162696c6974792e0d0000000000000013454c4f434b5f54494d455f544f4f5f4c4f4e47254c6f636b757020706572696f64206973206c6f6e676572207468616e20616c6c6f7765642e0e000000000000002d454e4f5f504f53545f47454e455349535f56414c494441544f525f5345545f4348414e47455f414c4c4f5745444256616c696461746f72732063616e6e6f74206a6f696e206f72206c6561766520706f73742067656e65736973206f6e20746869732074657374206e6574776f726b2e0f000000000000001345494e56414c49445f5055424c49435f4b45591c496e76616c696420636f6e73656e737573207075626c6963206b657910000000000000001545494e56414c49445f5354414b455f414d4f554e5422496e76616c6964207374616b6520616d6f756e74202875737561756c6c792030292e1200000000000000184556414c494441544f525f5345545f544f4f5f4c415247451f56616c696461746f7220736574206578636565647320746865206c696d697413000000000000002445564f54494e475f504f5745525f494e4352454153455f455843454544535f4c494d495444566f74696e6720706f77657220696e6372656173652068617320657863656564656420746865206c696d697420666f7220746869732063757272656e742065706f63682e14000000000000001a455354414b455f504f4f4c5f444f45535f4e4f545f4558495354375374616b6520706f6f6c20646f6573206e6f74206578697374206174207468652070726f766964656420706f6f6c20616464726573732e0002025b055c030102015d0b170108150202025b055e030302035b055f036003040202610362030502015b050602015b050702015b050802025b0563030902015b050a02035b05640a02650a020b02035b05660567050c0213680b14010815690b140108156a0b140108156b0b140108156c036d056e056f0b19010809710b1901080b720b19010800730b19010808740b1901080a750b1901080e760b19010803770b19010805780b19010802790b1901080d7a0b190108137b0b190108060d02025b057c030e02055b057d0a027e0a027f0a0280010a020f020481010a0282010a0283010a028401031002038501058601038701080f11020188010a08041202068901028a010a08106b0a08106a0a08108b01048c01041302025b058d010300010403070c12200c0a0011320c020b022b070c030b030b000b013800110102010100020c1223580b001000140c080a0811030e0138010c060a06060000000000000000240310070311352707142a120c0a0a0a10010a0811090c020e023802031c05210b0a01080c0405290b0a10020a0811090c030e0338020c040b04032c052e0a06112f0a082a0c0c090a08111d0335053a0a090f030b013803053e0a090f040b01380311380c050e0511390c07010a092e110f0c0b0b0b0b072503510b0901070b1135270b090f050b080b0612003804020200000001100a012e3805200306050b0a000a01452b442b05000b01010b0001020300000001070b00290c0306070c11352702040000002d1e0b00350b0335180b0135180c070b04350b0235180c060a063200000000000000000000000000000000240314051a0b070b061a340c05051c0600000000000000000c050b05020501000001040b000b012d07020601000001040b001307010207000001012e2a0a002e38010c090a0906000000000000000024030905110b090b010b020b030b0411040c0505130600000000000000000c050b050c080a0806000000000000000024031a052607142b0110060c060a080b0638060c070b000b07380305280b00010b0802080100010701040b0011322c0702090000000f210600000000000000000c020a00410e0c030a020a0323030a051d0a000a02420e1007140a0121031305180b00010b023807020b02060100000000000000160c0205050b00013808020a00000006080b01110f0c030b000b030b021210020b01000111310f07142b1110080c020b020b0042320c010a011009140b01100a14020c0100020c1233250a0011160c050a050712210308050b080c01050f0b05070f210c010b01031205210a002b0c100438010c030b002b0c100b38010c040b030b04160c0205230600000000000000000c020b02020d0100010c01050b002b0c100c14020e0100010c01050b002b0c100d14020f000000010c0a00100338010a0010043801160b00100b38011602100100010c01050b002b0c100e14021101000001040b0010001402120100010c0f130b002b0c100d140c020a02113f25030a050d0600000000000000000c0105110b02113f170c010b0102130100010c10100b002b0c0c010a01100438010a01100f38010a01100338010b01100b380102140100010f340d0b002b0f0c010a011010140a011011140b0110121402150100010f01050b002b0f101314021601000112353307142b120c070a0710020a0011090c010e013802030c05110b070107060c0605310a0710010a0011090c020e023802031a051f0b070107120c05052f0b0710140b0011090c030e0338020328052b070f0c04052d070e0c040b040c050b050c060b060217010402070c20090b0011320c010b012b070c020b02111802180100010c36200b001000140c030a03110311380c010a032a0c0c040a04100d140c02113f0e011140160a040f0d150a040f150b030b020b04100d1412033809021903000038180a0011410a000c07400e00000000000000000c02400e00000000000000000c03400e00000000000000000c040b0731000b020b040b033200000000000000000000000000000000320000000000000000000000000000000012122d120b004032000000000000000012112d11021a00000039590a0011320c150a15290c20030c0b000107011135270a000c0d380a0c01380a0c0c380a0c0e380a0c0f0a150c110a150c120a00380b0c130a00380c0c140a00380d0c020a00380e0c030a00380f0c040a0038100c050a0038110c060a0038120c070a0038130c080a0038140c090a0038150c0a0a0038160c0b0b0d0b010b0f0b0c0b0e0600000000000000000b110b120b130b140b020b030b040b050b060b070b080b090b0a0b0b120c2d0c0b000b1512072d07021b010403070c1204280a00111a0a00404500000000000000004045000000000000000040450000000000000000060000000000000000120f2d0f0a0106000000000000000024030e05110a000b0111000a0011320c040a040a02220319051c0a000b0211270b040a0322032105250b000b03112505270b0001021c010400461c0a010c060b0211440c050b060e0511450c070d072e381703120b000107021135270a00111a0b000b010b030b04060000000000000000120f2d0f021d010001124c110b0011160c020a020712210308050b080c01050f0b02070f210c010b01021e0104030c0f12270e11380c020e021146030a0b0001070a1135270b000b01111f021f0300030c0f124d770a0111030a012a0c0c090b0011320a09100e142103110b090107071135270a011116070e21031b0b0901070011352711380c060e0611390c070c080a092e110f0c0d0a0d0b0826032e0b0901070e1135270a0d0b072503370b0901070d1135270b0d112f0a012a0f0c0a0a0a101038182003480b0a010b0901070211352707142a120c0b0a0b1001410e0a0b1002410e160c0c0b0c07132503600b0b010b0a010b090107101135270b0b0f020c050a010a090b0a140c040c030c020b050b020b032e0b04110a440e0b090f160b011205381902200104020c124e7311380c020e021146030a0b0001070a1135270a0111030a012a0c0c050b0011320a05100e1421031b0b0501070711352707142a120c070a0710020a0111090c040e043802032705470a070f020d04381a381b010b052e110f350c080a071017140a0824033905420a071017140b08170b070f1715054632000000000000000000000000000000000b070f171505720a0710010a0111090c030e03380203560b07010b050107081135270a070f010d03381a381b0c060a071001410e0600000000000000002403690b07010b050107041135270b070f140b06440e0b050f180b011206381c0221030005010c0f111251d60107142a120c1d11380c0907142a110c1c0600000000000000000c0a0a1d1001410e0c0d0a0a0a0d230313052a0a1d10010a0a420e0c180a1c0b181007140e090c050c040c000b002e0b040b05112e0b0a060100000000000000160c0a050e0600000000000000000c0c0a1d1014410e0c0f0a0c0a0f230335054c0a1d10140a0c420e0c190a1c0b191007140e090c080c070c060b062e0b070b08112e0b0c060100000000000000160c0c05300a1d0f010a1d0f02381d400e00000000000000000a1d0f14150e091139010c100e0911400c150600000000000000000c0b0600000000000000000c1b0a1d1001410e0c0e400e00000000000000000c12403200000000000000000a1c0f081532000000000000000000000000000000000a1d0f191532000000000000000000000000000000000a1d0f17150a0b0a0e23037705cf010a1d0f010a0b430e0c130b131007140c140a142a0f0c1a0a1b0a1a0f13150a142a0c0c160a140b160b1a140c030c020c010b010b022e0b03110a0c110b0b060100000000000000160c0b0e11101a140a102303a20105a30105720b1b060100000000000000160c1b0a1d1019140e11101a1435160a1d0f19150d120b11440e0a1c0f08060000000000000000060000000000000000120444320b142a0c0c170a17100d14113f2503c50105cc01113f0a15160b170f0d1505ce010b170105720b1c010b120b1d0f01150222010402070c200a0b0011320c020b022b070c030b030b01112302230100010c52240b001000140c020a0211030a022a0c0c040a010a04100b38012503140b040107031135270a040f0b0a01381e0c030a040f040b0338030b040f1b0b020b011208381f02240104020c0f54400a0111030a012a0c0c080b0011320a08100e142103110b080107071135270a01290f03190b0801070f114a270a012a0f0c090a091010140c070a020c050b0311440c040b050e0411450c060d062e381703340b09010b080107021135270a020b090f10150b080f1c0b010b070b02120a38200225010402070c200a0b0011320c020b022b070c030b030b01112602260100010c550a0b001000142a0c0c020b010b020f0c150227010402070c200a0b0011320c020b022b070c030b030b01112802280100010c56170b001000140c030a032a0c0c040a04100e140c020a010a040f0e150b040f1d0b030b020b01120b3821022903000001070a0011410b000b0112012d01022a010402070c200a0b0011320c020b022b070c030b010b03112b022b0100010c57210a0006000000000000000021030505080b0101020b011000140c020a0211030a022a0c0c030a030f040a00381e0c040a030f0b0b0438030b030f1e0b020b00120d3822022c0104020c0f58360a0111030a012a0c0c060b0011320a06100e142103110b060107071135270a01290f03190b0601070f114a270a012a0f0c070a071011140c050a020a070f11150a071012140c040a030b070f12150b060f1f0b010b050b020b040b03120e3823022d03000111594907142a110c090a09100841320c080e003802030b05200d00381a0c020a020a0823031305200a090f080b0243320c050a05100914060100000000000000160b050f09150600000000000000000c030e0141060c040a030a0423032a05460e010a034206140c070a070a0823033405410a090f080b0743320c060a06100a14060100000000000000160b060f0a150b03060100000000000000160c0305250b0901022e000003010c0f5a4b0a012a0c0c0a0a012b0f0c0b0b0010080b0b10131442320c030a031009140c050a031009140b03100a14160c060b02114b0c090c080a0a0f040a050a060a080a0911070c070b070a0a0f0b0b050b060b080b091107160c070a0a0f040a0a0f03382438030a0a100d140c04113f0b0426033e05440a0a0f0f0a0a0f0b382438030b0a0f200b010b0712023825022f000001125c2c07142a120c0211380c010e01114d350c030a021017140b0035160a020f17150a02101914320000000000000000000000000000000024031905290a021017140b021019140b031832640000000000000000000000000000001a2503280711113527052b0b02010230010403070c125d0e0b0011320c020a022b070c040b040b0111310c030b020b03382602310100020c125f420b001000140c040a0411030a042a0c0c050a041116070e21030f0516113f0a05100d14260c020518090c020b02031b05230a050f0b38240c030a050f0f0b0338030a05100f38010c060a010a0624032c052e0b060c010a010600000000000000002403370b050107091135270a050f210b040a01121338270b050f0f0b01381e020700120112030c020c000c09010010001100040004010c030c060c040c050c010f000f010f020f0312020c0d0c0e12050c12120410010c0a0c0b0c080c100c0c0c0f0c1100000001000200",
+ "abi": {
+ "address": "0x1",
+ "name": "stake",
+ "friends": [
+ "0x1::block",
+ "0x1::genesis",
+ "0x1::reconfiguration"
+ ],
+ "exposed_functions": [
+ {
+ "name": "add_stake",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "add_stake_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability",
+ "0x1::coin::Coin<0x1::aptos_coin::AptosCoin>"
+ ],
+ "return": []
+ },
+ {
+ "name": "deposit_owner_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "0x1::stake::OwnerCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_owner_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "0x1::stake::OwnerCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "extract_owner_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": [
+ "0x1::stake::OwnerCapability"
+ ]
+ },
+ {
+ "name": "get_current_epoch_proposal_counts",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "u64",
+ "u64"
+ ]
+ },
+ {
+ "name": "get_current_epoch_voting_power",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_delegated_voter",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "get_lockup_secs",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_operator",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "get_owned_pool_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "get_remaining_lockup_secs",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_stake",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64",
+ "u64",
+ "u64",
+ "u64"
+ ]
+ },
+ {
+ "name": "get_validator_config",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "vector",
+ "vector",
+ "vector"
+ ]
+ },
+ {
+ "name": "get_validator_index",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_validator_state",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "increase_lockup",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "increase_lockup_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize_stake_owner",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64",
+ "address",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize_validator",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector",
+ "vector",
+ "vector",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "is_current_epoch_validator",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "join_validator_set",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "join_validator_set_internal",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "leave_validator_set",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "on_new_epoch",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": []
+ },
+ {
+ "name": "reactivate_stake",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "reactivate_stake_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "rotate_consensus_key",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address",
+ "vector",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "set_delegated_voter",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "set_delegated_voter_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "set_operator",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "set_operator_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "store_aptos_coin_mint_cap",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "0x1::coin::MintCapability<0x1::aptos_coin::AptosCoin>"
+ ],
+ "return": []
+ },
+ {
+ "name": "unlock",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "unlock_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64",
+ "&0x1::stake::OwnerCapability"
+ ],
+ "return": []
+ },
+ {
+ "name": "update_network_and_fullnode_addresses",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address",
+ "vector",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "update_performance_statistics",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "0x1::option::Option",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "withdraw",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "withdraw_with_cap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::stake::OwnerCapability",
+ "u64"
+ ],
+ "return": [
+ "0x1::coin::Coin<0x1::aptos_coin::AptosCoin>"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "AddStakeEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "amount_added",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "AptosCoinCapabilities",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "mint_cap",
+ "type": "0x1::coin::MintCapability<0x1::aptos_coin::AptosCoin>"
+ }
+ ]
+ },
+ {
+ "name": "DistributeRewardsEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "rewards_amount",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "IncreaseLockupEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "old_locked_until_secs",
+ "type": "u64"
+ },
+ {
+ "name": "new_locked_until_secs",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "IndividualValidatorPerformance",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "successful_proposals",
+ "type": "u64"
+ },
+ {
+ "name": "failed_proposals",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "JoinValidatorSetEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "LeaveValidatorSetEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "OwnerCapability",
+ "is_native": false,
+ "abilities": [
+ "store",
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "ReactivateStakeEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "amount",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "RegisterValidatorCandidateEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "RotateConsensusKeyEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "old_consensus_pubkey",
+ "type": "vector"
+ },
+ {
+ "name": "new_consensus_pubkey",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "SetOperatorEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "old_operator",
+ "type": "address"
+ },
+ {
+ "name": "new_operator",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "StakePool",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "active",
+ "type": "0x1::coin::Coin<0x1::aptos_coin::AptosCoin>"
+ },
+ {
+ "name": "inactive",
+ "type": "0x1::coin::Coin<0x1::aptos_coin::AptosCoin>"
+ },
+ {
+ "name": "pending_active",
+ "type": "0x1::coin::Coin<0x1::aptos_coin::AptosCoin>"
+ },
+ {
+ "name": "pending_inactive",
+ "type": "0x1::coin::Coin<0x1::aptos_coin::AptosCoin>"
+ },
+ {
+ "name": "locked_until_secs",
+ "type": "u64"
+ },
+ {
+ "name": "operator_address",
+ "type": "address"
+ },
+ {
+ "name": "delegated_voter",
+ "type": "address"
+ },
+ {
+ "name": "initialize_validator_events",
+ "type": "0x1::event::EventHandle<0x1::stake::RegisterValidatorCandidateEvent>"
+ },
+ {
+ "name": "set_operator_events",
+ "type": "0x1::event::EventHandle<0x1::stake::SetOperatorEvent>"
+ },
+ {
+ "name": "add_stake_events",
+ "type": "0x1::event::EventHandle<0x1::stake::AddStakeEvent>"
+ },
+ {
+ "name": "reactivate_stake_events",
+ "type": "0x1::event::EventHandle<0x1::stake::ReactivateStakeEvent>"
+ },
+ {
+ "name": "rotate_consensus_key_events",
+ "type": "0x1::event::EventHandle<0x1::stake::RotateConsensusKeyEvent>"
+ },
+ {
+ "name": "update_network_and_fullnode_addresses_events",
+ "type": "0x1::event::EventHandle<0x1::stake::UpdateNetworkAndFullnodeAddressesEvent>"
+ },
+ {
+ "name": "increase_lockup_events",
+ "type": "0x1::event::EventHandle<0x1::stake::IncreaseLockupEvent>"
+ },
+ {
+ "name": "join_validator_set_events",
+ "type": "0x1::event::EventHandle<0x1::stake::JoinValidatorSetEvent>"
+ },
+ {
+ "name": "distribute_rewards_events",
+ "type": "0x1::event::EventHandle<0x1::stake::DistributeRewardsEvent>"
+ },
+ {
+ "name": "unlock_stake_events",
+ "type": "0x1::event::EventHandle<0x1::stake::UnlockStakeEvent>"
+ },
+ {
+ "name": "withdraw_stake_events",
+ "type": "0x1::event::EventHandle<0x1::stake::WithdrawStakeEvent>"
+ },
+ {
+ "name": "leave_validator_set_events",
+ "type": "0x1::event::EventHandle<0x1::stake::LeaveValidatorSetEvent>"
+ }
+ ]
+ },
+ {
+ "name": "UnlockStakeEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "amount_unlocked",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "UpdateNetworkAndFullnodeAddressesEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "old_network_addresses",
+ "type": "vector"
+ },
+ {
+ "name": "new_network_addresses",
+ "type": "vector"
+ },
+ {
+ "name": "old_fullnode_addresses",
+ "type": "vector"
+ },
+ {
+ "name": "new_fullnode_addresses",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "ValidatorConfig",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store",
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "consensus_pubkey",
+ "type": "vector"
+ },
+ {
+ "name": "network_addresses",
+ "type": "vector"
+ },
+ {
+ "name": "fullnode_addresses",
+ "type": "vector"
+ },
+ {
+ "name": "validator_index",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "ValidatorInfo",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "addr",
+ "type": "address"
+ },
+ {
+ "name": "voting_power",
+ "type": "u64"
+ },
+ {
+ "name": "config",
+ "type": "0x1::stake::ValidatorConfig"
+ }
+ ]
+ },
+ {
+ "name": "ValidatorPerformance",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "validators",
+ "type": "vector<0x1::stake::IndividualValidatorPerformance>"
+ }
+ ]
+ },
+ {
+ "name": "ValidatorSet",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "consensus_scheme",
+ "type": "u8"
+ },
+ {
+ "name": "active_validators",
+ "type": "vector<0x1::stake::ValidatorInfo>"
+ },
+ {
+ "name": "pending_inactive",
+ "type": "vector<0x1::stake::ValidatorInfo>"
+ },
+ {
+ "name": "pending_active",
+ "type": "vector<0x1::stake::ValidatorInfo>"
+ },
+ {
+ "name": "total_voting_power",
+ "type": "u128"
+ },
+ {
+ "name": "total_joining_power",
+ "type": "u128"
+ }
+ ]
+ },
+ {
+ "name": "WithdrawStakeEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "pool_address",
+ "type": "address"
+ },
+ {
+ "name": "amount_withdrawn",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d01000202020e03107e048e011605a401850107a902ee01089704200ab7040b0bc204040cc604e4010daa06020eac06020fae0602000100020e0100000003040203010001000400010203000005020103030000000603040203000007030503030000000806070303000000090608020300000a0008020302000b0309020300000c030903030000000d0a01020300000e0b0103030000000f0a01030300000010010a0203040011010c0200000012060d0203000013060e0303000000140001020302010f030f040f071000100510080f0a0f0b0f0d100f0f03070b010209000901090009010003070b01020900090109000b0001090102060b01020900090109000106090101060b0001090102070b010209000901090001070b00010901010709010101010b01020900090101060b0102090009010105010901010b0001090103090009010b00010901020900090103070b0102090009010900070901117461626c655f776974685f6c656e677468057461626c6503426f78055461626c6503616464076164645f626f7806626f72726f770a626f72726f775f626f780e626f72726f775f626f785f6d75740a626f72726f775f6d757417626f72726f775f6d75745f776974685f64656661756c7408636f6e7461696e730c636f6e7461696e735f626f780764657374726f791164657374726f795f656d7074795f626f781264726f705f756e636865636b65645f626f78036e6577106e65775f7461626c655f68616e646c650672656d6f76650a72656d6f76655f626f78067570736572740376616c0668616e646c6500000000000000000000000000000000000000000000000000000000000000010002011509000102011605000d01100001000001060b000b010b023900380002010002000201000001050b000b01380137000203000200040002000501000001050b000b0138023600020601000006130a000a010c040c030b032e0b04380320030b050f0a000a010b0238040b000b013805020701000001040b000b01380602080002000903000001050e0038070b003808020a0002000b0002000c010000010338093901020d0002000e0100000d070b000b01380a3a000c020b02020f0002001001000011180a000a010c040c030b032e0b04380320030b05100b000a010b02380405170b000b0138050c050b020b0515020000000d000000",
+ "abi": {
+ "address": "0x1",
+ "name": "table",
+ "friends": [
+ "0x1::table_with_length"
+ ],
+ "exposed_functions": [
+ {
+ "name": "add",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::table::Table",
+ "T0",
+ "T1"
+ ],
+ "return": []
+ },
+ {
+ "name": "borrow",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::table::Table",
+ "T0"
+ ],
+ "return": [
+ "&T1"
+ ]
+ },
+ {
+ "name": "borrow_mut",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::table::Table",
+ "T0"
+ ],
+ "return": [
+ "&mut T1"
+ ]
+ },
+ {
+ "name": "borrow_mut_with_default",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": [
+ "drop"
+ ]
+ }
+ ],
+ "params": [
+ "&mut 0x1::table::Table",
+ "T0",
+ "T1"
+ ],
+ "return": [
+ "&mut T1"
+ ]
+ },
+ {
+ "name": "contains",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::table::Table",
+ "T0"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "destroy",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::table::Table"
+ ],
+ "return": []
+ },
+ {
+ "name": "new",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::table::Table"
+ ]
+ },
+ {
+ "name": "remove",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::table::Table",
+ "T0"
+ ],
+ "return": [
+ "T1"
+ ]
+ },
+ {
+ "name": "upsert",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": [
+ "drop"
+ ]
+ }
+ ],
+ "params": [
+ "&mut 0x1::table::Table",
+ "T0",
+ "T1"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "Box",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store",
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "val",
+ "type": "T0"
+ }
+ ]
+ },
+ {
+ "name": "Table",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "handle",
+ "type": "address"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000e010004020406030a780482010e0590018701079702db0108f203200692041410a604ad020ad306070bda06020cdc0682040dde0a020ee00a0200000001000207010000000300010100000402030100000504010100000604050100000706070100000806080100000909080102000a02080100000b0a070100000c0b080103000d00050100000e00050100000f0706010000100806010000110a08010000120a0601000013060c010001150e05010001060f0501000116080c01000b08110812080a0813080c080d0801060b000109000106090001070b000109000107090002060b000109000609000101010b0001090000010900020b00010900090002070b00010900090002060b000109000900010a090002060900060a090001060a090002060a09000609000209000a090001070a0900020900060a0900020900070a0900030b000109000b00010900070a0900066f7074696f6e06766563746f72064f7074696f6e06626f72726f770a626f72726f775f6d757413626f72726f775f776974685f64656661756c7408636f6e7461696e730c64657374726f795f6e6f6e650c64657374726f795f736f6d651464657374726f795f776974685f64656661756c7407657874726163740466696c6c106765745f776974685f64656661756c740769735f6e6f6e650769735f736f6d65046e6f6e6504736f6d6504737761700c737761705f6f725f66696c6c06746f5f766563037665630869735f656d7074790973696e676c65746f6e00000000000000000000000000000000000000000000000000000000000000010308000004000000000003080100040000000000126170746f733a3a6d657461646174615f763098020200000400000000000e454f5054494f4e5f49535f5345547354686520604f7074696f6e6020697320696e20616e20696e76616c696420737461746520666f7220746865206f7065726174696f6e20617474656d707465642e0a2054686520604f7074696f6e602069732060536f6d6560207768696c652069742073686f756c6420626520604e6f6e65602e01000400000000000f454f5054494f4e5f4e4f545f5345547354686520604f7074696f6e6020697320696e20616e20696e76616c696420737461746520666f7220746865206f7065726174696f6e20617474656d707465642e0a2054686520604f7074696f6e6020697320604e6f6e6560207768696c652069742073686f756c642062652060536f6d65602e000201140a0900000800010000070c0a00380003070b00010701270b00370006000000000000000042080201010000070d0a002e380003080b00010701270b003600060000000000000000430802020100000d140b0037000c030a0338010307050c0b03010b010c0205120b01010b0306000000000000000042080c020b02020301000007050b0037000b01380202040100000c0b0e00380303050700270b003a000c010b01460800000000000000000205010000100f0e00380003050701270b003a000c020d0245080c010b02460800000000000000000b01020601000010100b003a000c030d032e38010308050b0b010c02050e0d0345080c020b020207010000070c0a002e380003080b00010701270b00360045080208010000110f0b0036000c020a022e3801030b0b02010700270b020b014408020901000012130b0037000c030a0338010307050c0b03010b010c0205110b030600000000000000004208140c020b02020a01000007040b0037003801020b01000007050b003700380120020c0100000703400800000000000000003900020d01000007040b0038043900020e01000013130a002e380003080b00010701270b0036000c030a0345080c020b030b0144080b02020f01000014160b0036000c040a042e38010308050b38050c02050f0a04450838060c020b020c030b040b0144080b0302100100000c050b003a000c010b01020000000800",
+ "abi": {
+ "address": "0x1",
+ "name": "option",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "borrow",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::option::Option"
+ ],
+ "return": [
+ "&T0"
+ ]
+ },
+ {
+ "name": "borrow_mut",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::option::Option"
+ ],
+ "return": [
+ "&mut T0"
+ ]
+ },
+ {
+ "name": "borrow_with_default",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::option::Option",
+ "&T0"
+ ],
+ "return": [
+ "&T0"
+ ]
+ },
+ {
+ "name": "contains",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::option::Option",
+ "&T0"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "destroy_none",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::option::Option"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_some",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::option::Option"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "destroy_with_default",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop"
+ ]
+ }
+ ],
+ "params": [
+ "0x1::option::Option",
+ "T0"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "extract",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::option::Option"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "fill",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::option::Option",
+ "T0"
+ ],
+ "return": []
+ },
+ {
+ "name": "get_with_default",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::option::Option",
+ "T0"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "is_none",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::option::Option"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_some",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&0x1::option::Option"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "none",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::option::Option"
+ ]
+ },
+ {
+ "name": "some",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "T0"
+ ],
+ "return": [
+ "0x1::option::Option"
+ ]
+ },
+ {
+ "name": "swap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::option::Option",
+ "T0"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "swap_or_fill",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut 0x1::option::Option",
+ "T0"
+ ],
+ "return": [
+ "0x1::option::Option"
+ ]
+ },
+ {
+ "name": "to_vec",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::option::Option"
+ ],
+ "return": [
+ "vector"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Option",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "vec",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000601000203020a050c090715210836200c561000000001000100000200020001060c010501060500067369676e65720a616464726573735f6f660e626f72726f775f6164647265737300000000000000000000000000000000000000000000000000000000000000010001000003040b00110114020101020000",
+ "abi": {
+ "address": "0x1",
+ "name": "signer",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "address_of",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "borrow_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": [
+ "&address"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000602060a03105e046e0805767f07f501d30108c8032006e8031410fc03700aec04060cf204f7020de9070200000001000200030700011007010000000400010000050201000006030400000705060000080701000009040800000a090600000b0a0800000c0b0c00000d030800000e030600000f0d0e0000110c0f0000120c0e00020411010100020d130801000113151601000114011601000e100f10100e110e02070800080000020708000a020106080001060a0202060800060800010303070800030800010102060a02060a0202060a020303060a020303010a02030608000303010800010b01010800010202070a09000a09000b0107080003030708000303060a02080008000301060a090005010101060a0203010900010b0101090006737472696e67066f7074696f6e06766563746f7206537472696e6706617070656e640b617070656e645f7574663805627974657308696e6465785f6f6606696e7365727413696e7465726e616c5f636865636b5f7574663811696e7465726e616c5f696e6465785f6f6619696e7465726e616c5f69735f636861725f626f756e6461727913696e7465726e616c5f7375625f737472696e670869735f656d707479066c656e6774680a7375625f737472696e67064f7074696f6e087472795f75746638047574663804736f6d65046e6f6e6500000000000000000000000000000000000000000000000000000000000000010308020000000000000003080100000000000000126170746f733a3a6d657461646174615f76305c0201000000000000000d45494e56414c49445f5554463819416e20696e76616c6964205554463820656e636f64696e672e02000000000000000e45494e56414c49445f494e44455813496e646578206f7574206f662072616e67652e000201060a020001000001070b000f000e011000143800020101000001050b000b01110d1100020201000001030b001000020301000001060b0010000b01100011060204010000123c0a0010000c0a0a010a0a4110250309050e0b0a0a0111070c0305120b0a01090c030b0303180b00010700270a002e110a0c0d0a000a010c060c040b042e0600000000000000000b06110b0c0c0a000b010b0d0c090c080c070b072e0b080b09110b0c0b0d0c0b0211000d0c0b0b11000b0c0b001502050102000600020007000200080002000901000001040b0010003801020a01000001040b0010004110020b01000014320b0010000c060a0641100c070a020b0725030b05100a010a02250c030512090c030b030315051a0a060a0111070c04051c090c040b04031f05240a060a0211070c050526090c050b05032c0b06010700270b060b010b0211081200020c0100000f0d0e001105030405090b00120038020c01050b38030c010b01020d01000001080e00110503050701270b00120002000000",
+ "abi": {
+ "address": "0x1",
+ "name": "string",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "append",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::string::String",
+ "0x1::string::String"
+ ],
+ "return": []
+ },
+ {
+ "name": "append_utf8",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::string::String",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::string::String"
+ ],
+ "return": [
+ "&vector"
+ ]
+ },
+ {
+ "name": "index_of",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::string::String",
+ "&0x1::string::String"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "insert",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::string::String",
+ "u64",
+ "0x1::string::String"
+ ],
+ "return": []
+ },
+ {
+ "name": "internal_check_utf8",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::string::String"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "length",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::string::String"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "sub_string",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::string::String",
+ "u64",
+ "u64"
+ ],
+ "return": [
+ "0x1::string::String"
+ ]
+ },
+ {
+ "name": "try_utf8",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::string::String>"
+ ]
+ },
+ {
+ "name": "utf8",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::string::String"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "String",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000901000203026004620405665907bf01930108d2022006f2020a10fc025d0cd9039904000000010001010000020203010000030405010000040607010000050801010000060108010000070609010000080a07010000090a0b0100000a0c0d0100000b0e010100000c040d0100000d0c010100000e0d080100000f0f0101000010040d01000c0d070d02070a09000a09000002060a0900030106090002070a0900030107090002060a09000609000101010a090002010301060a0900010301070a090001090002070a0900090003070a090003030203030303070a0900030303030306766563746f7206617070656e6406626f72726f770a626f72726f775f6d757408636f6e7461696e730d64657374726f795f656d70747905656d70747908696e6465785f6f660869735f656d707479066c656e67746808706f705f6261636b09707573685f6261636b0672656d6f766507726576657273650973696e676c65746f6e04737761700b737761705f72656d6f7665000000000000000000000000000000000000000000000000000000000000000103080000020000000000126170746f733a3a6d657461646174615f7630490100000200000000001445494e4445585f4f55545f4f465f424f554e44532a54686520696e64657820696e746f2074686520766563746f72206973206f7574206f6620626f756e64730001000001110d0138000e013801200307050c0a000d01450d440d05020b00010b01460d00000000000000000201010200020102000301000010220600000000000000000c020a00410d0c030a020a0323030a051c0a000a02420d0a0121031105170b00010b010108020b02060100000000000000160c0205050b00010b0101090204010200050102000601000010240600000000000000000c020a00410d0c030a020a0323030a051d0a000a02420d0a0121031105180b00010b0101080b02020b02060100000000000000160c0205050b00010b010109060000000000000000020701000001050b00410d060000000000000000210208010200090102000a0102000b01000011260a002e410d0c040a010a04260309050d0b00010700270b04060100000000000000170c040a010a0423031605230a000c030a010c020b01060100000000000000160c010b030b020a01470d05110b00450d020c01000012270a002e410d0c030a03060000000000000000210309050c0b0001020600000000000000000c020b03060100000000000000170c010a020a0123031705240a000a020a01470d0b02060100000000000000160c020b01060100000000000000170c0105120b0001020d0100000807400d00000000000000000c010d010b00440d0b01020e0102000f0100000b160a002e38012003090b00010700270a002e410d060100000000000000170c020a000b010b02470d0b00450d0200",
+ "abi": {
+ "address": "0x1",
+ "name": "vector",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "append",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "borrow",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&vector",
+ "u64"
+ ],
+ "return": [
+ "&T0"
+ ]
+ },
+ {
+ "name": "borrow_mut",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector",
+ "u64"
+ ],
+ "return": [
+ "&mut T0"
+ ]
+ },
+ {
+ "name": "contains",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&vector",
+ "&T0"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "destroy_empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "index_of",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&vector",
+ "&T0"
+ ],
+ "return": [
+ "bool",
+ "u64"
+ ]
+ },
+ {
+ "name": "is_empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "length",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&vector"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "pop_back",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "push_back",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector",
+ "T0"
+ ],
+ "return": []
+ },
+ {
+ "name": "remove",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector",
+ "u64"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "reverse",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "singleton",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "T0"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "swap",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector",
+ "u64",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "swap_remove",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&mut vector",
+ "u64"
+ ],
+ "return": [
+ "T0"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000e010018021844035c960104f20128059a02a80207c204920708d40b2006f40b3210a60cce030af40f89010bfd10040c811198060d9917200eb917180000000100020003000400050006000700080009000a000b000c0600000d04010400000e0600000f060000100600001104000012080104000414070100000615070200000000071607000b2e07000332040106010837040203010001001300010104001702030104001804050104001904030104001a04030104001b04010104001c04010104001d06070104001e04080104001f09070104043a0c010100043b0c0d0100023c030300093d070300043e08100100083f120702030003401407010608411617020300083b191a0203000842071d0203040143061e010605440622000b45072301000a460705000447250801000a0b0b0b0e080f111013111106081211000813111413141f142014211608101f040810201808102101060b01010900010108050509000a0204030b0701040b080208090a020103020503010a0201060c000109000506090005030301020104010401060b0701090001060900100504010303070b0c02030b01010900030b070109000a020b080208090a0204030b0701040403070b060109000102010b0701090002030b0101090003070b0c02090009010900090101080002070b0b010900090002070b01010900070b0601090002070b0c02090009010900010709010701030304060b01010900060b060109000402060b0c02090009010900010609010301070b01010900070b0601090004030b0c02030b0101090008050b06010900010b0c0209000901010b0b010900010802010803010804010501080a04070b010109000301070b0601090001070b0701090006766f74696e67076163636f756e74056572726f72056576656e74066f7074696f6e067369676e65720a73696d706c655f6d617006737472696e67057461626c650974696d657374616d70137472616e73616374696f6e5f636f6e7465787409747970655f696e666f1343726561746550726f706f73616c4576656e740850726f706f73616c125265676973746572466f72756d4576656e740f5265736f6c766550726f706f73616c09566f74654576656e740c566f74696e674576656e74730b566f74696e67466f72756d1563616e5f62655f7265736f6c7665645f6561726c79064f7074696f6e0953696d706c654d617006537472696e670f6372656174655f70726f706f73616c126765745f657865637574696f6e5f686173681c6765745f70726f706f73616c5f65787069726174696f6e5f73656373126765745f70726f706f73616c5f73746174650b69735f7265736f6c7665641069735f766f74696e675f636c6f736564087265676973746572077265736f6c766504766f74650b70726f706f73616c5f69641f6561726c795f7265736f6c7574696f6e5f766f74655f7468726573686f6c640e657865637574696f6e5f686173680f65787069726174696f6e5f73656373086d65746164617461126d696e5f766f74655f7468726573686f6c640870726f706f73657211657865637574696f6e5f636f6e74656e74126372656174696f6e5f74696d655f73656373097965735f766f746573086e6f5f766f746573147265736f6c7574696f6e5f74696d655f736563730f686f7374696e675f6163636f756e741270726f706f73616c5f747970655f696e666f0854797065496e666f0e7265736f6c7665645f6561726c79096e756d5f766f746573166372656174655f70726f706f73616c5f6576656e74730b4576656e7448616e646c651572656769737465725f666f72756d5f6576656e7473177265736f6c76655f70726f706f73616c5f6576656e74730b766f74655f6576656e74730970726f706f73616c73055461626c65066576656e7473106e6578745f70726f706f73616c5f69640769735f736f6d6506626f72726f7710696e76616c69645f617267756d656e740b6e6f775f7365636f6e647304736f6d65036164640a656d69745f6576656e740a626f72726f775f6d7574036e6577106e65775f6576656e745f68616e646c650a616464726573735f6f6607747970655f6f660f6765745f7363726970745f68617368076578747261637400000000000000000000000000000000000000000000000000000000000000010308030000000000000003080200000000000000030804000000000000000308010000000000000003080000000000000000126170746f733a3a6d657461646174615f7630b903040100000000000000254550524f504f53414c5f455845435554494f4e5f484153485f4e4f545f4d41544348494e474743757272656e7420736372697074277320657865637574696f6e206861736820646f6573206e6f74206d6174636820746865207370656369666965642070726f706f73616c277302000000000000001c4550524f504f53414c5f43414e4e4f545f42455f5245534f4c5645447050726f706f73616c2063616e6e6f74206265207265736f6c7665642e2045697468657220766f74696e67206475726174696f6e20686173206e6f74207061737365642c206e6f7420656e6f75676820766f7465732c206f7220666577657220796573207468616e206e6f20766f74657303000000000000001a4550524f504f53414c5f414c52454144595f5245534f4c5645442a50726f706f73616c2063616e6e6f74206265207265736f6c766564206d6f7265207468616e206f6e636504000000000000001e4550524f504f53414c5f454d5054595f455845435554494f4e5f484153483650726f706f73616c2063616e6e6f7420636f6e7461696e20616e20656d70747920657865637574696f6e2073637269707420686173680002062003210b070104220a022303240b080208090a02250401020c2605270b07010900240b080208090a022803220a0225042303210b07010429042a041b012b030202022c052d080a030204200329042a042f0104020220033003050204310b0b010800330b0b010802340b0b010803350b0b010804060203360b0c02030b01010900380805390306080108000100000a260a0037003800030505220a0037003801140c020a003701140a0226031105160b0001080c01051c0b003702140b02260c010b01031f0521080205240b0001090201010001060e4a0e03410f0600000000000000002403080702110c270b013c000c170a173703140c160a17370314060100000000000000160a173603150a1736040c0d0a160c0c0b000c08110d0c0e0b0238020c0f0a030c100a070c110a040c120a050c130a060c140b0d0b0c0b080b0f0b110b0e0b100b120b130b143200000000000000000000000000000000320000000000000000000000000000000009060000000000000000390138030b1736050f060a160b060b030b050b070b04120038040b16020201000106150c0b003c000c030b0336040b0138050c020b02370614020301000106150c0b003c000c030b0336040b0138050c020b0237071402040100010618360a000a013806030505320b003d000c070b0737040b0138070c060a063701140c080a063702140c050a080a0524031a05230b080b05160b06370814260c0205270b0601090c020b02032a052d07030c03052f07000c030b030c04053407040c040b04020501000106150c0b003c000c030b0336040b0138050c020b023709140206010001061b1a0b003c000c040b0436040b0138050c030a032e3808030d05120b0301080c020518110d0b03370714260c020b0202070100001c1d38090c020a00380a0a00380b0a00380c0a00380d12050c030b020b0306000000000000000039000c040d0436050f0b0a001115380e1202380f0b000b043f0002080100010624490a000a0138100c030b03070321030b0701110c270b003c000c050a0536040a0138050c020a0237091420031f0b05010b02010700110c270a022e38080c04080a02360915110d0a02360a1511170a023706142103380b05010b02010703110c270b0536050f0d0b010a023701140a023702140b04120338110b02360b381202090100010615260b013c000c060a0636040a0238050c050b04030b05150a053701140a0335160b05360115051e0a053702140a0335160b053602150b0636050f0f0b020b0312043813020107010801090602060006010500010401060105010a0501010b0502010105030008010802080308040805080708080809080a080c080e0800",
+ "abi": {
+ "address": "0x1",
+ "name": "voting",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "can_be_resolved_early",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::voting::Proposal"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "create_proposal",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "address",
+ "T0",
+ "vector",
+ "u128",
+ "u64",
+ "0x1::option::Option",
+ "0x1::simple_map::SimpleMap<0x1::string::String, vector>"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_execution_hash",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "get_proposal_expiration_secs",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_proposal_state",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "is_resolved",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_voting_closed",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "register",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "resolve",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "address",
+ "u64"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "vote",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&T0",
+ "address",
+ "u64",
+ "u64",
+ "bool"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "CreateProposalEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "proposal_id",
+ "type": "u64"
+ },
+ {
+ "name": "early_resolution_vote_threshold",
+ "type": "0x1::option::Option"
+ },
+ {
+ "name": "execution_hash",
+ "type": "vector"
+ },
+ {
+ "name": "expiration_secs",
+ "type": "u64"
+ },
+ {
+ "name": "metadata",
+ "type": "0x1::simple_map::SimpleMap<0x1::string::String, vector>"
+ },
+ {
+ "name": "min_vote_threshold",
+ "type": "u128"
+ }
+ ]
+ },
+ {
+ "name": "Proposal",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "fields": [
+ {
+ "name": "proposer",
+ "type": "address"
+ },
+ {
+ "name": "execution_content",
+ "type": "0x1::option::Option"
+ },
+ {
+ "name": "metadata",
+ "type": "0x1::simple_map::SimpleMap<0x1::string::String, vector>"
+ },
+ {
+ "name": "creation_time_secs",
+ "type": "u64"
+ },
+ {
+ "name": "execution_hash",
+ "type": "vector"
+ },
+ {
+ "name": "min_vote_threshold",
+ "type": "u128"
+ },
+ {
+ "name": "expiration_secs",
+ "type": "u64"
+ },
+ {
+ "name": "early_resolution_vote_threshold",
+ "type": "0x1::option::Option"
+ },
+ {
+ "name": "yes_votes",
+ "type": "u128"
+ },
+ {
+ "name": "no_votes",
+ "type": "u128"
+ },
+ {
+ "name": "is_resolved",
+ "type": "bool"
+ },
+ {
+ "name": "resolution_time_secs",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "RegisterForumEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "hosting_account",
+ "type": "address"
+ },
+ {
+ "name": "proposal_type_info",
+ "type": "0x1::type_info::TypeInfo"
+ }
+ ]
+ },
+ {
+ "name": "ResolveProposal",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "proposal_id",
+ "type": "u64"
+ },
+ {
+ "name": "yes_votes",
+ "type": "u128"
+ },
+ {
+ "name": "no_votes",
+ "type": "u128"
+ },
+ {
+ "name": "resolved_early",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "VoteEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "proposal_id",
+ "type": "u64"
+ },
+ {
+ "name": "num_votes",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "VotingEvents",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "create_proposal_events",
+ "type": "0x1::event::EventHandle<0x1::voting::CreateProposalEvent>"
+ },
+ {
+ "name": "register_forum_events",
+ "type": "0x1::event::EventHandle<0x1::voting::RegisterForumEvent>"
+ },
+ {
+ "name": "resolve_proposal_events",
+ "type": "0x1::event::EventHandle<0x1::voting::ResolveProposal>"
+ },
+ {
+ "name": "vote_events",
+ "type": "0x1::event::EventHandle<0x1::voting::VoteEvent>"
+ }
+ ]
+ },
+ {
+ "name": "VotingForum",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "fields": [
+ {
+ "name": "proposals",
+ "type": "0x1::table::Table>"
+ },
+ {
+ "name": "events",
+ "type": "0x1::voting::VotingEvents"
+ },
+ {
+ "name": "next_proposal_id",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000f01001e021e560374a902049d032a05c703f50207bc06cd0c0889132006a913a40410cd17c8080a9520660bfb20040cff20d90a0dd82b120eea2b020fec2b0a00050006000700080009000a000b000c000d000e000f001000110012001300140c0000150401000100160600001706000018080000190600001a0200001b0300001c0600001d020006220600042f04010601093e070100000d3f07000c4304020301000102570700085707000258070008580700001e000100001f000100002002010000210003000023040500002406030000250700000026000100002708010000280009000029000a00002a000b00002b000b00002c080000002d000c00002e040c000030040d010600310e0c000032000c010000330f0c000034060c000035100a0003480b0b0003490b0b00014a120a0100064b1405000430050d0106094c0c170100034d0b0b000a4e040000094f1b09010003500b0b000e511e0c010007520a0a0005530a000003540b0b000b55040c000c560c2202030402590a2500025a260a00025b0a2700025c2909010208590a2a00085a2b0a00085b0a2c00085c2d090102095d2e090100095e2f230100095f2f0c01000d600c3101000461320c010603620b0b000c4f34090203000c6335360203000c64370c02030018001a151a161b001e00201325211a2329282d282e002f00300031233215342135213621321629392d390105010c02060c05020c080801060c01080a02060c0a020206050a02010608080101010a02010300010b0b01090005060c0a02020a020507060c020a02020a020a020a0204020a020a02060807070a020b0b01080203080a080a0b0b0108030c01060900010202050703010802010803010b0c010900010805010808020708000502060b0c0109000609000b0101010101010101010c08080405050c080802070a09000a09000106050207080003020505010b0e02090009010109000a01070800050a020a020809080f08100811081201080f0106080f0108110108090306081106080f09000108100106081001081203060812060810090001060b0c01090002070b0c01090009000107080001080d02070b0b010900090010070b0e0205050507080007080005070b0e020505080705050a020a020a02080f0810050a0202060b0e0209000901090002070b0e0209000901090001090103070b0e020900090109000901060a020a02080f0810081108120108070d6170746f735f6163636f756e7404636f696e0767656e65736973107265736f757263655f6163636f756e74167472616e73616374696f6e5f76616c69646174696f6e076163636f756e74036263730765643235353139056572726f72056576656e740866726f6d5f626373046775696404686173680d6d756c74695f65643235353139066f7074696f6e067369676e65721073797374656d5f616464726573736573057461626c6509747970655f696e666f06766563746f72074163636f756e740f4361706162696c6974794f6666657211436f696e52656769737465724576656e74104b6579526f746174696f6e4576656e74124f726967696e6174696e674164647265737312526f746174696f6e4361706162696c69747925526f746174696f6e4361706162696c6974794f6666657250726f6f664368616c6c656e676516526f746174696f6e50726f6f664368616c6c656e6765105369676e65724361706162696c697479235369676e65724361706162696c6974794f6666657250726f6f664368616c6c656e67650e6372656174655f6163636f756e74186372656174655f6163636f756e745f756e636865636b6564186372656174655f617574686f72697a65645f7369676e6572216372656174655f6672616d65776f726b5f72657365727665645f6163636f756e7404475549440b6372656174655f67756964176372656174655f7265736f757263655f6163636f756e74176372656174655f7265736f757263655f616464726573730d6372656174655f7369676e65721d6372656174655f7369676e65725f776974685f6361706162696c697479096578697374735f6174166765745f61757468656e7469636174696f6e5f6b65791a6765745f677569645f6e6578745f6372656174696f6e5f6e756d136765745f73657175656e63655f6e756d6265721d6765745f7369676e65725f6361706162696c6974795f6164647265737319696e6372656d656e745f73657175656e63655f6e756d6265720a696e697469616c697a650b4576656e7448616e646c65106e65775f6576656e745f68616e646c65176f666665725f7369676e65725f6361706162696c6974790d72656769737465725f636f696e19726f746174655f61757468656e7469636174696f6e5f6b657922726f746174655f61757468656e7469636174696f6e5f6b65795f696e7465726e616c2e7665726966795f6b65795f726f746174696f6e5f7369676e61747572655f616e645f6765745f617574685f6b65791261757468656e7469636174696f6e5f6b65790f73657175656e63655f6e756d62657211677569645f6372656174696f6e5f6e756d14636f696e5f72656769737465725f6576656e7473136b65795f726f746174696f6e5f6576656e747319726f746174696f6e5f6361706162696c6974795f6f66666572177369676e65725f6361706162696c6974795f6f6666657203666f72064f7074696f6e0854797065496e666f166f6c645f61757468656e7469636174696f6e5f6b6579166e65775f61757468656e7469636174696f6e5f6b65790b616464726573735f6d6170055461626c6511726563697069656e745f616464726573730a6f726967696e61746f721063757272656e745f617574685f6b65790e6e65775f7075626c69635f6b65790e616c72656164795f65786973747310696e76616c69645f617267756d656e7408746f5f627974657306637265617465046e6f6e65096e6f745f666f756e640a616464726573735f6f6608636f6e7461696e73117065726d697373696f6e5f64656e69656406617070656e6408736861335f3235360a746f5f616464726573730c6f75745f6f665f72616e6765166173736572745f6170746f735f6672616d65776f726b036e657714556e76616c6964617465645075626c69634b6579095369676e6174757265256e65775f756e76616c6964617465645f7075626c69635f6b65795f66726f6d5f62797465732c756e76616c6964617465645f7075626c69635f6b65795f746f5f61757468656e7469636174696f6e5f6b6579186e65775f7369676e61747572655f66726f6d5f6279746573197369676e61747572655f7665726966795f7374726963745f740769735f736f6d6504737761700466696c6c07747970655f6f660a656d69745f6576656e740f756e61757468656e746963617465640672656d6f766503616464000000000000000000000000000000000000000000000000000000000000000103080100000000000000030802000000000000000308050000000000000002010003080a0000000000000003080f0000000000000003080e0000000000000003080d000000000000000308080000000000000003080c00000000000000030804000000000000000308090000000000000003080b000000000000000308060000000000000003080300000000000000030807000000000000000410ffffffffffffffff0000000000000000020101052000000000000000000000000000000000000000000000000000000000000000000520000000000000000000000000000000000000000000000000000000000000000105200000000000000000000000000000000000000000000000000000000000000002052000000000000000000000000000000000000000000000000000000000000000030520000000000000000000000000000000000000000000000000000000000000000405200000000000000000000000000000000000000000000000000000000000000005052000000000000000000000000000000000000000000000000000000000000000060520000000000000000000000000000000000000000000000000000000000000000705200000000000000000000000000000000000000000000000000000000000000008052000000000000000000000000000000000000000000000000000000000000000090520000000000000000000000000000000000000000000000000000000000000000a126170746f733a3a6d657461646174615f7630b3081000000000000000000e454432353531395f534348454d4500010000000000000017454143434f554e545f414c52454144595f455849535453164163636f756e7420616c726561647920657869737473020000000000000017454143434f554e545f444f45535f4e4f545f4558495354164163636f756e7420646f6573206e6f742065786973740300000000000000184553455155454e43455f4e554d4245525f544f4f5f4249473353657175656e6365206e756d626572206578636565647320746865206d6178696d756d2076616c756520666f7220612075363404000000000000001d454d414c464f524d45445f41555448454e5449434154494f4e5f4b4559355468652070726f76696465642061757468656e7469636174696f6e206b65792068617320616e20696e76616c6964206c656e6774680500000000000000184543414e4e4f545f52455345525645445f414444524553533143616e6e6f7420637265617465206163636f756e742062656361757365206164647265737320697320726573657276656406000000000000000b454f55545f4f465f4741532a5472616e73616374696f6e2065786365656465642069747320616c6c6f6361746564206d6178206761730700000000000000194557524f4e475f43555252454e545f5055424c49435f4b45592b5370656369666965642063757272656e74207075626c6963206b6579206973206e6f7420636f727265637408000000000000001b45494e56414c49445f50524f4f465f4f465f4b4e4f574c45444745535370656369666965642070726f6f66206f66206b6e6f776c6564676520726571756972656420746f2070726f7665206f776e657273686970206f662061207075626c6963206b657920697320696e76616c696409000000000000000e454e4f5f4341504142494c495459535468652063616c6c657220646f6573206e6f7420686176652061206469676974616c2d7369676e61747572652d6261736564206361706162696c69747920746f2063616c6c20746869732066756e6374696f6e0a000000000000002345494e56414c49445f4143434550545f524f544154494f4e5f4341504142494c495459515468652063616c6c657220646f6573206e6f74206861766520612076616c696420726f746174696f6e206361706162696c697479206f666665722066726f6d20746865206f74686572206163636f756e740b0000000000000024454e4f5f56414c49445f4652414d45574f524b5f52455345525645445f41444452455353000c000000000000000f45494e56414c49445f534348454d45000d000000000000001c45494e56414c49445f4f524947494e4154494e475f41444452455353000e000000000000001845494e56414c49445f4341504142494c4954595f54595045000f000000000000002145494e56414c49445f4143434550545f5349474e45525f4341504142494c49545900000207360a0237033803390b0b0108023a0b0b0108033b0b010108053c0b010108080102013d0b0c010502020112080d030202400a02410a02040201420b0e020505050201050506020237034405070204370345054605470a020802010505090202370344050118011900030000091b0a00290020030707001116270a00071222030c05110a000713220c010513090c010b01031807021117270b0011010201000000112c0a0011070c070e0038000c010e01411306200000000000000021030e070a1117270600000000000000000c030a000d0311190c040b0438010c020b000d0311190c050b0538020c060e070b010600000000000000000b030b020b06380339003803390112002d000b070202010001001a1a0a01110903080b00010701111c270a012a000c020b00111d0c030b02100037000e03380403170705111c270b01110702030300001c6a0a0007132103050508080c01050c0a000714210c010b01030f0512080c0205160a000715210c020b020319051c080c0305200a000716210c030b0303230526080c04052a0a000717210c040b04032d0530080c0505340a000718210c050b050337053a080c06053e0a000719210c060b0603410544080c0705480a00071a210c070b07034b054e080c0805520a00071b210c080b0803550558080c09055c0a00071c210c090b090361070c111f270a0011010c0a0b0012080c0b0b0a0b0b0204010001001a0b0b00111d0c020a022a000c010b020b010f02111902050100001d100b00111d0c020e020b0111060c030a0311010c040b0312080c050b040b0502060100000a0a0b0038000c020d020b0138050b02112111220207000200080100001f070b0010030c010b0114110702090100000c030b002900020a010001000c050b002b00100414020b010001000c050b002b00100214020c010001000c050b002b00100514020d0100000c040b00100314020e0300010020180b002a000c010a011005140c020a023507102303110b0101070e1123270b02060100000000000000160b010f0515020f0300000c070a0011240b00380612042d040210010001000c040b0011043807021101040100247a0b00111d0c070a0711090307050b0a0411090c05050d090c050b0503120701111c270b072a000c060a061005140a0412090c0a0a020703210320053f0b0311260c0b0e0b11270c080a061004140b082103310b0601070f1117270b0111280c0d0e0d0e0b0b0a3808033e0b0601070811172705670b02071121034405620b03112a0c0c0e0c112b0c090a061004140b092103550b0601070f1117270b01112c0c0e0e0e0e0c0b0a380903670b060107081117270b060107091117270a0610003700380a036d05740b060f0036000b04380b0105790b060f0036000b04380c02120300010030090b002a000c010b010f06380d1202380e02130104020004338a010b00111d0c0b0a0b110903090701111c270a0b2a000c090a01070321031105230a0211260c130e1311270c110a091004140b112103220b0901070f113327053e0a01071121032805390a02112a0c140e14112b0c120a091004140b1221033e0b0901070f1133270b090107091117270a0910041411220c0f0b091005140a0b0b0f0a0412070c0d0b010b020b050e0d11150c100b030b040b060e0d11150c1607132a040f070c0c0b1011220c0e0a1611220c150a0c0a0e0c080c070b072e0b08380f036b05760a0b0a0c0b0e38102103760b0c010707111c270b0c0b150a0b38110b0b2a000c0a0a0a0f080a0a1004140a16120338120b160b0a0f04150214030001001a190b00111d0c030a03110903090700111c270e014113062000000000000000210311070a1117270b032a000c020b010b020f0415021500000038380a00070321030505180b0111260c060b0211280c080e080e060b03143813031407081117270e0611270c0505360b00071121031d052c0b01112a0c070b02112c0c090e090e070b03143814033107081117270b030107091117270e07112b0c040b040c050b050200060100000208000000000100030400000401190000000100020003000400",
+ "abi": {
+ "address": "0x1",
+ "name": "account",
+ "friends": [
+ "0x1::aptos_account",
+ "0x1::coin",
+ "0x1::genesis",
+ "0x1::resource_account",
+ "0x1::transaction_validation"
+ ],
+ "exposed_functions": [
+ {
+ "name": "create_account",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "signer"
+ ]
+ },
+ {
+ "name": "create_authorized_signer",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address"
+ ],
+ "return": [
+ "signer"
+ ]
+ },
+ {
+ "name": "create_framework_reserved_account",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "signer",
+ "0x1::account::SignerCapability"
+ ]
+ },
+ {
+ "name": "create_guid",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": [
+ "0x1::guid::GUID"
+ ]
+ },
+ {
+ "name": "create_resource_account",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector"
+ ],
+ "return": [
+ "signer",
+ "0x1::account::SignerCapability"
+ ]
+ },
+ {
+ "name": "create_resource_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&address",
+ "vector"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "create_signer_with_capability",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::account::SignerCapability"
+ ],
+ "return": [
+ "signer"
+ ]
+ },
+ {
+ "name": "exists_at",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "get_authentication_key",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "get_guid_next_creation_num",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_sequence_number",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "get_signer_capability_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::account::SignerCapability"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "increment_sequence_number",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "new_event_handle",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&signer"
+ ],
+ "return": [
+ "0x1::event::EventHandle"
+ ]
+ },
+ {
+ "name": "offer_signer_capability",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector",
+ "u8",
+ "vector",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "register_coin",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "rotate_authentication_key",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u8",
+ "vector",
+ "u8",
+ "vector",
+ "vector",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "rotate_authentication_key_internal",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "Account",
+ "is_native": false,
+ "abilities": [
+ "store",
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "authentication_key",
+ "type": "vector"
+ },
+ {
+ "name": "sequence_number",
+ "type": "u64"
+ },
+ {
+ "name": "guid_creation_num",
+ "type": "u64"
+ },
+ {
+ "name": "coin_register_events",
+ "type": "0x1::event::EventHandle<0x1::account::CoinRegisterEvent>"
+ },
+ {
+ "name": "key_rotation_events",
+ "type": "0x1::event::EventHandle<0x1::account::KeyRotationEvent>"
+ },
+ {
+ "name": "rotation_capability_offer",
+ "type": "0x1::account::CapabilityOffer<0x1::account::RotationCapability>"
+ },
+ {
+ "name": "signer_capability_offer",
+ "type": "0x1::account::CapabilityOffer<0x1::account::SignerCapability>"
+ }
+ ]
+ },
+ {
+ "name": "CapabilityOffer",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "for",
+ "type": "0x1::option::Option"
+ }
+ ]
+ },
+ {
+ "name": "CoinRegisterEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "type_info",
+ "type": "0x1::type_info::TypeInfo"
+ }
+ ]
+ },
+ {
+ "name": "KeyRotationEvent",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "old_authentication_key",
+ "type": "vector"
+ },
+ {
+ "name": "new_authentication_key",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "OriginatingAddress",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "address_map",
+ "type": "0x1::table::Table"
+ }
+ ]
+ },
+ {
+ "name": "RotationCapability",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "account",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "RotationCapabilityOfferProofChallenge",
+ "is_native": false,
+ "abilities": [
+ "drop"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "sequence_number",
+ "type": "u64"
+ },
+ {
+ "name": "recipient_address",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "RotationProofChallenge",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "sequence_number",
+ "type": "u64"
+ },
+ {
+ "name": "originator",
+ "type": "address"
+ },
+ {
+ "name": "current_auth_key",
+ "type": "address"
+ },
+ {
+ "name": "new_public_key",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "SignerCapability",
+ "is_native": false,
+ "abilities": [
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "account",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "SignerCapabilityOfferProofChallenge",
+ "is_native": false,
+ "abilities": [
+ "drop"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "sequence_number",
+ "type": "u64"
+ },
+ {
+ "name": "recipient_address",
+ "type": "address"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d01000c020c1c03287904a1010805a9015407fd01b90508b6072006d6072b108108f8010af9091b0b940a020c960a95020dab0c06000000010002000300040005000607000007020100000008070000090700040d07010000051d0700000a000100000b02030102000c000400000e000500000f000000001006040000110704000012080500001300090000140a000000150b090000160c090000170d09010200180800000019080000001a070000001b070000021f10100005200e11010004210212010004220e12010003230000000124130001001202130614061603010a02010800010900010b01010900010802010b040108030108030106080301060802010101060800030608000608020a02030a020a020a020306080006080209000001020103010805010b0401090001060900076564323535313903626373056572726f720468617368066f7074696f6e09747970655f696e666f095369676e61747572650d5369676e65644d65737361676514556e76616c6964617465645075626c69634b65791256616c6964617465645075626c69634b6579186e65775f7369676e61747572655f66726f6d5f6279746573126e65775f7369676e65645f6d657373616765256e65775f756e76616c6964617465645f7075626c69635f6b65795f66726f6d5f6279746573064f7074696f6e236e65775f76616c6964617465645f7075626c69635f6b65795f66726f6d5f6279746573267075626c69635f6b65795f62797465735f746f5f61757468656e7469636174696f6e5f6b65791b7075626c69635f6b65795f696e746f5f756e76616c696461746564197075626c69635f6b65795f746f5f756e76616c696461746564137075626c69635f6b65795f76616c69646174651c7075626c69635f6b65795f76616c69646174655f696e7465726e616c127369676e61747572655f746f5f6279746573177369676e61747572655f7665726966795f737472696374207369676e61747572655f7665726966795f7374726963745f696e7465726e616c197369676e61747572655f7665726966795f7374726963745f742c756e76616c6964617465645f7075626c69635f6b65795f746f5f61757468656e7469636174696f6e5f6b65791f756e76616c6964617465645f7075626c69635f6b65795f746f5f62797465732a76616c6964617465645f7075626c69635f6b65795f746f5f61757468656e7469636174696f6e5f6b65791d76616c6964617465645f7075626c69635f6b65795f746f5f62797465730562797465730854797065496e666f05696e6e657210696e76616c69645f617267756d656e7407747970655f6f6604736f6d65046e6f6e6508736861335f32353608746f5f6279746573000000000000000000000000000000000000000000000000000000000000000103080100000000000000030802000000000000000308200000000000000003084000000000000000020100126170746f733a3a6d657461646174615f7630e30102010000000000000013455f57524f4e475f5055424b45595f53495a455357726f6e67206e756d626572206f66206279746573207765726520676976656e20617320696e707574207768656e20646573657269616c697a696e6720616e2045643235353139207075626c6963206b65792e020000000000000016455f57524f4e475f5349474e41545552455f53495a455257726f6e67206e756d626572206f66206279746573207765726520676976656e20617320696e707574207768656e20646573657269616c697a696e6720616e2045643235353139207369676e61747572652e0002011c0a020102020508051e09000202011c0a020302011c0a020102000100000e0b0e00410f070321030807011111270b00120002010100000e0438000b00390002020100000e0b0e00410f070221030807001111270b0012020203010000050d0a001108030405090b00120338010c01050b38020c010b0102040000000e060d000704440f0b00111502050100000e050e00100014120202060100000e050b00100014120202070100000e050b0010011411030208000200090100000e040b00100214020a0100000e090b001002140b011001140b02110b020b0002000c010000030e38000b0239000c030b001002140b011001140e033803110b020d0100000e050b001001141104020e0100000e040b00100114020f0100000e050b00100014110402100100000e040b001000140203000200000000",
+ "abi": {
+ "address": "0x1",
+ "name": "ed25519",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "new_signature_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::ed25519::Signature"
+ ]
+ },
+ {
+ "name": "new_signed_message",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop"
+ ]
+ }
+ ],
+ "params": [
+ "T0"
+ ],
+ "return": [
+ "0x1::ed25519::SignedMessage"
+ ]
+ },
+ {
+ "name": "new_unvalidated_public_key_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::ed25519::UnvalidatedPublicKey"
+ ]
+ },
+ {
+ "name": "new_validated_public_key_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::ed25519::ValidatedPublicKey>"
+ ]
+ },
+ {
+ "name": "public_key_into_unvalidated",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "0x1::ed25519::ValidatedPublicKey"
+ ],
+ "return": [
+ "0x1::ed25519::UnvalidatedPublicKey"
+ ]
+ },
+ {
+ "name": "public_key_to_unvalidated",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::ValidatedPublicKey"
+ ],
+ "return": [
+ "0x1::ed25519::UnvalidatedPublicKey"
+ ]
+ },
+ {
+ "name": "public_key_validate",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::UnvalidatedPublicKey"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::ed25519::ValidatedPublicKey>"
+ ]
+ },
+ {
+ "name": "signature_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::Signature"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "signature_verify_strict",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::Signature",
+ "&0x1::ed25519::UnvalidatedPublicKey",
+ "vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "signature_verify_strict_t",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "drop"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::ed25519::Signature",
+ "&0x1::ed25519::UnvalidatedPublicKey",
+ "T0"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "unvalidated_public_key_to_authentication_key",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::UnvalidatedPublicKey"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "unvalidated_public_key_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::UnvalidatedPublicKey"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "validated_public_key_to_authentication_key",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::ValidatedPublicKey"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "validated_public_key_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ed25519::ValidatedPublicKey"
+ ],
+ "return": [
+ "vector"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Signature",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "SignedMessage",
+ "is_native": false,
+ "abilities": [
+ "drop"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "type_info",
+ "type": "0x1::type_info::TypeInfo"
+ },
+ {
+ "name": "inner",
+ "type": "T0"
+ }
+ ]
+ },
+ {
+ "name": "UnvalidatedPublicKey",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "ValidatedPublicKey",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000b0100280228180340bb0104fb010405ff01b70107b603e907089f0b2006bf0bba030af90e170c900fe8030df812100000000100020003000400050006000700080009000a000b000c000d000e000f00100011001200130014030008170501000103180800012d0600083405010001001500010000160201000019030400001a050100001b030100012408090008250301010003260b01000c270c01000c280d01000c290d01000c2a0e0100032b0301000c2c010100012e08100001160301001116110100042f120100123013140100091605010013161501000c160301000d161601000a160501000231030100083203010006161701000b1603010005161501000e160301000f3303010003160318000c3519010010361a0100013705010003381c0100071b030100060a120802060c0a0800000c0a0202030a02030303030103030301060c010b0101080202060c0a02080c0c010303060c060c0608000108000105010c01080203060c050304060c03050504060c050a020a0202060c0507050c0c08030a05080303020c080305060c0a020a020a020a0203060c05080301060a0900010102060c0308060c0303030103030302060c02020b040108020b0101080202060c0b0101080202060c0b04010802020c0b0101080203060c060c0b010108020767656e65736973076163636f756e741261676772656761746f725f666163746f72790a6170746f735f636f696e106170746f735f676f7665726e616e636505626c6f636b08636861696e5f69640c636861696e5f73746174757304636f696e10636f6e73656e7375735f636f6e6669670c6761735f7363686564756c650f7265636f6e66696775726174696f6e057374616b650e7374616b696e675f636f6e6669670d73746174655f73746f726167650974696d657374616d700f7472616e73616374696f6e5f666565167472616e73616374696f6e5f76616c69646174696f6e06766563746f720776657273696f6e1656616c696461746f72436f6e66696775726174696f6e1c6372656174655f696e697469616c697a655f76616c696461746f72730a696e697469616c697a650e4d696e744361706162696c697479094170746f73436f696e15696e697469616c697a655f6170746f735f636f696e28696e697469616c697a655f636f72655f7265736f75726365735f616e645f6170746f735f636f696e0f7365745f67656e657369735f656e640d6f776e65725f61646472657373106f70657261746f725f616464726573730d766f7465725f616464726573730c7374616b655f616d6f756e7410636f6e73656e7375735f7075626b65791370726f6f665f6f665f706f7373657373696f6e116e6574776f726b5f6164647265737365731b66756c6c5f6e6f64655f6e6574776f726b5f6164647265737365730e6372656174655f6163636f756e74087265676973746572046d696e7416696e697469616c697a655f7374616b655f6f776e657214726f746174655f636f6e73656e7375735f6b6579257570646174655f6e6574776f726b5f616e645f66756c6c6e6f64655f6164647265737365731b6a6f696e5f76616c696461746f725f7365745f696e7465726e616c1064657374726f795f6d696e745f6361700c6f6e5f6e65775f65706f6368105369676e65724361706162696c697479216372656174655f6672616d65776f726b5f72657365727665645f6163636f756e741073746f72655f7369676e65725f6361700869735f656d7074791d696e697469616c697a655f61676772656761746f725f666163746f727918696e697469616c697a655f737570706c795f636f6e666967147365745f74696d655f6861735f737461727465640e4275726e4361706162696c6974791973746f72655f6170746f735f636f696e5f6d696e745f6361701973746f72655f6170746f735f636f696e5f6275726e5f63617022726f746174655f61757468656e7469636174696f6e5f6b65795f696e7465726e616c1b636f6e6669677572655f6163636f756e74735f666f725f746573740000000000000000000000000000000000000000000000000000000000000001052000000000000000000000000000000000000000000000000000000000000000010a02100f7363726970745f70726f6c6f6775650a02100f6d6f64756c655f70726f6c6f6775650a021c1b6d756c74695f6167656e745f7363726970745f70726f6c6f6775650a0209086570696c6f6775650a05a1020900000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000a0520000000000000000000000000000000000000000000000000000000000a550c180002081c051d051e051f03200a02210a02220a02230a0200000000067e0600000000000000000c050e0141070c060a050a0623030a057a0e010a0542070c090a0910001411050c020e020c080a080c070a091001140a0910001422032005290b07010a0910011411050c030e030c070a091002140a09100014220332053b0a091002140a09100114220c04053d090c040b04034005450a091002141105010a0838000a000a091000140a0910031411070b080a091003140a091001140a0910021411080a070a091000140a091004140a0910051411090a070a091000140a091006140a09100714110a0b070b09100014110b0b05060100000000000000160c0505050b00110c110d02010000000f4e0700110e0c0f0c0e0e0e110f0e0e070107020703070411100e0e07000b0f111107050c100600000000000000000c120e10380120031905290d1045080c0c0a0c110e0c110c0d0e0d0b0c0b1111110b12060100000000000000160c1205140e0e0b0311130e0e0b0211140e0e11150e0e0b050b060b070b080b090b0a0b0b11160e0e0b0011170e0e11180e0e11190e0e0b01111a0e0e111b0e0e0b04111c0e0e111d0e0e111e0202000000180c0a00111f0c020c010a000a0211200b000b0111210b0202030000001b0e070611050c020e020b0111220a0011020c030b000e020b031123020400000001030b001124020000000100020003000400050006000700",
+ "abi": {
+ "address": "0x1",
+ "name": "genesis",
+ "friends": [],
+ "exposed_functions": [],
+ "structs": [
+ {
+ "name": "ValidatorConfiguration",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "owner_address",
+ "type": "address"
+ },
+ {
+ "name": "operator_address",
+ "type": "address"
+ },
+ {
+ "name": "voter_address",
+ "type": "address"
+ },
+ {
+ "name": "stake_amount",
+ "type": "u64"
+ },
+ {
+ "name": "consensus_pubkey",
+ "type": "vector"
+ },
+ {
+ "name": "proof_of_possession",
+ "type": "vector"
+ },
+ {
+ "name": "network_addresses",
+ "type": "vector"
+ },
+ {
+ "name": "full_node_network_addresses",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000a020a0803122d053f110750fe0108ce022006ee023610a403cf010af3040a0cfd04650de205020fe4050200010002000300040005000608000007080000080001000009020100000a000100040d020100040e020100030f02040001100505000111050500021201010002060c030001060c0207080103010501030767656e657369730776657273696f6e056572726f720f7265636f6e66696775726174696f6e067369676e65721073797374656d5f6164647265737365731453657456657273696f6e4361706162696c6974790756657273696f6e0a696e697469616c697a6513696e697469616c697a655f666f725f746573740b7365745f76657273696f6e0b64756d6d795f6669656c64056d616a6f72166173736572745f6170746f735f6672616d65776f726b146173736572745f636f72655f7265736f757263650a616464726573735f6f66117065726d697373696f6e5f64656e69656410696e76616c69645f617267756d656e740b7265636f6e6669677572650000000000000000000000000000000000000000000000000000000000000001030801000000000000000308020000000000000005200000000000000000000000000000000000000000000000000000000000000001126170746f733a3a6d657461646174615f7630ba010201000000000000001d45494e56414c49445f4d414a4f525f56455253494f4e5f4e554d4245524b537065636966696564206d616a6f722076657273696f6e206e756d626572206d7573742062652067726561746572207468616e2063757272656e742076657273696f6e206e756d6265722e02000000000000000f454e4f545f415554484f52495a45442e4163636f756e74206973206e6f7420617574686f72697a656420746f206d616b652074686973206368616e67652e0002010b010102010c0300030000010b0a0011030a000b0112012d010b000912002d00020100000001070a0011040b000912002d00020201040101031c0b00110529000307070111062707022b011000140c030b030a01230313070011072707022a010c020b010b020f00151108020100000000",
+ "abi": {
+ "address": "0x1",
+ "name": "version",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "set_version",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "SetVersionCapability",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "dummy_field",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "Version",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "major",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000602061e0324980104bc010c05c801a20107ea02880708f2092006920ab60110c80b650aad0c240cd10cf3020dc40f0c000000010002000307000004070000050700000607000007070000080700020e070100000009000100000a000200000b030200000c040500000d040600000f0708000010070600001102090000120a02000013020b0000140c0d0000150e020000160f0200001702100000181101000019020100001a110200001b020100001c120100001d130100001e140100001f1501000020160100002115010000221701000023180100002415010001261a1a0002271d1e01000228191e01001c1c1d1c1c1f1d1f1c201d20010608000101010a0201060801010a0804010801020a0201010a0805010b0601080001080201060802010b06010803020a02060802010b06010804010608030106080401080501060805030608000a08040a0a02030a020a08040a0a02030608000608010a02030a020a020a02030608050608030a02020a020a02030608050608040a02000103030b060108000a0201010800010900010b0601090001080301080408626c733132333831056572726f72066f7074696f6e14416767724f724d756c74695369676e617475726515416767725075626c69634b65797357697468506f501150726f6f664f66506f7373657373696f6e095075626c69634b6579105075626c69634b657957697468506f50095369676e617475726526616767725f6f725f6d756c74695f7369676e61747572655f73756267726f75705f636865636b20616767725f6f725f6d756c74695f7369676e61747572655f746f5f6279746573196167677265676174655f7075626b65795f746f5f6279746573116167677265676174655f7075626b6579731a6167677265676174655f7075626b6579735f696e7465726e616c064f7074696f6e146167677265676174655f7369676e6174757265731d6167677265676174655f7369676e6174757265735f696e7465726e616c1e70726f6f665f6f665f706f7373657373696f6e5f66726f6d5f62797465731c70726f6f665f6f665f706f7373657373696f6e5f746f5f6279746573157075626c69635f6b65795f66726f6d5f62797465731e7075626c69635f6b65795f66726f6d5f62797465735f776974685f706f70137075626c69635f6b65795f746f5f62797465731c7075626c69635f6b65795f776974685f706f705f746f5f6279746573147369676e61747572655f66726f6d5f6279746573187369676e61747572655f73756267726f75705f636865636b217369676e61747572655f73756267726f75705f636865636b5f696e7465726e616c127369676e61747572655f746f5f62797465731876616c69646174655f7075626b65795f696e7465726e616c1a7665726966795f6167677265676174655f7369676e6174757265237665726966795f6167677265676174655f7369676e61747572655f696e7465726e616c157665726966795f6d756c74697369676e61747572651e7665726966795f6d756c74697369676e61747572655f696e7465726e616c177665726966795f6e6f726d616c5f7369676e6174757265207665726966795f6e6f726d616c5f7369676e61747572655f696e7465726e616c237665726966795f70726f6f665f6f665f706f7373657373696f6e5f696e7465726e616c167665726966795f7369676e61747572655f73686172651f7665726966795f7369676e61747572655f73686172655f696e7465726e616c05627974657310696e76616c69645f617267756d656e7404736f6d65046e6f6e65000000000000000000000000000000000000000000000000000000000000000103080100000000000000030830000000000000000a0231308a53e7ae5270e3e765cd8a4032c2e77c6f7e87a44ebb85bf28a4d7865565698f975346714262f9e47c6f3e0d5d9516600a026160a01a65854f987d3434149b7f08f70730e30b241984e8712bc2aca885d632aafced4c3f661209debb6b1c8601326623cc16ca2f6c9edc53b7b88b7435fb6b05ddece418d2c34dc6aca2f5a11a79e67774582c14084a01dcb7820e4cb4bad0ea8d03086000000000000000126170746f733a3a6d657461646174615f7630510101000000000000000d455a45524f5f5055424b455953395468652063616c6c65722077617320737570706f73656420746f20696e707574206f6e65206f72206d6f7265207075626c6963206b6579732e000201250a02010201250a02020201250a02030201250a02040201250a02050201250a020001000019050b00100014110f020101000019040b00100014020201000019040b001001140203010000060c0b0011040c020c010b0203090700111b270b0112010204000200050100001b100b0011060c030c020b030307050c0b02120038000c01050e38010c010b0102060002000701000019030b001202020801000019040b0010021402090100000b0d0a001111030405090b00120338020c01050b38030c010b01020a0100000d100a000b0110021411180307050c0b00120438040c02050e38050c020b02020b01000019040b00100314020c01000019040b00100414020d01000019030b001205020e01000019050b00100514110f020f0002001001000019040b0010051402110002001201000019070b001000140b010b02111302130002001401000019090b001000140b011001140b02111502150002001601000019090b001005140b011003140b0211170217000200180002001901000019090b001005140b011004140b02111a021a00020000000100020003000400050000",
+ "abi": {
+ "address": "0x1",
+ "name": "bls12381",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "aggr_or_multi_signature_subgroup_check",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::AggrOrMultiSignature"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "aggr_or_multi_signature_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::AggrOrMultiSignature"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "aggregate_pubkey_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::AggrPublicKeysWithPoP"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "aggregate_pubkeys",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector<0x1::bls12381::PublicKeyWithPoP>"
+ ],
+ "return": [
+ "0x1::bls12381::AggrPublicKeysWithPoP"
+ ]
+ },
+ {
+ "name": "aggregate_signatures",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector<0x1::bls12381::Signature>"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::bls12381::AggrOrMultiSignature>"
+ ]
+ },
+ {
+ "name": "proof_of_possession_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::bls12381::ProofOfPossession"
+ ]
+ },
+ {
+ "name": "proof_of_possession_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::ProofOfPossession"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "public_key_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::bls12381::PublicKey>"
+ ]
+ },
+ {
+ "name": "public_key_from_bytes_with_pop",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector",
+ "&0x1::bls12381::ProofOfPossession"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::bls12381::PublicKeyWithPoP>"
+ ]
+ },
+ {
+ "name": "public_key_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::PublicKey"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "public_key_with_pop_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::PublicKeyWithPoP"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "signature_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::bls12381::Signature"
+ ]
+ },
+ {
+ "name": "signature_subgroup_check",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::Signature"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "signature_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::Signature"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "verify_aggregate_signature",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::AggrOrMultiSignature",
+ "vector<0x1::bls12381::PublicKeyWithPoP>",
+ "vector>"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "verify_multisignature",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::AggrOrMultiSignature",
+ "&0x1::bls12381::AggrPublicKeysWithPoP",
+ "vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "verify_normal_signature",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::Signature",
+ "&0x1::bls12381::PublicKey",
+ "vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "verify_signature_share",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bls12381::Signature",
+ "&0x1::bls12381::PublicKeyWithPoP",
+ "vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "AggrOrMultiSignature",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "AggrPublicKeysWithPoP",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "ProofOfPossession",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "PublicKey",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "PublicKeyWithPoP",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "Signature",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000b01000402040403080f05170a072153087420069401220ab601050cbb01220ddd01020fdf0102000100020003080000040001000005020000010703000000010202060c0201060c0767656e6573697308636861696e5f69641073797374656d5f61646472657373657307436861696e4964036765740a696e697469616c697a65026964166173736572745f6170746f735f6672616d65776f726b00000000000000000000000000000000000000000000000000000000000000010520000000000000000000000000000000000000000000000000000000000000000100020106020001000100000507002b00100014020103000000070a0011020b000b0112002d00020000000000",
+ "abi": {
+ "address": "0x1",
+ "name": "chain_id",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "get",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "u8"
+ ]
+ },
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "u8"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "ChainId",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "id",
+ "type": "u8"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000b01000402040403082e04360c05421c075e7f08dd012006fd010a108702600ce702550fbc030400020003010707000004000101000005000200000600030000080004000009000500000a000600000b000700010c090a00010d0a0300000200030004000500060007010a0201090001050101010800010401030102000106080001060a0203616e790c636f707961626c655f616e790866726f6d5f62637306737472696e670a66726f6d5f62797465730a746f5f6164647265737307746f5f626f6f6c06537472696e6709746f5f737472696e6707746f5f7531323806746f5f75363405746f5f753805627974657313696e7465726e616c5f636865636b5f75746638000000000000000000000000000000000000000000000000000000000000000103080100000000000000126170746f733a3a6d657461646174615f76304c0101000000000000000d45494e56414c49445f55544638345554463820636865636b206661696c656420696e20636f6e76657273696f6e2066726f6d20627974657320746f20737472696e67000302000101000008030b003800020201000008030b0038010203010000040b0b0038020c010e011107110803090700270b01020401000008030b003803020501000008030b003804020601000008030b003805020000000100",
+ "abi": {
+ "address": "0x1",
+ "name": "from_bcs",
+ "friends": [
+ "0x1::any",
+ "0x1::copyable_any"
+ ],
+ "exposed_functions": [
+ {
+ "name": "from_bytes",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "T0"
+ ]
+ },
+ {
+ "name": "to_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "to_bool",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "to_string",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::string::String"
+ ]
+ },
+ {
+ "name": "to_u128",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "u128"
+ ]
+ },
+ {
+ "name": "to_u64",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "to_u8",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "u8"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000802080c0314a90104bd011005cd01b701078403e90308ed0620068d075010dd07ac040a890c140c9d0ca6080dc3140c000000010002000300040400021b07020000000000050001000006020100000703010000080401000009000100000a040500000b010600000c070600000d000100000e060800000f090100001000010000110a0b0000120a01000013040100001402010000150301000016010c0000170a010000180a010000190d0800021d1011020404011e010100011f0101000220130802040402211605020404020b081702040403221914010003231a1b01000223101c0204040224161f020404150f180f190f1a0f1b121c121d0f1e0f0307080005030103020608000303060800030302060800050101010800020303000406080003030301060800010a05010402070800030607080005030303070302050302070b01020900090106090001070901010503070b0102090009010900090102010303070800030302060b010209000901060900010b0102090009010707080005070800050703030302060a090006090002070a090003010900020900090102040407070800050708000507080003030106090108706f6f6c5f753634056572726f720a73696d706c655f6d617006766563746f7204506f6f6c0a6164645f73686172657310616d6f756e745f746f5f73686172657321616d6f756e745f746f5f7368617265735f776974685f746f74616c5f636f696e730762616c616e6365066275795f696e08636f6e7461696e73066372656174651a6372656174655f776974685f7363616c696e675f666163746f720d6465647563745f7368617265730d64657374726f795f656d707479146d756c7469706c795f7468656e5f6469766964650d72656465656d5f7368617265730c7368617265686f6c64657273127368617265686f6c646572735f636f756e7406736861726573107368617265735f746f5f616d6f756e74217368617265735f746f5f616d6f756e745f776974685f746f74616c5f636f696e7307746f5f753132380b746f74616c5f636f696e730c746f74616c5f736861726573127570646174655f746f74616c5f636f696e73127368617265686f6c646572735f6c696d69740953696d706c654d61700e7363616c696e675f666163746f720a626f72726f775f6d757410696e76616c69645f617267756d656e740d696e76616c69645f7374617465036164640c636f6e7461696e735f6b657908696e6465785f6f660672656d6f766506626f72726f770000000000000000000000000000000000000000000000000000000000000001030804000000000000000308030000000000000003080600000000000000030807000000000000000308010000000000000003080500000000000000030802000000000000000308ffffffffffffffff126170746f733a3a6d657461646174615f7630970407010000000000000016455348415245484f4c4445525f4e4f545f464f554e44205368617265686f6c646572206e6f742070726573656e7420696e20706f6f6c2e02000000000000001645544f4f5f4d414e595f5348415245484f4c444552532c54686572652061726520746f6f206d616e79207368617265686f6c6465727320696e2074686520706f6f6c2e03000000000000001245504f4f4c5f49535f4e4f545f454d5054591e43616e6e6f742064657374726f79206e6f6e2d656d70747920706f6f6c2e04000000000000001445494e53554646494349454e545f5348415245533f43616e6e6f742072656465656d206d6f726520736861726573207468616e20746865207368617265686f6c6465722068617320696e2074686520706f6f6c2e05000000000000001c455348415245484f4c4445525f5348415245535f4f564552464c4f57315368617265686f6c6465722063616e6e6f742068617665206d6f7265207468616e207536342e6d6178207368617265732e06000000000000001a45504f4f4c5f544f54414c5f434f494e535f4f564552464c4f5729506f6f6c277320746f74616c20636f696e732063616e6e6f7420657863656564207536342e6d61782e07000000000000001b45504f4f4c5f544f54414c5f5348415245535f4f564552464c4f572a506f6f6c277320746f74616c207368617265732063616e6e6f7420657863656564207536342e6d61782e0002061a0317031803130b01020503110a051c03000000000e4c0a000a010c040c030b032e0b041105030a05260b000f000e0138000c080a08140c0707070a07170a0226031d0b080107051116270b070b02160a08150b08140c06054a0a0206000000000000000024032b05440a00100141120a001002142303380b000107061117270a000f010a0144120b000f000b010a0238010b020c0505480b00010b020c050b050c060b06020101000008070a000b010b001003141102020201000014220a00100314060000000000000000210307050a080c0305100a00100414060000000000000000210c030b03031305180b00010b010c0405200a000b010b001004140b02110a0c040b04020301000001080a000b01110e0c020b000b02110f020401000015430a0206000000000000000021030505090b0001060000000000000000020a000a020c040c030b032e0b0411010c0507070a00100314170a0226031f0b0001070211162707070a00100414170a0526032c0b000107021116270a001003140b02160a000f03150a001004140a05160a000f04150b000b010a051100010b05020501000008050b0010000e013802020601000008040b000601000000000000001107020701000008080b000600000000000000000600000000000000003803401200000000000000000b011200020800000018470a000a010c040c030b032e0b041105030e0b000107041116270a000a010c060c050b052e0b06110e0a0226031e0b000107001116270a000f000e0138000c070a07140b02170a07150b07140c080a0806000000000000000021033105430a0010010e0138040c09010a000f010b093805010b000f000e013806010105450b00010b08020901000008120e0010031406000000000000000021030907011117270b001300010101010101020a0100001d150b0010051411110c050b0111110b021111180a05180b0311110b05181a0c040b0434020b0100001e470a000a010c040c030b032e0b041105030e0b000107041116270a000a010c060c050b052e0b06110e0a0226031e0b000107001116270a0206000000000000000021032305270b0001060000000000000000020a000a020c080c070b072e0b08110f0c090a001003140a09170a000f03150a001004140a02170a000f04150b000b010b021108010b09020c01000008040b00100114020d01000008040b0010014112020e01000001120a000a0111050305050c0b0010000e013807140c0205100b00010600000000000000000c020b02020f01000008070a000b010b001003141110021001000014220a00100314060000000000000000210307050a080c0305100a00100414060000000000000000210c030b03031305180b00010600000000000000000c0405200a000b010b020b00100414110a0c040b04021100000008030b0035021201000008040b00100314021301000008040b00100414021401000008050b010b000f03150200030004000000010002000500",
+ "abi": {
+ "address": "0x1",
+ "name": "pool_u64",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "amount_to_shares",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "amount_to_shares_with_total_coins",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "u64",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "balance",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "buy_in",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::pool_u64::Pool",
+ "address",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "contains",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "address"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "create",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "0x1::pool_u64::Pool"
+ ]
+ },
+ {
+ "name": "create_with_scaling_factor",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64",
+ "u64"
+ ],
+ "return": [
+ "0x1::pool_u64::Pool"
+ ]
+ },
+ {
+ "name": "destroy_empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "0x1::pool_u64::Pool"
+ ],
+ "return": []
+ },
+ {
+ "name": "multiply_then_divide",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "u64",
+ "u64",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "redeem_shares",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::pool_u64::Pool",
+ "address",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "shareholders",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "shareholders_count",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "shares",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "address"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "shares_to_amount",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "shares_to_amount_with_total_coins",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool",
+ "u64",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "total_coins",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "total_shares",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::pool_u64::Pool"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "update_total_coins",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::pool_u64::Pool",
+ "u64"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "Pool",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "shareholders_limit",
+ "type": "u64"
+ },
+ {
+ "name": "total_coins",
+ "type": "u64"
+ },
+ {
+ "name": "total_shares",
+ "type": "u64"
+ },
+ {
+ "name": "shares",
+ "type": "0x1::simple_map::SimpleMap"
+ },
+ {
+ "name": "shareholders",
+ "type": "vector"
+ },
+ {
+ "name": "scaling_factor",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000602060e03142f04430405473f078601fa010880032006a0031410b403770aab040c0cb7047a0db1050400000001000200030700000407000207070100000005000100000602000000080304000009050600000a000700000b080000010d0b0b00020e0d0e0100020f090e010007010801010a0201080001060800030a0202060801010b02010800030a02020a02020a0201010801010608010001020103030b020108000a0201010900010b0201090009736563703235366b31056572726f72066f7074696f6e1145434453415261775075626c69634b65790e45434453415369676e61747572652265636473615f7261775f7075626c69635f6b65795f66726f6d5f36345f62797465731d65636473615f7261775f7075626c69635f6b65795f746f5f6279746573064f7074696f6e0d65636473615f7265636f7665721665636473615f7265636f7665725f696e7465726e616c1a65636473615f7369676e61747572655f66726f6d5f62797465731865636473615f7369676e61747572655f746f5f627974657305627974657310696e76616c69645f617267756d656e7404736f6d65046e6f6e6500000000000000000000000000000000000000000000000000000000000000010308010000000000000003084000000000000000126170746f733a3a6d657461646174615f7630630101000000000000000d455f444553455249414c495a454b416e206572726f72206f63637572726564207768696c6520646573657269616c697a696e672c20666f72206578616d706c652064756520746f2077726f6e6720696e7075742073697a652e0002010c0a020102010c0a0200010000090b0e00410a070121030807001106270b001200020101000009040b0010001402020100000c140b000b010b0210011411030c050c040b05030b05100b04110038000c03051238010c030b03020300020004010000090b0e00410a070121030807001106270b001201020501000009040b00100114020000010000",
+ "abi": {
+ "address": "0x1",
+ "name": "secp256k1",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "ecdsa_raw_public_key_from_64_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::secp256k1::ECDSARawPublicKey"
+ ]
+ },
+ {
+ "name": "ecdsa_raw_public_key_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::secp256k1::ECDSARawPublicKey"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "ecdsa_recover",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector",
+ "u8",
+ "&0x1::secp256k1::ECDSASignature"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::secp256k1::ECDSARawPublicKey>"
+ ]
+ },
+ {
+ "name": "ecdsa_signature_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::secp256k1::ECDSASignature"
+ ]
+ },
+ {
+ "name": "ecdsa_signature_to_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::secp256k1::ECDSASignature"
+ ],
+ "return": [
+ "vector"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "ECDSARawPublicKey",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "ECDSASignature",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "bytes",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c010006020604030a23052d130740c5010885022006a502621087039a010aa104050ca6047f0da505020fa70502000100020003000408000005000100000600010000070200000008030000020a020000020b020000010c01010000010301060c03060c050301080002070800030767656e657369730974696d657374616d70056572726f721073797374656d5f6164647265737365731743757272656e7454696d654d6963726f7365636f6e6473106e6f775f6d6963726f7365636f6e64730b6e6f775f7365636f6e6473147365745f74696d655f6861735f73746172746564127570646174655f676c6f62616c5f74696d650c6d6963726f7365636f6e6473166173736572745f6170746f735f6672616d65776f726b096173736572745f766d10696e76616c69645f617267756d656e7400000000000000000000000000000000000000000000000000000000000000010308020000000000000003080100000000000000030840420f00000000000520000000000000000000000000000000000000000000000000000000000000000105200000000000000000000000000000000000000000000000000000000000000000126170746f733a3a6d657461646174615f763085010201000000000000000e454e4f545f4f5045524154494e472f54686520626c6f636b636861696e206973206e6f7420696e20616e206f7065726174696e672073746174652079657402000000000000001245494e56414c49445f54494d455354414d5021416e20696e76616c69642074696d657374616d70207761732070726f766964656400020109030001000100000507032b001000140201010001000004110007021a020203000004070a0011040b0006000000000000000012002d0002030100010005260b00110507032a000c030a031000140c040b01070421030e05180b040a022103170b0301070011062705210b040a022303210b030107001106270b020b030f0015020000000000",
+ "abi": {
+ "address": "0x1",
+ "name": "timestamp",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "now_microseconds",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "now_seconds",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "set_time_has_started",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "update_global_time",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address",
+ "u64"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "CurrentTimeMicroseconds",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "microseconds",
+ "type": "u64"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b0500000009010004020408030c1b05271007375b089201200ab2010b0cbd012c0de90106000000010002070001060700000300010000040002000005000200000703040100000803050100010608000105010a020001080101080009747970655f696e666f06737472696e670854797065496e666f0f6163636f756e745f616464726573730b6d6f64756c655f6e616d650b7374727563745f6e616d6506537472696e6709747970655f6e616d6507747970655f6f6600000000000000000000000000000000000000000000000000000000000000010002030305040a02050a020001000003040b00100014020101000003040b00100114020201000003040b0010021402030102000401020000000001000200",
+ "abi": {
+ "address": "0x1",
+ "name": "type_info",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "account_address",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::type_info::TypeInfo"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "module_name",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::type_info::TypeInfo"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "struct_name",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::type_info::TypeInfo"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "type_name",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::string::String"
+ ]
+ },
+ {
+ "name": "type_of",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::type_info::TypeInfo"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "TypeInfo",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "account_address",
+ "type": "address"
+ },
+ {
+ "name": "module_name",
+ "type": "vector"
+ },
+ {
+ "name": "struct_name",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000b010002020204030619051f0f072e3c086a20068a011e10a801f0020a9804090ca1041c0dbd0402000000010400000200010000030201000004030400000503040000060001000207080004000108000106080001040a61676772656761746f720a41676772656761746f72036164640764657374726f79056c696d69740472656164037375620668616e646c65036b65790000000000000000000000000000000000000000000000000000000000000001030801000000000000000308020000000000000003080300000000000000126170746f733a3a6d657461646174615f7630db02030100000000000000144541474752454741544f525f4f564552464c4f57575768656e207468652076616c7565206f662061676772656761746f72202861637475616c206f7220616363756d756c6174656429206f766572666c6f77732028726169736564206279206e617469766520636f6465292e0200000000000000154541474752454741544f525f554e444552464c4f576d5768656e207468652076616c7565206f662061676772656761746f72202861637475616c206f7220616363756d756c617465642920756e646572666c6f77732c20692e6520676f65732062656c6f77207a65726f2028726169736564206279206e617469766520636f6465292e03000000000000000e454e4f545f535550504f52544544415768656e2061676772656761746f722066656174757265206973206e6f7420737570706f727465642028726169736564206279206e617469766520636f6465292e00020307050805040400010200010102000201000001040b00100014020301020004010200000200",
+ "abi": {
+ "address": "0x1",
+ "name": "aggregator",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "add",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::aggregator::Aggregator",
+ "u128"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "0x1::aggregator::Aggregator"
+ ],
+ "return": []
+ },
+ {
+ "name": "limit",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::aggregator::Aggregator"
+ ],
+ "return": [
+ "u128"
+ ]
+ },
+ {
+ "name": "read",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::aggregator::Aggregator"
+ ],
+ "return": [
+ "u128"
+ ]
+ },
+ {
+ "name": "sub",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::aggregator::Aggregator",
+ "u128"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "Aggregator",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "handle",
+ "type": "address"
+ },
+ {
+ "name": "key",
+ "type": "address"
+ },
+ {
+ "name": "limit",
+ "type": "u128"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000d0100100210320342830104c5011605db01e00107bb03a80408e307200683087710fa088d020a870b1a0ca10bc0030de10e060fe70e020001000200030004000500060007000800090800000a0400000b0800000c0800010e05010001031207010000011405010001011f0401000101270501000105280700000d000100000f02010000100301000011000100001304050000150006000016070100041b000400031c0a0b0100031d0a0c0100071e0e0f010006200001000121000101000116121301000122140101000623000100022409090001111701010003250119010003260f19010005291b1c00012a1d1e0100012b1f010100022c090900080909090a0d0c110d110e111111120913091511161101060c0003060c060c0b04010800020c050105010b050103020b060108000b0401080003060c050304070a0801030b0501030b04010800010301060b0501090001010106090001080102070a090003010900010b070108000108000203060b04010900010b0701090002050b0701090005070a080103070a080106080103010b04010800010b0401090005060a0801060801030b05010303010b05010900030b060108000b080108000b04010800010a0201080905060c080908090201030b060109000b080109000b04010900010b0801090003050b07010800060b040108000767656e657369730a6170746f735f636f696e04636f696e056572726f72066f7074696f6e067369676e657206737472696e671073797374656d5f61646472657373657306766563746f72094170746f73436f696e1744656c6567617465644d696e744361706162696c6974790b44656c65676174696f6e730c4d696e7443617053746f726515636c61696d5f6d696e745f6361706162696c6974790e4d696e744361706162696c6974791b636f6e6669677572655f6163636f756e74735f666f725f746573741864656c65676174655f6d696e745f6361706162696c6974791064657374726f795f6d696e745f636170064f7074696f6e0f66696e645f64656c65676174696f6e0e4275726e4361706162696c6974790a696e697469616c697a65046d696e740b64756d6d795f6669656c6402746f05696e6e6572086d696e745f6361700a616464726573735f6f660769735f736f6d6506626f72726f770b737761705f72656d6f766504436f696e166173736572745f6170746f735f6672616d65776f726b087265676973746572076465706f736974146173736572745f636f72655f7265736f7572636510696e76616c69645f617267756d656e74046e6f6e6504736f6d6510467265657a654361706162696c69747906537472696e67047574663825696e697469616c697a655f776974685f706172616c6c656c697a61626c655f737570706c791264657374726f795f667265657a655f636170096e6f745f666f756e6400000000000000000000000000000000000000000000000000000000000000010308020000000000000003080300000000000000030801000000000000000520000000000000000000000000000000000000000000000000000000000a550c18052000000000000000000000000000000000000000000000000000000000000000010a020b0a4170746f7320436f696e0a020403415054126170746f733a3a6d657461646174615f7630f80103010000000000000010454e4f5f4341504142494c4954494553254163636f756e7420646f6573206e6f742068617665206d696e74206361706162696c69747902000000000000001245414c52454144595f44454c454741544544444d696e74206361706162696c6974792068617320616c7265616479206265656e2064656c65676174656420746f20746869732073706563696669656420616464726573730300000000000000154544454c45474154494f4e5f4e4f545f464f554e443943616e6e6f742066696e642064656c65676174696f6e206f66206d696e74206361706162696c69747920746f2074686973206163636f756e7400020117010102011805020201190a08010302011a0b0401080000010402020308220a00110711040c030e033800030b0b00010701270e033801140c0207032a020f000c010b010b02380213010107032b031001140c040b000b0412032d03020103000010150b00110b0a01380306ffffffffffffffff0e0238040c030a0111070b0338050a010b0212032d030b01400d000000000000000012022d02020201040102152d0e00110f07032a020f000c040600000000000000000c060a060a042e410d23030f05280a040a060c030c020b022e0b03420d0c050b051002140a012203230b040107001110270b06060100000000000000160c0605080b040b011201440d02030300010316090b00110b07042c0313030c010b013806020400000102182807032b0210000c010600000000000000000c030a01410d0c0538070c040a030a0523031005260a010a03420d0c020b021002140a0021031b05210b01010b0338080c0405260b03060100000000000000160c03050b0b0402050300001a160a00110b0a00070511140706111431080838090c030c020c010b000a0312032d030b02380a0b010b0302060104010320150b0011070c030a032903030907021117270b032b0310010c050b020b0538040c040b010b04380502020003000100000000",
+ "abi": {
+ "address": "0x1",
+ "name": "aptos_coin",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "claim_mint_capability",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "configure_accounts_for_test",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "&signer",
+ "0x1::coin::MintCapability<0x1::aptos_coin::AptosCoin>"
+ ],
+ "return": []
+ },
+ {
+ "name": "delegate_mint_capability",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "signer",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "destroy_mint_cap",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": [
+ "0x1::coin::BurnCapability<0x1::aptos_coin::AptosCoin>",
+ "0x1::coin::MintCapability<0x1::aptos_coin::AptosCoin>"
+ ]
+ },
+ {
+ "name": "mint",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "address",
+ "u64"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "AptosCoin",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "dummy_field",
+ "type": "bool"
+ }
+ ]
+ },
+ {
+ "name": "DelegatedMintCapability",
+ "is_native": false,
+ "abilities": [
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "to",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "Delegations",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "inner",
+ "type": "vector<0x1::aptos_coin::DelegatedMintCapability>"
+ }
+ ]
+ },
+ {
+ "name": "MintCapStore",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "mint_cap",
+ "type": "0x1::coin::MintCapability<0x1::aptos_coin::AptosCoin>"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b0500000007010004030416041a02051c0d07293f0868200c88011900000001000200000000030001000004020101000105020001000303010a02010301060900010900000a6170746f735f6861736803626373096b656363616b323536087369705f68617368137369705f686173685f66726f6d5f76616c756508746f5f6279746573000000000000000000000000000000000000000000000000000000000000000100010200010102000201000000060b0038000c010b0111010200",
+ "abi": {
+ "address": "0x1",
+ "name": "aptos_hash",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "keccak256",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "vector"
+ ]
+ },
+ {
+ "name": "sip_hash",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "sip_hash_from_value",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&T0"
+ ],
+ "return": [
+ "u64"
+ ]
+ }
+ ],
+ "structs": []
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000b01000202020403062305292707506d08bd012006dd012810850281010a8603080c8e03ed030dfb0604000000010700000200010000030203000004000300000503040000060506000007050600000805060002060800030101010608000103010800020708000300020a0103010701060708000307010303030a6269745f766563746f7209426974566563746f720c69735f696e6465785f736574066c656e677468206c6f6e676573745f7365745f73657175656e63655f7374617274696e675f6174036e6577037365740a73686966745f6c65667405756e736574096269745f6669656c64000000000000000000000000000000000000000000000000000000000000000103080000020000000000030801000200000000000308000400000000000003080100000000000000126170746f733a3a6d657461646174615f76306d0200000200000000000645494e444558235468652070726f766964656420696e646578206973206f7574206f6620626f756e6473010002000000000007454c454e47544828416e20696e76616c6964206c656e677468206f6620626974766563746f722077617320676976656e0002020303090a010001000006100a010a001000410123030a0b00010700270b0010000b01420114020101000006040b0010004101020201000003250a010a0010011423030a0b00010700270a010c020a020a0010011423031305210a000a021100200319051c0b000105210b02060100000000000000160c02050c0b020b0117020301000007230a000600000000000000002403060701270a00070223030c0701270600000000000000000c02400100000000000000000c01280a020a00230316051e0d010944010b02060100000000000000160c020510280b000b011200020401000008130a010a001000410123030a0b00010700270b000f000b0143010c02080b02150205010000095d0a010a0010011426030705220a00100041010c070600000000000000000c050a050a07230312051f0a000f000a0543010c04090b04150b05060100000000000000160c05050d0b0001055c0a010c060a060a0010011423032b05450a000a060c030c020b022e0b0311000335053b0a000a060a0117110405400a000a060a011711060b06060100000000000000160c0605240a001001140b01170c060a060a00100114230352055a0a000a0611060b06060100000000000000160c06054b0b0001020601000008130a010a001000410123030a0b00010700270b000f000b0143010c02090b0215020001000000",
+ "abi": {
+ "address": "0x1",
+ "name": "bit_vector",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "is_index_set",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bit_vector::BitVector",
+ "u64"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "length",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bit_vector::BitVector"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "longest_set_sequence_starting_at",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::bit_vector::BitVector",
+ "u64"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "new",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "0x1::bit_vector::BitVector"
+ ]
+ },
+ {
+ "name": "set",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::bit_vector::BitVector",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "shift_left",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::bit_vector::BitVector",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "unset",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&mut 0x1::bit_vector::BitVector",
+ "u64"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "BitVector",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "length",
+ "type": "u64"
+ },
+ {
+ "name": "bit_field",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000e0100080208180320620482010e059001740784029602089a042006ba041e10d804ef010ac706150bdc06080ce406e0020dc409080ecc09080000000100020003000403010001000508010001000608010001000702010001000800010100000900020100000a03040102000b00040100000c05040100000d06070100000e08040102000f0904010000100a07010000110b07010003140d0e010002150b070001160f0f0003170d1101000318120c010001190f0f00011a0f0f00090c0a0c02070d0c0e0c06070a0702060c060900010b00010900010b0301090002070a0900090000030b00010900060900060c020b03010900060900010502070a0900060900030b0001090006090005020b0001090006090001060c01090002060a09000609000101010304070a0900060900010302010302070a090003030505050a6361706162696c697479056572726f72067369676e657206766563746f72034361701043617044656c65676174655374617465084361705374617465094c696e65617243617007616371756972650e616371756972655f6c696e6561720b6164645f656c656d656e74066372656174650864656c6567617465106c696e6561725f726f6f745f616464720e72656d6f76655f656c656d656e74067265766f6b6509726f6f745f616464721076616c69646174655f6163717569726504726f6f740964656c65676174657308636f6e7461696e730a616464726573735f6f660e616c72656164795f65786973747308696e6465785f6f660672656d6f76650d696e76616c69645f7374617465096e6f745f666f756e640000000000000000000000000000000000000000000000000000000000000001030801000000000000000308020000000000000003080300000000000000126170746f733a3a6d657461646174615f7630da010301000000000000001a454341504142494c4954595f414c52454144595f4558495354533b4361706162696c697479207265736f7572636520616c726561647920657869737473206f6e2074686520737065636966696564206163636f756e74020000000000000015454341504142494c4954595f4e4f545f464f554e441d4361706162696c697479207265736f75726365206e6f7420666f756e640300000000000000094544454c45474154452b4163636f756e7420646f6573206e6f7420686176652064656c656761746564207065726d697373696f6e7300020112050102011205020201130a050302011205000c030c020c010c00010002010204040b00380039000201010002010204040b0038003901020200000008120a000e010c030c020b022e0b03380120030b050f0b000b01440c05110b0001020301000007110a00110b0c020b023b0220030c0b00010700110c270b004007000000000000000039023f0202040100010207180a02110b0c030a033b030307050a0b0201020b020e0037001439033f030e003700143c0236010b033802020501000004040e00370214020600000010150a000b010c030c020b022e0b0338030c050c040b04030d05120b000b0538040105140b00010207010002010207120a023b032003050506020a023e033a03010e003700143c0236010e023805020801000004040e003700140209000002010213280b00110b0c020a023b030307051e0a023d033703140c030a033b0203120702110f270a033d0237010e023806031b0702110f270b030c0105260a023b02032407011110270b020c010b01020000020003000100000c010c020c030c00",
+ "abi": {
+ "address": "0x1",
+ "name": "capability",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "acquire",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "&T0"
+ ],
+ "return": [
+ "0x1::capability::Cap"
+ ]
+ },
+ {
+ "name": "acquire_linear",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "&T0"
+ ],
+ "return": [
+ "0x1::capability::LinearCap"
+ ]
+ },
+ {
+ "name": "create",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "&T0"
+ ],
+ "return": []
+ },
+ {
+ "name": "delegate",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::capability::Cap",
+ "&T0",
+ "&signer"
+ ],
+ "return": []
+ },
+ {
+ "name": "linear_root_addr",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::capability::LinearCap",
+ "&T0"
+ ],
+ "return": [
+ "address"
+ ]
+ },
+ {
+ "name": "revoke",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::capability::Cap",
+ "&T0",
+ "address"
+ ],
+ "return": []
+ },
+ {
+ "name": "root_addr",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::capability::Cap",
+ "&T0"
+ ],
+ "return": [
+ "address"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Cap",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "root",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "CapDelegateState",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "root",
+ "type": "address"
+ }
+ ]
+ },
+ {
+ "name": "CapState",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "delegates",
+ "type": "vector"
+ }
+ ]
+ },
+ {
+ "name": "LinearCap",
+ "is_native": false,
+ "abilities": [
+ "drop"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "root",
+ "type": "address"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c010004020404030820042802052a2d07576808bf012006df010910e801240a8c02050c9102eb010dfc030200000001000202000003000101000004020100000503040000060304000007030400010906070100050502060900060900010800020a020a0201060800010101090001060900010a0200080108000800030203020301020a636f6d70617261746f720362637306526573756c7407636f6d7061726511636f6d706172655f75385f766563746f720869735f657175616c0f69735f677265617465725f7468616e0f69735f736d616c6c65725f7468616e05696e6e657208746f5f62797465730000000000000000000000000000000000000000000000000000000000000001020100020102020101126170746f733a3a6d657461646174615f76301001000000000000000005455155414c00000201080200010000020a0b0038000c020b0138000c030b020b0311010201010000094f0e00410a0c070e01410a0c090600000000000000000c050a050a0723030d05120a050a09230c020514090c020b02031705360e000a05420a140c060e010a05420a140c080a060a08230326052907021200020b060b0824032e053107011200020b05060100000000000000160c0505080a070a0923033b053f070212000c04054d0b070b092403440548070112000c03054b070012000c030b030c040b04020201000008060b00100014070021020301000008060b00100014070121020401000008060b0010001407022102000000",
+ "abi": {
+ "address": "0x1",
+ "name": "comparator",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "compare",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&T0",
+ "&T0"
+ ],
+ "return": [
+ "0x1::comparator::Result"
+ ]
+ },
+ {
+ "name": "compare_u8_vector",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector",
+ "vector"
+ ],
+ "return": [
+ "0x1::comparator::Result"
+ ]
+ },
+ {
+ "name": "is_equal",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::comparator::Result"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_greater_than",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::comparator::Result"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_smaller_than",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::comparator::Result"
+ ],
+ "return": [
+ "bool"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Result",
+ "is_native": false,
+ "abilities": [
+ "drop"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "inner",
+ "type": "u8"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000e01000802081a03226d048f010e059d01e20107ff02e80108e7042006870514109b05740a8f06150ba406040ca806f4040d9c0b060ea20b06000000010002000300040702000000000005070200000000030c070100000117020000060001020404000702030204040008040502040400090206020404000a0107020404000b0701020404000d0208020404000e090a020404000f040b02040403130d06010002140a0a0003150f10010003160d060100031801160100031910160100011a17180100011b190600060b090a0b0a0c0a0d0a0e0a0f1003070b010209000901090009010002060b0102090009010609000106090102070b010209000901060900010709010101010b010209000901020b0201030b02010301060b0102090009010103020900090106070b010209000901060900030b0201030b0201030301060b02010900010b00020900090101070b0201090001090002030b02010304070b010209000901060900030b020103010b020103010a0b000209000901090803010b0201030b02010303030306090003010b02010900020609000609000108030106080307070b0102090009010609000309000b0201030309010a73696d706c655f6d61700a636f6d70617261746f72056572726f72066f7074696f6e07456c656d656e740953696d706c654d61700361646406626f72726f770a626f72726f775f6d75740c636f6e7461696e735f6b6579066372656174650d64657374726f795f656d707479064f7074696f6e0466696e64066c656e6774680672656d6f7665036b65790576616c756504646174610769735f6e6f6e6510696e76616c69645f617267756d656e7407657874726163740769735f736f6d6506526573756c74046e6f6e6504736f6d6507636f6d706172650f69735f736d616c6c65725f7468616e00000000000000000000000000000000000000000000000000000000000000010308010000000000000003080200000000000000126170746f733a3a6d657461646174615f76306002010000000000000013454b45595f414c52454144595f455849535453164d6170206b657920616c72656164792065786973747302000000000000000e454b45595f4e4f545f464f554e44144d6170206b6579206973206e6f7420666f756e64000202100900110901010201120a0b000209000901000b010b000100000c330a000e010c040c030b032e0b0438000c070c060e06380103120b00010700110a270a0036000b010b023900440e0d0738020c080a003700410e060100000000000000170c050a080a0523032605300a0036000a080a05470e0b08060100000000000000160c0805210b0001020101000011160a000b013800010c030e033803030d0b00010701110a270d0338020c020b0037000b02420e37010202010000121b0a000b010c030c020b022e0b033800010c050e05380303120b00010701110a270d0538020c040b0036000b04430e3601020301000013080b000b013800010c020e02380302040100000103400e00000000000000003901020501000014060b003a010c010b01460e00000000000000000206000000155d0a003700410e0c070a0706000000000000000021030905110b00010b010138040600000000000000003805020600000000000000000c060a070c0a0a060a0a22031a05380a060a0a0a06170602000000000000001a160c080a0037000a08420e37020c090b090a0138060c020e021110033005350b08060100000000000000160c0605370b080c0a05150a060b0722033d05460b010b0037000a06420e3702210c03054c0b00010b0101090c030b03034f05550b06380538040c050c04055a38040b0638050c050c040b040b05020701000001040b003700410e02080100001a350a000b010c030c020b022e0b033800010c060e06380303120b00010701110a270d0638020c070a003700410e060100000000000000170c040a070a04230320052c0a0036000a070a0706010000000000000016470e0b07060100000000000000160c07051b0b003600450e3a000c080c050b050b0802010000010000000b010b020b00",
+ "abi": {
+ "address": "0x1",
+ "name": "simple_map",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "add",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&mut 0x1::simple_map::SimpleMap",
+ "T0",
+ "T1"
+ ],
+ "return": []
+ },
+ {
+ "name": "borrow",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::simple_map::SimpleMap",
+ "&T0"
+ ],
+ "return": [
+ "&T1"
+ ]
+ },
+ {
+ "name": "borrow_mut",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&mut 0x1::simple_map::SimpleMap",
+ "&T0"
+ ],
+ "return": [
+ "&mut T1"
+ ]
+ },
+ {
+ "name": "contains_key",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::simple_map::SimpleMap",
+ "&T0"
+ ],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "create",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [],
+ "return": [
+ "0x1::simple_map::SimpleMap"
+ ]
+ },
+ {
+ "name": "destroy_empty",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "0x1::simple_map::SimpleMap"
+ ],
+ "return": []
+ },
+ {
+ "name": "length",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&0x1::simple_map::SimpleMap"
+ ],
+ "return": [
+ "u64"
+ ]
+ },
+ {
+ "name": "remove",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "store"
+ ]
+ },
+ {
+ "constraints": [
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "&mut 0x1::simple_map::SimpleMap",
+ "&T0"
+ ],
+ "return": [
+ "T0",
+ "T1"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Element",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "key",
+ "type": "T0"
+ },
+ {
+ "name": "value",
+ "type": "T1"
+ }
+ ]
+ },
+ {
+ "name": "SimpleMap",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ },
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "data",
+ "type": "vector<0x1::simple_map::Element>"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000b010006020604030a23052d080735b60108eb0120068b023610c1029e010adf03050ce403490fad04020001000200030004080000050000000006000000000700010000080001000009020000010b030300020c02000000010101060c01030767656e657369730c636861696e5f737461747573056572726f721073797374656d5f6164647265737365731047656e65736973456e644d61726b65720e6173736572745f67656e65736973106173736572745f6f7065726174696e670a69735f67656e657369730c69735f6f7065726174696e670f7365745f67656e657369735f656e640b64756d6d795f6669656c640d696e76616c69645f7374617465166173736572745f6170746f735f6672616d65776f726b0000000000000000000000000000000000000000000000000000000000000001030802000000000000000308010000000000000005200000000000000000000000000000000000000000000000000000000000000001126170746f733a3a6d657461646174615f763089010201000000000000000e454e4f545f4f5045524154494e472e54686520626c6f636b636861696e206973206e6f7420696e20746865206f7065726174696e67207374617475732e02000000000000000c454e4f545f47454e455349532c54686520626c6f636b636861696e206973206e6f7420696e207468652067656e65736973207374617475732e0002010a01000100000006110203050701110527020101000000061103030507011105270202010000000407022900200203010000000307022900020403000000070a0011060b000912002d0002000000",
+ "abi": {
+ "address": "0x1",
+ "name": "chain_status",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "assert_genesis",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": []
+ },
+ {
+ "name": "assert_operating",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": []
+ },
+ {
+ "name": "is_genesis",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "is_operating",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "bool"
+ ]
+ },
+ {
+ "name": "set_genesis_end",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "GenesisEndMarker",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "dummy_field",
+ "type": "bool"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000c020c08031428043c0605421b075d7c08d9012006f9010a108302740af702090c8003370db7030400000001000200030004000500060700040807000007000101070009020300000a01000100050904050100010c06070100020d080800030e0700010003000400060001090001080001060800010608010001080101060900010a0201030c636f707961626c655f616e7903626373056572726f720866726f6d5f62637306737472696e6709747970655f696e666f03416e79047061636b06537472696e6709747970655f6e616d6506756e7061636b046461746108746f5f627974657310696e76616c69645f617267756d656e740a66726f6d5f6279746573000000000000000000000000000000000000000000000000000000000000000103080000000000000000126170746f733a3a6d657461646174615f7630600100000000000000000e45545950455f4d49534d415443484754686520747970652070726f766964656420666f722060756e7061636b60206973206e6f74207468652073616d652061732077617320676976656e20666f7220607061636b602e0002020908010b0a0200010000040538000e0038011200020101000004030b0010000202010000040e38000e0010001421030907001105270e001001143802020000000100",
+ "abi": {
+ "address": "0x1",
+ "name": "copyable_any",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "pack",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": [
+ "copy",
+ "drop",
+ "store"
+ ]
+ }
+ ],
+ "params": [
+ "T0"
+ ],
+ "return": [
+ "0x1::copyable_any::Any"
+ ]
+ },
+ {
+ "name": "type_name",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::copyable_any::Any"
+ ],
+ "return": [
+ "&0x1::string::String"
+ ]
+ },
+ {
+ "name": "unpack",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "0x1::copyable_any::Any"
+ ],
+ "return": [
+ "T0"
+ ]
+ }
+ ],
+ "structs": [
+ {
+ "name": "Any",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "type_name",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "data",
+ "type": "vector"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c01000c020c0c03181f04370205391a0753cf0108a2022006c2022c10ee02680ad6030f0ce5035b0fc004020001000200030004000500060007070000080b00030c07000009000100000a000100040f02010001100404000511060701000212010100040502060c0a020001060c01020103010801010a02010900010708010767656e657369730c6761735f7363686564756c65056572726f720f7265636f6e66696775726174696f6e06737472696e671073797374656d5f616464726573736573047574696c08476173456e7472790b4761735363686564756c650a696e697469616c697a65107365745f6761735f7363686564756c65036b657906537472696e670376616c07656e7472696573166173736572745f6170746f735f6672616d65776f726b10696e76616c69645f617267756d656e740a66726f6d5f62797465730b7265636f6e66696775726500000000000000000000000000000000000000000000000000000000000000010308010000000000000005200000000000000000000000000000000000000000000000000000000000000001126170746f733a3a6d657461646174615f7630540101000000000000001545494e56414c49445f4741535f5343484544554c45345468652070726f766964656420676173207363686564756c652062797465732061726520656d707479206f7220696e76616c69640002020b08020d030102010e0a08000003000001110a0011020e01410306000000000000000024030c0b000107001103270b000b0138002d0102010100010108130b0011020e01410306000000000000000024030a070011032707012a010c020b0138000b0215110502000000",
+ "abi": {
+ "address": "0x1",
+ "name": "gas_schedule",
+ "friends": [
+ "0x1::genesis"
+ ],
+ "exposed_functions": [
+ {
+ "name": "initialize",
+ "visibility": "friend",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector"
+ ],
+ "return": []
+ },
+ {
+ "name": "set_gas_schedule",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&signer",
+ "vector"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "GasEntry",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "store"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "key",
+ "type": "0x1::string::String"
+ },
+ {
+ "name": "val",
+ "type": "u64"
+ }
+ ]
+ },
+ {
+ "name": "GasSchedule",
+ "is_native": false,
+ "abilities": [
+ "copy",
+ "drop",
+ "key"
+ ],
+ "generic_type_params": [],
+ "fields": [
+ {
+ "name": "entries",
+ "type": "vector<0x1::gas_schedule::GasEntry>"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000e01000a020a22032c4b04770c0583016a07ed01d40108c1032006e1030a10eb03570ac204150bd704020cd90495010dee05040ef2050400000001000200030004000508010001010b05010001010d05010001010f05010001011004010001041407000006000101000007020101000008030101000009040101000311040600021208080001130009010001060a01010004150c0d0001070e0b010001080f0901000116100101000109040101000607070709070a070b070c0702060c030005060c0a020a02020103060c050301060c0305060b000109000b0401090001050109000103010b04010900020b04010900060b01010900030b010109000b020109000b03010900010a0201080505060c0805080502010203060b0301090002050b040109000c6d616e616765645f636f696e04636f696e056572726f72067369676e657206737472696e670c4361706162696c6974696573046275726e0a696e697469616c697a65046d696e74087265676973746572086275726e5f6361700e4275726e4361706162696c6974790a667265657a655f63617010467265657a654361706162696c697479086d696e745f6361700e4d696e744361706162696c69747904436f696e0a616464726573735f6f66096e6f745f666f756e6408776974686472617706537472696e670475746638076465706f736974000000000000000000000000000000000000000000000000000000000000000103080100000000000000126170746f733a3a6d657461646174615f76304301010000000000000010454e4f5f4341504142494c4954494553284163636f756e7420686173206e6f206361706162696c697469657320286275726e2f6d696e74292e0002030a0b010109000c0b020109000e0b030109000007000104010005170a0011040c020a023b00030b0b000107001105270b023d000c030b000b0138000c040b040b033700380102010104000b120a000b0111080b0211080b030b0438020c070c060c050b000b050b060b0739003f0002020104010005150b0011040c030a033b00030907001105270b033d000c040b020b04370138030c050b010b053804020301040001030b00380502000000020007010700",
+ "abi": {
+ "address": "0x1",
+ "name": "managed_coin",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "burn",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "initialize",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "vector",
+ "vector",
+ "u8",
+ "bool"
+ ],
+ "return": []
+ },
+ {
+ "name": "mint",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer",
+ "address",
+ "u64"
+ ],
+ "return": []
+ },
+ {
+ "name": "register",
+ "visibility": "public",
+ "is_entry": true,
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "params": [
+ "&signer"
+ ],
+ "return": []
+ }
+ ],
+ "structs": [
+ {
+ "name": "Capabilities",
+ "is_native": false,
+ "abilities": [
+ "key"
+ ],
+ "generic_type_params": [
+ {
+ "constraints": []
+ }
+ ],
+ "fields": [
+ {
+ "name": "burn_cap",
+ "type": "0x1::coin::BurnCapability"
+ },
+ {
+ "name": "freeze_cap",
+ "type": "0x1::coin::FreezeCapability"
+ },
+ {
+ "name": "mint_cap",
+ "type": "0x1::coin::MintCapability"
+ }
+ ]
+ }
+ ]
+ },
+ "data": "bytecode omitted"
+ },
+ "type": "write_module"
+ },
+ {
+ "address": "0x1",
+ "state_key_hash": "",
+ "data": {
+ "bytecode": "0xa11ceb0b050000000c010008020812031af202048c0312059e03e201078005f80b08f81020069811ee06108618fc010a821a110c931ae4080df722040000000100020003000407000005020000060700020f07010000000700010000080002000009030100000a040500000b060100000c070500000d080100000e09050200000010070a000011070b0000120705000013070b00001407010000150705000016070c000017070d0000180e0d000019050d00001a0f0d00001b070c00001c070c00001d100100001e111200001f1305000020140200002114070000221501000023071600002410170000250001000026000200002700050000280717000029180100002a191200002b1a0500002c140100002d121200002e1b0500002f10010000301112000031130500003215070000331c0d0000341d1e0000351f070000361c1700003707070000380e07000039050700003a060c00003b070700003c071700003d061700003e061700003f1c0d0000401d1e0000411f07000042060d0000431e1e0000440707000045000d00004607070000471c0d0000481d1e0000491f0700004a060700004b070700004c000d00034f2017010001500505000251222301000252002301004501450d07214702480247014801470d480d0001080101080003060802060801060802030a020608010a02010301060802010a0202060a0801060a080202060a0900060a0901010b03010800010b03010801010b03010802010802010401020206080106080102070801060801010708010306080106080101010608010106080002030101010206080106080202070801060802030608010a02010206080101020608020608020207080206080201070802020a020a0201060a09000208010802010900010b03010900030b03010801030102070208020307080106080101030708010a020102070801010307080206080208020c72697374726574746f323535056572726f72066f7074696f6e06766563746f7213436f6d7072657373656452697374726574746f0e52697374726574746f506f696e74065363616c61720962617365706f696e741462617365706f696e745f636f6d707265737365641462617365706f696e745f646f75626c655f6d756c1d62617365706f696e745f646f75626c655f6d756c5f696e7465726e616c0d62617365706f696e745f6d756c1662617365706f696e745f6d756c5f696e7465726e616c106d756c74695f7363616c61725f6d756c196d756c74695f7363616c61725f6d756c5f696e7465726e616c064f7074696f6e1f6e65775f636f6d707265737365645f706f696e745f66726f6d5f62797465731f6e65775f706f696e745f66726f6d5f36345f756e69666f726d5f6279746573286e65775f706f696e745f66726f6d5f36345f756e69666f726d5f62797465735f696e7465726e616c146e65775f706f696e745f66726f6d5f6279746573156e65775f706f696e745f66726f6d5f7368613531321e6e65775f706f696e745f66726f6d5f7368613531325f696e7465726e616c156e65775f7363616c61725f66726f6d5f6279746573166e65775f7363616c61725f66726f6d5f736861353132146e65775f7363616c61725f66726f6d5f75313238136e65775f7363616c61725f66726f6d5f753634126e65775f7363616c61725f66726f6d5f7538206e65775f7363616c61725f726564756365645f66726f6d5f33325f6279746573206e65775f7363616c61725f756e69666f726d5f66726f6d5f36345f627974657309706f696e745f61646410706f696e745f6164645f61737369676e12706f696e745f6164645f696e7465726e616c0e706f696e745f636f6d707265737317706f696e745f636f6d70726573735f696e7465726e616c10706f696e745f6465636f6d707265737319706f696e745f6465636f6d70726573735f696e7465726e616c0c706f696e745f657175616c730e706f696e745f6964656e7469747919706f696e745f6964656e746974795f636f6d7072657373656417706f696e745f6964656e746974795f696e7465726e616c1b706f696e745f69735f63616e6f6e6963616c5f696e7465726e616c09706f696e745f6d756c10706f696e745f6d756c5f61737369676e12706f696e745f6d756c5f696e7465726e616c09706f696e745f6e656710706f696e745f6e65675f61737369676e12706f696e745f6e65675f696e7465726e616c09706f696e745f73756210706f696e745f7375625f61737369676e12706f696e745f7375625f696e7465726e616c0e706f696e745f746f5f62797465730a7363616c61725f616464117363616c61725f6164645f61737369676e137363616c61725f6164645f696e7465726e616c0d7363616c61725f657175616c731b7363616c61725f66726f6d5f7368613531325f696e7465726e616c197363616c61725f66726f6d5f753132385f696e7465726e616c187363616c61725f66726f6d5f7536345f696e7465726e616c0d7363616c61725f696e76657274167363616c61725f696e766572745f696e7465726e616c1c7363616c61725f69735f63616e6f6e6963616c5f696e7465726e616c0d7363616c61725f69735f6f6e650e7363616c61725f69735f7a65726f0a7363616c61725f6d756c117363616c61725f6d756c5f61737369676e137363616c61725f6d756c5f696e7465726e616c0a7363616c61725f6e6567117363616c61725f6e65675f61737369676e137363616c61725f6e65675f696e7465726e616c0a7363616c61725f6f6e65257363616c61725f726564756365645f66726f6d5f33325f62797465735f696e7465726e616c0a7363616c61725f737562117363616c61725f7375625f61737369676e137363616c61725f7375625f696e7465726e616c0f7363616c61725f746f5f6279746573257363616c61725f756e69666f726d5f66726f6d5f36345f62797465735f696e7465726e616c0b7363616c61725f7a65726f04646174610668616e646c650869735f656d70747910696e76616c69645f617267756d656e7404736f6d65046e6f6e6500000000000000000000000000000000000000000000000000000000000000010a02212070cf3753475b9ff33e2f84413ed6b5052073bccc0a0a81789d3e5675dc2580560a022120083839dd491e57c5743710c39a91d6e502cab3cf0e279ae417d91ff2cb633e070a022120e87feda199d72b83de4f5b2d45d34805c57019c6c59c42cb70ee3d19aa996f750a0221201a0e978a90f6622d3747023f8ad8264da758aa1b88e040d1589e7b7f2376ef090a02212096d52d9262ee1e1aae79fbaee8c1d9068b0d01bf9a4579e618090c3d1088ae100a0221202ab50e383d7c210f74d5387330735f18315112d10dfb98fcce1e2620c0c014020a022120e2f2ae0a6abc4e71a884a961c500515f58e30b6aa582dd8db6a65945e08d2d760a022120fa0b3624b081c62f364d0b2839dcc76d7c3ab0e27e31beb2b9ed766575f28e760a022120dbfd97afd38a06f0138d0527efb28ead5b7109b486465913bf3aa472a8ed4e0d0308010000000000000003080200000000000000030803000000000000000a022120ecd3f55c1a631258d69cf7a2def9de14000000000000000000000000000000100a022120eed3f55c1a631258d69cf7a2def9de14000000000000000000000000000000100a022120efd3f55c1a631258d69cf7a2def9de140000000000000000000000000000001003082000000000000000030800010000000000000a022120ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a022120edd3f55c1a631258d69cf7a2def9de14000000000000000000000000000000100a0221201c95988d7431ecd670cf7d73f45befc6feffffffffffffffffffffffffffff0f0a022120d89ab38bd279024745639ed817ad3f64cc005b32db9939f91c521fc564a5c0080a02212002000000000000000000000000000000000000000000000000000000000000000a0221201cdc17fce0e9a5bbd9247e56bb016347bbba31edd5a9bb96d50bcd7a3f962a0f0a0221204e5ab4345d4708845913b4641bc27d5252a585101bcc4244d449f4a879d9f2040a0221206c3374a1894f62210aaa2fe186a6f92ce0aa75c2779581c295fc08179a73940c0a022120907633fe1c4b66a4a28d2dd7678386c353d0de5455d4fc9de8ef7ac31f35bb050a02212000000000000000000000000000000000000000000000000000000000000000000a0221200100000000000000000000000000000000000000000000000000000000000000126170746f733a3a6d657461646174615f7630e70103010000000000000022455f444946464552454e545f4e554d5f504f494e54535f414e445f5343414c4152533a546865206e756d626572206f66207363616c61727320646f6573206e6f74206d6174636820746865206e756d626572206f6620706f696e74732e02000000000000000d455f5a45524f5f504f494e5453284578706563746564206d6f7265207468616e207a65726f20706f696e747320617320696e7075742e03000000000000000e455f5a45524f5f5343414c415253294578706563746564206d6f7265207468616e207a65726f207363616c61727320617320696e7075742e0002014d0a020102014e030202014d0a020001000005070706111b010c000b00120102010100000003070612000202010000000a0b001000140b010b021000141103120102030002000401000000060b001000141105120102050002000601000000280a00380020030b0b01010b0001070a1146270a0138012003160b01010b0001070b1146270a0041010a01410d2103230b01010b000107091146270b000b01380212010207000200080100000a0d0a001120030405090b00120038030c01050b38040c010b0102090100000b100e00410f064000000000000000210306050c0b00110a120138050c01050e38060c010b01020a0002000b01000024100b00111b0c030c020b030307050c0b02120138050c01050e38060c010b01020c01000000040b00110d1201020d0002000e0100000c0d0a001134030405090b00120238070c01050b38080c010b01020f01000000040b00112f1202021001000000040b0011301202021101000000040b00113112020212010000250c11440c020d020f00060000000000000000430f0c010b000b01150b0202130100000c100e00410f062000000000000000210306050c0b00113e120238070c01050e38080c010b0102140100000c100e00410f064000000000000000210306050c0b001143120238070c01050e38080c010b01021501000000060b000b0109111712010216010000260c0a000b010c030c020b022e0b03081117010b0002170002001801000000040b001119120002190002001a01000005090b00100114111b010c010b011201021b0002001c0102001d0100000003111f1201021e0100000003071a1200021f000200200002002101000000080b000b0110001409112312010222010000270e0a000b011000140c030c020b022e0b03081123010b0002230002002401000000050b000911261201022501000028090a000c010b012e081126010b0002260002002701000000060b000b0109112912010228010000260c0a000b010c030c020b022e0b03081129010b0002290002002a01000000040b00100114022b01000000090b001000140b01100014112d1202022c01000029110a000b010c030c020b022e0b03112b0c040e041000140a000f00150b00022d0002002e01000000080b001000140b0110001421022f0002003000020031000200320100000c120a001136030405090b000138080c0105100b001000141133120238070c010b010233000200340002003501000000060b00100014071b21023601000000060b00100014071a21023701000000090b001000140b0110001411391202023801000029110a000b010c030c020b022e0b0311370c040e041000140a000f00150b0002390002003a01000000060b00100014113c1202023b0100000d0c0a002e113a0c010e011000140a000f00150b00023c0002003d0100000003071b1202023e0002003f01000000090b001000140b0110001411411202024001000029110a000b010c030c020b022e0b03113f0c040e041000140a000f00150b0002410002004201000000040b001000140243000200440100000003071a1202020200000000",
+ "abi": {
+ "address": "0x1",
+ "name": "ristretto255",
+ "friends": [],
+ "exposed_functions": [
+ {
+ "name": "basepoint",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "0x1::ristretto255::RistrettoPoint"
+ ]
+ },
+ {
+ "name": "basepoint_compressed",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [],
+ "return": [
+ "0x1::ristretto255::CompressedRistretto"
+ ]
+ },
+ {
+ "name": "basepoint_double_mul",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ristretto255::Scalar",
+ "&0x1::ristretto255::RistrettoPoint",
+ "&0x1::ristretto255::Scalar"
+ ],
+ "return": [
+ "0x1::ristretto255::RistrettoPoint"
+ ]
+ },
+ {
+ "name": "basepoint_mul",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&0x1::ristretto255::Scalar"
+ ],
+ "return": [
+ "0x1::ristretto255::RistrettoPoint"
+ ]
+ },
+ {
+ "name": "multi_scalar_mul",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "&vector<0x1::ristretto255::RistrettoPoint>",
+ "&vector<0x1::ristretto255::Scalar>"
+ ],
+ "return": [
+ "0x1::ristretto255::RistrettoPoint"
+ ]
+ },
+ {
+ "name": "new_compressed_point_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::ristretto255::CompressedRistretto>"
+ ]
+ },
+ {
+ "name": "new_point_from_64_uniform_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::ristretto255::RistrettoPoint>"
+ ]
+ },
+ {
+ "name": "new_point_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::ristretto255::RistrettoPoint>"
+ ]
+ },
+ {
+ "name": "new_point_from_sha512",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::ristretto255::RistrettoPoint"
+ ]
+ },
+ {
+ "name": "new_scalar_from_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::option::Option<0x1::ristretto255::Scalar>"
+ ]
+ },
+ {
+ "name": "new_scalar_from_sha512",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector"
+ ],
+ "return": [
+ "0x1::ristretto255::Scalar"
+ ]
+ },
+ {
+ "name": "new_scalar_from_u128",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u128"
+ ],
+ "return": [
+ "0x1::ristretto255::Scalar"
+ ]
+ },
+ {
+ "name": "new_scalar_from_u64",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u64"
+ ],
+ "return": [
+ "0x1::ristretto255::Scalar"
+ ]
+ },
+ {
+ "name": "new_scalar_from_u8",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "u8"
+ ],
+ "return": [
+ "0x1::ristretto255::Scalar"
+ ]
+ },
+ {
+ "name": "new_scalar_reduced_from_32_bytes",
+ "visibility": "public",
+ "is_entry": false,
+ "generic_type_params": [],
+ "params": [
+ "vector